Re: HEADS UP: plan to switch many ports over to GCC 12 soon
Rin Okuyama <[email protected]> Sun, 30 Jun 2024 14:51:25 +0900
| Newsgroups | gmane.os.netbsd.current,gmane.os.netbsd.devel.toolchain,gmane.os.netbsd.ports.sh3 |
|---|---|
| Message-ID | <[email protected]> |
[CC added for port-sh3@, dropped for port-mips@ and port-powerpc@] Hi, On 2024/06/30 14:19, matthew green wrote: >> On Sun, 2024-06-30 at 09:44 +1000, matthew green wrote: >>> sh3 may be problematic, >> >> I can almost certainly test sh3. I should even be able to make a new >> bootable disk for an end to end test. > > oh the problem is it's broken -- rin@ could talk more about it, > i'm just going on the notes in README.gcc12: > > [20]: kernel needs -O1 for ffs32() and ffs_nodealloccg() for multi-user boot. Even if the whole kernel is built with -O1, it panics during ATF: > kernel/t_sysv (92/935): 3 test cases > msg: [ 3981.4751382] panic: kernel diagnostic assertion "msghdr->msg_spot >= 0" failed: file "../../../../kern/sysv_msg.c", line 426 > > [22]: single-user shell crashes. if userland is built with DBG=-O1, it boots into multi-user mode. > however, at least db(3) is broken, by which files are corrupted when edited by vi(1). > > i didn't try landisk gxemul yet. > > GCC 12.4 came out recently and i'll be updating to that, and > it has some sh fixes, maybe for this? The situation for sh3 is getting worse since these note were added last year. Kernel from recent -current does not boot on landisk, even if compiled with `DBG=O1`. This does not change if two upstream commits b/w GCC 12.3 and 12.4 in `gcc/config/sh` are cherry-picked :( I was just going to examine changes b/w 10.5 and 12.3... Thanks, rin