Mirror of http://offog.org/git/tock.git . Tock (translator from occam to C from Kent) is a Haskell-based compiler for occam and related languages.
Go to file
Adam Sampson 2f7539bcdb Convert the C backend to the new CIF API (mostly).
Most of this is mechanical: changing function names, and carrying the "wptr"
argument around. I've made the code for computing Expressions from Structureds
a bit more generic too.

The only complex bit is the handling of PAR processes, which I'm not very happy
with at the moment; they used to use the normal C calling convention, but now
you need to pack the arguments into the workspace. I'm handling this at the
moment by generating wrapper functions that do the unpacking, but it would be
better in the future to make the wrapper PROCs that we already generate have
the right interface.

This won't work for programs that use any of the top-level channels yet, since
there are no handlers for them.
2008-03-07 17:50:10 +00:00
backends Convert the C backend to the new CIF API (mostly). 2008-03-07 17:50:10 +00:00
checks Various tweaks to the Haddock comments to get it building with 0.8 again. 2008-02-28 14:20:34 +00:00
common Convert the C backend to the new CIF API (mostly). 2008-03-07 17:50:10 +00:00
data Remove obsolete comment -- Structured is parametric now. 2008-03-07 14:42:46 +00:00
docextra Clean up the documentation hack a bit. 2008-02-28 14:43:53 +00:00
flow Various tweaks to the Haddock comments to get it building with 0.8 again. 2008-02-28 14:20:34 +00:00
frontends Rework the code for getting errors through the parser. 2008-03-04 12:52:25 +00:00
pass Added a pass to flatten protocol inputs down into multiple sequential input statements 2008-02-27 16:45:27 +00:00
support Split the common C99/C++ support code out into a separate header. 2008-03-05 16:54:29 +00:00
testcases Added some more testcases for array usage checking that involve complicated expressions 2008-02-11 14:40:28 +00:00
transformations Changed the behaviour of assignment for records 2008-02-29 16:36:47 +00:00
AUTHORS Changed tock to use autoconf/automake for its build process 2007-10-08 17:02:03 +00:00
cgtests.mk Make the backend a variable in cgtests.mk. 2008-03-05 16:30:06 +00:00
ChangeLog Changed tock to use autoconf/automake for its build process 2007-10-08 17:02:03 +00:00
compile-cgtests Added rules for getting and making the cgtests to the new Automake make system 2007-10-09 00:44:41 +00:00
configure.ac Some initial shuffling to get Tock working with the new CIF. 2008-03-05 16:21:20 +00:00
COPYING Add licensing information. 2007-08-18 20:42:11 +00:00
COPYING.LIB Add licensing information. 2007-08-18 20:42:11 +00:00
GenOrdAST.hs Added a case for the top-level AST to OrdAST 2008-02-05 22:36:12 +00:00
GenTagAST.hs Changed two uses of gmapQ (const undefined) to the similar glength function in the SYB library 2008-02-24 12:32:25 +00:00
LANGUAGE Give tock its own repo -- i.e. remove everything else and move tock up 2007-07-16 21:48:55 +00:00
Main.hs Some initial shuffling to get Tock working with the new CIF. 2008-03-05 16:21:20 +00:00
Makefile.am Split the common C99/C++ support code out into a separate header. 2008-03-05 16:54:29 +00:00
NEWS Changed tock to use autoconf/automake for its build process 2007-10-08 17:02:03 +00:00
README Changed tock to use autoconf/automake for its build process 2007-10-08 17:02:03 +00:00
SYNTAX Give tock its own repo -- i.e. remove everything else and move tock up 2007-07-16 21:48:55 +00:00
TestMain.hs Add some tests for structureOccam. 2008-02-29 14:08:57 +00:00
TODO Give tock its own repo -- i.e. remove everything else and move tock up 2007-07-16 21:48:55 +00:00