if you want this project, email me and it's yours...
1.3 will be the final release of jackcc. After that, I'm moving on to other projects.
Planned improvements for 1.3 are
- Fixing a bug in which some storage locations are emitted multiple times (resulting in duplicate labels).
- Only emitting storage locations which are used.
- Possibly some I/O features (if I can get an expert on how this would be done on Jackal...)
I've just uploaded version 1.1 of jackcc, which itself is a big improvement over version 1.0 with respect to memory traffic.
I next plan on making some major modifications to the typing system and to the register colorer such that variables can be automatically allocated into registers. Thus, there will be no releases for a while. Release 1.2 will be awesome, and will probably be the last work I put into jackcc.... read more
Mr. Lach and the TAs for ECE 436 have created a set of test benches using jackcc... w00t
David Arlen reports that he successfully compiled jackcc on MacOS X by removing the #include <malloc.h> lines... Word.
I have released version 1.0 of jackcc! This is a major milestone. I believe that jackcc is stable enough for production use.
New to this release is the >>> and >>>= (arithmetic right shift) operators, and function prototypes.
Hey... this stuff is starting to work very well. Using the -ncr flag, this thing can produce great code.
As soon as I implement function prototypes, I'll call this thing version 1.0
Murali reports that jackcc compiled a C program, and the assembled source (with minor, cosmetic modifications) ran on a jackal 3.0 compatible chip :0... IT WORKS!
New versions released, with great improvements in code quality.
I killed the caller-saved register bug, then went skeet shooting.
I now realize there is a bug with the way that jack calls functions... Jack might try to keep important values in registers during function calls, and those values may be overwritten by the call itself.
So, I guess I need to decide upon some registers to be caller save and others to be callee save...
yeah, I found a really dumb bug, in which the operands to ST were reversed. Sorry about this.
The assembler now has an integrated, text-mode simulator (tracer).
jackas version 0.1-alpha is released. Jackas is an assembler for the Jackal 3.0 ISA designed to fix the shortcomings of the Lackaj assembler.
jackcc version 0.5-beta is released. This release fixed a huge bug re: passing arrays to functions.