Index: lib/Driver/Tools.cpp =================================================================== --- lib/Driver/Tools.cpp +++ lib/Driver/Tools.cpp @@ -7411,7 +7411,8 @@ } StringRef ARMFloatABI = tools::arm::getARMFloatABI( - getToolChain().getDriver(), Args, Triple); + getToolChain().getDriver(), Args, + llvm::Triple(getToolChain().ComputeEffectiveClangTriple(Args))); CmdArgs.push_back(Args.MakeArgString("-mfloat-abi=" + ARMFloatABI)); Args.AddLastArg(CmdArgs, options::OPT_march_EQ); Index: test/Driver/nacl-direct.c =================================================================== --- test/Driver/nacl-direct.c +++ test/Driver/nacl-direct.c @@ -54,6 +54,7 @@ // CHECK-ARM: "-internal-isystem" "{{.*}}{{/|\\\\}}..{{/|\\\\}}arm-nacl{{/|\\\\}}usr{{/|\\\\}}include" // CHECK-ARM: "-internal-isystem" "{{.*}}{{/|\\\\}}..{{/|\\\\}}arm-nacl{{/|\\\\}}include" // CHECK-ARM: as{{(.exe)?}}" +// CHECK-ARM: "-mfloat-abi=hard" // CHECK-ARM: ld{{(.exe)?}}" // CHECK-ARM: "--build-id" // CHECK-ARM: "-m" "armelf_nacl" @@ -71,6 +72,8 @@ // CHECK-ARM-NOV7: "-triple" "armv7--nacl-gnueabihf" // CHECK-ARM-NOV7: "-target-abi" "aapcs-linux" // CHECK-ARM-NOV7: "-mfloat-abi" "hard" +// CHECK-ARM-NOV7: as{{(.exe)?}}" +// CHECK-ARM-NOV7: "-mfloat-abi=hard" // Test clang c++ include dirs and link line when using clang++