Bug 251527 - [llvm][arm64] Register class not supported UNREACHABLE executed at /usr/src/contrib/llvm-project/llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp:270!
Summary: [llvm][arm64] Register class not supported UNREACHABLE executed at /usr/src/c...
Status: Closed Unable to Reproduce
Alias: None
Product: Base System
Classification: Unclassified
Component: arm (show other bugs)
Version: CURRENT
Hardware: arm64 Any
: --- Affects Only Me
Assignee: freebsd-arm (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-12-02 10:27 UTC by Dave Cottlehuber
Modified: 2020-12-03 11:16 UTC (History)
2 users (show)

See Also:


Attachments
full bw log (77.53 KB, text/plain)
2020-12-02 10:27 UTC, Dave Cottlehuber
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Dave Cottlehuber freebsd_committer freebsd_triage 2020-12-02 10:27:05 UTC
Created attachment 220165 [details]
full bw log

r368234 | 2020-12-01

NB requested files at https://git.io/JIkiw as they're too big for BZ upload.

make[1]: "/usr/src/Makefile.inc1" line 339: SYSTEM_COMPILER: Determined that CC=/usr/local/bin/ccache cc matches the source tree.  Not bootstrapping a cross-compiler.
make[1]: "/usr/src/Makefile.inc1" line 344: SYSTEM_LINKER: Determined that LD=ld matches the source tree.  Not bootstrapping a cross-linker.
--------------------------------------------------------------
>>> World build started on Wed Dec  2 10:07:24 UTC 2020
--------------------------------------------------------------
--------------------------------------------------------------
>>> Rebuilding the temporary build tree
--------------------------------------------------------------
>>> Deleting stale files in build tree...
Linking host tools into /usr/obj/usr/src/arm64.aarch64/tmp/legacy/bin
--------------------------------------------------------------
>>> stage 1.1: legacy release compatibility shims
...
>>> stage 4.2: building libraries
--------------------------------------------------------------
===> lib/libcompiler_rt (obj,all,install)
===> lib/libssp_nonshared (obj,all,install)
===> lib/libgcc_eh (obj,all,install)
Register class not supported
UNREACHABLE executed at /usr/src/contrib/llvm-project/llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp:270!
PLEASE submit a bug report to https://bugs.freebsd.org/submit/ and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0.	Program arguments: /usr/bin/c++ -target aarch64-unknown-freebsd13.0 --sysroot=/usr/obj/usr/src/arm64.aarch64/tmp -B/usr/obj/usr/src/arm64.aarch64/tmp/usr/bin -fvisibility=hidden -fPIC -O2 -pipe -fno-common -g -O0 -Wno-format-zero-length -Wsystem-headers -Werror -Wall -Wno-format-y2k -Wno-uninitialized -Wno-empty-body -Wno-string-plus-int -Wno-unused-const-variable -Wno-tautological-compare -Wno-unused-value -Wno-parentheses-equality -Wno-unused-function -Wno-enum-conversion -Wno-unused-local-typedef -Wno-address-of-packed-member -Wno-switch -Wno-switch-enum -Wno-knr-promoted-parameter -Qunused-arguments -fno-rtti -std=c++11 -Wno-c++11-extensions -fno-exceptions -funwind-tables -I/usr/src/contrib/llvm-project/libunwind/include -I/usr/src/lib/libgcc_eh -D_LIBUNWIND_IS_NATIVE_ONLY -D_LIBUNWIND_USE_FRAME_HEADER_CACHE -I/usr/src/lib/msun/src -c -o libunwind.o /usr/src/contrib/llvm-project/libunwind/src/libunwind.cpp 
1.	<eof> parser at end of file
2.	Code generation
3.	Running pass 'Function Pass Manager' on module '/usr/src/contrib/llvm-project/libunwind/src/libunwind.cpp'.
4.	Running pass 'RegBankSelect' on function '@_ZN9libunwind17DwarfInstructionsINS_17LocalAddressSpaceENS_15Registers_arm64EE13stepWithDwarfERS1_mmRS2_Rb'
#0 0x0000000003b7c378 PrintStackTrace /usr/src/contrib/llvm-project/llvm/lib/Support/Unix/Signals.inc:564:13
#1 0x0000000003b7a5f0 __cxx_atomic_store<CallbackAndCookie::Status> /usr/obj/usr/src/arm64.aarch64/tmp/usr/include/c++/v1/atomic:985:5
#2 0x0000000003b7a5f0 store /usr/obj/usr/src/arm64.aarch64/tmp/usr/include/c++/v1/atomic:1594:10
#3 0x0000000003b7a5f0 RunSignalHandlers /usr/src/contrib/llvm-project/llvm/lib/Support/Signals.cpp:70:16
#4 0x0000000003b23820 HandleCrash /usr/src/contrib/llvm-project/llvm/lib/Support/CrashRecoveryContext.cpp:77:5
#5 0x0000000003b239cc CrashRecoverySignalHandler /usr/src/contrib/llvm-project/llvm/lib/Support/CrashRecoveryContext.cpp:0:51
#6 0x0000000044ef66ec handle_signal /usr/src/lib/libthr/thread/thr_sig.c:0:3
c++: error: clang frontend command failed due to signal (use -v to see invocation)
FreeBSD clang version 11.0.0 (git@github.com:llvm/llvm-project.git llvmorg-11.0.0-0-g176249bd673)
Target: aarch64-unknown-freebsd13.0
Thread model: posix
InstalledDir: /usr/bin
c++: note: diagnostic msg: 

# /etc/src.conf 
WITH_CCACHE_BUILD=yes
WITHOUT_LIB32=yes
WITH_REPRODUCIBLE_BUILD=yes
WITH_LOADER_LUA=yes
WITHOUT_FORTH=yes
WITHOUT_FLOPPY=yes
WITHOUT_FINGER=yes
WITHOUT_GAMES=yes
WITHOUT_HAST=yes
WITHOUT_SENDMAIL=yes
WITHOUT_PORTSNAP=yes
WITHOUT_RBOOTD=yes
WITHOUT_RCMDs=yes
WITHOUT_TALK=yes
WITHOUT_TIMED=yes

# /etc/make.conf
BATCH=yes
DEVELOPER=yes
PROXYDEPS_FATAL=yes
KEEP_OLD_PACKAGES=yes
USE_TMPFS=all
TMPFS_LIMIT=8
WRKDIRPREFIX=/tmp
# Erlang/OTP with DTrace
.if ${.CURDIR:M*/lang/erlang*}
STRIP=
WITH_CTF=1
CFLAGS+=-fno-omit-frame-pointer
.endif
# OpenSSL avoidance
.if ${.CURDIR:M*/www/h2o}
#DEFAULT_VERSIONS+=ssl=openssl
.endif
.if ${.CURDIR:M*/databases/foundationdb*}
#DEFAULT_VERSIONS+=ssl=libressl
.endif
# enable our custom ports category
VALID_CATEGORIES+=gds
LICENSES_ACCEPTED+= APACHE20 BSD2CLAUSE BSD3CLAUSE CDDL EPL GPLv2+ LGPL2+ LGPL3+ MIT MPL MPL20 NONE
# Enable Tahoma in x11-fonts/webfonts if you have a Windows license
.if ${.CURDIR:M*/x11-fonts/webfonts}
WITH_MSWINDOWS_LICENSE=y
.endif
WITH_DEBUG_PORTS=net/zerotier
DEBUG_FLAGS=    -g -O0
Comment 1 Ed Maste freebsd_committer freebsd_triage 2020-12-02 13:52:25 UTC
Mitchell have you seen any arm64 build issues of late? As far as I know everything's fine for some time.
Comment 2 Dave Cottlehuber freebsd_committer freebsd_triage 2020-12-02 20:06:24 UTC
working through this:

- "sidegraded" to latest base|kernel.txz from https://artifact.ci.freebsd.org/snapshot/13.0-CURRENT/r368274/arm64/aarch64/
- clean src, /var/cache/ccache, /usr/obj

still shows same issue

- dropped all settings in src*.conf & make.conf, works fine
- "bisecting" the configs slowly back in
- make.conf settings not relevant
Comment 3 Dave Cottlehuber freebsd_committer freebsd_triage 2020-12-03 11:16:55 UTC
once I nuked and paved both ccache & OS, and did a clean build (no *.conf or caching) this issue goes away completely. I didn't get to the bottom of it, but I have the artefacts if somebody wishes to investigate it further.