This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: gcse pass: expression hash table


On Thu, 2005-02-24 at 02:13, Tarun Kawatra wrote:
> If that is the reason, then even plus expression (shown below) should not
> be subjected to PRE as it also clobbers a hard register(CC). But it is being
> subjected to PRE. Multiplication expression while it looks same does not
> get even in hash table.

My assumption here was that if I gave you a few pointers, you would try
to debug the problem yourself.  If you want someone else to debug it for
you, then you need to give much better info.  See for instance
    http://gcc.gnu.org/bugs.html
which gives info on how to properly report a bug.  I have the target and
gcc version, but I need a testcase, compiler options, and perhaps other
info.

How do you know that adds are getting optimized?  Did you judge this by
looking at one of the dump files, or looking at the assembly output? 
Maybe you are looking at the wrong thing, or misunderstanding what you
are looking at?  You need to give more details here.

If I try compiling a trivial example with -O2 -da -S for both IA-64 and
x86, and then looking at the .gcse dump file, I see that both the
multiply and the add are in the hash table dump for the IA-64, but
neither are in the hash table dump for the x86.  The reason why is as I
explained, the added_clobbers_hard_reg_p call returns true for both on
x86, but not on IA-64.

If you are seeing something different, then you need to give more
details.  Perhaps you are looking at a different part of gcse than I am.
-- 
Jim Wilson, GNU Tools Support, http://www.SpecifixInc.com



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]