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)

Reply via email to