This is the mail archive of the
mailing list for the GCC project.
Re: [PATCH] Export __enable_execute_stack
On Sun, Jun 13, 2004 at 06:20:33PM +0200, Arnaud Charlet wrote:
> > My experience with Ada on ia64 is completely different, 3.4.x is unusable
> > while 3.3.x somehow works.
> I disagree: 3.3.x is a poor Ada compiler, and since this bug is in a corner
> case, I don't think we need this change in 3.3
> Also, I have the same question as Eric. AFAIK, 3.4 on ia64 is in a reasonable
> shape wrt Ada.
1) the testsuite hangs (only ever seen on ia64, but basically in all builds
I have to kill manually acats/run_all.sh, as many tests get stuck forever).
I believe this has been talked about a lot on the mailing lists (mainly H.J.Lu)
2) during 3.4.x build with 3.4.x as bootstrap compiler (unlike 3.3.x
bootstrap compiler + 3.4.x build) I get:
./xnmake -b ../nmake.adb
Program received signal SIGSEGV, Segmentation fault.
0x20000000002ac1f1 in gnat__spitbol__patterns__xmatch () from /usr/lib/libgnat-3.4.so.1
#0 0x20000000002ac1f1 in gnat__spitbol__patterns__xmatch () from /usr/lib/libgnat-3.4.so.1
#1 0x200000000029a980 in gnat__spitbol__patterns__match__7 () from /usr/lib/libgnat-3.4.so.1
#2 0x400000000001e570 in _ada_xnmake ()
#3 0x4000000000004ad0 in main ()
(gdb) disas $pc-33 $pc+32
Dump of assembler code from 0x20000000002ac1d0 to 0x20000000002ac211:
0x20000000002ac1d0 <gnat__spitbol__patterns__xmatch+16976>: [MMI] ld4 r14=[r39];;
0x20000000002ac1d1 <gnat__spitbol__patterns__xmatch+16977>: adds r17=1,r14
0x20000000002ac1d2 <gnat__spitbol__patterns__xmatch+16978>: nop.i 0x0;;
0x20000000002ac1e0 <gnat__spitbol__patterns__xmatch+16992>: [MII] nop.m 0x0
0x20000000002ac1e1 <gnat__spitbol__patterns__xmatch+16993>: sxt4 r14=r17;;
0x20000000002ac1e2 <gnat__spitbol__patterns__xmatch+16994>: sub r14=r14,r15;;
0x20000000002ac1f0 <gnat__spitbol__patterns__xmatch+17008>: [MMI] add r14=r14,r32;;
0x20000000002ac1f1 <gnat__spitbol__patterns__xmatch+17009>: ld1 r14=[r14]
0x20000000002ac1f2 <gnat__spitbol__patterns__xmatch+17010>: nop.i 0x0;;
0x20000000002ac200 <gnat__spitbol__patterns__xmatch+17024>: [MIB] nop.m 0x0
0x20000000002ac201 <gnat__spitbol__patterns__xmatch+17025>: cmp4.eq p7,p6=r14,r50
0x20000000002ac202 <gnat__spitbol__patterns__xmatch+17026>: (p07) br.cond.dpnt.few 0x20000000002a8360 <gnat__spitbol__patterns__xmatch+992>
0x20000000002ac210 <gnat__spitbol__patterns__xmatch+17040>: [MMB] nop.m 0x0
End of assembler dump.
(gdb) p/x $r14
$1 = 0x5fffffffffffff39
(gdb) p/x $r32
$2 = 0x600000000000e998
Haven't looked into details yet, as I have higher priority things to do than
Ada/ia64 (so for now I'll likely just disable it on ia64).