Remove the X86 and PowerPC Simple instruction selectors; their time has

passed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22886 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Nate Begeman 2005-08-18 23:53:15 +00:00
parent cfbf96aa9c
commit 73bfa71524
8 changed files with 8 additions and 8114 deletions

View File

@ -34,13 +34,6 @@ namespace llvm {
/// over the place.
extern bool NoExcessFPPrecision;
/// PatternISelTriState - This flag is enabled when -pattern-isel=X is
/// specified on the command line. The default value is 2, in which case the
/// target chooses what is best for it. Setting X to 0 forces the use of
/// a simple ISel if available, while setting it to 1 forces the use of a
/// pattern ISel if available.
extern int PatternISelTriState;
/// UnsafeFPMath - This flag is enabled when the
/// -enable-unsafe-fp-math flag is specified on the command line. When
/// this flag is off (the default), the code generator is not allowed to

View File

@ -27,7 +27,6 @@ enum PPCTargetEnum {
};
FunctionPass *createPPCBranchSelectionPass();
FunctionPass *createPPC32ISelSimple(TargetMachine &TM);
FunctionPass *createPPC32ISelPattern(TargetMachine &TM);
FunctionPass *createPPC32ISelDag(TargetMachine &TM);
FunctionPass *createDarwinAsmPrinter(std::ostream &OS, TargetMachine &TM);

File diff suppressed because it is too large Load Diff

View File

@ -85,13 +85,9 @@ bool PowerPCTargetMachine::addPassesToEmitFile(PassManager &PM,
PM.add(createUnreachableBlockEliminationPass());
// Install an instruction selector.
if (EnablePPCDAGDAG) {
if (EnablePPCDAGDAG)
PM.add(createPPC32ISelDag(*this));
} else if (PatternISelTriState == 0) {
PM.add(createLowerConstantExpressionsPass());
PM.add(createPPC32ISelSimple(*this));
} else
else
PM.add(createPPC32ISelPattern(*this));
if (PrintMachineCode)
@ -143,13 +139,8 @@ void PowerPCJITInfo::addPassesToJITCompile(FunctionPassManager &PM) {
// Make sure that no unreachable blocks are instruction selected.
PM.add(createUnreachableBlockEliminationPass());
// Default to pattern ISel
if (PatternISelTriState == 0) {
PM.add(createLowerConstantExpressionsPass());
PM.add(createPPC32ISelSimple(TM));
} else {
PM.add(createPPC32ISelPattern(TM));
}
// Install an instruction selector.
PM.add(createPPC32ISelPattern(TM));
PM.add(createRegisterAllocator());
PM.add(createPrologEpilogCodeInserter());

View File

@ -25,7 +25,6 @@ namespace llvm {
bool PrintMachineCode;
bool NoFramePointerElim;
bool NoExcessFPPrecision;
int PatternISelTriState;
bool UnsafeFPMath;
bool PICEnabled;
};
@ -44,10 +43,6 @@ namespace {
cl::desc("Disable optimizations that may increase FP precision"),
cl::location(NoExcessFPPrecision),
cl::init(false));
cl::opt<int, true> PatternISel("enable-pattern-isel",
cl::desc("Turn the pattern ISel off(0), on(1), default(2)"),
cl::location(PatternISelTriState),
cl::init(2));
cl::opt<bool, true>
EnableUnsafeFPMath("enable-unsafe-fp-math",
cl::desc("Enable optimizations that may decrease FP precision"),

View File

@ -32,12 +32,6 @@ enum X86VectorEnum {
extern X86VectorEnum X86Vector;
extern bool X86ScalarSSE;
/// createX86SimpleInstructionSelector - This pass converts an LLVM function
/// into a machine code representation in a very simple peep-hole fashion. The
/// generated code sucks but the implementation is nice and simple.
///
FunctionPass *createX86SimpleInstructionSelector(TargetMachine &TM);
/// createX86PatternInstructionSelector - This pass converts an LLVM function
/// into a machine code representation in a more aggressive way.
///

File diff suppressed because it is too large Load Diff

View File

@ -120,11 +120,8 @@ bool X86TargetMachine::addPassesToEmitFile(PassManager &PM, std::ostream &Out,
// Make sure that no unreachable blocks are instruction selected.
PM.add(createUnreachableBlockEliminationPass());
// Default to pattern ISel
if (PatternISelTriState == 0)
PM.add(createX86SimpleInstructionSelector(*this));
else
PM.add(createX86PatternInstructionSelector(*this));
// Install an instruction selector.
PM.add(createX86PatternInstructionSelector(*this));
// Run optional SSA-based machine code optimizations next...
if (!NoSSAPeephole)
@ -191,11 +188,8 @@ void X86JITInfo::addPassesToJITCompile(FunctionPassManager &PM) {
// Make sure that no unreachable blocks are instruction selected.
PM.add(createUnreachableBlockEliminationPass());
// Default to pattern ISel
if (PatternISelTriState == 0)
PM.add(createX86SimpleInstructionSelector(TM));
else
PM.add(createX86PatternInstructionSelector(TM));
// Install an instruction selector.
PM.add(createX86PatternInstructionSelector(TM));
// Run optional SSA-based machine code optimizations next...
if (!NoSSAPeephole)