]> granicus.if.org Git - clang/commit
[ms-inline asm] Handle the enumeration of input and output expressions in a
authorChad Rosier <mcrosier@apple.com>
Thu, 13 Sep 2012 00:06:55 +0000 (00:06 +0000)
committerChad Rosier <mcrosier@apple.com>
Thu, 13 Sep 2012 00:06:55 +0000 (00:06 +0000)
commitb55e602e1dc7952edc7545fab7bb7b15047378f3
treea63ac33749d2b44a76b32324c6808c5fb956c185
parentd5a73dca6297a8bc5ab3fc41e2cc0e8474072616
[ms-inline asm]  Handle the enumeration of input and output expressions in a
more robust way to address a few FIXMEs.

The initial implementation, r163342, built the IR asm string and then tried to
patch things on the fly without enough context.  Specifically, it didn't skip
mnemonics nor did it track with assembly instruction an expression was related
to.  The new implementation patches the operands and then builds the final
IR string.

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