[Libre-soc-bugs] [Bug 863] AV opcode implementation, add to Decoder, CSV files

bugzilla-daemon at libre-soc.org bugzilla-daemon at libre-soc.org
Sun Jun 19 23:20:44 BST 2022


https://bugs.libre-soc.org/show_bug.cgi?id=863

--- Comment #6 from Jacob Lifshay <programmerjake at gmail.com> ---
(In reply to Luke Kenneth Casson Leighton from comment #5)
> (In reply to Jacob Lifshay from comment #4)
> > I fixed minu[.] to actually be unsigned:
> > https://git.libre-soc.org/?p=openpower-isa.git;a=commitdiff;
> > h=2f9891616d1a251bbb83b1ab29da7040258847ab
> 
> doh.
>  
> > i noticed absdu does signed comparison instead of unsigned, 
> 
> yes, that comes from VSX, although i must re-read the page,
> despite there being a ">u" operator people do insist on using
> the wrong one then saying "but read the english words", sigh.
> 
> > either that
> > needs to be changed to unsigned (and probably renamed to absdiffu) or the
> > name changed to absdiff (not absd since imho that would be interpreted as
> > absolute value dword, not absolute difference).
> 
> need to keep mnemonics short.

not confusing is more important than shortness...how about absdd -- abs diff
dword -- specifically to avoid confusion with abs dword. or maybe asub --
abs(sub(ra, rb)) (with sub not overflowing).
> 
> > 
> > i'm not sure which one you wanted, so i'll let you change it. imho we
> > probably want both of them as separate instructions.
> 
> like it. absds. have to find space.  grev* needs to go, replace with grevlut.
> really running out.
> 
> > also, imho the absadd* instructions should be renamed to addabsdiff* since
> > they add the absolute differences, not take the absolute value of addition.
> 
> too long a mnemonic. abssadd absuadd. hmm

addasub[u][.] :) -- add(rt, abs(sub(ra, rb)))

-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the libre-soc-bugs mailing list