https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93177
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Last reconfirmed| |2020-01-11
Ever confirmed|0 |1
--- Comment #5 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
> __lwarx()
> __ldarx()
> __stwcx()
> __stdcx()
Is there a reason why the __atomic_* builtins don't work?
> __protected_stream_set()
> __protected_stream_count()
> __protected_stream_count_depth() // currently not implemented in gcc
> __protected_stream_go()
These are the most useful ones really.
>the cntlz ones are not, for example
:) It has been a long time since I touched this but I would not doubt I messed
up this too.
__mulh* intrinsics are better implemented these days using either 64bit or
128bit multiples.
__l[hwd]brx/__st[hwd]brx intrinsics are better implemented as __builtin_bswap*
followed by load/stored these days (the bswap builtins did not exist back then
or optimized)
Many of the other intrinsics should be implemented as non inline-asm too, even
fma, should be done using __builtin_fma :).