This is the mail archive of the gcc-patches@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: {PING] [PATCH] Sign extension elimination


>> > I don't think the current SEE worked well for x86-64. We have been
>> > trying to extend it to x86-64. My main concern is when SEE is enabled,
>> > some very odd x86-64 code is generated for some simple testcases.
>> Can you point out, what are the testcases and what is the odd code that
>> was generated.
...
> logadd:
>         addl    %edi, %esi
>         movswl  %si,%eax
>         ret
>
> With SEE, I got
>
> logadd:
>         leal    (%rsi,%rdi), %eax
>         cwtl
>         ret
>
> I am not sure if the new one is better.
Even if the code is not optimal, if it is correct I don't think
that it is odd.

> The main problem for x86-64 is
> SEE is just moving instructions around or replacing one with another.
> For the testcase in
>
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17387
>
> "-O2 -fsee" doesn't reduce number of total instructions at all. It
> replaces
Did you use the version that we are working on (with Denis' change)?
If not, then we know what the problem is and we are on the way to fix it.
If yes, please send me the dump file of the SEE and the one just before it
and I'll try to see what is the problem.

Leehod.



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