Displaying 2 results from an estimated 2 matches for "cas4_relax".
2020 Oct 15
3
Out-of-line atomics implementation ways
...nd pass: add new AtomicExpansionKind::OutOfLine, and if it was set by target expand atomics to RTLIB libcalls. It will require to add 100 new "standardized" library names to RuntimeLibcalls.def and redefine them for Aarch64 target to comply with libgcc implementation ( like this : "cas4_relax" -> " __aarch64_cas4_relax" )
ii. Lower atomics in question later on Instruction Selection pass: for Aarch64 out-of-line atomics targets replace atomicrmw/cmpxchg to __aarch64 helpers libcalls. Then there is no need for runtime library calls extension, however this approach poten...
2020 Oct 15
0
Out-of-line atomics implementation ways
...nd pass: add new AtomicExpansionKind::OutOfLine, and if it was set by target expand atomics to RTLIB libcalls. It will require to add 100 new "standardized" library names to RuntimeLibcalls.def and redefine them for Aarch64 target to comply with libgcc implementation ( like this : "cas4_relax" -> " __aarch64_cas4_relax" )
ii. Lower atomics in question later on Instruction Selection pass: for Aarch64 out-of-line atomics targets replace atomicrmw/cmpxchg to __aarch64 helpers libcalls. Then there is no need for runtime library calls extension, however this approach poten...