This is the m32r simulator directory.

It is still work-in-progress.  The current sources are reasonably
well tested and lots of features are in.  However, there's lots
more yet to come.

There are lots of machine generated files in the source directory!
They are only generated if you configure with --enable-cgen-maint,
similar in behaviour to Makefile.in, configure under automake/autoconf.

For details on the generator, see ../../cgen.

devo/cgen isn't part of the comp-tools module yet.
You'll need to check it out manually (also akin to automake/autoconf).
