On 11/29/24 11:30, Andre Vieira wrote:
Address a problem we were having where we were missing on detecting uses of
vctp_vpr_generated in the analysis for 'arm_attempt_dlstp_transform' because
the use was inside a SUBREG and rtx_equal_p does not catch that. Using
reg_overlap_mentioned_p is much more robust.
gcc/ChangeLog:
* gcc/config/arm/arm.cc (arm_attempt_dlstp_transform): Use
reg_overlap_mentioned_p instead of rtx_equal_p to detect uses of
vctp_vpr_generated inside subregs.
gcc/testsuite/ChangeLog:
* gcc.target/arm/mve/dlstp-invalid-asm.c (test10): Renamed to...
(test10a): ... this.
(test10b): Variation of test10a with a small change to trigger wrong
codegen.
Thanks, this patch is OK too, provided the update in the comment before
test10b as I requested in your previous version.
---
gcc/config/arm/arm.cc | 3 ++-
.../gcc.target/arm/mve/dlstp-invalid-asm.c | 20 ++++++++++++++++++-
2 files changed, 21 insertions(+), 2 deletions(-)