OLD | NEW |
1 //===- subzero/src/IceClFlags.cpp - Command line flags and parsing --------===// | 1 //===- subzero/src/IceClFlags.cpp - Command line flags and parsing --------===// |
2 // | 2 // |
3 // The Subzero Code Generator | 3 // The Subzero Code Generator |
4 // | 4 // |
5 // This file is distributed under the University of Illinois Open Source | 5 // This file is distributed under the University of Illinois Open Source |
6 // License. See LICENSE.TXT for details. | 6 // License. See LICENSE.TXT for details. |
7 // | 7 // |
8 //===----------------------------------------------------------------------===// | 8 //===----------------------------------------------------------------------===// |
9 /// | 9 /// |
10 /// \file | 10 /// \file |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
67 DefaultFunctionPrefix("default-function-prefix", | 67 DefaultFunctionPrefix("default-function-prefix", |
68 cl::desc("Define default function prefix for naming " | 68 cl::desc("Define default function prefix for naming " |
69 "unnamed functions"), | 69 "unnamed functions"), |
70 cl::init("Function")); | 70 cl::init("Function")); |
71 | 71 |
72 cl::opt<std::string> | 72 cl::opt<std::string> |
73 DefaultGlobalPrefix("default-global-prefix", | 73 DefaultGlobalPrefix("default-global-prefix", |
74 cl::desc("Define default global prefix for naming " | 74 cl::desc("Define default global prefix for naming " |
75 "unnamed globals"), | 75 "unnamed globals"), |
76 cl::init("Global")); | 76 cl::init("Global")); |
| 77 |
| 78 cl::opt<bool> DisableHybridAssembly( |
| 79 "no-hybrid-asm", cl::desc("Disable hybrid assembly when -filetype=iasm"), |
| 80 cl::init(false)); |
| 81 |
77 cl::opt<bool> DisableInternal("externalize", | 82 cl::opt<bool> DisableInternal("externalize", |
78 cl::desc("Externalize all symbols")); | 83 cl::desc("Externalize all symbols")); |
79 // Note: Modifiable only if ALLOW_DISABLE_IR_GEN. | 84 // Note: Modifiable only if ALLOW_DISABLE_IR_GEN. |
80 cl::opt<bool> DisableIRGeneration("no-ir-gen", | 85 cl::opt<bool> DisableIRGeneration("no-ir-gen", |
81 cl::desc("Disable generating Subzero IR.")); | 86 cl::desc("Disable generating Subzero IR.")); |
82 cl::opt<bool> DisableTranslation("notranslate", | 87 cl::opt<bool> DisableTranslation("notranslate", |
83 cl::desc("Disable Subzero translation")); | 88 cl::desc("Disable Subzero translation")); |
84 | 89 |
85 cl::opt<bool> | 90 cl::opt<bool> |
86 DumpStats("szstats", | 91 DumpStats("szstats", |
(...skipping 286 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
373 } | 378 } |
374 | 379 |
375 void ClFlags::resetClFlags(ClFlags &OutFlags) { | 380 void ClFlags::resetClFlags(ClFlags &OutFlags) { |
376 // bool fields | 381 // bool fields |
377 OutFlags.AllowErrorRecovery = false; | 382 OutFlags.AllowErrorRecovery = false; |
378 OutFlags.AllowExternDefinedSymbols = false; | 383 OutFlags.AllowExternDefinedSymbols = false; |
379 OutFlags.AllowIacaMarks = false; | 384 OutFlags.AllowIacaMarks = false; |
380 OutFlags.AllowUninitializedGlobals = false; | 385 OutFlags.AllowUninitializedGlobals = false; |
381 OutFlags.DataSections = false; | 386 OutFlags.DataSections = false; |
382 OutFlags.DecorateAsm = false; | 387 OutFlags.DecorateAsm = false; |
| 388 OutFlags.DisableHybridAssembly = false; |
383 OutFlags.DisableInternal = false; | 389 OutFlags.DisableInternal = false; |
384 OutFlags.DisableIRGeneration = false; | 390 OutFlags.DisableIRGeneration = false; |
385 OutFlags.DisableTranslation = false; | 391 OutFlags.DisableTranslation = false; |
386 OutFlags.DumpStats = false; | 392 OutFlags.DumpStats = false; |
387 OutFlags.EnableBlockProfile = false; | 393 OutFlags.EnableBlockProfile = false; |
388 OutFlags.ForceMemIntrinOpt = false; | 394 OutFlags.ForceMemIntrinOpt = false; |
389 OutFlags.FunctionSections = false; | 395 OutFlags.FunctionSections = false; |
390 OutFlags.GenerateUnitTestMessages = false; | 396 OutFlags.GenerateUnitTestMessages = false; |
391 OutFlags.MockBoundsCheck = false; | 397 OutFlags.MockBoundsCheck = false; |
392 OutFlags.PhiEdgeSplit = false; | 398 OutFlags.PhiEdgeSplit = false; |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
438 | 444 |
439 OutFlags.setAllowErrorRecovery(::AllowErrorRecovery); | 445 OutFlags.setAllowErrorRecovery(::AllowErrorRecovery); |
440 OutFlags.setAllowExternDefinedSymbols(::AllowExternDefinedSymbols || | 446 OutFlags.setAllowExternDefinedSymbols(::AllowExternDefinedSymbols || |
441 ::DisableInternal); | 447 ::DisableInternal); |
442 OutFlags.setAllowIacaMarks(::AllowIacaMarks); | 448 OutFlags.setAllowIacaMarks(::AllowIacaMarks); |
443 OutFlags.setAllowUninitializedGlobals(::AllowUninitializedGlobals); | 449 OutFlags.setAllowUninitializedGlobals(::AllowUninitializedGlobals); |
444 OutFlags.setDataSections(::DataSections); | 450 OutFlags.setDataSections(::DataSections); |
445 OutFlags.setDecorateAsm(::DecorateAsm); | 451 OutFlags.setDecorateAsm(::DecorateAsm); |
446 OutFlags.setDefaultFunctionPrefix(::DefaultFunctionPrefix); | 452 OutFlags.setDefaultFunctionPrefix(::DefaultFunctionPrefix); |
447 OutFlags.setDefaultGlobalPrefix(::DefaultGlobalPrefix); | 453 OutFlags.setDefaultGlobalPrefix(::DefaultGlobalPrefix); |
| 454 OutFlags.setDisableHybridAssembly(::DisableHybridAssembly); |
448 OutFlags.setDisableInternal(::DisableInternal); | 455 OutFlags.setDisableInternal(::DisableInternal); |
449 OutFlags.setDisableIRGeneration(::DisableIRGeneration); | 456 OutFlags.setDisableIRGeneration(::DisableIRGeneration); |
450 OutFlags.setDisableTranslation(::DisableTranslation); | 457 OutFlags.setDisableTranslation(::DisableTranslation); |
451 OutFlags.setDumpStats(::DumpStats); | 458 OutFlags.setDumpStats(::DumpStats); |
452 OutFlags.setEnableBlockProfile(::EnableBlockProfile); | 459 OutFlags.setEnableBlockProfile(::EnableBlockProfile); |
453 OutFlags.setForceMemIntrinOpt(::ForceMemIntrinOpt); | 460 OutFlags.setForceMemIntrinOpt(::ForceMemIntrinOpt); |
454 OutFlags.setFunctionSections(::FunctionSections); | 461 OutFlags.setFunctionSections(::FunctionSections); |
455 OutFlags.setNumTranslationThreads(::NumThreads); | 462 OutFlags.setNumTranslationThreads(::NumThreads); |
456 OutFlags.setOptLevel(::OLevel); | 463 OutFlags.setOptLevel(::OLevel); |
457 OutFlags.setMockBoundsCheck(::MockBoundsCheck); | 464 OutFlags.setMockBoundsCheck(::MockBoundsCheck); |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
493 OutFlagsExtra.setGenerateBuildAtts(GenerateBuildAtts); | 500 OutFlagsExtra.setGenerateBuildAtts(GenerateBuildAtts); |
494 OutFlagsExtra.setLLVMVerboseErrors(LLVMVerboseErrors); | 501 OutFlagsExtra.setLLVMVerboseErrors(LLVMVerboseErrors); |
495 OutFlagsExtra.setAppName(AppName); | 502 OutFlagsExtra.setAppName(AppName); |
496 OutFlagsExtra.setInputFileFormat(InputFileFormat); | 503 OutFlagsExtra.setInputFileFormat(InputFileFormat); |
497 OutFlagsExtra.setIRFilename(IRFilename); | 504 OutFlagsExtra.setIRFilename(IRFilename); |
498 OutFlagsExtra.setLogFilename(LogFilename); | 505 OutFlagsExtra.setLogFilename(LogFilename); |
499 OutFlagsExtra.setOutputFilename(OutputFilename); | 506 OutFlagsExtra.setOutputFilename(OutputFilename); |
500 } | 507 } |
501 | 508 |
502 } // end of namespace Ice | 509 } // end of namespace Ice |
OLD | NEW |