* Most pass ctor functions don't take TM arguments anymore
authorChris Lattner <sabre@nondot.org>
Sat, 28 Dec 2002 20:26:16 +0000 (20:26 +0000)
committerChris Lattner <sabre@nondot.org>
Sat, 28 Dec 2002 20:26:16 +0000 (20:26 +0000)
* New createPrologEpilogCodeInserter() function

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5181 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/X86/X86.h

index ee152d41b378e047868190f3dd68dfc34dfe66e8..b2176aa1ebec90547ffa5827d6b1eca56b566f22 100644 (file)
@@ -20,24 +20,29 @@ class Pass;
 ///
 Pass *createSimpleX86InstructionSelector(TargetMachine &TM);
 
-/// createSimpleRegisterAllocation - This function converts the specified
-/// machine code function from SSA form to use explicit registers by spilling
-/// every register.  Wow, great policy huh?
+/// createSimpleRegisterAllocation - This function returns a pass that converts
+/// the specified machine code function from SSA form to use explicit registers
+/// by spilling every register.  Wow, great policy huh?
 ///
-Pass *createSimpleRegisterAllocator(TargetMachine &TM);
-Pass *createLocalRegisterAllocator(TargetMachine &TM);
+Pass *createSimpleRegisterAllocator();
+Pass *createLocalRegisterAllocator();
+
+/// createPrologEpilogCodeInserter - This function returns a pass that inserts
+/// prolog and epilog code, and eliminates abstract frame references.
+///
+Pass *createPrologEpilogCodeInserter();
 
 /// createX86CodePrinterPass - Print out the specified machine code function to
 /// the specified stream.  This function should work regardless of whether or
 /// not the function is in SSA form or not.
 ///
-Pass *createX86CodePrinterPass(TargetMachine &TM, std::ostream &O);
+Pass *createX86CodePrinterPass(std::ostream &O);
 
 /// X86EmitCodeToMemory - This function converts a register allocated function
 /// into raw machine code in a dynamically allocated chunk of memory.  A pointer
 /// to the start of the function is returned.
 ///
-Pass *createEmitX86CodeToMemory(TargetMachine &TM);
+Pass *createEmitX86CodeToMemory();
 
 // Put symbolic names in a namespace to avoid causing these to clash with all
 // kinds of other things...