Turn off the old way of handling debug information in the code generator. Use
[oota-llvm.git] / lib / Target / X86 / X86.h
index c2a1dfde6157779cfd1cf18947e3ec5332906df7..135787b98a958a39fe2238d1ef4be4984b76d2a0 100644 (file)
 #ifndef TARGET_X86_H
 #define TARGET_X86_H
 
-#include <iosfwd>
-
 namespace llvm {
 
 class X86TargetMachine;
-class FunctionPassManager;
 class FunctionPass;
 class MachineCodeEmitter;
+class raw_ostream;
 
 /// createX86ISelDag - This pass converts a legalized DAG into a 
 /// X86-specific DAG, ready for instruction scheduling.
@@ -35,11 +33,16 @@ FunctionPass *createX86ISelDag(X86TargetMachine &TM, bool Fast);
 ///
 FunctionPass *createX86FloatingPointStackifierPass();
 
+/// createX87FPRegKillInserterPass - This function returns a pass which
+/// inserts FP_REG_KILL instructions where needed.
+///
+FunctionPass *createX87FPRegKillInserterPass();
+
 /// createX86CodePrinterPass - Returns a pass that prints the X86
 /// assembly code for a MachineFunction to the given output stream,
 /// using the given target machine description.
 ///
-FunctionPass *createX86CodePrinterPass(std::ostream &o, X86TargetMachine &tm);
+FunctionPass *createX86CodePrinterPass(raw_ostream &o, X86TargetMachine &tm);
 
 /// createX86CodeEmitterPass - Return a pass that emits the collected X86 code
 /// to the specified MCE object.
@@ -52,6 +55,11 @@ FunctionPass *createX86CodeEmitterPass(X86TargetMachine &TM,
 ///
 FunctionPass *createEmitX86CodeToMemory();
 
+/// createX86MaxStackAlignmentCalculatorPass - This function returns a pass which
+/// calculates maximal stack alignment required for function
+///
+FunctionPass *createX86MaxStackAlignmentCalculatorPass();
+
 } // End llvm namespace
 
 // Defines symbolic names for X86 registers.  This defines a mapping from