Commit graph

8 commits

Author SHA1 Message Date
Jack Palevich
a653561097 ARM codegen: Add disassembler, implement return
This program works:

    main() { return 42; }

The disassembler was borrowed from codeflinger, and just modified enough to compile
under C++ without warnings.

Implemented gsym
Implemented a hack verison of li, only works for -256..255
Implemented gjmp
2009-05-13 19:51:03 -07:00
Jack Palevich
546b2249ef Begin filling in ARM code generator.
We can now call functions that have no arguments (and return from them too!)
2009-05-13 15:10:04 -07:00
Jack Palevich
2230513fc0 Add stub Arm code generator. 2009-05-13 10:58:45 -07:00
Jack Palevich
bf42c9c163 Move all x86-specific knowlege into the X86CodeGenerator. 2009-05-12 13:46:16 -07:00
Jack Palevich
21a15a2416 Various C++ improvements
+ Changed indentation, causes the stats to say there's a lot of lines changed.
+ Should be able to compile multiple times with the same compiler object.
+ Create a CodeBuffer class to hold the code.
+ Create a CodeGenerator class to encapsulate knowlege of the CPU instruction set.
+ Started filling in the code generator.
2009-05-11 18:49:27 -07:00
Jack Palevich
77ae76eea9 converted to C++
Base address of constant table changed, so had to update the "-orig" files.
2009-05-10 19:59:24 -07:00
Jack Palevich
e27bf3eb29 Replace acc.c with the contents of otccn.c, update tests.
We are no longer checking if the constant data is the same, just the
generated code.
2009-05-10 14:09:03 -07:00
Jack Palevich
f54db02e5d Add a simple regression test framework. 2009-05-08 20:30:47 -07:00