Instead of yet another enum indicating the "assembly language flavor",
just use the one that's in the subtarget.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33255 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Target/X86/X86Subtarget.h b/lib/Target/X86/X86Subtarget.h
index 43e8508..e39c77b 100644
--- a/lib/Target/X86/X86Subtarget.h
+++ b/lib/Target/X86/X86Subtarget.h
@@ -111,6 +111,10 @@
bool has3DNow() const { return X863DNowLevel >= ThreeDNow; }
bool has3DNowA() const { return X863DNowLevel >= ThreeDNowA; }
+ unsigned getAsmFlavor() const {
+ return AsmFlavor != Unset ? unsigned(AsmFlavor) : 0;
+ }
+
bool isFlavorAtt() const { return AsmFlavor == ATT; }
bool isFlavorIntel() const { return AsmFlavor == Intel; }
diff --git a/lib/Target/X86/X86TargetAsmInfo.cpp b/lib/Target/X86/X86TargetAsmInfo.cpp
index 97e59a5..d80996f 100644
--- a/lib/Target/X86/X86TargetAsmInfo.cpp
+++ b/lib/Target/X86/X86TargetAsmInfo.cpp
@@ -21,12 +21,6 @@
#include "llvm/ADT/StringExtras.h"
using namespace llvm;
-// ASM variant to use.
-enum {
- X86_ATT = 0,
- X86_INTEL = 1
-};
-
static const char* x86_asm_table[] = {"{si}", "S",
"{di}", "D",
"{ax}", "a",
@@ -44,7 +38,6 @@
// FIXME - Should be simplified.
AsmTransCBE = x86_asm_table;
- AssemblerDialect = X86_ATT;
switch (Subtarget->TargetType) {
case X86Subtarget::isDarwin:
@@ -169,9 +162,9 @@
TextSectionStartSuffix = "\tsegment 'CODE'";
DataSectionStartSuffix = "\tsegment 'DATA'";
SectionEndDirectiveSuffix = "\tends\n";
-
- AssemblerDialect = X86_INTEL;
}
+
+ AssemblerDialect = Subtarget->getAsmFlavor();
}
bool X86TargetAsmInfo::LowerToBSwap(CallInst *CI) const {