static cl::opt<bool> DisablePeephole("disable-peephole",
cl::desc("Disable peephole optimization pass"));
-static cl::opt<bool>
-DisableStrip("disable-strip",
- cl::desc("Do not strip the LLVM bytecode included in the executable"));
+static cl::opt<bool> EmitMappingInfo("emitmaps",
+ cl::desc("Emit LLVM-to-MachineCode mapping info to assembly"));
-static cl::opt<bool>
-DumpInput("dump-input",cl::desc("Print bytecode before native code generation"),
- cl::Hidden);
+static cl::opt<bool> DisableStrip("disable-strip",
+ cl::desc("Do not strip the LLVM bytecode included in executable"));
+
+static cl::opt<bool> DumpInput("dump-input",
+ cl::desc("Print bytecode before native code generation"),
+ cl::Hidden);
//----------------------------------------------------------------------------
// allocateSparcTargetMachine - Allocate and return a subclass of TargetMachine
if (!DisablePeephole)
PM.add(createPeepholeOptsPass(*this));
- PM.add(getMappingInfoCollector(Out));
+ if (EmitMappingInfo)
+ PM.add(getMappingInfoCollector(Out));
// Output assembly language to the .s file. Assembly emission is split into
// two parts: Function output and Global value output. This is because
PM.add(getModuleAsmPrinterPass(Out));
// Emit bytecode to the assembly file into its special section next
- PM.add(getEmitBytecodeToAsmPass(Out));
- PM.add(getFunctionInfo(Out));
+ if (EmitMappingInfo) {
+ PM.add(getEmitBytecodeToAsmPass(Out));
+ PM.add(getFunctionInfo(Out));
+ }
+
return false;
}