diff options
author | Lino Hsing-Yu Peng <linopeng@andestech.com> | 2025-02-20 17:09:22 +0800 |
---|---|---|
committer | Kito Cheng <kito.cheng@sifive.com> | 2025-02-24 16:04:32 +0800 |
commit | 4dcd3c7749734133f7f59509b1a118f3a13de4ee (patch) | |
tree | c8faba7570b3cfbecf9bf27542202500b079abe4 /gcc/c/c-parser.cc | |
parent | 7cfb2c8839c4ccaaf7d66f446c4c0d040b710f18 (diff) | |
download | gcc-4dcd3c7749734133f7f59509b1a118f3a13de4ee.zip gcc-4dcd3c7749734133f7f59509b1a118f3a13de4ee.tar.gz gcc-4dcd3c7749734133f7f59509b1a118f3a13de4ee.tar.bz2 |
RISC-V: Fix .cfi_offset directive when push/pop in zcmp
The incorrect cfi directive info breaks stack unwind in try/catch/cxa.
Before patch:
cm.push {ra, s0-s2}, -16
.cfi_offset 1, -12
.cfi_offset 8, -8
.cfi_offset 18, -4
After patch:
cm.push {ra, s0-s2}, -16
.cfi_offset 1, -16
.cfi_offset 8, -12
.cfi_offset 9, -8
.cfi_offset 18, -4
gcc/ChangeLog:
* config/riscv/riscv.cc: Set multi push regs bits.
gcc/testsuite/ChangeLog:
* gcc.target/riscv/zcmp_push_gpr.c: New test.
Diffstat (limited to 'gcc/c/c-parser.cc')
0 files changed, 0 insertions, 0 deletions