GCC in-line assembly and the removal of -mcx16
Alexander Monakov
amonakov@ispras.ru
Fri May 26 20:32:00 GMT 2017
On Fri, 26 May 2017, Toebs Douglass wrote:
> > Just as a note to any future readers, although I may well be wrong, I
> > think this is only true for GCC 4.8.0 onwards, with the introduction of
> > the 128 bit types.
(4.6 actually)
> I *think* -mcx16 was introduced in 4.3.0.
>
> Why would it *be* introduced here if GCC could not use it?
>
> Was there then another way to indicate to the __sync functions they were
> being given a 128-bit type?
The intended way was via a typedef:
typedef int my_int128 __attribute__((mode(TI)));
And it appears there's another, undocumented (and thus unsupported afaict) way,
via suffixing object size to the builtin name: __sync_val_compare_and_swap_16.
Alexander
More information about the Gcc-help
mailing list