This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [tree-ssa] live analysis on local static functions
- From: Jan Hubicka <jh at suse dot cz>
- To: law at redhat dot com
- Cc: Jan Hubicka <jh at suse dot cz>, Jan Hubicka <hubicka at ucw dot cz>,Richard Henderson <rth at redhat dot com>,Andrew MacLeod <amacleod at redhat dot com>,gcc mailing list <gcc at gcc dot gnu dot org>,Diego Novillo <dnovillo at redhat dot com>, gcc-patches at gcc dot gnu dot org
- Date: Sat, 18 Oct 2003 00:01:15 +0200
- Subject: Re: [tree-ssa] live analysis on local static functions
- References: <200310172144.h9HLijjO013917@speedy.slc.redhat.com>
>
>
> In message <20031017212058.GE26035@kam.mff.cuni.cz>, Jan Hubicka writes:
> >> In message <20031017190337.GF15904@atrey.karlin.mff.cuni.cz>, Jan Hubicka w
> >rite
> >> s:
> >> >> On Fri, Oct 17, 2003 at 06:57:47PM +0200, Jan Hubicka wrote:
> >> >> > Also can I ask about the status of your changes in tree-ssa? (it loo
> >ks
> >> >> > like they are responsible for the new misscompilations I am seeing wi
> >th
> >> >> > unit-at-a-time enabled. I will look into these in case you don't hav
> >e
> >> >> > something ready already)
> >> >>
> >> >> It's looking generally good. I'm sure there are bugs, but they're
> >> >> not overwhelming.
> >> >I actually was referring to Jeff's changes from this week,
> >> Which specifically? I need specifics to be able to address any problems.
> >
> >Except for the uninitialized variables, I am seeing misscopmilation of
> >read_rtx with unit-at-a-time enabled. This is really funny one.
> >read_rtx does call read_name that gets inlined as called one.
> You're missing my point. I need testcases! This is especially true
> since none of my changes this month should be effecting code generation!
If I had one, I would send it.
The failure I am looking into is reproducible only using stage2 compiler
so it is in reality misscompilation of reload when unit-at-a-time is
enabled as in attached patch.
So far I tracked it to fact that find_reg choose ebp as best reg that is
obivously wrong. find_reg itself gets inlined into find_regs that get
inlined into reload() that gets gigantic and debug info completelly
messed up so I am not really sure what is going on here. I am still
investigating.
I am bootrapping i686-linux. I will try to produce testcase for the
missed optimization in read_rtx once I figure out what is happening here
(in fact this week changes apparently just made the bug to happen
earlier since last week I was also hitting reload misscomplation just
the symptomps were even more funny)
Honza
Index: opts.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/opts.c,v
retrieving revision 1.31.2.12
diff -c -3 -p -r1.31.2.12 opts.c
*** opts.c 17 Oct 2003 06:43:58 -0000 1.31.2.12
--- opts.c 17 Oct 2003 21:58:44 -0000
*************** decode_options (unsigned int argc, const
*** 562,568 ****
flag_delete_null_pointer_checks = 1;
flag_reorder_blocks = 1;
flag_reorder_functions = 1;
! /* flag_unit_at_a_time = 1; */
}
if (optimize >= 3)
--- 562,568 ----
flag_delete_null_pointer_checks = 1;
flag_reorder_blocks = 1;
flag_reorder_functions = 1;
! flag_unit_at_a_time = 1;
}
if (optimize >= 3)