OLD | NEW |
1 //===-- NaCl.h - NaCl Transformations ---------------------------*- C++ -*-===// | 1 //===-- NaCl.h - NaCl Transformations ---------------------------*- C++ -*-===// |
2 // | 2 // |
3 // The LLVM Compiler Infrastructure | 3 // The LLVM Compiler Infrastructure |
4 // | 4 // |
5 // This file is distributed under the University of Illinois Open Source | 5 // This file is distributed under the University of Illinois Open Source |
6 // License. See LICENSE.TXT for details. | 6 // License. See LICENSE.TXT for details. |
7 // | 7 // |
8 //===----------------------------------------------------------------------===// | 8 //===----------------------------------------------------------------------===// |
9 | 9 |
10 #ifndef LLVM_TRANSFORMS_NACL_H | 10 #ifndef LLVM_TRANSFORMS_NACL_H |
(...skipping 16 matching lines...) Expand all Loading... |
27 ModulePass *createExpandByValPass(); | 27 ModulePass *createExpandByValPass(); |
28 FunctionPass *createExpandConstantExprPass(); | 28 FunctionPass *createExpandConstantExprPass(); |
29 ModulePass *createExpandCtorsPass(); | 29 ModulePass *createExpandCtorsPass(); |
30 BasicBlockPass *createExpandGetElementPtrPass(); | 30 BasicBlockPass *createExpandGetElementPtrPass(); |
31 ModulePass *createExpandSmallArgumentsPass(); | 31 ModulePass *createExpandSmallArgumentsPass(); |
32 FunctionPass *createExpandStructRegsPass(); | 32 FunctionPass *createExpandStructRegsPass(); |
33 ModulePass *createExpandTlsPass(); | 33 ModulePass *createExpandTlsPass(); |
34 ModulePass *createExpandTlsConstantExprPass(); | 34 ModulePass *createExpandTlsConstantExprPass(); |
35 ModulePass *createExpandVarArgsPass(); | 35 ModulePass *createExpandVarArgsPass(); |
36 ModulePass *createFlattenGlobalsPass(); | 36 ModulePass *createFlattenGlobalsPass(); |
| 37 ModulePass *createFreezeAtomicsPass(); |
37 ModulePass *createGlobalCleanupPass(); | 38 ModulePass *createGlobalCleanupPass(); |
| 39 FunctionPass *createInsertDivideCheckPass(); |
38 FunctionPass *createPromoteIntegersPass(); | 40 FunctionPass *createPromoteIntegersPass(); |
39 ModulePass *createReplacePtrsWithIntsPass(); | 41 ModulePass *createReplacePtrsWithIntsPass(); |
40 ModulePass *createResolveAliasesPass(); | 42 ModulePass *createResolveAliasesPass(); |
41 FunctionPass *createResolvePNaClIntrinsicsPass(); | 43 FunctionPass *createResolvePNaClIntrinsicsPass(); |
42 ModulePass *createRewriteLLVMIntrinsicsPass(); | 44 ModulePass *createRewriteLLVMIntrinsicsPass(); |
43 ModulePass *createRewritePNaClLibraryCallsPass(); | 45 ModulePass *createRewritePNaClLibraryCallsPass(); |
44 ModulePass *createStripAttributesPass(); | 46 ModulePass *createStripAttributesPass(); |
45 ModulePass *createStripMetadataPass(); | 47 ModulePass *createStripMetadataPass(); |
46 FunctionPass *createInsertDivideCheckPass(); | |
47 | 48 |
48 void PNaClABISimplifyAddPreOptPasses(PassManager &PM); | 49 void PNaClABISimplifyAddPreOptPasses(PassManager &PM); |
49 void PNaClABISimplifyAddPostOptPasses(PassManager &PM); | 50 void PNaClABISimplifyAddPostOptPasses(PassManager &PM); |
50 | 51 |
51 Instruction *PhiSafeInsertPt(Use *U); | 52 Instruction *PhiSafeInsertPt(Use *U); |
52 void PhiSafeReplaceUses(Use *U, Value *NewVal); | 53 void PhiSafeReplaceUses(Use *U, Value *NewVal); |
53 | 54 |
54 // Copy debug information from Original to NewInst, and return NewInst. | 55 // Copy debug information from Original to NewInst, and return NewInst. |
55 Instruction *CopyDebug(Instruction *NewInst, Instruction *Original); | 56 Instruction *CopyDebug(Instruction *NewInst, Instruction *Original); |
56 | 57 |
57 // In order to change a function's type, the function must be | 58 // In order to change a function's type, the function must be |
58 // recreated. RecreateFunction() recreates Func with type NewType. | 59 // recreated. RecreateFunction() recreates Func with type NewType. |
59 // It copies or moves across everything except the argument values, | 60 // It copies or moves across everything except the argument values, |
60 // which the caller must update because the argument types might be | 61 // which the caller must update because the argument types might be |
61 // different. | 62 // different. |
62 Function *RecreateFunction(Function *Func, FunctionType *NewType); | 63 Function *RecreateFunction(Function *Func, FunctionType *NewType); |
63 | 64 |
64 } | 65 } |
65 | 66 |
66 #endif | 67 #endif |
OLD | NEW |