diff options
author | Richard Henderson <richard.henderson@linaro.org> | 2025-08-06 09:21:55 +0000 |
---|---|---|
committer | Richard Henderson <richard.henderson@linaro.org> | 2025-08-11 23:25:09 +0000 |
commit | 21d94bf16f124e22fc7ad3c2e4083374eba03c67 (patch) | |
tree | 17a50139ee425b33258bbd8ba774cd496b35b0a4 /gcc/rust | |
parent | ed101b98e25314a5a544297e7224d9572b489804 (diff) | |
download | gcc-21d94bf16f124e22fc7ad3c2e4083374eba03c67.zip gcc-21d94bf16f124e22fc7ad3c2e4083374eba03c67.tar.gz gcc-21d94bf16f124e22fc7ad3c2e4083374eba03c67.tar.bz2 |
aarch64: Fix aarch64_split_imm24 patterns
Both patterns used !reload_completed as a condition, which is
questionable at best. The branch pattern failed to include a
clobber of CC_REGNUM. Both problems were unlikely to trigger
in practice, due to how the optimization pipeline is organized,
but let's fix them anyway.
gcc:
* config/aarch64/aarch64.cc (aarch64_gen_compare_split_imm24): New.
* config/aarch64/aarch64-protos.h: Update.
* config/aarch64/aarch64.md (*aarch64_bcond_wide_imm<GPI>): Use it.
Add match_scratch and cc clobbers. Use match_operator instead of
iterator expansion.
(*compare_cstore<GPI>_insn): Likewise.
Diffstat (limited to 'gcc/rust')
0 files changed, 0 insertions, 0 deletions