Commit Graph
100 Commits
Author SHA1 Message Date
Torsten Ruger bae476657a add coverage and badges 2015-07-18 13:06:42 +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 998d5f8b90 removed ref to simple cov 2015-07-18 12:06:20 +03:00
Torsten Ruger b2914ac480 add travis and test against github dependencies 2015-07-18 12:03:12 +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 fa7d2ced6d bumped for release 2015-07-09 22:27:28 +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 185f4b4697 start of an idea 2015-07-02 10:44:44 +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 54dd37cb4d Little start of good code 2015-06-29 20:52:36 +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
Torsten Ruger 5539d8fe32 just a little more precise 2015-06-26 20:35:16 +03:00
Torsten Ruger e20fba61d9 allowing for relinking to add more instructions 2015-06-26 20:34:40 +03:00
Torsten Ruger 55b7ca83e1 fixing load constant
which needs to add to pc to get an object reference
2015-06-26 20:01:52 +03:00
Torsten Ruger 108cc8af45 minor cleanup 2015-06-26 20:00:50 +03:00
Torsten Ruger 37403f1139 fix misunderstood mov usage
When moving a reference (pointer) to a register
one needs to ADD to the pc
i.e. one needs an add, not mov instruction
2015-06-26 20:00:33 +03:00
Torsten Ruger 32e1903884 finished init routine
and better implemented sys calls
2015-06-25 16:31:09 +03:00
Torsten Ruger cedc6e1b61 Fix parfait bug for word_length 2015-06-24 16:08:06 +03:00
Torsten Ruger 59188105ba finish syscall
works, even had to fix parfait bug to see
2015-06-24 16:07:27 +03:00
Torsten Ruger 1a82ebcd69 mor on sys call implementation 2015-06-23 19:55:54 +03:00
Torsten Ruger 2aba926f1f start on reworking sys calls 2015-06-22 22:48:42 +03:00
Torsten Ruger 9c21f4274d better names for index constants 2015-06-21 21:09:15 +03:00
Torsten Ruger 836089a249 clean up Get/SetSlot
document and make arguments consistent
2015-06-21 21:00:16 +03:00
Torsten Ruger f3ee11fca5 simple set optimisation
the price of having simple code (generation) is that
it is sometimes stupid code that gets generated
Filter some of the really daft stuff out
2015-06-21 17:25:27 +03:00
Torsten Ruger aafb179c61 move frame_impl to register 2015-06-21 17:23:15 +03:00
Torsten Ruger 3fe35e34ec fix slot constant access 2015-06-21 17:22:51 +03:00
Torsten Ruger cdf17a73b2 changed Set order
from to seems more logical than to,from
2015-06-21 13:29:27 +03:00
Torsten Ruger 6867175bd1 slot docs and rename 2015-06-21 00:21:42 +03:00
Torsten Ruger eeaf2d97de starting to clear up slots
mostly docs
2015-06-20 23:49:30 +03:00
Torsten Ruger 95bc824f9b update sod 2015-06-20 23:49:09 +03:00
Torsten Ruger 7551a16b6e pretty names for references 2015-06-19 19:50:53 +03:00
Torsten Ruger a2bfaf1b2c remove memory from sod but keep layout 2015-06-19 13:11:40 +03:00
Torsten Ruger 87143091ca moved sod write method to module 2015-06-19 12:29:41 +03:00
Torsten Ruger 1baece99c7 split the pass runs to debug 2015-06-12 18:52:06 +03:00
Torsten Ruger 54c71fa216 split pass runs for debug in-between 2015-06-11 17:04:18 +02:00
Torsten Ruger a1848a051d don't print binary codes in sof
keeps more readable and binary is really only useful with decompiler
2015-06-11 07:05:39 +02:00
Torsten Ruger 9b89f6cb16 move the pass running out of elf
and leave it up to user
later partial running planned
2015-06-11 07:04:55 +02:00
Torsten Ruger ee6f9d733b rename Mystery
just unknown, mystery should be more difficult to find out.
After all we keep run time info, so just need unknown at compile time
2015-06-11 07:04:14 +02:00
Torsten Ruger d8fa266b5d fix method call addresses
was jumping to the method
but needs to jump to the code of the method
2015-06-10 11:10:46 +02:00
Torsten Ruger 6f111a5ae0 fix the initial jump 2015-06-10 10:43:50 +02:00
Torsten Ruger 1c8ed44e84 ignore logs 2015-06-10 10:43:28 +02:00
Torsten Ruger c9ec6e2f39 fix debug 2015-06-09 11:38:03 +02:00
Torsten Ruger 20b28077a1 we have executables again
they are missing their initial jump, but reassemble fi
2015-06-09 11:37:32 +02:00
Torsten Ruger d765651a3d added simulator 2015-06-08 12:30:32 +02:00