https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104117
--- Comment #7 from Iain Sandoe <iains at gcc dot gnu.org> --- Created attachment 52241 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=52241&action=edit RTL from ira pass this all looks sane enough - there are two (small) literal loads 0 and 1 and the load of 1 is then promoted to double.