Torsten Ruger
|
a3c9ab7e29
|
simpler but more verbose node model fixes everything but one
|
2014-08-18 08:19:48 +03:00 |
|
Torsten Ruger
|
b0472753f4
|
fixing arrays/hashs and starting complex objects
|
2014-08-17 21:44:34 +03:00 |
|
Torsten Ruger
|
9669831f78
|
fix all existing (hash) tests
|
2014-08-16 15:16:07 +03:00 |
|
Torsten Ruger
|
90e4837b2e
|
broaden the node hierachy
|
2014-08-16 12:34:25 +03:00 |
|
Torsten Ruger
|
2f84c0dfa6
|
fixing array tests, seperated nodes into different types
|
2014-08-16 11:43:41 +03:00 |
|
Torsten Ruger
|
7f7a174554
|
fixes object
|
2014-08-16 09:56:11 +03:00 |
|
Torsten Ruger
|
b0a54cb8c2
|
working up
|
2014-08-15 18:27:32 +03:00 |
|
Torsten Ruger
|
0a7814a07b
|
add hash with object
|
2014-08-15 17:18:15 +03:00 |
|
Torsten Ruger
|
16261f96b0
|
adds simple hash and test
|
2014-08-15 17:14:49 +03:00 |
|
Torsten Ruger
|
2d6a43cf0e
|
array with object
|
2014-08-15 15:13:36 +03:00 |
|
Torsten Ruger
|
1415079659
|
test with array in array in array
|
2014-08-15 15:08:45 +03:00 |
|
Torsten Ruger
|
716bc93e4a
|
test for array with array
|
2014-08-15 15:04:13 +03:00 |
|
Torsten Ruger
|
198e70b6bd
|
fix array with object
|
2014-08-15 14:59:38 +03:00 |
|
Torsten Ruger
|
85dad14cc8
|
fix simple array
|
2014-08-14 20:24:26 +03:00 |
|
Torsten Ruger
|
6b19b915a1
|
rewrote write to use known attributes or instance variables, simple values inline
|
2014-08-14 19:49:20 +03:00 |
|
Torsten Ruger
|
0a33f940cf
|
moving away from the attributes aproach, tests fixed
|
2014-08-14 19:24:18 +03:00 |
|
Torsten Ruger
|
2c2ae14928
|
getting some sof output and adding some tests. issues though. abound
|
2014-08-14 17:40:56 +03:00 |
|
Torsten Ruger
|
7e60827dd3
|
redoing the ifs with new (old) block structure
|
2014-08-13 20:05:32 +03:00 |
|
Torsten Ruger
|
200228a33d
|
adding the blocks to virtual machine and store instructions in array not list
|
2014-08-13 11:59:51 +03:00 |
|
Torsten Ruger
|
c2ae184e6e
|
simple test for get type
|
2014-08-07 15:41:13 +03:00 |
|
Torsten Ruger
|
a9ab3ca13e
|
forgot to add compiled methods to the class, fixed
|
2014-08-07 15:37:32 +03:00 |
|
Torsten Ruger
|
b9e259e11a
|
first ginger parfait test
|
2014-08-06 18:49:20 +03:00 |
|
Torsten Ruger
|
629c6e56e0
|
adds test before functionality (deres a good boy)
|
2014-07-31 21:38:01 +03:00 |
|
Torsten Ruger
|
8effcc866a
|
more machinery to the machine
|
2014-07-30 21:43:12 +03:00 |
|
Torsten Ruger
|
5add9c42f2
|
juggle into the machine
|
2014-07-30 21:07:48 +03:00 |
|
Torsten Ruger
|
7b6f364ba8
|
namechange
|
2014-07-29 18:33:11 +03:00 |
|
Torsten Ruger
|
8718ebf476
|
last inherited test
|
2014-07-27 10:09:31 +03:00 |
|
Torsten Ruger
|
1a95835442
|
adds message get and set instructions
|
2014-07-25 20:28:38 +03:00 |
|
Torsten Ruger
|
7df1490da8
|
mostly comments
|
2014-07-25 11:48:06 +03:00 |
|
Torsten Ruger
|
e427bcef43
|
change method and frame around in calling, easier to understand static first
|
2014-07-24 14:56:27 +03:00 |
|
Torsten Ruger
|
e408b0e4b9
|
fixed while instruciton linking after change in method add
|
2014-07-22 23:27:13 +03:00 |
|
Torsten Ruger
|
25e26f613d
|
fix one more test
|
2014-07-22 11:57:56 +03:00 |
|
Torsten Ruger
|
a6e78ec837
|
fixed the yaml output order for much better readability of failed tests
|
2014-07-19 21:56:17 +03:00 |
|
Torsten Ruger
|
eb44011177
|
fixed that branch numbering bug
|
2014-07-19 21:15:27 +03:00 |
|
Torsten Ruger
|
c03c4f9cc9
|
add return instruction and fix the tests
|
2014-07-18 11:56:46 +03:00 |
|
Torsten Ruger
|
cf00a6e490
|
changed marker
|
2014-07-18 11:16:56 +03:00 |
|
Torsten Ruger
|
23e1b2519e
|
fix all the test data to be yaml
|
2014-07-18 00:30:47 +03:00 |
|
Torsten Ruger
|
2e79caa791
|
using yaml as the storage format of the result as it handles graphs out of the box
|
2014-07-18 00:30:36 +03:00 |
|
Torsten Ruger
|
e02c6ed082
|
codes the while, but the testing throws stack too deep because loop detection is missing
|
2014-07-17 16:46:17 +03:00 |
|
Torsten Ruger
|
337b1a8ee0
|
renamed to kide(crystal)
|
2014-07-17 02:26:13 +03:00 |
|
Torsten Ruger
|
fb105cb895
|
had to let go of crystal (sniff) as the name was taken
|
2014-07-17 01:00:15 +03:00 |
|
Torsten Ruger
|
efeb910843
|
move branch counter to branch instruction (from if) in preperation of while
|
2014-07-16 22:28:28 +03:00 |
|
Torsten Ruger
|
7534626d87
|
fix the if test by naming branch and label and stitching them in constructor
|
2014-07-16 21:16:08 +03:00 |
|
Torsten Ruger
|
4185758532
|
slight rename tremours
|
2014-07-16 20:16:10 +03:00 |
|
Torsten Ruger
|
1ff7ae2b0a
|
rename method
|
2014-07-16 19:24:41 +03:00 |
|
Torsten Ruger
|
55cb6bd2d6
|
working on if
|
2014-07-16 13:20:47 +03:00 |
|
Torsten Ruger
|
4d725ea1ae
|
adds explicit load_self instruction
|
2014-07-15 18:27:13 +03:00 |
|
Torsten Ruger
|
930740e1db
|
fixes the tests after fixing hierarchy
|
2014-07-15 10:35:29 +03:00 |
|
Torsten Ruger
|
9891da88a4
|
fix all tests
|
2014-07-15 00:00:00 +03:00 |
|
Torsten Ruger
|
b59a9da34e
|
reduce method return type to type and introduce a single instruction for instance get
|
2014-07-14 21:28:21 +03:00 |
|
Torsten Ruger
|
b1893482ff
|
adds an all test, uncomment not implemented
|
2014-07-14 21:25:53 +03:00 |
|
Torsten Ruger
|
16a378e3da
|
fix class function test
|
2014-07-14 17:08:52 +03:00 |
|
Torsten Ruger
|
93bdd8a243
|
removing exceptions
|
2014-07-14 16:19:47 +03:00 |
|
Torsten Ruger
|
c7c4387e16
|
adds self reference and improve methods a little
|
2014-07-14 14:29:33 +03:00 |
|
Torsten Ruger
|
db8b1488d0
|
function test, slow but steady
|
2014-07-14 14:06:09 +03:00 |
|
Torsten Ruger
|
122452c21b
|
patch another test
|
2014-07-14 11:31:46 +03:00 |
|
Torsten Ruger
|
d531a24930
|
first method test
|
2014-07-14 11:29:38 +03:00 |
|
Torsten Ruger
|
c1f475070b
|
and another one, and another one....
|
2014-07-13 16:00:48 +03:00 |
|
Torsten Ruger
|
ae21863245
|
one more basic test back online
|
2014-07-13 14:12:43 +03:00 |
|
Torsten Ruger
|
dc6cb2bb52
|
a lot of work to get one more test to pass
|
2014-07-12 21:59:17 +03:00 |
|
Torsten Ruger
|
c505db490f
|
brainstorming mode on the new way (tm)
|
2014-07-10 17:14:38 +03:00 |
|
Torsten Ruger
|
f74999af57
|
zwischenstopp
|
2014-07-01 18:58:25 +03:00 |
|
Torsten Ruger
|
7045a4b256
|
update reader and implement singletons
|
2014-07-01 15:57:13 +03:00 |
|
Torsten Ruger
|
94d1140686
|
remove intel as it is in own rep now
|
2014-06-30 15:34:51 +03:00 |
|
Torsten Ruger
|
84d27ce9d9
|
remove arm as it is in own rep now
|
2014-06-30 15:28:39 +03:00 |
|
Torsten Ruger
|
18faeeb042
|
add the idea of a frame
|
2014-06-29 19:05:35 +03:00 |
|
Torsten Ruger
|
16ceb2a60d
|
hurra, a first test. looks a lot.... but lets not spoil th efeeling
|
2014-06-26 18:39:02 +03:00 |
|
Torsten Ruger
|
525f9d45c5
|
rename
|
2014-06-26 17:52:15 +03:00 |
|
Torsten Ruger
|
33c62a7db1
|
update reader
|
2014-06-26 17:48:33 +03:00 |
|
Torsten Ruger
|
9d0d5aa431
|
update reader
|
2014-06-26 11:34:48 +03:00 |
|
Torsten Ruger
|
d28df7671d
|
add the simplest possible hash replacement with tests
|
2014-06-25 16:00:24 +03:00 |
|
Torsten Ruger
|
fe337fad79
|
rename and a tiny start
|
2014-06-25 15:20:46 +03:00 |
|
Torsten Ruger
|
43a2649635
|
new list test and debugs
|
2014-06-24 12:25:03 +03:00 |
|
Torsten Ruger
|
a859951a8f
|
slight cleanup and rename test case
|
2014-06-17 14:25:33 +02:00 |
|
Torsten Ruger
|
0dbaebf647
|
fix all tests and a little cleaning
|
2014-06-14 10:59:25 +03:00 |
|
Torsten Ruger
|
12a92e4db0
|
move boot* classes to boot directory
|
2014-06-13 23:51:53 +03:00 |
|
Torsten Ruger
|
a7551ea8b6
|
still working on the method dispatch
|
2014-06-13 23:41:45 +03:00 |
|
Torsten Ruger
|
ebf117a63a
|
update tests, all green
|
2014-06-12 21:43:06 +03:00 |
|
Torsten Ruger
|
017d93d929
|
add to_asm debug output functions
|
2014-06-12 21:40:25 +03:00 |
|
Torsten Ruger
|
ea0572c836
|
fixed while compilation (block order) and fixed and improved fibo
|
2014-06-12 16:23:57 +03:00 |
|
Torsten Ruger
|
506f98da5a
|
fixed foo and hello, next putint
|
2014-06-12 09:07:03 +03:00 |
|
Torsten Ruger
|
b125a7c5c7
|
fix passes, add noop reduction, remove the wretched value operators
|
2014-06-11 21:36:22 +03:00 |
|
Torsten Ruger
|
e9519d4f05
|
move the code insertion functionality up to function. makes more sense. block still carries code though
|
2014-06-10 23:57:56 +03:00 |
|
Torsten Ruger
|
b66c4157d5
|
keep track of used and assigned registers for each block
|
2014-06-08 01:41:56 +03:00 |
|
Torsten Ruger
|
fbcfa844de
|
renaming and small fixes
|
2014-06-08 00:56:40 +03:00 |
|
Torsten Ruger
|
0a14cffefb
|
fixing fragment tests, most done
|
2014-06-07 23:22:32 +03:00 |
|
Torsten Ruger
|
36f237c633
|
removed the (too) fancy dsl. Also introduce register indirection
|
2014-06-07 17:59:44 +03:00 |
|
Torsten Ruger
|
c59f22f11f
|
first oo program to compile. But no worries, there is still work left to be done
|
2014-06-05 18:17:00 +03:00 |
|
Torsten Ruger
|
f523d0946d
|
fix the lasts tests
|
2014-06-05 16:27:25 +03:00 |
|
Torsten Ruger
|
f2e8e644bd
|
changes tests to only compare the tested function output, not the whole binary
|
2014-06-05 13:02:36 +03:00 |
|
Torsten Ruger
|
7cc4c6344c
|
remove the parse code and fix the rest to work with the gem (from git for now)
|
2014-06-04 22:03:45 +03:00 |
|
Torsten Ruger
|
72d4adc7af
|
another step closer to a working oo system
|
2014-06-03 22:16:57 +03:00 |
|
Torsten Ruger
|
ca19f5cb16
|
move to syms for names
|
2014-06-03 20:47:06 +03:00 |
|
Torsten Ruger
|
b7c2089046
|
the further down this goes, the smaller the circles. Soon the point will come. And then back out
|
2014-06-03 14:49:02 +03:00 |
|
Torsten Ruger
|
f60bbfa9ca
|
add a fail case, that anoyingly hangs
|
2014-06-03 09:41:39 +03:00 |
|
Torsten Ruger
|
7c1c5431bc
|
add qualification to function definitions
|
2014-06-02 14:00:30 +03:00 |
|
Torsten Ruger
|
1cff296ab5
|
small fixes, wown parse for class test
|
2014-06-02 13:45:08 +03:00 |
|
Torsten Ruger
|
31a55b07ac
|
makes memory a three operand instruction, like add etc. But 3 regs are still undone
|
2014-06-01 21:20:44 +03:00 |
|
Torsten Ruger
|
08bbad0fdc
|
more on classes, have to work on asm next
|
2014-06-01 21:03:08 +03:00 |
|
Torsten Ruger
|
1d10c2c03e
|
had forgotten calls on instance variables. corrected + tests
|
2014-06-01 14:46:16 +03:00 |
|
Torsten Ruger
|
9ea0acf2e3
|
first oo steps are wobbly, but a string.plus parses
|
2014-06-01 14:24:54 +03:00 |
|
Torsten Ruger
|
86431120d5
|
add also calls on classes and more tests for that
|
2014-05-31 17:58:26 +03:00 |
|
Torsten Ruger
|
5756e0b325
|
move that test to core (cant be done in compiled code) and focus on string addition instead
|
2014-05-31 16:43:03 +03:00 |
|
Torsten Ruger
|
cdfc1ac891
|
kernel functions are not fixed to be Object functions
|
2014-05-31 16:19:44 +03:00 |
|
Torsten Ruger
|
a6f02d6be3
|
let the BootClasses carry functions, ie one level squeezed between object_space and funtion, the class is coming to life
|
2014-05-31 14:35:33 +03:00 |
|
Torsten Ruger
|
3713d08748
|
renamed program to boot_space, as in object_space at boot time. thats the way its going
|
2014-05-31 12:52:29 +03:00 |
|
Torsten Ruger
|
3156887a81
|
add instance variables and module name as basic types (as name was there already) and add tests
|
2014-05-30 14:25:08 +03:00 |
|
Torsten Ruger
|
497211f027
|
fix class tests and link them into all. 352 tests
|
2014-05-30 12:24:38 +03:00 |
|
Torsten Ruger
|
806960a4d6
|
fixing module and class rules to actually use module names. fix all tests
|
2014-05-30 12:17:11 +03:00 |
|
Torsten Ruger
|
f03d445f3d
|
add module names and instance variables as parse rules
|
2014-05-30 12:06:42 +03:00 |
|
Torsten Ruger
|
3e93517986
|
adds class definition with tests
|
2014-05-30 10:59:49 +03:00 |
|
Torsten Ruger
|
e7a823bf3e
|
renamed module_def too module_definition and fixed leading space tests
|
2014-05-30 10:42:43 +03:00 |
|
Torsten Ruger
|
caec5ee6f0
|
add module to root parse and tests
|
2014-05-30 10:31:25 +03:00 |
|
Torsten Ruger
|
c69a44f316
|
define modules and tests, no compiling
|
2014-05-29 15:57:33 +03:00 |
|
Torsten Ruger
|
5e8688c417
|
small fixes to get all the tests to pass/run
|
2014-05-28 21:00:52 +03:00 |
|
Torsten Ruger
|
25cd80c76b
|
small fix to return gets recursive fibonacchi to work
|
2014-05-28 20:13:03 +03:00 |
|
Torsten Ruger
|
5c0f62ebb9
|
upgrade calls with operator argument and chaining. Almost feels like cheating, too easy
|
2014-05-28 15:22:37 +03:00 |
|
Torsten Ruger
|
0f118c591d
|
fix return compilation and use it on the while fibo. worked immediately :-)
|
2014-05-28 15:03:54 +03:00 |
|
Torsten Ruger
|
5a415aed92
|
fix fragment tests to actually execute on the pi and check the output
|
2014-05-28 14:55:13 +03:00 |
|
Torsten Ruger
|
c01c19209a
|
fix tests
|
2014-05-28 14:27:18 +03:00 |
|
Torsten Ruger
|
6bfe643032
|
add some return test to functions
|
2014-05-27 16:51:37 +03:00 |
|
Torsten Ruger
|
fbaf292bb6
|
add a simple return, ie the normal kind, not with trailing statements
|
2014-05-27 16:33:24 +03:00 |
|
Torsten Ruger
|
21a53c6a7f
|
fix the compound type parser tests
|
2014-05-27 15:41:34 +03:00 |
|
Torsten Ruger
|
a6ea45b203
|
fixed deprication
|
2014-05-27 15:33:08 +03:00 |
|
Torsten Ruger
|
0e2b5665ff
|
add recursive fibo test, but that needs return first
|
2014-05-27 15:31:31 +03:00 |
|
Torsten Ruger
|
62ae79dfd8
|
all lights are green in crystal land
|
2014-05-25 13:45:04 +03:00 |
|
Torsten Ruger
|
1f17262887
|
fix the handcoded fibonacci (registers again)
|
2014-05-25 13:34:06 +03:00 |
|
Torsten Ruger
|
5afa6f4239
|
move the if logic around (execute false first) and fix the parameters passing
|
2014-05-25 11:35:45 +03:00 |
|
Torsten Ruger
|
5fb1d9825a
|
fixed tests according to new calling convention
|
2014-05-25 10:57:26 +03:00 |
|
Torsten Ruger
|
6ac92cac3a
|
working on registers, awip (a work in progress)
|
2014-05-25 08:43:07 +03:00 |
|
Torsten Ruger
|
1e326e00b9
|
fix tests after register allocation work
|
2014-05-24 16:52:54 +03:00 |
|
Torsten Ruger
|
61a60abd08
|
ridiculously easy to implement the if now
|
2014-05-24 10:41:57 +03:00 |
|
Torsten Ruger
|
00d85156da
|
rename conditional to if expression
|
2014-05-24 10:18:54 +03:00 |
|
Torsten Ruger
|
6eeefc5617
|
passes the test, as (did i mention this) it actuall works (he cackles)
|
2014-05-23 20:30:55 +03:00 |
|
Torsten Ruger
|
7b6d6b9024
|
more stack tests, just to make sure
|
2014-05-23 15:08:47 +03:00 |
|
Torsten Ruger
|
c196817568
|
adds the intel tests, even intel is not integrated. Helps to catch global replace errors
|
2014-05-22 19:36:13 +03:00 |
|
Torsten Ruger
|
bfa13f9546
|
moved with better name
|
2014-05-22 19:34:42 +03:00 |
|
Torsten Ruger
|
c3488724dc
|
moved with better name
|
2014-05-22 19:34:13 +03:00 |
|
Torsten Ruger
|
dcbbff5527
|
is now a fragment
|
2014-05-22 19:32:59 +03:00 |
|
Torsten Ruger
|
ccf88319e0
|
gives function the list of blocks it needs for branching and documents also the blocks better
|
2014-05-22 14:18:22 +03:00 |
|
Torsten Ruger
|
a76ba577f2
|
putint test ok
|
2014-05-21 22:16:19 +03:00 |
|
Torsten Ruger
|
33fb8e7d2f
|
better test for foo, nice rythm
|
2014-05-21 21:37:04 +03:00 |
|
Torsten Ruger
|
e3bccaa0fe
|
thats putstring working again (better testing == better code => better sleep, longer life :-)
|
2014-05-21 21:27:05 +03:00 |
|
Torsten Ruger
|
741c55cba3
|
start testing the previous runners more rigourusly
|
2014-05-21 21:13:12 +03:00 |
|
Torsten Ruger
|
56afe575e1
|
writing before asserting to be able to debug the object, also move to hex
|
2014-05-21 19:05:40 +03:00 |
|
Torsten Ruger
|
2df2dcc528
|
function now returns locals, not free registers
|
2014-05-21 16:42:36 +03:00 |
|
Torsten Ruger
|
53cfeb72a4
|
fix test and remove hack for -
|
2014-05-21 12:42:54 +03:00 |
|
Torsten Ruger
|
9d873d3cba
|
implement string loading and convert hello test
|
2014-05-20 19:21:29 +03:00 |
|
Torsten Ruger
|
c7a2ce5af9
|
phase 2, add/sub instructions work with +- operator
|
2014-05-20 11:54:59 +03:00 |
|
Torsten Ruger
|
c3c6928dc8
|
phase one, assignment for constants (moves) work
|
2014-05-20 11:14:18 +03:00 |
|
Torsten Ruger
|
7056f6f05c
|
first step of assignment magic
|
2014-05-20 11:03:18 +03:00 |
|
Torsten Ruger
|
e8660d92db
|
merged the fibo arm test to small_programs, as that is what it is
|
2014-05-20 10:35:46 +03:00 |
|
Torsten Ruger
|
fcf76eed34
|
better testing for small assembly (for coming changes)
|
2014-05-20 10:29:08 +03:00 |
|
Torsten Ruger
|
f34fddd383
|
minor
|
2014-05-19 21:28:18 +03:00 |
|
Torsten Ruger
|
e07682b6a3
|
make the asm fibo output its result. slam dunk
|
2014-05-19 21:04:15 +03:00 |
|
Torsten Ruger
|
fe1414f383
|
adds hand coded fibo, works
|
2014-05-19 17:32:41 +03:00 |
|
Torsten Ruger
|
8ba79d8de8
|
fibinacci actually compiles, doesnt mean it works though
|
2014-05-19 11:29:18 +03:00 |
|
Torsten Ruger
|
db4f074b75
|
last split control/stack tests
|
2014-05-19 11:27:20 +03:00 |
|
Torsten Ruger
|
76f1537174
|
fix some arguemnt names
|
2014-05-18 12:34:53 +03:00 |
|
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
|
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
|
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
|
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
|
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
|
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
|
d6b5d46165
|
while compiles. jo
|
2014-05-14 12:02:54 +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
|
b0302948dd
|
rename machine to c_machine
|
2014-05-13 17:06:42 +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
|
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 |
|
Torsten Ruger
|
4a27314533
|
fix the tests for oprerators. Also naming keywords demands change
|
2014-05-11 18:38:02 +03:00 |
|
Torsten Ruger
|
3974f2516d
|
llvm example
|
2014-05-11 17:06:13 +03:00 |
|
Torsten Ruger
|
2d389d2e00
|
adds basic math operators, thanks to kasper associative and prioritised
|
2014-05-10 21:41:46 +03:00 |
|
Torsten Ruger
|
6378209f33
|
leave assignee as name_expression in assignment, fix tests accordingly
|
2014-05-10 19:11:32 +03:00 |
|
Torsten Ruger
|
47f1608685
|
start to add while loop
|
2014-05-10 19:02:51 +03:00 |
|
Torsten Ruger
|
8faf0ba17f
|
phase 1- get rid of the pesty args in structions
|
2014-05-10 15:47:27 +03:00 |
|
Torsten Ruger
|
79a28ac5fa
|
trying to get function calls to work (but will have to rework regeister handling)
|
2014-05-10 15:24:56 +03:00 |
|
Torsten Ruger
|
7d69132d90
|
first root test
|
2014-05-10 12:57:10 +03:00 |
|
Torsten Ruger
|
94e8a947d9
|
debug helper
|
2014-05-10 12:55:22 +03:00 |
|
Torsten Ruger
|
b66b5ceff7
|
fix the runner to handle list of expressiosn
|
2014-05-10 11:23:45 +03:00 |
|
Torsten Ruger
|
8f2a22d12f
|
add a repeat to the root parser rule (need to test the root more)
|
2014-05-10 11:18:39 +03:00 |
|
Torsten Ruger
|
af1df1a104
|
renamed root parser class to Crystal
|
2014-05-10 11:03:23 +03:00 |
|
Torsten Ruger
|
db22966de9
|
hacking to get list of expressions to work (shudder)
|
2014-05-10 10:59:36 +03:00 |
|
Torsten Ruger
|
8e6297dcff
|
improving the string according to kasper
|
2014-05-09 13:51:47 +03:00 |
|
Torsten Ruger
|
e4dce2394c
|
one test slipped through
|
2014-05-08 21:14:26 +03:00 |
|
Torsten Ruger
|
6ee290e0bb
|
fixes all existing parser tests
|
2014-05-08 21:09:07 +03:00 |
|
Torsten Ruger
|
53a8efaa59
|
get the conditionals to work again
|
2014-05-08 19:49:15 +03:00 |
|
Torsten Ruger
|
eaf097752a
|
use debug when parsing
|
2014-05-08 19:31:36 +03:00 |
|
Torsten Ruger
|
500bc36a29
|
testing escaped input is awkward
|
2014-05-08 19:29:35 +03:00 |
|
Torsten Ruger
|
9c2dfe79da
|
at least basic tests work again
|
2014-05-08 18:42:24 +03:00 |
|
Torsten Ruger
|
4c585e415b
|
output debug for failed parses
|
2014-05-08 18:38:10 +03:00 |
|
Torsten Ruger
|
5436e6bfc9
|
testing comments
|
2014-05-08 18:37:52 +03:00 |
|
Torsten Ruger
|
f0ad11bf8c
|
resistance was useless, wilson is now part of the collective (as intel)
|
2014-05-08 15:09:56 +03:00 |
|
Torsten Ruger
|
f7f0eee31a
|
adjust program tests to new syntax, hello world works there too -)
|
2014-05-08 14:14:15 +03:00 |
|
Torsten Ruger
|
ee864fc602
|
fixed arm tests to use ArmMachine
|
2014-05-07 14:58:38 +03:00 |
|
Torsten Ruger
|
4135c4d2dc
|
crystal says Hello.
|
2014-05-06 21:36:28 +03:00 |
|
Torsten Ruger
|
7d20b5e2df
|
at least its in shape to start debugging again (that must count as half full)
|
2014-05-05 22:21:11 +03:00 |
|
Torsten Ruger
|
69b04d930f
|
cleanup
|
2014-05-05 15:59:29 +03:00 |
|
Torsten Ruger
|
de66238a9e
|
moved all compile to ast, vm does link and assemble. Getting there
|
2014-05-05 11:03:43 +03:00 |
|
Torsten Ruger
|
7c7e58ea62
|
upgrades ast to first class
|
2014-05-05 09:51:16 +03:00 |
|
Torsten Ruger
|
7c0aa8ae7d
|
getting better, but somethings off
|
2014-05-05 09:35:40 +03:00 |
|
Torsten Ruger
|
a61170942f
|
so close i can smell it, checkpoint
|
2014-05-03 22:18:04 +03:00 |
|
Torsten Ruger
|
5608c411bf
|
rename
|
2014-05-03 18:57:43 +03:00 |
|
Torsten Ruger
|
968556a03e
|
get the tests to work
|
2014-05-03 18:56:56 +03:00 |
|
Torsten Ruger
|
04e4dc872e
|
check
|
2014-05-03 18:51:47 +03:00 |
|
Torsten Ruger
|
845a8cab8b
|
more semi random code, a checkpoint
|
2014-05-03 15:13:44 +03:00 |
|
Torsten Ruger
|
fae0c1ab8c
|
renamed program to assembler (to avoid clashes in vm)
|
2014-05-02 08:14:38 +03:00 |
|
Torsten Ruger
|
990b4726ba
|
more random code
|
2014-05-02 08:02:25 +03:00 |
|
Torsten Ruger
|
1954ca562c
|
move non working fibos out of the way
|
2014-04-29 17:14:26 +03:00 |
|
Torsten Ruger
|
98a907e8e6
|
with the new framework there are 16 more tests, just doing it thorough
|
2014-04-29 17:02:38 +03:00 |
|
Torsten Ruger
|
8151ed6b9d
|
moe the last (function) tests to new test model
|
2014-04-29 16:57:36 +03:00 |
|
Torsten Ruger
|
1593d330ae
|
move assignment test to basic suite
|
2014-04-29 16:49:37 +03:00 |
|
Torsten Ruger
|
afce197797
|
move conditional and expression test to new model
|
2014-04-29 16:47:33 +03:00 |
|
Torsten Ruger
|
76055575a1
|
moves the function call tests to new model
|
2014-04-29 16:36:29 +03:00 |
|
Torsten Ruger
|
1af45334b7
|
move argument and parameter tests to new framework
|
2014-04-29 16:22:39 +03:00 |
|
Torsten Ruger
|
9e75a50315
|
improved the framework a bit
|
2014-04-29 16:21:28 +03:00 |
|
Torsten Ruger
|
585c27c78d
|
adds the concern aproach and explanation
|
2014-04-29 14:09:10 +03:00 |
|
Torsten Ruger
|
b6e08faa39
|
folds all basic tests into new directory
|
2014-04-29 13:50:07 +03:00 |
|
Torsten Ruger
|
2507251f75
|
start to split tests according to feature
|
2014-04-29 11:37:43 +03:00 |
|
Torsten Ruger
|
7dfde45373
|
fixes missing string tests and expression/transformation
|
2014-04-29 11:17:19 +03:00 |
|
Torsten Ruger
|
9c16d81ad6
|
some explanation for the parser tests
|
2014-04-28 22:22:37 +03:00 |
|
Torsten Ruger
|
aaed2ed5a1
|
More assignment test
|
2014-04-28 22:07:35 +03:00 |
|
Torsten Ruger
|
92a9372dcc
|
moved nodes to parser (one more layer) and fixed tests. also adds assignment
|
2014-04-28 21:21:12 +03:00 |
|
Torsten Ruger
|
c1a6003704
|
move straight to rb files, fixed runner
|
2014-04-28 16:47:12 +03:00 |
|
Torsten Ruger
|
2fdbb9f3ae
|
imroved and fixed node test (parse and transform)
|
2014-04-28 16:26:19 +03:00 |
|
Torsten Ruger
|
cfcb9ded2f
|
fixed and tightened transformation tests, also by implementing node ==
|
2014-04-28 16:07:34 +03:00 |
|
Torsten Ruger
|
e04973fc3c
|
making grammar look more like ruby
|
2014-04-28 15:46:57 +03:00 |
|
Torsten Ruger
|
0a3253c5c3
|
adds a runner that parses files (and some fibo examples)
|
2014-04-28 11:19:28 +03:00 |
|
Torsten Ruger
|
74060d6ab6
|
expanded many rule names, added some tests to find the bugs introduced
|
2014-04-27 21:41:38 +03:00 |
|
Torsten Ruger
|
408cf98ea5
|
renamed parser rules for clarity. fixed
|
2014-04-27 21:12:42 +03:00 |
|
Torsten Ruger
|
28410ab22a
|
adjusted code and tests to use renamed and rearranged parser bits
|
2014-04-27 18:13:34 +03:00 |
|
Torsten Ruger
|
f628c67188
|
starting to deompose the parser
|
2014-04-27 16:30:32 +03:00 |
|
Torsten Ruger
|
96a9cd3270
|
fixed asserts
|
2014-04-27 16:09:22 +03:00 |
|
Torsten Ruger
|
5423bc8f7e
|
convert to test case
|
2014-04-27 15:56:22 +03:00 |
|
Torsten Ruger
|
d72c9a3bb0
|
fixed tests (namespacing) and finally created a test_all
|
2014-04-27 15:44:34 +03:00 |
|
Torsten Ruger
|
6fafeda66d
|
block dsl facelift
|
2014-04-27 15:19:48 +03:00 |
|
Torsten Ruger
|
88ed97ac3b
|
fix the tests with new block syntax
|
2014-04-25 21:08:19 +03:00 |
|
Torsten Ruger
|
92beb638de
|
better logic with new block class
|
2014-04-25 18:37:19 +03:00 |
|
Torsten Ruger
|
d08e6702f0
|
removes the asm from assemble signature (not used)
|
2014-04-25 11:56:53 +03:00 |
|
Torsten Ruger
|
93e4178017
|
rewrote as testcase (quicker than checking where spec errors came from)
|
2014-04-24 21:03:11 +03:00 |
|
Torsten Ruger
|
2b1a56b4fe
|
starting with own node tests
|
2014-04-24 19:45:22 +03:00 |
|
Torsten Ruger
|
c411ac5df8
|
removed the structs (code smell)
|
2014-04-24 17:38:06 +03:00 |
|
Torsten Ruger
|
305f2380a9
|
folded fake builder, started adapting tests and added example file
|
2014-04-24 17:17:17 +03:00 |
|
Torsten Ruger
|
601dc22b2e
|
get thnads tests to work
|
2014-04-24 15:53:48 +03:00 |
|
Torsten Ruger
|
d90ea3dd26
|
copied thnad to get a kickstart
|
2014-04-24 15:43:20 +03:00 |
|
Torsten Ruger
|
7d1be1f908
|
improved requires
|
2014-04-23 13:57:34 +03:00 |
|
Torsten Ruger
|
69c1f8fccc
|
reduced label mess
|
2014-04-23 13:52:34 +03:00 |
|
Torsten Ruger
|
ceefa05b2f
|
removed arm subdirectory
|
2014-04-23 12:51:09 +03:00 |
|
Torsten Ruger
|
8955cf31da
|
really remove externs
|
2014-04-23 11:14:25 +03:00 |
|
Torsten Ruger
|
778890298c
|
rename data_object to string_node and move the padding there
|
2014-04-23 00:12:43 +03:00 |
|
Torsten Ruger
|
b240dc5100
|
fixing address resolution cleans up hello world
|
2014-04-22 23:55:47 +03:00 |
|
Torsten Ruger
|
2fdc59c13c
|
some renaming
|
2014-04-22 23:13:16 +03:00 |
|
Torsten Ruger
|
1dedc41e39
|
rename objects to value sin assembler
|
2014-04-22 22:24:22 +03:00 |
|
Torsten Ruger
|
e23211602b
|
Hello World
|
2014-04-22 14:39:47 +03:00 |
|
Torsten Ruger
|
5127deeeff
|
implement offset addressing for load (ie reg+num)
|
2014-04-22 12:23:55 +03:00 |
|
Torsten Ruger
|
2784a8da98
|
just use register nodes as registers (no more arrays)
|
2014-04-22 11:58:17 +03:00 |
|
Torsten Ruger
|
fc81122bc4
|
renamed code generator to arm assembler (more appropriate)
|
2014-04-21 21:13:14 +03:00 |
|
Torsten Ruger
|
7478b65fb0
|
dropped extern functionality for now
|
2014-04-21 21:02:11 +03:00 |
|
Torsten Ruger
|
ff38bde44e
|
clean and work on labels
|
2014-04-21 17:27:05 +03:00 |
|
Torsten Ruger
|
f0c0166d1f
|
combines and dries the two program tests
|
2014-04-21 11:02:15 +03:00 |
|
Torsten Ruger
|
2dffad61b8
|
fix cp paste
|
2014-04-21 00:07:03 +03:00 |
|
Torsten Ruger
|
2c57ca773b
|
push and pop were forgotten, fixed and tested
|
2014-04-20 23:48:04 +03:00 |
|
Torsten Ruger
|
87db8b527e
|
docs were copy paste
|
2014-04-20 23:47:44 +03:00 |
|
Torsten Ruger
|
b80836c45c
|
start on a printf call
|
2014-04-20 23:47:02 +03:00 |
|
Torsten Ruger
|
6019fb5d79
|
minimal test of generating a whole programm (that can be linked and run,yeah)
|
2014-04-20 18:59:21 +03:00 |
|
Torsten Ruger
|
a89bc3d628
|
adds the other load store instructions
|
2014-04-19 19:38:13 +03:00 |
|
Torsten Ruger
|
bef1df8485
|
test and fix store instruction (syntax was not for coding)
|
2014-04-19 19:34:04 +03:00 |
|
Torsten Ruger
|
529f109171
|
found and fixed a real bug
|
2014-04-18 16:04:14 +03:00 |
|
Torsten Ruger
|
b420bb4993
|
More and more instructions (now with objdump codes to ptove it)
|
2014-04-18 15:49:23 +03:00 |
|
Torsten Ruger
|
a9d0ee2754
|
bic, and and adc tests
|
2014-04-17 20:24:37 +03:00 |
|
Torsten Ruger
|
5d9c4323bb
|
test no 3
|
2014-04-17 15:35:55 +03:00 |
|
Torsten Ruger
|
f4315804c1
|
dried up the test code
|
2014-04-17 14:43:52 +03:00 |
|
Torsten Ruger
|
36bde218f6
|
second test hurrah
|
2014-04-17 12:54:51 +03:00 |
|
Torsten Ruger
|
3431411e63
|
adds a pie in the sky
|
2014-04-17 12:53:42 +03:00 |
|
Torsten Ruger
|
8e0494f410
|
move some unused parse related classes out of the way
|
2014-04-16 12:10:58 +03:00 |
|
Torsten Ruger
|
1564f9b439
|
change result to hex because that is what objectdump disasemles
|
2014-04-16 12:03:12 +03:00 |
|
Torsten Ruger
|
e47b1dcadd
|
first working test (hurray) that checks a mov instruction
|
2014-04-14 21:53:29 +03:00 |
|
Torsten Ruger
|
2e6b90b12e
|
cleanup, requires, namespacing to actually get it to work
|
2014-04-14 21:52:16 +03:00 |
|
Torsten Ruger
|
408b290b8a
|
adds first version of the expanded as assembler from mikko
|
2014-04-14 18:09:56 +03:00 |
|