[RFC] New SRA and early interprocedural SRA
Martin Jambor
mjambor@suse.cz
Fri Mar 6 10:10:00 GMT 2009
Hi,
On Wed, Mar 04, 2009 at 12:41:45PM +0100, Eric Botcazou wrote:
> > this is an updated version of both SRA passes and fixes a number of
> > bugs that the previous one had. These are mostly ADA structure layout
> > peculiarities but also improved caller dereference legality and two or
> > three of other stupid mistakes relating to SSA_NAME handling in
> > IPA-SRA.
>
> Great work, Ada's (not ADA, it's a name) peculiarities are often tricky to
> deal with. :-)
I see :-)
>
> > The patch bootstraps (even with ADA) and apart from a few scan-dumps
> > test cases there is only one new failing fortran test case and four
> > acats/ada testcases (some of them only happening on certain computers,
> > but persistently).
>
> Is there cdd2a02 among them? There is at least one Ada front-end issue known
> to be potentially exposed by SRA in this test. What are the 4 testcases?
>
Well, so far I ran four kinds of tests. The first was on an internal
Suse x86_64 machine, with disabled bootstrap with IPA-SRA always
turned on. The second one was the same but with IPA-SRA turned off
(thus testing only the new implementation of intra-SRA). The third
kind of test was run on gcc16 at the gcc compile farm, with IPA-SRA
turned always on and after bootstrap. The fourth was run on gcc17,
with bootstrap disabled and with the patch as it is (i.e. IPA-SRA
enabled only at -O3). Unfortunately, the results differ
substantially.
The ones failing in the first test are c94001c, c951002 and cc3019c.
This is without bootstrap. When I ran the second test in order to
find out which of the two transformations caused them, I got two
different failures: c940007 and c954025, the ones from the previous
test all worked.
On gcc16 on compile farm and after bootstrap, the only failing acats
testcase is cc3019c (this one also appeared in the first test) but at
this machine there is also a strange excess error failure in the gnat
testsuite (test_rational_arithmetic.adb).
On gcc17, there were on acats or gnats regression at all.
I ran the first and third test repeatedly with the same results.
Nevertheless, my hypothesis at this moment is that cc3019c (and
probably also test_rational_arithmetic.adb are due to some
miscompilations (probably caused by IPA-SRA) and the rest of them
might be some timing issues (my intra-SRA slows some code down
substantially at the moment, I will try to deal with that on some
sub-branch of a-i that we intend to create).
Since you might actually understand the testcases, I would be grateful
if you could confirm or rule out that this is possible. The relevant
parts of the acats.log file are attached.
Thank you very much for your interest.
Martin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ada_failures.log
Type: text/x-log
Size: 6489 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20090306/11e919aa/attachment.bin>
More information about the Gcc-patches
mailing list