diff options
Diffstat (limited to 'include/llvm/Transforms/Utils/Local.h')
-rw-r--r-- | include/llvm/Transforms/Utils/Local.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/include/llvm/Transforms/Utils/Local.h b/include/llvm/Transforms/Utils/Local.h index 2cf47e622a..6c8153ddf0 100644 --- a/include/llvm/Transforms/Utils/Local.h +++ b/include/llvm/Transforms/Utils/Local.h @@ -22,6 +22,7 @@ namespace llvm { class Pass; class PHINode; class AllocaInst; +class ConstantExpr; //===----------------------------------------------------------------------===// // Local constant propagation... @@ -55,6 +56,10 @@ bool canConstantFoldCallTo(Function *F); /// with the specified arguments, returning null if unsuccessful. Constant *ConstantFoldCall(Function *F, const std::vector<Constant*> &Operands); +/// ConstantFoldLoadThroughGEPConstantExpr - Given a constant and a +/// getelementptr constantexpr, return the constant value being addressed by the +/// constant expression, or null if something is funny and we can't decide. +Constant *ConstantFoldLoadThroughGEPConstantExpr(Constant *C, ConstantExpr *CE); //===----------------------------------------------------------------------===// // Local dead code elimination... |