On Sun, Aug 13, 2023 at 02:21:33PM -0400, Greg Troxel wrote: > I'm doing an update build, but I did a cleandir in libc. This file > fails and the rest of gdtoa seems troubled too. (up to date netbsd-10) > > ~/NetBSD-10/src/lib/libc > /usr/obj/gdt-10/tools/bin/nbmake-amd64 > # compile libc/dtoa.o > /usr/obj/gdt-10/tools/bin/x86_64--netbsd-gcc -O2 -std=gnu99 -Wall > -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wno-sign-compare > -Wsystem-headers -Wno-traditional -Wa,--fatal-warnings -Wreturn-type > -Wswitch -Wshadow -Wcast-qual -Wwrite-strings -Wextra -Wno-unused-parameter > -Wno-sign-compare -Wold-style-definition -Wsign-compare -Wformat=2 > -Wno-format-zero-length -Werror -fPIE -fstack-protector -Wstack-protector > --param ssp-buffer-size=1 --sysroot=/usr/obj/gdt-10/destdir/amd64 -D_LIBC > -DLIBC_SCCS -DSYSLIBC_SCCS -D_REENTRANT -D_DIAGNOSTIC > -I/home/n0/gdt/NetBSD-10/src/lib/csu/common -DHESIOD -DINET6 -DNLS -DYP > -I/home/n0/gdt/NetBSD-10/src/lib/libc/include > -I/home/n0/gdt/NetBSD-10/src/lib/libc -I. -I/home/n0/gdt/NetBSD-10/src/sys > -I/home/n0/gdt/NetBSD-10/src/lib/libc/compat/../locale > -I/home/n0/gdt/NetBSD-10/src/lib/libc/compat/stdlib > -I/home/n0/gdt/NetBSD-10/src/lib/libc/compat/../stdlib -D__BUILD_LEGACY > -I/home/n0/gdt/NetBSD-10/src/lib/libc/../../common/lib/libc/quad > -I/home/n0/gdt/NetBSD-10/src/lib/libc/../../common/lib/libc/string > -I/home/n0/gdt/NetBSD-10/src/lib/libc/../../common/lib/libc/arch/x86_64/string > > -I/home/n0/gdt/NetBSD-10/src/lib/libc/../../common/lib/libc/arch/x86_64/atomic > -I/home/n0/gdt/NetBSD-10/src/lib/libc/../../common/lib/libc/hash/sha3 > -D__DBINTERFACE_PRIVATE -I/home/n0/gdt/NetBSD-10/src/libexec/ld.elf_so > -I/home/n0/gdt/NetBSD-10/src/lib/libc/dlfcn > -I/home/n0/gdt/NetBSD-10/src/lib/libc/gdtoa > -I/home/n0/gdt/NetBSD-10/src/lib/libc/locale -DHonor_FLT_ROUNDS > -I/home/n0/gdt/NetBSD-10/src/lib/libc/arch/x86_64/gdtoa -DWITH_RUNE > -I/home/n0/gdt/NetBSD-10/src/lib/libc -D_ACL_PRIVATE -DPOSIX_MISTAKE > -DCOMPAT__RES -DUSE_POLL -DPORTMAP -DUSG_COMPAT -D_FORTIFY_SOURCE=2 -c > /home/n0/gdt/NetBSD-10/src/lib/libc/gdtoa/dtoa.c -o dtoa.o.o > /home/n0/gdt/NetBSD-10/src/lib/libc/gdtoa/dtoa.c: In function '__dtoa': > /home/n0/gdt/NetBSD-10/src/lib/libc/gdtoa/dtoa.c:262:2: internal compiler > error: Illegal instruction > 262 | ds = (dval(&d2)-1.5)*0.289529654602168 + 0.1760912590558 + > i*0.301029995663981; > | ^~ > Please submit a full bug report, > with preprocessed source if appropriate. > See <http://www.NetBSD.org/support/send-pr.html> for instructions.
I just finished an update build for netbsd-10 amd64 - apart from some flist shenanigans, it went smoothly. SIGILL is a little odd. The only 3 causes I've seen in the wild: - code bug, function pointer flying off somewhere unexpected. - dodgy hardware. - the `ud` family of instructions injected by clang/llvm/gcc in sanitised builds to catch undefined behaviour. I wonder which case fits here... if you got a core, you may be able to check if PC points to a ud2, etc. instruction? Though I'm not seeing gcc built with -fsanitize=undefined in my build log. -- Paul Ripke "Great minds discuss ideas, average minds discuss events, small minds discuss people." -- Disputed: Often attributed to Eleanor Roosevelt. 1948.