This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/36827] [4.3/4.4 Regression] newlib:libm/math/k_rem_pio2.c fails in reload
- From: "dj at redhat dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 16 Jul 2008 19:08:35 -0000
- Subject: [Bug target/36827] [4.3/4.4 Regression] newlib:libm/math/k_rem_pio2.c fails in reload
- References: <bug-36827-681@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #11 from dj at redhat dot com 2008-07-16 19:08 -------
Subject: Re: [4.3/4.4 Regression] newlib:libm/math/k_rem_pio2.c fails in
reload
Last night's builds showed a flaw in the patch. The "++rii" address
created by m32c_legitimize_reload_address is *not* legitimate, it's
used as a marker for addresses that need to be reloaded into an
address register. If I fix m32c_print_operand() to print those, it
ends up printing an address that exceeds the displacement range of the
FB register:
regex.s:11903: Error: unrecognized keyword/register name `mov.w mem0,-198[fb]'
The original idea was to reload $fb of $sp itself into an address
register, and use a displacement off that, so that only one address
register is needed for all frame address reloads. I never quite got
gcc to do it right.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36827