Mike Pall
|
113f8e9ac2
|
Fix data-flow analysis for BC_ITERL.
|
2011-06-27 01:11:11 +02:00 |
|
Mike Pall
|
29e89adfa7
|
RELEASE LuaJIT-2.0.0-beta8 (fixed)
|
2011-06-23 19:40:21 +02:00 |
|
Mike Pall
|
9b0c641ac1
|
RELEASE LuaJIT-2.0.0-beta8
|
2011-06-23 17:15:02 +02:00 |
|
Mike Pall
|
6691e72eb8
|
Fix assertion.
|
2011-06-22 21:18:23 +02:00 |
|
Mike Pall
|
513bd6e952
|
x86/x64: Don't evict BASE in ra_evictk().
|
2011-06-22 21:07:02 +02:00 |
|
Mike Pall
|
d4da9ff55e
|
x86/x64: Fix register allocation for variable shifts.
|
2011-06-22 20:38:07 +02:00 |
|
Mike Pall
|
e2246db688
|
x86/x64: Fix fusion of comparisons with u8/u16 XLOAD.
|
2011-06-22 17:56:41 +02:00 |
|
Mike Pall
|
b6e4ffd079
|
Avoid pointless calls for std file handles on __gc.
|
2011-06-22 17:54:09 +02:00 |
|
Mike Pall
|
4df40a228f
|
Fix recording of loops with instable directions in side traces.
|
2011-06-20 21:51:31 +02:00 |
|
Mike Pall
|
31d566428f
|
From Lua 5.2: __len for tables. Needs -DLUAJIT_ENABLE_LUA52COMPAT.
|
2011-06-20 20:45:41 +02:00 |
|
Mike Pall
|
3d1563524f
|
More fixes for the Solaris/x86 build. Thanks to Will Metcalf.
|
2011-06-14 16:44:20 +02:00 |
|
Mike Pall
|
9cf2cd2a11
|
Fix bytecode loading on Windows.
|
2011-06-14 12:47:48 +02:00 |
|
Mike Pall
|
bcc196eed3
|
Fix dumping of already stripped functions with debug info.
|
2011-06-13 03:22:10 +02:00 |
|
Mike Pall
|
0eee70cd4d
|
Add -b command line option to save/list bytecode.
|
2011-06-13 01:04:23 +02:00 |
|
Mike Pall
|
4994fcc32c
|
Add support for bytecode loading/saving.
|
2011-06-13 01:04:11 +02:00 |
|
Mike Pall
|
9da94d1355
|
Add recursive dump option to jit.bc.dump().
|
2011-06-12 23:51:13 +02:00 |
|
Mike Pall
|
0c8696dfbf
|
No need for L argument to lj_str_initbuf().
|
2011-06-12 21:09:20 +02:00 |
|
Mike Pall
|
287de611a2
|
FFI: Support __tostring metamethod for pointers to structs, too.
|
2011-06-11 18:30:22 +02:00 |
|
Mike Pall
|
a58eb604f4
|
Make .eh_frame section read-write on Solaris.
|
2011-06-11 15:57:03 +02:00 |
|
Mike Pall
|
27d8d3b5d9
|
Fix check for missing arguments in string.format().
|
2011-06-10 13:47:11 +02:00 |
|
Mike Pall
|
b6a7fc5330
|
Cleanup prototype flags.
|
2011-06-09 13:54:40 +02:00 |
|
Mike Pall
|
96cc99bd6a
|
Remove bogus assertion for GC estimate vs. threshold.
|
2011-06-09 01:34:10 +02:00 |
|
Mike Pall
|
8c32b38ca3
|
Flatten and compress in-memory debug info (saves ~70%).
|
2011-06-09 01:27:37 +02:00 |
|
Mike Pall
|
585cf05dbd
|
Move debugging/introspection functionality to lj_debug.c.
|
2011-06-07 21:37:24 +02:00 |
|
Mike Pall
|
b44ccd4263
|
Fix compiler warning.
|
2011-06-07 21:28:31 +02:00 |
|
Mike Pall
|
a0840d2695
|
FFI: Print NULL pointers as "cdata<... *>: NULL".
|
2011-06-07 21:10:04 +02:00 |
|
Mike Pall
|
a7ca722dca
|
FFI: Show address pointed to for tostring(pointer).
|
2011-06-07 20:57:32 +02:00 |
|
Mike Pall
|
51ee3d951e
|
Minor change to bytecode penalty code for consistency.
|
2011-06-07 20:44:55 +02:00 |
|
Mike Pall
|
f50d8986d8
|
Fix data-flow analysis for BC_UCLO.
|
2011-06-07 11:51:04 +02:00 |
|
Mike Pall
|
22946f268b
|
FFI: Change tonumber(cdata) semantics. Return nil for non-numbers.
|
2011-06-06 19:56:55 +02:00 |
|
Mike Pall
|
a48058a791
|
ARM: Add fast assembler implementation of floor/ceil/trunc.
|
2011-06-05 23:38:23 +02:00 |
|
Mike Pall
|
a175754ab7
|
PPC: Add lj_vm_floor which is callable from C.
|
2011-06-05 23:36:49 +02:00 |
|
Mike Pall
|
7ad4908a48
|
ARM: Fuse XLOAD/XSTORE operands.
|
2011-06-05 18:59:35 +02:00 |
|
Mike Pall
|
b88eaa11f3
|
Add stdint.h replacement for Symbian. Sigh.
|
2011-06-03 20:21:10 +02:00 |
|
Mike Pall
|
8c5935000d
|
Add narrowing of modulo operator.
|
2011-06-03 18:48:02 +02:00 |
|
Mike Pall
|
eec28aa9fd
|
Move math helpers to lj_vmmath.c. Add missing log2/exp2 for Symbian.
|
2011-06-03 17:15:44 +02:00 |
|
Mike Pall
|
77bb8de93d
|
ARM: Disable C++ exception catching on Symbian.
|
2011-06-03 12:23:43 +02:00 |
|
Mike Pall
|
84e33332a7
|
ARM: Enable JIT compiler (except for iOS).
|
2011-06-02 03:19:23 +02:00 |
|
Mike Pall
|
5d82cfd091
|
ARM: Add ARM-specific assembler backend.
|
2011-06-02 03:18:26 +02:00 |
|
Mike Pall
|
fff2fb31f9
|
ARM: Don't generate unaligned XLOADs.
|
2011-06-02 01:46:23 +02:00 |
|
Mike Pall
|
a770bf3741
|
Many soft-float-related fixes to SPLIT pass and assembler backend.
|
2011-06-02 01:24:36 +02:00 |
|
Mike Pall
|
9e153003b4
|
ARM: Catch C++ exceptions in interpreter frames.
|
2011-06-02 01:21:32 +02:00 |
|
Mike Pall
|
8dd09d5041
|
DUALNUM: Fix missing type check for loop index slot.
|
2011-06-01 00:49:29 +02:00 |
|
Mike Pall
|
2d0b32500e
|
ARM: Tune rematerialization scheduler.
|
2011-05-31 21:50:14 +02:00 |
|
Mike Pall
|
865ec114a7
|
FFI: Fix recording of casts from 32 bit pointers to integers.
|
2011-05-31 21:39:37 +02:00 |
|
Mike Pall
|
a522087371
|
x86/x64: Minor cleanup in assembler backend.
|
2011-05-31 21:39:09 +02:00 |
|
Mike Pall
|
496d3753f5
|
ARM: Optimize hash algorithm for 3-operand CPUs.
|
2011-05-31 21:38:16 +02:00 |
|
Mike Pall
|
514ccfceb8
|
ARM: Fix __newindex metamethod handling for BC_TSETB.
|
2011-05-31 21:37:44 +02:00 |
|
Mike Pall
|
0764c615fd
|
ARM: Fix string.sub() argument checks.
|
2011-05-31 21:35:03 +02:00 |
|
Mike Pall
|
03b5c8c935
|
Clean up memory allocator initialization and catch early OOM.
|
2011-05-30 01:32:50 +02:00 |
|
Mike Pall
|
638f968978
|
FFI: Avoid unused functions if FFI is disabled.
|
2011-05-27 02:15:55 +02:00 |
|
Mike Pall
|
12dc697eae
|
ARM: Interpreter/JIT integration, part #2.
|
2011-05-27 02:06:05 +02:00 |
|
Mike Pall
|
7683f39786
|
ARM: Fix math.ldexp() recording and folding.
|
2011-05-27 02:03:02 +02:00 |
|
Mike Pall
|
7bad42a3ba
|
Fix compiler warning.
|
2011-05-27 02:01:36 +02:00 |
|
Mike Pall
|
46955be1e2
|
Fix handling of number constants in snapshots in SPLIT pass.
|
2011-05-27 01:56:25 +02:00 |
|
Mike Pall
|
840a067d4e
|
ARM: Fix rematerialization scheduler.
|
2011-05-26 18:05:19 +02:00 |
|
Mike Pall
|
8d4400331d
|
ARM: Flush instruction cache in assembler backend.
|
2011-05-26 18:04:01 +02:00 |
|
Mike Pall
|
4057620bf5
|
Treat extra exit from stack check like a parent exit.
|
2011-05-26 18:02:42 +02:00 |
|
Mike Pall
|
625ef8626f
|
Simplify helper routines for soft-float targets. Add POW rejoin.
|
2011-05-26 18:01:55 +02:00 |
|
Mike Pall
|
ae3179926a
|
ARM: Add CPU detection.
|
2011-05-26 17:58:29 +02:00 |
|
Mike Pall
|
185554b682
|
ARM: Unify rotates to simplify assembler backend.
|
2011-05-23 20:20:34 +02:00 |
|
Mike Pall
|
7b21a660a8
|
FFI: Fix __gc for VLA/VLS cdata objects.
|
2011-05-23 02:43:36 +02:00 |
|
Mike Pall
|
afad72af25
|
ARM: Add ARM-specific tuning to generic assembler backend.
|
2011-05-22 17:54:28 +02:00 |
|
Mike Pall
|
aaba681056
|
ARM: Add rematerialization scheduler for constants to backend.
|
2011-05-22 17:50:36 +02:00 |
|
Mike Pall
|
138f54352a
|
Split up FP IR instructions with SPLIT pass for soft-float targets.
|
2011-05-22 17:44:58 +02:00 |
|
Mike Pall
|
d0115c65f5
|
More portability cleanups for assembler backend.
|
2011-05-22 17:13:16 +02:00 |
|
Mike Pall
|
919ba5fd74
|
Add missing guard to for loop argument conversion.
|
2011-05-22 16:47:55 +02:00 |
|
Mike Pall
|
effdfda673
|
Move IR_CALL* definitions to lj_ircall.h.
|
2011-05-22 16:28:43 +02:00 |
|
Mike Pall
|
3a942d6cea
|
Portability cleanups for assembler backend.
|
2011-05-17 21:26:00 +02:00 |
|
Mike Pall
|
fb46370e56
|
Cleanup of target dependencies.
|
2011-05-16 19:32:47 +02:00 |
|
Mike Pall
|
dab4bcafba
|
Add target-specific macro for stack alignment in assembler backend.
|
2011-05-16 02:43:14 +02:00 |
|
Mike Pall
|
6cb123bb99
|
Fix compiler warning.
|
2011-05-16 02:41:47 +02:00 |
|
Mike Pall
|
a251a28bd5
|
ARM: Add support for GDB JIT API.
|
2011-05-16 02:40:59 +02:00 |
|
Mike Pall
|
1ac71f1fa8
|
ARM: Add LJ_SOFTFP define. Add support for soft-float slot handling.
|
2011-05-16 02:38:07 +02:00 |
|
Mike Pall
|
be73a96751
|
ARM: Generalize machine code co-location. ARM has a +-32MB range.
|
2011-05-16 02:29:44 +02:00 |
|
Mike Pall
|
58f38c254b
|
Move x86/x64 parts of JIT assembler backend to extra files.
|
2011-05-12 01:35:09 +02:00 |
|
Mike Pall
|
800349387a
|
Disentangle target-specific parts of JIT assembler backend.
|
2011-05-12 01:27:20 +02:00 |
|
Mike Pall
|
b79cdba3a0
|
Tuning loop unrolling heuristics again.
|
2011-05-10 16:55:23 +02:00 |
|
Mike Pall
|
65d9c7cb5e
|
ARM: Fix table/userdata equality comparisons in interpreter.
|
2011-05-09 22:41:12 +02:00 |
|
Mike Pall
|
c8308e2a87
|
ARM: Interpreter/JIT integration, part #1.
|
2011-05-09 22:39:53 +02:00 |
|
Mike Pall
|
67d3ac9b19
|
Fix some portability issues with the JIT compiler.
|
2011-05-09 20:46:58 +02:00 |
|
Mike Pall
|
28e87d33e9
|
Use common helper functions for unaligned loads.
|
2011-05-09 18:09:29 +02:00 |
|
Mike Pall
|
d9c1f771a7
|
FFI: Allow setting errno with ffi.errno(), too.
|
2011-05-09 11:52:54 +02:00 |
|
Mike Pall
|
868ecad32b
|
FFI: Add ffi.errno().
|
2011-05-08 22:34:40 +02:00 |
|
Mike Pall
|
77ba7726e2
|
FFI: Save errno/GetLastError() around allocations, hooks etc.
|
2011-05-08 22:33:04 +02:00 |
|
Mike Pall
|
87553d9e77
|
Avoid name clash with Windows MM_MAX define.
|
2011-05-08 22:31:03 +02:00 |
|
Mike Pall
|
16369d5a64
|
x86/x64: Fix bit.* argument checking.
|
2011-05-06 16:06:02 +02:00 |
|
Mike Pall
|
cfdc356ebe
|
RELEASE LuaJIT-2.0.0-beta7
|
2011-05-05 16:31:13 +02:00 |
|
Mike Pall
|
693b629787
|
Improve bytecode optimization of and/or operators.
|
2011-05-05 15:49:11 +02:00 |
|
Mike Pall
|
6534152b44
|
Fix compiler warning.
|
2011-05-04 23:45:02 +02:00 |
|
Mike Pall
|
704752c612
|
FFI: Fix field alignment for iOS.
|
2011-05-04 23:30:37 +02:00 |
|
Mike Pall
|
fb8b87e818
|
More tuning of loop unrolling heuristics.
|
2011-05-04 23:21:46 +02:00 |
|
Mike Pall
|
b4006ba9a8
|
Fix stack slot updates for down-recursion.
|
2011-05-04 21:34:21 +02:00 |
|
Mike Pall
|
139175f8c4
|
Tune loop unrolling heuristics. Increase trace recorder limits.
|
2011-05-03 21:14:18 +02:00 |
|
Mike Pall
|
c77ca54564
|
FFI: Compile C function calls with 64 bit args/results in 32 bit mode.
|
2011-04-29 19:40:50 +02:00 |
|
Mike Pall
|
eb7b452d53
|
x86: Pop unused FP result from x87 stack.
|
2011-04-29 19:35:25 +02:00 |
|
Mike Pall
|
b4cfaa62ac
|
Improve target OS selection for buildvm.
|
2011-04-29 09:23:00 +02:00 |
|
Mike Pall
|
0ba34ffe50
|
ARM: Fix ABI and build issues for iOS. Now works on iOS 3.0+.
|
2011-04-28 19:41:34 +02:00 |
|
Mike Pall
|
0b606061db
|
ARM: Use own lj_bswap(). Reduce min. req. version of GCC to 4.2.
|
2011-04-28 12:33:31 +02:00 |
|
Mike Pall
|
5d096dcfde
|
FFI: Add ffi.istype() function.
|
2011-04-20 01:53:26 +02:00 |
|
Mike Pall
|
9ea679410c
|
Workaround to compile with Clang. Fix Clang warnings.
|
2011-04-19 17:12:41 +02:00 |
|
Mike Pall
|
e94a12f4f6
|
Fix compiler warning.
|
2011-04-19 16:19:34 +02:00 |
|
Mike Pall
|
b3d10cdf62
|
ARM: Workaround for unaligned accesses.
|
2011-04-19 16:09:07 +02:00 |
|
Mike Pall
|
4fbacaf887
|
ARM: Allow compilation in thumb mode (CCOPT_ARM=-mthumb).
|
2011-04-18 23:44:06 +02:00 |
|
Mike Pall
|
a1ffb6114f
|
ARM: Add missing FFI functionality. Enable FFI for ARM.
|
2011-04-18 21:24:47 +02:00 |
|
Mike Pall
|
38a842a474
|
Add common TARGET_FLAGS option to Makefile.
|
2011-04-17 12:48:01 +02:00 |
|
Mike Pall
|
54994ef7be
|
ARM: Enable ARM port.
|
2011-04-17 02:36:10 +02:00 |
|
Mike Pall
|
7bb4b0f570
|
ARM: Normalize results of math.floor()/ceil() fast functions.
|
2011-04-17 02:31:00 +02:00 |
|
Mike Pall
|
32db4525d9
|
ARM: Misc. fixes for interpreter.
|
2011-04-16 23:32:44 +02:00 |
|
Mike Pall
|
add553edd8
|
ARM: Add integer variant of modulo operator.
|
2011-04-16 23:29:57 +02:00 |
|
Mike Pall
|
d636a3decd
|
ARM: Add partial support for FFI.
|
2011-04-16 23:28:51 +02:00 |
|
Mike Pall
|
fc40214279
|
ARM: Add coroutine.resume/wrap_aux/yield() fast functions.
|
2011-04-16 23:26:11 +02:00 |
|
Mike Pall
|
5f08a50506
|
FFI: Fix arithmetic ctype metamethods for references.
|
2011-04-15 19:02:47 +02:00 |
|
Mike Pall
|
31e0774a9e
|
FFI: Fix cdata finalization.
|
2011-04-13 21:37:54 +02:00 |
|
Mike Pall
|
1fa0cc09b3
|
PPC: Fix L->status for resume after yield.
|
2011-04-13 02:28:25 +02:00 |
|
Mike Pall
|
0001a7fced
|
ARM: Add BC_VARG and BC_TSETM.
|
2011-04-13 02:24:56 +02:00 |
|
Mike Pall
|
7aa7069271
|
ARM: Add dispatch targets for hooks.
|
2011-04-13 02:24:18 +02:00 |
|
Mike Pall
|
46d97d28f0
|
ARM: Add modulo subroutine and temp. math.floor()/math.ceil().
|
2011-04-13 02:22:59 +02:00 |
|
Mike Pall
|
3b6f37dd2c
|
FFI: Add ctype metamethods and ffi.metatype().
|
2011-04-12 19:16:39 +02:00 |
|
Mike Pall
|
fa5cd010e8
|
Add support for tailcalls from internal C functions.
PPC: Fix __call metamethod for tailcalls.
|
2011-04-12 19:13:11 +02:00 |
|
Mike Pall
|
23f847f4ed
|
Optimize lookups in empty proxy tables.
|
2011-04-10 21:43:21 +02:00 |
|
Mike Pall
|
a1f66abe4e
|
Avoid phantom stores to proxy tables.
|
2011-04-10 21:41:58 +02:00 |
|
Mike Pall
|
efcaef22bd
|
Inline lj_gc_barrierback().
|
2011-04-10 20:45:36 +02:00 |
|
Mike Pall
|
d85b7e636e
|
Fix recording of JLOOP with higher maxslot.
|
2011-04-10 18:00:08 +02:00 |
|
Mike Pall
|
f69524f7f1
|
PPC: Misc. fixes for interpreter.
|
2011-04-10 17:04:10 +02:00 |
|
Mike Pall
|
54e986a51d
|
ARM: Misc. fixes for interpreter.
|
2011-04-10 17:00:32 +02:00 |
|
Mike Pall
|
040c8c5737
|
ARM: Add string.* fast functions and GC steps.
|
2011-04-10 16:59:38 +02:00 |
|
Mike Pall
|
da1ef8c3b0
|
ARM: Add rawget() fast function.
|
2011-04-10 16:59:00 +02:00 |
|
Mike Pall
|
89022b4c3e
|
Use lj_vm_tobit() on targets without FPU.
|
2011-04-10 16:58:22 +02:00 |
|
Mike Pall
|
f089f3954c
|
ARM: Add bit.* fast functions and lj_vm_tobit().
|
2011-04-10 16:56:13 +02:00 |
|
Mike Pall
|
27bf481669
|
ARM: Misc. fixes for interpreter.
|
2011-04-08 03:03:10 +02:00 |
|
Mike Pall
|
b56784aae2
|
ARM: Add BC_CAT and lj_cont_cat.
|
2011-04-08 03:01:37 +02:00 |
|
Mike Pall
|
b1912f3325
|
ARM: Add missing metamethod handlers and continuations.
|
2011-04-08 02:57:22 +02:00 |
|
Mike Pall
|
aee129a789
|
ARM: Add tailcall instructions.
|
2011-04-08 02:54:11 +02:00 |
|
Mike Pall
|
16e0ecaf54
|
ARM: Add table.getn() fast function.
|
2011-04-08 02:52:24 +02:00 |
|
Mike Pall
|
9e18260fb4
|
ARM: Add upvalue get/set and closure-related instructions.
|
2011-04-08 02:50:56 +02:00 |
|
Mike Pall
|
3af41060c7
|
ARM: Add test/copy and comparison instructions.
|
2011-04-08 02:48:55 +02:00 |
|
Mike Pall
|
83e302938b
|
ARM: Add math.* fast functions.
|
2011-04-08 02:47:19 +02:00 |
|
Mike Pall
|
1f4f805c96
|
ARM: Add getmetatable(), setmetatable() and tonumber() fast functions.
|
2011-04-08 02:42:04 +02:00 |
|
Mike Pall
|
0046f955eb
|
ARM: Handle stack growth during function calls.
|
2011-04-08 02:44:56 +02:00 |
|
Mike Pall
|
1a56dacbcf
|
ARM: Add build rules (still disabled).
|
2011-04-07 16:08:34 +02:00 |
|
Mike Pall
|
ee644872e3
|
FFI: Register the FFI library as a loaded module in luaopen_ffi().
Allows loading it on startup like other libraries in lib_init.c.
|
2011-04-06 01:31:21 +02:00 |
|
Mike Pall
|
66a1006175
|
Fuse XLOAD/XSTORE operands more aggressively.
|
2011-04-05 16:32:27 +02:00 |
|
Mike Pall
|
3acd4892e9
|
Add FOLD rule for FLOAT->NUM->FLOAT conversions.
|
2011-04-05 16:31:48 +02:00 |
|
Mike Pall
|
48438b9e13
|
Fix code generation for PHIs with type IRT_FLOAT.
|
2011-04-05 16:29:40 +02:00 |
|
Mike Pall
|
5b7a8baea4
|
x64: Fix getmetatable(lightuserdata).
|
2011-04-05 13:00:13 +02:00 |
|
Mike Pall
|
314995aebf
|
ARM: Finish basic table indexing and add metamethod handlers.
|
2011-04-05 00:25:31 +02:00 |
|
Mike Pall
|
a7874cb299
|
ARM: Add assert() and type() fast functions.
|
2011-04-05 00:24:23 +02:00 |
|
Mike Pall
|
43d7db62d1
|
ARM: Add pcall() and xpcall() fast functions and unwinders.
|
2011-04-05 00:23:05 +02:00 |
|
Mike Pall
|
959683c77c
|
PPC: Minor cleanups of interpreter.
|
2011-04-04 02:00:38 +02:00 |
|