This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/55212] [SH] Switch to LRA
- From: "kkojima at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Mon, 20 Oct 2014 02:28:25 +0000
- Subject: [Bug target/55212] [SH] Switch to LRA
- Auto-submitted: auto-generated
- References: <bug-55212-4 at http dot gcc dot gnu dot org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55212
--- Comment #70 from Kazumoto Kojima <kkojima at gcc dot gnu.org> ---
I'd like to apply the revised patches below to sh-lra branch for
looking at the problems easily. Oleg, is it OK for you?
c#55: Fixup the result of decompose_mem_address when INDEX_REG_CLASS
is a single register class.
c#59: Introduce target hook which disables the substitution of pseudos
with equivalent memory values.
c#61: Define SH specific HARD_REGNO_CALLER_SAVE_MODE target macro.
c#66: Make *addsi3_compact insn_and_split and add an alternative
which will split to (set a c) and (set (plus a b)) after reload.
I omit c#29 patch which touches lra-constraints.c and may impact on
other targets. That patch would make it hard to compare with other
targets. c#55 and c#59 also touch lra-constraints.c but those changes
unlikely impact on other targets. Fortunately the test case c#28
doesn't ICE anymore without c#29.