[PATCH] D15736: AMDGPU/SI: Select non-uniform constant addrspace loads to flat instructions for HSA

Tom Stellard via llvm-commits llvm-commits at lists.llvm.org
Wed Dec 23 15:03:27 PST 2015


tstellarAMD added inline comments.

================
Comment at: lib/Target/AMDGPU/AMDGPUInstructions.td:391
@@ -390,3 +388,1 @@
-}]>;
-
 def flat_store : PatFrag<(ops node:$val, node:$ptr),
----------------
The new definition will match loads in the global and constant address space.  The previous definition only matched loads in the flat ("generic" in OpenCL) address space.

================
Comment at: lib/Target/AMDGPU/CIInstructions.td:265
@@ -266,1 +264,3 @@
+def : FlatLoadPat <FLAT_LOAD_DWORDX2, flat_load, v2i32>;
+def : FlatLoadPat <FLAT_LOAD_DWORDX4, flat_load, v4i32>;
 
----------------
Those patterns are redundant now.  I will remove them.

================
Comment at: lib/Target/AMDGPU/SIInstrInfo.td:149
@@ +148,3 @@
+         isFlatLoad(dyn_cast<LoadSDNode>(N));
+}]>;
+
----------------
These functions only look at the the address space of the load instruction.  FlatForGlobal has no effect on them.


http://reviews.llvm.org/D15736





More information about the llvm-commits mailing list