Skip to content

Commit 5b7c52b

Browse files
committed
update
1 parent 6f982cb commit 5b7c52b

File tree

1 file changed

+16
-16
lines changed

1 file changed

+16
-16
lines changed

offload/DeviceRTL/include/Synchronization.h

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -98,20 +98,20 @@ template <typename Ty, typename V = utils::remove_addrspace_t<Ty>>
9898
utils::enable_if_t<utils::is_same_v<V, float>, V>
9999
max(Ty *Address, V Val, atomic::OrderingTy Ordering) {
100100
if (Val >= 0)
101-
return max((int32_t *)Address, utils::convertViaPun<int32_t>(Val),
102-
Ordering);
103-
return min((uint32_t *)Address, utils::convertViaPun<uint32_t>(Val),
104-
Ordering);
101+
return utils::convertViaPun<float>(
102+
max((int32_t *)Address, utils::convertViaPun<int32_t>(Val), Ordering));
103+
return utils::convertViaPun<float>(
104+
min((uint32_t *)Address, utils::convertViaPun<uint32_t>(Val), Ordering));
105105
}
106106

107107
template <typename Ty, typename V = utils::remove_addrspace_t<Ty>>
108108
utils::enable_if_t<utils::is_same_v<V, double>, V>
109109
max(Ty *Address, V Val, atomic::OrderingTy Ordering) {
110110
if (Val >= 0)
111-
return max((int64_t *)Address, utils::convertViaPun<int64_t>(Val),
112-
Ordering);
113-
return min((uint64_t *)Address, utils::convertViaPun<uint64_t>(Val),
114-
Ordering);
111+
return utils::convertViaPun<double>(
112+
max((int64_t *)Address, utils::convertViaPun<int64_t>(Val), Ordering));
113+
return utils::convertViaPun<double>(
114+
min((uint64_t *)Address, utils::convertViaPun<uint64_t>(Val), Ordering));
115115
}
116116

117117
template <typename Ty, typename V = utils::remove_addrspace_t<Ty>>
@@ -126,10 +126,10 @@ template <typename Ty, typename V = utils::remove_addrspace_t<Ty>>
126126
utils::enable_if_t<utils::is_same_v<V, float>, V>
127127
min(Ty *Address, V Val, atomic::OrderingTy Ordering) {
128128
if (Val >= 0)
129-
return min((int32_t *)Address, utils::convertViaPun<int32_t>(Val),
130-
Ordering);
131-
return max((uint32_t *)Address, utils::convertViaPun<uint32_t>(Val),
132-
Ordering);
129+
return utils::convertViaPun<float>(
130+
min((int32_t *)Address, utils::convertViaPun<int32_t>(Val), Ordering));
131+
return utils::convertViaPun<float>(
132+
max((uint32_t *)Address, utils::convertViaPun<uint32_t>(Val), Ordering));
133133
}
134134

135135
// TODO: Implement this with __atomic_fetch_max and remove the duplication.
@@ -138,10 +138,10 @@ utils::enable_if_t<utils::is_same_v<V, double>, V>
138138
min(Ty *Address, utils::remove_addrspace_t<Ty> Val,
139139
atomic::OrderingTy Ordering) {
140140
if (Val >= 0)
141-
return min((int64_t *)Address, utils::convertViaPun<int64_t>(Val),
142-
Ordering);
143-
return max((uint64_t *)Address, utils::convertViaPun<uint64_t>(Val),
144-
Ordering);
141+
return utils::convertViaPun<double>(
142+
min((int64_t *)Address, utils::convertViaPun<int64_t>(Val), Ordering));
143+
return utils::convertViaPun<double>(
144+
max((uint64_t *)Address, utils::convertViaPun<uint64_t>(Val), Ordering));
145145
}
146146

147147
template <typename Ty, typename V = utils::remove_addrspace_t<Ty>>

0 commit comments

Comments
 (0)