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

bugzilla-daemon at libre-soc.org bugzilla-daemon at libre-soc.org
Mon Sep 20 23:27:59 BST 2021


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

--- Comment #13 from Luke Kenneth Casson Leighton <lkcl at lkcl.net> ---
(In reply to lechenko from comment #12)

> > it is important to do that conversion pass *after* all the macro renaming
> > and expansion of registers.  gas has a builtin macro system, you cannot
> > process SVP64 registers until you know the actual number, 0-127.
> > 
> 
> You mean, the conversion of 'sv.*' instruction to '.long xxxxxx; \1'? Will
> this macro/expansion machinery work correctly on 'sv.*' instruction?

yes, a macro expandion like system should work perfectly.

SVP64 has a hard rule: you cannot do this:

     sv.X   ==>  .long NNNN; Y

it MUST be this:

     sv.X   ==>  .long NNNN; X

in other words there is not ONE SINGLE 64 bit instruction that does not
map to its corresponding 32 bit one.

therefore you can perfectly well do a runtime substitution.

> > there is a spec, http://libre-soc.org/openpower/sv/svp64 however
> > i literally made up the syntax as i went along.
> 
> Aha. This is a binary format spec and there is no spec for mnemonics per se.
> My guess, that I have to dig out the format from svp64.py and tests.

yes, sorry.  we can put a documentation budget if you would like to write
it, even if it is very sparse working notes for yourself.

> Also, forgot to mention last time. There are some macro processing in
> svp64.py. Where can I read about it?

binutils docs describe the macro system, it is ".set X Y"
i simply copied that at its most basic simplest level so that
Lauri could do some very basic macros, ".set counter r3" and
so on.  this was enough.


> > 
> > btw you got the message about copyright assignment to the FSF? this is
> > *really* important.  binutils code that has not had an FSF copyright
> > assignment *cannot be accepted upstream* and whatever you did would have to
> > be thrown away and duplicated by someone who has.
> 
> I noticed the email. But had no time to fill in and send. I'll deal with
> paperwork as soon as I'll start hacking binutils.

ok cool. i must send it as well.

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


More information about the libre-soc-bugs mailing list