From: Vadim Girlin Date: Tue, 15 May 2012 14:47:38 +0000 (+0400) Subject: radeon/llvm: fix BUILD_VECTOR lowering for replicated value X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=76e4898ba3c67082524786a0e0c67557a8abc58b;p=mesa.git radeon/llvm: fix BUILD_VECTOR lowering for replicated value We expect that all elements will be assigned even if they are equal Signed-off-by: Vadim Girlin Reviewed-by: Tom Stellard --- diff --git a/src/gallium/drivers/radeon/AMDILISelLowering.cpp b/src/gallium/drivers/radeon/AMDILISelLowering.cpp index 19b12fcf72b..570927df974 100644 --- a/src/gallium/drivers/radeon/AMDILISelLowering.cpp +++ b/src/gallium/drivers/radeon/AMDILISelLowering.cpp @@ -3894,6 +3894,7 @@ AMDILTargetLowering::LowerBUILD_VECTOR( SDValue Op, SelectionDAG &DAG ) const Nodes1 = DAG.getNode(AMDILISD::VBUILD, DL, VT, Op.getOperand(0)); +#if 0 bool allEqual = true; for (unsigned x = 1, y = Op.getNumOperands(); x < y; ++x) { if (Op.getOperand(0) != Op.getOperand(x)) { @@ -3904,6 +3905,7 @@ AMDILTargetLowering::LowerBUILD_VECTOR( SDValue Op, SelectionDAG &DAG ) const if (allEqual) { return Nodes1; } +#endif switch(Op.getNumOperands()) { default: case 1: