Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 04 Mar 2024 14:03:06 +0000
From:      bugzilla-noreply@freebsd.org
To:        bugs@FreeBSD.org
Subject:   [Bug 277474] clang crashes with -fzero-call-used-regs when optimization is enabled
Message-ID:  <bug-277474-227@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D277474

            Bug ID: 277474
           Summary: clang crashes with -fzero-call-used-regs when
                    optimization is enabled
           Product: Base System
           Version: Unspecified
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: bin
          Assignee: bugs@FreeBSD.org
          Reporter: dan-freebsd@berrange.com

Updating QEMU's upstream CI to use the latest FreBSD 13.3 gcloud images, we=
're
seeing a SEGV in clang 17:

1.      <eof> parser at end of file
2.      Code generation
3.      Running pass 'Function Pass Manager' on module '../qobject/qobject.=
c'.
4.      Running pass 'Prologue/Epilogue Insertion & Frame Finalization' on
function '@qobject_destroy'
 #0 0x0000000005372051 PrintStackTrace
/usr/src/contrib/llvm-project/llvm/lib/Support/Unix/Signals.inc:602:13
 #1 0x00000000053703f5 RunSignalHandlers
/usr/src/contrib/llvm-project/llvm/lib/Support/Signals.cpp:105:18
 #2 0x0000000005338ce5 HandleCrash
/usr/src/contrib/llvm-project/llvm/lib/Support/CrashRecoveryContext.cpp:73:5
 #3 0x0000000005338ce5 CrashRecoverySignalHandler
/usr/src/contrib/llvm-project/llvm/lib/Support/CrashRecoveryContext.cpp:390=
:51
 #4 0x000000082bd674af handle_signal /usr/src/lib/libthr/thread/thr_sig.c:0=
:3
 #5 0x000000082bd66a6b thr_sighandler
/usr/src/lib/libthr/thread/thr_sig.c:245:1
 #6 0x00007ffffffff923 ([vdso]+0x2d3)
 #7 0x0000000004d94d71 reset
/usr/src/contrib/llvm-project/llvm/include/llvm/ADT/BitVector.h:398:30
 #8 0x0000000004d94d71 insertZeroCallUsedRegs
/usr/src/contrib/llvm-project/llvm/lib/CodeGen/PrologEpilogInserter.cpp:129=
1:22
 #9 0x0000000004d94d71 insertPrologEpilogCode
/usr/src/contrib/llvm-project/llvm/lib/CodeGen/PrologEpilogInserter.cpp:116=
9:3
#10 0x0000000004d94d71 runOnMachineFunction
/usr/src/contrib/llvm-project/llvm/lib/CodeGen/PrologEpilogInserter.cpp:263=
:5
#11 0x0000000004b630b5 runOnFunction
/usr/src/contrib/llvm-project/llvm/lib/CodeGen/MachineFunctionPass.cpp:91:13
#12 0x0000000004fc19eb runOnFunction
/usr/src/contrib/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1435:27
#13 0x0000000004fc7804 runOnModule
/usr/src/contrib/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1481:13
#14 0x0000000004fc2092 runOnModule
/usr/src/contrib/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:0:27
#15 0x0000000004fc2092 run
/usr/src/contrib/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:535:44
#16 0x0000000002f5b83e ~TimeTraceScope
/usr/src/contrib/llvm-project/llvm/include/llvm/Support/TimeProfiler.h:155:9
#17 0x0000000002f5b83e RunCodegenPipeline
/usr/src/contrib/llvm-project/clang/lib/CodeGen/BackendUtil.cpp:1116:3
#18 0x0000000002f5b83e EmitAssembly
/usr/src/contrib/llvm-project/clang/lib/CodeGen/BackendUtil.cpp:1137:3


Although the stack trace is different, based on "insertZeroCallUsedRegs"
function in frame #8 which, I'm fairly confident it'll end up being this
upstream bug in clang 17:

  https://github.com/llvm/llvm-project/issues/75168

which should be fixable with

=20
https://github.com/llvm/llvm-project/commit/f800c1f3b207e7bcdc8b4c7192928d9=
a078242a0

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-277474-227>