diff options
| author | Alp Toker <alp@nuanti.com> | 2013-11-08 06:50:48 +0000 |
|---|---|---|
| committer | Alp Toker <alp@nuanti.com> | 2013-11-08 06:50:48 +0000 |
| commit | e994ebda149c86ba3cb9ab80c5f0c597e1c342bc (patch) | |
| tree | 6b8da7d0776ec6cde7407913625e617082b83024 | |
| parent | 7039f18d82ace400b3e460c952e43dd0cea9b974 (diff) | |
| download | bcm5719-llvm-e994ebda149c86ba3cb9ab80c5f0c597e1c342bc.tar.gz bcm5719-llvm-e994ebda149c86ba3cb9ab80c5f0c597e1c342bc.zip | |
Improve the missing ASM parser test for MS-style assembly
It's better to test clang-check rather than the internal c-index-test utility.
Also adds a target so we can remove the XFAILs.
Thanks to Richard Barton for spotting the test failure on ARM.
Test originally from r193685.
llvm-svn: 194249
| -rw-r--r-- | clang/test/Index/ms-asm-no-target.cpp | 11 | ||||
| -rw-r--r-- | clang/test/Tooling/ms-asm-no-target.cpp | 13 |
2 files changed, 13 insertions, 11 deletions
diff --git a/clang/test/Index/ms-asm-no-target.cpp b/clang/test/Index/ms-asm-no-target.cpp deleted file mode 100644 index 8c6f4f69753..00000000000 --- a/clang/test/Index/ms-asm-no-target.cpp +++ /dev/null @@ -1,11 +0,0 @@ -// XFAIL: aarch64, arm, mips, hexagon, powerpc, sparc -// REQUIRES: x86-registered-target -// RUN: c-index-test -test-load-source all -fasm-blocks -Wno-microsoft %s 2>&1 | FileCheck %s - -// Test that we diagnose when the application hasn't initialized LLVM targets -// supporting the MS-style inline asm parser. - -void Break() { - __asm { int 3 } -} -// CHECK: error: MS-style inline assembly is not available diff --git a/clang/test/Tooling/ms-asm-no-target.cpp b/clang/test/Tooling/ms-asm-no-target.cpp new file mode 100644 index 00000000000..68930b15968 --- /dev/null +++ b/clang/test/Tooling/ms-asm-no-target.cpp @@ -0,0 +1,13 @@ +// RUN: not clang-check "%s" -- -fasm-blocks -target x86_64-apple-darwin10 2>&1 | FileCheck -check-prefix=CHECK-X86 %s +// RUN: not clang-check "%s" -- -fasm-blocks -target powerpc-apple-darwin10 2>&1 | FileCheck -check-prefix=CHECK-PPC %s + +// Test that we diagnose instead of crashing when the application hasn't +// initialized LLVM targets supporting the MS-style inline asm parser. +// Also test that the ordinary error is emitted on unsupported architectures. + +void Break() { + __asm { int 3 } +} + +// CHECK-X86: error: MS-style inline assembly is not available +// CHECK-PPC: error: Unsupported architecture 'powerpc' for MS-style inline assembly |

