diff options
| -rw-r--r-- | clang/lib/Basic/Targets/Mips.cpp | 3 | ||||
| -rw-r--r-- | clang/test/Preprocessor/init.c | 1 |
2 files changed, 4 insertions, 0 deletions
diff --git a/clang/lib/Basic/Targets/Mips.cpp b/clang/lib/Basic/Targets/Mips.cpp index 4ca7f08af82..9b35bbcb763 100644 --- a/clang/lib/Basic/Targets/Mips.cpp +++ b/clang/lib/Basic/Targets/Mips.cpp @@ -189,6 +189,9 @@ void MipsTargetInfo::getTargetDefines(const LangOptions &Opts, Builder.defineMacro("_MIPS_ARCH", "\"" + CPU + "\""); Builder.defineMacro("_MIPS_ARCH_" + StringRef(CPU).upper()); + if (StringRef(CPU).startswith("octeon")) + Builder.defineMacro("__OCTEON__"); + // These shouldn't be defined for MIPS-I but there's no need to check // for that since MIPS-I isn't supported. Builder.defineMacro("__GCC_HAVE_SYNC_COMPARE_AND_SWAP_1"); diff --git a/clang/test/Preprocessor/init.c b/clang/test/Preprocessor/init.c index 4e79077687c..f80e4de9e5e 100644 --- a/clang/test/Preprocessor/init.c +++ b/clang/test/Preprocessor/init.c @@ -4839,6 +4839,7 @@ // MIPS-ARCH-OCTEON:#define _MIPS_ARCH "octeon" // MIPS-ARCH-OCTEON:#define _MIPS_ARCH_OCTEON 1 // MIPS-ARCH-OCTEON:#define _MIPS_ISA _MIPS_ISA_MIPS64 +// MIPS-ARCH-OCTEON:#define __OCTEON__ 1 // MIPS-ARCH-OCTEON:#define __mips_isa_rev 2 // // Check MIPS float ABI macros |

