Ok, so I finished the python translation of slicc.  With the first patch
applied, you can go into src/mem/pyslicc and run ./pyslicc.  The output
files can be diffed against the C++ slicc with -wBur.  There's basically
only minimal differences.  The second diff changes the generated code output
to be more inline with style and generally a bit easier to read.  It also
brings the comments back.

Neither diff actually replaces the current slicc with python slicc in the
build.  Basically, I'd like people to more or less say that they're cool with
this and then I'll generate a new diff that replaces slicc with this python
version of slicc.

A few things to determine.  Where should the python slicc package live?  It
can stay in src/mem/slicc, or we can put it in src/python/slicc, or
src/python/m5/slicc, though I'm not sure there's any utility to including
it in the m5 binary (we could do that if we wanted though.)

I also created a pyslicc executable that imports and runs slicc.  Where
should that go?  I'm thinking util/slicc since it's only for convenience.
The eventual SCons code will just import slicc and call it directly.

Let me know what you guys think.  Hopefully you agree that it's a whole lot
easier to read the slicc code.

I generate both html and c++.  I do not do the mif code.  I can pretty if it
is worth it.  I thought mif was for Framemaker, but someone said that it was
for a model checker.  Which is correct? I think we should keep something that
is for a model checker, but I'm not convinced after looking at it that this
is it.

Oh yeah, I more or less kept the AST and grammar the way it was, though
I did fix some shift/reduce conflicts that the existing grammars have.  I
would like to talk about removing some of the unused stuff from slicc, like
check_stop_slots.
_______________________________________________
m5-dev mailing list
m5-dev@m5sim.org
http://m5sim.org/mailman/listinfo/m5-dev

Reply via email to