summaryrefslogtreecommitdiff
path: root/lib/CodeGen/MachineInstr.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lib/CodeGen/MachineInstr.cpp')
-rw-r--r--lib/CodeGen/MachineInstr.cpp10
1 files changed, 3 insertions, 7 deletions
diff --git a/lib/CodeGen/MachineInstr.cpp b/lib/CodeGen/MachineInstr.cpp
index dad6840015..362d99a8a4 100644
--- a/lib/CodeGen/MachineInstr.cpp
+++ b/lib/CodeGen/MachineInstr.cpp
@@ -970,11 +970,7 @@ bool MachineInstr::isStackAligningInlineAsm() const {
InlineAsm::AsmDialect MachineInstr::getInlineAsmDialect() const {
assert(isInlineAsm() && "getInlineAsmDialect() only works for inline asms!");
unsigned ExtraInfo = getOperand(InlineAsm::MIOp_ExtraInfo).getImm();
- if (ExtraInfo & InlineAsm::Extra_IntelDialect)
- return InlineAsm::AD_Intel;
-
- assert((ExtraInfo & InlineAsm::Extra_ATTDialect) && "Expected AT&T dialect!");
- return InlineAsm::AD_ATT; // The default.
+ return InlineAsm::AsmDialect((ExtraInfo >> 2) & 1);
}
int MachineInstr::findInlineAsmFlagIdx(unsigned OpIdx,
@@ -1579,9 +1575,9 @@ void MachineInstr::print(raw_ostream &OS, const TargetMachine *TM) const {
OS << " [sideeffect]";
if (ExtraInfo & InlineAsm::Extra_IsAlignStack)
OS << " [alignstack]";
- if (ExtraInfo & InlineAsm::Extra_ATTDialect)
+ if (getInlineAsmDialect() == InlineAsm::AD_ATT)
OS << " [attdialect]";
- if (ExtraInfo & InlineAsm::Extra_IntelDialect)
+ if (getInlineAsmDialect() == InlineAsm::AD_Intel)
OS << " [inteldialect]";
StartOp = AsmDescOp = InlineAsm::MIOp_FirstOperand;