diff options
| author | Devang Patel <dpatel@apple.com> | 2006-12-04 23:54:59 +0000 |
|---|---|---|
| committer | Devang Patel <dpatel@apple.com> | 2006-12-04 23:54:59 +0000 |
| commit | 21efc73161ea59756f2dcd0ca5976209f7cc9dac (patch) | |
| tree | ba826a797f8344e7952450f522ff8bee927adefe /llvm/lib/Transforms/Scalar | |
| parent | b2ddc043219cf12968a4e4a86584513531312d3a (diff) | |
| download | bcm5719-llvm-21efc73161ea59756f2dcd0ca5976209f7cc9dac.tar.gz bcm5719-llvm-21efc73161ea59756f2dcd0ca5976209f7cc9dac.zip | |
SCCP does not handle Packed Type properly. Disable Packed Type handling
for now.
llvm-svn: 32208
Diffstat (limited to 'llvm/lib/Transforms/Scalar')
| -rw-r--r-- | llvm/lib/Transforms/Scalar/SCCP.cpp | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/llvm/lib/Transforms/Scalar/SCCP.cpp b/llvm/lib/Transforms/Scalar/SCCP.cpp index b0c25feae8f..cf91b57689a 100644 --- a/llvm/lib/Transforms/Scalar/SCCP.cpp +++ b/llvm/lib/Transforms/Scalar/SCCP.cpp @@ -749,6 +749,11 @@ void SCCPSolver::visitBinaryOperator(Instruction &I) { } void SCCPSolver::visitExtractElementInst(ExtractElementInst &I) { + // FIXME : SCCP does not handle vectors properly. + markOverdefined(&I); + return; + +#if 0 LatticeVal &ValState = getValueState(I.getOperand(0)); LatticeVal &IdxState = getValueState(I.getOperand(1)); @@ -757,9 +762,14 @@ void SCCPSolver::visitExtractElementInst(ExtractElementInst &I) { else if(ValState.isConstant() && IdxState.isConstant()) markConstant(&I, ConstantExpr::getExtractElement(ValState.getConstant(), IdxState.getConstant())); +#endif } void SCCPSolver::visitInsertElementInst(InsertElementInst &I) { + // FIXME : SCCP does not handle vectors properly. + markOverdefined(&I); + return; +#if 0 LatticeVal &ValState = getValueState(I.getOperand(0)); LatticeVal &EltState = getValueState(I.getOperand(1)); LatticeVal &IdxState = getValueState(I.getOperand(2)); @@ -773,13 +783,18 @@ void SCCPSolver::visitInsertElementInst(InsertElementInst &I) { EltState.getConstant(), IdxState.getConstant())); else if (ValState.isUndefined() && EltState.isConstant() && - IdxState.isConstant()) + IdxState.isConstant()) markConstant(&I, ConstantExpr::getInsertElement(UndefValue::get(I.getType()), EltState.getConstant(), IdxState.getConstant())); +#endif } void SCCPSolver::visitShuffleVectorInst(ShuffleVectorInst &I) { + // FIXME : SCCP does not handle vectors properly. + markOverdefined(&I); + return; +#if 0 LatticeVal &V1State = getValueState(I.getOperand(0)); LatticeVal &V2State = getValueState(I.getOperand(1)); LatticeVal &MaskState = getValueState(I.getOperand(2)); @@ -801,6 +816,7 @@ void SCCPSolver::visitShuffleVectorInst(ShuffleVectorInst &I) { MaskState.getConstant() : UndefValue::get(I.getOperand(2)->getType()); markConstant(&I, ConstantExpr::getShuffleVector(V1, V2, Mask)); } +#endif } // Handle getelementptr instructions... if all operands are constants then we |

