[PATCH] D94894: [RISCV] Add way to mark CompressPats that should only be used for compressing.

Craig Topper via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jan 18 18:00:31 PST 2021


craig.topper added a comment.

In D94894#2505076 <https://reviews.llvm.org/D94894#2505076>, @jrtc27 wrote:

> In D94894#2505039 <https://reviews.llvm.org/D94894#2505039>, @craig.topper wrote:
>
>> In D94894#2504716 <https://reviews.llvm.org/D94894#2504716>, @jrtc27 wrote:
>>
>>> My instinct is this should be a priority to match InstAlias; is there ever any overlap?
>>
>> After this patch, uncompressing is a 1:1 mapping. In the compress direction there are multiple patterns that map to the same sequence. There are also multiple patterns that start from ADD for example. Overlaps seem to be handled by Register classes like GPRNoX0 and by immediate predicates. If a priority is needed, I believe it would be needed in the compress direction, not the uncompress direction.
>
> Right, yes, which corresponds to the InstAlias direction that corresponds to the priority (InstAlias, at least to me, is conceptually the other way round to CompressPat). I wasn't particularly thinking; decompression is of course a (total) function, that's how a lot of cores implement decoding compressed instructions.

So are you ok with this patch as is?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D94894/new/

https://reviews.llvm.org/D94894



More information about the llvm-commits mailing list