On Mon, Sep 12, 2005 at 01:29:38PM +0200, Max Vozeler wrote:
> I've been able to find a reduced testcase that shows the problem.
> can find below the results using gcc-3.4 and gcc-4.0 with -O1/-O2 each.
> The problem only shows with gcc-4.0 and -O2 on hppa.

In case this helps analyze the problem, attached is the difference in
generated code as seen by objdump -d. Both binaries were compiled using
gcc-4.0 on paer, one with -O1 and the other with -O2.

cheers,
Max
--- test.O1.disas       2005-09-12 11:23:31.000000000 +0000
+++ test.O2.disas       2005-09-12 11:23:24.000000000 +0000
@@ -118,41 +118,41 @@
 
 00010550 <main>:
    10550:      6b c2 3f d9     stw rp,-14(,sp)
-   10554:      37 de 05 80     ldo 2c0(sp),sp
-   10558:      34 13 00 00     ldi 0,r19
-   1055c:      37 df 3a 91     ldo -2b8(sp),r31
-   10560:      22 a0 62 46     ldil 12341000,r21
-   10564:      36 b5 04 68     ldo 234(r21),r21
-   10568:      22 c0 62 46     ldil 12341000,r22
-   1056c:      36 d6 04 68     ldo 234(r22),r22
+   10554:      34 13 00 00     ldi 0,r19
+   10558:      37 de 05 80     ldo 2c0(sp),sp
+   1055c:      22 a0 62 46     ldil 12341000,r21
+   10560:      36 b5 04 68     ldo 234(r21),r21
+   10564:      22 c0 62 46     ldil 12341000,r22
+   10568:      36 d6 04 68     ldo 234(r22),r22
+   1056c:      37 df 3a 91     ldo -2b8(sp),r31
    10570:      34 14 05 00     ldi 280,r20
    10574:      0b f3 0a 1c     add,l r19,r31,ret0
-   10578:      0f 95 12 80     stw r21,0(,ret0)
-   1057c:      0f 96 12 88     stw r22,4(,ret0)
-   10580:      36 73 00 10     ldo 8(r19),r19
+   10578:      36 73 00 10     ldo 8(r19),r19
+   1057c:      0f 95 12 80     stw r21,0(,ret0)
+   10580:      0f 96 12 88     stw r22,4(,ret0)
    10584:      8a 74 3f dd     cmpb,<> r20,r19,10578 <main+0x28>
    10588:      0b f3 0a 1c     add,l r19,r31,ret0
-   1058c:      4b d7 3b 71     ldw -248(,sp),r23
-   10590:      4b d8 3b 79     ldw -244(,sp),r24
-   10594:      08 17 02 55     copy r23,r21
-   10598:      d3 15 09 94     shrpw r21,r24,19,r20
-   1059c:      d2 f8 09 93     shrpw r24,r23,19,r19
-   105a0:      d2 f8 08 5d     shrpw r24,r23,29,ret1
-   105a4:      d3 15 08 5c     shrpw r21,r24,29,ret0
-   105a8:      0b 93 02 93     xor r19,ret0,r19
-   105ac:      0b b4 02 94     xor r20,ret1,r20
-   105b0:      d6 b5 0b 5a     depw,z r21,5,6,r21
-   105b4:      d3 18 1b 26     extrw,u r24,25,26,r24
-   105b8:      0b 15 02 58     or r21,r24,r24
-   105bc:      d2 f7 1b 26     extrw,u r23,25,26,r23
-   105c0:      23 48 10 00     ldil 10800,r26
-   105c4:      37 5a 02 70     ldo 138(r26),r26
-   105c8:      0a f3 02 97     xor r19,r23,r23
-   105cc:      0b 14 02 98     xor r20,r24,r24
+   1058c:      4b dc 3b 71     ldw -248(,sp),ret0
+   10590:      4b dd 3b 79     ldw -244(,sp),ret1
+   10594:      08 1c 02 56     copy ret0,r22
+   10598:      d3 93 1b 26     extrw,u ret0,25,26,r19
+   1059c:      d3 b6 09 98     shrpw r22,ret1,19,r24
+   105a0:      d3 9d 09 97     shrpw ret1,ret0,19,r23
+   105a4:      d3 b4 1b 26     extrw,u ret1,25,26,r20
+   105a8:      d3 9d 08 5d     shrpw ret1,ret0,29,ret1
+   105ac:      d6 b6 0b 5a     depw,z r22,5,6,r21
+   105b0:      d3 b6 08 5c     shrpw r22,ret1,29,ret0
+   105b4:      0a 95 02 54     or r21,r20,r20
+   105b8:      0b 97 02 97     xor r23,ret0,r23
+   105bc:      0b b8 02 98     xor r24,ret1,r24
+   105c0:      34 19 00 20     ldi 10,r25
+   105c4:      0a 77 02 97     xor r23,r19,r23
+   105c8:      0a 98 02 98     xor r24,r20,r24
+   105cc:      23 48 10 00     ldil 10800,r26
    105d0:      e8 5f 1c b5     b,l 10430 <_end_init+0x14>,rp
-   105d4:      34 19 00 20     ldi 10,r25
-   105d8:      34 1c 00 00     ldi 0,ret0
-   105dc:      4b c2 3a 59     ldw -2d4(,sp),rp
+   105d4:      37 5a 02 70     ldo 138(r26),r26
+   105d8:      4b c2 3a 59     ldw -2d4(,sp),rp
+   105dc:      34 1c 00 00     ldi 0,ret0
    105e0:      e8 40 c0 00     bv r0(rp)
    105e4:      37 de 3a 81     ldo -2c0(sp),sp
 

Reply via email to