summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGen/ms-inline-asm.c
Commit message (Collapse)AuthorAgeFilesLines
...
* [ms-inline asm] Remove this test case and the associated special case code.Chad Rosier2012-08-211-17/+11
| | | | llvm-svn: 162288
* [ms-inline asm] Add a helper function, isMSAsmKeyword().Chad Rosier2012-08-161-0/+20
| | | | | | | | These require special handling, which we don't currently handle. This is being put in place to ensure we don't do invalid symbol table lookups or try to parse invalid assembly. The test cases just makes sure the latter isn't happening. llvm-svn: 162050
* Fixup test case for Release builds.Chad Rosier2012-08-161-1/+0
| | | | llvm-svn: 162038
* [ms-inline asm] Start tracking which tokens are registers and which areChad Rosier2012-08-161-0/+17
| | | | | | | | variables, function or label references. The former is a potential clobber. The latter is either an input or an output. Unfortunately, it's difficult to test this patch at the moment, but the added test case will eventually do so. llvm-svn: 162026
* [ms-inline asm] Use a set container to remove redundant clobbers.Chad Rosier2012-08-151-1/+1
| | | | llvm-svn: 161991
* [ms-inline asm] MSVC parses multiple __asm statements on a single line as oneChad Rosier2012-08-151-5/+2
| | | | | | | | | | | | statement. For example, if (x) __asm out dx, ax __asm out dx, ax results in a single inline asm statement (i.e., both "out dx, ax" statements are predicated on if(x)). llvm-svn: 161986
* [ms-inline asm] Add support for clobbers in CodeGen.Chad Rosier2012-08-151-5/+5
| | | | | | | This is a reapplication of r161914 now that the scoping issue has been resolved in r161966. llvm-svn: 161967
* Revert this to try to bring the i386 bots back.Eric Christopher2012-08-151-5/+5
| | | | llvm-svn: 161931
* [ms-inline asm] Add support for clobbers in CodeGen.Chad Rosier2012-08-151-5/+5
| | | | llvm-svn: 161914
* [ms-inline asm] More test cases to make sure buildMSAsmString() doesn't regress.Chad Rosier2012-08-141-0/+42
| | | | llvm-svn: 161908
* [ms-inline asm] Add a helpful assert.Chad Rosier2012-08-141-5/+10
| | | | llvm-svn: 161890
* [ms-inline asm] Have patchMSAsmStrings() return a vector or AsmStrings.Chad Rosier2012-08-131-0/+32
| | | | | | | | | | | | | | | | | | | | | | | | | The AsmParser expects a single asm instruction, but valid ms-style inline asm statements may contain multiple instructions. This happens with asm blocks __asm { mov ebx, eax mov ecx, ebx } or when multiple asm statements are adjacent to one another __asm mov ebx, eax __asm mov ecx, ebx and __asm mov ebx, eax __asm mov ecx, ebx Currently, asm blocks are not properly handled. llvm-svn: 161780
* [ms-inline asm] Use the new Inline Asm Non-Standard Dialect attribute.Chad Rosier2012-08-101-1/+1
| | | | llvm-svn: 161642
* [ms-inline asm] Add basic codegen support for simple asm stmts. Currently,Chad Rosier2012-08-081-1/+2
| | | | | | only machine specific clobbers are modeled. llvm-svn: 161524
* [ms-inline asm] Add a very simple test case. Basically, we're only testing forChad Rosier2012-08-081-0/+7
crashers at the moment (and coincidentally this case was causing a crash). llvm-svn: 161520
OpenPOWER on IntegriCloud