radeon/llvm: Enable floating point stores on R600
authorTom Stellard <thomas.stellard@amd.com>
Thu, 28 Jun 2012 20:27:32 +0000 (20:27 +0000)
committerTom Stellard <thomas.stellard@amd.com>
Fri, 29 Jun 2012 18:46:18 +0000 (18:46 +0000)
src/gallium/drivers/radeon/R600Instructions.td

index d42e74cfae271f259e62666dc4c6d566a6deb8c5..fa52f32001d53cd54194ce9a95125edbea2fc447 100644 (file)
@@ -922,6 +922,12 @@ def RAT_WRITE_CACHELESS_eg : EG_CF_RAT <0x57, 0x2, 0, (outs),
 
 } // End usesCustomInserter = 1
 
+// Floating point global_store
+def : Pat <
+  (global_store (f32 R600_TReg32_X:$val), R600_TReg32_X:$ptr),
+  (RAT_WRITE_CACHELESS_eg R600_TReg32_X:$val, R600_TReg32_X:$ptr)
+>;
+
 class VTX_READ_eg <bits<8> buffer_id, dag outs, list<dag> pattern>
     : InstR600ISA <outs, (ins MEMxi:$ptr), "VTX_READ_eg $dst, $ptr", pattern> {