[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[Bug middle-end/32889] [4.2 Regression] ICE in delete_output_reload, at reload1.c:7926




------- Comment #14 from danglin at gcc dot gnu dot org  2007-12-10 03:17 -------
Subject: Bug 32889

Author: danglin
Date: Mon Dec 10 03:17:24 2007
New Revision: 130735

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=130735
Log:
        PR middle-end/32889
        PR target/34091
        * pa.md: Consolidate HImode and QImode move patterns into one pattern
        each, eliminating floating-point alternatives.
        * pa-protos.h (pa_cannot_change_mode_class, pa_modes_tieable_p):
        Declare functions.
        * pa-64.h (SECONDARY_MEMORY_NEEDED): Define here.
        * pa.c (pa_secondary_reload): Use an intermediate general register
        for copies to/from floating-point register classes.  Simplify code
        SHIFT_REGS class.  Provide additional comments.
        (pa_cannot_change_mode_class, pa_modes_tieable_p): New functions.
        * pa.h (MODES_TIEABLE_P): Use pa_modes_tieable_p.
        (SECONDARY_MEMORY_NEEDED): Delete define.
        (INT14_OK_STRICT): Define.
        (MODE_OK_FOR_SCALED_INDEXING_P): Allow SFmode and DFmode when using
        soft float.
        (MODE_OK_FOR_UNSCALED_INDEXING_P): Likewise.
        (GO_IF_LEGITIMATE_ADDRESS): Use INT14_OK_STRICT in REG+D case for
        SFmode and DFmode.
        (LEGITIMIZE_RELOAD_ADDRESS): Use INT14_OK_STRICT in mask selection.
        Align DImode offsets when generating 64-bit code.
        * pa32-regs.h (VALID_FP_MODE_P): Remove QImode and HImode.
        (CANNOT_CHANGE_MODE_CLASS): Define.
        * pa64-regs.h (VALID_FP_MODE_P): Remove QImode and HImode.
        (CANNOT_CHANGE_MODE_CLASS): Define using pa_cannot_change_mode_class.


Modified:
    branches/gcc-4_2-branch/gcc/ChangeLog
    branches/gcc-4_2-branch/gcc/config/pa/pa-64.h
    branches/gcc-4_2-branch/gcc/config/pa/pa-protos.h
    branches/gcc-4_2-branch/gcc/config/pa/pa.c
    branches/gcc-4_2-branch/gcc/config/pa/pa.h
    branches/gcc-4_2-branch/gcc/config/pa/pa.md
    branches/gcc-4_2-branch/gcc/config/pa/pa32-regs.h
    branches/gcc-4_2-branch/gcc/config/pa/pa64-regs.h


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32889

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.



Reply to: