mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-28 04:33:05 +00:00
Unify command line handling of MCTargetOptions and remove extra
options and code. No functional change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@208833 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
afc6099348
commit
475ac5d302
@ -70,11 +70,6 @@ CMModel("code-model",
|
||||
"Large code model"),
|
||||
clEnumValEnd));
|
||||
|
||||
cl::opt<bool>
|
||||
RelaxAll("mc-relax-all",
|
||||
cl::desc("When used with filetype=obj, "
|
||||
"relax all fixups in the emitted object file"));
|
||||
|
||||
cl::opt<TargetMachine::CodeGenFileType>
|
||||
FileType("filetype", cl::init(TargetMachine::CGFT_AssemblyFile),
|
||||
cl::desc("Choose a file type (not all types are supported by all targets):"),
|
||||
@ -87,9 +82,6 @@ FileType("filetype", cl::init(TargetMachine::CGFT_AssemblyFile),
|
||||
"Emit nothing, for performance testing"),
|
||||
clEnumValEnd));
|
||||
|
||||
cl::opt<bool> EnableDwarfDirectory("enable-dwarf-directory", cl::Hidden,
|
||||
cl::desc("Use .file directives with an explicit directory."));
|
||||
|
||||
cl::opt<bool>
|
||||
DisableRedZone("disable-red-zone",
|
||||
cl::desc("Do not emit code that uses the red zone."),
|
||||
|
@ -20,22 +20,37 @@
|
||||
using namespace llvm;
|
||||
|
||||
cl::opt<MCTargetOptions::AsmInstrumentation> AsmInstrumentation(
|
||||
"asm-instrumentation",
|
||||
cl::desc("Instrumentation of inline assembly and "
|
||||
"assembly source files"),
|
||||
"asm-instrumentation", cl::desc("Instrumentation of inline assembly and "
|
||||
"assembly source files"),
|
||||
cl::init(MCTargetOptions::AsmInstrumentationNone),
|
||||
cl::values(clEnumValN(MCTargetOptions::AsmInstrumentationNone,
|
||||
"none",
|
||||
cl::values(clEnumValN(MCTargetOptions::AsmInstrumentationNone, "none",
|
||||
"no instrumentation at all"),
|
||||
clEnumValN(MCTargetOptions::AsmInstrumentationAddress,
|
||||
"address",
|
||||
clEnumValN(MCTargetOptions::AsmInstrumentationAddress, "address",
|
||||
"instrument instructions with memory arguments"),
|
||||
clEnumValEnd));
|
||||
|
||||
cl::opt<bool> RelaxAll("mc-relax-all",
|
||||
cl::desc("When used with filetype=obj, "
|
||||
"relax all fixups in the emitted object file"));
|
||||
|
||||
cl::opt<bool> EnableDwarfDirectory(
|
||||
"enable-dwarf-directory", cl::Hidden,
|
||||
cl::desc("Use .file directives with an explicit directory."));
|
||||
|
||||
cl::opt<bool> NoExecStack("mc-no-exec-stack",
|
||||
cl::desc("File doesn't need an exec stack"));
|
||||
|
||||
static cl::opt<bool>
|
||||
SaveTempLabels("L", cl::desc("Don't discard temporary labels"));
|
||||
|
||||
static inline MCTargetOptions InitMCTargetOptionsFromFlags() {
|
||||
MCTargetOptions Options;
|
||||
Options.SanitizeAddress =
|
||||
(AsmInstrumentation == MCTargetOptions::AsmInstrumentationAddress);
|
||||
Options.MCRelaxAll = RelaxAll;
|
||||
Options.MCUseDwarfDirectory = EnableDwarfDirectory;
|
||||
Options.MCNoExecStack = NoExecStack;
|
||||
Options.MCSaveTempLabels = SaveTempLabels;
|
||||
return Options;
|
||||
}
|
||||
|
||||
|
@ -287,9 +287,6 @@ static int compileModule(char **argv, LLVMContext &Context) {
|
||||
assert(mod && "Should have exited if we didn't have a module!");
|
||||
TargetMachine &Target = *target.get();
|
||||
|
||||
if (EnableDwarfDirectory)
|
||||
Target.setMCUseDwarfDirectory(true);
|
||||
|
||||
if (GenerateSoftFloatCalls)
|
||||
FloatABIForCalls = FloatABI::Soft;
|
||||
|
||||
@ -315,13 +312,10 @@ static int compileModule(char **argv, LLVMContext &Context) {
|
||||
// Override default to generate verbose assembly.
|
||||
Target.setAsmVerbosityDefault(true);
|
||||
|
||||
if (RelaxAll) {
|
||||
if (FileType != TargetMachine::CGFT_ObjectFile)
|
||||
errs() << argv[0]
|
||||
if (RelaxAll.getNumOccurrences() > 0 &&
|
||||
FileType != TargetMachine::CGFT_ObjectFile)
|
||||
errs() << argv[0]
|
||||
<< ": warning: ignoring -mc-relax-all because filetype != obj";
|
||||
else
|
||||
Target.setMCRelaxAll(true);
|
||||
}
|
||||
|
||||
{
|
||||
formatted_raw_ostream FOS(Out->os());
|
||||
|
@ -65,12 +65,6 @@ static cl::opt<unsigned>
|
||||
OutputAsmVariant("output-asm-variant",
|
||||
cl::desc("Syntax variant to use for output printing"));
|
||||
|
||||
static cl::opt<bool>
|
||||
RelaxAll("mc-relax-all", cl::desc("Relax all fixups"));
|
||||
|
||||
static cl::opt<bool>
|
||||
NoExecStack("mc-no-exec-stack", cl::desc("File doesn't need an exec stack"));
|
||||
|
||||
enum OutputFileType {
|
||||
OFT_Null,
|
||||
OFT_AssemblyFile,
|
||||
@ -147,9 +141,6 @@ static cl::opt<bool>
|
||||
NoInitialTextSection("n", cl::desc("Don't assume assembly file starts "
|
||||
"in the text section"));
|
||||
|
||||
static cl::opt<bool>
|
||||
SaveTempLabels("L", cl::desc("Don't discard temporary labels"));
|
||||
|
||||
static cl::opt<bool>
|
||||
GenDwarfForAssembly("g", cl::desc("Generate dwarf debugging info for assembly "
|
||||
"source files"));
|
||||
|
Loading…
Reference in New Issue
Block a user