Closed huxuan0307 closed 3 weeks ago
The main reason is that this extension is already ratified. What you propose would be a backwards-incompatible change, in that existing HW would no longer conform to the spec if we changed the spec.
Thank you for your reply. But the reason you gave is just an obviously consequence not the "reason", I think. ^_^ There is an issue in llvm repo that may need to be answered by spec designer. llvm-project#114518
The spec does say
"The instructions operate as if EEW=SEW, EMUL = NREG, effective length evl= EMUL * VLEN/SEW."
So some implementation may use SEW when executing vmvnr.v
SEW and LMUL are also needed to calculate vstart if the implementation can take a trap in the middle of the instruction.
And Craig raises a good point.
Why the whole register move instruction
vmvnr.v
depends onvtype.ill
but they don't depend on any useful configs(vsew, vlmul, vta, vma) in vtype.Is this an unnecessary dependencies need to be removed?