[Libre-soc-dev] add asm field to all isatables csv files
Luke Kenneth Casson Leighton
lkcl at lkcl.net
Wed Mar 17 21:15:50 GMT 2021
crowd-funded eco-conscious hardware: https://www.crowdsupply.com/eoma68
On Wed, Mar 17, 2021 at 8:56 PM Jacob Lifshay <programmerjake at gmail.com> wrote:
> On Wed, Mar 17, 2021 at 12:49 PM Luke Kenneth Casson Leighton
> <lkcl at lkcl.net> wrote:
> > On Wednesday, March 17, 2021, Jacob Lifshay <programmerjake at gmail.com>
> > wrote:
> > > yeah, well that's not a very sustainable solution.
> > the other ones i stripped the crud, i left the 9/blah in for now because we
> > are not doing FP yet.
> Ok, though I'd appreciate adding an option to the decoder to load the
> FP opcodes too, that way I can add them to the generated C++ header.
sure, go for it.
> > > > doesn't work. look at isel.
> > >
> > > all those lines can be replaced with the single line:
> > > 0b-----01111,CR,OP_ISEL,RA_OR_ZERO,RB,NONE,RT,BC,NONE,0,0,
> > > ZERO,0,NONE,0,0,0,0,0,0,NONE,0,1,isel,A
> > >
> > > so, afaict that should work.
> > give it a shot. see if the same trick works for rotate (minor 30) as well.
> Ok. I'm assuming just generating the IL for the decoder should be
> enough for testing
not a cat in hell's chance that's enough :)
you'll need to run test_issuer.py at the very minimum, saving time by
commenting out the unit tests that don't need to be run.
> I modified the generate_headers.py file from simplev-cpp to list
> duplicate comment fields:
> duplicate comment field: 'mulhd' subdecoder.pattern=31
> duplicate comment field: 'mulhdu' subdecoder.pattern=31
> duplicate comment field: 'mulhw' subdecoder.pattern=31
> duplicate comment field: 'mulhwu' subdecoder.pattern=31
those i wasn't expecting. ah right. yes, they have patterns
which are ok. the rest need careful checking as well. what we can't
have is a pattern that is more than a single bit change, unless it can
be demonstrated that all patterns are covered, such as isel which has
32 patterns in the same 5 bits, all of which can be covered by 5 "-"s
More information about the Libre-soc-dev