Commit Graph

12 Commits

Author SHA1 Message Date
Ben Vanik
ebda245773 Better handling of invalid/unimplemented instructions. 2013-01-25 00:51:56 -08:00
Ben Vanik
dcb958de54 Adding better register tracking through locals and fixing branches.
LLVM does an amazing job of optimizing this. There are many opportunities
to make it better, too, by preventing spilling where not required or only
spilling/filling things when needed.
2013-01-25 00:32:42 -08:00
Ben Vanik
47481fecf7 Adding tracing methods. 2013-01-24 00:10:24 -08:00
Ben Vanik
a10a05b6f2 Misc output cleanup and a test run script. 2013-01-23 21:59:26 -08:00
Ben Vanik
860a0739ec Adding gflags to handle command line flags.
It sucks, but is the best there is without using boost.
2013-01-23 21:31:23 -08:00
Ben Vanik
91f9e8b7bb Generating a lot of code!
Still a few missing instructions/variants and other issues, but a big and
valid LLVM module is being generated.
2013-01-22 00:22:27 -08:00
Ben Vanik
791f14182c Fixing a bunch of valgrind errors and reworking globals. 2013-01-21 14:31:59 -08:00
Ben Vanik
95a8be078b Rearranging code a bit to keep things cleaner. 2013-01-21 10:58:52 -08:00
Ben Vanik
25af5f410a Cleaning up the names in imports/functions. 2013-01-21 00:13:00 -08:00
Ben Vanik
852536ae0a Basic function analysis.
Finds basic blocks and estimates proper function bounds.
Seems legit for compiled code.
2013-01-20 16:46:08 -08:00
Ben Vanik
d4b0bf73c1 Prepping flow for basic block building. 2013-01-20 09:48:39 -08:00
Ben Vanik
ca2908db32 Converting everything to C++ cause I'm a masochist. 2013-01-20 01:13:59 -08:00