On Thu, Aug 25, 2005 at 12:37:32PM -0700, Ian Lance Taylor wrote:
> For what it's worth, as I told Fariborz, I suspect that returning 0 is
> correct for SFmode, but I'm somewhat doubtful for DFmode.
Indeed.
> And his test case is odd since the resulting code has more instructions
> and is larger.
On Aug 25, 2005, at 3:59 PM, Fariborz Jahanian wrote:
I think the problem may be somewhere else. I got the same xmm0 code
sequence on Linux/ia32 with -msse3 -mfpmath=sse. However, I got
xorl%eax, %eax
movq%rax, 16(%rdi)
movq%rax, 8(%rdi)
movq%rax
On Aug 25, 2005, at 12:47 PM, H. J. Lu wrote:
On Thu, Aug 25, 2005 at 12:37:32PM -0700, Ian Lance Taylor wrote:
Fariborz Jahanian <[EMAIL PROTECTED]> writes:
Forgot to attach the patch:
Index: i386.c
===
RCS file: /cvs/gcc/gc
On Thu, Aug 25, 2005 at 12:37:32PM -0700, Ian Lance Taylor wrote:
> Fariborz Jahanian <[EMAIL PROTECTED]> writes:
>
> > Forgot to attach the patch:
> >
> > Index: i386.c
> > ===
> > RCS file: /cvs/gcc/gcc/gcc/config/i386/i386.c,v
> >
Fariborz Jahanian <[EMAIL PROTECTED]> writes:
> Forgot to attach the patch:
>
> Index: i386.c
> ===
> RCS file: /cvs/gcc/gcc/gcc/config/i386/i386.c,v
> retrieving revision 1.795.4.33
> diff -c -p -r1.795.4.33 i386.c
> *** i386.c
On Aug 25, 2005, at 2:09 PM, Fariborz Jahanian wrote:
Compiled with -O1 -mdynamic-no-pic -march=pentium4 produces:
pxor%xmm0, %xmm0
movsd %xmm0, 16(%eax)
movsd %xmm0, 8(%eax)
movsd %xmm0, (%eax)
But following code results in 7% performance gain in eon
Forgot to attach the patch:
Index: i386.c
===
RCS file: /cvs/gcc/gcc/gcc/config/i386/i386.c,v
retrieving revision 1.795.4.33
diff -c -p -r1.795.4.33 i386.c
*** i386.c 15 Aug 2005 23:36:10 - 1.795.4.33
--- i386.c 25
(Note! I am starting a new thread of an old thread because of old
thread's corruption which prevented me from responding).
Following test case:
struct S {
double d1, d2, d3;
};
struct S ms()
{
struct S s = {0,0,0};
return s;
}
Compiled with -O1 -mdynamic-no-pic -march