Torsten Ruger
3d342f7d88
remove new_message instruction
2015-10-10 12:04:34 +03:00
Torsten Ruger
c3eb295f4e
remove set optimization
...
will become obsolete soon anyway
2015-10-10 11:52:54 +03:00
Torsten Ruger
8642207158
remove instance_get instruction
2015-10-10 11:17:04 +03:00
Torsten Ruger
4334b68736
remove virtual main instruction
...
on a quest to remove all virtual instructions
2015-10-10 11:14:31 +03:00
Torsten Ruger
4b8a4d4ef5
improve tmp register usage
2015-10-10 11:05:55 +03:00
Torsten Ruger
024e6cb389
ion out last changes from grammar update
...
surprisingly painless, considering it was more or less a rewrite
2015-10-09 18:06:00 +03:00
Torsten Ruger
4c17ed2e6e
update the reader rewrite and reflect name changes
2015-10-09 17:51:14 +03:00
Torsten Ruger
02e9975ad6
fix case (from replace)
2015-10-07 15:25:11 +03:00
Torsten Ruger
99098951ca
rename bosl to phisol
2015-10-07 15:22:47 +03:00
Torsten Ruger
e669489419
went over the various readmes
2015-10-07 11:32:48 +03:00
Torsten Ruger
cd96e78e2d
small fix
2015-10-07 10:22:45 +03:00
Torsten Ruger
83ef902b55
better calcite and operator to expand the interpreter test
2015-10-07 10:05:34 +03:00
Torsten Ruger
cc89e49a43
renames SelfSlot to SelfsSlot
...
in the hope to make a little more distinction
2015-10-07 10:04:00 +03:00
Torsten Ruger
f0611e52db
work on branches
...
the concept is different in bosl, move appropriate to virtual
2015-10-07 10:02:51 +03:00
Torsten Ruger
4e26166dff
fix type in call issue
2015-10-06 15:26:57 +03:00
Torsten Ruger
f4a4ccb98e
several larger changes came together, bit of cleaning too
...
- all code must be in functions (which must be in classes).
— changes a fair few tests
— also changes api, as method is not recursive, not passed around
- all state in instance vars in compiler (no accessors)
- class is another such variable, surely more coming
all green again
2015-10-06 00:27:13 +03:00
Torsten Ruger
501da4d922
ignore 1.9.3
...
something with the integer encodings doesn’t quite sync
2015-09-27 22:56:20 +03:00
Torsten Ruger
4186405930
new i_to_s test
2015-09-27 22:39:10 +03:00
Torsten Ruger
259b0afa96
improve tests
2015-09-27 20:28:34 +03:00
Torsten Ruger
6e009cc6df
remove send instruction
2015-09-27 19:18:36 +03:00
Torsten Ruger
eb57eb4d41
minor send fixes
2015-09-27 19:07:56 +03:00
Torsten Ruger
bb8a57f5a5
remove send , move into call_site (resolve to calls)
2015-09-27 19:07:12 +03:00
Torsten Ruger
252c0ccdca
finish typing variables
2015-09-27 16:06:48 +03:00
Torsten Ruger
26c6db17b1
better inspect
2015-09-27 16:06:11 +03:00
Torsten Ruger
18935366fe
introducing class variable and typed arguments
2015-09-27 14:30:41 +03:00
Torsten Ruger
94c08f7129
small clean
2015-09-27 14:07:02 +03:00
Torsten Ruger
dba94827ec
remove tmp variables
...
sadly without having to touch tests
2015-09-27 14:00:24 +03:00
Torsten Ruger
5a2a857485
finish the field access
...
now that fields can be defined
2015-09-27 12:59:50 +03:00
Torsten Ruger
964abe1e32
small cleans
2015-09-27 12:59:26 +03:00
Torsten Ruger
6bdbfcde60
update reader and implement class field
2015-09-27 12:58:54 +03:00
Torsten Ruger
b99b392481
new field access code and test. wip as field def broken
2015-09-27 11:28:06 +03:00
Torsten Ruger
c4f89441e2
cleaning
2015-09-27 11:27:30 +03:00
Torsten Ruger
4d9d67af5c
move ast code/patch here
2015-09-27 11:26:53 +03:00
Torsten Ruger
9fe01c7b31
remove unknown type
2015-09-23 18:35:37 +03:00
Torsten Ruger
b1cab4f395
compiler test back up
2015-09-20 17:33:05 +03:00
Torsten Ruger
5f628744d6
more test working
...
operator wip
2015-09-20 16:52:26 +03:00
Torsten Ruger
77f0a08060
update and fix class compilation
2015-09-20 16:30:39 +03:00
Torsten Ruger
f2fc9c5f89
new field def compiles, fix test
2015-09-20 16:30:07 +03:00
Torsten Ruger
bc70c1efe5
temporarily disabling test that haven't been fixed yet
2015-09-19 22:24:57 +03:00
Torsten Ruger
775bca50ac
switching to ast::processor
...
using instance methods instead of context
2015-09-19 18:56:18 +03:00
Torsten Ruger
3a885a8e46
more expressions and if test
2015-09-19 17:57:44 +03:00
Torsten Ruger
9bacb07f1c
add some ast sugar
2015-09-19 17:57:31 +03:00
Torsten Ruger
2061097e88
move compiler to bosl and get first test working (adjusting syntax as i go)
2015-09-19 16:28:41 +03:00
Torsten Ruger
df95b8b54d
trigger index for object changed
2015-08-23 02:14:16 +02:00
Torsten Ruger
c039f3d6e6
fix the string warning raises
2015-08-17 02:37:07 +03:00
Torsten Ruger
4e56056b62
better test for add
2015-08-09 00:53:04 +03:00
Torsten Ruger
bae7f5dcb1
better to_s for load constant
2015-08-09 00:52:47 +03:00
Torsten Ruger
db31ff7021
implement adding in interpreter
2015-08-09 00:52:27 +03:00
Torsten Ruger
5d838056fa
small rename and new test for layout
2015-08-08 18:08:47 +03:00
Torsten Ruger
ca14ef8914
fix test result, but not test yet
2015-08-07 16:46:55 +03:00
Torsten Ruger
4afd7f78ca
fix the plus method that sneaked into arm
2015-08-06 18:55:08 +03:00
Torsten Ruger
9ebe6eb5b7
move to clss names as types
...
so as not to mix ruby class names into parfait code
2015-08-06 18:28:40 +03:00
Torsten Ruger
75c43d1b03
add fixnum as constant (was buggy)
2015-08-06 18:28:09 +03:00
Torsten Ruger
2f39f707f0
better naming
2015-08-06 18:27:35 +03:00
Torsten Ruger
2c6ca7b4f2
small checks
2015-08-06 18:27:25 +03:00
Torsten Ruger
8560f15c87
plus function, indentation
2015-08-05 18:49:37 +03:00
Torsten Ruger
21b0702154
fix tests (just using local gem)
2015-08-04 22:01:20 +03:00
Torsten Ruger
9680ff2a71
fxes for add test
2015-08-04 21:46:33 +03:00
Torsten Ruger
96c7b7133d
no more partial boots, always full reboot
...
otherwise tests are not indepant
2015-07-30 19:19:37 +03:00
Torsten Ruger
8ab9a417aa
minors
2015-07-30 19:18:41 +03:00
Torsten Ruger
7216300452
add interpreter here (moved from debugger)
2015-07-30 19:18:12 +03:00
Torsten Ruger
3fb08acf3f
better tests to find sneaky module bug
2015-07-28 16:19:10 +03:00
Torsten Ruger
5fd04ee0c5
shuffling and rename dummy
2015-07-28 16:18:32 +03:00
Torsten Ruger
36f635f7c1
adding sources to register instructions
2015-07-27 12:13:39 +03:00
Torsten Ruger
f91c9fabe8
fix block initialization
2015-07-26 18:28:39 +03:00
Torsten Ruger
e7b8f2fcc8
critical bug from array/list mix up
2015-07-26 18:27:54 +03:00
Torsten Ruger
b0c78479ff
clearer to_s s
2015-07-25 09:30:58 +03:00
Torsten Ruger
772212bad9
fix the reg test (one off)
2015-07-24 17:23:44 +03:00
Torsten Ruger
139b0174d8
to_s for reg instructions
2015-07-24 13:23:56 +03:00
Torsten Ruger
fa552bf751
opal only bug, deleting while iterating over array
2015-07-23 17:15:07 +03:00
Torsten Ruger
2f409ea4e1
more dead code goes
2015-07-21 20:24:31 +03:00
Torsten Ruger
074f3af174
uncomment dead code
...
it’s dead, unfair to say it’s untested.
percentage wise i mean
2015-07-21 19:57:38 +03:00
Torsten Ruger
e3577d18af
fix that silly mistake that made the percentage plummet
...
mostly due to the fact that object is a hash now,
not array. Took a while though
2015-07-21 19:41:30 +03:00
Torsten Ruger
2d0424a370
turned out to be a rewrite of boot process
...
and also attribute handling and fake_memory
luckily there are tests and all is green again
2015-07-21 15:40:25 +03:00
Torsten Ruger
f8cb33ec5e
test ivar name list
2015-07-20 13:20:43 +03:00
Torsten Ruger
2c1c38716b
move from new_object to normal new
2015-07-20 13:01:15 +03:00
Torsten Ruger
d7c9245bb3
more fragment tests
2015-07-19 13:31:13 +03:00
Torsten Ruger
31d825df7b
fix and test basic and name expressions
2015-07-19 13:20:34 +03:00
Torsten Ruger
48d090f19c
test return. remove some dead code
2015-07-19 13:03:21 +03:00
Torsten Ruger
db17a9b696
fix function and class compile
...
also fix misconception: methods do not have to be added to class by
called
that is a side effect from compiling a method
2015-07-19 12:34:23 +03:00
Torsten Ruger
849a92a909
splitting out the compile_name expression
2015-07-19 12:31:35 +03:00
Torsten Ruger
cbff41b61d
test name expr
2015-07-19 11:15:38 +03:00
Torsten Ruger
0a09477dc6
fix and test compiling classes
2015-07-19 10:36:06 +03:00
Torsten Ruger
ae7350bd57
redefining a methods is not an error
...
and happens in tests
2015-07-19 10:35:45 +03:00
Torsten Ruger
a554762da8
fix the compile while test
2015-07-18 19:02:54 +03:00
Torsten Ruger
3d8fc8819c
fix rebooting by clearing our main
2015-07-18 16:12:50 +03:00
Torsten Ruger
b83f50c57c
rebooting tests for small compiles
2015-07-18 15:28:57 +03:00
Torsten Ruger
7b1e89effb
get fragment tests back online
...
the 58% REALLY doesn’t look good
and things have settle down, so no more excuses
2015-07-18 14:33:09 +03:00
Torsten Ruger
f4f703975b
removed arm and use as gem
2015-07-18 14:12:20 +03:00
Torsten Ruger
e1c19dee80
remove old to_asm
...
very strange that is was called in 1.9 but not 2.0
2.0 seems to delay interpolating strings
2015-07-18 12:15:07 +03:00
Torsten Ruger
46de0f278e
fix the boot
...
was broken for unknown reason really
2015-07-18 11:53:04 +03:00
Torsten Ruger
f5136b6b68
minor formatting
2015-07-18 11:52:30 +03:00
Torsten Ruger
53d8f4b163
add source to instruction
...
for debug
2015-07-18 11:21:49 +03:00
Torsten Ruger
50da6a40f2
Move the Main instruction from register to virtual
...
also needs a branch in register.
This way the register level is self sufficient
(noticed while writing debugger)
2015-07-17 13:21:57 +03:00
Torsten Ruger
60d09ab057
fix for opal
...
in opal string and symbol is the same.
2015-07-17 11:40:40 +03:00
Torsten Ruger
9a48ab1330
fix eval for opal consumption
2015-07-17 11:39:20 +03:00
Torsten Ruger
b670e058a9
fixes to get opal to work
...
opal has bug with << and |=, but changing syntax works
2015-07-12 10:01:45 +03:00
Torsten Ruger
ae97425918
reminder
2015-07-04 14:34:51 +03:00
Torsten Ruger
b61c73acdd
renamed info to MethodSource
2015-07-03 20:13:03 +03:00
Torsten Ruger
e959c5b0f5
fixed wrong exit code
...
no wonder it was set faulting, duh
2015-07-02 13:50:13 +03:00
Torsten Ruger
4f2f56fff8
minors
2015-07-02 13:49:33 +03:00
Torsten Ruger
69781fb505
remoe sys call message
...
and rely on linux to restore all registers
save message in r8
2015-07-02 13:48:32 +03:00
Torsten Ruger
9a6c5d9ea8
wordlnegth is not +1 for string as no trailing 0
2015-07-02 13:47:46 +03:00
Torsten Ruger
caa4ae1cf0
new tests for space
...
finds the bug in message creation!
2015-07-02 11:09:23 +03:00
Torsten Ruger
9ca5ddf7c0
fix all tests
...
some had to be disabled
since stability is coming back more test are coming too
2015-07-02 10:26:48 +03:00
Torsten Ruger
3195d800e9
fix putstring file descriptor
2015-07-02 09:49:52 +03:00
Torsten Ruger
11997ef354
had to revert name method change
...
method is not known when message is created
2015-07-02 09:48:41 +03:00
Torsten Ruger
7136450bde
move put string to string where it belongs
2015-07-01 21:45:41 +03:00
Torsten Ruger
f8ba77dff7
fix require
2015-07-01 21:45:21 +03:00
Torsten Ruger
1b791dc0d0
putstring was missing the steam id
2015-07-01 21:42:59 +03:00
Torsten Ruger
8f0fd30ef3
small name update
2015-07-01 21:42:31 +03:00
Torsten Ruger
6a23ef8b26
storing method, not just name in message
...
goes with a rename and other admin
2015-07-01 19:39:23 +03:00
Torsten Ruger
5e85d0781f
have to retry in assembler
...
can raise several times, calling once was not enough
tbr: to be revisited
2015-07-01 19:36:18 +03:00
Torsten Ruger
60fe0dfd1c
separate New frame and message
...
and also much much shorter now, as all is static
2015-07-01 19:27:52 +03:00
Torsten Ruger
135fcaa8fa
static message chain
...
Rewrote Message + frame, only static linked list needed, not dynamic
frames either
2015-07-01 19:27:18 +03:00
Torsten Ruger
fb67f550ec
more index fixes, this time arguments
2015-07-01 09:48:20 +03:00
Torsten Ruger
4c315a8115
fix the autocomplete
2015-07-01 09:47:37 +03:00
Torsten Ruger
047c77e186
fixed that darn method address bug
2015-07-01 09:47:10 +03:00
Torsten Ruger
9541712af8
fixing all the indexes
...
with the type word and layout
but the list starting at 1, indexes still need 1 added
and for arm x 4.
Tried to get all that into one function, resolve_index
2015-06-30 18:38:56 +03:00
Torsten Ruger
88f45cbf15
weird 4 to add for call works
2015-06-30 18:36:57 +03:00
Torsten Ruger
c0f11d70f1
rephrased the retry, didnt find the bug though
2015-06-30 18:35:37 +03:00
Torsten Ruger
b9e2d4dd21
remove some debug
2015-06-30 10:22:54 +03:00
Torsten Ruger
7e9b940890
add init_message to space
...
so kernel::__init can use that and the first next_message does not need
to be reused
2015-06-30 09:52:17 +03:00
Torsten Ruger
df2a080bd0
move register_machine to register
2015-06-30 09:46:11 +03:00
Torsten Ruger
ee2294ded7
remove unused reference
2015-06-30 09:45:45 +03:00
Torsten Ruger
60c8f8ef73
move generator functions to the instructions they generate
2015-06-30 09:43:50 +03:00
Torsten Ruger
bd77db656a
remove class_eval on slots to map registers
...
Use their class names (or for now called object names)
these are the same that Register helper functions accept already anyway
2015-06-30 09:39:45 +03:00
Torsten Ruger
c4502c5030
get rid of the last constants
...
return them by method, nicer code
2015-06-30 09:38:32 +03:00
Torsten Ruger
b8090e0ecd
fix init to load into new message
2015-06-30 09:37:25 +03:00
Torsten Ruger
3a6d3143c5
change method debug format for gdb autocomplete
2015-06-30 09:37:01 +03:00
Torsten Ruger
0f2c8e4201
finally scoping builtin to register
...
had put this off because it breaks history
but now the references to register stuff which
builtin is off course full of, become much shorter
2015-06-29 21:03:58 +03:00
Torsten Ruger
a03dcecbbd
fix namespacing and remove indexes
2015-06-29 20:58:52 +03:00
Torsten Ruger
553f30c874
more ripples from removing index constants
2015-06-29 20:58:06 +03:00
Torsten Ruger
1e18db00c9
add set_slot and save_return
...
as functions to generate instructions
2015-06-29 20:57:16 +03:00
Torsten Ruger
a24e96efbc
asserts to debug
2015-06-29 20:56:11 +03:00
Torsten Ruger
218fafca05
renames
2015-06-29 20:55:45 +03:00
Torsten Ruger
5ce7b6c7c9
removing those ugly slot index constants
...
The constants were bad enough,
but they were also at the wrong level
Now register level is defining mappings from
symbol names to indexes, by using the layout
2015-06-29 10:55:22 +03:00
Torsten Ruger
06b5d24729
fixing require order
...
so Register stuff is defined when builtin is loaded
2015-06-29 10:53:27 +03:00
Torsten Ruger
a16abeb3e6
giving the method to return and save
...
so they can make decisions
like wether to create a frame or not
2015-06-28 22:03:21 +03:00
Torsten Ruger
02615db508
minor
2015-06-28 22:02:27 +03:00
Torsten Ruger
8674c322c4
correctly linking frames and messages
2015-06-28 22:02:07 +03:00
Torsten Ruger
31635d9747
fixing index issues
2015-06-28 22:01:13 +03:00
Torsten Ruger
99b59d920c
constant fixes
2015-06-28 10:52:02 +03:00
Torsten Ruger
a00a49ecdb
fix frame indexes
2015-06-28 10:50:47 +03:00
Torsten Ruger
ef42abe611
unifying register comstants
...
were in several files with different names
many files touched, but just renames
2015-06-27 21:16:46 +03:00
Torsten Ruger
97b4c469f8
fixing register order in some instructions
...
and their use
Arm is confusing as it has result as first arg
we use forward logic, i.e. from -> to
2015-06-27 20:09:21 +03:00
Torsten Ruger
add79e5157
use sod names for debug info
2015-06-27 20:08:07 +03:00
Torsten Ruger
294ea8de4f
fix the move, correct for funny pipeline
2015-06-27 20:07:42 +03:00
Torsten Ruger
485d6566ad
write object refs at offset
...
that is (only) the linux/arm offset off course
2015-06-27 15:17:15 +03:00
Torsten Ruger
d0d857bbe0
fix object loading
...
by (ahem) copying the code from MoveInst.
2015-06-26 20:36:00 +03:00