r201792 - [mips] Make it impossible to have UnknownABI in CodeGen and Integrated Assembler.
Daniel Sanders
daniel.sanders at imgtec.com
Thu Feb 20 06:58:19 PST 2014
Author: dsanders
Date: Thu Feb 20 08:58:19 2014
New Revision: 201792
URL: http://llvm.org/viewvc/llvm-project?rev=201792&view=rev
Log:
[mips] Make it impossible to have UnknownABI in CodeGen and Integrated Assembler.
Summary:
This removes the need to coerce UnknownABI to the default ABI (O32 for
MIPS32, N64 for MIPS64 [*]) in both MipsSubtarget and MipsAsmParser.
Clang has been updated to disable both possible default ABI's before enabling
the ABI it intends to use.
[*] N64 being the default for MIPS64 is not actually correct.
However N32 is not fully implemented/tested yet.
Depends on: D2830
Reviewers: jacksprat, matheusalmeida
Reviewed By: matheusalmeida
Differential Revision: http://llvm-reviews.chandlerc.com/D2832
Differential Revision: http://llvm-reviews.chandlerc.com/D2846
Modified:
cfe/trunk/lib/Basic/Targets.cpp
Modified: cfe/trunk/lib/Basic/Targets.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Basic/Targets.cpp?rev=201792&r1=201791&r2=201792&view=diff
==============================================================================
--- cfe/trunk/lib/Basic/Targets.cpp (original)
+++ cfe/trunk/lib/Basic/Targets.cpp Thu Feb 20 08:58:19 2014
@@ -4905,6 +4905,13 @@ public:
return true;
}
void getDefaultFeatures(llvm::StringMap<bool> &Features) const {
+ // The backend enables certain ABI's by default according to the
+ // architecture.
+ // Disable both possible defaults so that we don't end up with multiple
+ // ABI's selected and trigger an assertion.
+ Features["o32"] = false;
+ Features["n64"] = false;
+
Features[ABI] = true;
Features[CPU] = true;
}
More information about the cfe-commits
mailing list