summaryrefslogtreecommitdiffstats
path: root/llvm/include
diff options
context:
space:
mode:
authorMatt Arsenault <Matthew.Arsenault@amd.com>2015-09-24 19:52:21 +0000
committerMatt Arsenault <Matthew.Arsenault@amd.com>2015-09-24 19:52:21 +0000
commitd6adfb401c5e9f7ec111866491ab3223d002a657 (patch)
tree83c1afca31b791869f6e155ff30fac5361bba0e7 /llvm/include
parentc116767fecbaaea524ece01fe7cf59808db82c10 (diff)
downloadbcm5719-llvm-d6adfb401c5e9f7ec111866491ab3223d002a657.tar.gz
bcm5719-llvm-d6adfb401c5e9f7ec111866491ab3223d002a657.zip
AMDGPU: Add cache invalidation instructions.
These are necessary for implementing mem_fence for OpenCL 2.0. The VI assembler tests are disabled since it seems to be using the wrong encoding or opcode. llvm-svn: 248532
Diffstat (limited to 'llvm/include')
-rw-r--r--llvm/include/llvm/IR/IntrinsicsAMDGPU.td18
1 files changed, 18 insertions, 0 deletions
diff --git a/llvm/include/llvm/IR/IntrinsicsAMDGPU.td b/llvm/include/llvm/IR/IntrinsicsAMDGPU.td
index 510e5ad2d9b..c197a663001 100644
--- a/llvm/include/llvm/IR/IntrinsicsAMDGPU.td
+++ b/llvm/include/llvm/IR/IntrinsicsAMDGPU.td
@@ -83,3 +83,21 @@ def int_AMDGPU_read_workdim : AMDGPUReadPreloadRegisterIntrinsic <
"__builtin_amdgpu_read_workdim">;
} // End TargetPrefix = "AMDGPU"
+
+let TargetPrefix = "amdgcn" in {
+
+// SI only
+def int_amdgcn_buffer_wbinvl1_sc :
+ GCCBuiltin<"__builtin_amdgcn_buffer_wbinvl1_sc">,
+ Intrinsic<[], [], []>;
+
+// On CI+
+def int_amdgcn_buffer_wbinvl1_vol :
+ GCCBuiltin<"__builtin_amdgcn_buffer_wbinvl1_vol">,
+ Intrinsic<[], [], []>;
+
+def int_amdgcn_buffer_wbinvl1 :
+ GCCBuiltin<"__builtin_amdgcn_buffer_wbinvl1">,
+ Intrinsic<[], [], []>;
+
+}
OpenPOWER on IntegriCloud