[PATCH] Changes in mode switching

Vladimir Yakovlev vbyakovl23@gmail.com
Tue Sep 18 12:18:00 GMT 2012


I tried to perform vzeroupper emitting after reload as additional pass
of mode switching.
I sow one problem that I don't know haw to overcome. After
'pro_and_epilogue', there can be no
flow edge to exit block and pre_exit block is not created in this case
(see rotine create_pre_exit).
Without that I cannot properly perform vzeroupper insertion at rotine exit.

Regards,
Vladimir

2012/9/18 Uros Bizjak <ubizjak@gmail.com>:
> Hello!
>
>> You are right I no need the changes in mode-switchig.c at all. After I
>> remove additional argument from  EMIT_MODE_SET and run 'make check' I
>> found no differences with make check result of previous run. So I no
>> need in any changes in the middle end part.
>
> Vladimir, can you please investigate, how to emit vzeroupper insns
> after reload? Vzeroupper emits hard registers, and reload moves the
> insn around even when declared with unspec_volatile.
>
> Uros.



More information about the Gcc-patches mailing list