This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [patch] ppc prologue scheduling/ -fPIC and -msched-prolog
On Wed, Feb 09, 2000 at 01:41:13AM +0100, Franz Sirl wrote:
> Am Mit, 09 Feb 2000 schrieb Clinton Popetz:
> >2000-02-08 Clinton Popetz <cpopetz@cygnus.com>
> >
> > * config/rs6000/rs6000-protos.h: (get_TOC_alias_set, uses_TOC,
> > constant_pool_expr_p): Declare them.
> > (constant_pool_expr_p): Declare it.
> > * config/rs6000/rs6000.c (toc_label_name): Define.
> > (rs6000_override_options): Set toc_label_name.
> > (input_operand): Allow any TOC_RELATIVE_EXPR_P.
> > (get_TOC_alias_set, constant_pool_expr_p, constant_pool_expr_1,
> > uses_TOC): New functions.
> > (print_operand): Delete old '*' case.
> > (print_operand_address): Use LEGITIMATE_CONSTANT_POOL_ADDRESS_P,
> > and strip off rtl for TOC before calling output_addr_const.
> > (rs6000_emit_load_toc_table): Use toc_label_name.
> > * config/rs6000/rs6000.h (TARGET_SWITCHES): Make msched-prolog
> > the default.
> > (LEGITIMATE_CONSTANT_POOL_BASE_P): Delete.
> > (CONSTANT_POOL_EXPR_P, TOC_RELATIVE_EXPR_P): New macros.
> > (LEGITIMATE_CONSTANT_POOL_ADDRESS_P): Use CONSTANT_POOL_EXPR_P.
> > (LEGITIMIZE_ADDRESS, LEGITIMIZE_RELOAD_ADDRESS): Turn symbol_refs
> > into explicit TOC_REGISTER offsets.
> > (TOC_REGISTER): New macro.
> > * config/rs6000/rs6000.md (movsi, movdi): Emit rtl under
> > TARGET_TOC to reference TOC_REGISTER.
> > (load_toc_v4_PIC_1b): Add 4 to offset for toc reload.
> > * config/rs6000/sysv4.h (ASM_DECLARE_FUNCTION_NAME): Call
> > uses_TOC before emitting label references.
>
> Hi Clinton,
>
> unfortunately, with --enable-checking=tree,gc,misc, bootstrap with your patch
> applied to todays backend with newppc-branch on powerpc-linux-gnu fails with:
>
> ../../../cvsx/gccm/gcc/real.c:1566: Internal compiler error in `verify_flow_info', at flow.c:5914
This seems to be happening on x86 as well, so it is not my patch. It looks
to be due to rth's direct_return work.
http://gcc.gnu.org/ml/gcc-bugs/2000-02/msg00227.html
-Clint