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 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
62 ModulePass *createResolveAliasesPass(); | 62 ModulePass *createResolveAliasesPass(); |
63 ModulePass *createRewriteAtomicsPass(); | 63 ModulePass *createRewriteAtomicsPass(); |
64 ModulePass *createRewriteLLVMIntrinsicsPass(); | 64 ModulePass *createRewriteLLVMIntrinsicsPass(); |
65 ModulePass *createRewritePNaClLibraryCallsPass(); | 65 ModulePass *createRewritePNaClLibraryCallsPass(); |
66 ModulePass *createSimplifyStructRegSignaturesPass(); | 66 ModulePass *createSimplifyStructRegSignaturesPass(); |
67 ModulePass *createStripAttributesPass(); | 67 ModulePass *createStripAttributesPass(); |
68 ModulePass *createStripMetadataPass(); | 68 ModulePass *createStripMetadataPass(); |
69 ModulePass *createStripModuleFlagsPass(); | 69 ModulePass *createStripModuleFlagsPass(); |
70 ModulePass *createStripDanglingDISubprogramsPass(); | 70 ModulePass *createStripDanglingDISubprogramsPass(); |
71 | 71 |
72 // Emscripten passes: | |
73 FunctionPass *createExpandInsertExtractElementPass(); | |
74 ModulePass *createExpandI64Pass(); | |
75 ModulePass *createLowerEmAsyncifyPass(); | |
76 ModulePass *createLowerEmExceptionsPass(); | |
77 ModulePass *createLowerEmSetjmpPass(); | |
78 ModulePass *createNoExitRuntimePass(); | |
79 // Emscripten passes end. | |
80 | |
81 void PNaClABISimplifyAddPreOptPasses(Triple *T, PassManagerBase &PM); | 72 void PNaClABISimplifyAddPreOptPasses(Triple *T, PassManagerBase &PM); |
82 void PNaClABISimplifyAddPostOptPasses(Triple *T, PassManagerBase &PM); | 73 void PNaClABISimplifyAddPostOptPasses(Triple *T, PassManagerBase &PM); |
83 | 74 |
84 Instruction *PhiSafeInsertPt(Use *U); | 75 Instruction *PhiSafeInsertPt(Use *U); |
85 void PhiSafeReplaceUses(Use *U, Value *NewVal); | 76 void PhiSafeReplaceUses(Use *U, Value *NewVal); |
86 | 77 |
87 // Copy debug information from Original to New, and return New. | 78 // Copy debug information from Original to New, and return New. |
88 template <typename T> T *CopyDebug(T *New, Instruction *Original) { | 79 template <typename T> T *CopyDebug(T *New, Instruction *Original) { |
89 New->setDebugLoc(Original->getDebugLoc()); | 80 New->setDebugLoc(Original->getDebugLoc()); |
90 return New; | 81 return New; |
(...skipping 10 matching lines...) Expand all Loading... |
101 // In order to change a function's type, the function must be | 92 // In order to change a function's type, the function must be |
102 // recreated. RecreateFunction() recreates Func with type NewType. | 93 // recreated. RecreateFunction() recreates Func with type NewType. |
103 // It copies or moves across everything except the argument values, | 94 // It copies or moves across everything except the argument values, |
104 // which the caller must update because the argument types might be | 95 // which the caller must update because the argument types might be |
105 // different. | 96 // different. |
106 Function *RecreateFunction(Function *Func, FunctionType *NewType); | 97 Function *RecreateFunction(Function *Func, FunctionType *NewType); |
107 | 98 |
108 } | 99 } |
109 | 100 |
110 #endif | 101 #endif |
OLD | NEW |