[Bug target/61577] [4.9.0] can't compile on hp-ux v3 ia64
bugzilla-gcc at thewrittenword dot com
gcc-bugzilla@gcc.gnu.org
Fri Jul 5 04:54:00 GMT 2019
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61577
--- Comment #38 from The Written Word <bugzilla-gcc at thewrittenword dot com> ---
I rebuilt 8.3.0 with minimal patches and am seeing the same failure as before.
From <objdir>/ia64-hp-hpux11.31/libstdc++-v3/config.log:
configure:7964: checking for ANSI C header files
configure:7984: /opt/build/china/gcc-8.3.0/.obj/./gcc/xgcc
-B/opt/build/china/gcc-8.3.0/.obj/./gcc/
-B/opt/build/gcc8/ia64-hp-hpux11.31/bin/
-B/opt/build/gcc8/ia64-hp-hpux11.31/lib/ -isystem
/opt/build/gcc8/ia64-hp-hpux11.31/include -isystem
/opt/build/gcc8/ia64-hp-hpux11.31/sys-include -c -O2 -g conftest.c >&5
configure:7984: $? = 0
configure:8057: /opt/build/china/gcc-8.3.0/.obj/./gcc/xgcc
-B/opt/build/china/gcc-8.3.0/.obj/./gcc/
-B/opt/build/gcc8/ia64-hp-hpux11.31/bin/
-B/opt/build/gcc8/ia64-hp-hpux11.31/lib/ -isystem
/opt/build/gcc8/ia64-hp-hpux11.31/include -isystem
/opt/build/gcc8/ia64-hp-hpux11.31/sys-include -o conftest -O2 -g
conftest.c >&5
configure:8057: $? = 0
configure:8057: ./conftest
/opt/build/china/gcc-8.3.0/libstdc++-v3/configure: line 1940: 18830
Segmentation fault (core dumped) ./conftest$ac_exeext
If I compile the conftest.c program between gcc-4.9.4 and the 8.3.0 stage 1
compiler:
--- gcc-4.9.4/conftest.s 2019-07-05 04:50:23 +0000
+++ /opt/build/china/gcc-8.3.0/.obj/ia64-hp-hpux11.31/libstdc++-v3/conftest.s
2019-07-05 04:50:13 +0000
@@ -27,42 +27,26 @@
;;
ld4 r14 = [r14]
;;
- addp4 r14 = 0,r14
- ;;
cmp.eq p6, p7 = 0, r14
- ;;
- (p6) adds r14 = 1, r0
- ;;
- (p7) adds r14 = 0, r0
- ;;
- tbit.nz p6, p7 = r14, 0
(p6) br.cond.dptk .L3
addl r14 = @ltoffx(__SB_masks#), r1
;;
ld8.mov r14 = [r14], __SB_masks#
;;
ld4 r14 = [r14]
- ;;
- addp4 r14 = 0,r14
ld4 r15 = [r34]
;;
shladd r15 = r15, 2, r0
;;
add r14 = r15, r14
;;
- addp4 r14 = 0,r14
+ addp4 r14 = r14, r0
;;
ld4 r14 = [r14]
;;
and r14 = 64, r14
;;
cmp4.ne p6, p7 = 0, r14
- ;;
- (p6) adds r14 = 1, r0
- ;;
- (p7) adds r14 = 0, r0
- ;;
- tbit.nz p6, p7 = r14, 0
(p6) br.cond.dptk .L4
br .L5
;;
@@ -73,33 +57,15 @@
mov r14 = r8
;;
cmp4.eq p6, p7 = 0, r14
- ;;
- (p6) adds r14 = 1, r0
- ;;
- (p7) adds r14 = 0, r0
- ;;
- tbit.nz p6, p7 = r14, 0
(p6) br.cond.dptk .L5
.L4:
ld4 r14 = [r34]
;;
cmp4.ge p6, p7 = 96, r14
- ;;
- (p6) adds r14 = 1, r0
- ;;
- (p7) adds r14 = 0, r0
- ;;
- tbit.nz p6, p7 = r14, 0
(p6) br.cond.dptk .L6
ld4 r14 = [r34]
;;
cmp4.lt p6, p7 = 122, r14
- ;;
- (p6) adds r14 = 1, r0
- ;;
- (p7) adds r14 = 0, r0
- ;;
- tbit.nz p6, p7 = r14, 0
(p6) br.cond.dptk .L6
.L5:
addl r14 = @ltoffx(__SB_masks#), r1
@@ -108,42 +74,26 @@
;;
ld4 r14 = [r14]
;;
- addp4 r14 = 0,r14
- ;;
cmp.eq p6, p7 = 0, r14
- ;;
- (p6) adds r14 = 1, r0
- ;;
- (p7) adds r14 = 0, r0
- ;;
- tbit.nz p6, p7 = r14, 0
(p6) br.cond.dptk .L7
addl r14 = @ltoffx(__SB_masks#), r1
;;
ld8.mov r14 = [r14], __SB_masks#
;;
ld4 r14 = [r14]
- ;;
- addp4 r14 = 0,r14
ld4 r15 = [r34]
;;
shladd r15 = r15, 2, r0
;;
add r14 = r15, r14
;;
- addp4 r14 = 0,r14
+ addp4 r14 = r14, r0
;;
ld4 r14 = [r14]
;;
and r14 = 64, r14
;;
cmp4.eq p6, p7 = 0, r14
- ;;
- (p6) adds r14 = 1, r0
- ;;
- (p7) adds r14 = 0, r0
- ;;
- tbit.nz p6, p7 = r14, 0
(p6) br.cond.dptk .L8
br .L9
;;
@@ -154,33 +104,15 @@
mov r14 = r8
;;
cmp4.ne p6, p7 = 0, r14
- ;;
- (p6) adds r14 = 1, r0
- ;;
- (p7) adds r14 = 0, r0
- ;;
- tbit.nz p6, p7 = r14, 0
(p6) br.cond.dptk .L9
.L8:
ld4 r14 = [r34]
;;
cmp4.ge p6, p7 = 96, r14
- ;;
- (p6) adds r14 = 1, r0
- ;;
- (p7) adds r14 = 0, r0
- ;;
- tbit.nz p6, p7 = r14, 0
(p6) br.cond.dptk .L9
ld4 r14 = [r34]
;;
cmp4.ge p6, p7 = 122, r14
- ;;
- (p6) adds r14 = 1, r0
- ;;
- (p7) adds r14 = 0, r0
- ;;
- tbit.nz p6, p7 = r14, 0
(p6) br.cond.dptk .L6
.L9:
ld4 r36 = [r34]
@@ -190,22 +122,10 @@
ld4 r14 = [r34]
;;
cmp4.ge p6, p7 = 96, r14
- ;;
- (p6) adds r14 = 1, r0
- ;;
- (p7) adds r14 = 0, r0
- ;;
- tbit.nz p6, p7 = r14, 0
(p6) br.cond.dptk .L10
ld4 r14 = [r34]
;;
cmp4.lt p6, p7 = 122, r14
- ;;
- (p6) adds r14 = 1, r0
- ;;
- (p7) adds r14 = 0, r0
- ;;
- tbit.nz p6, p7 = r14, 0
(p6) br.cond.dptk .L10
ld4 r14 = [r34]
;;
@@ -216,13 +136,7 @@
ld4 r14 = [r34]
.L11:
;;
- cmp4.eq p6, p7 = r14, r15
- ;;
- (p6) adds r14 = 1, r0
- ;;
- (p7) adds r14 = 0, r0
- ;;
- tbit.nz p6, p7 = r14, 0
+ cmp4.eq p6, p7 = r15, r14
(p6) br.cond.dptk .L12
.L6:
addl r14 = 2, r0
@@ -239,12 +153,6 @@
addl r15 = 255, r0
;;
cmp4.ge p6, p7 = r15, r14
- ;;
- (p6) adds r14 = 1, r0
- ;;
- (p7) adds r14 = 0, r0
- ;;
- tbit.nz p6, p7 = r14, 0
(p6) br.cond.dptk .L14
mov r14 = r0
.L13:
Compiling the gcc-4.9.4 conftest.s with the gcc-8.3.0 stage 1 compiler and
executing it works fine. Doing the reverse (using gcc-4.9.4 to generate an
executable from the gcc-8.3.0 stage 1 generated conftest.s) reproduces the
segfault.
More information about the Gcc-bugs
mailing list