Commit Graph

199 Commits (master)

Author SHA1 Message Date
Dibyendu Majumdar df91c9a2a9 implement GETUPVAL and GETTABUP and fix bug in LOADBOOL
9 years ago
Dibyendu Majumdar ef74e153c9 implement OP_ADD, OP_SUB and OP_MUL
9 years ago
Dibyendu Majumdar 476375db4f implement OP_TEST and OP_TESTSET
9 years ago
Dibyendu Majumdar 49883c9ea6 doc updates
9 years ago
Dibyendu Majumdar b238cb4818 implement OP_SETTABLE and OP_GETTABLE
9 years ago
Dibyendu Majumdar 684cad6f9f change syntax from int to integer, and double to number
9 years ago
Dibyendu Majumdar 5755551881 implement OP_LOADBOOL
9 years ago
Dibyendu Majumdar 28e02be882 implement TOINT and TOFLT
9 years ago
Dibyendu Majumdar 74e2a829d1 implement OP_CALL
9 years ago
Dibyendu Majumdar c94b382231 fix bug in arith operators - need to set type
9 years ago
Dibyendu Majumdar d6b2302aee implement DIVFF, DIVFI, DIVIF, DIVII
9 years ago
Dibyendu Majumdar f8acad02bb convert some tests so that they are compiled
9 years ago
Dibyendu Majumdar d1fef594d4 implement LOADIZ and ADDIN
9 years ago
Dibyendu Majumdar 6edfc4bfa0 implement loadfz, loadnil, addfn
9 years ago
Dibyendu Majumdar 2091942c4c alternate implementation of FORPREP and FORLOOP
9 years ago
Dibyendu Majumdar 884a8e5def create a version of mandel.ravi where the logic is in a function
9 years ago
Dibyendu Majumdar 5b8c7d258f fix bug in fornum for int
9 years ago
Dibyendu Majumdar 6e617a576a fix bug in fornum for floating point
9 years ago
Dibyendu Majumdar cbf3a6c665 forloop and move
9 years ago
Dibyendu Majumdar d40c937272 op_forprep work in progress
9 years ago
dibyendumajumdar bb65bccea0 fix compilation errors on ubuntu
9 years ago
Dibyendu Majumdar bb1ff0194c upgrade to LLVM 3.6.0
9 years ago
dibyendumajumdar fffe1461fa Merge branch 'master' of https://github.com/dibyendumajumdar/ravi
9 years ago
Dibyendu Majumdar 3f5ec7171d fornum loop C sample and ir output from clang
9 years ago
Dibyendu Majumdar 9a53e2ba16 start on fornum loop
9 years ago
Dibyendu Majumdar 334ff1ea17 enable optimisations
9 years ago
Dibyendu Majumdar b4ba2f69bc fix bug in OP_RETURN llvm IR code generation
9 years ago
Dibyendu Majumdar 2f5f7f0d93 if elseif
9 years ago
Dibyendu Majumdar 2f17e7b631 start work on if else block
9 years ago
Dibyendu Majumdar a8531adbb4 checkin first JIT capability
9 years ago
Dibyendu Majumdar b8169e48ad JIT compile LOADK
9 years ago
Dibyendu Majumdar 0bb3ec3065 modifications to call JIT function
9 years ago
Dibyendu Majumdar fea41313c5 add more Lua types in LLVM, and make the RaviJITState and RaviJITFunction pure abstract classes
9 years ago
Dibyendu Majumdar 6d7b2f954f start mapping Lua types to LLVM types
9 years ago
Dibyendu Majumdar 0bd17d4b0a update RaviJITState
9 years ago
Dibyendu Majumdar 7a8c3a3676 ravi jit infrastructur
9 years ago
Dibyendu Majumdar 9a34acfd2d add test for RaviJITState
9 years ago
Dibyendu Majumdar 32df05214d cleanup build issues
9 years ago
Dibyendu Majumdar b0f39debbc update testllvm
9 years ago
dibyendumajumdar 341917e201 Merge branch 'master' of https://github.com/dibyendumajumdar/ravi
9 years ago
dibyendumajumdar ff79e23183 fix prototype of main()
9 years ago
Dibyendu Majumdar 380c37ec90 first test of LLVM JIT
9 years ago
Dibyendu Majumdar fc8e816a9c some basic llvm stuff
9 years ago
Dibyendu Majumdar c9b54fb170 start work on JIT compiler
9 years ago
Dibyendu Majumdar 059e47e902 array opcodes for get/set
9 years ago
Dibyendu Majumdar e26f5d53b5 array opcodes for get/set
9 years ago
Dibyendu Majumdar 7f65ba6224 fix issue with assigning local var with array value
9 years ago
Dibyendu Majumdar 4339091efb refactor the RAVI VM changes
9 years ago
Dibyendu Majumdar e4282fd3fd start refactoring the binop code generation
9 years ago
Dibyendu Majumdar 285d288be8 remove arithmatic operators that are redundant and add ADDIIRN operator for adding small int constant to register
9 years ago
Dibyendu Majumdar a02352a6f7 remove arithmatic operators that are redundant
9 years ago
Dibyendu Majumdar 60e7801170 add opcode ADDFIRN for adding float to small constant int
9 years ago
Dibyendu Majumdar 293fc96513 remove arithmatic operators that are redundant
9 years ago
Dibyendu Majumdar 102bd27bc2 remove arithmatic operators where constant folding would take care of it
9 years ago
Dibyendu Majumdar 966d6177cf remove arithmatic operators where constant folding would take care of it
9 years ago
Dibyendu Majumdar 3692e9926e fix bug that allows an array variable to be overwritten in assignment statement
9 years ago
Dibyendu Majumdar ef33487c18 fix bug in array initializer
9 years ago
Dibyendu Majumdar a29633119d fix array initializer
9 years ago
Dibyendu Majumdar aa7919aa02 try to infer types for fornum loop
9 years ago
Dibyendu Majumdar 7d7a50a7bd changes to support arrays
9 years ago
Dibyendu Majumdar 90b3d3f6b6 vm changes to support arrays
9 years ago
Dibyendu Majumdar e76bedd55b add ravi table extensions
9 years ago
Dibyendu Majumdar c4f96b8aca create enum of RAVI types
9 years ago
Dibyendu Majumdar 834191a0eb cleanup
9 years ago
Dibyendu Majumdar 394bb6fde7 initialize typed local variables (int or double) to 0
9 years ago
Dibyendu Majumdar 71d35c4d9f Add type data to LocVar and remove from LexState.Dyndata.arr
9 years ago
Dibyendu Majumdar e6b260942e fix defect in getlocvartype() - this needs to consider the code range where the variable is in scope
9 years ago
Dibyendu Majumdar d46777e918 bug - getting confused by MOVE after OP_CLOSURE - need to investigate properfix - for now fix getlocvartype(0 to check that fs == fs->ls->fs
9 years ago
Dibyendu Majumdar ff30553186 revise debug messages and allow them to be enabled when env variable RAVI_DEBUG_EXPR is set; reorder opcodes to be contiguous, add luac to the build, and ensure luac can dump Ravi bytecode
9 years ago
Dibyendu Majumdar c4a646ba1e add MUL, SUB and DIV type specific op codes
9 years ago
Dibyendu Majumdar cf2638a431 add new opcodes for converting registers to specific types and use this for type conversion of function call return values in local variable declaration statements
9 years ago
Dibyendu Majumdar bdad6b7388 add new opcodes for converting registers to specific types and use this for type conversion of function call return values in local variable declaration statements
9 years ago
Dibyendu Majumdar 3c818a71aa add new opcodes for converting registers to specific types and use this for type conversion of function call return values in local variable declaration statements
9 years ago
Dibyendu Majumdar 4847f4c722 add new opcodes for converting registers to specific types and use this for type conversion of function call return values in local variable declaration statements
9 years ago
Dibyendu Majumdar 53ea941231 add new opcodes for converting registers to specific types and use this for type conversion of function call return values in local variable declaration statements
9 years ago
Dibyendu Majumdar bbed651117 remove debug messages
9 years ago
Dibyendu Majumdar 0797f97ac0 add debug messages
9 years ago
Dibyendu Majumdar e6cc4ec0ad add debug messages
9 years ago
Dibyendu Majumdar 2cfd77562a test function call return to typed variable
9 years ago
Dibyendu Majumdar 4d7025d933 merge 5.3.0 final
9 years ago
Dibyendu Majumdar 72f7dce55c merge 5.3.0 final
9 years ago
Dibyendu Majumdar 6ce5f9d7e6 test perf of new add opcode
9 years ago
Dibyendu Majumdar 238cc13d1e enable float + int and int + float instruction generation for OP_ADD
9 years ago
Dibyendu Majumdar 233c668d20 implement compilation of type specific add
9 years ago
Dibyendu Majumdar c3a689e478 implement compilation of type specific add
9 years ago
Dibyendu Majumdar 1cfb88713a add type info to local variables
9 years ago
Dibyendu Majumdar 6741dbe852 add type info to local variables
9 years ago
Dibyendu Majumdar cb7ac25ff6 add types in lua parser expressions
9 years ago
Dibyendu Majumdar e164f146ea add types in lua parser expressions
9 years ago
Dibyendu Majumdar 8cf1db7ffa add ability to determine an opcode type
9 years ago
Dibyendu Majumdar 5362586c87 ensure that expression type is set where possible - and validate types for local variable assignments
9 years ago
Dibyendu Majumdar fcfcd0d1e1 revert to 32-bit bytecode
9 years ago
Dibyendu Majumdar 0104bfa558 enhance bytecode dump to handle RAVI opcodes
9 years ago
Dibyendu Majumdar cd2fdd508c parse local i:type syntax and add dump function code in test case
9 years ago
Dibyendu Majumdar b84ed2a540 add ravi operators for add, sub, mul and div
9 years ago
Dibyendu Majumdar 2395683d35 add OP_RAVI and extension 64-bit instructions
9 years ago
Dibyendu Majumdar af16b26e71 initial checkin of opcode UNMF
9 years ago
Dibyendu Majumdar 4ca95c8084 create simple test program to allow direct execution of lua bytecodes
9 years ago
Dibyendu Majumdar 9bf704a4d3 initial import
9 years ago