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 372 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
383 OutFlags.setDefaultFunctionPrefix(::DefaultFunctionPrefix); | 383 OutFlags.setDefaultFunctionPrefix(::DefaultFunctionPrefix); |
384 OutFlags.setDefaultGlobalPrefix(::DefaultGlobalPrefix); | 384 OutFlags.setDefaultGlobalPrefix(::DefaultGlobalPrefix); |
385 OutFlags.setDisableInternal(::DisableInternal); | 385 OutFlags.setDisableInternal(::DisableInternal); |
386 OutFlags.setDisableIRGeneration(::DisableIRGeneration); | 386 OutFlags.setDisableIRGeneration(::DisableIRGeneration); |
387 OutFlags.setDisableTranslation(::DisableTranslation); | 387 OutFlags.setDisableTranslation(::DisableTranslation); |
388 OutFlags.setDumpStats(::DumpStats); | 388 OutFlags.setDumpStats(::DumpStats); |
389 OutFlags.setEnableBlockProfile(::EnableBlockProfile); | 389 OutFlags.setEnableBlockProfile(::EnableBlockProfile); |
390 OutFlags.setFunctionSections(::FunctionSections); | 390 OutFlags.setFunctionSections(::FunctionSections); |
391 OutFlags.setNumTranslationThreads(::NumThreads); | 391 OutFlags.setNumTranslationThreads(::NumThreads); |
392 OutFlags.setOptLevel(::OLevel); | 392 OutFlags.setOptLevel(::OLevel); |
393 OutFlags.setPhiEdgeSplit(::EnablePhiEdgeSplit); | 393 if (::TargetArch == Target_ARM32) { |
| 394 // TODO(jvoung): We need lowerPhiAssignments to handle spilling |
| 395 // more than one register, since some ARM lowerAssign sequences |
| 396 // may require more than one register. For now, disable PhiEdgeSplit |
| 397 // to avoid requiring lowerPhiAssignments. |
| 398 OutFlags.setPhiEdgeSplit(false); |
| 399 } else { |
| 400 OutFlags.setPhiEdgeSplit(::EnablePhiEdgeSplit); |
| 401 } |
394 OutFlags.setRandomSeed(::RandomSeed); | 402 OutFlags.setRandomSeed(::RandomSeed); |
395 OutFlags.setShouldDoNopInsertion(::ShouldDoNopInsertion); | 403 OutFlags.setShouldDoNopInsertion(::ShouldDoNopInsertion); |
396 OutFlags.setShouldRandomizeRegAlloc(::RandomizeRegisterAllocation); | 404 OutFlags.setShouldRandomizeRegAlloc(::RandomizeRegisterAllocation); |
397 OutFlags.setSkipUnimplemented(::SkipUnimplemented); | 405 OutFlags.setSkipUnimplemented(::SkipUnimplemented); |
398 OutFlags.setSubzeroTimingEnabled(::SubzeroTimingEnabled); | 406 OutFlags.setSubzeroTimingEnabled(::SubzeroTimingEnabled); |
399 OutFlags.setTargetArch(::TargetArch); | 407 OutFlags.setTargetArch(::TargetArch); |
400 OutFlags.setTargetInstructionSet(::TargetInstructionSet); | 408 OutFlags.setTargetInstructionSet(::TargetInstructionSet); |
401 OutFlags.setTestPrefix(::TestPrefix); | 409 OutFlags.setTestPrefix(::TestPrefix); |
402 OutFlags.setTimeEachFunction(::TimeEachFunction); | 410 OutFlags.setTimeEachFunction(::TimeEachFunction); |
403 OutFlags.setTimingFocusOn(::TimingFocusOn); | 411 OutFlags.setTimingFocusOn(::TimingFocusOn); |
(...skipping 28 matching lines...) Expand all Loading... |
432 OutFlagsExtra.setGenerateBuildAtts(GenerateBuildAtts); | 440 OutFlagsExtra.setGenerateBuildAtts(GenerateBuildAtts); |
433 OutFlagsExtra.setLLVMVerboseErrors(LLVMVerboseErrors); | 441 OutFlagsExtra.setLLVMVerboseErrors(LLVMVerboseErrors); |
434 OutFlagsExtra.setAppName(AppName); | 442 OutFlagsExtra.setAppName(AppName); |
435 OutFlagsExtra.setInputFileFormat(InputFileFormat); | 443 OutFlagsExtra.setInputFileFormat(InputFileFormat); |
436 OutFlagsExtra.setIRFilename(IRFilename); | 444 OutFlagsExtra.setIRFilename(IRFilename); |
437 OutFlagsExtra.setLogFilename(LogFilename); | 445 OutFlagsExtra.setLogFilename(LogFilename); |
438 OutFlagsExtra.setOutputFilename(OutputFilename); | 446 OutFlagsExtra.setOutputFilename(OutputFilename); |
439 } | 447 } |
440 | 448 |
441 } // end of namespace Ice | 449 } // end of namespace Ice |
OLD | NEW |