[PATCH] D116832: [UpdateLLCTestChecks] Allow replacing register names with variables
David Greene via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Feb 7 11:50:54 PST 2022
greened added a comment.
In D116832#3301796 <https://reviews.llvm.org/D116832#3301796>, @RKSimon wrote:
> I'm still struggling to understand real use cases here - you spoke about just wanting to match specific instructions (nontemporal load/store) - but wasn't that handled by D117694 <https://reviews.llvm.org/D117694> --filter and --filter-out?
>
> I guess I'm getting worried that these scripts are experiencing feature creep for use cases that are barely a real issue.
The nontemporal case is just one example, but even with that use-case, if the checks look like this:
; CHECK: vmovntpd %zmm0, 20(%eax, 10, 8)
If *anything* in the test (even in code that's been filtered out), causes register allocation changes then it's likely that `%zmm0` and/or `%eax` no longer match. However, we still want to match the offset, index and scale components, so we can't just check for `vmovntpd` and ignore the rest of the line. That's when register scrubbing comes in handy. We don't really care what the actual registers are, just that we emittied a `vmovntpd` store with the correct addressing mode.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D116832/new/
https://reviews.llvm.org/D116832
More information about the llvm-commits
mailing list