Summary: | [4.0 Regression] ICE during bootstrap compiling __fixdfdi | ||
---|---|---|---|
Product: | gcc | Reporter: | Joel Sherrill <joel> |
Component: | target | Assignee: | denisc |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | corsepiu, denisc, dgay, dj, eric.weddington, gcc-bugs, marekm, mmitchel |
Priority: | P3 | Keywords: | build, ice-on-valid-code, patch |
Version: | 4.0.0 | ||
Target Milestone: | 4.0.0 | ||
Host: | Target: | avr | |
Build: | Known to work: | ||
Known to fail: | Last reconfirmed: | 2005-01-11 17:15:44 | |
Bug Depends on: | 18887 | ||
Bug Blocks: |
Description
Joel Sherrill
2005-01-11 16:29:12 UTC
Note there was another bug opened which will also fix the avr bootstrap failure but does not fix the ICE, only works around the problem (PR 18887). As mentioned in PR 18887 in comment #9, the ICE was caused by: +2004-12-06 DJ Delorie <dj@redhat.com> + + * reload.c (find_valid_class): Fix logic to test inner mode as well. + (push_reload): Pass inner mode. The problem is not *in* this patch, but while waiting for a proper fix, I could get GCC to build again for AVR by reversing it locally. *** Bug 19446 has been marked as a duplicate of this bug. *** Patch here: <http://gcc.gnu.org/ml/gcc-patches/2005-01/msg00834.html>. (In reply to comment #4) > Patch here: <http://gcc.gnu.org/ml/gcc-patches/2005-01/msg00834.html>. This patch lets building succeed for avr-rtems*. AVR is not a primary or secondary platform; removing target milestone. (In reply to comment #6) > AVR is not a primary or secondary platform; removing target milestone. Understood but there is a patch from Rager Sayle and all it needs is to be reviewed and approved. He posted tests rules and an explanation here: http://gcc.gnu.org/ml/gcc-patches/2005-01/msg00834.html He reports on avr-elf and I can confirm that this lets avr-rtems build. Please approve this patch. Subject: Re: [4.0 Regression] ICE during bootstrap compiling
__fixdfdi
joel at gcc dot gnu dot org wrote:
> ------- Additional Comments From joel at gcc dot gnu dot org 2005-01-22 13:02 -------
> (In reply to comment #6)
>
>>AVR is not a primary or secondary platform; removing target milestone.
>
>
> Understood but there is a patch from Rager Sayle and all it needs is to be
> reviewed and approved. He posted tests rules and an explanation here:
>
> http://gcc.gnu.org/ml/gcc-patches/2005-01/msg00834.html
>
> He reports on avr-elf and I can confirm that this lets avr-rtems build.
>
> Please approve this patch.
The AVR maintainer should review that patch; it's certainly fine to
commit if approved by the AVR maintainer.
I just assigned it to one AVR maintainer and cc'ed the other. Could one of you review this patch and commit it per Mark's request. I think the proposed avr_hard_regno_mode_ok patch may need a small fix for QImode in r29 - possible problem with frame pointer (see removed comment): - if (regno <= REG_Y && (regno + GET_MODE_SIZE (mode)) >= (REG_Y + 1)) + if (regno <= (REG_Y + 1) && regno + GET_MODE_SIZE (mode) > REG_Y) (In reply to comment #10) have you had a chance to look at Roger's more recient patch: http://gcc.gnu.org/ml/gcc-patches/2005-01/msg01181.html Subject: Bug 19378 CVSROOT: /cvs/gcc Module name: gcc Changes by: sayle@gcc.gnu.org 2005-01-23 04:51:29 Modified files: gcc : ChangeLog gcc/config/avr : avr.c Log message: PR middle-end/19378 * config/avr/avr.c (avr_hard_regno_mode_ok): Rewrite. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=2.7239&r2=2.7240 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/avr/avr.c.diff?cvsroot=gcc&r1=1.125&r2=1.126 Fixed. |