diff options
author | Chad Rosier <mcrosier@apple.com> | 2012-09-05 21:00:58 +0000 |
---|---|---|
committer | Chad Rosier <mcrosier@apple.com> | 2012-09-05 21:00:58 +0000 |
commit | 576cd11ab8035d4240f7e6ea8d7c6c2e45154f86 (patch) | |
tree | 813cef92b22706b8f93e5c436b6342a415d33757 /lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp | |
parent | a759eb3bb9fe50832289fec522d5d0b5dd171af2 (diff) |
[ms-inline asm] Propagate the asm dialect into the MachineInstr representation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163243 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp')
-rw-r--r-- | lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp b/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp index be904f1b32..c26a3d41b4 100644 --- a/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp +++ b/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp @@ -6078,12 +6078,16 @@ void SelectionDAGBuilder::visitInlineAsm(ImmutableCallSite CS) { const MDNode *SrcLoc = CS.getInstruction()->getMetadata("srcloc"); AsmNodeOperands.push_back(DAG.getMDNode(SrcLoc)); - // Remember the HasSideEffect and AlignStack bits as operand 3. + // Remember the HasSideEffect, AlignStack and AsmDialect bits as operand 3. unsigned ExtraInfo = 0; if (IA->hasSideEffects()) ExtraInfo |= InlineAsm::Extra_HasSideEffects; if (IA->isAlignStack()) ExtraInfo |= InlineAsm::Extra_IsAlignStack; + if (IA->getDialect() == InlineAsm::Extra_ATTDialect) + ExtraInfo |= InlineAsm::Extra_ATTDialect; + if (IA->getDialect() == InlineAsm::Extra_IntelDialect) + ExtraInfo |= InlineAsm::Extra_IntelDialect; AsmNodeOperands.push_back(DAG.getTargetConstant(ExtraInfo, TLI.getPointerTy())); |