mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-12 13:38:21 +00:00
Massive check in. This changes the "-fast" flag to "-O#" in llc. If you want to
use the old behavior, the flag is -O0. This change allows for finer-grained control over which optimizations are run at different -O levels. Most of this work was pretty mechanical. The majority of the fixes came from verifying that a "fast" variable wasn't used anymore. The JIT still uses a "Fast" flag. I'm not 100% sure if it's necessary to change it there... git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70270 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -68,7 +68,8 @@ unsigned SparcTargetMachine::getModuleMatchQuality(const Module &M) {
|
||||
#endif
|
||||
}
|
||||
|
||||
bool SparcTargetMachine::addInstSelector(PassManagerBase &PM, bool Fast) {
|
||||
bool SparcTargetMachine::addInstSelector(PassManagerBase &PM,
|
||||
unsigned OptLevel) {
|
||||
PM.add(createSparcISelDag(*this));
|
||||
return false;
|
||||
}
|
||||
@ -76,15 +77,17 @@ bool SparcTargetMachine::addInstSelector(PassManagerBase &PM, bool Fast) {
|
||||
/// addPreEmitPass - This pass may be implemented by targets that want to run
|
||||
/// passes immediately before machine code is emitted. This should return
|
||||
/// true if -print-machineinstrs should print out the code after the passes.
|
||||
bool SparcTargetMachine::addPreEmitPass(PassManagerBase &PM, bool Fast) {
|
||||
bool SparcTargetMachine::addPreEmitPass(PassManagerBase &PM, unsigned OptLevel){
|
||||
PM.add(createSparcFPMoverPass(*this));
|
||||
PM.add(createSparcDelaySlotFillerPass(*this));
|
||||
return true;
|
||||
}
|
||||
|
||||
bool SparcTargetMachine::addAssemblyEmitter(PassManagerBase &PM, bool Fast,
|
||||
bool Verbose, raw_ostream &Out) {
|
||||
bool SparcTargetMachine::addAssemblyEmitter(PassManagerBase &PM,
|
||||
unsigned OptLevel,
|
||||
bool Verbose,
|
||||
raw_ostream &Out) {
|
||||
// Output assembly language.
|
||||
PM.add(createSparcCodePrinterPass(Out, *this, Fast, Verbose));
|
||||
PM.add(createSparcCodePrinterPass(Out, *this, OptLevel, Verbose));
|
||||
return false;
|
||||
}
|
||||
|
Reference in New Issue
Block a user