Skip to content

Commit 8426097

Browse files
svenvhtstellar
authored andcommitted
[OpenCL] Fix atomic_fetch_add/sub with half type
An error in the tablegen description affects the declarations provided by `-fdeclare-opencl-builtins` for `atomic_fetch_add` and `atomic_fetch_sub`. The atomic argument should be an atomic_half, not an atomic_float. (cherry picked from commit fe69058)
1 parent 865a18c commit 8426097

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

clang/lib/Sema/OpenCLBuiltins.td

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1138,7 +1138,7 @@ let MinVersion = CL20 in {
11381138
foreach ModOp = ["add", "sub"] in {
11391139
let Extension = FuncExtFloatAtomicsFp16GlobalAdd in {
11401140
defm : BuiltinAtomicExplicit<"atomic_fetch_" # ModOp,
1141-
[Half, PointerType<VolatileType<AtomicFloat>, GlobalAS>, Half]>;
1141+
[Half, PointerType<VolatileType<AtomicHalf>, GlobalAS>, Half]>;
11421142
}
11431143
let Extension = FuncExtFloatAtomicsFp32GlobalAdd in {
11441144
defm : BuiltinAtomicExplicit<"atomic_fetch_" # ModOp,
@@ -1150,7 +1150,7 @@ let MinVersion = CL20 in {
11501150
}
11511151
let Extension = FuncExtFloatAtomicsFp16LocalAdd in {
11521152
defm : BuiltinAtomicExplicit<"atomic_fetch_" # ModOp,
1153-
[Half, PointerType<VolatileType<AtomicFloat>, LocalAS>, Half]>;
1153+
[Half, PointerType<VolatileType<AtomicHalf>, LocalAS>, Half]>;
11541154
}
11551155
let Extension = FuncExtFloatAtomicsFp32LocalAdd in {
11561156
defm : BuiltinAtomicExplicit<"atomic_fetch_" # ModOp,
@@ -1162,7 +1162,7 @@ let MinVersion = CL20 in {
11621162
}
11631163
let Extension = FuncExtFloatAtomicsFp16GenericAdd in {
11641164
defm : BuiltinAtomicExplicit<"atomic_fetch_" # ModOp,
1165-
[Half, PointerType<VolatileType<AtomicFloat>, GenericAS>, Half]>;
1165+
[Half, PointerType<VolatileType<AtomicHalf>, GenericAS>, Half]>;
11661166
}
11671167
let Extension = FuncExtFloatAtomicsFp32GenericAdd in {
11681168
defm : BuiltinAtomicExplicit<"atomic_fetch_" # ModOp,

0 commit comments

Comments
 (0)