Commit Graph

  • b4006ba9a8 Fix stack slot updates for down-recursion. Mike Pall 2011-05-04 21:34:21 +02:00
  • 139175f8c4 Tune loop unrolling heuristics. Increase trace recorder limits. Mike Pall 2011-05-03 21:14:18 +02:00
  • c77ca54564 FFI: Compile C function calls with 64 bit args/results in 32 bit mode. Mike Pall 2011-04-29 19:40:50 +02:00
  • eb7b452d53 x86: Pop unused FP result from x87 stack. Mike Pall 2011-04-29 19:35:25 +02:00
  • b4cfaa62ac Improve target OS selection for buildvm. Mike Pall 2011-04-29 09:23:00 +02:00
  • 0ba34ffe50 ARM: Fix ABI and build issues for iOS. Now works on iOS 3.0+. Mike Pall 2011-04-28 19:41:34 +02:00
  • 7ff8409797 DynASM: x86/x64: Fix vreg in opcode. x64: Fix imm "I" after abs addr. Mike Pall 2011-04-28 12:54:46 +02:00
  • 0b606061db ARM: Use own lj_bswap(). Reduce min. req. version of GCC to 4.2. Mike Pall 2011-04-28 12:33:31 +02:00
  • 5d096dcfde FFI: Add ffi.istype() function. Mike Pall 2011-04-20 01:53:26 +02:00
  • 9ea679410c Workaround to compile with Clang. Fix Clang warnings. Mike Pall 2011-04-19 17:12:41 +02:00
  • e94a12f4f6 Fix compiler warning. Mike Pall 2011-04-19 16:19:34 +02:00
  • b3d10cdf62 ARM: Workaround for unaligned accesses. Mike Pall 2011-04-19 16:09:07 +02:00
  • 4fbacaf887 ARM: Allow compilation in thumb mode (CCOPT_ARM=-mthumb). Mike Pall 2011-04-18 23:44:06 +02:00
  • a1ffb6114f ARM: Add missing FFI functionality. Enable FFI for ARM. Mike Pall 2011-04-18 21:23:21 +02:00
  • ca18293ebc Add remark about target OS to cross-compilation instructions. Mike Pall 2011-04-18 17:20:59 +02:00
  • b53ca064d4 ARM: Add install docs. Mike Pall 2011-04-17 12:48:28 +02:00
  • 38a842a474 Add common TARGET_FLAGS option to Makefile. Mike Pall 2011-04-17 12:48:01 +02:00
  • 54994ef7be ARM: Enable ARM port. Mike Pall 2011-04-17 02:35:12 +02:00
  • 7bb4b0f570 ARM: Normalize results of math.floor()/ceil() fast functions. Mike Pall 2011-04-17 02:31:00 +02:00
  • 32db4525d9 ARM: Misc. fixes for interpreter. Mike Pall 2011-04-16 23:31:30 +02:00
  • add553edd8 ARM: Add integer variant of modulo operator. Mike Pall 2011-04-16 23:29:57 +02:00
  • d636a3decd ARM: Add partial support for FFI. Mike Pall 2011-04-16 23:28:51 +02:00
  • fc40214279 ARM: Add coroutine.resume/wrap_aux/yield() fast functions. Mike Pall 2011-04-16 23:26:11 +02:00
  • 5f08a50506 FFI: Fix arithmetic ctype metamethods for references. Mike Pall 2011-04-15 19:02:47 +02:00
  • 31e0774a9e FFI: Fix cdata finalization. Mike Pall 2011-04-13 21:37:54 +02:00
  • 1fa0cc09b3 PPC: Fix L->status for resume after yield. Mike Pall 2011-04-13 02:27:19 +02:00
  • 0001a7fced ARM: Add BC_VARG and BC_TSETM. Mike Pall 2011-04-13 02:24:56 +02:00
  • 7aa7069271 ARM: Add dispatch targets for hooks. Mike Pall 2011-04-13 02:24:18 +02:00
  • 46d97d28f0 ARM: Add modulo subroutine and temp. math.floor()/math.ceil(). Mike Pall 2011-04-13 02:22:59 +02:00
  • 3b6f37dd2c FFI: Add ctype metamethods and ffi.metatype(). Mike Pall 2011-04-12 19:15:00 +02:00
  • fa5cd010e8 Add support for tailcalls from internal C functions. Mike Pall 2011-04-12 19:12:29 +02:00
  • 23f847f4ed Optimize lookups in empty proxy tables. Mike Pall 2011-04-10 21:43:21 +02:00
  • a1f66abe4e Avoid phantom stores to proxy tables. Mike Pall 2011-04-10 21:41:58 +02:00
  • efcaef22bd Inline lj_gc_barrierback(). Mike Pall 2011-04-10 20:45:36 +02:00
  • d85b7e636e Fix recording of JLOOP with higher maxslot. Mike Pall 2011-04-10 18:00:08 +02:00
  • f69524f7f1 PPC: Misc. fixes for interpreter. Mike Pall 2011-04-10 17:03:36 +02:00
  • 54e986a51d ARM: Misc. fixes for interpreter. Mike Pall 2011-04-10 17:00:32 +02:00
  • 040c8c5737 ARM: Add string.* fast functions and GC steps. Mike Pall 2011-04-10 16:59:38 +02:00
  • da1ef8c3b0 ARM: Add rawget() fast function. Mike Pall 2011-04-10 16:59:00 +02:00
  • 89022b4c3e Use lj_vm_tobit() on targets without FPU. Mike Pall 2011-04-10 16:57:09 +02:00
  • f089f3954c ARM: Add bit.* fast functions and lj_vm_tobit(). Mike Pall 2011-04-10 16:56:13 +02:00
  • 161bc379f0 ARM: Add GPR variants for shift aliases to DynASM. Mike Pall 2011-04-10 16:50:04 +02:00
  • 27bf481669 ARM: Misc. fixes for interpreter. Mike Pall 2011-04-08 03:02:26 +02:00
  • b56784aae2 ARM: Add BC_CAT and lj_cont_cat. Mike Pall 2011-04-08 03:01:37 +02:00
  • b1912f3325 ARM: Add missing metamethod handlers and continuations. Mike Pall 2011-04-08 02:57:22 +02:00
  • aee129a789 ARM: Add tailcall instructions. Mike Pall 2011-04-08 02:54:11 +02:00
  • 16e0ecaf54 ARM: Add table.getn() fast function. Mike Pall 2011-04-08 02:52:24 +02:00
  • 9e18260fb4 ARM: Add upvalue get/set and closure-related instructions. Mike Pall 2011-04-08 02:50:56 +02:00
  • 3af41060c7 ARM: Add test/copy and comparison instructions. Mike Pall 2011-04-08 02:48:55 +02:00
  • 83e302938b ARM: Add math.* fast functions. Mike Pall 2011-04-08 02:47:19 +02:00
  • 1f4f805c96 ARM: Add getmetatable(), setmetatable() and tonumber() fast functions. Mike Pall 2011-04-08 02:42:04 +02:00
  • 0046f955eb ARM: Handle stack growth during function calls. Mike Pall 2011-04-08 02:44:56 +02:00
  • 3f8fed5358 ARM: Add pc-relative loads to DynASM. Mike Pall 2011-04-08 02:44:21 +02:00
  • 1a56dacbcf ARM: Add build rules (still disabled). Mike Pall 2011-04-07 16:08:34 +02:00
  • ee644872e3 FFI: Register the FFI library as a loaded module in luaopen_ffi(). Mike Pall 2011-04-06 01:31:21 +02:00
  • 734e96fa05 Remove links to shootout. Mike Pall 2011-04-05 21:23:44 +02:00
  • 66a1006175 Fuse XLOAD/XSTORE operands more aggressively. Mike Pall 2011-04-05 16:32:27 +02:00
  • 3acd4892e9 Add FOLD rule for FLOAT->NUM->FLOAT conversions. Mike Pall 2011-04-05 16:31:48 +02:00
  • 48438b9e13 Fix code generation for PHIs with type IRT_FLOAT. Mike Pall 2011-04-05 16:29:40 +02:00
  • 5b7a8baea4 x64: Fix getmetatable(lightuserdata). Mike Pall 2011-04-05 12:59:03 +02:00
  • 314995aebf ARM: Finish basic table indexing and add metamethod handlers. Mike Pall 2011-04-05 00:25:31 +02:00
  • a7874cb299 ARM: Add assert() and type() fast functions. Mike Pall 2011-04-05 00:24:23 +02:00
  • 43d7db62d1 ARM: Add pcall() and xpcall() fast functions and unwinders. Mike Pall 2011-04-05 00:23:05 +02:00
  • 959683c77c PPC: Minor cleanups of interpreter. Mike Pall 2011-04-04 01:58:56 +02:00
  • 6511941348 ARM: Add fast functions pairs()/next() and ipairs() + iterator. Mike Pall 2011-04-04 01:56:41 +02:00
  • 5b146f61b5 ARM: Add tostring() fast function. Mike Pall 2011-04-04 01:55:41 +02:00
  • 6110faadd8 ARM: Add basic infrastructure for fast functions. Mike Pall 2011-04-04 01:54:56 +02:00
  • dd4a043b78 ARM: Add table indexing with string keys. Add get global. Mike Pall 2011-04-04 01:51:29 +02:00
  • 0e7009ddc8 ARM: Add table constructors. Mike Pall 2011-04-04 01:49:24 +02:00
  • 81fa9e34cd ARM: Add call and iterator call instructions. Mike Pall 2011-04-04 01:47:23 +02:00
  • 85fff386ef ARM: Add missing parts of return handling. Mike Pall 2011-04-04 01:46:08 +02:00
  • f1c79f80c2 ARM: Minor fixes and cleanups for type checks. Mike Pall 2011-04-04 01:44:54 +02:00
  • 33bab1f76c ARM: Don't conditionalize non-opcodes in DynASM. Mike Pall 2011-04-04 01:39:19 +02:00
  • 2138df2662 ARM: Fix escaping of opcodes in DynASM. Mike Pall 2011-04-03 20:49:51 +02:00
  • 5b06b298a2 ARM: Add binary arithmetic instructions. Mike Pall 2011-03-30 21:56:05 +02:00
  • a0e4711055 ARM: Add basic loop and branch instructions. Mike Pall 2011-03-30 21:54:33 +02:00
  • 7b0a125cf7 ARM: Add basic unary bytecode instructions. Mike Pall 2011-03-29 02:31:47 +02:00
  • ca494b72a9 ARM: Add support to call Lua functions and return from them. Mike Pall 2011-03-29 02:30:41 +02:00
  • c04a252a06 ARM: Add support to call C functions. Mike Pall 2011-03-29 02:29:27 +02:00
  • cff08b2315 ARM: Add entry and exit points into VM. Add type check macros. Mike Pall 2011-03-29 02:24:35 +02:00
  • 3bcb48c6a1 ARM: Add frame unwind info for assembler part. Mike Pall 2011-03-29 02:23:05 +02:00
  • 71f976b02e ARM: Add instruction/call decode + dispatch macros. Mike Pall 2011-03-29 02:26:09 +02:00
  • 98e3c8a8ff ARM: Add register assignments, type definitions and stack layout. Mike Pall 2011-03-29 02:18:36 +02:00
  • 4c9a10f3ad Avoid compiler warning. Mike Pall 2011-03-28 19:22:17 +02:00
  • 492efb7e7e Clean up DynASM glue macros. Thanks to Josh Haberman. Mike Pall 2011-03-28 15:06:30 +02:00
  • 32aef8aee4 ARM: Add skeleton for ARM interpreter. Mike Pall 2011-03-26 18:42:41 +01:00
  • b6ed984843 ARM: Add support for ARM relocations to buildvm. Mike Pall 2011-03-26 18:40:11 +01:00
  • 156bf15783 ARM: Add DynASM ARM module and encoding engine. Mike Pall 2011-03-23 01:25:14 +01:00
  • 7088abce8f DUALNUM: Fix narrowing of unary minus. Mike Pall 2011-03-19 17:46:10 +01:00
  • a1c887e3b9 Fix data-flow analysis for BC_ITERC. Mike Pall 2011-03-19 17:30:15 +01:00
  • 642ae06916 x64: Use external unwinding for lua_yield(). Mike Pall 2011-03-18 23:38:05 +01:00
  • 063182d79c FFI: Fix marking of ffi.gc() finalizer table. Mike Pall 2011-03-17 17:31:48 +01:00
  • ac3b1dcfc5 x64: Workaround for libgcc unwind bug (still present in RHEL 5.5). Mike Pall 2011-03-17 16:05:04 +01:00
  • 6299485000 DUALNUM: Narrow result of math.floor() and math.ceil(). Mike Pall 2011-03-15 18:15:42 +01:00
  • dcbae09b1d DUALNUM: Narrow unary minus. Mike Pall 2011-03-15 17:56:55 +01:00
  • a226fb4cc7 FFI: Force snapshot after C call to preserve semantics. Mike Pall 2011-03-15 14:56:42 +01:00
  • 7fb1075903 DUALNUM: Add integer variant of MIN/MAX. Mike Pall 2011-03-11 23:28:46 +01:00
  • 889368e921 Get rid of the remaining silly cast macros from Lua. Mike Pall 2011-03-10 02:13:43 +01:00
  • bfce3c1127 DUALNUM: Handle integer type in JIT compiler. Mike Pall 2011-03-10 01:57:24 +01:00
  • 3f26e3a89d FFI: Fix and optimize recording of cdata[cdata]. Mike Pall 2011-03-10 01:41:58 +01:00