This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [Patch, AVR]: Fix PR46779
On 06/14/2011 02:29 PM, Georg-Johann Lay wrote:
> http://gcc.gnu.org/ml/gcc-patches/2011-06/msg01029.html
It does look like a step in the right direction.
> I tested on some handcrafted examples and on the code attached to
> PR46278. The generated code looked very good and so I started
> regression testing but found at spill fail in
> gcc.c-torture/compile/950612-1.c
What compiler options? I tried -O{1,2,s,3} and they all passed.
> The major work left to be done are fixing spill fails and
> implementing appropriate LEGITIMIZE_RELOAD_ADDRESS which are beyond
> my skills.
L_R_A is a tad tricky, but there are good examples to copy from.
But you shouldn't need that to fix spill failures. L_R_A should
simply be able to provide slightly better sharing between addresses.
Not that I expect that there will be many instances of that, since
you'll quickly run out of registers in which to share anything.
> BTW, fixing PR48459, Richard ran immediately into a spill failure during newlib build:
>
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48459#c20
FWIW, that spill failure vanishes with your patch.
r~
- References:
- [Patch, AVR]: Fix PR46779
- Re: [Patch, AVR]: Fix PR46779
- Re: [Patch, AVR]: Fix PR46779
- Re: [Patch, AVR]: Fix PR46779
- Re: [Patch, AVR]: Fix PR46779
- Re: [Patch, AVR]: Fix PR46779
- Re: [Patch, AVR]: Fix PR46779
- Re: [Patch, AVR]: Fix PR46779
- Re: [Patch, AVR]: Fix PR46779
- Re: [Patch, AVR]: Fix PR46779
- Re: [Patch, AVR]: Fix PR46779