]> granicus.if.org Git - clang/commit
[ms-inline asm] Rework the front-end to use the API introduced in r165946.
authorChad Rosier <mcrosier@apple.com>
Mon, 15 Oct 2012 19:56:10 +0000 (19:56 +0000)
committerChad Rosier <mcrosier@apple.com>
Mon, 15 Oct 2012 19:56:10 +0000 (19:56 +0000)
commitd9b56edcf42232c5331f9ad79aae83ba31e852df
tree6e3f63a4f15c343d3e5b7d2b8c039824e6e8c83a
parent6553c686cb419b22b4c79d05a422fb1e96f6e122
[ms-inline asm]  Rework the front-end to use the API introduced in r165946.

-The front-end now builds a single assembly string and feeds it to the
 AsmParser.  The front-end iterates on a per statement basis by calling the
 ParseStatement() function.  Please note, the calling of ParseStatement() and
 and any notion of MCAsmParsedOperands will be sunk into the MC layer in the
 near future.  I plan to expose more basic APIs such as getClobbers, etc.

-The enumeration of the AsmString expressions have been reworked to use SMLocs
 rather than assembly Pieces, which were being parsed in the front-end.

-The test case, t8(), was modified due to r129223.  I'll have to find a way to
 work around things such as these.

Sorry for the large commit, but breaking this in multiple smaller commits proved
too irritating.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165957 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Sema/SemaStmtAsm.cpp
test/CodeGen/ms-inline-asm.c