From 3802c2552fe4475418db3c948e7601d7259f996d Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Sun, 11 Dec 2005 09:05:13 +0000 Subject: [PATCH] Minor tweak to get isel opt git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24663 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp b/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp index 23a9954aca2..0630fd37ef0 100644 --- a/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp +++ b/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp @@ -1324,7 +1324,8 @@ static void OptimizeGEPExpression(GetElementPtrInst *GEPI, break; } } - if (!hasConstantIndex) return; + // If this is a GEP &Alloca, 0, 0, forward subst the frame index into uses. + if (!hasConstantIndex && !isa(GEPI->getOperand(0))) return; // Otherwise, decompose the GEP instruction into multiplies and adds. Sum the // constant offset (which we now know is non-zero) and deal with it later.