Commit Graph

521 Commits (master)

Author SHA1 Message Date
Dibyendu Majumdar c9b7939cc1 issue #98 instead of printing out generate a string from ast and expose as api method
6 years ago
Dibyendu Majumdar 67accd8a41 issue #98 refactor ast library to be just a library and resolve the issue with lua_lock()
6 years ago
Dibyendu Majumdar f3fed79bc7 issue #98 start changing the api so that build_ast returns a userdata object containing the AST
6 years ago
Dibyendu Majumdar c465af3465 issue #98 rename functions and start to change the api to construct AST as a userdata object
6 years ago
Dibyendu Majumdar 24ac6f29f3 issue #98 merge changes in master
6 years ago
Dibyendu Majumdar 1ca729a4c2 issue #145 move collectable bit left by one bit to make an extra bit available for encoding typeinfo
6 years ago
Dibyendu Majumdar f62b1eb557 refactoring
6 years ago
Dibyendu Majumdar b51868d20f issue #144 fix compile error
6 years ago
Dibyendu Majumdar 36c7bc32b8 issue #144
6 years ago
Dibyendu Majumdar a97f974db5 issue #144 change the size of TValue.tt to byte
6 years ago
Dibyendu Majumdar 55dc69d4c4 issue #143 Remove NanoJIT backend
6 years ago
Dibyendu Majumdar 9fa20358b2 issue #142 removed gcc jit implementation (left on a branch)
6 years ago
Dibyendu Majumdar 2e42d1364c issue #135 debug guards
6 years ago
Dibyendu Majumdar e01d389cab issue #138 switch to LuaJIT style bytecode encoding
6 years ago
Dibyendu Majumdar 95d0f3ee41 issue #135 OP_MOVE
7 years ago
Dibyendu Majumdar f6f624499b issue #135 use LuaJIT style bytecode encoding when using ASM VM
7 years ago
Dibyendu Majumdar 4d62b42987 issue #135 baby steps
7 years ago
Dibyendu Majumdar ce5ac85744 issue #135 some cleanup
7 years ago
Dibyendu Majumdar 9a557d1f6f issue #134 #135 start work on new X86-64 VM that will be built using dynasm
7 years ago
Dibyendu Majumdar 639d3f3086 experiment with alternate bytecode encoding based on LuaJIT
7 years ago
dibyendumajumdar 6d89ac9026 revised build and option to enable computed goto in the VM
7 years ago
Dibyendu Majumdar b2c6c8ebd4 fix a bug in issue #136 implementation and add experimental support for computed gotos in the VM
7 years ago
Dibyendu Majumdar d3f821c59a issue #136 wip
7 years ago
Dibyendu Majumdar 92d4d5d186 issue #136 implement new type checking opcodes
7 years ago
Dibyendu Majumdar daf2b8bfe9 issue #136 wip
7 years ago
Dibyendu Majumdar e06da495d4 issue #136 make room for user typename constant regid in LocVar
7 years ago
Dibyendu Majumdar 5e03430d7d issue #136 additional type assertions
7 years ago
Dibyendu Majumdar 05963da39d issue #133 add LuaJIT's bit library so that we can support dynasm
7 years ago
Dibyendu Majumdar 7ed629bdfe go back to earlier approach of doing full GC collection every n compilations as the GCSETP approach doesn't work
7 years ago
Dibyendu Majumdar 99abdf633f issue #131 more fixes
7 years ago
Dibyendu Majumdar 186c614290 refactor
7 years ago
Dibyendu Majumdar b67f492c04 refactor
7 years ago
Dibyendu Majumdar 74a2c8a16e add verbosity option
7 years ago
Dibyendu Majumdar 828e39aa39 minor fixes
7 years ago
Dibyendu Majumdar d8962e917c issue #59 adjustments
7 years ago
Dibyendu Majumdar 70ca403abe make ORC JIT the default from LLVM 5.0 onwards
7 years ago
Dibyendu Majumdar 6c608a38b5 get ORC version to work correctly
7 years ago
Dibyendu Majumdar bf173e28dc issue #59 port to ORC JIT api
7 years ago
Dibyendu Majumdar a68d915865 change GETTABLE_I to work on objects that may not be tables
7 years ago
Dibyendu Majumdar 03485223ed change GETTABLE_I to work on objects that may not be tables
7 years ago
Dibyendu Majumdar f93cefb33c tech debt
7 years ago
Dibyendu Majumdar 5fb89d4c07 issue #128 refactor
7 years ago
Dibyendu Majumdar 5ff1a72fb3 cleanup some warnings
7 years ago
Dibyendu Majumdar 364b221433 issue #128 refactoring
7 years ago
Dibyendu Majumdar 1443fe9099 issue #128 refactor membuff_t to move it from the debugger to a shared location so that we can reuse it in the JIT implementation, some more initial work on the new backend
7 years ago
Dibyendu Majumdar 7e130556ff issue #128 initialize/destroy NanoJIT Context
7 years ago
Dibyendu Majumdar 95779e058c issue #128 add initial skeleton files
7 years ago
Dibyendu Majumdar 1c703d4ec0 some tech debt cleanup
7 years ago
Dibyendu Majumdar 1d1362ddc1 issue #126 wip
7 years ago
Dibyendu Majumdar 1a26a5d43b issue #126 add a couple of simple hello world examples
7 years ago
Dibyendu Majumdar d477e76155 issue #98 merge changes from master
7 years ago
Dibyendu Majumdar a79f4d8a99 issue #124 fix LLVM4.0 related issues
7 years ago
Dibyendu Majumdar c0d2b0e3f8 issue #115 experiment with LLVM branch weights
7 years ago
Dibyendu Majumdar 9eb8f1d98d issue #115 experiment with table performance - use LuaJIt approach of precomputed hashmask
7 years ago
Dibyendu Majumdar 66d3e20d30 issue #121 fix potential issue with lifetime of LLVM module created via the bindings API
7 years ago
Dibyendu Majumdar 9dac99942a issue #119 merge upcming Lua 5.3.4 changes
7 years ago
Dibyendu Majumdar 654013698f issue #119
7 years ago
Dibyendu Majumdar 2923ac78f6 updtae copyright notice
7 years ago
Dibyendu Majumdar 0f089b6b92 issue #119
7 years ago
Dibyendu Majumdar 1cecb6d346 fix messed up merge
7 years ago
Dibyendu Majumdar e1b71e6f0e Change callstatus to short type to match 5.3.4 change
7 years ago
Dibyendu Majumdar f7019ff607 Merge branch 'profile'
7 years ago
Dibyendu Majumdar e8d109dacb fix bug in emit GETTABLE_S and exerimental version of ARITH
7 years ago
Dibyendu Majumdar 9fa823aa5a comments
8 years ago
Dibyendu Majumdar 58a47746fb comments
8 years ago
Dibyendu Majumdar cc6ca3f821 comments
8 years ago
Dibyendu Majumdar 46a2282f3f issue #111 Lua 5.3.3 bug fixes
8 years ago
Dibyendu Majumdar 0399d6a163 issue #109
8 years ago
Dibyendu Majumdar 36c99300a2 issue #109 work on simple bytecode profiler
8 years ago
Dibyendu Majumdar 62922d4e85 issue #98 merge master into ast branch
8 years ago
Dibyendu Majumdar 9e7408a944 experiment with noninline add, sub, mul, div ops
8 years ago
Dibyendu Majumdar 4f3851e8f3 issue #105 #106
8 years ago
Dibyendu Majumdar 8e1630979e issue #82 respect __name meta method in ravitype() for integer[] and number[] types
8 years ago
dibyendumajumdar 8e19f4cd03 issue #100
8 years ago
Dibyendu Majumdar cd0150e08e issue #100
8 years ago
Dibyendu Majumdar b48a0965e4 issue #100 generate calls to specialized functions for string keys when operand of OP_SELF is known to be a short string
8 years ago
Dibyendu Majumdar 25cac0cd59 add test case and update code gen for TOARRAY opcodes
8 years ago
Dibyendu Majumdar 4af5ecca82 issue #100 treat ravi integer and number arrays as subtypes of tables in the lua value similar to how integer and number values are handled
8 years ago
Dibyendu Majumdar d6ed6c150f fix JIT compilation issue with the change in ttistable()
8 years ago
Dibyendu Majumdar 434afa8dd1 issue #100
8 years ago
Dibyendu Majumdar a2709d8403 issue #100 change the way GETTABLE_SK, SETTABLE_SK, GETTABUP_SK and SETTABUP_SK are compiled
8 years ago
Dibyendu Majumdar 7665f6b7c4 disable JIT for gettable_sk and gettabup_sk as bug discovered, and refactor the interpreter implementation
8 years ago
Dibyendu Majumdar 54bdfe6121 issue #100
8 years ago
Dibyendu Majumdar 30ed0bd4f6 issue #100 add JIT compilation for GETTABLE_SK opcode
8 years ago
Dibyendu Majumdar 5a83899351 issue #100 #70 #88
8 years ago
Dibyendu Majumdar be60c7064f issue #100
8 years ago
Dibyendu Majumdar 2fcea1cce2 issue #100
8 years ago
Dibyendu Majumdar 80feef445e issue #100
8 years ago
Dibyendu Majumdar 9895f2879c initial work on issue #100
8 years ago
Dibyendu Majumdar 1282ea7e5a issue #101 #91 #103
8 years ago
Dibyendu Majumdar dc4c00faa0 Merge branch 'master' into ast
8 years ago
Dibyendu Majumdar 5f7c2a8a6d merge LUA_32BIT support
8 years ago
Dibyendu Majumdar e91538b54b issue #89 add support for 32-bit numbers
8 years ago
Dibyendu Majumdar dcd6213b07 issue #86 merge final bits of changes from Lua 5.3.3
8 years ago
Dibyendu Majumdar 5cb71a81ef issue #86 merge additional changes from Lua 5.3.3
8 years ago
Dibyendu Majumdar 3987d65f6c issue #86 merge llex.c and lobject.c
8 years ago
Dibyendu Majumdar 2213f866a6 issue #86 start new attempt to merge 5.3.3
8 years ago
Dibyendu Majumdar 25a5fb3c9e issue #86 merge reverted due to bug - to be fixed in the branch first
8 years ago
Dibyendu Majumdar 9718924845 issue #86 merge Lua 5.3.3
8 years ago
Dibyendu Majumdar 91bada14cf issue #86: merge Lua 5.3.3
8 years ago
Dibyendu Majumdar 86a2adb4f7 issue #86: merge Lua 5.3.3
8 years ago
Dibyendu Majumdar 8948607b74 fix a compilation error due to multiline comment
8 years ago
Dibyendu Majumdar 2bf6a88192 issue #82 add support for step over and step out
8 years ago
Dibyendu Majumdar b84d41bdd2 issue #82 disable some Debug lib functions when debugger is running
8 years ago
Dibyendu Majumdar ed185aae9a issue #82 redirect Lua stdout and stderr to the debugger
8 years ago
Dibyendu Majumdar 5dc495720f the previous change related to module sharing between functions appears to have introduced memory leak - caught by asan; also apply fixes discussed in Lua mailing list
8 years ago
Dibyendu Majumdar 1ed019dffd issue #78 nearly done
8 years ago
Dibyendu Majumdar 5472c25f2c issue #78 wip
8 years ago
Dibyendu Majumdar 3d6204856c issue #78 work in progress
8 years ago
Dibyendu Majumdar 754536b01d issue #78 work in progress
8 years ago
Dibyendu Majumdar 402c4b2bc4 issue #78 work in progress
8 years ago
Dibyendu Majumdar a602f7246c ast wip
8 years ago
Dibyendu Majumdar 22146f6bc8 ast wip
8 years ago
Dibyendu Majumdar 8882799d67 abstract syntax tree
8 years ago
Dibyendu Majumdar 762ab319f5 issue #76 type assertions
9 years ago
Dibyendu Majumdar b23e0eab16 issue #76 type assertions
9 years ago
Dibyendu Majumdar 38f25882b6 issue #76 type assertion work in progress
9 years ago
Dibyendu Majumdar aa453e0aae issue #76: work on type assertion
9 years ago
Dibyendu Majumdar f036c53014 code reformat and OP-SELF implementation aligned with Lua 5.3.2
9 years ago
dibyendumajumdar add5ac8368 upgrade libgccjit implementation to cater for 5.3.2 merge
9 years ago
dibyendumajumdar 49b4f8840f merge 5.3.2 rc2
9 years ago
dibyendumajumdar 911c21a254 fix ltests.c compilation error
9 years ago
dibyendumajumdar a52a432a67 refactoring
9 years ago
dibyendumajumdar 704b6faf10 more work on issue #73
9 years ago
dibyendumajumdar 46fef09a7f some moe work on fixing issue #73 - more to do
9 years ago
dibyendumajumdar 4d0bcbe1f2 start 5.3.2 merge and also work on issue #73
9 years ago
Dibyendu Majumdar 70507a4ef6 doc updates
9 years ago
Dibyendu Majumdar 852cfee3da issue #71 add specialised bytecode for method calls when type is table and key is short string
9 years ago
Dibyendu Majumdar a11f7bbd27 setupval type specialized opcodes should not cause JIT failure
9 years ago
Dibyendu Majumdar 24d65a5c0a add notice regarding options enabled
9 years ago
Dibyendu Majumdar 085f035917 issue #61 more tests
9 years ago
Dibyendu Majumdar dac7789d7a issue #61 add more tests for typed values
9 years ago
Dibyendu Majumdar c4c8dad5b5 issue #61 fix bug in compilation
9 years ago
Dibyendu Majumdar aca5b3ef86 issue #60 compile TOTAB and MOVETAB
9 years ago
Dibyendu Majumdar 62e892e6aa issue #60 add optimized versions of table access with integer keys
9 years ago
Dibyendu Majumdar f04c5febd6 issue #60 JIT compile GETTABLE_S
9 years ago
Dibyendu Majumdar 1362b6dc6d issue #60 more work on implementing specialized bytecode for table get/set
9 years ago
Dibyendu Majumdar 4115f35867 issue #60 explore further optimization of table operations
9 years ago
Dibyendu Majumdar ed44f85a3d issue #57 adding test cases
9 years ago
Dibyendu Majumdar 84b5b6476c issue #56 check the type definitions
9 years ago
dibyendumajumdar 8a74a09510 issue #15 fix compilation error in ltests.c
9 years ago
Dibyendu Majumdar bdbb204d4c issue #58 update dump and undump to always include type information for local variables and upvalues; also change the format identifier to differentiate from standard Lua
9 years ago
Dibyendu Majumdar 3c9ed08585 issue #15 if emit_debug_trace() has been called then we can avoid setting savedpc again
9 years ago
Dibyendu Majumdar d970aa981e issue #15 add type checks to debug.setlocal()
9 years ago
Dibyendu Majumdar 40570edbfc issue #15 add new JIT option tracehook to enable per bytecode updates to savedpc and call to luaG_traceexec
9 years ago
Dibyendu Majumdar c1a157ce4a in JIT mode update savedpc when performing OP_CALL or OP_TAILCALL - see issue# 15
9 years ago
Dibyendu Majumdar d98520f2b2 start work on handling savedpc - experimental
9 years ago
Dibyendu Majumdar c2008d9439 add api ravitype() to enable extended type information
9 years ago
Dibyendu Majumdar d2fbb17572 allocate new LLVMContext per Lua global state
9 years ago
Dibyendu Majumdar 4fc119e5f0 add a gc collection in when JIT compiling
9 years ago