summaryrefslogtreecommitdiff
path: root/tools/llvm-mc
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2009-09-20 07:17:49 +0000
committerChris Lattner <sabre@nondot.org>2009-09-20 07:17:49 +0000
commite895c6151589c1b7f6ac9ca992b76106fa197a37 (patch)
treea6e92bd5e5f457622036754aee7ca8531bf0ef57 /tools/llvm-mc
parentfd40d038b32096d12af83b28e9ccd1ae3837356f (diff)
downloadllvm-e895c6151589c1b7f6ac9ca992b76106fa197a37.tar.gz
llvm-e895c6151589c1b7f6ac9ca992b76106fa197a37.tar.bz2
llvm-e895c6151589c1b7f6ac9ca992b76106fa197a37.tar.xz
Add an intel syntax MCInstPrinter implementation. You can now
transcode from AT&T to intel syntax with "llvm-mc foo.s -output-asm-variant=1" git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82385 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/llvm-mc')
-rw-r--r--tools/llvm-mc/llvm-mc.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/tools/llvm-mc/llvm-mc.cpp b/tools/llvm-mc/llvm-mc.cpp
index fad1dd1685..329efe9232 100644
--- a/tools/llvm-mc/llvm-mc.cpp
+++ b/tools/llvm-mc/llvm-mc.cpp
@@ -44,6 +44,10 @@ OutputFilename("o", cl::desc("Output filename"),
static cl::opt<bool>
ShowEncoding("show-encoding", cl::desc("Show instruction encodings"));
+static cl::opt<unsigned>
+OutputAsmVariant("output-asm-variant",
+ cl::desc("Syntax variant to use for output printing"));
+
enum OutputFileType {
OFT_AssemblyFile,
OFT_ObjectFile
@@ -252,9 +256,7 @@ static int AssembleInput(const char *ProgName) {
assert(MAI && "Unable to create target asm info!");
if (FileType == OFT_AssemblyFile) {
- // FIXME: Syntax Variant should be selectable somehow?
- unsigned SyntaxVariant = 0;
- IP.reset(TheTarget->createMCInstPrinter(SyntaxVariant, *MAI, *Out));
+ IP.reset(TheTarget->createMCInstPrinter(OutputAsmVariant, *MAI, *Out));
if (ShowEncoding)
CE.reset(TheTarget->createCodeEmitter(*TM));
Str.reset(createAsmStreamer(Ctx, *Out, *MAI, IP.get(), CE.get()));