https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91753
Wilco <wdijkstr at arm dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |wdijkstr at arm dot com
--- Comment #2 from Wilco <wdijkstr at arm dot com> ---
(In reply to Andrew Pinski from comment #1)
> lower-subreg should have be able to help here. I wonder why it did not ...
I'm not sure how it can help. When you write a part of a multi-register mode
using subreg, you get incorrect liveness info. This is why splitting 64-bit
types on 32-bit targets before register allocation gives such a huge gain.
The approach I used in other compilers was to generate multi-register virtual
registers using a single create operation rather than via multiple subreg
writes.