[patch?] Linux ARM atomics

Tim Northover t.p.northover at gmail.com
Sun Apr 14 23:57:42 PDT 2013


Hi Rafael,

> The thing is, I don't really understand what this code is doing :-(

> Why is clang in the business of deciding what gets compiled into a
> libgcc/compilerrt call? Shouldn't it always produce IL that uses the
> atomic operations and let LLVM produce the compiler-rt calls when it
> knows the backend can't handle it

I think Eli added these parameters fairly recently, in r142002. It
looks like it might be a case of inertia: an initial clang
implementation that only generated atomics the backend could handle;
and then a tightening of those conditions to accommodate incomplete
backend support.

But perhaps he remembers more about the reasons. I've put him on CC.

At first sight, handling it in the backend seems reasonable to me too.
It already knows about a bunch of runtime support functions.

Cheers.

Tim.



More information about the cfe-commits mailing list