summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHans Wennborg <hans@hanshq.net>2016-10-04 21:01:02 +0000
committerHans Wennborg <hans@hanshq.net>2016-10-04 21:01:02 +0000
commit26228e3010b4005e322c68c5b4e2c4feadff48f6 (patch)
treeca17cde24d4d7a6082d1c7b5f35720b4f0bfbedd
parent2b0eea4a3bfd5aa07011bfe215745e4728de9612 (diff)
downloadbcm5719-llvm-26228e3010b4005e322c68c5b4e2c4feadff48f6.tar.gz
bcm5719-llvm-26228e3010b4005e322c68c5b4e2c4feadff48f6.zip
clang-cl: Use the .obj file extension also in LTO mode
llvm-svn: 283257
-rw-r--r--clang/lib/Driver/Types.cpp19
-rw-r--r--clang/test/Driver/cl-outputs.c1
2 files changed, 14 insertions, 6 deletions
diff --git a/clang/lib/Driver/Types.cpp b/clang/lib/Driver/Types.cpp
index 3a74649df83..d4568295dce 100644
--- a/clang/lib/Driver/Types.cpp
+++ b/clang/lib/Driver/Types.cpp
@@ -53,12 +53,19 @@ types::ID types::getPrecompiledType(ID Id) {
}
const char *types::getTypeTempSuffix(ID Id, bool CLMode) {
- if (Id == TY_Object && CLMode)
- return "obj";
- if (Id == TY_Image && CLMode)
- return "exe";
- if (Id == TY_PP_Asm && CLMode)
- return "asm";
+ if (CLMode) {
+ switch (Id) {
+ case TY_Object:
+ case TY_LTO_BC:
+ return "obj";
+ case TY_Image:
+ return "exe";
+ case TY_PP_Asm:
+ return "asm";
+ default:
+ break;
+ }
+ }
return getInfo(Id).TempSuffix;
}
diff --git a/clang/test/Driver/cl-outputs.c b/clang/test/Driver/cl-outputs.c
index bf6b4317262..437e173c22b 100644
--- a/clang/test/Driver/cl-outputs.c
+++ b/clang/test/Driver/cl-outputs.c
@@ -2,6 +2,7 @@
// command-line option, e.g. on Mac where %s is commonly under /Users.
// RUN: %clang_cl /c -### -- %s 2>&1 | FileCheck -check-prefix=DEFAULT %s
+// RUN: %clang_cl /c -flto -### -- %s 2>&1 | FileCheck -check-prefix=DEFAULT %s
// DEFAULT: "-o" "cl-outputs.obj"
// RUN: %clang_cl /Fo -### -- %s 2>&1 | FileCheck -check-prefix=FoEMPTY %s
OpenPOWER on IntegriCloud