This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
RE: [PATCH, RFC] LRA subreg handling
- From: Robert Suchanek <Robert dot Suchanek at imgtec dot com>
- To: Jeff Law <law at redhat dot com>, "vmakarov at redhat dot com" <vmakarov at redhat dot com>
- Cc: "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>
- Date: Thu, 15 Jan 2015 10:13:29 +0000
- Subject: RE: [PATCH, RFC] LRA subreg handling
- Authentication-results: sourceware.org; auth=none
- References: <B5E67142681B53468FAF6B7C31356562441183BD at hhmail02 dot hh dot imgtec dot org> <54B7497E dot 2060700 at redhat dot com>
> Robert, can you look at reload.c::reload_inner_reg_of_subreg and verify
> that the comment just before its return statement is effectively the
> situation you're in.
>
> There are certainly cases where a SUBREG needs to be treated as an
> in-out operand. We walked through them eons ago when we were poking at
> SSA for RTL. But the details have long since faded from memory.
The comment pretty much applies to my situation. The only difference I can
see is that reload would have had hard registers at this point. In the testcase,
LRA does not have hard registers assigned to the concerned pseudo(s), thus,
it can't rely on the information in hard_regno_nregs to check if the number of
registers in INNER is different to the number of words in INNER.
Robert