Offload int[] to byte[].
[SquirrelJME.git] / assets / developer-notes / stephanie-gawroriski / 2017 / 02 / 15.mkd
blob36f6e07fe6812cd0726fe41b839ad4828ab6cb83
1 # 2017/02/15
3 ## 03:21
5 For some reason, the terrain does not draw in the automap in my moved over
6 code. I have no idea why either. It should work, but it does not.
8 ## 03:23
10 Yes that is why, I am using `graphics` and not `__g`.
12 ## 09:53
14 I wonder if I should use a register for the stack base. Or instead of the
15 allocator just have something else done for some things such as the stack. The
16 ABI can change which allocators are used and for which purpose.
18 ## 09:57
20 Actually I do not need register purposes at all, I just need to give registers
21 for state that can be used.
23 ## 10:13
25 Going to have to implement SVG Tiny, XML is horrible. But at least SVGTiny has
26 a bunch of stuff missing.
28 ## 10:59
30 I could omit the base pointer, but I am going to keep it in there to make my
31 life easier debugging. I will need to match the calling convention of the host
32 system so that foreign callbacks from some OS code into my own Java code works
33 as it should.
35 ## 11:38
37 Actually thinking about it, having a generic class for stack and register
38 allocation could work but it would be rather generic and would have to be
39 adjusted to support a range of systems that are different. For example it
40 would have to work for MIPS then say something like x86 which is completely
41 different. However, since I have translation engines this can handle the stack
42 things.
44 ## 12:01
46 This should simplify things greatly.
48 ## 14:41
50 What can be done when it comes to arguments and such are bindings with JIT
51 specific things. Basically for each variable in the Java stack and locals
52 there is an allocation key that can be used by the JIT to manage it. The
53 representitive JIT specific object will just be tagged with the data so it
54 can be used by a JIT however it wants. The basic JIT will just perform stack
55 caching and such. So `CodeVariable`s will just have a set of allocations and
56 such.