Comments

Hello!
Attached patch fixes an oversight in mode-switching. For blocks
without ANY mode requirements, we have to consider instructions with
MODE_AFTER mode changes. If the exiting mode from the block is
different that no_mode (the mode we start), we have to mark the block
as nontransparent.
2013-11-08 Uros Bizjak <ubizjak@gmail.com>
* mode-switching.c (optimize_mode_switching): Mark block as
nontransparent, if last_mode at block exit is different from no_mode.
Bootstrapped and regression tested on x86_64-pc-linux-gnu {,-m32}
core-avx-i configured bootstrap.
OK for mainline and branches?
Thanks,
Uros.

> Attached patch fixes an oversight in mode-switching. For blocks> without ANY mode requirements, we have to consider instructions with> MODE_AFTER mode changes. If the exiting mode from the block is> different that no_mode (the mode we start), we have to mark the block> as nontransparent.> > 2013-11-08 Uros Bizjak <ubizjak@gmail.com>> > * mode-switching.c (optimize_mode_switching): Mark block as> nontransparent, if last_mode at block exit is different from no_mode.> > Bootstrapped and regression tested on x86_64-pc-linux-gnu {,-m32}> core-avx-i configured bootstrap.> > OK for mainline and branches?
OK for mainline and 4.8 branch, if you complete the comment just above, for
example "from no_mode, in which case we need to..."

On Sun, Nov 10, 2013 at 5:45 PM, Eric Botcazou <ebotcazou@adacore.com> wrote:
>> Attached patch fixes an oversight in mode-switching. For blocks>> without ANY mode requirements, we have to consider instructions with>> MODE_AFTER mode changes. If the exiting mode from the block is>> different that no_mode (the mode we start), we have to mark the block>> as nontransparent.>>>> 2013-11-08 Uros Bizjak <ubizjak@gmail.com>>>>> * mode-switching.c (optimize_mode_switching): Mark block as>> nontransparent, if last_mode at block exit is different from no_mode.>>>> Bootstrapped and regression tested on x86_64-pc-linux-gnu {,-m32}>> core-avx-i configured bootstrap.>>>> OK for mainline and branches?>> OK for mainline and 4.8 branch, if you complete the comment just above, for> example "from no_mode, in which case we need to..."
Thanks, I have committed attached patch. I will wait a couple of days
to see if the patch causes any problems with other mode-switching
targets before backporting it to 4.8.
Uros.