[LLVMdev] Atomic ops cannot be built from C/OCaml bindings

Jonathan Ragan-Kelley jrk at csail.mit.edu
Fri Sep 14 16:53:50 PDT 2012

Forgive me if I'm missing something obvious, but it seems that a
number of core instructions—I'm specifically running in to
`atomicrmw`, `fence`, and `cmpxchg` at the moment—cannot be
constructed from the C bindings, and are therefore also inaccessible
to the OCaml bindings. There are opcodes for each of these in the
llvm-c/Core.h, but there seems to be no way to construct them.

Is there a reason these should be omitted?

(I am currently running into this trying to use NVPTX, where CUDA
atomics are largely built from the native atomic instructions, in a
compiler written in OCaml.)


More information about the llvm-dev mailing list