Bug 99950 - Add cl_khr_int64_base_atomics to Clover and make it work on radeonsi
Summary: Add cl_khr_int64_base_atomics to Clover and make it work on radeonsi
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/Gallium/radeonsi (show other bugs)
Version: git
Hardware: Other All
: medium enhancement
Assignee: Default DRI bug account
QA Contact: Default DRI bug account
Depends on:
Blocks: 99553 99764
  Show dependency treegraph
Reported: 2017-02-24 20:30 UTC by Vedran Miletić
Modified: 2017-09-27 15:27 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Description Vedran Miletić 2017-02-24 20:30:45 UTC
Documentation: https://www.khronos.org/registry/OpenCL/sdk/1.0/docs/man/xhtml/cl_khr_int64_base_atomics.html

Clang is aware of this extension:

tools/clang/lib/Basic/Targets.cpp:      Opts.support("cl_khr_int64_base_atomics");
tools/clang/lib/Sema/Sema.cpp:      //   cl_khr_int64_base_atomics and cl_khr_int64_extended_atomics
tools/clang/lib/Sema/Sema.cpp:      //   is supported and the cl_khr_int64_base_atomics and
tools/clang/lib/Sema/Sema.cpp:      //   atomic_ptrdiff_t are supported if the cl_khr_int64_base_atomics and
tools/clang/lib/Sema/Sema.cpp:            "cl_khr_int64_base_atomics cl_khr_int64_extended_atomics");

BUFFER_ATOMIC_*_X2 and FLAT_ATOMIC_*_X2 are available in LLVM/AMDGPU.

User/potential test: bug 99764
Comment 1 Jan Vesely 2017-02-24 20:58:28 UTC
This should be rather straightforward:
add wrappers to libclc (use generic/lib/atomic/atomic_impl.ll as example)
add piglit tests
Comment 2 Jan Vesely 2017-09-27 15:27:17 UTC
you'll need latest mesa (17.3) and libclc >=r313811

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.