aboutsummaryrefslogtreecommitdiff
path: root/gcc/rust
diff options
context:
space:
mode:
authorRichard Henderson <richard.henderson@linaro.org>2025-08-07 09:37:36 +0000
committerRichard Henderson <richard.henderson@linaro.org>2025-08-11 23:25:08 +0000
commit75097ad09e8169912d8640f49ac0379e8a713215 (patch)
tree958eb9038b71463eb32b318c98b1884c45224452 /gcc/rust
parentd91b9432f3d7a1458888e2705dc5c700ed4fe25d (diff)
downloadgcc-75097ad09e8169912d8640f49ac0379e8a713215.zip
gcc-75097ad09e8169912d8640f49ac0379e8a713215.tar.gz
gcc-75097ad09e8169912d8640f49ac0379e8a713215.tar.bz2
aarch64: Fix gcs save/restore_stack_nonlocal
The save/restore_stack_nonlocal patterns passed a DImode rtx to gen_tbranch_neqi3 for a QImode compare. But since we're seeding r16 with 1, GCSEnabled will clear the only set bit in r16, so we can use CBNZ instead of TBNZ. gcc: * config/aarch64/aarch64.md (tbranch_<EQL><SHORT>3): Remove. (save_stack_nonlocal): Use aarch64_gen_compare_zero_and_branch. (restore_stack_nonlocal): Likewise. gcc/testsuite: * gcc.target/aarch64/gcs-nonlocal-3.c: Match cbnz.
Diffstat (limited to 'gcc/rust')
0 files changed, 0 insertions, 0 deletions