diff options
author | Jian Cai <caij2003@gmail.com> | 2019-10-14 21:21:39 +0000 |
---|---|---|
committer | Jian Cai <caij2003@gmail.com> | 2019-10-14 21:21:39 +0000 |
commit | 753d789c441648de96cf68d08abe20e664f7f776 (patch) | |
tree | ca25b76a903855ea6845f93276b8c8fe3669306a | |
parent | 9d0a84f5f3d30c1399b8a983d4ace91106c47853 (diff) | |
download | bcm5719-llvm-753d789c441648de96cf68d08abe20e664f7f776.tar.gz bcm5719-llvm-753d789c441648de96cf68d08abe20e664f7f776.zip |
Add support to -Wa,-W in clang
Currently clang does not support -Wa,-W, which suppresses warning
messages in GNU assembler. Add this option for gcc compatibility.
https://bugs.llvm.org/show_bug.cgi?id=43651
llvm-svn: 374822
-rw-r--r-- | clang/lib/Driver/ToolChains/Clang.cpp | 2 | ||||
-rw-r--r-- | clang/test/Driver/as-w-option.c | 14 |
2 files changed, 15 insertions, 1 deletions
diff --git a/clang/lib/Driver/ToolChains/Clang.cpp b/clang/lib/Driver/ToolChains/Clang.cpp index 52fe20c3a90..dfb3f336086 100644 --- a/clang/lib/Driver/ToolChains/Clang.cpp +++ b/clang/lib/Driver/ToolChains/Clang.cpp @@ -2140,7 +2140,7 @@ static void CollectArgsForIntegratedAssembler(Compilation &C, CmdArgs.push_back("-msave-temp-labels"); } else if (Value == "--fatal-warnings") { CmdArgs.push_back("-massembler-fatal-warnings"); - } else if (Value == "--no-warn") { + } else if (Value == "--no-warn" || Value == "-W") { CmdArgs.push_back("-massembler-no-warn"); } else if (Value == "--noexecstack") { UseNoExecStack = true; diff --git a/clang/test/Driver/as-w-option.c b/clang/test/Driver/as-w-option.c new file mode 100644 index 00000000000..afaf1cf7713 --- /dev/null +++ b/clang/test/Driver/as-w-option.c @@ -0,0 +1,14 @@ +// RUN: %clang -### %s -c -o tmp.o -fno-integrated-as -Wa,-W 2>&1 | FileCheck -check-prefix=CHECK-NOIAS %s +// RUN: %clang -### %s -c -o tmp.o -integrated-as -Wa,-W 2>&1 | FileCheck -check-prefix=CHECK-IAS %s +// RUN: %clang %s -c -o %t.o -integrated-as -Wa,-W 2>&1 | FileCheck -allow-empty --check-prefix=CHECK-AS-NOWARN %s +// RUN: %clang %s -c -o %t.o -fno-integrated-as -Wa,-W 2>&1 | FileCheck -allow-empty --check-prefix=CHECK-AS-NOWARN %s +// RUN: not %clang %s -c -o %t.o -integrated-as -Wa,--fatal-warnings 2>&1 | FileCheck --check-prefix=CHECK-AS-FATAL %s +// RUN: not %clang %s -c -o %t.o -fno-integrated-as -Wa,--fatal-warnings 2>&1 | FileCheck --check-prefix=CHECK-AS-FATAL %s + +// CHECK-IAS: "-cc1" {{.*}} "-massembler-no-warn" +// CHECK-NOIAS: "-W" +// CHECK-AS-NOWARN-NOT: warning: +// CHECK-AS-FATAL-NOT: warning: +// CHECK-AS-FATAL: error + +__asm(".warning"); |