Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/dotnet/llvm-project.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/libclc
diff options
context:
space:
mode:
authorJan Vesely <jan.vesely@rutgers.edu>2018-11-27 19:01:13 +0300
committerJan Vesely <jan.vesely@rutgers.edu>2018-11-27 19:01:13 +0300
commit3a7e8e77e6826c591e923fcfbcb1acccc2aeb305 (patch)
treedf5b07d13111f9be35b460a0087193133161f12c /libclc
parent24987cf7fca64e11b2e593097bf30512804bc3ae (diff)
amdgcn: Consolidate atomic minmax helpers
Removes most overrides Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu> Reviewer: Aaron Watry llvm-svn: 347665
Diffstat (limited to 'libclc')
-rw-r--r--libclc/amdgcn/lib/OVERRIDES0
-rw-r--r--libclc/amdgcn/lib/OVERRIDES_3.91
-rw-r--r--libclc/amdgcn/lib/OVERRIDES_4.01
-rw-r--r--libclc/amdgcn/lib/OVERRIDES_5.01
-rw-r--r--libclc/amdgcn/lib/OVERRIDES_6.01
-rw-r--r--libclc/amdgcn/lib/SOURCES_3.91
-rw-r--r--libclc/amdgcn/lib/SOURCES_4.01
-rw-r--r--libclc/amdgcn/lib/SOURCES_5.01
-rw-r--r--libclc/amdgcn/lib/SOURCES_6.01
-rw-r--r--libclc/amdgcn/lib/cl_khr_int64_extended_atomics/minmax_helpers.39.ll49
-rw-r--r--libclc/amdgcn/lib/cl_khr_int64_extended_atomics/minmax_helpers.ll4
11 files changed, 4 insertions, 57 deletions
diff --git a/libclc/amdgcn/lib/OVERRIDES b/libclc/amdgcn/lib/OVERRIDES
deleted file mode 100644
index e69de29bb2d1..000000000000
--- a/libclc/amdgcn/lib/OVERRIDES
+++ /dev/null
diff --git a/libclc/amdgcn/lib/OVERRIDES_3.9 b/libclc/amdgcn/lib/OVERRIDES_3.9
deleted file mode 100644
index cf5884938605..000000000000
--- a/libclc/amdgcn/lib/OVERRIDES_3.9
+++ /dev/null
@@ -1 +0,0 @@
-cl_khr_int64_extended_atomics/minmax_helpers.ll
diff --git a/libclc/amdgcn/lib/OVERRIDES_4.0 b/libclc/amdgcn/lib/OVERRIDES_4.0
deleted file mode 100644
index cf5884938605..000000000000
--- a/libclc/amdgcn/lib/OVERRIDES_4.0
+++ /dev/null
@@ -1 +0,0 @@
-cl_khr_int64_extended_atomics/minmax_helpers.ll
diff --git a/libclc/amdgcn/lib/OVERRIDES_5.0 b/libclc/amdgcn/lib/OVERRIDES_5.0
deleted file mode 100644
index cf5884938605..000000000000
--- a/libclc/amdgcn/lib/OVERRIDES_5.0
+++ /dev/null
@@ -1 +0,0 @@
-cl_khr_int64_extended_atomics/minmax_helpers.ll
diff --git a/libclc/amdgcn/lib/OVERRIDES_6.0 b/libclc/amdgcn/lib/OVERRIDES_6.0
deleted file mode 100644
index cf5884938605..000000000000
--- a/libclc/amdgcn/lib/OVERRIDES_6.0
+++ /dev/null
@@ -1 +0,0 @@
-cl_khr_int64_extended_atomics/minmax_helpers.ll
diff --git a/libclc/amdgcn/lib/SOURCES_3.9 b/libclc/amdgcn/lib/SOURCES_3.9
deleted file mode 100644
index c97d4066b71a..000000000000
--- a/libclc/amdgcn/lib/SOURCES_3.9
+++ /dev/null
@@ -1 +0,0 @@
-cl_khr_int64_extended_atomics/minmax_helpers.39.ll
diff --git a/libclc/amdgcn/lib/SOURCES_4.0 b/libclc/amdgcn/lib/SOURCES_4.0
deleted file mode 100644
index c97d4066b71a..000000000000
--- a/libclc/amdgcn/lib/SOURCES_4.0
+++ /dev/null
@@ -1 +0,0 @@
-cl_khr_int64_extended_atomics/minmax_helpers.39.ll
diff --git a/libclc/amdgcn/lib/SOURCES_5.0 b/libclc/amdgcn/lib/SOURCES_5.0
deleted file mode 100644
index c97d4066b71a..000000000000
--- a/libclc/amdgcn/lib/SOURCES_5.0
+++ /dev/null
@@ -1 +0,0 @@
-cl_khr_int64_extended_atomics/minmax_helpers.39.ll
diff --git a/libclc/amdgcn/lib/SOURCES_6.0 b/libclc/amdgcn/lib/SOURCES_6.0
deleted file mode 100644
index c97d4066b71a..000000000000
--- a/libclc/amdgcn/lib/SOURCES_6.0
+++ /dev/null
@@ -1 +0,0 @@
-cl_khr_int64_extended_atomics/minmax_helpers.39.ll
diff --git a/libclc/amdgcn/lib/cl_khr_int64_extended_atomics/minmax_helpers.39.ll b/libclc/amdgcn/lib/cl_khr_int64_extended_atomics/minmax_helpers.39.ll
deleted file mode 100644
index ec14179c243c..000000000000
--- a/libclc/amdgcn/lib/cl_khr_int64_extended_atomics/minmax_helpers.39.ll
+++ /dev/null
@@ -1,49 +0,0 @@
-target datalayout = "e-p:32:32-p1:64:64-p2:64:64-p3:32:32-p4:64:64-p5:32:32-i64:64-v16:16-v24:32-v32:32-v48:64-v96:128-v192:256-v256:256-v512:512-v1024:1024-v2048:2048-n32:64"
-
-define i64 @__clc__sync_fetch_and_min_global_8(i64 addrspace(1)* nocapture %ptr, i64 %value) nounwind alwaysinline {
-entry:
- %0 = atomicrmw volatile min i64 addrspace(1)* %ptr, i64 %value seq_cst
- ret i64 %0
-}
-
-define i64 @__clc__sync_fetch_and_umin_global_8(i64 addrspace(1)* nocapture %ptr, i64 %value) nounwind alwaysinline {
-entry:
- %0 = atomicrmw volatile umin i64 addrspace(1)* %ptr, i64 %value seq_cst
- ret i64 %0
-}
-
-define i64 @__clc__sync_fetch_and_min_local_8(i64 addrspace(3)* nocapture %ptr, i64 %value) nounwind alwaysinline {
-entry:
- %0 = atomicrmw volatile min i64 addrspace(3)* %ptr, i64 %value seq_cst
- ret i64 %0
-}
-
-define i64 @__clc__sync_fetch_and_umin_local_8(i64 addrspace(3)* nocapture %ptr, i64 %value) nounwind alwaysinline {
-entry:
- %0 = atomicrmw volatile umin i64 addrspace(3)* %ptr, i64 %value seq_cst
- ret i64 %0
-}
-
-define i64 @__clc__sync_fetch_and_max_global_8(i64 addrspace(1)* nocapture %ptr, i64 %value) nounwind alwaysinline {
-entry:
- %0 = atomicrmw volatile max i64 addrspace(1)* %ptr, i64 %value seq_cst
- ret i64 %0
-}
-
-define i64 @__clc__sync_fetch_and_umax_global_8(i64 addrspace(1)* nocapture %ptr, i64 %value) nounwind alwaysinline {
-entry:
- %0 = atomicrmw volatile umax i64 addrspace(1)* %ptr, i64 %value seq_cst
- ret i64 %0
-}
-
-define i64 @__clc__sync_fetch_and_max_local_8(i64 addrspace(3)* nocapture %ptr, i64 %value) nounwind alwaysinline {
-entry:
- %0 = atomicrmw volatile max i64 addrspace(3)* %ptr, i64 %value seq_cst
- ret i64 %0
-}
-
-define i64 @__clc__sync_fetch_and_umax_local_8(i64 addrspace(3)* nocapture %ptr, i64 %value) nounwind alwaysinline {
-entry:
- %0 = atomicrmw volatile umax i64 addrspace(3)* %ptr, i64 %value seq_cst
- ret i64 %0
-}
diff --git a/libclc/amdgcn/lib/cl_khr_int64_extended_atomics/minmax_helpers.ll b/libclc/amdgcn/lib/cl_khr_int64_extended_atomics/minmax_helpers.ll
index 0fea3f6add31..98f1f54718a1 100644
--- a/libclc/amdgcn/lib/cl_khr_int64_extended_atomics/minmax_helpers.ll
+++ b/libclc/amdgcn/lib/cl_khr_int64_extended_atomics/minmax_helpers.ll
@@ -1,4 +1,8 @@
+#if __clang_major__ >= 7
target datalayout = "e-p:64:64-p1:64:64-p2:32:32-p3:32:32-p4:64:64-p5:32:32-p6:32:32-i64:64-v16:16-v24:32-v32:32-v48:64-v96:128-v192:256-v256:256-v512:512-v1024:1024-v2048:2048-n32:64-S32-A5"
+#else
+target datalayout = "e-p:32:32-p1:64:64-p2:64:64-p3:32:32-p4:64:64-p5:32:32-i64:64-v16:16-v24:32-v32:32-v48:64-v96:128-v192:256-v256:256-v512:512-v1024:1024-v2048:2048-n32:64"
+#endif
define i64 @__clc__sync_fetch_and_min_global_8(i64 addrspace(1)* nocapture %ptr, i64 %value) nounwind alwaysinline {
entry: