[Libre-soc-bugs] [Bug 550] binutils support needed for svp64

bugzilla-daemon at libre-soc.org bugzilla-daemon at libre-soc.org
Sun Jan 23 12:32:36 GMT 2022


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

--- Comment #87 from Luke Kenneth Casson Leighton <lkcl at lkcl.net> ---
(In reply to Dmitry Selyutin from comment #84)
> (In reply to Luke Kenneth Casson Leighton from comment #83)
> > dmitry, saw the message to binutils (thank you for ccing me)
> 
> I'm kinda sad nobody replied yet; yet I don't won't to appear that annoying,
> so I'll ping them in some days.

it happens. if no reply, then, well, we did ask.

> > my thoughts after a week are, the struct is ok - but will need
> > separating out into a separate struct
> 
> Fair enough. I'll do it soon.

star.

> > note: *not* a *pointer* to struct svp64_stuff.  repeat: *not* a pointer
> > because the total number of bits going into any svp64_stuff *will* be
> > *below* 64-bit and will *never* go above 64-bit, ever.
> 
> OK, OK, I surrender. :-)

:)

(In reply to Dmitry Selyutin from comment #86)
> Seems likely these should output different fields. Here's what we have in
> binutils:
> 
> {"mfcr",	XFXM(31,19,0,0), XFXFXM_MASK, COM,	0,		{RT, FXM4}},
> {"mfocrf",	XFXM(31,19,0,1), XFXFXM_MASK, COM,	0,		{RT, FXM}},
> 
> {"mtcr",	XFXM(31,144,0xff,0), XRARB_MASK, COM,	EXT,		{RS}},
> {"mtcrf",	XFXM(31,144,0,0), XFXFXM_MASK, COM,	0,		{FXM, RS}},
> {"mtocrf",	XFXM(31,144,0,1), XFXFXM_MASK, COM,	0,		{FXM, RS}},

the two pairs are handled by the same HDL but yes you will need
to drop the same svp64 struct entry into both of them.

easiest way to do that is probably just duplicate the svp64 struct entry
in sv_binutils.* 

similar thing for mtmsr/mtmsrd btw.  the exact same HDL deals with
both, then does further bit-decoding in the actual HDL.

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


More information about the libre-soc-bugs mailing list