public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug modula2/109125] New: [13 regression] SIGBUS in m2pim_ldtoa_ldtoa
@ 2023-03-14 10:08 ro at gcc dot gnu.org
2023-03-14 10:08 ` [Bug modula2/109125] " ro at gcc dot gnu.org
` (14 more replies)
0 siblings, 15 replies; 16+ messages in thread
From: ro at gcc dot gnu.org @ 2023-03-14 10:08 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109125
Bug ID: 109125
Summary: [13 regression] SIGBUS in m2pim_ldtoa_ldtoa
Product: gcc
Version: 13.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: modula2
Assignee: gaius at gcc dot gnu.org
Reporter: ro at gcc dot gnu.org
Target Milestone: ---
Host: sparc-sun-solaris2.11
Target: sparc-sun-solaris2.11
Build: sparc-sun-solaris2.11
Between 20230310 (2eb0191aa104badf3cab127f7f87d371c0fef92b) and 20230313
(7ef44579787af646d5bae13a91a49ef5d2048f5c),
a large number of gm2 tests began to FAIL on Solaris/SPARC (both 32 and
64-bit):
+FAIL: gm2/extensions/run/pass/real32.mod execution, -O
+FAIL: gm2/extensions/run/pass/real32.mod execution, -O -g
+FAIL: gm2/extensions/run/pass/real32.mod execution, -O3 -fomit-frame-pointer
+FAIL: gm2/extensions/run/pass/real32.mod execution, -O3 -fomit-frame-pointer
-finline-functions
+FAIL: gm2/extensions/run/pass/real32.mod execution, -Os
+FAIL: gm2/extensions/run/pass/real32.mod execution, -g
and many more.
The last failure reports
RTExceptions.mod:649:35: In invalidloc
RTExceptions.mod:649:35:invalid address referenced
and gdb shows
Thread 2 received signal SIGBUS, Bus error.
[Switching to Thread 1 (LWP 1)]
0x00027f8c in m2pim_ldtoa_ldtoa (d=<optimized out>, mode=1, ndigits=100,
decpt=0xffbfe7ec, sign=0xffbfe7eb)
at /vol/gcc/src/hg/master/local/libgm2/libm2pim/ldtoa.cc:162
162 *sign = IMPORT(dtoa,calcsign) (p, MAX_FP_DIGITS + 20);
(gdb) bt
#0 0x00027f8c in m2pim_ldtoa_ldtoa (d=<optimized out>, mode=1, ndigits=100,
decpt=0xffbfe7ec, sign=0xffbfe7eb)
at /vol/gcc/src/hg/master/local/libgm2/libm2pim/ldtoa.cc:162
#1 0x00025abc in m2pim_StringConvert_LongrealToString (x=<optimized out>,
TotalWidth=9, FractionWidth=8)
at
/vol/gcc/src/hg/master/local/libgm2/libm2pim/../../gcc/m2/gm2-libs/StringConvert.mod:758
#2 0x0001a0f8 in _M2_real32_init (argc=1, argv=0xffbfea64, envp=0xffbfea6c)
at
/vol/gcc/src/hg/master/local/gcc/testsuite/gm2/extensions/run/pass/real32.mod:32
#3 0x0001cfc8 in m2pim_M2Dependent_ConstructModules (
applicationmodule=<optimized out>, libname=<optimized out>, argc=1,
argv=0xffbfea64, envp=0xffbfea6c)
at
/vol/gcc/src/hg/master/local/libgm2/libm2pim/../../gcc/m2/gm2-libs/M2Dependent.mod:813
#4 0x0001a7c8 in _M2_init (argc=1, argv=0xffbfea64, envp=0xffbfea6c)
at
/vol/gcc/src/hg/master/local/gcc/testsuite/gm2/extensions/run/pass/real32.mod:18
#5 0x0001a840 in main (argc=1, argv=0xffbfea64, envp=0xffbfea6c)
at
/vol/gcc/src/hg/master/local/gcc/testsuite/gm2/extensions/run/pass/real32.mod:18
(gdb) display/i $pc
1: x/i $pc
=> 0x27f8c <m2pim_ldtoa_ldtoa(long double, int, int, int*, int*)+124>:
st %o0, [ %i4 ]
(gdb) p/x $o0
$1 = 0x0
(gdb) p/x $i4
$2 = 0xffbfe7eb
Storing a 32-bit variable into an non-32-bit aligned destination is a no-no
on strict-alignment targets like SPARC.
This is no doubt due to
commit 431c06691dcbb84c7d999d91202537442e6a60f0
Author: Gaius Mulley <gaiusmod2@gmail.com>
Date: Sun Mar 12 13:27:23 2023 +0000
[PR modula2/109089] implementation of boolean should be C++/C bool
^ permalink raw reply [flat|nested] 16+ messages in thread
* [Bug modula2/109125] [13 regression] SIGBUS in m2pim_ldtoa_ldtoa
2023-03-14 10:08 [Bug modula2/109125] New: [13 regression] SIGBUS in m2pim_ldtoa_ldtoa ro at gcc dot gnu.org
@ 2023-03-14 10:08 ` ro at gcc dot gnu.org
2023-03-14 16:41 ` gaius at gcc dot gnu.org
` (13 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: ro at gcc dot gnu.org @ 2023-03-14 10:08 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109125
Rainer Orth <ro at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|--- |13.0
^ permalink raw reply [flat|nested] 16+ messages in thread
* [Bug modula2/109125] [13 regression] SIGBUS in m2pim_ldtoa_ldtoa
2023-03-14 10:08 [Bug modula2/109125] New: [13 regression] SIGBUS in m2pim_ldtoa_ldtoa ro at gcc dot gnu.org
2023-03-14 10:08 ` [Bug modula2/109125] " ro at gcc dot gnu.org
@ 2023-03-14 16:41 ` gaius at gcc dot gnu.org
2023-03-14 17:25 ` gaius at gcc dot gnu.org
` (12 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: gaius at gcc dot gnu.org @ 2023-03-14 16:41 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109125
--- Comment #1 from Gaius Mulley <gaius at gcc dot gnu.org> ---
Created attachment 54662
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=54662&action=edit
Proposed fix
Thanks for the bug report - here is a proposed patch for ldtoa, dtoa and also
termios all of which contained bool int mismatches between the C++/C and their
m2 definition modules.
^ permalink raw reply [flat|nested] 16+ messages in thread
* [Bug modula2/109125] [13 regression] SIGBUS in m2pim_ldtoa_ldtoa
2023-03-14 10:08 [Bug modula2/109125] New: [13 regression] SIGBUS in m2pim_ldtoa_ldtoa ro at gcc dot gnu.org
2023-03-14 10:08 ` [Bug modula2/109125] " ro at gcc dot gnu.org
2023-03-14 16:41 ` gaius at gcc dot gnu.org
@ 2023-03-14 17:25 ` gaius at gcc dot gnu.org
2023-03-14 17:27 ` gaius at gcc dot gnu.org
` (11 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: gaius at gcc dot gnu.org @ 2023-03-14 17:25 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109125
Gaius Mulley <gaius at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |ASSIGNED
Last reconfirmed| |2023-03-14
Ever confirmed|0 |1
^ permalink raw reply [flat|nested] 16+ messages in thread
* [Bug modula2/109125] [13 regression] SIGBUS in m2pim_ldtoa_ldtoa
2023-03-14 10:08 [Bug modula2/109125] New: [13 regression] SIGBUS in m2pim_ldtoa_ldtoa ro at gcc dot gnu.org
` (2 preceding siblings ...)
2023-03-14 17:25 ` gaius at gcc dot gnu.org
@ 2023-03-14 17:27 ` gaius at gcc dot gnu.org
2023-03-14 19:55 ` cvs-commit at gcc dot gnu.org
` (10 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: gaius at gcc dot gnu.org @ 2023-03-14 17:27 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109125
Gaius Mulley <gaius at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Attachment #54662|0 |1
is obsolete| |
--- Comment #2 from Gaius Mulley <gaius at gcc dot gnu.org> ---
Created attachment 54663
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=54663&action=edit
Proposed fix v2
Version 2 of the patch catches some more cases found in the iso libraries.
^ permalink raw reply [flat|nested] 16+ messages in thread
* [Bug modula2/109125] [13 regression] SIGBUS in m2pim_ldtoa_ldtoa
2023-03-14 10:08 [Bug modula2/109125] New: [13 regression] SIGBUS in m2pim_ldtoa_ldtoa ro at gcc dot gnu.org
` (3 preceding siblings ...)
2023-03-14 17:27 ` gaius at gcc dot gnu.org
@ 2023-03-14 19:55 ` cvs-commit at gcc dot gnu.org
2023-03-15 9:05 ` ro at CeBiTec dot Uni-Bielefeld.DE
` (9 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2023-03-14 19:55 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109125
--- Comment #3 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Gaius Mulley <gaius@gcc.gnu.org>:
https://gcc.gnu.org/g:19c5dfc29d83101e415590e778b99e7c37d9b730
commit r13-6671-g19c5dfc29d83101e415590e778b99e7c37d9b730
Author: Gaius Mulley <gaiusmod2@gmail.com>
Date: Tue Mar 14 19:52:11 2023 +0000
PR 109125 Modula2 SIGBUS in m2pim_ldtoa_ldtoa
13 regression failures seen on sparc SIGBUS in m2pim_ldtoa_ldtoa.
This patch fixes int bool parameter mismatches between the
definition modules and their C/C++ implementations.
gcc/m2/ChangeLog:
PR modula2/109125
* gm2-libs-ch/cgetopt.c (cgetopt_SetOption): Replace int
for bool.
* gm2-libs-ch/termios.c (doSetUnset): Replace int for bool.
* gm2-libs/Builtins.mod (isfinitef): Correct typo in return
statement.
libgm2/ChangeLog:
PR modula2/109125
* libm2iso/ErrnoCategory.cc (FALSE): Remove.
(TRUE): Remove.
* libm2iso/wrapsock.c (TRUE): Remove.
(FALSE): Remove.
* libm2iso/wraptime.cc (TRUE): Remove.
(FALSE): Remove.
* libm2pim/cgetopt.cc: Replace int for bool for every BOOLEAN
parameter in the definition module.
* libm2pim/dtoa.cc: Ditto.
* libm2pim/ldtoa.cc: Ditto.
* libm2pim/termios.cc: Ditto.
(doSetUnset): Replace int for bool.
Signed-off-by: Gaius Mulley <gaiusmod2@gmail.com>
^ permalink raw reply [flat|nested] 16+ messages in thread
* [Bug modula2/109125] [13 regression] SIGBUS in m2pim_ldtoa_ldtoa
2023-03-14 10:08 [Bug modula2/109125] New: [13 regression] SIGBUS in m2pim_ldtoa_ldtoa ro at gcc dot gnu.org
` (4 preceding siblings ...)
2023-03-14 19:55 ` cvs-commit at gcc dot gnu.org
@ 2023-03-15 9:05 ` ro at CeBiTec dot Uni-Bielefeld.DE
2023-03-15 13:53 ` gaius at gcc dot gnu.org
` (8 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: ro at CeBiTec dot Uni-Bielefeld.DE @ 2023-03-15 9:05 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109125
--- Comment #4 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> ---
> --- Comment #2 from Gaius Mulley <gaius at gcc dot gnu.org> ---
[...]
> Version 2 of the patch catches some more cases found in the iso libraries.
I've tried that one last night and most of the failures are gone.
Thanks for the super-fix patch.
Some failures remain, however, both 32 and 64-bit again:
+FAIL: gm2/isolib/run/pass/readreal.mod execution, -O
+FAIL: gm2/isolib/run/pass/readreal.mod execution, -O -g
+FAIL: gm2/isolib/run/pass/readreal.mod execution, -O3 -fomit-frame-pointer
+FAIL: gm2/isolib/run/pass/readreal.mod execution, -O3 -fomit-frame-pointer
-finline-functions
+FAIL: gm2/isolib/run/pass/readreal.mod execution, -Os
+FAIL: gm2/isolib/run/pass/readreal.mod execution, -g
+FAIL: gm2/isolib/run/pass/real3.mod execution, -O
+FAIL: gm2/isolib/run/pass/real3.mod execution, -O -g
+FAIL: gm2/isolib/run/pass/real3.mod execution, -O3 -fomit-frame-pointer
+FAIL: gm2/isolib/run/pass/real3.mod execution, -O3 -fomit-frame-pointer
-finline-functions
+FAIL: gm2/isolib/run/pass/real3.mod execution, -Os
+FAIL: gm2/isolib/run/pass/real3.mod execution, -g
+FAIL: gm2/pim/run/pass/cycles.mod execution, -O
+FAIL: gm2/pim/run/pass/cycles.mod execution, -O -g
+FAIL: gm2/pim/run/pass/cycles.mod execution, -O3 -fomit-frame-pointer
+FAIL: gm2/pim/run/pass/cycles.mod execution, -O3 -fomit-frame-pointer
-finline-functions
+FAIL: gm2/pim/run/pass/cycles.mod execution, -Os
+FAIL: gm2/pim/run/pass/cycles.mod execution, -g
+FAIL: gm2/pimlib/logitech/run/pass/realconv.mod execution, -O
+FAIL: gm2/pimlib/logitech/run/pass/realconv.mod execution, -O -g
+FAIL: gm2/pimlib/logitech/run/pass/realconv.mod execution, -O3
-fomit-frame-pointer
+FAIL: gm2/pimlib/logitech/run/pass/realconv.mod execution, -O3
-fomit-frame-pointer -finline-functions
+FAIL: gm2/pimlib/logitech/run/pass/realconv.mod execution, -Os
+FAIL: gm2/pimlib/logitech/run/pass/realconv.mod execution, -g
+FAIL: gm2/pimlib/logitech/run/pass/realinput.mod execution, -O
+FAIL: gm2/pimlib/logitech/run/pass/realinput.mod execution, -O -g
+FAIL: gm2/pimlib/logitech/run/pass/realinput.mod execution, -O3
-fomit-frame-pointer
+FAIL: gm2/pimlib/logitech/run/pass/realinput.mod execution, -O3
-fomit-frame-pointer -finline-functions
+FAIL: gm2/pimlib/logitech/run/pass/realinput.mod execution, -Os
+FAIL: gm2/pimlib/logitech/run/pass/realinput.mod execution, -g
+FAIL: gm2/pimlib/logitech/run/pass/realinput2.mod execution, -O
+FAIL: gm2/pimlib/logitech/run/pass/realinput2.mod execution, -O -g
+FAIL: gm2/pimlib/logitech/run/pass/realinput2.mod execution, -O3
-fomit-frame-pointer
+FAIL: gm2/pimlib/logitech/run/pass/realinput2.mod execution, -O3
-fomit-frame-pointer -finline-functions
+FAIL: gm2/pimlib/logitech/run/pass/realinput2.mod execution, -Os
+FAIL: gm2/pimlib/logitech/run/pass/realinput2.mod execution, -g
+FAIL: gm2/pimlib/logitech/run/pass/realinput3.mod execution, -O
+FAIL: gm2/pimlib/logitech/run/pass/realinput3.mod execution, -O -g
+FAIL: gm2/pimlib/logitech/run/pass/realinput3.mod execution, -O3
-fomit-frame-pointer
+FAIL: gm2/pimlib/logitech/run/pass/realinput3.mod execution, -O3
-fomit-frame-pointer -finline-functions
+FAIL: gm2/pimlib/logitech/run/pass/realinput3.mod execution, -Os
+FAIL: gm2/pimlib/logitech/run/pass/realinput3.mod execution, -g
+FAIL: gm2/types/run/pass/varient4.mod execution, -O
+FAIL: gm2/types/run/pass/varient4.mod execution, -O -g
+FAIL: gm2/types/run/pass/varient4.mod execution, -O3 -fomit-frame-pointer
+FAIL: gm2/types/run/pass/varient4.mod execution, -O3 -fomit-frame-pointer
-finline-functions
+FAIL: gm2/types/run/pass/varient4.mod execution, -Os
+FAIL: gm2/types/run/pass/varient4.mod execution, -g
I've had a look at the readreal.mod one: gm2.log shows
enter a real number: RTExceptions.mod:649:35: In invalidloc
RTExceptions.mod:649:35:invalid address referenced
executed
/var/gcc/regression/master/11.4-gcc/build/gcc/testsuite/gm2/readreal.x0 with
result fail
This seems to be the same failure in all affected cases.
However, when I compile that testcase manually, the exception is
different:
enter a real number: EXCEPTIONS.mod:65:56: In RAISE
EXCEPTIONS.mod:65:56:IOChan: ChanId specified is invalid
[New Thread 1 (LWP 1)]
Thread 2 received signal SIGABRT, Aborted.
[Switching to Thread 1 (LWP 1)]
0xfec18838 in __lwp_sigqueue () from /lib/libc.so.1
1: x/i $pc
=> 0xfec18838 <__lwp_sigqueue+8>:
bcc,a %icc, 0xfec18848 <__lwp_sigqueue+24>
0xfec1883c <__lwp_sigqueue+12>: mov %g0, %o0
(gdb) bt
#0 0xfec18838 in __lwp_sigqueue () from /lib/libc.so.1
#1 0xfeb56a54 in raise () from /lib/libc.so.1
#2 0xfeb27fe0 in abort () from /lib/libc.so.1
#3 0x0002bb60 in m2pim_M2RTS_HALT (exitcode=-1)
at
/vol/gcc/src/hg/master/local/libgm2/libm2pim/../../gcc/m2/gm2-libs/M2RTS.mod:238
#4 0x00037284 in m2pim_RTExceptions_DefaultErrorCatch ()
at
/vol/gcc/src/hg/master/local/libgm2/libm2pim/../../gcc/m2/gm2-libs/RTExceptions.mod:156
#5 0x00022728 in main (argc=1, argv=0xffbfebec, envp=0xffbfebf4)
at
/vol/gcc/src/hg/master/local/gcc/testsuite/gm2/isolib/run/pass/readreal.mod:18
Maybe I'm missing some env variable passed in by the test framework?
^ permalink raw reply [flat|nested] 16+ messages in thread
* [Bug modula2/109125] [13 regression] SIGBUS in m2pim_ldtoa_ldtoa
2023-03-14 10:08 [Bug modula2/109125] New: [13 regression] SIGBUS in m2pim_ldtoa_ldtoa ro at gcc dot gnu.org
` (5 preceding siblings ...)
2023-03-15 9:05 ` ro at CeBiTec dot Uni-Bielefeld.DE
@ 2023-03-15 13:53 ` gaius at gcc dot gnu.org
2023-03-15 14:00 ` ro at CeBiTec dot Uni-Bielefeld.DE
` (7 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: gaius at gcc dot gnu.org @ 2023-03-15 13:53 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109125
--- Comment #5 from Gaius Mulley <gaius at gcc dot gnu.org> ---
readreal.mod requires the input file testnumber to be in the same directory as
the executable invocation.
Or manually create a text file containing:
cat << EOF > testnumber
12.3456
EOF
^ permalink raw reply [flat|nested] 16+ messages in thread
* [Bug modula2/109125] [13 regression] SIGBUS in m2pim_ldtoa_ldtoa
2023-03-14 10:08 [Bug modula2/109125] New: [13 regression] SIGBUS in m2pim_ldtoa_ldtoa ro at gcc dot gnu.org
` (6 preceding siblings ...)
2023-03-15 13:53 ` gaius at gcc dot gnu.org
@ 2023-03-15 14:00 ` ro at CeBiTec dot Uni-Bielefeld.DE
2023-03-15 14:23 ` rguenth at gcc dot gnu.org
` (6 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: ro at CeBiTec dot Uni-Bielefeld.DE @ 2023-03-15 14:00 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109125
--- Comment #6 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> ---
> --- Comment #5 from Gaius Mulley <gaius at gcc dot gnu.org> ---
> readreal.mod requires the input file testnumber to be in the same directory as
> the executable invocation.
>
> Or manually create a text file containing:
>
> cat << EOF > testnumber
> 12.3456
> EOF
Got it, thanks. It's another unaligned access:
Thread 2 received signal SIGBUS, Bus error.
[Switching to Thread 1 (LWP 1)]
0x00037a40 in m2pim_dtoa_strtod (s=0x54c90 "12.3456", error=0xffbfe96f)
at /vol/gcc/src/hg/master/local/libgm2/libm2pim/dtoa.cc:124
124 *error = (errno != 0);
1: x/i $pc
=> 0x37a40 <m2pim_dtoa_strtod(char const*, int*)+76>: st %g2, [ %i1 ]
(gdb) bt
#0 0x00037a40 in m2pim_dtoa_strtod (s=0x54c90 "12.3456", error=0xffbfe96f)
at /vol/gcc/src/hg/master/local/libgm2/libm2pim/dtoa.cc:124
#1 0x000263b0 in m2iso_RealIO_ReadReal (cid=0x594a0, real=@0x4e3a8: 0)
at
/vol/gcc/src/hg/master/local/libgm2/libm2iso/../../gcc/m2/gm2-libs-iso/RealIO.mod:75
#2 0x00021cac in _M2_readreal_init (argc=1, argv=0xffbfebcc, envp=0xffbfebd4)
at
/vol/gcc/src/hg/master/local/gcc/testsuite/gm2/isolib/run/pass/readreal.mod:31
#3 0x0002d560 in m2pim_M2Dependent_ConstructModules (
applicationmodule=<optimized out>, libname=<optimized out>, argc=1,
argv=0xffbfebcc, envp=0xffbfebd4)
at
/vol/gcc/src/hg/master/local/libgm2/libm2pim/../../gcc/m2/gm2-libs/M2Dependent.mod:813
#4 0x00022660 in _M2_init (argc=1, argv=0xffbfebcc, envp=0xffbfebd4)
at
/vol/gcc/src/hg/master/local/gcc/testsuite/gm2/isolib/run/pass/readreal.mod:18
#5 0x000226d8 in main (argc=1, argv=0xffbfebcc, envp=0xffbfebd4)
at
/vol/gcc/src/hg/master/local/gcc/testsuite/gm2/isolib/run/pass/readreal.mod:18
(gdb) p/x $i1
$1 = 0xffbfe96f
^ permalink raw reply [flat|nested] 16+ messages in thread
* [Bug modula2/109125] [13 regression] SIGBUS in m2pim_ldtoa_ldtoa
2023-03-14 10:08 [Bug modula2/109125] New: [13 regression] SIGBUS in m2pim_ldtoa_ldtoa ro at gcc dot gnu.org
` (7 preceding siblings ...)
2023-03-15 14:00 ` ro at CeBiTec dot Uni-Bielefeld.DE
@ 2023-03-15 14:23 ` rguenth at gcc dot gnu.org
2023-03-15 20:09 ` gaius at gcc dot gnu.org
` (5 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: rguenth at gcc dot gnu.org @ 2023-03-15 14:23 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109125
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Priority|P3 |P4
^ permalink raw reply [flat|nested] 16+ messages in thread
* [Bug modula2/109125] [13 regression] SIGBUS in m2pim_ldtoa_ldtoa
2023-03-14 10:08 [Bug modula2/109125] New: [13 regression] SIGBUS in m2pim_ldtoa_ldtoa ro at gcc dot gnu.org
` (8 preceding siblings ...)
2023-03-15 14:23 ` rguenth at gcc dot gnu.org
@ 2023-03-15 20:09 ` gaius at gcc dot gnu.org
2023-03-15 21:31 ` cvs-commit at gcc dot gnu.org
` (4 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: gaius at gcc dot gnu.org @ 2023-03-15 20:09 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109125
Gaius Mulley <gaius at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |gaius at gcc dot gnu.org
--- Comment #7 from Gaius Mulley <gaius at gcc dot gnu.org> ---
Created attachment 54675
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=54675&action=edit
Proposed fix v3
Many thanks for testing and diagnosing the latest bugs. Here is a proposed fix
for the bool parameters in dtoa and ldtoa:
^ permalink raw reply [flat|nested] 16+ messages in thread
* [Bug modula2/109125] [13 regression] SIGBUS in m2pim_ldtoa_ldtoa
2023-03-14 10:08 [Bug modula2/109125] New: [13 regression] SIGBUS in m2pim_ldtoa_ldtoa ro at gcc dot gnu.org
` (9 preceding siblings ...)
2023-03-15 20:09 ` gaius at gcc dot gnu.org
@ 2023-03-15 21:31 ` cvs-commit at gcc dot gnu.org
2023-03-16 14:43 ` ro at CeBiTec dot Uni-Bielefeld.DE
` (3 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2023-03-15 21:31 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109125
--- Comment #8 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Gaius Mulley <gaius@gcc.gnu.org>:
https://gcc.gnu.org/g:8f1711ef3486b0727ccf6b5aabddda5c7d986457
commit r13-6700-g8f1711ef3486b0727ccf6b5aabddda5c7d986457
Author: Gaius Mulley <gaiusmod2@gmail.com>
Date: Wed Mar 15 21:30:33 2023 +0000
PR 109125 13 regression SIGBUS in m2pim_ldtoa_ldtoa
This patch fixes more bool int parameter mismatches
found in dtoa and ldtoa.
gcc/m2/ChangeLog:
PR modula2/109125
* gm2-libs-ch/dtoa.cc (dtoa_strtod): Replace int with bool.
* gm2-libs-ch/ldtoa.cc (ldtoa_strtold): Replace int with bool.
libgm2/ChangeLog:
PR modula2/109125
* libm2pim/dtoa.cc (TRUE): Remove.
(FALSE): Remove. Replace int with bool.
* libm2pim/ldtoa.cc (TRUE): Remove.
(FALSE): Remove. Replace int with bool.
Signed-off-by: Gaius Mulley <gaiusmod2@gmail.com>
^ permalink raw reply [flat|nested] 16+ messages in thread
* [Bug modula2/109125] [13 regression] SIGBUS in m2pim_ldtoa_ldtoa
2023-03-14 10:08 [Bug modula2/109125] New: [13 regression] SIGBUS in m2pim_ldtoa_ldtoa ro at gcc dot gnu.org
` (10 preceding siblings ...)
2023-03-15 21:31 ` cvs-commit at gcc dot gnu.org
@ 2023-03-16 14:43 ` ro at CeBiTec dot Uni-Bielefeld.DE
2023-03-16 20:42 ` cvs-commit at gcc dot gnu.org
` (2 subsequent siblings)
14 siblings, 0 replies; 16+ messages in thread
From: ro at CeBiTec dot Uni-Bielefeld.DE @ 2023-03-16 14:43 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109125
--- Comment #9 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> ---
> --- Comment #7 from Gaius Mulley <gaius at gcc dot gnu.org> ---
> Created attachment 54675
> --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=54675&action=edit
> Proposed fix v3
>
> Many thanks for testing and diagnosing the latest bugs. Here is a proposed fix
> for the bool parameters in dtoa and ldtoa:
This fixes all but one last failure:
+FAIL: gm2/types/run/pass/varient4.mod execution, -O
+FAIL: gm2/types/run/pass/varient4.mod execution, -O -g
+FAIL: gm2/types/run/pass/varient4.mod execution, -O3 -fomit-frame-pointer
+FAIL: gm2/types/run/pass/varient4.mod execution, -O3 -fomit-frame-pointer
-fin
line-functions
+FAIL: gm2/types/run/pass/varient4.mod execution, -Os
+FAIL: gm2/types/run/pass/varient4.mod execution, -g
gm2.log shows
executed
/var/gcc/regression/master/11.4-gcc/build/gcc/testsuite/gm2/varient4.x0 with
result failFAIL: gm2/types/run/pass/varient4.mod execution, -g
There's one unrelated issue here: the "excuted...with result fail"
message needs to end in a newline so you can grep for ^FAIL: in the log
file. This is from gm2-torture.exp (gm2-torture-execute), where the
send_log call needs an "\n"appended. gm2-simple.exp
(gm2-simple-execute) has the same issue.
The failing test just exits with status 1.
Running it under gdb shows that the exit happens after this:
36 zero ; hmm.bar := TRUE ; test(hmm, 3, 1) ;
Thread 2 hit Breakpoint 4, d_test (s=0x34bc0 <hmm>, n=3, v=1)
at /vol/gcc/src/hg/master/local/gcc/testsuite/gm2/types/run/pass/d.c:44
44 switch (n) {
(gdb) p s
$1 = (this *) 0x34bc0 <hmm>
(gdb) p *$1
$2 = {tag = 0, that = {first = {foo = 0, bar = 16777216, inner = {bt = 0,
bf = 0}}, an = 0}, final = 0}
(gdb) n
48 case 3: assert(s->that.first.bar == v); break;
(gdb) p s->that.first.bar
$3 = 16777216
(gdb) p v
$4 = 1
^ permalink raw reply [flat|nested] 16+ messages in thread
* [Bug modula2/109125] [13 regression] SIGBUS in m2pim_ldtoa_ldtoa
2023-03-14 10:08 [Bug modula2/109125] New: [13 regression] SIGBUS in m2pim_ldtoa_ldtoa ro at gcc dot gnu.org
` (11 preceding siblings ...)
2023-03-16 14:43 ` ro at CeBiTec dot Uni-Bielefeld.DE
@ 2023-03-16 20:42 ` cvs-commit at gcc dot gnu.org
2023-03-21 10:32 ` ro at CeBiTec dot Uni-Bielefeld.DE
2023-03-21 18:26 ` gaius at gcc dot gnu.org
14 siblings, 0 replies; 16+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2023-03-16 20:42 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109125
--- Comment #10 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Gaius Mulley <gaius@gcc.gnu.org>:
https://gcc.gnu.org/g:f231bca93ca92f6fd55de6fbe4bf8935f9ec558a
commit r13-6719-gf231bca93ca92f6fd55de6fbe4bf8935f9ec558a
Author: Gaius Mulley <gaiusmod2@gmail.com>
Date: Thu Mar 16 20:41:20 2023 +0000
PR modula2/109125 SIGBUS in m2pim_ldtoa_ldtoa
13 regression failures seen on sparc SIGBUS in m2pim_ldtoa_ldtoa.
This patch fixes int bool struct field mismatches between the
definition modules and their C/C++ implementations.
gcc/testsuite/ChangeLog:
PR modula2/109125
* gm2/types/run/pass/d.c: Convert data structure from
BOOLEAN int to bool and cast int to bool in test function.
Signed-off-by: Gaius Mulley <gaiusmod2@gmail.com>
^ permalink raw reply [flat|nested] 16+ messages in thread
* [Bug modula2/109125] [13 regression] SIGBUS in m2pim_ldtoa_ldtoa
2023-03-14 10:08 [Bug modula2/109125] New: [13 regression] SIGBUS in m2pim_ldtoa_ldtoa ro at gcc dot gnu.org
` (12 preceding siblings ...)
2023-03-16 20:42 ` cvs-commit at gcc dot gnu.org
@ 2023-03-21 10:32 ` ro at CeBiTec dot Uni-Bielefeld.DE
2023-03-21 18:26 ` gaius at gcc dot gnu.org
14 siblings, 0 replies; 16+ messages in thread
From: ro at CeBiTec dot Uni-Bielefeld.DE @ 2023-03-21 10:32 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109125
--- Comment #11 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> ---
> --- Comment #10 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
> The master branch has been updated by Gaius Mulley <gaius@gcc.gnu.org>:
>
> https://gcc.gnu.org/g:f231bca93ca92f6fd55de6fbe4bf8935f9ec558a
>
> commit r13-6719-gf231bca93ca92f6fd55de6fbe4bf8935f9ec558a
> Author: Gaius Mulley <gaiusmod2@gmail.com>
> Date: Thu Mar 16 20:41:20 2023 +0000
>
> PR modula2/109125 SIGBUS in m2pim_ldtoa_ldtoa
Just to confirm: this patch fixes the last of the SIGBUS failures. Thanks!
^ permalink raw reply [flat|nested] 16+ messages in thread
* [Bug modula2/109125] [13 regression] SIGBUS in m2pim_ldtoa_ldtoa
2023-03-14 10:08 [Bug modula2/109125] New: [13 regression] SIGBUS in m2pim_ldtoa_ldtoa ro at gcc dot gnu.org
` (13 preceding siblings ...)
2023-03-21 10:32 ` ro at CeBiTec dot Uni-Bielefeld.DE
@ 2023-03-21 18:26 ` gaius at gcc dot gnu.org
14 siblings, 0 replies; 16+ messages in thread
From: gaius at gcc dot gnu.org @ 2023-03-21 18:26 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109125
Gaius Mulley <gaius at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution|--- |FIXED
--- Comment #12 from Gaius Mulley <gaius at gcc dot gnu.org> ---
Thanks for the bug reports - closing as all resolved.
^ permalink raw reply [flat|nested] 16+ messages in thread
end of thread, other threads:[~2023-03-21 18:26 UTC | newest]
Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-14 10:08 [Bug modula2/109125] New: [13 regression] SIGBUS in m2pim_ldtoa_ldtoa ro at gcc dot gnu.org
2023-03-14 10:08 ` [Bug modula2/109125] " ro at gcc dot gnu.org
2023-03-14 16:41 ` gaius at gcc dot gnu.org
2023-03-14 17:25 ` gaius at gcc dot gnu.org
2023-03-14 17:27 ` gaius at gcc dot gnu.org
2023-03-14 19:55 ` cvs-commit at gcc dot gnu.org
2023-03-15 9:05 ` ro at CeBiTec dot Uni-Bielefeld.DE
2023-03-15 13:53 ` gaius at gcc dot gnu.org
2023-03-15 14:00 ` ro at CeBiTec dot Uni-Bielefeld.DE
2023-03-15 14:23 ` rguenth at gcc dot gnu.org
2023-03-15 20:09 ` gaius at gcc dot gnu.org
2023-03-15 21:31 ` cvs-commit at gcc dot gnu.org
2023-03-16 14:43 ` ro at CeBiTec dot Uni-Bielefeld.DE
2023-03-16 20:42 ` cvs-commit at gcc dot gnu.org
2023-03-21 10:32 ` ro at CeBiTec dot Uni-Bielefeld.DE
2023-03-21 18:26 ` gaius 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).