Le mar. 20 sept. 2022 à 21:21, Geert Stappers <stapp...@stappers.nl> a écrit :
> On Wed, Aug 31, 2022 at 08:33:50AM +0200, Geert Stappers wrote: > > On Sat, Aug 13, 2022 at 03:13:27PM +0200, Peter Pöschl wrote: > > > Hi all, > > > > > > I have reverse-engineered a jamexp.y from urjtag/src/stapl/jamexp.c. > > > The following patch series will provide this file and the unit tests I > wrote > > > to verify the grammar in the file. > > > > > > Patch 1 instruments the existing jamexp.c to report shift/reduce > actions. > > > Patch 2 adds files to allow writing unit tests with C TAP Harness [1]. > > > Patch 3 adds a unit test program to exercise all productions in the > grammar > > > encoded in the tables of the current jamexp.c. > > > Patch 4 provides the reverse-engineered jamexp.y and another test > program > > > to verify the grammar in jamexp.y with the test vectors > introduced > > > in patch 3. > > > In jamexp.y I added an Altera copyright header, because the > Lexer- > > > and calculator code is theirs (the headers are reuse [2] > compliant). > > > > > > Unfortunately, I have zero experience with Automake, so the > integration in the > > > build system is missing. Hopefully somebody from the list will be able > to > > > achieve that. Integration hints are in the commit messages of patches > 3 and 4. > > > > > > Notes: > > > > > > * jamexp.y currently uses GNU extensions of the YACC syntax, thus > requires > > > bison. > > > The reason was to keep the differences between the old jamexp.c and > the new > > > jamexp.y as small as possible. > > > > > > * The ordering of the productions in the grammar is suboptimal (the > grammar > > > would be much clearer if the productions were ordered differently). > > > The reason is to replicate the production order of the old jamexp.c > grammar. > > > > > > * For integration I propose to keep the old jamexp.c and jamytab.h > > > by moving them to tests/stapl/nongen/. This would allow to run > > > the test with both the old and new parser. > > > > > > > I'm gonna review the patches. > > Short: Applied > > > Long: > - patch 1 and 2 were fine > - patch 3 had two trailing spaces, they are removed > - patch 4 had a trailing space, it is removed > - all applied > - Source Forge is the leading git repository > > > Something else: > > Those who want the urjtag project moving faster, > please express yourself. > Move to Github, Gitlab or Codeberg? Best,
_______________________________________________ UrJTAG-development mailing list UrJTAG-development@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/urjtag-development