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