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)