James Roseborough
|
8bf4c82a12
|
Rework the main API"s that implement the calling convention. Provide utility methods to get arguments that were supplied, and provide return values. Add a VM interface to clarify the relationship between the VM, things that call the VM, and things that are called by the VM. Make the code more closely aligned with the C++ version.
|
2007-07-24 05:06:10 +00:00 |
|
Ian Farmer
|
f7d6a49acb
|
Add a new test case for upvalues, and enhance upvalue handling so that
they pass.
|
2007-07-09 04:10:25 +00:00 |
|
James Roseborough
|
c8e1934916
|
Refactor call stack and its use throughout. CallFrame now does all bytecode processing, and the callframe is reinitialized anytime something might have changed, like a function call.
|
2007-06-27 06:43:33 +00:00 |
|
James Roseborough
|
99077764ac
|
Fix basic class processing via metatables. Make print output more closely match that produces by C interpreter
|
2007-06-19 04:25:34 +00:00 |
|
James Roseborough
|
5d3c86e552
|
Partial implementation of metatables.
|
2007-06-16 15:31:27 +00:00 |
|
James Roseborough
|
be20581731
|
Improve call stack handling to prepare for propert tail call handling.
|
2007-06-15 06:41:40 +00:00 |
|
James Roseborough
|
14108aee87
|
Fix upvalues that allow closures to work properly.
|
2007-06-14 04:09:57 +00:00 |
|
James Roseborough
|
4b7bbc1d8e
|
Vix VARARGS passing by adjusting stack on varargs call to bury varargs + length of varargs under base of stack
|
2007-06-12 14:30:49 +00:00 |
|
James Roseborough
|
b6f123d5e5
|
Improve vararg handling logic.
|
2007-06-12 06:22:55 +00:00 |
|
James Roseborough
|
da6f63bb3d
|
Fix calling convention by managing top of stack and adjusting on way in and out of function calls.
|
2007-06-11 05:51:19 +00:00 |
|
James Roseborough
|
05cfdaa33b
|
Improve calling convention handling when the number of arguments doesn't match the expected number, and the number of return values doesn't match those needed.
|
2007-06-11 04:30:03 +00:00 |
|
James Roseborough
|
70dfc20f57
|
Initial draft of interpreter. Lua compiled "chunks" can be unmarshalled. Approximately half of bytecodes implemented in some form or another.
|
2007-06-08 05:11:37 +00:00 |
|