[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: