Commit Graph

287 Commits

Author SHA1 Message Date
Torsten Ruger
9fc8bfbb55 fixin up mov arguments 2014-05-18 12:30:49 +03:00
Torsten Ruger
2be96dccdc fix logic instruction arguments 2014-05-18 12:18:57 +03:00
Torsten Ruger
6abd10f278 started naming instruction arguments properly, starting with compare 2014-05-18 11:11:26 +03:00
Torsten Ruger
f65ad813af move first arg into derived intruction constructor 2014-05-18 10:27:35 +03:00
Torsten Ruger
a35bba39bc merge logichelper into last class that uses it 2014-05-18 10:24:14 +03:00
Torsten Ruger
7b1b2c5d87 aliased add_code to <<, to give a bit of the stream feel 2014-05-18 10:15:43 +03:00
Torsten Ruger
53666e8b33 bit of evaling 2014-05-16 23:33:25 +03:00
Torsten Ruger
a08661955f a bit of cleanup and the good news is, we can output a (small) number 2014-05-16 23:24:19 +03:00
Torsten Ruger
fee82643e5 strangely the coredumps stopped. sure didnt feel like they would 2014-05-16 23:08:45 +03:00
Torsten Ruger
88eeb2bf65 increment implementation (start) and more splitting 2014-05-16 23:08:03 +03:00
Torsten Ruger
7e2210f772 renaming update_status_flag to just update_status 2014-05-16 19:56:13 +03:00
Torsten Ruger
b3f7b66ceb coding the weird udiv10 and utoa 2014-05-16 19:55:46 +03:00
Torsten Ruger
823c11a381 more work on instrucitons, mov this time 2014-05-16 17:31:01 +03:00
Torsten Ruger
3d497ca622 some tests 2014-05-16 17:30:26 +03:00
Torsten Ruger
155066aac8 own dir for arm tests and split logic off 2014-05-16 15:19:38 +03:00
Torsten Ruger
4030f32ead finally coded the logic Shifting (what a beast) 2014-05-16 12:55:51 +03:00
Torsten Ruger
87e0f297e3 rename extra to right in logic inst 2014-05-16 11:27:30 +03:00
Torsten Ruger
ccafb09224 rename first hash argument from right to left in logic inst 2014-05-16 10:54:56 +03:00
Torsten Ruger
ef17bbf9dd rename left to first in instruction and started on logic instruction cleanup 2014-05-16 10:42:25 +03:00
Torsten Ruger
009c0895f4 change right syntax to 1.9 style, looks a little nicer 2014-05-15 21:35:45 +03:00
Torsten Ruger
a0f0d08e81 named the first intruction constructor argument 2014-05-15 19:41:51 +03:00
Torsten Ruger
b4c79d218f work on Integer.to_s , not a simple task as it turns out 2014-05-15 16:54:23 +03:00
Torsten Ruger
918ede1c02 arm program to generate optimal devision code for constants 2014-05-15 16:53:47 +03:00
Torsten Ruger
054f94d68b add some comment and tests (but small bugs still there) 2014-05-14 22:34:53 +03:00
Torsten Ruger
c9ffb78e82 allowing comments instead of newlines and not capturing comments (leave that for later as it messes the output) 2014-05-14 22:19:20 +03:00
Torsten Ruger
3912e0cd31 fix register issues, some typos 2014-05-14 22:04:03 +03:00
Torsten Ruger
e10f4863ee exporting labels to elf for (a lot) better readability 2014-05-14 16:15:47 +03:00
Torsten Ruger
d8d536aa2c while assembles, now for some nice assmbler reading 2014-05-14 12:54:23 +03:00
Torsten Ruger
a5b4f3d9ad remove NumLiteral, replace with IntegerConstant 2014-05-14 12:08:06 +03:00
Torsten Ruger
d6b5d46165 while compiles. jo 2014-05-14 12:02:54 +03:00
Torsten Ruger
d50c38f5ad add more functionality to get while to work (not there yet) 2014-05-14 11:33:23 +03:00
Torsten Ruger
2230a4f25e clean up intruction instantiation and fix tests 2014-05-14 10:47:30 +03:00
Torsten Ruger
46ea1df51e rename function_call to call_site in all levels to avoid confusion 2014-05-13 21:15:02 +03:00
Torsten Ruger
04af367bc0 coming together, more and more each day 2014-05-13 21:06:12 +03:00
Torsten Ruger
f6711ea49c checkpointing on the mad road to register allocation 2014-05-13 18:21:24 +03:00
Torsten Ruger
b0302948dd rename machine to c_machine 2014-05-13 17:06:42 +03:00
Torsten Ruger
d7f31e7f39 introduce constant class and add block to compile signature(wip, work in progress) 2014-05-13 16:24:19 +03:00
Torsten Ruger
dd05b30230 ads to_s to ast for better readability 2014-05-13 10:49:26 +03:00
Torsten Ruger
140d33b167 c fibs (need to loop a lot to use time on it) 2014-05-13 10:36:44 +03:00
Torsten Ruger
cd67589f3e life must go on, compunds must go (for now) 2014-05-13 08:35:49 +03:00
Torsten Ruger
61d72a74ad fixes array test for previous rename 2014-05-13 08:35:17 +03:00
Torsten Ruger
72de0089b2 small renames 2014-05-13 08:24:55 +03:00
Torsten Ruger
ff612446be using hash_key and value rules 2014-05-12 21:44:51 +03:00
Torsten Ruger
fdb5dd4f67 a good stab at array anf hash constants 2014-05-12 21:36:38 +03:00
Torsten Ruger
25a7c3ea68 fixed fibonacci example 2014-05-12 14:24:36 +03:00
Torsten Ruger
1170b0798b make condition brackets optional 2014-05-12 13:57:24 +03:00
Torsten Ruger
956d1eb135 newline fiddling in the parser yields goods results 2014-05-12 13:47:47 +03:00
Torsten Ruger
ee4d8033af redid while with brackets and just one condition expression 2014-05-12 12:26:38 +03:00
Torsten Ruger
e2fb0a5f34 rename conditional to control in parser 2014-05-12 12:20:31 +03:00
Torsten Ruger
7940efc64d still trying that while loop. Check as everything else works 2014-05-12 12:14:04 +03:00