search for: atomic_cmp_swap_32

Displaying 3 results from an estimated 3 matches for "atomic_cmp_swap_32".

Did you mean: atomic_cmp_swap_i32
2009 Mar 27
0
[LLVMdev] atomic operations for ARM
...tblgen: let isCall = 1, Defs = [R0, R1, R2, R3, R12, LR, D0, D1, D2, D3, D4, D5, D6, D7, CPSR] in { def ARM_ATOMIC_CMP_SWAP : ABXI<0b1011, (outs GPR:$dst), (ins i32imm:$ptr, i32imm:$old, i32imm:$new), "do_something", [(set GPR:$dst, (atomic_cmp_swap_32 globaladdr:$ptr, imm:$old, imm:$new))]>; } What I want to achieve first is that llc picks this definition when it finds an occurance of the @atomic.cmp.swap.i32 intrinsic. Therefore I wrote a basic .ll file containing only a call to this function. I then let it run through "llvm-as | llc&...
2009 Mar 26
3
[LLVMdev] atomic operations for ARM
Hi, I am missing atomic operations support for the ARM backend (see PR #3887) and started trying to implement them. Since this is the first time that I work on such stuff (and llvm) I am going to take the supposedly easy route and provide an implementation that will work on Linux systems. This involves calling a special function which the kernel handles itself. Details here:
2009 Mar 27
1
[LLVMdev] atomic operations for ARM
...s = [R0, R1, R2, R3, R12, LR, > D0, D1, D2, D3, D4, D5, D6, D7, CPSR] in { > > def ARM_ATOMIC_CMP_SWAP : ABXI<0b1011, (outs GPR:$dst), (ins > i32imm:$ptr, i32imm:$old, i32imm:$new), > "do_something", > [(set GPR:$dst, > (atomic_cmp_swap_32 globaladdr:$ptr, imm:$old, > imm:$new))]>; > } > > What I want to achieve first is that llc picks this definition when it > finds an occurance of the @atomic.cmp.swap.i32 intrinsic. > > Therefore I wrote a basic .ll file containing only a call to this > function. I then l...