Skip to content

Commit a32fbd4

Browse files
authored
Merge pull request #274 from haonanya/ocl-open-100
Update cl_ext_float_atomics patch because of SPIRV changes
2 parents 9a6acc3 + 85c9ab1 commit a32fbd4

File tree

1 file changed

+13
-13
lines changed

1 file changed

+13
-13
lines changed

patches/spirv/0001-Add-support-for-cl_ext_float_atomics-in-SPIRVWriter.patch

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
From edc51a3da117861a7884162ac9646e4b1a9d6a0e Mon Sep 17 00:00:00 2001
1+
From 794c7d32e521060190bbfca7c52f0bb4fa49f2f2 Mon Sep 17 00:00:00 2001
22
From: haonanya <[email protected]>
33
Date: Mon, 19 Jul 2021 10:14:20 +0800
44
Subject: [PATCH] Add support for cl_ext_float_atomics in SPIRVWriter
@@ -79,7 +79,7 @@ index e30aa5be..98d4289e 100644
7979
&Attrs);
8080
}
8181
diff --git a/lib/SPIRV/OCLUtil.cpp b/lib/SPIRV/OCLUtil.cpp
82-
index c7232623..ecb97119 100644
82+
index 992f173f..539c196c 100644
8383
--- a/lib/SPIRV/OCLUtil.cpp
8484
+++ b/lib/SPIRV/OCLUtil.cpp
8585
@@ -120,29 +120,32 @@ size_t getSPIRVAtomicBuiltinNumMemoryOrderArgs(Op OC) {
@@ -124,12 +124,12 @@ index c7232623..ecb97119 100644
124124
}
125125

126126
diff --git a/lib/SPIRV/SPIRVToOCL.h b/lib/SPIRV/SPIRVToOCL.h
127-
index ddeec0b6..006fb0b1 100644
127+
index 746a7acf..af8dade9 100644
128128
--- a/lib/SPIRV/SPIRVToOCL.h
129129
+++ b/lib/SPIRV/SPIRVToOCL.h
130-
@@ -178,6 +178,9 @@ public:
131-
/// using separate maps for OpenCL 1.2 and OpenCL 2.0
132-
virtual Instruction *mutateAtomicName(CallInst *CI, Op OC) = 0;
130+
@@ -208,6 +208,9 @@ public:
131+
132+
void translateOpaqueTypes();
133133

134134
+ // Transform FP atomic opcode to corresponding OpenCL function name
135135
+ virtual std::string mapFPAtomicName(Op OC) = 0;
@@ -138,7 +138,7 @@ index ddeec0b6..006fb0b1 100644
138138
/// Transform uniform group opcode to corresponding OpenCL function name,
139139
/// example: GroupIAdd(Reduce) => group_iadd => work_group_reduce_add |
140140
diff --git a/lib/SPIRV/SPIRVToOCL12.cpp b/lib/SPIRV/SPIRVToOCL12.cpp
141-
index afddd596..d7f00de3 100644
141+
index 1a62c6b8..dc0ba9cc 100644
142142
--- a/lib/SPIRV/SPIRVToOCL12.cpp
143143
+++ b/lib/SPIRV/SPIRVToOCL12.cpp
144144
@@ -104,6 +104,9 @@ public:
@@ -151,7 +151,7 @@ index afddd596..d7f00de3 100644
151151
static char ID;
152152
};
153153

154-
@@ -338,6 +341,21 @@ Instruction *SPIRVToOCL12::visitCallSPIRVAtomicBuiltin(CallInst *CI, Op OC) {
154+
@@ -344,6 +347,21 @@ Instruction *SPIRVToOCL12::visitCallSPIRVAtomicBuiltin(CallInst *CI, Op OC) {
155155
return NewCI;
156156
}
157157

@@ -173,7 +173,7 @@ index afddd596..d7f00de3 100644
173173
Instruction *SPIRVToOCL12::mutateAtomicName(CallInst *CI, Op OC) {
174174
AttributeList Attrs = CI->getCalledFunction()->getAttributes();
175175
return mutateCallInstOCL(
176-
@@ -351,6 +369,9 @@ Instruction *SPIRVToOCL12::mutateAtomicName(CallInst *CI, Op OC) {
176+
@@ -357,6 +375,9 @@ Instruction *SPIRVToOCL12::mutateAtomicName(CallInst *CI, Op OC) {
177177
std::string SPIRVToOCL12::mapAtomicName(Op OC, Type *Ty) {
178178
std::string Prefix = Ty->isIntegerTy(64) ? kOCLBuiltinName::AtomPrefix
179179
: kOCLBuiltinName::AtomicPrefix;
@@ -184,7 +184,7 @@ index afddd596..d7f00de3 100644
184184
}
185185

186186
diff --git a/lib/SPIRV/SPIRVToOCL20.cpp b/lib/SPIRV/SPIRVToOCL20.cpp
187-
index d829ff42..01d088e9 100644
187+
index 8c437858..0033b853 100644
188188
--- a/lib/SPIRV/SPIRVToOCL20.cpp
189189
+++ b/lib/SPIRV/SPIRVToOCL20.cpp
190190
@@ -82,6 +82,9 @@ public:
@@ -197,7 +197,7 @@ index d829ff42..01d088e9 100644
197197
static char ID;
198198
};
199199

200-
@@ -144,11 +147,29 @@ void SPIRVToOCL20::visitCallSPIRVControlBarrier(CallInst *CI) {
200+
@@ -150,11 +153,29 @@ void SPIRVToOCL20::visitCallSPIRVControlBarrier(CallInst *CI) {
201201
&Attrs);
202202
}
203203

@@ -227,7 +227,7 @@ index d829ff42..01d088e9 100644
227227
return OCLSPIRVBuiltinMap::rmap(OC);
228228
},
229229
&Attrs);
230-
@@ -215,7 +236,12 @@ CallInst *SPIRVToOCL20::mutateCommonAtomicArguments(CallInst *CI, Op OC) {
230+
@@ -221,7 +242,12 @@ CallInst *SPIRVToOCL20::mutateCommonAtomicArguments(CallInst *CI, Op OC) {
231231
}
232232
}
233233
auto Ptr = findFirstPtr(Args);
@@ -1139,5 +1139,5 @@ index b8ec5b89..f8d159fe 100644
11391139
- d = atomic_fetch_max_explicit(pp, val, order);
11401140
}
11411141
--
1142-
2.18.1
1142+
2.17.1
11431143

0 commit comments

Comments
 (0)