> As I noted before, I don't see any justification for using an UNSPEC in > here. UNSPECS are to be used when we can not reasonably describe the > semantics of the instruction in RTL. > > I really don't want to see a new pass for this. I know you indicated it > was hard, but I'd like to see more details about why it was hard to make > this work in the existing passes.
I played a little bit last weekend and it seems it can be done at combine pass by adding define_split with some other changes, (without new pass!) I should be able to send out a version this week. > > Given this depends on significantly new assembler behavior, the patterns > will need to be conditional on testing the assembler's behavior. > Otherwise if someone were to use a new compiler with an older assembler > they'll get errors. > > Is the new syntax for these instruction variants documented anywhere? Not yet but should at least create PR at https://github.com/riscv-non-isa/riscv-asm-manual, LiQin, could you create a PR to standardize that? > > jeff
