summaryrefslogtreecommitdiffstats
path: root/clang
diff options
context:
space:
mode:
authorDouglas Katzman <dougk@google.com>2015-09-11 21:13:46 +0000
committerDouglas Katzman <dougk@google.com>2015-09-11 21:13:46 +0000
commitae2f358af57856ccdd4057d6f938aff5757a54a0 (patch)
tree580925a58395acfef6ee64c6929d1658c0b9f30b /clang
parent6dbfdaa6abb44ed3ee88c9e59c8e394cc4ff67b3 (diff)
downloadbcm5719-llvm-ae2f358af57856ccdd4057d6f938aff5757a54a0.tar.gz
bcm5719-llvm-ae2f358af57856ccdd4057d6f938aff5757a54a0.zip
[Shave]: pass -isystem dirs and "-Wa," args to moviAsm
llvm-svn: 247474
Diffstat (limited to 'clang')
-rw-r--r--clang/lib/Driver/Tools.cpp9
-rw-r--r--clang/test/Driver/shave-toolchain.c7
2 files changed, 9 insertions, 7 deletions
diff --git a/clang/lib/Driver/Tools.cpp b/clang/lib/Driver/Tools.cpp
index 1a3a22d9abb..b7791880edb 100644
--- a/clang/lib/Driver/Tools.cpp
+++ b/clang/lib/Driver/Tools.cpp
@@ -9716,13 +9716,14 @@ void tools::SHAVE::Assembler::ConstructJob(Compilation &C, const JobAction &JA,
assert(Output.getType() == types::TY_Object);
CmdArgs.push_back("-no6thSlotCompression");
- CmdArgs.push_back("-cv:myriad2"); // Chip Version ?
+ CmdArgs.push_back("-cv:myriad2"); // Chip Version
CmdArgs.push_back("-noSPrefixing");
CmdArgs.push_back("-a"); // Mystery option.
- for (auto Arg : Args.filtered(options::OPT_I)) {
- Arg->claim();
+ Args.AddAllArgValues(CmdArgs, options::OPT_Wa_COMMA, options::OPT_Xassembler);
+ for (const Arg *A : Args.filtered(options::OPT_I, options::OPT_isystem)) {
+ A->claim();
CmdArgs.push_back(
- Args.MakeArgString(std::string("-i:") + Arg->getValue(0)));
+ Args.MakeArgString(std::string("-i:") + A->getValue(0)));
}
CmdArgs.push_back("-elf"); // Output format.
CmdArgs.push_back(II.getFilename());
diff --git a/clang/test/Driver/shave-toolchain.c b/clang/test/Driver/shave-toolchain.c
index 006ce9c1b36..5fa1a172d43 100644
--- a/clang/test/Driver/shave-toolchain.c
+++ b/clang/test/Driver/shave-toolchain.c
@@ -8,10 +8,11 @@
// As such, we test only for a trailing quote in its rendering.
// The same goes for "moviAsm".
-// RUN: %clang -target shave -c -### %s -Icommon 2>&1 \
+// RUN: %clang -target shave -c -### %s -isystem somewhere -Icommon -Wa,-yippee 2>&1 \
// RUN: | FileCheck %s -check-prefix=MOVICOMPILE
-// MOVICOMPILE: moviCompile" "-DMYRIAD2" "-mcpu=myriad2" "-S" "-I" "common"
-// MOVICOMPILE: moviAsm" "-no6thSlotCompression" "-cv:myriad2" "-noSPrefixing" "-a" "-i:common" "-elf"
+// MOVICOMPILE: moviCompile" "-DMYRIAD2" "-mcpu=myriad2" "-S" "-isystem" "somewhere" "-I" "common"
+// MOVICOMPILE: moviAsm" "-no6thSlotCompression" "-cv:myriad2" "-noSPrefixing" "-a"
+// MOVICOMPILE: "-yippee" "-i:somewhere" "-i:common" "-elf"
// RUN: %clang -target shave -c -### %s -DEFINE_ME -UNDEFINE_ME 2>&1 \
// RUN: | FileCheck %s -check-prefix=DEFINES
OpenPOWER on IntegriCloud