Torsten Ruger
0fa7f54bcc
found and fixed hashing bug
2016-12-31 14:04:04 +02:00
Torsten Ruger
d6c503ecf4
inlined indexed into list
...
which was the only one using it.
A whole lot simpler, considering it will have to be bootstrapped someday
2016-12-30 21:00:18 +02:00
Torsten Ruger
7f06e00ccd
making types private in space
...
turned out to be unnecessary, but still better
2016-12-30 20:47:28 +02:00
Torsten Ruger
ef66a87527
fixed silly dictionary bug
...
also finally duplicating keys and values and not handing them out
2016-12-30 20:46:18 +02:00
Torsten Ruger
a7935db107
cleaner way to generate argument types
...
possibly more correct
2016-12-30 19:17:59 +02:00
Torsten Ruger
83b6628f1a
whitespace and code style
2016-12-30 19:17:15 +02:00
Torsten Ruger
db798d1a4a
no default arg on init
...
also making sure the type is in the hash
but also that the order of type does not matter
2016-12-30 18:41:36 +02:00
Torsten Ruger
a82c9e8fb1
minor whitespace and renaming
2016-12-30 18:39:49 +02:00
Torsten Ruger
f0350601a7
Move the space instance to the parfait module
...
A better fit, maybe even a pattern for singletons
2016-12-30 14:10:49 +02:00
Torsten Ruger
a00f6be3ba
remove the space instance from register machine
...
bad design, probably from the booting
2016-12-30 14:04:59 +02:00
Torsten Ruger
ef872edd7a
rename instance_methods to just methods
2016-12-30 13:33:07 +02:00
Torsten Ruger
631038dfbd
add another test (still failing)
2016-12-30 13:15:08 +02:00
Torsten Ruger
8aae8f7425
disabling failing test for now
...
have to add more test and code climate will show where
2016-12-29 21:24:11 +02:00
Torsten Ruger
4b5c590afe
rework the boot process
...
Using a BootSpace mock to use more of the ruby new as before
Still some allocating and mucking about, but less
2016-12-29 18:53:24 +02:00
Torsten Ruger
e69d9a492e
mostly moving to ruby instance variables
2016-12-29 18:51:24 +02:00
Torsten Ruger
25f44949e4
removing the fake memory form object
...
just in word and list now
2016-12-29 18:49:03 +02:00
Torsten Ruger
6214040888
changing to ruby instance variables
...
from the fake memory
2016-12-29 18:47:45 +02:00
Torsten Ruger
b5f04ec718
mostly renames from the type change
...
also making setters as explicit set_xx methods
2016-12-29 18:45:32 +02:00
Torsten Ruger
f4b3c645e5
rework type with separate arrays for names and types
...
Means no more indexed
also using ruby instances
small rename for names
2016-12-29 18:42:38 +02:00
Torsten Ruger
4c3007e6c0
removing meta class (for now)
2016-12-29 18:39:59 +02:00
Torsten Ruger
80237e5033
rename position accessor
...
for future
2016-12-28 21:40:06 +02:00
Torsten Ruger
c60949fe24
small refactor on arg loading
2016-12-28 21:10:14 +02:00
Torsten Ruger
e551732f18
tighter integration with factory methods for adding code
...
define methods to collapse the code Register.
in add_code Register.factory_method
most instructions done, except op and branch that are rare
2016-12-28 20:37:54 +02:00
Torsten Ruger
af31774074
implement assignment type check
2016-12-28 19:20:16 +02:00
Torsten Ruger
9cf56b3aa6
use factory functions consistently to create instructions
2016-12-28 19:01:58 +02:00
Torsten Ruger
4cf732d395
use transfer factory
2016-12-28 18:37:15 +02:00
Torsten Ruger
57c038f13b
use load_constant factory method
2016-12-28 18:31:29 +02:00
Torsten Ruger
7d29a85187
remove legacy :int type
2016-12-28 18:25:14 +02:00
Torsten Ruger
a3585870b9
remove unused code
2016-12-28 18:17:52 +02:00
Torsten Ruger
4412eda105
small refactor and rename
2016-12-28 18:16:39 +02:00
Torsten Ruger
184f129107
dead comment removal
2016-12-28 18:10:33 +02:00
Torsten Ruger
25ae6e3d26
remove next_list from NamedList
...
Was legacy from the days of (linked) Frames
Now only messages are linked
2016-12-28 18:08:07 +02:00
Torsten Ruger
8867b13240
yep, opal != OPAL
...
engine has to be in small letters it seems
OPAL came from the original commit in 2013, but alas
2016-12-28 14:35:07 +02:00
Torsten Ruger
9226de4502
testing to_s
2016-12-28 14:11:05 +02:00
Torsten Ruger
266764be06
testing to_s on Code
2016-12-28 13:59:02 +02:00
Torsten Ruger
a8f3d5a634
had to fix the string hash for opal
2016-12-28 13:53:57 +02:00
Torsten Ruger
4940bc41a3
keep positions globally, not in the object
...
hopefully cleaner switch after bootstrapping
2016-12-28 12:51:18 +02:00
Torsten Ruger
903fc3e4cf
much ripples from changing the calling convention
...
See previous commit
Now args and locals are arrays in the Message
2016-12-27 20:39:39 +02:00
Torsten Ruger
f1cfd3c379
change calling convention
...
Message carries arrays for arguments and locals
This means an extra load for any access
Also fix silly bug: using the wrong method (the one we’re in, not the
one we’re calling)
2016-12-27 20:37:53 +02:00
Torsten Ruger
3c3dedadd1
remove indexed_length from NamedList
2016-12-27 20:34:47 +02:00
Torsten Ruger
aaa94f0743
small fixes
2016-12-27 20:34:11 +02:00
Torsten Ruger
a5946cb644
same renames for bytes (set/get_byte)
2016-12-25 18:11:58 +02:00
Torsten Ruger
f648bf7bd5
rename also get_slot, to slot_to_reg
...
makes source and target clear
2016-12-25 18:05:39 +02:00
Torsten Ruger
35adf9a5e6
rename set_slot
...
set_slot was clear about the target, but not the source.
Better with reg_to_slot (and soon it’s inverse slot_to_reg)
2016-12-25 18:02:39 +02:00
Torsten Ruger
1b8d6149dd
adding to_s to code for debugging
2016-12-23 21:31:31 +02:00
Torsten Ruger
6c9bd7e476
remove unused code
...
also just came through opal
2016-12-22 21:16:56 +02:00
Torsten Ruger
3b888b203d
crude rework of the hashing to work in opal
2016-12-22 21:16:36 +02:00
Torsten Ruger
2adec3226c
opal gods require explicit requires
2016-12-22 21:15:20 +02:00
Torsten Ruger
c3c52d36b8
seperate args from message (just like frame)
2016-12-21 22:35:36 +02:00
Torsten Ruger
ed12108425
rename locals from type to role in message
2016-12-21 19:01:42 +02:00
Torsten Ruger
0e99ff33ae
use frame type rather than the indexed construct
2016-12-21 18:59:07 +02:00
Torsten Ruger
93ba5543b3
more renaming of frame
2016-12-21 18:51:22 +02:00
Torsten Ruger
0040baae28
rename frame to named_list to be shared soon
2016-12-21 18:45:18 +02:00
Torsten Ruger
b242f9e223
bringing the locals into the ruby method
2016-12-21 11:30:35 +02:00
Torsten Ruger
9ec9ccb9b6
start on collector for local variables
2016-12-21 11:20:36 +02:00
Torsten Ruger
8b05951883
extracting processor comonality before adding a third
2016-12-21 10:51:33 +02:00
Torsten Ruger
8507bef08b
extracting methods for the compiler to handle
2016-12-20 20:02:52 +02:00
Torsten Ruger
a70d20d63e
add a ruby method
...
including source ast and args, later locals
2016-12-20 20:02:20 +02:00
Torsten Ruger
9e89306733
rename to get guard matches
2016-12-20 20:01:28 +02:00
Torsten Ruger
aa6685a0cb
test collector for ivar assignment
2016-12-20 15:46:23 +02:00
Torsten Ruger
aa5f48e3c6
remove instance_names from class again
...
and use types names instead. For now assuming Object class
2016-12-19 14:20:47 +02:00
Torsten Ruger
af9fed863f
small rename
2016-12-19 14:16:10 +02:00
Torsten Ruger
107e3e6d58
pick up instance variables from the class
...
Crude first set to creating types
2016-12-18 20:05:11 +02:00
Torsten Ruger
e77298f4b1
Give the class a list of ivars
...
Which is redundant with the type’s names, so let’s see
2016-12-18 20:04:40 +02:00
Torsten Ruger
af9987659f
create and test derived classes too
2016-12-18 17:17:58 +02:00
Torsten Ruger
170d453a36
start with melon and tests
...
First step, create a basic class
2016-12-18 17:02:55 +02:00
Torsten Ruger
756cb52a98
renames compiler to method_compiler
2016-12-18 14:15:19 +02:00
Torsten Ruger
272f99daf7
the cop struck again
2016-12-17 20:09:17 +02:00
Torsten Ruger
48af14f5c9
removes class statements
...
classes have to be created in melon, a level up
2016-12-17 18:31:26 +02:00
Torsten Ruger
ffb69a2c55
remove function statements
...
functions need to be defined a level up
2016-12-17 18:28:42 +02:00
Torsten Ruger
8845b91529
remove FieldDef
...
and on_field_def , :field_def and fixed all related tests
local variables will have to be determined outside the typed layer
2016-12-17 13:12:49 +02:00
Torsten Ruger
c12f11fba5
try both ree and cop
2016-12-17 09:44:21 +02:00
Torsten Ruger
782627ae79
small rename
...
to avoid confusion with type.create_method
2016-12-17 00:21:12 +02:00
Torsten Ruger
5c34835ae3
type converts method args if needed
2016-12-17 00:17:54 +02:00
Torsten Ruger
681b53cc4c
make compiler default to compiling Space.main
2016-12-17 00:17:35 +02:00
Torsten Ruger
f8cefcde3c
retiring ClassField and class_field from typed layer
...
Creating classes is the responsibility of melon
2016-12-16 19:05:49 +02:00
Torsten Ruger
dd6dede6ef
refactor object file somewhat
2016-12-16 16:18:14 +02:00
Torsten Ruger
e10fc3eedd
some reek assited coding on assembler
2016-12-16 15:41:26 +02:00
Torsten Ruger
5cd05f6135
refactor memory instruction (needs better tests)
2016-12-16 15:40:52 +02:00
Torsten Ruger
190a0ffa47
adds set_byte interpreter test
2016-12-16 01:43:54 +02:00
Torsten Ruger
b2579a2b82
dead code removal
2016-12-16 01:31:38 +02:00
Torsten Ruger
6f9955a726
more auto guard rules
...
and related renaming of files
2016-12-16 01:14:09 +02:00
Torsten Ruger
516bbd10b7
little fat of meta class
...
meta is firmly in the ruby world, not implemented in type world
2016-12-16 00:57:10 +02:00
Torsten Ruger
f7e01ff05e
remove the value class
...
more of an idea, had no impact on implementation
2016-12-16 00:56:25 +02:00
Torsten Ruger
fd519314cb
strip down compare instruction
...
not really used, using conditional branches instead.
(in arm any instruction can execute conditionally)
2016-12-16 00:41:37 +02:00
Torsten Ruger
ed0900df7f
extracting to_s from getter and setter
2016-12-16 00:30:26 +02:00
Torsten Ruger
bc22c40101
Get Byte interpreter test
2016-12-15 22:15:58 +02:00
Torsten Ruger
886220d388
remove unused variable class
2016-12-15 19:43:53 +02:00
Torsten Ruger
dc56274940
refactor also building word
...
obviously created by copy/paste, more refactoring possible
2016-12-15 19:31:39 +02:00
Torsten Ruger
5ea6bfed27
refactor builtin object, some machine too
2016-12-15 19:20:54 +02:00
Torsten Ruger
94c423c2b3
whittling arm_translator
2016-12-15 18:21:08 +02:00
Torsten Ruger
e2c006b5ad
minor
2016-12-15 18:08:55 +02:00
Torsten Ruger
884bf23e5f
fix elf test
2016-12-15 17:57:45 +02:00
Torsten Ruger
1571c796bb
remove unused from type
2016-12-15 14:00:34 +02:00
Torsten Ruger
2b3f9c398e
add find method to indexed
2016-12-15 14:00:03 +02:00
Torsten Ruger
b93f207638
some common instruction extration
2016-12-15 12:38:22 +02:00
Torsten Ruger
fdefb8e7a5
more refactoring on compare
2016-12-15 12:38:03 +02:00
Torsten Ruger
ec2b0a563e
bunch of method extraction on instructions
2016-12-14 21:53:26 +02:00
Torsten Ruger
55c108a8d7
refactor move_instruction a bit
2016-12-14 21:13:41 +02:00
Torsten Ruger
b3eeb7db21
memory instruction refactor (small)
2016-12-14 21:05:24 +02:00
Torsten Ruger
6eea3f2b2a
refactor logic instruction
2016-12-14 20:31:37 +02:00
Torsten Ruger
c1d23a8d48
whitespace round plusses
2016-12-14 19:57:09 +02:00
Torsten Ruger
27e7a362db
comment unused code
2016-12-14 19:52:08 +02:00
Torsten Ruger
56bf875f36
refactor call_instruction
2016-12-14 19:07:03 +02:00
Torsten Ruger
bf4ddd16ee
remove dead code
2016-12-14 19:06:48 +02:00
Torsten Ruger
456e9b1ec0
folded salama-arm in
2016-12-14 13:43:13 +02:00
Torsten Ruger
9a0e2bcb11
typed methods now for type only
2016-12-14 13:24:42 +02:00
Torsten Ruger
b3a9d8b1bc
register and boot consequences of typed method
2016-12-14 13:23:46 +02:00
Torsten Ruger
021fab31db
small things
2016-12-14 13:22:47 +02:00
Torsten Ruger
bd875be023
move typed method's home to type
...
class should in the future have ruby_methods
2016-12-14 13:21:55 +02:00
Torsten Ruger
012b5d683c
change method locals to type object too (same as args)
2016-12-13 19:18:17 +02:00
Torsten Ruger
16b3a77350
fixes from the method argument change
...
Affects
method creation
argument manipulation
compiler / to_code
2016-12-13 18:49:45 +02:00
Torsten Ruger
c346260bde
change method arguments to be a type instance
...
where is was a list of variables (half baked)
variables also having values (not applicable)
2016-12-13 18:47:44 +02:00
Torsten Ruger
1c28926c6b
improve type tests
2016-12-13 18:46:03 +02:00
Torsten Ruger
357490ff5f
add little bit docs
2016-12-13 11:02:53 +02:00
Torsten Ruger
17023fdeb1
rename method to typed_method
2016-12-12 23:38:55 +02:00
Torsten Ruger
4ff684b6a4
even more refactoring for assembler
2016-12-11 16:48:01 +02:00
Torsten Ruger
fffe814205
more assembler refactor
2016-12-11 16:12:39 +02:00
Torsten Ruger
90a808b1c5
assebler refactor
2016-12-11 14:48:12 +02:00
Torsten Ruger
6bb23eac56
small interpreter refactor
2016-12-11 14:19:24 +02:00
Torsten Ruger
e479b00b29
introduce base class for get_slot and get_byte called getter
2016-12-11 14:12:35 +02:00
Torsten Ruger
ef285a146f
add abstract base class for set_byte and set_slot called setter
2016-12-11 14:06:09 +02:00
Torsten Ruger
1dbd8c86e0
remove parslet dependency
2016-12-11 14:05:43 +02:00
Torsten Ruger
f3248462cc
remove references to soml
2016-12-11 12:55:03 +02:00
Torsten Ruger
3715eb94ed
uncomment unused code for now
2016-12-11 12:18:11 +02:00
Torsten Ruger
b6fdb51ed1
fix statement list compilation
2016-12-11 12:13:42 +02:00
Torsten Ruger
661911de0a
comment unused fluff
2016-12-10 23:45:24 +02:00
Torsten Ruger
e82c86f6c1
fix class def tests and code
2016-12-10 22:41:49 +02:00
Torsten Ruger
6d4347c7ba
finish assignment tests
...
and related code fixes
2016-12-10 18:48:18 +02:00
Torsten Ruger
f49b0c7356
fix assignment
...
tests paying off
2016-12-10 18:08:21 +02:00
Torsten Ruger
87693112d4
small fix
2016-12-10 18:07:38 +02:00
Torsten Ruger
4054b61752
fix more expression tests
2016-12-10 15:18:37 +02:00
Torsten Ruger
de5d87cde7
add basic compiler expression tests (back)
2016-12-10 04:01:47 +02:00
Torsten Ruger
5c2f545f8e
tests for ast to code converter
2016-12-10 03:43:44 +02:00
Torsten Ruger
29fb2a50f5
refactor while statement
2016-12-09 14:29:06 +02:00
Torsten Ruger
da4a1af074
modulize return and list
2016-12-09 14:19:22 +02:00
Torsten Ruger
99132a92b6
modulize operator_expression
2016-12-09 14:17:01 +02:00
Torsten Ruger
037fd722df
clean up function definition, now function statement
2016-12-09 14:12:41 +02:00
Torsten Ruger
059fb38f08
modulize field_access and field_def
2016-12-09 14:04:06 +02:00
Torsten Ruger
4da13c3867
move ast to tree, remove seperate helper file
2016-12-09 13:56:13 +02:00
Torsten Ruger
bab2fe32df
modulize class_field and class_statement
2016-12-09 13:46:26 +02:00
Torsten Ruger
2b008dd3da
modulize basic_value
2016-12-09 13:40:10 +02:00
Torsten Ruger
fa14e35a50
refactor if_statement
2016-12-09 13:38:07 +02:00
Torsten Ruger
1e7093c63f
remodel assignment a bit
2016-12-09 13:20:48 +02:00
Torsten Ruger
395fd2d701
refoactor call site some
2016-12-09 12:22:37 +02:00
Torsten Ruger
224670e449
refactor name expression for compiler
2016-12-09 12:13:33 +02:00
Torsten Ruger
ca4bdcc528
gets rid of soml-parser completely
2016-12-08 20:13:08 +02:00
Torsten Ruger
e2236cf703
move soml ast here, now called type as the language is going
2016-12-08 19:38:50 +02:00
Torsten Ruger
da553f996f
move compiler to typed
...
starting to get rid of soml, bit by bit
2016-12-08 15:25:20 +02:00
Torsten Ruger
c3a28d2abc
small collector change
2016-12-08 15:19:37 +02:00
Torsten Ruger
a31f75fe93
basic immutability for type
...
add_instance_variable now uses global type list to check
adds hash and to_has functions
use backdoor (send) for booting
2016-12-08 12:50:25 +02:00
Torsten Ruger
137d3c9231
add each_with_index to indexed
2016-12-08 12:48:39 +02:00
Torsten Ruger
ad91c0a4bf
add inspect method to dictionary
2016-12-08 12:48:08 +02:00
Torsten Ruger
2741f35380
add a each_pair to indexed and use in types
2016-12-07 23:35:51 +02:00
Torsten Ruger
266a04040b
add types hash to space
2016-12-07 23:34:45 +02:00
Torsten Ruger
bcba3ed3b2
move parfait to new module
2016-12-06 16:50:54 +02:00
Torsten Ruger
3ed0c4829a
log test
2016-12-06 16:44:04 +02:00
Torsten Ruger
adca8b21c1
move soml tests out, small cleanup
2016-12-06 15:08:29 +02:00
Torsten Ruger
5ac14ddccc
update gems and fix tests
2016-12-06 12:08:18 +02:00
Torsten Ruger
4b05b48197
some docs
2016-12-06 11:38:09 +02:00
Torsten Ruger
229f5896c6
update to use new ast
...
soml was updated to have a typed ast layer to make programatic creation
easier
this brings LOTS of syntax change with it, that does not really mean
anything at all
All tests pass again so back to the same
2016-03-07 11:55:28 +02:00
Torsten Ruger
d7b210d63a
update parser
2016-03-06 10:48:14 +02:00
Torsten Ruger
a8b815117f
rename object_type to instance_type
...
for better distinction that it is not every object
but only instances of the class
2016-02-25 12:16:13 -08:00
Torsten Ruger
278d71b56c
fix docs for rename
2016-02-25 12:03:11 -08:00
Torsten Ruger
d32b51c67b
rename layout to type
...
this one goes to caleb for pointing it out.
Much better word
2016-02-25 11:50:10 -08:00
Torsten Ruger
3480b97eaa
rename variable type to value_type
...
in preparation for next rename
2016-02-25 11:41:03 -08:00
Torsten Ruger
afe16868b5
more some tests
2015-11-30 16:10:08 +02:00
Torsten Ruger
dc560aaa5e
move main to space
2015-11-30 16:09:12 +02:00
Torsten Ruger
d0b655d05f
implement the div10 as assembler
...
easy after the some version worked
because it’s not arm it probably twice as long as need be
better (any?) optimisation would take care of that
still, nice to see it works
2015-11-21 14:20:25 +02:00
Torsten Ruger
ffc69fd2a5
add the hackers delight version of div10
...
better test too
remove remnants of 64bit multiplication
2015-11-21 14:19:07 +02:00
Torsten Ruger
91a0365c2e
fix register shortcuts
2015-11-21 14:17:54 +02:00
Torsten Ruger
96972dab29
thats most of the benchmarking
...
strange about the puts in soml, hard to see where a factor of 10 would
come from
2015-11-20 23:51:58 +02:00
Torsten Ruger
da4003c30a
ruby fibs versions and tests for them
2015-11-20 19:12:58 +02:00
Torsten Ruger
02d9a063b0
fix both parfait words to have same indexing
2015-11-20 13:25:49 +02:00
Torsten Ruger
aabde4b9a6
fix word indexes on arm
...
which affected offsets in the ruby side too
the hidden dead word needed accounting for
2015-11-19 16:40:00 +02:00
Torsten Ruger
a8453c126d
use arm shift at runtime
...
arm indexes are in bytes (x4) at compile time
but at runtime we only have the array indexes, iw word indexes
arm has the nice barrel shifter to save us an extra instruction
2015-11-19 12:48:13 +02:00
Torsten Ruger
4871a52d37
better error reporting for parser
2015-11-19 10:10:13 +02:00
Torsten Ruger
249f43ad34
translate and interpret new instructions
2015-11-19 10:09:55 +02:00
Torsten Ruger
ac5a7ac4ca
making parfait (both) use the new byte functions
2015-11-19 10:09:24 +02:00
Torsten Ruger
dffa3fbf42
adding word functions for byte access
2015-11-19 10:08:41 +02:00
Torsten Ruger
ff65952a3e
add get/set byte instructions
...
it seems all cpus have them anyway so best use them
it was a pain to do this on word level, hard to write, hard to debug and
quite unnecessarily slow
2015-11-19 10:07:27 +02:00
Torsten Ruger
5369dc3d52
rename get/set internal
...
to _word , because _byte versions are coming
2015-11-18 15:36:43 +02:00
Torsten Ruger
979660f282
move parfait into register
...
register layer uses parfait models to generate object space
so parfait should be part of register (not above it)
2015-11-18 12:04:25 +02:00
Torsten Ruger
2bc2d4486f
move interpreter to register
...
seems more where it belongs, since it interprets the register machine
instructions
2015-11-18 12:00:30 +02:00
Torsten Ruger
40d81681b5
move parfait adapter into parfait ruby
...
in the future parfait will be coded in some and translated back into
ruby to “adapt”
until then, all ruby code is the adapter
2015-11-18 11:55:29 +02:00
Torsten Ruger
0643b96641
update arm
...
and small code changes from the fact that just loading a variable does
not change status flags
2015-11-17 02:28:47 +02:00
Torsten Ruger
303b7eb1f8
putstring unfolds length
...
which means sys call doesn’t need to
and also interpreter sometimes gets a symbol length
2015-11-16 18:03:29 +02:00
Torsten Ruger
f50d7b57a4
fix the putstring sys call indexing
...
index 0 is the marker word , so like in some, all indexes 1 based
works :-)
2015-11-15 22:03:06 +02:00
Torsten Ruger
8e82da0b61
fix arm (assembled) indexing
...
by having a dummy 0 index in salaam. when assembled
2015-11-15 20:42:07 +02:00
Torsten Ruger
9a2fe42167
change assembly order
...
first objects, then methods.
methods change length, so at least this way objects stay
did mean hacking the arm code (something for later)
2015-11-15 16:24:43 +02:00
Torsten Ruger
458610b970
implement string length
2015-11-15 11:28:16 +02:00
Torsten Ruger
1633bf1289
fix position check
...
as programs get bigger the distance gets bigger
needs better approach
2015-11-15 00:38:23 +02:00
Torsten Ruger
9602acf3d2
fix label positions
2015-11-15 00:36:15 +02:00
Torsten Ruger
cea60f202a
small label changes
2015-11-15 00:35:43 +02:00
Torsten Ruger
b30cf21bbd
fix arm indexes
...
needs rethought
fixed for static use, but what about dynamic
2015-11-15 00:35:12 +02:00
Torsten Ruger
cc9b515752
fix double label names
2015-11-14 22:53:01 +02:00
Torsten Ruger
278eccbed5
derive binary code form word
...
long ago hacked the binary code to use integers (thus forsaking correct
arm binaries)
Finally fix by deriving from Word which now has correct binary access
Dumped binary.name in the process, that is available from the method
2015-11-14 15:04:04 +02:00
Torsten Ruger
8fa92515b5
update arm and small arm fixes
...
constants in arm chunks, needs better solution
2015-11-14 13:05:49 +02:00
Torsten Ruger
dbcd39c277
helper do get the register no as int for arm
2015-11-14 00:22:23 +02:00
Torsten Ruger
6e7c6d814a
long const avoidance
...
arm can only load 10 bits and some funny logic
so for now avoid big fffffff const
2015-11-14 00:21:24 +02:00