ARM: set default float ABI based on triple.
[oota-llvm.git] / lib / Target / ARM / ARMTargetMachine.cpp
index b46ec1da0e8eb93e9a7e9c5fb075f23e0b6e3b7a..1d60e5de559ffc4b943c1e6bd1e177bfc186cd33 100644 (file)
@@ -53,7 +53,8 @@ ARMBaseTargetMachine::ARMBaseTargetMachine(const Target &T, StringRef TT,
     InstrItins(Subtarget.getInstrItineraryData()) {
   // Default to soft float ABI
   if (Options.FloatABIType == FloatABI::Default)
-    this->Options.FloatABIType = FloatABI::Soft;
+    this->Options.FloatABIType =
+        Subtarget.isTargetHardFloat() ? FloatABI::Hard : FloatABI::Soft;
 }
 
 void ARMBaseTargetMachine::addAnalysisPasses(PassManagerBase &PM) {