================ @@ -721,6 +721,8 @@ DecodeStatus RISCVDisassembler::getInstruction32(MCInst &MI, uint64_t &Size, "Qualcomm uC Conditional Move custom opcode table"); TRY_TO_DECODE_FEATURE(RISCV::FeatureVendorXqciint, DecoderTableXqciint32, "Qualcomm uC Interrupts custom opcode table"); + TRY_TO_DECODE_FEATURE(RISCV::FeatureVendorXRivosVizip, DecoderTableXRivos32, ---------------- lenary wrote:
I'm glad you've pointed this out, as it did seem like we are trying to side-step the encoding conflict checking that LLVM is capable of, as well as the fact that the decode tables will also check specific predicates for specific instructions. I will look at merging all the Qualcomm decode tables, given that all the Xqci instructions are intended not to conflict with each other's encodings. I am less clear on which other vendor extensions should or should not conflict with each other. I think the `TRY_TO_DECODE_FEATURE(...` encouraged one decode table per feature - it's relatively more difficult to write an equivalent for when you have any of a few different features - but we can solve this with yet more macros of course. https://github.com/llvm/llvm-project/pull/127694 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits