mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-30 19:35:54 +00:00
Corrected formatting.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30942 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
4a84ad7a2b
commit
1ccc47ec38
@ -36,18 +36,16 @@ FunctionPass *createRaisePointerReferencesPass();
|
|||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
//
|
//
|
||||||
// Constant Propagation Pass - A worklist driven constant propagation pass
|
// ConstantPropagation - A worklist driven constant propagation pass
|
||||||
//
|
//
|
||||||
FunctionPass *createConstantPropagationPass();
|
FunctionPass *createConstantPropagationPass();
|
||||||
|
|
||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
//
|
//
|
||||||
// Sparse Conditional Constant Propagation Pass
|
// SCCP - Sparse conditional constant propagation.
|
||||||
//
|
//
|
||||||
FunctionPass *createSCCPPass();
|
FunctionPass *createSCCPPass();
|
||||||
|
|
||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
//
|
//
|
||||||
// DeadInstElimination - This pass quickly removes trivially dead instructions
|
// DeadInstElimination - This pass quickly removes trivially dead instructions
|
||||||
@ -56,7 +54,6 @@ FunctionPass *createSCCPPass();
|
|||||||
//
|
//
|
||||||
FunctionPass *createDeadInstEliminationPass();
|
FunctionPass *createDeadInstEliminationPass();
|
||||||
|
|
||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
//
|
//
|
||||||
// DeadCodeElimination - This pass is more powerful than DeadInstElimination,
|
// DeadCodeElimination - This pass is more powerful than DeadInstElimination,
|
||||||
@ -81,15 +78,13 @@ FunctionPass *createDeadStoreEliminationPass();
|
|||||||
//
|
//
|
||||||
FunctionPass *createAggressiveDCEPass();
|
FunctionPass *createAggressiveDCEPass();
|
||||||
|
|
||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
//
|
//
|
||||||
// Scalar Replacement of Aggregates - Break up alloca's of aggregates into
|
// ScalarReplAggregates - Break up alloca's of aggregates into multiple allocas
|
||||||
// multiple allocas if possible.
|
// if possible.
|
||||||
//
|
//
|
||||||
FunctionPass *createScalarReplAggregatesPass();
|
FunctionPass *createScalarReplAggregatesPass();
|
||||||
|
|
||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
//
|
//
|
||||||
// GCSE - This pass is designed to be a very quick global transformation that
|
// GCSE - This pass is designed to be a very quick global transformation that
|
||||||
@ -99,7 +94,6 @@ FunctionPass *createScalarReplAggregatesPass();
|
|||||||
//
|
//
|
||||||
FunctionPass *createGCSEPass();
|
FunctionPass *createGCSEPass();
|
||||||
|
|
||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
//
|
//
|
||||||
// InductionVariableSimplify - Transform induction variables in a program to all
|
// InductionVariableSimplify - Transform induction variables in a program to all
|
||||||
@ -107,12 +101,11 @@ FunctionPass *createGCSEPass();
|
|||||||
//
|
//
|
||||||
FunctionPass *createIndVarSimplifyPass();
|
FunctionPass *createIndVarSimplifyPass();
|
||||||
|
|
||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
//
|
//
|
||||||
// InstructionCombining - Combine instructions to form fewer, simple
|
// InstructionCombining - Combine instructions to form fewer, simple
|
||||||
// instructions. This pass does not modify the CFG, and has a tendency to
|
// instructions. This pass does not modify the CFG, and has a tendency to make
|
||||||
// make instructions dead, so a subsequent DCE pass is useful.
|
// instructions dead, so a subsequent DCE pass is useful.
|
||||||
//
|
//
|
||||||
// This pass combines things like:
|
// This pass combines things like:
|
||||||
// %Y = add int 1, %X
|
// %Y = add int 1, %X
|
||||||
@ -122,7 +115,6 @@ FunctionPass *createIndVarSimplifyPass();
|
|||||||
//
|
//
|
||||||
FunctionPass *createInstructionCombiningPass();
|
FunctionPass *createInstructionCombiningPass();
|
||||||
|
|
||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
//
|
//
|
||||||
// LICM - This pass is a loop invariant code motion and memory promotion pass.
|
// LICM - This pass is a loop invariant code motion and memory promotion pass.
|
||||||
@ -144,7 +136,6 @@ FunctionPass *createLoopStrengthReducePass(const TargetLowering *TLI = NULL);
|
|||||||
//
|
//
|
||||||
FunctionPass *createLoopUnswitchPass();
|
FunctionPass *createLoopUnswitchPass();
|
||||||
|
|
||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
//
|
//
|
||||||
// LoopUnroll - This pass is a simple loop unrolling pass.
|
// LoopUnroll - This pass is a simple loop unrolling pass.
|
||||||
@ -153,8 +144,9 @@ FunctionPass *createLoopUnrollPass();
|
|||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
//
|
//
|
||||||
// This pass is used to promote memory references to be register references. A
|
// PromoteMemoryToRegister - This pass is used to promote memory references to
|
||||||
// simple example of the transformation performed by this pass is:
|
// be register references. A simple example of the transformation performed by
|
||||||
|
// this pass is:
|
||||||
//
|
//
|
||||||
// FROM CODE TO CODE
|
// FROM CODE TO CODE
|
||||||
// %X = alloca int, uint 1 ret int 42
|
// %X = alloca int, uint 1 ret int 42
|
||||||
@ -167,16 +159,17 @@ extern const PassInfo *PromoteMemoryToRegisterID;
|
|||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
//
|
//
|
||||||
// This pass is used to demote registers to memory references .
|
// DemoteRegisterToMemoryPass - This pass is used to demote registers to memory
|
||||||
// In basically undoes the PromoteMemoryToRegister pass to
|
// references. In basically undoes the PromoteMemoryToRegister pass to make cfg
|
||||||
// make cfg hacking easier.
|
// hacking easier.
|
||||||
|
//
|
||||||
FunctionPass *createDemoteRegisterToMemoryPass();
|
FunctionPass *createDemoteRegisterToMemoryPass();
|
||||||
extern const PassInfo *DemoteRegisterToMemoryID;
|
extern const PassInfo *DemoteRegisterToMemoryID;
|
||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
//
|
//
|
||||||
// This pass reassociates commutative expressions in an order that is designed
|
// Reassociate - This pass reassociates commutative expressions in an order that
|
||||||
// to promote better constant propagation, GCSE, LICM, PRE...
|
// is designed to promote better constant propagation, GCSE, LICM, PRE...
|
||||||
//
|
//
|
||||||
// For example: 4 + (x + 5) -> x + (4 + 5)
|
// For example: 4 + (x + 5) -> x + (4 + 5)
|
||||||
//
|
//
|
||||||
@ -184,7 +177,8 @@ FunctionPass *createReassociatePass();
|
|||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
//
|
//
|
||||||
// This pass eliminates correlated conditions, such as these:
|
// CorrelatedExpressionElimination - This pass eliminates correlated
|
||||||
|
// conditions, such as these:
|
||||||
// if (X == 0)
|
// if (X == 0)
|
||||||
// if (X > 2) ; // Known false
|
// if (X > 2) ; // Known false
|
||||||
// else
|
// else
|
||||||
@ -192,10 +186,11 @@ FunctionPass *createReassociatePass();
|
|||||||
//
|
//
|
||||||
FunctionPass *createCorrelatedExpressionEliminationPass();
|
FunctionPass *createCorrelatedExpressionEliminationPass();
|
||||||
|
|
||||||
|
//===----------------------------------------------------------------------===//
|
||||||
// createCondPropagationPass - This pass propagates information about
|
//
|
||||||
// conditional expressions through the program, allowing it to eliminate
|
// CondPropagationPass - This pass propagates information about conditional
|
||||||
// conditional branches in some cases.
|
// expressions through the program, allowing it to eliminate conditional
|
||||||
|
// branches in some cases.
|
||||||
//
|
//
|
||||||
FunctionPass *createCondPropagationPass();
|
FunctionPass *createCondPropagationPass();
|
||||||
|
|
||||||
@ -206,7 +201,6 @@ FunctionPass *createCondPropagationPass();
|
|||||||
//
|
//
|
||||||
FunctionPass *createTailDuplicationPass();
|
FunctionPass *createTailDuplicationPass();
|
||||||
|
|
||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
//
|
//
|
||||||
// CFGSimplification - Merge basic blocks, eliminate unreachable blocks,
|
// CFGSimplification - Merge basic blocks, eliminate unreachable blocks,
|
||||||
@ -214,12 +208,11 @@ FunctionPass *createTailDuplicationPass();
|
|||||||
//
|
//
|
||||||
FunctionPass *createCFGSimplificationPass();
|
FunctionPass *createCFGSimplificationPass();
|
||||||
|
|
||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
//
|
//
|
||||||
// BreakCriticalEdges pass - Break all of the critical edges in the CFG by
|
// BreakCriticalEdges - Break all of the critical edges in the CFG by inserting
|
||||||
// inserting a dummy basic block. This pass may be "required" by passes that
|
// a dummy basic block. This pass may be "required" by passes that cannot deal
|
||||||
// cannot deal with critical edges. For this usage, a pass must call:
|
// with critical edges. For this usage, a pass must call:
|
||||||
//
|
//
|
||||||
// AU.addRequiredID(BreakCriticalEdgesID);
|
// AU.addRequiredID(BreakCriticalEdgesID);
|
||||||
//
|
//
|
||||||
@ -231,9 +224,9 @@ extern const PassInfo *BreakCriticalEdgesID;
|
|||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
//
|
//
|
||||||
// LoopSimplify pass - Insert Pre-header blocks into the CFG for every function
|
// LoopSimplify - Insert Pre-header blocks into the CFG for every function in
|
||||||
// in the module. This pass updates dominator information, loop information,
|
// the module. This pass updates dominator information, loop information, and
|
||||||
// and does not add critical edges to the CFG.
|
// does not add critical edges to the CFG.
|
||||||
//
|
//
|
||||||
// AU.addRequiredID(LoopSimplifyID);
|
// AU.addRequiredID(LoopSimplifyID);
|
||||||
//
|
//
|
||||||
@ -241,17 +234,18 @@ FunctionPass *createLoopSimplifyPass();
|
|||||||
extern const PassInfo *LoopSimplifyID;
|
extern const PassInfo *LoopSimplifyID;
|
||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
// This pass converts SelectInst instructions into conditional branch and PHI
|
//
|
||||||
// instructions. If the OnlyFP flag is set to true, then only floating point
|
// LowerSelect - This pass converts SelectInst instructions into conditional
|
||||||
// select instructions are lowered.
|
// branch and PHI instructions. If the OnlyFP flag is set to true, then only
|
||||||
|
// floating point select instructions are lowered.
|
||||||
//
|
//
|
||||||
FunctionPass *createLowerSelectPass(bool OnlyFP = false);
|
FunctionPass *createLowerSelectPass(bool OnlyFP = false);
|
||||||
extern const PassInfo *LowerSelectID;
|
extern const PassInfo *LowerSelectID;
|
||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
//
|
//
|
||||||
// LowerAllocations Pass - Turn malloc and free instructions into %malloc and
|
// LowerAllocations - Turn malloc and free instructions into %malloc and %free
|
||||||
// %free calls.
|
// calls.
|
||||||
//
|
//
|
||||||
// AU.addRequiredID(LowerAllocationsID);
|
// AU.addRequiredID(LowerAllocationsID);
|
||||||
//
|
//
|
||||||
@ -260,56 +254,66 @@ extern const PassInfo *LowerAllocationsID;
|
|||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
//
|
//
|
||||||
// This pass eliminates call instructions to the current function which occur
|
// TailCallElimination - This pass eliminates call instructions to the current
|
||||||
// immediately before return instructions.
|
// function which occur immediately before return instructions.
|
||||||
//
|
//
|
||||||
FunctionPass *createTailCallEliminationPass();
|
FunctionPass *createTailCallEliminationPass();
|
||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
// This pass converts SwitchInst instructions into a sequence of chained binary
|
//
|
||||||
// branch instructions.
|
// LowerSwitch - This pass converts SwitchInst instructions into a sequence of
|
||||||
|
// chained binary branch instructions.
|
||||||
//
|
//
|
||||||
FunctionPass *createLowerSwitchPass();
|
FunctionPass *createLowerSwitchPass();
|
||||||
extern const PassInfo *LowerSwitchID;
|
extern const PassInfo *LowerSwitchID;
|
||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
// This pass converts PackedType operations into low-level scalar operations.
|
//
|
||||||
|
// LowerPacked - This pass converts PackedType operations into low-level scalar
|
||||||
|
// operations.
|
||||||
//
|
//
|
||||||
FunctionPass *createLowerPackedPass();
|
FunctionPass *createLowerPackedPass();
|
||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
// This pass converts invoke and unwind instructions to use sjlj exception
|
//
|
||||||
// handling mechanisms. Note that after this pass runs the CFG is not entirely
|
// LowerInvoke - This pass converts invoke and unwind instructions to use sjlj
|
||||||
// accurate (exceptional control flow edges are not correct anymore) so only
|
// exception handling mechanisms. Note that after this pass runs the CFG is not
|
||||||
// very simple things should be done after the lowerinvoke pass has run (like
|
// entirely accurate (exceptional control flow edges are not correct anymore) so
|
||||||
// generation of native code). This should *NOT* be used as a general purpose
|
// only very simple things should be done after the lowerinvoke pass has run
|
||||||
// "my LLVM-to-LLVM pass doesn't support the invoke instruction yet" lowering
|
// (like generation of native code). This should *NOT* be used as a general
|
||||||
// pass.
|
// purpose "my LLVM-to-LLVM pass doesn't support the invoke instruction yet"
|
||||||
|
// lowering pass.
|
||||||
//
|
//
|
||||||
FunctionPass *createLowerInvokePass(const TargetLowering *TLI = NULL);
|
FunctionPass *createLowerInvokePass(const TargetLowering *TLI = NULL);
|
||||||
extern const PassInfo *LowerInvokePassID;
|
extern const PassInfo *LowerInvokePassID;
|
||||||
|
|
||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
/// createLowerGCPass - This function returns an instance of the "lowergc"
|
//
|
||||||
/// pass, which lowers garbage collection intrinsics to normal LLVM code.
|
// LowerGCPass - This function returns an instance of the "lowergc" pass, which
|
||||||
///
|
// lowers garbage collection intrinsics to normal LLVM code.
|
||||||
|
//
|
||||||
FunctionPass *createLowerGCPass();
|
FunctionPass *createLowerGCPass();
|
||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
// This pass reorders basic blocks in order to increase the number of fall-
|
//
|
||||||
// through conditional branches.
|
// BlockPlacement - This pass reorders basic blocks in order to increase the
|
||||||
|
// number of fall-through conditional branches.
|
||||||
|
//
|
||||||
FunctionPass *createBlockPlacementPass();
|
FunctionPass *createBlockPlacementPass();
|
||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
// This pass inserts phi nodes at loop boundaries to simplify other loop
|
//
|
||||||
|
// LCSSA - This pass inserts phi nodes at loop boundaries to simplify other loop
|
||||||
// optimizations.
|
// optimizations.
|
||||||
|
//
|
||||||
FunctionPass *createLCSSAPass();
|
FunctionPass *createLCSSAPass();
|
||||||
extern const PassInfo *LCSSAID;
|
extern const PassInfo *LCSSAID;
|
||||||
|
|
||||||
//===----------------------------------------------------------------------===//
|
//===----------------------------------------------------------------------===//
|
||||||
// This pass collapses duplicate variables into one canonical form,
|
//
|
||||||
// and tries to simplify expressions along the way.
|
// PredicateSimplifier - This pass collapses duplicate variables into one
|
||||||
|
// canonical form, and tries to simplify expressions along the way.
|
||||||
|
//
|
||||||
FunctionPass *createPredicateSimplifierPass();
|
FunctionPass *createPredicateSimplifierPass();
|
||||||
|
|
||||||
} // End llvm namespace
|
} // End llvm namespace
|
||||||
|
Loading…
x
Reference in New Issue
Block a user