Re: GCC in-line assembly and the removal of -mcx16

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 26 May 2017, Toebs Douglass wrote:
> I filed a bug for it;
> 
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80878
> 
> And although the reply is hardly canonical, it does for what it's worth
> seem to indicate that the switch has gone away.

No; what changed in gcc-7 is how __atomic builtins that would previously use
cmpxchg16 are expanded: now they always yield a library call, but libatomic
tries to implement those calls efficiently via cmpxchg16, provided that the CPU
is capable of it, and the code generation target supports ifunc dispatch.

Note that the behavior with regards to __sync builtins (as opposed to __atomic)
remains unchanged, so uses of __sync_val_compare_and_swap can emit cmpxchg16 if
-mcx16 is given on the command line.

Alexander



[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux