https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111907
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Summary|ICE: in |ICE: in |curr_insn_transform, at |curr_insn_transform, at |lra-constraints.cc:4294 |lra-constraints.cc:4294 |unable to generate reloads |unable to generate reloads |for: {*andnottf3} with |for: {*andnottf3} with |-mavx512f -mno-evex512 |-mavx512f -mno-evex512 |-mbionic | --- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Simplified testcase: ``` _Float128 foo (_Float128 d, _Float128 e) { return __builtin_copysignf128 (d, e); } ``` Just use `-mavx512f -mno-evex512` . No reason for the `-mbionic` here (which changes `long double` into the IEEE128 bit long double rather than the 90bit long double.