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 |
11 #define LLVM_TRANSFORMS_NACL_H | 11 #define LLVM_TRANSFORMS_NACL_H |
12 | 12 |
13 namespace llvm { | 13 namespace llvm { |
14 | 14 |
15 class BasicBlockPass; | 15 class BasicBlockPass; |
16 class FunctionPass; | 16 class FunctionPass; |
17 class Instruction; | 17 class Instruction; |
18 class ModulePass; | 18 class ModulePass; |
19 class PassManager; | 19 class PassManager; |
20 class Use; | 20 class Use; |
21 class Value; | 21 class Value; |
22 | 22 |
23 ModulePass *createAddPNaClExternalDeclsPass(); | 23 ModulePass *createAddPNaClExternalDeclsPass(); |
| 24 ModulePass *createExpandArithWithOverflowPass(); |
24 ModulePass *createExpandByValPass(); | 25 ModulePass *createExpandByValPass(); |
25 FunctionPass *createExpandConstantExprPass(); | 26 FunctionPass *createExpandConstantExprPass(); |
26 ModulePass *createExpandCtorsPass(); | 27 ModulePass *createExpandCtorsPass(); |
27 BasicBlockPass *createExpandGetElementPtrPass(); | 28 BasicBlockPass *createExpandGetElementPtrPass(); |
28 ModulePass *createExpandMulWithOverflowPass(); | |
29 ModulePass *createExpandTlsPass(); | 29 ModulePass *createExpandTlsPass(); |
30 ModulePass *createExpandTlsConstantExprPass(); | 30 ModulePass *createExpandTlsConstantExprPass(); |
31 ModulePass *createExpandVarArgsPass(); | 31 ModulePass *createExpandVarArgsPass(); |
32 ModulePass *createFlattenGlobalsPass(); | 32 ModulePass *createFlattenGlobalsPass(); |
33 ModulePass *createGlobalCleanupPass(); | 33 ModulePass *createGlobalCleanupPass(); |
34 FunctionPass *createPromoteIntegersPass(); | 34 FunctionPass *createPromoteIntegersPass(); |
35 ModulePass *createReplacePtrsWithIntsPass(); | 35 ModulePass *createReplacePtrsWithIntsPass(); |
36 ModulePass *createResolveAliasesPass(); | 36 ModulePass *createResolveAliasesPass(); |
37 FunctionPass *createResolvePNaClIntrinsicsPass(); | 37 FunctionPass *createResolvePNaClIntrinsicsPass(); |
38 ModulePass *createRewritePNaClLibraryCallsPass(); | 38 ModulePass *createRewritePNaClLibraryCallsPass(); |
39 ModulePass *createStripMetadataPass(); | 39 ModulePass *createStripMetadataPass(); |
40 FunctionPass *createInsertDivideCheckPass(); | 40 FunctionPass *createInsertDivideCheckPass(); |
41 | 41 |
42 void PNaClABISimplifyAddPreOptPasses(PassManager &PM); | 42 void PNaClABISimplifyAddPreOptPasses(PassManager &PM); |
43 void PNaClABISimplifyAddPostOptPasses(PassManager &PM); | 43 void PNaClABISimplifyAddPostOptPasses(PassManager &PM); |
44 | 44 |
45 Instruction *PhiSafeInsertPt(Use *U); | 45 Instruction *PhiSafeInsertPt(Use *U); |
46 void PhiSafeReplaceUses(Use *U, Value *NewVal); | 46 void PhiSafeReplaceUses(Use *U, Value *NewVal); |
47 | 47 |
48 // Copy debug information from Original to NewInst, and return NewInst. | 48 // Copy debug information from Original to NewInst, and return NewInst. |
49 Instruction *CopyDebug(Instruction *NewInst, Instruction *Original); | 49 Instruction *CopyDebug(Instruction *NewInst, Instruction *Original); |
50 | 50 |
51 } | 51 } |
52 | 52 |
53 #endif | 53 #endif |
OLD | NEW |