summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/radeon/AMDGPUISelLowering.cpp
diff options
context:
space:
mode:
authorTom Stellard <[email protected]>2012-06-28 20:27:55 +0000
committerTom Stellard <[email protected]>2012-06-29 18:46:18 +0000
commita31b2f71076b9d3fe9bc5f2bae3228f1e7b99ee2 (patch)
treea1eda2beecba9682d5c9a8815ce504f13dd9c046 /src/gallium/drivers/radeon/AMDGPUISelLowering.cpp
parente17c586d08aee5bbaad6ac5efd2d30fe1d179406 (diff)
radeon/llvm: Enable vec4 loads on R600
Diffstat (limited to 'src/gallium/drivers/radeon/AMDGPUISelLowering.cpp')
-rw-r--r--src/gallium/drivers/radeon/AMDGPUISelLowering.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/gallium/drivers/radeon/AMDGPUISelLowering.cpp b/src/gallium/drivers/radeon/AMDGPUISelLowering.cpp
index f14900450ae..ef5715fd5f0 100644
--- a/src/gallium/drivers/radeon/AMDGPUISelLowering.cpp
+++ b/src/gallium/drivers/radeon/AMDGPUISelLowering.cpp
@@ -34,6 +34,7 @@ AMDGPUTargetLowering::AMDGPUTargetLowering(TargetMachine &TM) :
setOperationAction(ISD::FRINT, MVT::f32, Legal);
setOperationAction(ISD::LOAD, MVT::f32, Custom);
+ setOperationAction(ISD::LOAD, MVT::v4f32, Custom);
setOperationAction(ISD::UDIV, MVT::i32, Expand);
setOperationAction(ISD::UDIVREM, MVT::i32, Custom);
@@ -139,6 +140,8 @@ SDValue AMDGPUTargetLowering::BitcastLOAD(SDValue Op, SelectionDAG &DAG) const
if (VT == MVT::f32) {
IntVT = MVT::i32;
+ } else if (VT == MVT::v4f32) {
+ IntVT = MVT::v4i32;
} else {
return Op;
}