https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119942
Bug ID: 119942
Summary: [16 Regression] RISC-V: Segmentation fault in
pr103953.exe
Product: gcc
Version: 16.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: ewlu at rivosinc dot com
Target Milestone: ---
postcommit is seeing the following failure:
FAIL: g++.dg/coroutines/torture/pr103953.C -O3 -g execution test
https://github.com/patrick-rivos/gcc-postcommit-ci/issues/3017
testsuite logs:
spawn -ignore SIGHUP
/home/ewlu/postcommit-04/_work/gcc-postcommit-ci/gcc-postcommit-ci/riscv-gnu-toolchain/build/build-gcc-linux-stage2/gcc/testsuite/g++/../../xg++
-B/home/ewlu/postcommit-04/_work/gcc-postcommit-ci/gcc-postcommit-ci/riscv-gnu-toolchain/build/build-gcc-linux-stage2/gcc/testsuite/g++/../../
/home/ewlu/postcommit-04/_work/gcc-postcommit-ci/gcc-postcommit-ci/riscv-gnu-toolchain/gcc/gcc/testsuite/g++.dg/coroutines/torture/pr103953.C
-march=rv32gcv -mabi=ilp32d -mcmodel=medlow -fdiagnostics-plain-output
-nostdinc++
-I/home/ewlu/postcommit-04/_work/gcc-postcommit-ci/gcc-postcommit-ci/riscv-gnu-toolchain/build/build-gcc-linux-stage2/riscv64-unknown-linux-gnu/lib32/ilp32d/libstdc++-v3/include/riscv64-unknown-linux-gnu
-I/home/ewlu/postcommit-04/_work/gcc-postcommit-ci/gcc-postcommit-ci/riscv-gnu-toolchain/build/build-gcc-linux-stage2/riscv64-unknown-linux-gnu/lib32/ilp32d/libstdc++-v3/include
-I/home/ewlu/postcommit-04/_work/gcc-postcommit-ci/gcc-postcommit-ci/riscv-gnu-toolchain/gcc/libstdc++-v3/libsupc++
-I/home/ewlu/postcommit-04/_work/gcc-postcommit-ci/gcc-postcommit-ci/riscv-gnu-toolchain/gcc/libstdc++-v3/include/backward
-I/home/ewlu/postcommit-04/_work/gcc-postcommit-ci/gcc-postcommit-ci/riscv-gnu-toolchain/gcc/libstdc++-v3/testsuite/util
-fmessage-length=0 -O3 -g -pedantic-errors -Wno-long-long -fcoroutines
-std=c++17
-L/home/ewlu/postcommit-04/_work/gcc-postcommit-ci/gcc-postcommit-ci/riscv-gnu-toolchain/build/build-gcc-linux-stage2/riscv64-unknown-linux-gnu/lib32/ilp32d/libstdc++-v3/src/.libs
-B/home/ewlu/postcommit-04/_work/gcc-postcommit-ci/gcc-postcommit-ci/riscv-gnu-toolchain/build/build-gcc-linux-stage2/riscv64-unknown-linux-gnu/lib32/ilp32d/libstdc++-v3/src/.libs
-L/home/ewlu/postcommit-04/_work/gcc-postcommit-ci/gcc-postcommit-ci/riscv-gnu-toolchain/build/build-gcc-linux-stage2/riscv64-unknown-linux-gnu/lib32/ilp32d/libstdc++-v3/src/.libs
-L/home/ewlu/postcommit-04/_work/gcc-postcommit-ci/gcc-postcommit-ci/riscv-gnu-toolchain/build/build-gcc-linux-stage2/riscv64-unknown-linux-gnu/lib32/ilp32d/libstdc++-v3/src/experimental/.libs
-B/home/ewlu/postcommit-04/_work/gcc-postcommit-ci/gcc-postcommit-ci/riscv-gnu-toolchain/build/build-gcc-linux-stage2/riscv64-unknown-linux-gnu/lib32/ilp32d/libitm/
-L/home/ewlu/postcommit-04/_work/gcc-postcommit-ci/gcc-postcommit-ci/riscv-gnu-toolchain/build/build-gcc-linux-stage2/riscv64-unknown-linux-gnu/lib32/ilp32d/libitm/.libs
-lm -o ./pr103953.exe
PASS: g++.dg/coroutines/torture/pr103953.C -O3 -g (test for excess errors)
spawn riscv64-unknown-linux-gnu-run ./pr103953.exe
/home/ewlu/postcommit-04/_work/gcc-postcommit-ci/gcc-postcommit-ci/riscv-gnu-toolchain/build/../scripts/wrapper/qemu/riscv64-unknown-linux-gnu-run:
line 17: 317756 Segmentation fault (core dumped) QEMU_CPU="${qemu_cpu}"
qemu-riscv${xlen} -r 5.10 "${qemu_args[@]}" -L ${RISC_V_SYSROOT} "$@"
FAIL: g++.dg/coroutines/torture/pr103953.C -O3 -g execution test
gdb backtrace:
Program received signal SIGSEGV, Segmentation fault.
0x000000000001092c in operator() (frame_ptr=0x252b0)
at
/scratch/ewlu/ci/triage/baseline/gcc/gcc/testsuite/g++.dg/coroutines/torture/pr103953.C:66
66 task coroutine_B = [&coroutine_A]() ->task {
(gdb) bt
#0 0x000000000001092c in operator() (frame_ptr=0x252b0)
at
/scratch/ewlu/ci/triage/baseline/gcc/gcc/testsuite/g++.dg/coroutines/torture/pr103953.C:66
#1 0x000000000001082a in
std::__n4861::coroutine_handle<task::promise_type>::resume (this=<synthetic
pointer>)
at
/scratch/ewlu/ci/triage/baseline/build-pr103953/build-gcc-linux-stage2/riscv64-unknown-linux-gnu/lib64/lp64d/libstdc++-v3/include/coroutine:247
#2 main () at
/scratch/ewlu/ci/triage/baseline/gcc/gcc/testsuite/g++.dg/coroutines/torture/pr103953.C:70
(gdb)