Commit Graph

891 Commits

Author SHA1 Message Date
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