This adds the optional wrappers around things, however this isn't sufficient yet for CL 3.0 without generic address space, I've got one more additional patch to add all those APIs, but this is an easier to review precursor.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Comment Actions
You also need to guard memory_order_seq_cst enum entry. Note that memory_order_acq_rel is always defined as it can be used in atomic_work_item_fence() built-in function, AFAIR in all other cases if memory_order_acq_rel is used without __opencl_c_atomic_order_acq_rel feature it is undefined behavior.