Skip to content
Dibyendu Majumdar edited this page Jan 17, 2015 · 26 revisions

Change Log

16-Jan-2015

Working on figuring out a way to coerce types after a function call. This is necessary due to dynamic nature of Lua - the return type of a function is not known at compilation time.

11-Jan-2015

Added the ability to generate code for local variables with type decorations (only int and double) for now, and support for type specific instructions to perform arithmetic operations; also added code to validate types to ensure that variables that are typed do not get assigned values of wrong type.

09-Jan-2015

Went back to 32-bit instructions due to complexity of the 2-instruction approach.

07-Jan-2015

Added RAVI opcodes for eq, lt, le operators Enhanced parser to recognise local name:type syntax. But constants are not typed yet.

06-Jan-2015

Added RAVI opcode implementation in lvm.c for add, sub, mul and div operations.

05-Jan-2015

Added various opcodes in opcodes.h. OP_RAVI opcode introduces a 64-bit instruction where the real opcode is stored in 10 bits - and a,b & c take up 16 bits each.

02-Jan-2015

Added RAVI opcode UNMF to the VM - floating point unary minus.

01-Jan-2015

Need to add more opcodes. So as a first step modified the SIZE_OP to 8 bits and adjusted SIZE_B and SIZE_C in lopcodes.h. Also in luaconf.h change LUAI_FUNC to LUA_API so that we can write some test cases using internal routines.

Clone this wiki locally