Reid Kleckner
fded34de2a
MS inline asm: Tests for r214550
...
These tests seem like an exception to the rule against assembly emitting
tests in clang. I made an LLVM side change that can only be tested by
setting up the inline assembly machinery that is only implemented by
Clang.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@214552 91177308-0d34-0410-b5e6-96231b3b80d8
2014-08-01 20:23:29 +00:00
Ehsan Akhgari
79cefc56a5
ms-inline-asm: Add a test to ensure that call doesn't clobber eax.
...
Note that it's not clear whether this is the right behavior, please see
the review for the discussion.
Reviewers: rnk
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D4577
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@214401 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-31 13:43:17 +00:00
Ehsan Akhgari
a04b2e4a75
Fix test/CodeGen/ms-inline-asm.c from r213916.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@213919 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-25 02:39:33 +00:00
Ehsan Akhgari
e26841e34d
clang-cl: Merge adjacent single-line __asm blocks
...
Summary:
This patch extends the __asm parser to make it keep parsing input tokens
as inline assembly if a single-line __asm line is followed by another line
starting with __asm too. It also makes sure that we correctly keep
matching braces in such situations by separating the notions of how many
braces we are matching and whether we are in single-line asm block mode.
Reviewers: rnk
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D4598
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@213916 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-25 02:27:14 +00:00
NAKAMURA Takumi
cc6546f2b2
clang/test/CodeGen/ms-inline-asm.c: Fix for -Asserts.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@213329 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-17 22:51:49 +00:00
Nico Weber
6042ad3646
Add a test for PR20343 after llvm r213303.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@213305 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-17 20:25:36 +00:00
Ehsan Akhgari
eb5c8705ec
Add support for nested blocks in Microsoft inline assembly
...
This fixes http://llvm.org/PR20204 .
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212389 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-06 05:26:54 +00:00
Ehsan Akhgari
b514dc79c0
Add a test case for the tilde operator in Microsoft inline assembly
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@212373 91177308-0d34-0410-b5e6-96231b3b80d8
2014-07-05 15:04:06 +00:00
Reid Kleckner
ca240502a5
MS asm: Filter out fpsw clobbers
...
When parsing MS inline assembly, we note that fpsw is an implicit def of
most x87 FP operations, and add it to the clobber list. However, we
don't recognize fpsw as a gcc register name, and we assert. Clang
always adds an fpsr clobber, which means the same thing to LLVM, so we
can just use that.
This test case was broken by my LLVM change r196939.
Reviewers: echristo
Differential Revision: http://llvm-reviews.chandlerc.com/D2993
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@204878 91177308-0d34-0410-b5e6-96231b3b80d8
2014-03-27 00:00:03 +00:00
Reid Kleckner
cd2a97492e
Add tests for MS inline asm change r203146
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@203147 91177308-0d34-0410-b5e6-96231b3b80d8
2014-03-06 19:19:36 +00:00
Reid Kleckner
2b1e087d47
Test case for clobbers on cpuid in ms inline asm
...
Tests r200279 in LLVM.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@200280 91177308-0d34-0410-b5e6-96231b3b80d8
2014-01-28 02:09:28 +00:00
Reid Kleckner
6eb228f6da
Update clang MS inline asm tests for r196939
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@196940 91177308-0d34-0410-b5e6-96231b3b80d8
2013-12-10 18:27:51 +00:00
NAKAMURA Takumi
a8fb443f44
clang/test: REQUIRES: s/x86-64-registered-target/x86-registered-target/
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@196350 91177308-0d34-0410-b5e6-96231b3b80d8
2013-12-04 03:41:33 +00:00
Rafael Espindola
a3f55b026f
Don't pass -O0 to clang_cc1, it is the default.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189910 91177308-0d34-0410-b5e6-96231b3b80d8
2013-09-04 04:12:25 +00:00
Chad Rosier
68ea1d26ff
Fix typo.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179811 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-18 23:12:05 +00:00
Chad Rosier
abee27ba69
Test cases for r179719.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179720 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-17 21:02:39 +00:00
Chad Rosier
7b4700c783
Test cases for r179655.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179656 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-17 00:12:09 +00:00
Chad Rosier
0c50a032f4
Add test case for r179403.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179404 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-12 19:52:07 +00:00
Chad Rosier
579d8d1b77
Add test case for r179399.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179400 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-12 18:54:40 +00:00
Chad Rosier
333ac6ed90
Add test case for r179383 and r179393.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179394 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-12 18:22:08 +00:00
Chad Rosier
b55dd767b2
[ms-inline asm] Move a few test cases from the 32-bit version to the 64-bit
...
version as lea is only available in 64-bit mode.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179190 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-10 18:08:17 +00:00
Chad Rosier
a5ceca924c
[ms-inline asm] Add a few test cases that were regressed by r179115. That
...
commit was reverted in r179120, but I do plan on reapplying with a fix shortly.
Part of rdar://13611297
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179182 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-10 16:33:34 +00:00
Chad Rosier
36ec9c2160
Test case for r179030.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179031 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-08 17:44:05 +00:00
Chad Rosier
b801837f69
Add test case for r178881.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178882 91177308-0d34-0410-b5e6-96231b3b80d8
2013-04-05 16:29:17 +00:00
Chad Rosier
87d2a37bde
Remove unnecessary attributes from test case.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178188 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-27 21:54:09 +00:00
Chad Rosier
5e5ca1b7ed
Add a front-end test case for r178186.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178187 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-27 21:50:39 +00:00
Chad Rosier
c7936c9b2b
Test case for r177439 and r177440.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177441 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-19 21:12:57 +00:00
Chad Rosier
8eecaaa16e
Update test for r177413.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177414 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-19 17:32:36 +00:00
Chad Rosier
2317dc8842
Test case for r177347.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177349 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-18 23:32:33 +00:00
Chad Rosier
59c900304a
Add a front-end test case for r176036.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176038 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-25 19:13:23 +00:00
Bill Wendling
4e1125f630
Update to use references to attribute groups instead of listing the attributes on the call/invoke instructions.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175878 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-22 09:10:20 +00:00
Chad Rosier
2ec6cfcfa0
[ms-inline asm] Remove this test while I investigate why eax isn't being clobbered.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175637 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-20 17:39:31 +00:00
Chad Rosier
a6e0a0db0a
Add test case for r175312.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175313 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-15 21:58:41 +00:00
Chad Rosier
d8d7f5fb36
[ms-inline asm] Add test case for r175083.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175084 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-13 21:34:54 +00:00
Chad Rosier
74992c495e
[ms-inline-asm] Test cases to ensure the AsmRewrite list is sorted (r175021).
...
Part of rdar://13202662
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175022 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-13 01:06:08 +00:00
Chad Rosier
7243b0f000
[ms-inline-asm] Add test cases for the align/emit directives.
...
Part of rdar://13200215
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175009 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-12 21:34:14 +00:00
Chad Rosier
be8e36c5ee
[ms-inline asm] Update test case now that we are correctly parsing __emit directives.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@175000 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-12 19:42:57 +00:00
Chad Rosier
9c504e93c1
Typo.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174995 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-12 19:15:05 +00:00
Chad Rosier
8e70b00253
[ms-inline asm] Add a few test cases for the parsing of hexidecimal integers.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174989 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-12 18:45:21 +00:00
Chad Rosier
b2e2157f90
[ms-inline asm] Remove the -fenable-experimental-ms-inline-asm flag. MS-style
...
inline assembly can be enable with -fasm-blocks or -fms-extensions alone.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173186 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-22 19:38:32 +00:00
Chad Rosier
205ecf0193
[ms-inline asm] Updates and test case for r172743.
...
Part of rdar://12576868
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172744 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-17 19:22:48 +00:00
Chad Rosier
3731a41acb
[ms-inline asm] Add test case for r172121.
...
Part of rdar://12991541
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172122 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-10 22:11:28 +00:00
Chad Rosier
6949ab1f5e
[ms-inline asm] Add a test case for the offset operator where the operand is a
...
global variable.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171919 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-08 23:51:48 +00:00
Chad Rosier
7520fcab8a
Test case for r171784.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171785 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-07 20:34:40 +00:00
Chad Rosier
15490fd42d
[driver, ms-inline asm] MS-Style inline assembly is controlled by the
...
-fasm-blocks flag, not the -fms-extensions flag.
rdar://12808010
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169422 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-05 21:08:21 +00:00
Chad Rosier
e0c0196351
[ms-inline asm] Add more tests.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169411 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-05 19:52:05 +00:00
Chad Rosier
da5c3b7fa1
[ms-inline asm] Test case for r166790.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166791 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-26 18:04:45 +00:00
Chad Rosier
d2e7d20dc7
[ms-inline asm] Add a test case for r166723 and r166724.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166725 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-25 21:52:03 +00:00
Chad Rosier
f7427273d0
[ms-inline asm] Test case for r166632.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166633 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-24 22:22:12 +00:00
Chad Rosier
1bed9b7678
[ms-inline asm] Add test cases for r166451.
...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166600 91177308-0d34-0410-b5e6-96231b3b80d8
2012-10-24 17:48:01 +00:00