This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: gcc-64 on HP-UX 11.00
- From: law at redhat dot com
- To: "John David Anglin" <dave at hiauly1 dot hia dot nrc dot ca>
- Cc: h dot m dot brand at hccnet dot nl, gcc-patches at gcc dot gnu dot org
- Date: Tue, 21 May 2002 16:19:32 -0600
- Subject: Re: gcc-64 on HP-UX 11.00
- Reply-to: law at redhat dot com
In message <200205211611.g4LGBIw9010420@hiauly1.hia.nrc.ca>, "John David
Anglin
" writes:
> > Even so, we should know that we need to allocate a GPR to handle the
> > symbol_ref operand. This would tend to indicate a problem in
> > secondary_reload_class
>
> I did some more investigation of the problem over the weekend but haven't
> come to any final conclusions. It does appear that secondary_reload_class
> needs to provide a GPR to handle this situation. However, this didn't
> seem to change the situation.
Just providing the GPR may not be enough -- you'll have to actually write
code to tell the compiler in what way the GPR should be used.
> With the predicate of the xmpyu patterns changed to register_operand
> and rejecting all LO_SUMs in the 'T' constraint, I get an ICE in stage1
> compiling f/data.c with "-mpa-risc-2-0" on this insn:
>
> (insn 582 576 2521 (set (reg:DI 332)
> (mem/f:DI (lo_sum:SI (reg/f:SI 873)
> (symbol_ref:SI ("ffedata_arraysize_"))) [29 ffedata_arraysize_+
> 0 S8 A64])) 118 {*pa.md:3247} (nil)
> (expr_list:REG_DEAD (reg/f:SI 873)
> (nil)))
>
> ../../gcc/gcc/f/data.c: In function `ffedata_advance_':
> ../../gcc/gcc/f/data.c:655: insn does not satisfy its constraints:
> (insn 2638 563 582 (set (reg:DI 70 %fr23 [332])
> (mem/f:DI (lo_sum:SI (reg/f:SI 4 %r4 [873])
> (symbol_ref:SI ("ffedata_arraysize_"))) [29 ffedata_arraysize_+
> 0 S8 A64])) 118 {*pa.md:3247} (nil)
> (nil))
> ../../gcc/gcc/f/data.c:655: Internal compiler error in reload_cse_simplify_o
> perands, at reload1.c:8367
This usually indicates a problem in the constraints/predicates -- you might
stop before any of the reload_cse stuff runs and verify that the pattern
is reasonable.
> The strange thing is the same insn reloads sucessfully without
"-mpa-risc-2-0".
We allow larger offsets in FP loads/stores with -mpa-risc-2-0, possibly
even non-PIC loads/stores (I don't recall). there could be a bug.
jeff