Hi,

"Timothy Madden" <terminato...@gmail.com> 写入消息 news:5078d8af0903120218i23b69a4bma28ad9b3f1bd4...@mail.gmail.com...
On Thu, Mar 12, 2009 at 1:15 AM, Jan Hubicka <hubi...@ucw.cz> wrote:
Timothy Madden wrote:
> Hello
>
> Is -mfpmath=both for i386 and x86-64 still experimental in gcc 4.3, as
> the in the online manual page ?
[...]

The fundamental problem here is that backend lies to compiler about the
fact that FP operation can not take one operand from SSE and other from
X87.  This is something I want to look into once I have more time.  With
new RA, perhaps we can drop all these fake constraints.

That would be great !
I am sure having twice the number of registers (sse+387) would make a
big difference.

Even if SSE and FPU instructions set can not mix operands, using both
at the same
time (each with its registers) will be an improvement.

Until then I would have a question: if I compile with -msse than using
-mfpmath=387
would help floating-point operations not steal SSE registers that are
already used by
CPU operations ? And using -mfpmath=sse would make FPU and CPU share the SSE
registers and compete on them ?

How would I know if my AMD Sempron 2200+ has separate execution units
for SSE and
FPU instructions, with independent registers ?

Most CPU use the same FP unit for both x87 and SIMD operations so it wouldn't give you double the performance. The only exception I know of is K6-2/3, whose x87 and 3DNow! units are separate.

--
Zuxy

Reply via email to