DAGCombine doesn't canonicalize rotl/rotr with immediate so we
need patterns for both.
Remove the custom matcher for rotl to RORI and just use a SDNodeXForm
to convert the immediate instead.. Doing this gives priority to the
rev32/rev16 versions of grevi over rori since an explicit immediate
is more precise than any immediate. I also added rotr patterns for
rev32/rev16. And removed the (or (shl), (shr)) patterns that should be
combined to rotl by DAG combine.
There is at least one other grev pattern than probably needs a
another rotr pattern, but we need more test coverage first.
As far as I can tell, Subtarget->getXLen() would do the job here. However, I also see that uimmlog2xlen uses is64Bit so I'm not sure what to recommend.