Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(125)

Side by Side Diff: include/llvm/Transforms/NaCl.h

Issue 15688011: PNaCl: Extend ExpandMulWithOverflow pass to handle uadd.with.overflow too (Closed) Base URL: http://git.chromium.org/native_client/pnacl-llvm.git@master
Patch Set: Rebase Created 7 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « include/llvm/InitializePasses.h ('k') | lib/Transforms/NaCl/CMakeLists.txt » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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
OLDNEW
« no previous file with comments | « include/llvm/InitializePasses.h ('k') | lib/Transforms/NaCl/CMakeLists.txt » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698