This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: target/9929: [3.3/3.4 regression] Can't find spill register
- From: Janis Johnson <janis187 at us dot ibm dot com>
- To: Steven Bosscher <s dot bosscher at student dot tudelft dot nl>
- Cc: gabor at mac dot com, gcc-gnats at gcc dot gnu dot org, gcc-bugs at gcc dot gnu dot org, nobody at gcc dot gnu dot org, gcc-prs at gcc dot gnu dot org, janis187 at us dot ibm dot com, jh at suse dot cz
- Date: Mon, 24 Mar 2003 14:04:19 -0800
- Subject: Re: target/9929: [3.3/3.4 regression] Can't find spill register
- References: <3E7F63E8.6040403@student.tudelft.nl>
On Mon, Mar 24, 2003 at 09:00:40PM +0100, Steven Bosscher wrote:
>
> Janis, can you hunt this one?
The regression showed up with this patch:
Sat Mar 30 14:08:55 CET 2002 Jan Hubicka <jh at suse dot cz>
* local-alloc.c (local_alloc): Avoid call of update_equiv_regs
when not optimizing.
* toplev.c (rest_of_compilation): Cann mark_constant_function
only when optimizing.
* flow.c (calculate_global_regs_live): Ensure that all AUX fields
are NULL.
* cfgcleanup.c (bb_flags): Add BB_NONTHREADABLE_BLOCK.
(thread_jump): Set BB_NONTHREADABLE_BLOCK, check it.
(try_optimize_cfg): clear all AUX fields.
* i386.c (aligned_operand): Be prepared for SUBREGed registers.
(ix86_decompose_address): Use REG_P instead of GET_CODE (...) == REG.
(ix86_address_cost): Be prepared for SUBREGed registers.
(legitimate_address_p): Accept SUBREGed registers.
The hunt used Wolfgang's reduced test case with "-O -fPIC" on
i686-pc-linux-gnu.