18640107360766c74218cf16d51b714b1f2138839machenbach@chromium.org// Copyright 2014 the V8 project authors. All rights reserved. 28640107360766c74218cf16d51b714b1f2138839machenbach@chromium.org// Use of this source code is governed by a BSD-style license that can be 38640107360766c74218cf16d51b714b1f2138839machenbach@chromium.org// found in the LICENSE file. 48640107360766c74218cf16d51b714b1f2138839machenbach@chromium.org 59aaa825cf89e1bcfece269a453300ebf4a26d64dmachenbach@chromium.org#ifndef V8_COMPILER_COMPILER_TEST_UTILS_H_ 69aaa825cf89e1bcfece269a453300ebf4a26d64dmachenbach@chromium.org#define V8_COMPILER_COMPILER_TEST_UTILS_H_ 78640107360766c74218cf16d51b714b1f2138839machenbach@chromium.org 89aaa825cf89e1bcfece269a453300ebf4a26d64dmachenbach@chromium.org#include "testing/gtest/include/gtest/gtest.h" 98640107360766c74218cf16d51b714b1f2138839machenbach@chromium.org 108640107360766c74218cf16d51b714b1f2138839machenbach@chromium.orgnamespace v8 { 118640107360766c74218cf16d51b714b1f2138839machenbach@chromium.orgnamespace internal { 128640107360766c74218cf16d51b714b1f2138839machenbach@chromium.orgnamespace compiler { 138640107360766c74218cf16d51b714b1f2138839machenbach@chromium.org 145e57059e20217fd540b60c237d326414afe2171emachenbach@chromium.org// The TARGET_TEST(Case, Name) macro works just like 158640107360766c74218cf16d51b714b1f2138839machenbach@chromium.org// TEST(Case, Name), except that the test is disabled 168640107360766c74218cf16d51b714b1f2138839machenbach@chromium.org// if the platform is not a supported TurboFan target. 178640107360766c74218cf16d51b714b1f2138839machenbach@chromium.org#if V8_TURBOFAN_TARGET 185e57059e20217fd540b60c237d326414afe2171emachenbach@chromium.org#define TARGET_TEST(Case, Name) TEST(Case, Name) 198640107360766c74218cf16d51b714b1f2138839machenbach@chromium.org#else 205e57059e20217fd540b60c237d326414afe2171emachenbach@chromium.org#define TARGET_TEST(Case, Name) TEST(Case, DISABLED_##Name) 218640107360766c74218cf16d51b714b1f2138839machenbach@chromium.org#endif 228640107360766c74218cf16d51b714b1f2138839machenbach@chromium.org 238640107360766c74218cf16d51b714b1f2138839machenbach@chromium.org 245e57059e20217fd540b60c237d326414afe2171emachenbach@chromium.org// The TARGET_TEST_F(Case, Name) macro works just like 258640107360766c74218cf16d51b714b1f2138839machenbach@chromium.org// TEST_F(Case, Name), except that the test is disabled 268640107360766c74218cf16d51b714b1f2138839machenbach@chromium.org// if the platform is not a supported TurboFan target. 278640107360766c74218cf16d51b714b1f2138839machenbach@chromium.org#if V8_TURBOFAN_TARGET 285e57059e20217fd540b60c237d326414afe2171emachenbach@chromium.org#define TARGET_TEST_F(Case, Name) TEST_F(Case, Name) 298640107360766c74218cf16d51b714b1f2138839machenbach@chromium.org#else 305e57059e20217fd540b60c237d326414afe2171emachenbach@chromium.org#define TARGET_TEST_F(Case, Name) TEST_F(Case, DISABLED_##Name) 315e57059e20217fd540b60c237d326414afe2171emachenbach@chromium.org#endif 325e57059e20217fd540b60c237d326414afe2171emachenbach@chromium.org 335e57059e20217fd540b60c237d326414afe2171emachenbach@chromium.org 345e57059e20217fd540b60c237d326414afe2171emachenbach@chromium.org// The TARGET_TEST_P(Case, Name) macro works just like 355e57059e20217fd540b60c237d326414afe2171emachenbach@chromium.org// TEST_P(Case, Name), except that the test is disabled 365e57059e20217fd540b60c237d326414afe2171emachenbach@chromium.org// if the platform is not a supported TurboFan target. 375e57059e20217fd540b60c237d326414afe2171emachenbach@chromium.org#if V8_TURBOFAN_TARGET 385e57059e20217fd540b60c237d326414afe2171emachenbach@chromium.org#define TARGET_TEST_P(Case, Name) TEST_P(Case, Name) 395e57059e20217fd540b60c237d326414afe2171emachenbach@chromium.org#else 405e57059e20217fd540b60c237d326414afe2171emachenbach@chromium.org#define TARGET_TEST_P(Case, Name) TEST_P(Case, DISABLED_##Name) 415e57059e20217fd540b60c237d326414afe2171emachenbach@chromium.org#endif 425e57059e20217fd540b60c237d326414afe2171emachenbach@chromium.org 435e57059e20217fd540b60c237d326414afe2171emachenbach@chromium.org 445e57059e20217fd540b60c237d326414afe2171emachenbach@chromium.org// The TARGET_TYPED_TEST(Case, Name) macro works just like 455e57059e20217fd540b60c237d326414afe2171emachenbach@chromium.org// TYPED_TEST(Case, Name), except that the test is disabled 465e57059e20217fd540b60c237d326414afe2171emachenbach@chromium.org// if the platform is not a supported TurboFan target. 475e57059e20217fd540b60c237d326414afe2171emachenbach@chromium.org#if V8_TURBOFAN_TARGET 485e57059e20217fd540b60c237d326414afe2171emachenbach@chromium.org#define TARGET_TYPED_TEST(Case, Name) TYPED_TEST(Case, Name) 495e57059e20217fd540b60c237d326414afe2171emachenbach@chromium.org#else 505e57059e20217fd540b60c237d326414afe2171emachenbach@chromium.org#define TARGET_TYPED_TEST(Case, Name) TYPED_TEST(Case, DISABLED_##Name) 518640107360766c74218cf16d51b714b1f2138839machenbach@chromium.org#endif 528640107360766c74218cf16d51b714b1f2138839machenbach@chromium.org 538640107360766c74218cf16d51b714b1f2138839machenbach@chromium.org} // namespace compiler 548640107360766c74218cf16d51b714b1f2138839machenbach@chromium.org} // namespace internal 558640107360766c74218cf16d51b714b1f2138839machenbach@chromium.org} // namespace v8 568640107360766c74218cf16d51b714b1f2138839machenbach@chromium.org 579aaa825cf89e1bcfece269a453300ebf4a26d64dmachenbach@chromium.org#endif // V8_COMPILER_COMPILER_TEST_UTILS_H_ 58