llvm-project
a166de9d - [llvm-mca] Missing data dependencies due to constant registers not being cached (#177990)

Commit
67 days ago
[llvm-mca] Missing data dependencies due to constant registers not being cached (#177990) Commit 385f59f modified MCA InstrBuilder methods `populateReads` and `populateWrites` to discard information about constant registers and avoid creating non-existent dependency chains. However, information about reads and writes is cached based on instruction descriptions. In this way, if the same instruction is encountered multiple times with (before) and without (after) a constant register, the cached entry will not contain information about that specific register, resulting in missing data dependencies. This patch moves the check of constant registers to `createInstruction`, so that cached entries will also take into account constant registers and, if necessary, they will be discarded later when creating the instruction.
Parents
Loading