Commit Graph

4127 Commits

Author SHA1 Message Date
Scott Olson
96128cff85 Update for changes in rustc. 2015-12-12 00:43:29 -06:00
Scott Olson
caaec388b5 Update for changes in rustc. 2015-12-04 13:11:32 -06:00
Scott Olson
064c3521c3 Restructure into separate binary and library. 2015-11-21 21:20:06 -06:00
Scott Olson
61e4d0d82a Ignore graphviz debug output files. 2015-11-21 17:58:52 -06:00
Scott Olson
2010b14ac8 Add initial support for matching on enums.
This adds support for:
  * the Switch terminator
  * the Downcast projection rvalue
  * the Index projection rvalue
2015-11-21 01:31:09 -06:00
Scott Olson
12bce479b3 Support ADT aggregate rvalues and allocation. 2015-11-21 01:07:32 -06:00
Scott Olson
e05df509fb Refactor push_stack_frame. 2015-11-20 20:52:33 -06:00
Scott Olson
0a2f43e553 Write fn call return values directly into an lvalue the caller provides. 2015-11-20 20:49:25 -06:00
Scott Olson
aa4b82209e Fix another long line. 2015-11-20 16:18:46 -06:00
Scott Olson
651896a0ae Fix an overlong line formatting issue. 2015-11-20 16:16:34 -06:00
Scott Olson
39d9d40e40 Remove glob uses and slightly refactor. 2015-11-20 15:54:02 -06:00
Scott Olson
fae7a5685f Refactor stack frames and pointers in preparation for aggregates like ADTs. 2015-11-20 15:34:28 -06:00
Scott Olson
f674aeba97 Add a constant flag to enable and disable execution trac printouts. 2015-11-20 15:32:39 -06:00
Scott Olson
c7244afea1 Implement SwitchInt (for some match expressions). 2015-11-19 16:49:13 -06:00
Scott Olson
4c8a6b64de Test looping and recursive factorial. 2015-11-19 07:10:17 -06:00
Scott Olson
7ce6a250d4 Implement function calls. 2015-11-19 07:07:47 -06:00
Scott Olson
7112fc8cd1 Handle Goto, Panic, and If terminators properly. 2015-11-19 03:23:50 -06:00
Scott Olson
c37b2bba05 Add call frames to track offsets of values in the value stack. 2015-11-16 15:22:27 -06:00
Scott Olson
fa1c04f194 Factor out lvalue evaluation and use a single value stack. 2015-11-14 01:19:07 -06:00
Scott Olson
3f0eac2c78 Add a more complicated arithmetic test. 2015-11-12 18:00:22 -06:00
Scott Olson
694facf395 Factor out constant evaluation. 2015-11-12 17:44:29 -06:00
Scott Olson
71f70e95ed Implement unary operators for integers. 2015-11-12 17:24:43 -06:00
Scott Olson
b099391aaf Check actual vs. expected values. 2015-11-12 17:11:41 -06:00
Scott Olson
7453761405 Implement all binary operations on ints. 2015-11-12 16:13:35 -06:00
Scott Olson
4e80530bdb Sort uses. 2015-11-12 16:13:22 -06:00
Scott Olson
fbec376eed Add more tests. Remove unecessary attributes. 2015-11-12 16:13:05 -06:00
Scott Olson
cf49d6b080 Add the interpreter from my rustc branch and hook it up to CompileController. 2015-11-12 15:50:58 -06:00