ms inline asm: Don't add x86 segment registers to the clobber list.

Clang tries to check the clobber list but doesn't list segment registers in its
x86 register list. This fixes PR20343.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@213303 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Nico Weber
2014-07-17 20:24:55 +00:00
parent 822f1b191a
commit c1ef24ce39
3 changed files with 10 additions and 1 deletions

View File

@@ -4510,7 +4510,8 @@ bool AsmParser::parseMSInlineAsm(
continue;
// Register operand.
if (Operand.isReg() && !Operand.needAddressOf()) {
if (Operand.isReg() && !Operand.needAddressOf() &&
!getTargetParser().OmitRegisterFromClobberLists(Operand.getReg())) {
unsigned NumDefs = Desc.getNumDefs();
// Clobber.
if (NumDefs && Operand.getMCOperandNum() < NumDefs)