https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121279
--- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> --- One idea is to have gimple_needing_rewrite_undefined/rewrite_to_defined_unconditional do the rewriting for moving BOOLEAN_TYPE loads. The other idea is to reject moving loads of booleans. The first idea is better but I don't know if it is just boolean types would cause these kind of issues; bitfield and BitInt loads remove the other bits so it is not an issue there.