Closed bgregoir closed 1 week ago
Thank you for making the changes. I'll immediately notify people I know that are using umull and smull.
I have a doubt about the change for the signed multiplication. Can someone please double-check?
Sorry, you mean the instruction description? Why would it be different than the unsigned version?
Because when I compare execution on hardware and in the semantics, it used to be OK and now output words are swapped.
For me I think, it is ok. And that it is not incompatible with the fact that you checked hardware with software before. Before this commit (hi, lo) = SMULL(x, y) ----> SMULL lo hi x y semantics (highbit (x y ), lowbit (x y)) (hi, lo) = UMULL(x, y) ----> UMULL lo hi x y after : (lo, hi) = SMULL(x, y) ----> SMULL lo hi x y semantics (lowbit(x y), highbit (x y))
In all cases (before/after and source/assembly) you have lo <- lowbit(x y) and hi <- highbit (x y) Assuming lo <> hi.
Fausse alerte. Sorry for the noise.
Ping Vincent (@vincentvbh) in case he has got some feedback.