This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [tree-ssa] A pass to remove a large number of casts in C++ code
On Apr 9, 2004, at 13:46, Andrew Pinski wrote:
The eon result is 6% which means that it needs to looked into but when
I looked into
dump files they were about the same, I need to look again. This might
also just be
a normal variation that I did not know about before.
I will add a flag to make my life easier and make it able to disable
it if it causes
a regression which I do not know about at this point.
I looked into the PPC assembly produced for some of the eon sources and
I found that it
was loosing because of additional register pressure. Most of the
additional register
pressure is due to that small arrays in structs are not turned into
scalars by SRA so
GCC stores the variable two places, one in the array and one in a
register unlike before
where it would use the value from the array. So when SRA acts on small
arrays inside
structs, this will fix up all the performance problems with this cast
pass.
Thanks,
Andrew Pinski