diff options
-rw-r--r-- | clang/lib/Basic/Targets.cpp | 4 | ||||
-rw-r--r-- | clang/test/Preprocessor/predefined-arch-macros.c | 3 |
2 files changed, 6 insertions, 1 deletions
diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp index a6cda4b38c1..39bddd1f615 100644 --- a/clang/lib/Basic/Targets.cpp +++ b/clang/lib/Basic/Targets.cpp @@ -5949,8 +5949,10 @@ public: break; case CG_V9: Builder.defineMacro("__sparcv9"); - if (getTriple().getOS() != llvm::Triple::Solaris) + if (getTriple().getOS() != llvm::Triple::Solaris) { Builder.defineMacro("__sparcv9__"); + Builder.defineMacro("__sparc_v9__"); + } break; } } diff --git a/clang/test/Preprocessor/predefined-arch-macros.c b/clang/test/Preprocessor/predefined-arch-macros.c index 1254ac4627e..66a96e431fc 100644 --- a/clang/test/Preprocessor/predefined-arch-macros.c +++ b/clang/test/Preprocessor/predefined-arch-macros.c @@ -1749,10 +1749,13 @@ // CHECK_SPARC: #define __sparc 1 // CHECK_SPARC: #define __sparc__ 1 // CHECK_SPARC-NOT: #define __sparcv9 1 +// CHECK_SPARC-NOT: #define __sparcv9__ 1 // CHECK_SPARC: #define __sparcv8 1 // CHECK_SPARC-NOT: #define __sparcv9 1 +// CHECK_SPARC-NOT: #define __sparcv9__ 1 // CHECK_SPARC-V9-NOT: #define __sparcv8 1 +// CHECK_SPARC-V9: #define __sparc_v9__ 1 // CHECK_SPARC-V9: #define __sparcv9 1 // CHECK_SPARC-V9-NOT: #define __sparcv8 1 |