[llvm] [Exegesis][RISCV] Add RISCV support for llvm-exegesis (PR #89047)
via llvm-commits
llvm-commits at lists.llvm.org
Thu May 30 10:09:04 PDT 2024
================
@@ -133,6 +133,12 @@ struct Instruction {
// aliasing Use and Def registers.
bool hasAliasingRegisters(const BitVector &ForbiddenRegisters) const;
+ // Whether this instruction is self aliasing through some registers.
+ // Repeating this instruction may execute sequentially by picking aliasing
+ // Def and Not Memory Use registers. It may also execute in parallel by
+ // picking non aliasing Def and Not Memory Use registers.
+ bool hasAliasingNotMemoryRegisters(const BitVector &ForbiddenRegisters) const;
----------------
AnastasiyaChernikova wrote:
This function use to enable alternative strategy for instructions with memory operands. We have tests to cheek this behavior in `test/tools/llvm-exegesis/RISCV/latency-by-extension-A.s`
https://github.com/llvm/llvm-project/pull/89047
More information about the llvm-commits
mailing list