From b09b8906cb82eaf9f7afa2158ba10fcbe6b46462 Mon Sep 17 00:00:00 2001 From: Daniel Dunbar Date: Tue, 23 Mar 2010 23:47:12 +0000 Subject: llvm-mc: Support -filetype=null, for timing purposes. llvm-svn: 99349 --- llvm/tools/llvm-mc/llvm-mc.cpp | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'llvm/tools/llvm-mc/llvm-mc.cpp') diff --git a/llvm/tools/llvm-mc/llvm-mc.cpp b/llvm/tools/llvm-mc/llvm-mc.cpp index 3c23990af6b..0e183b05045 100644 --- a/llvm/tools/llvm-mc/llvm-mc.cpp +++ b/llvm/tools/llvm-mc/llvm-mc.cpp @@ -56,6 +56,7 @@ OutputAsmVariant("output-asm-variant", cl::desc("Syntax variant to use for output printing")); enum OutputFileType { + OFT_Null, OFT_AssemblyFile, OFT_ObjectFile }; @@ -65,6 +66,8 @@ FileType("filetype", cl::init(OFT_AssemblyFile), cl::values( clEnumValN(OFT_AssemblyFile, "asm", "Emit an assembly ('.s') file"), + clEnumValN(OFT_Null, "null", + "Don't emit anything (for timing purposes)"), clEnumValN(OFT_ObjectFile, "obj", "Emit a native object ('.o') file"), clEnumValEnd)); @@ -289,6 +292,8 @@ static int AssembleInput(const char *ProgName) { CE.reset(TheTarget->createCodeEmitter(*TM, Ctx)); Str.reset(createAsmStreamer(Ctx, *Out,TM->getTargetData()->isLittleEndian(), /*asmverbose*/true, IP, CE.get(), ShowInst)); + } else if (FileType == OFT_Null) { + Str.reset(createNullStreamer(Ctx)); } else { assert(FileType == OFT_ObjectFile && "Invalid file type!"); CE.reset(TheTarget->createCodeEmitter(*TM, Ctx)); -- cgit v1.2.3