Hi,

It seems that on hppa, it's is caused by delayed branch.  It
seems to do an add and substract with -fdelayed-brach, which it
doesn't with -fno-delayed-branch.

Applying following diff of the assembler file generated with -O2 (and
-fdelayed-brach) fixes it:
--- pp_pack.s   2006-08-06 05:50:18.000000000 -0600
+++ pp_pack.s   2006-08-06 08:59:01.000000000 -0600
@@ -4474,13 +4474,11 @@
        fdiv,dbl %fr13,%fr5,%fr5
 .L1296:
        fldds 8(%r3),%fr22
-       fadd,dbl %fr13,%fr22,%fr13
 .L1447:
+       fadd,dbl %fr13,%fr22,%fr13
        fcmp,dbl,!< %fr13,%fr0
        ftest
-       b .L1447
-       fadd,dbl %fr13,%fr22,%fr13
-       fsub,dbl %fr13,%fr22,%fr13
+       b,n .L1447
        fldds 8(%r3),%fr5
        fdiv,dbl %fr13,%fr5,%fr5
 .L1463:




-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to