Skip to content

Commit a751f55

Browse files
committed
[mips] Set macros for Octeon+ CPU
1 parent 3552d3e commit a751f55

File tree

2 files changed

+15
-2
lines changed

2 files changed

+15
-2
lines changed

clang/lib/Basic/Targets/Mips.cpp

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ void MipsTargetInfo::fillValidCPUList(
6262
unsigned MipsTargetInfo::getISARev() const {
6363
return llvm::StringSwitch<unsigned>(getCPU())
6464
.Cases("mips32", "mips64", 1)
65-
.Cases("mips32r2", "mips64r2", "octeon", 2)
65+
.Cases("mips32r2", "mips64r2", "octeon", "octeon+", 2)
6666
.Cases("mips32r3", "mips64r3", 3)
6767
.Cases("mips32r5", "mips64r5", 5)
6868
.Cases("mips32r6", "mips64r6", 6)
@@ -188,7 +188,10 @@ void MipsTargetInfo::getTargetDefines(const LangOptions &Opts,
188188
Builder.defineMacro("_MIPS_SZLONG", Twine(getLongWidth()));
189189

190190
Builder.defineMacro("_MIPS_ARCH", "\"" + CPU + "\"");
191-
Builder.defineMacro("_MIPS_ARCH_" + StringRef(CPU).upper());
191+
if (CPU == "octeon+")
192+
Builder.defineMacro("_MIPS_ARCH_OCTEONP");
193+
else
194+
Builder.defineMacro("_MIPS_ARCH_" + StringRef(CPU).upper());
192195

193196
if (StringRef(CPU).startswith("octeon"))
194197
Builder.defineMacro("__OCTEON__");

clang/test/Preprocessor/init.c

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4842,6 +4842,16 @@
48424842
// MIPS-ARCH-OCTEON:#define __OCTEON__ 1
48434843
// MIPS-ARCH-OCTEON:#define __mips_isa_rev 2
48444844
//
4845+
// RUN: %clang_cc1 -E -dM -ffreestanding -triple=mips64-none-none \
4846+
// RUN: -target-cpu octeon+ < /dev/null \
4847+
// RUN: | FileCheck -match-full-lines -check-prefix MIPS-ARCH-OCTEONP %s
4848+
//
4849+
// MIPS-ARCH-OCTEONP:#define _MIPS_ARCH "octeon+"
4850+
// MIPS-ARCH-OCTEONP:#define _MIPS_ARCH_OCTEONP 1
4851+
// MIPS-ARCH-OCTEONP:#define _MIPS_ISA _MIPS_ISA_MIPS64
4852+
// MIPS-ARCH-OCTEONP:#define __OCTEON__ 1
4853+
// MIPS-ARCH-OCTEONP:#define __mips_isa_rev 2
4854+
//
48454855
// Check MIPS float ABI macros
48464856
//
48474857
// RUN: %clang_cc1 -E -dM -ffreestanding \

0 commit comments

Comments
 (0)