public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/97431] New: [SH] Python crashes with 'Segmentation fault with -finline-small-functions
@ 2020-10-15 0:05 glaubitz at physik dot fu-berlin.de
2020-10-15 0:36 ` [Bug target/97431] " bugdal at aerifal dot cx
` (7 more replies)
0 siblings, 8 replies; 9+ messages in thread
From: glaubitz at physik dot fu-berlin.de @ 2020-10-15 0:05 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97431
Bug ID: 97431
Summary: [SH] Python crashes with 'Segmentation fault with
-finline-small-functions
Product: gcc
Version: 10.2.0
URL: https://buildd.debian.org/status/fetch.php?pkg=python3
.9&arch=sh4&ver=3.9.0-1&stamp=1601938112&raw=0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: glaubitz at physik dot fu-berlin.de
CC: bugdal at aerifal dot cx, kkojima at gcc dot gnu.org,
olegendo at gcc dot gnu.org, ysato at users dot sourceforge.jp
Target Milestone: ---
Target: sh*-*-*
Building Python 3.9 on Debian/sh4 unstable with -finline-small-functions causes
the Python interpreter to segfault during build.
Backtrace:
Program received signal SIGSEGV, Segmentation fault.
long_richcompare (self=0x2a15f490, other=0x2a15f4a0, op=<optimized out>) at
../Objects/longobject.c:3031
3031 long_richcompare(PyObject *self, PyObject *other, int op)
(gdb) bt
#0 long_richcompare (self=0x2a15f490, other=0x2a15f4a0, op=<optimized out>) at
../Objects/longobject.c:3031
#1 0x2964f740 in do_richcompare (op=5, w=0x2a15f4a0, v=0x2a15f490,
tstate=0x4154e8) at ../Objects/object.c:673
#2 PyObject_RichCompare (v=0x2a15f490, w=0x2a15f4a0, op=5) at
../Objects/object.c:723
#3 0x295cde98 in _PyEval_EvalFrameDefault (tstate=<optimized out>,
f=<optimized out>, throwflag=<optimized out>)
at ../Python/ceval.c:2978
#4 0x296d689c in _PyEval_EvalFrame (throwflag=0, f=0x2a19f448,
tstate=0x4154e8) at ../Include/internal/pycore_ceval.h:40
#5 _PyEval_EvalCode (tstate=0x4154e8, _co=<optimized out>, globals=<optimized
out>, locals=<optimized out>,
args=0x2a1b5458, argcount=3, kwnames=0x0, kwargs=0x2a1b5464, kwcount=0,
kwstep=1, defs=0x0, defcount=0,
kwdefs=0x2a1a3d70, closure=0x0, name=0x2a198470, qualname=0x2a198470) at
../Python/ceval.c:4299
#6 0x2960d8ac in _PyFunction_Vectorcall (func=<optimized out>,
stack=0x2a1b5458, nargsf=<optimized out>,
kwnames=<optimized out>) at ../Objects/call.c:395
#7 0x295d1ae0 in _PyObject_VectorcallTstate (kwnames=0x0, nargsf=<optimized
out>, args=<optimized out>,
callable=0x2a170e80, tstate=<optimized out>) at
../Include/cpython/abstract.h:118
#8 PyObject_Vectorcall (kwnames=0x0, nargsf=<optimized out>, args=<optimized
out>, callable=0x2a170e80)
at ../Include/cpython/abstract.h:127
#9 call_function (kwnames=0x0, oparg=<optimized out>, pp_stack=<synthetic
pointer>, tstate=0x4154e8)
at ../Python/ceval.c:5044
#10 _PyEval_EvalFrameDefault (tstate=<optimized out>, f=<optimized out>,
throwflag=<optimized out>)
at ../Python/ceval.c:3490
#11 0x295cac90 in _PyEval_EvalFrame (throwflag=0, f=0x2a1b5318,
tstate=0x4154e8) at ../Include/internal/pycore_ceval.h:40
#12 function_code_fastcall (tstate=0x4154e8, co=<optimized out>,
args=0x2a1b1574, nargs=1, globals=0x2a1a3ca8)
at ../Objects/call.c:329
#13 0x2960d990 in _PyFunction_Vectorcall (func=<optimized out>,
stack=0x2a1b1570, nargsf=<optimized out>,
kwnames=<optimized out>) at ../Objects/call.c:366
#14 0x295d1ae0 in _PyObject_VectorcallTstate (kwnames=0x0, nargsf=<optimized
out>, args=<optimized out>,
callable=0x2a1af460, tstate=<optimized out>) at
../Include/cpython/abstract.h:118
#15 PyObject_Vectorcall (kwnames=0x0, nargsf=<optimized out>, args=<optimized
out>, callable=0x2a1af460)
at ../Include/cpython/abstract.h:127
Disassembly:
(gdb) x/-10i $pc
0x296318d4 <long_richcompare+132>: rts
0x296318d6 <long_richcompare+134>: mov.l @r15+,r8
0x296318d8 <long_richcompare+136>: mov.l 0x296318f4
<long_richcompare+164>,r0 ! 0x8b8
0x296318da <long_richcompare+138>: mov.l @(r0,r12),r0
0x296318dc <long_richcompare+140>: mov.l @r0,r1
0x296318de <long_richcompare+142>: add #1,r1
0x296318e0 <long_richcompare+144>: mov.l r1,@r0
0x296318e2 <long_richcompare+146>: mov.l @r15+,r12
0x296318e4 <long_richcompare+148>: rts
0x296318e6 <long_richcompare+150>: mov.l @r15+,r8
(gdb) x/10i $pc
=> 0x296318e8 <long_richcompare+152>: mov.l r9,@(16,r13)
0x296318ea <long_richcompare+154>: mov.b @(r0,r3),r0
0x296318ec <long_richcompare+156>: .word 0x0000
0x296318ee <long_richcompare+158>: .word 0x0100
0x296318f0 <long_richcompare+160>: .word 0x0a70
0x296318f2 <long_richcompare+162>: .word 0x0000
0x296318f4 <long_richcompare+164>: .word 0x08b8
0x296318f6 <long_richcompare+166>: .word 0x0000
0x296318f8 <long_richcompare+168>: mova 0x29631904
<long_richcompare+180>,r0
0x296318fa <long_richcompare+170>: add r6,r6
(gdb)
Full build log in:
https://buildd.debian.org/status/fetch.php?pkg=python3.9&arch=sh4&ver=3.9.0-1&stamp=1601938112&raw=0
Let me know where to dig next.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug target/97431] [SH] Python crashes with 'Segmentation fault with -finline-small-functions
2020-10-15 0:05 [Bug target/97431] New: [SH] Python crashes with 'Segmentation fault with -finline-small-functions glaubitz at physik dot fu-berlin.de
@ 2020-10-15 0:36 ` bugdal at aerifal dot cx
2020-10-15 1:53 ` ysato at users dot sourceforge.jp
` (6 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: bugdal at aerifal dot cx @ 2020-10-15 0:36 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97431
--- Comment #1 from Rich Felker <bugdal at aerifal dot cx> ---
Do you have a complete disassembly of the function it crashed in and register
dump at the point of crash? That would help.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug target/97431] [SH] Python crashes with 'Segmentation fault with -finline-small-functions
2020-10-15 0:05 [Bug target/97431] New: [SH] Python crashes with 'Segmentation fault with -finline-small-functions glaubitz at physik dot fu-berlin.de
2020-10-15 0:36 ` [Bug target/97431] " bugdal at aerifal dot cx
@ 2020-10-15 1:53 ` ysato at users dot sourceforge.jp
2020-10-15 8:03 ` glaubitz at physik dot fu-berlin.de
` (5 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: ysato at users dot sourceforge.jp @ 2020-10-15 1:53 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97431
--- Comment #2 from Yoshinori Sato <ysato at users dot sourceforge.jp> ---
Since 0x296318e8 is data, we need to investigate where we jumped.
The backtrace looks normal, so I think you're getting anomalous jumps when
optimizing long_richcompare.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug target/97431] [SH] Python crashes with 'Segmentation fault with -finline-small-functions
2020-10-15 0:05 [Bug target/97431] New: [SH] Python crashes with 'Segmentation fault with -finline-small-functions glaubitz at physik dot fu-berlin.de
2020-10-15 0:36 ` [Bug target/97431] " bugdal at aerifal dot cx
2020-10-15 1:53 ` ysato at users dot sourceforge.jp
@ 2020-10-15 8:03 ` glaubitz at physik dot fu-berlin.de
2020-10-15 13:39 ` olegendo at gcc dot gnu.org
` (4 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: glaubitz at physik dot fu-berlin.de @ 2020-10-15 8:03 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97431
--- Comment #3 from John Paul Adrian Glaubitz <glaubitz at physik dot fu-berlin.de> ---
(In reply to Rich Felker from comment #1)
> Do you have a complete disassembly of the function it crashed in and
> register dump at the point of crash? That would help.
Register dump:
(gdb) info registers
r0 0x296318e8 694360296
r1 0x1 1
r2 0x1041400 17044480
r3 0x3e8 1000
r4 0x2a15f490 706081936
r5 0x2a15f4a0 706081952
r6 0x5 5
r7 0x0 0
r8 0xffffffff -1
r9 0x4154e8 4281576
r10 0x2a15f490 706081936
r11 0x5 5
r12 0x299f367c 698300028
r13 0x8b8 2232
r14 0x2a15f4a0 706081952
r15 0x7bffea64 2080369252
pc 0x296318e8 694360296
pr 0x2964f740 694482752
gbr 0x29576d78 693595512
mach 0xa 10
macl 0x0 0
(gdb)
Disassembled function:
Dump of assembler code for function long_richcompare:
0x29631850 <+0>: mov.l r8,@-r15
0x29631852 <+2>: mova 0x296318e8 <long_richcompare+152>,r0
0x29631854 <+4>: mov.l r12,@-r15
0x29631856 <+6>: mov.l @(4,r4),r1
0x29631858 <+8>: mov.l 0x296318e8 <long_richcompare+152>,r12 !
0x3c1d94
0x2963185a <+10>: add #64,r1
0x2963185c <+12>: mov.l @(20,r1),r2
0x2963185e <+14>: mov.l 0x296318ec <long_richcompare+156>,r1 !
0x1000000
0x29631860 <+16>: tst r1,r2
0x29631862 <+18>: bt.s 0x296318d8 <long_richcompare+136>
0x29631864 <+20>: add r0,r12
0x29631866 <+22>: mov.l @(4,r5),r2
0x29631868 <+24>: add #64,r2
0x2963186a <+26>: mov.l @(20,r2),r2
0x2963186c <+28>: tst r1,r2
0x2963186e <+30>: bt.s 0x296318d8 <long_richcompare+136>
0x29631870 <+32>: cmp/eq r5,r4
0x29631872 <+34>: bt.s 0x29631940 <long_richcompare+240>
0x29631874 <+36>: mov #5,r1
0x29631876 <+38>: mov.l @(8,r4),r7
0x29631878 <+40>: mov.l @(8,r5),r1
0x2963187a <+42>: mov r7,r8
0x2963187c <+44>: cmp/eq r1,r7
0x2963187e <+46>: bf.s 0x296318e8 <long_richcompare+152>
0x29631880 <+48>: sub r1,r8
0x29631882 <+50>: cmp/pz r7
0x29631884 <+52>: mov r7,r1
0x29631886 <+54>: bt 0x2963188a <long_richcompare+58>
0x29631888 <+56>: neg r7,r1
0x2963188a <+58>: mov r1,r2
0x2963188c <+60>: add r2,r2
0x2963188e <+62>: add #12,r2
0x29631890 <+64>: add r2,r4
0x29631892 <+66>: add r2,r5
0x29631894 <+68>: mov r1,r2
0x29631896 <+70>: mov #-1,r3
0x29631898 <+72>: add #-1,r1
0x2963189a <+74>: cmp/ge r3,r1
0x2963189c <+76>: bf.s 0x2963193c <long_richcompare+236>
0x2963189e <+78>: add #1,r2
0x296318a0 <+80>: dt r2
0x296318a2 <+82>: bt.s 0x296318ba <long_richcompare+106>
0x296318a4 <+84>: cmp/pz r7
0x296318a6 <+86>: add #-2,r4
0x296318a8 <+88>: add #-2,r5
0x296318aa <+90>: mov.w @r4,r1
0x296318ac <+92>: mov.w @r5,r3
0x296318ae <+94>: sub r3,r1
0x296318b0 <+96>: exts.w r1,r1
0x296318b2 <+98>: tst r1,r1
0x296318b4 <+100>: bt.s 0x296318a0 <long_richcompare+80>
0x296318b6 <+102>: cmp/pz r7
0x296318b8 <+104>: mov r1,r8
0x296318ba <+106>: bt 0x296318be <long_richcompare+110>
0x296318bc <+108>: neg r8,r8
0x296318be <+110>: mov #5,r1
0x296318c0 <+112>: cmp/hi r1,r6
0x296318c2 <+114>: bf 0x296318f8 <long_richcompare+168>
0x296318c4 <+116>: cmp/pz r8
0x296318c6 <+118>: bt 0x29631914 <long_richcompare+196>
0x296318c8 <+120>: mov.l 0x296318f0 <long_richcompare+160>,r0 ! 0xa70
0x296318ca <+122>: mov.l @(r0,r12),r0
0x296318cc <+124>: mov.l @r0,r1
0x296318ce <+126>: add #1,r1
0x296318d0 <+128>: mov.l r1,@r0
0x296318d2 <+130>: mov.l @r15+,r12
0x296318d4 <+132>: rts
0x296318d6 <+134>: mov.l @r15+,r8
0x296318d8 <+136>: mov.l 0x296318f4 <long_richcompare+164>,r0 ! 0x8b8
0x296318da <+138>: mov.l @(r0,r12),r0
0x296318dc <+140>: mov.l @r0,r1
0x296318de <+142>: add #1,r1
0x296318e0 <+144>: mov.l r1,@r0
0x296318e2 <+146>: mov.l @r15+,r12
0x296318e4 <+148>: rts
0x296318e6 <+150>: mov.l @r15+,r8
=> 0x296318e8 <+152>: mov.l r9,@(16,r13)
0x296318ea <+154>: mov.b @(r0,r3),r0
0x296318ec <+156>: .word 0x0000
0x296318ee <+158>: .word 0x0100
0x296318f0 <+160>: .word 0x0a70
0x296318f2 <+162>: .word 0x0000
0x296318f4 <+164>: .word 0x08b8
0x296318f6 <+166>: .word 0x0000
0x296318f8 <+168>: mova 0x29631904 <long_richcompare+180>,r0
0x296318fa <+170>: add r6,r6
0x296318fc <+172>: mov.w @(r0,r6),r6
0x296318fe <+174>: braf r6
0x29631900 <+176>: nop
0x29631902 <+178>: nop
0x29631904 <+180>: mov.l @(r0,r0),r0
0x29631906 <+182>: stc vbr,r0
0x29631908 <+184>: mov.l @(r0,r5),r0
0x2963190a <+186>: .word 0x0032
0x2963190c <+188>: sts pr,r0
0x2963190e <+190>: .word 0xffc2
0x29631910 <+192>: cmp/pz r8
0x29631912 <+194>: bt 0x296318c8 <long_richcompare+120>
0x29631914 <+196>: mov.l 0x29631950 <long_richcompare+256>,r0 ! 0xb80
0x29631916 <+198>: mov.l @(r0,r12),r0
0x29631918 <+200>: mov.l @r0,r1
0x2963191a <+202>: add #1,r1
0x2963191c <+204>: mov.l r1,@r0
0x2963191e <+206>: mov.l @r15+,r12
0x29631920 <+208>: rts
0x29631922 <+210>: mov.l @r15+,r8
0x29631924 <+212>: cmp/pl r8
0x29631926 <+214>: bt 0x296318c8 <long_richcompare+120>
0x29631928 <+216>: bra 0x29631914 <long_richcompare+196>
0x2963192a <+218>: nop
0x2963192c <+220>: cmp/pl r8
0x2963192e <+222>: bt 0x29631914 <long_richcompare+196>
0x29631930 <+224>: bra 0x296318c8 <long_richcompare+120>
0x29631932 <+226>: nop
0x29631934 <+228>: tst r8,r8
0x29631936 <+230>: bf 0x29631914 <long_richcompare+196>
0x29631938 <+232>: bra 0x296318c8 <long_richcompare+120>
0x2963193a <+234>: nop
0x2963193c <+236>: bra 0x296318a0 <long_richcompare+80>
0x2963193e <+238>: mov #1,r2
0x29631940 <+240>: cmp/hi r1,r6
0x29631942 <+242>: bt 0x296318e8 <long_richcompare+152>
0x29631944 <+244>: mova 0x29631954 <long_richcompare+260>,r0
0x29631946 <+246>: add r6,r6
0x29631948 <+248>: mov.w @(r0,r6),r6
0x2963194a <+250>: braf r6
0x2963194c <+252>: nop
0x2963194e <+254>: nop
0x29631950 <+256>: .word 0x0b80
0x29631952 <+258>: .word 0x0000
0x29631954 <+260>: .word 0xff7a
0x29631956 <+262>: .word 0xffc6
0x29631958 <+264>: .word 0xffc6
0x2963195a <+266>: .word 0xff7a
0x2963195c <+268>: .word 0xff7a
0x2963195e <+270>: .word 0xffc6
0x29631960 <+272>: tst r8,r8
0x29631962 <+274>: bf 0x296318c8 <long_richcompare+120>
0x29631964 <+276>: bra 0x29631914 <long_richcompare+196>
0x29631966 <+278>: nop
End of assembler dump.
C source of function can be found here:
https://sources.debian.org/src/python3.9/3.9.0-1/Objects/longobject.c/?hl=3031#L3031
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug target/97431] [SH] Python crashes with 'Segmentation fault with -finline-small-functions
2020-10-15 0:05 [Bug target/97431] New: [SH] Python crashes with 'Segmentation fault with -finline-small-functions glaubitz at physik dot fu-berlin.de
` (2 preceding siblings ...)
2020-10-15 8:03 ` glaubitz at physik dot fu-berlin.de
@ 2020-10-15 13:39 ` olegendo at gcc dot gnu.org
2020-10-15 13:47 ` glaubitz at physik dot fu-berlin.de
` (3 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: olegendo at gcc dot gnu.org @ 2020-10-15 13:39 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97431
Oleg Endo <olegendo at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Ever confirmed|0 |1
Last reconfirmed| |2020-10-15
Status|UNCONFIRMED |NEW
--- Comment #4 from Oleg Endo <olegendo at gcc dot gnu.org> ---
(In reply to John Paul Adrian Glaubitz from comment #3)
> r11 0x5 5
> r12 0x299f367c 698300028
> r13 0x8b8 2232
> r14 0x2a15f4a0 706081952
>
> Disassembled function:
>
> Dump of assembler code for function long_richcompare:
> 0x29631850 <+0>: mov.l r8,@-r15
> 0x29631852 <+2>: mova 0x296318e8 <long_richcompare+152>,r0
> 0x29631854 <+4>: mov.l r12,@-r15
> 0x29631856 <+6>: mov.l @(4,r4),r1
> 0x29631858 <+8>: mov.l 0x296318e8 <long_richcompare+152>,r12 ! 0x3c1d94
> 0x2963185a <+10>: add #64,r1
> 0x2963185c <+12>: mov.l @(20,r1),r2
> 0x2963185e <+14>: mov.l 0x296318ec <long_richcompare+156>,r1 ! 0x1000000
> 0x29631860 <+16>: tst r1,r2
> 0x29631862 <+18>: bt.s 0x296318d8 <long_richcompare+136>
> 0x29631864 <+20>: add r0,r12
> 0x29631866 <+22>: mov.l @(4,r5),r2
> 0x29631868 <+24>: add #64,r2
> 0x2963186a <+26>: mov.l @(20,r2),r2
> 0x2963186c <+28>: tst r1,r2
> 0x2963186e <+30>: bt.s 0x296318d8 <long_richcompare+136>
> 0x29631870 <+32>: cmp/eq r5,r4
> 0x29631872 <+34>: bt.s 0x29631940 <long_richcompare+240>
> 0x29631874 <+36>: mov #5,r1
> 0x29631876 <+38>: mov.l @(8,r4),r7
> 0x29631878 <+40>: mov.l @(8,r5),r1
> 0x2963187a <+42>: mov r7,r8
> 0x2963187c <+44>: cmp/eq r1,r7
> 0x2963187e <+46>: bf.s 0x296318e8 <long_richcompare+152>
> 0x29631880 <+48>: sub r1,r8
>
> ....
>
> 0x296318e6 <+150>: mov.l @r15+,r8
> => 0x296318e8 <+152>: mov.l r9,@(16,r13)
Just to point out the obvious, r13 is never initialized nor referenced by
anything else throughout the function. What are the compiler options?
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug target/97431] [SH] Python crashes with 'Segmentation fault with -finline-small-functions
2020-10-15 0:05 [Bug target/97431] New: [SH] Python crashes with 'Segmentation fault with -finline-small-functions glaubitz at physik dot fu-berlin.de
` (3 preceding siblings ...)
2020-10-15 13:39 ` olegendo at gcc dot gnu.org
@ 2020-10-15 13:47 ` glaubitz at physik dot fu-berlin.de
2020-10-15 14:03 ` olegendo at gcc dot gnu.org
` (2 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: glaubitz at physik dot fu-berlin.de @ 2020-10-15 13:47 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97431
--- Comment #5 from John Paul Adrian Glaubitz <glaubitz at physik dot fu-berlin.de> ---
(In reply to Oleg Endo from comment #4)
> Just to point out the obvious, r13 is never initialized nor referenced by
> anything else throughout the function. What are the compiler options?
One additional observation. It seems that the static build does not crash, just
the shared build.
>From the build log, we have for the shared build that crashes:
sh4-linux-gnu-gcc -pthread -c -Wno-unused-result -Wsign-compare -DNDEBUG -g
-fwrapv -O3 -Wall -g -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector
-Wformat -Werror=format-security -std=c99 -Wextra -Wno-unused-result
-Wno-unused-parameter -Wno-missing-field-initializers
-Werror=implicit-function-declaration -fvisibility=hidden
-I../Include/internal -IObjects -IInclude -IPython -I. -I../Include -Wdate-time
-D_FORTIFY_SOURCE=2 -fPIC -DPy_BUILD_CORE -o Objects/longobject.o
../Objects/longobject.c
For the static build, which did not crash in my test, we have:
sh4-linux-gnu-gcc -pthread -c -Wno-unused-result -Wsign-compare -DNDEBUG -g
-fwrapv -O3 -Wall -g -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector
-Wformat -Werror=format-security -std=c99 -Wextra -Wno-unused-result
-Wno-unused-parameter -Wno-missing-field-initializers
-Werror=implicit-function-declaration -fvisibility=hidden
-I../Include/internal -IObjects -IInclude -IPython -I. -I../Include -Wdate-time
-D_FORTIFY_SOURCE=2 -DPy_BUILD_CORE -o Objects/longobject.o
../Objects/longobject.c
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug target/97431] [SH] Python crashes with 'Segmentation fault with -finline-small-functions
2020-10-15 0:05 [Bug target/97431] New: [SH] Python crashes with 'Segmentation fault with -finline-small-functions glaubitz at physik dot fu-berlin.de
` (4 preceding siblings ...)
2020-10-15 13:47 ` glaubitz at physik dot fu-berlin.de
@ 2020-10-15 14:03 ` olegendo at gcc dot gnu.org
2020-10-15 14:15 ` glaubitz at physik dot fu-berlin.de
2020-10-18 18:55 ` danglin at gcc dot gnu.org
7 siblings, 0 replies; 9+ messages in thread
From: olegendo at gcc dot gnu.org @ 2020-10-15 14:03 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97431
--- Comment #6 from Oleg Endo <olegendo at gcc dot gnu.org> ---
(In reply to John Paul Adrian Glaubitz from comment #5)
So the difference seems to be only the -fPIC option? Can you get the
preprocessed .i file with -save-temps ?
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug target/97431] [SH] Python crashes with 'Segmentation fault with -finline-small-functions
2020-10-15 0:05 [Bug target/97431] New: [SH] Python crashes with 'Segmentation fault with -finline-small-functions glaubitz at physik dot fu-berlin.de
` (5 preceding siblings ...)
2020-10-15 14:03 ` olegendo at gcc dot gnu.org
@ 2020-10-15 14:15 ` glaubitz at physik dot fu-berlin.de
2020-10-18 18:55 ` danglin at gcc dot gnu.org
7 siblings, 0 replies; 9+ messages in thread
From: glaubitz at physik dot fu-berlin.de @ 2020-10-15 14:15 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97431
--- Comment #7 from John Paul Adrian Glaubitz <glaubitz at physik dot fu-berlin.de> ---
Created attachment 49380
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=49380&action=edit
Archive containing C source, preprocessed source as well as assembly and object
output
I have created the pre-processed source with the following command line:
sh4-linux-gnu-gcc -pthread -c -Wno-unused-result -Wsign-compare -DNDEBUG -g
-fwrapv -O3 -Wall -g
-fdebug-prefix-map=//build/python3.9-m4kjWv/python3.9-3.9.0=. -fstack-protector
-Wformat -Werror=format-security -std=c99 -Wextra -Wno-unused-result
-Wno-unused-parameter -Wno-missing-field-initializers
-Werror=implicit-function-declaration -fvisibility=hidden
-I../Include/internal -IObjects -IInclude -IPython -I. -I../Include -Wdate-time
-D_FORTIFY_SOURCE=2 -fPIC -DPy_BUILD_CORE -o Objects/longobject.o
../Objects/longobject.c -save-temps
I have included the C sources, assembly output and resulting object file to
make sure we got everything in one archive.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug target/97431] [SH] Python crashes with 'Segmentation fault with -finline-small-functions
2020-10-15 0:05 [Bug target/97431] New: [SH] Python crashes with 'Segmentation fault with -finline-small-functions glaubitz at physik dot fu-berlin.de
` (6 preceding siblings ...)
2020-10-15 14:15 ` glaubitz at physik dot fu-berlin.de
@ 2020-10-18 18:55 ` danglin at gcc dot gnu.org
7 siblings, 0 replies; 9+ messages in thread
From: danglin at gcc dot gnu.org @ 2020-10-18 18:55 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97431
John David Anglin <danglin at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |danglin at gcc dot gnu.org
--- Comment #8 from John David Anglin <danglin at gcc dot gnu.org> ---
The same or a similar problem is present on hppa. Building Python 3.9 with
-finline-small-functions causes wrong code and build failure:
https://buildd.debian.org/status/fetch.php?pkg=python3.9&arch=hppa&ver=3.9.0-4&stamp=1603018299&raw=0
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2020-10-18 18:55 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-10-15 0:05 [Bug target/97431] New: [SH] Python crashes with 'Segmentation fault with -finline-small-functions glaubitz at physik dot fu-berlin.de
2020-10-15 0:36 ` [Bug target/97431] " bugdal at aerifal dot cx
2020-10-15 1:53 ` ysato at users dot sourceforge.jp
2020-10-15 8:03 ` glaubitz at physik dot fu-berlin.de
2020-10-15 13:39 ` olegendo at gcc dot gnu.org
2020-10-15 13:47 ` glaubitz at physik dot fu-berlin.de
2020-10-15 14:03 ` olegendo at gcc dot gnu.org
2020-10-15 14:15 ` glaubitz at physik dot fu-berlin.de
2020-10-18 18:55 ` danglin at gcc dot gnu.org
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).