https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61656
--- Comment #6 from Uroš Bizjak <ubizjak at gmail dot com> --- (In reply to Jakub Jelinek from comment #5) > then it uses movq %rsi, ... and the patch doesn't change anything on that. > If you want to use movl %esi, ... in foo in this testcase, more changes are > needed of course. This is allowed, as long as we don't use movl on a DImode value. So, your proposed patch avoids undefined issue, while optimizes memory access a bit.