Mike Pall
|
2621617a92
|
ARM: Drop hard-fp variants of floor/ceil/trunc.
Soft-fp variants are faster on a Cortex-A9. Duh.
|
2012-10-15 16:53:03 +02:00 |
|
Mike Pall
|
1447ee6520
|
ARM, MIPS: Fix workaround for argument GPRs vs. FPR remat.
|
2012-10-15 15:47:15 +02:00 |
|
Mike Pall
|
93e4040b60
|
Workaround for broken Android sprintf("%g", -0.0).
|
2012-10-15 01:31:56 +02:00 |
|
Mike Pall
|
c25d4daaa5
|
Add note to recalcitrant distro maintainers.
|
2012-10-14 21:52:35 +02:00 |
|
Mike Pall
|
b50375a11c
|
From Lua 5.2: Add package.loadlib(libname, "*").
|
2012-10-12 14:42:40 +02:00 |
|
Mike Pall
|
fff12979fe
|
From Lua 5.2: Add format options to io.lines().
|
2012-10-12 14:11:41 +02:00 |
|
Mike Pall
|
fd292c9f26
|
Fix assertion.
|
2012-10-11 21:40:46 +02:00 |
|
Mike Pall
|
0b55e05d06
|
FFI: Compile ffi.gc().
|
2012-10-10 18:56:16 +02:00 |
|
Mike Pall
|
1c626112a0
|
FFI: Compile ffi.sizeof(), ffi.alignof() and ffi.offsetof().
|
2012-10-10 18:16:18 +02:00 |
|
Mike Pall
|
4a97faef7e
|
FFI: Compile array/struct copies.
|
2012-10-09 21:51:30 +02:00 |
|
Mike Pall
|
a7d1dbacb1
|
FFI: Optimize ffi.copy() and ffi.fill().
|
2012-10-09 21:49:57 +02:00 |
|
Mike Pall
|
5ebe4990ba
|
Add LJ_TARGET_UNALIGNED.
|
2012-10-09 21:42:42 +02:00 |
|
Mike Pall
|
0452e97ba0
|
Add FOLD rules for CONV.int.i8/u8/i16/u16 of KINT.
|
2012-10-09 21:36:56 +02:00 |
|
Mike Pall
|
eabfdfe1aa
|
Don't use stack unwinding for lua_yield().
|
2012-10-09 13:19:57 +02:00 |
|
Mike Pall
|
da682b0e91
|
FFI: Add support for copy constructors.
|
2012-10-08 17:15:28 +02:00 |
|
Mike Pall
|
c681e009c0
|
PPC: Fix string.sub() range check.
|
2012-10-07 17:12:28 +02:00 |
|
Mike Pall
|
2f5ed5d0df
|
From Lua 5.2: Add string.rep(s, n, sep).
|
2012-10-07 17:11:39 +02:00 |
|
Mike Pall
|
0561a56938
|
From Lua 5.2: Add math.log(x, base).
|
2012-10-07 15:47:11 +02:00 |
|
Mike Pall
|
0d62e2e1ab
|
Clarify comments in Makefile on -DLUAJIT_ENABLE_LUA52COMPAT.
|
2012-10-04 13:55:34 +02:00 |
|
Mike Pall
|
2e9f4efd20
|
Fix scope for resolving break labels.
|
2012-10-03 11:53:18 +02:00 |
|
Mike Pall
|
8d8dbf27b8
|
Fix x64 build.
|
2012-10-02 18:07:31 +02:00 |
|
Mike Pall
|
faf05c3a13
|
From Lua 5.2: '%s' option to string.format() behaves like tostring().
|
2012-10-02 11:59:32 +02:00 |
|
Mike Pall
|
0d7094f36e
|
From Lua 5.2: Return nil for bad position in string.find().
Needs -DLUAJIT_ENABLE_LUA52COMPAT.
|
2012-10-02 11:56:33 +02:00 |
|
Mike Pall
|
b66ab96a62
|
Move a GC macro.
|
2012-10-02 09:57:49 +02:00 |
|
Mike Pall
|
fcddd5a3a0
|
From Lua 5.2: Add luaL_traceback().
|
2012-10-01 20:45:30 +02:00 |
|
Mike Pall
|
3ad61689cf
|
Update dependencies.
|
2012-09-28 19:32:39 +02:00 |
|
Mike Pall
|
d08e7bd518
|
From Lua 5.2: Allow mixed metamethods for ordered comparisons.
Needs -DLUAJIT_ENABLE_LUA52COMPAT.
|
2012-09-28 19:30:08 +02:00 |
|
Mike Pall
|
550ac44e41
|
From Lua 5.2: Remove error for ambiguous function call syntax.
Needs -DLUAJIT_ENABLE_LUA52COMPAT.
|
2012-09-28 18:12:43 +02:00 |
|
Mike Pall
|
7a6bb9a208
|
From Lua 5.2: Return file object for io.write() and file:write().
Needs -DLUAJIT_ENABLE_LUA52COMPAT.
|
2012-09-28 17:54:18 +02:00 |
|
Mike Pall
|
26841296ab
|
From Lua 5.2: Add table.pack(). Needs -DLUAJIT_ENABLE_LUA52COMPAT.
|
2012-09-28 17:29:17 +02:00 |
|
Mike Pall
|
e013206dd8
|
FFI: ctypeid of ctype object is immutable.
|
2012-09-27 14:48:13 +02:00 |
|
Mike Pall
|
d4d9807f45
|
Fold KPTR + offset in SPLIT pass.
|
2012-09-27 14:39:16 +02:00 |
|
Mike Pall
|
0ecdff43e8
|
x86: Fix register allocation for calls returning register pair.
|
2012-09-27 14:16:18 +02:00 |
|
Mike Pall
|
cfca926cc2
|
From Lua 5.2: Extended results from os.execute() and pipe:close().
Needs -DLUAJIT_ENABLE_LUA52COMPAT.
|
2012-09-24 19:00:54 +02:00 |
|
Mike Pall
|
125cc87988
|
From Lua 5.2: Add debug.getuservalue() and debug.setuservalue().
Needs -DLUAJIT_ENABLE_LUA52COMPAT.
|
2012-09-24 17:52:32 +02:00 |
|
Mike Pall
|
ca0bb4881f
|
From Lua 5.2: Add rawlen(). Needs -DLUAJIT_ENABLE_LUA52COMPAT.
|
2012-09-24 17:33:32 +02:00 |
|
Mike Pall
|
4c7c2c8319
|
Rearrange library functions to get a fixed FF_next.
|
2012-09-24 17:13:53 +02:00 |
|
Mike Pall
|
d9c5eba1bb
|
Remove some library functions for no-JIT/no-FFI builds.
|
2012-09-24 16:56:07 +02:00 |
|
Mike Pall
|
2ff4afeb4f
|
Allow conditional inclusion of builtin library functions.
|
2012-09-24 16:55:10 +02:00 |
|
Mike Pall
|
2ba16862c7
|
From Lua 5.2: Add mode and env arguments to load*().
|
2012-09-21 16:33:14 +02:00 |
|
Mike Pall
|
3dceaa9a74
|
Move load/dump functions to lj_load.c. Add load modes.
|
2012-09-21 16:32:24 +02:00 |
|
Mike Pall
|
98f05808fa
|
Fix package.searchpath().
|
2012-09-21 16:14:17 +02:00 |
|
Mike Pall
|
40afe71c3f
|
Fix last commit.
|
2012-09-20 17:41:32 +02:00 |
|
Mike Pall
|
8352335c74
|
From Lua 5.2: Add debug.upvalueid() and debug.upvaluejoin().
Ditto for lua_upvalueid() and lua_upvaluejoin().
|
2012-09-20 17:36:15 +02:00 |
|
Mike Pall
|
a9baead59f
|
From Lua 5.2: debug.getinfo(..., "u") returns nparams and isvararg.
|
2012-09-20 15:50:20 +02:00 |
|
Mike Pall
|
965694b0af
|
Fix 'f' and 'L' options for debug.getinfo() and lua_getinfo().
|
2012-09-20 15:19:48 +02:00 |
|
Mike Pall
|
2d3c1967c7
|
Disable LUA_COMPAT_GFIND and LUA_COMPAT_MOD in Lua 5.2 mode.
|
2012-09-19 18:14:00 +02:00 |
|
Mike Pall
|
16d8c83743
|
From Lua 5.2: debug.setmetatable() returns object.
Needs -DLUAJIT_ENABLE_LUA52COMPAT.
|
2012-09-19 16:33:50 +02:00 |
|
Mike Pall
|
1afcea1435
|
From Lua 5.2: 'break' allowed anywhere.
Needs -DLUAJIT_ENABLE_LUA52COMPAT.
|
2012-09-19 16:33:39 +02:00 |
|
Mike Pall
|
c687d01c46
|
From Lua 5.2: debug.getlocal() accepts function arg, too.
|
2012-09-19 12:08:35 +02:00 |
|
Mike Pall
|
7d49b19ad0
|
From Lua 5.2: debug.getlocal()/setlocal() treats slot < 0 as vararg.
|
2012-09-19 12:06:56 +02:00 |
|
Mike Pall
|
998c656dc4
|
From Lua 5.2: debug.getupvalue() returns "" for C function upvalues.
|
2012-09-19 12:03:03 +02:00 |
|
Mike Pall
|
ead325b0c9
|
From Lua 5.2: Add goto and :🏷️: statements.
|
2012-09-16 18:46:04 +02:00 |
|
Mike Pall
|
aed2009378
|
Fix despecialization of ITERN when already running.
|
2012-09-12 16:58:47 +02:00 |
|
Mike Pall
|
23932a6c8b
|
Use 0/1 macro for Lua 5.2 compatibility.
|
2012-09-12 11:20:47 +02:00 |
|
Mike Pall
|
039bf85e26
|
Add more assertions for stack consistency during recording.
|
2012-09-12 11:02:19 +02:00 |
|
Mike Pall
|
76ab3709da
|
FFI: Correctly propagate alignment when interning nested types.
|
2012-09-10 18:05:54 +02:00 |
|
Mike Pall
|
21cea85d92
|
FFI: Always resolve metamethods for pointers to structs.
|
2012-09-08 21:03:40 +02:00 |
|
Mike Pall
|
0648fd47cb
|
FFI: Handle __pairs/__ipairs metamethods for cdata objects.
|
2012-09-03 21:11:08 +02:00 |
|
Mike Pall
|
90ec1f90d0
|
Fix recording of ctype() constructors for pointers.
|
2012-09-03 21:08:37 +02:00 |
|
Mike Pall
|
a6d636c508
|
Preserve snapshot #0 PC for all traces (potential gcstep exit).
|
2012-09-01 00:58:00 +02:00 |
|
Mike Pall
|
d3699997fa
|
Add check for unsupported MIPS soft-float targets.
|
2012-08-30 10:31:26 +02:00 |
|
Mike Pall
|
ff00a78f3a
|
Limit recursion depth in string.match() et al.
|
2012-08-28 21:22:23 +02:00 |
|
Mike Pall
|
751cd9d821
|
Don't constify upvalues that may retain large amounts of memory.
|
2012-08-28 15:24:53 +02:00 |
|
Mike Pall
|
c7826af5a0
|
FFI: Detect type punning through unions.
|
2012-08-27 20:53:37 +02:00 |
|
Mike Pall
|
76b18b2b46
|
Add table of IR type sizes.
|
2012-08-27 20:27:01 +02:00 |
|
Mike Pall
|
30f458fb4d
|
ARM, PPC, MIPS: Improve XLOAD operand fusion and register hinting.
|
2012-08-27 20:25:54 +02:00 |
|
Mike Pall
|
1e477e6487
|
Fix underflow handling in builtin string to number conversion.
|
2012-08-27 14:26:50 +02:00 |
|
Mike Pall
|
774280d9c1
|
Replace some trivial uses of fprintf() with fputs.
|
2012-08-26 20:13:23 +02:00 |
|
Mike Pall
|
c0efa6f00e
|
Replace divisions with simpler code.
|
2012-08-26 19:41:35 +02:00 |
|
Mike Pall
|
cf3a263044
|
Fix compilation with FFI disabled.
|
2012-08-26 14:36:00 +02:00 |
|
Mike Pall
|
dad6645098
|
Remove old Makefile rules.
|
2012-08-26 11:58:58 +02:00 |
|
Mike Pall
|
4c882fe714
|
Replace strtod() with builtin string to number conversion.
|
2012-08-25 23:02:29 +02:00 |
|
Mike Pall
|
653facd0d5
|
Add support for '%a' and '%A' to string.format.
|
2012-08-25 22:46:22 +02:00 |
|
Mike Pall
|
52ca2cc8ba
|
ARM: Fix base register coalescing.
|
2012-08-25 18:38:30 +02:00 |
|
Mike Pall
|
099635c86c
|
ARM: Fix commit ceaa60c0 .
|
2012-08-25 14:13:47 +02:00 |
|
Mike Pall
|
f2479a9654
|
Minor fixes to FOLD rules.
|
2012-08-20 18:45:50 +02:00 |
|
Mike Pall
|
af2cb02542
|
ARM: Fix hard-float lj_vm_trunc() (used by compiled math.modf).
|
2012-08-19 22:37:43 +02:00 |
|
Mike Pall
|
1fef2df3e8
|
MIPS: Don't use argument GPRs to rematerialize FPR arguments.
|
2012-08-19 18:44:29 +02:00 |
|
Mike Pall
|
ceaa60c0c7
|
ARM: Don't use argument GPRs to rematerialize FPR arguments.
|
2012-08-19 18:43:04 +02:00 |
|
Mike Pall
|
1481263aaa
|
ARM, MIPS, PPC: Rematerialize FPR invariants first.
|
2012-08-19 18:42:08 +02:00 |
|
Mike Pall
|
2ac083cb5a
|
MIPS: Fix calls to floor/ceil/trunc.
|
2012-08-19 18:41:34 +02:00 |
|
Mike Pall
|
f58a84d0bc
|
ARM: Fix calls to hard-float floor/ceil/trunc.
|
2012-08-19 18:39:47 +02:00 |
|
Mike Pall
|
d61e9e5d89
|
Fix shrinking of direct mapped block in builtin allocator.
|
2012-08-16 13:18:40 +02:00 |
|
Mike Pall
|
0dd175d9e7
|
Fix last commit.
|
2012-08-15 21:08:00 +02:00 |
|
Mike Pall
|
ff0a1f3f4e
|
FOLD x / 2^k ==> x * 2^-k.
|
2012-08-15 16:17:34 +02:00 |
|
Mike Pall
|
5e18c91b89
|
x86: Simplify error message for CPUs lacking CMOV.
|
2012-08-14 13:19:45 +02:00 |
|
Mike Pall
|
1a3e5e1521
|
FFI: Don't keep CType * across call. Callback may reallocate table.
|
2012-08-12 01:16:49 +02:00 |
|
Mike Pall
|
ece23a4788
|
Do not use DWARF unwinder on Windows.
|
2012-08-11 05:41:09 +02:00 |
|
Mike Pall
|
85a02f9ae8
|
ARM: Enable VFP and hard-float ABI support.
|
2012-08-09 13:13:39 +02:00 |
|
Mike Pall
|
4dc9e22def
|
ARM: Add VFP and hard-float ABI variants to JIT compiler.
|
2012-08-09 13:13:11 +02:00 |
|
Mike Pall
|
e6fac91d01
|
Never compile DWARF unwinder on Windows.
|
2012-08-09 13:09:47 +02:00 |
|
Mike Pall
|
2717623e3a
|
FFI: Compile ffi.typeof(cdata).
Thanks to Robert G. Jakabosky.
|
2012-08-08 21:01:36 +02:00 |
|
Mike Pall
|
e2373c1538
|
FFI: Compile assignments from enums.
Thanks to Robert G. Jakabosky.
|
2012-08-08 20:36:31 +02:00 |
|
Mike Pall
|
5e227865bc
|
Add missing change for last commit.
|
2012-08-05 19:13:35 +02:00 |
|
Mike Pall
|
806822b70b
|
FFI: Improve error message for bad indexing attempts.
|
2012-08-05 17:26:01 +02:00 |
|
Mike Pall
|
0a750fe715
|
FFI: Initialize all fields of standard types.
|
2012-08-05 09:33:15 +02:00 |
|
Mike Pall
|
77183e75f2
|
FFI: Fix alignment of C call structure.
|
2012-08-02 15:13:28 +02:00 |
|
Mike Pall
|
4b0af611d0
|
ARM: Add hard-float ABI support to the FFI (interpreter).
|
2012-07-30 19:00:52 +02:00 |
|
Mike Pall
|
a373fddbd3
|
ARM: Add VFP and hard-float ABI variants to interpreter.
|
2012-07-30 18:59:13 +02:00 |
|
Mike Pall
|
23abbd9ef3
|
Only replay sunk stores up to the snapshot reference.
|
2012-07-29 21:37:45 +02:00 |
|
Mike Pall
|
85f29ffd40
|
Need to handle TBAR in SINK pass.
Can only happen with -O-dse.
|
2012-07-29 21:37:31 +02:00 |
|
Mike Pall
|
e84c2a9e9a
|
Handle cross-compiles with FPU/no-FPU or hard-fp/soft-fp ABI mismatch.
|
2012-07-29 12:22:18 +02:00 |
|
Mike Pall
|
b98c1582c9
|
ARM: Add VFP instructions to ARM disassembler.
|
2012-07-29 12:17:13 +02:00 |
|
Mike Pall
|
e8af6e9da4
|
Don't treat all constified cdata content as constant.
|
2012-07-24 14:56:29 +02:00 |
|
Mike Pall
|
3636a720a5
|
Turn loads from immutable upvalues into constants.
|
2012-07-20 18:54:52 +02:00 |
|
Mike Pall
|
834ff6d36d
|
Fix slot flags in snapshot replay.
|
2012-07-20 18:52:29 +02:00 |
|
Mike Pall
|
f1b4fa844b
|
Fix restore of sunk CNEWI with implicit P32 to P64 conversion.
|
2012-07-18 18:02:32 +02:00 |
|
Mike Pall
|
4d9c29a78c
|
FFI: Box all accessed or returned enums.
|
2012-07-17 22:22:07 +02:00 |
|
Mike Pall
|
2139c6791f
|
Fix FOLD rule (i-j)-i => 0-j.
Thanks to Thomas Schilling.
|
2012-07-17 21:47:45 +02:00 |
|
Mike Pall
|
c172e7aa30
|
Workaround for MSVC conversion bug (double -> uint32_t -> int32_t).
|
2012-07-17 21:45:49 +02:00 |
|
Mike Pall
|
08d8ec0648
|
x86/x64: Fix fusion of unsigned byte comparisons with swapped ops.
|
2012-07-16 23:43:03 +02:00 |
|
Mike Pall
|
e44cb53874
|
ARM: Invoke SPLIT pass for leftover IR_TOBIT.
Can only happen with -O-fold for TOBIT(constant).
|
2012-07-16 23:39:49 +02:00 |
|
Mike Pall
|
63bb052bbe
|
From Lua 5.2: Add -E command line option (ignore env vars).
|
2012-07-16 22:47:01 +02:00 |
|
Mike Pall
|
bf2d4acf00
|
Correct dispatch table modifications for return hooks.
|
2012-07-16 22:36:38 +02:00 |
|
Mike Pall
|
0e2f5be140
|
FFI: Show address pointed to for tostring(ref), too.
|
2012-07-12 14:19:27 +02:00 |
|
Mike Pall
|
53e28d7678
|
Limit number of parent links handled by backend.
|
2012-07-11 16:48:52 +02:00 |
|
Mike Pall
|
24fa85760c
|
Use an explicit flag to signal SINK tags for a trace.
|
2012-07-11 16:45:15 +02:00 |
|
Mike Pall
|
79ecb231ce
|
Don't allocate constants for sunk stores.
|
2012-07-09 16:22:08 +02:00 |
|
Mike Pall
|
f20ff8a30d
|
Avoid compiler warnings about redefined C++ keywords.
|
2012-07-09 16:02:05 +02:00 |
|
Mike Pall
|
6e4d0fdc8e
|
Add missing declarations for MSVC intrinsics.
|
2012-07-09 15:54:25 +02:00 |
|
Mike Pall
|
b23a7830d2
|
Clean up ARM capability flags. Only set highest arch version.
|
2012-07-08 22:20:11 +02:00 |
|
Mike Pall
|
c00ffcb870
|
Change DynASM bit operations to use Lua BitOp.
|
2012-07-08 16:27:18 +02:00 |
|
Mike Pall
|
e3dec0438d
|
Add Lua BitOp to minilua.
|
2012-07-08 16:24:53 +02:00 |
|
Mike Pall
|
6a67fa8a4b
|
Finally fix target detection for msvcbuild.bat.
Famous last words.
|
2012-07-07 20:36:35 +02:00 |
|
Mike Pall
|
7c056488d9
|
Drop range limit for sunk stores relative to sunk allocation.
|
2012-07-04 21:16:06 +02:00 |
|
Mike Pall
|
bd782cedd5
|
Bump some limits to accomodate SINK pass.
|
2012-07-04 21:15:15 +02:00 |
|
Mike Pall
|
c22d698e17
|
Add stricter check for sinking PHIs.
|
2012-07-04 11:41:58 +02:00 |
|
Mike Pall
|
4da7ffc34b
|
Remove unneeded snapshot preps for sunk stores.
|
2012-07-03 23:19:45 +02:00 |
|
Mike Pall
|
d5b9d84538
|
Fix NEWREF marking in SINK pass.
|
2012-07-03 16:45:13 +02:00 |
|
Mike Pall
|
80d0acc7c1
|
Fix compiler warnings.
|
2012-07-03 13:22:30 +02:00 |
|
Mike Pall
|
17d3fc47f3
|
Avoid pesky compiler warnings about C++ keywords (eh?).
|
2012-07-03 13:19:32 +02:00 |
|
Mike Pall
|
c740a30223
|
Invoke SPLIT pass in side trace for rejoined sunk stores.
|
2012-07-03 12:41:21 +02:00 |
|
Mike Pall
|
2df19049ef
|
Avoid strict aliasing issues.
|
2012-07-03 00:03:01 +02:00 |
|
Mike Pall
|
0af3f47ba0
|
Add allocation sinking and store sinking optimization.
|
2012-07-02 23:47:12 +02:00 |
|
Mike Pall
|
79e1eaa73b
|
ARM: Simplify two-step constant rematerialization.
|
2012-07-02 22:57:51 +02:00 |
|
Mike Pall
|
afeb4e2c51
|
Handle initial snapshot for side traces in lj_snap.c only.
|
2012-07-02 22:52:15 +02:00 |
|
Mike Pall
|
f093a34a2f
|
Handle joining IR_HIOP in SPLIT pass.
|
2012-07-02 22:50:03 +02:00 |
|
Mike Pall
|
0688de5483
|
Add IR_PVAL instruction for non-slot parent links.
|
2012-07-02 22:47:20 +02:00 |
|
Mike Pall
|
5d0115ef8d
|
Add explicit IR_GCSTEP instruction.
|
2012-07-02 22:42:40 +02:00 |
|
Mike Pall
|
264177b0d0
|
Use HIOP for XSTORE in SPLIT pass.
|
2012-07-02 22:37:00 +02:00 |
|
Mike Pall
|
7ae3832f20
|
Move snapshot replay for side traces to lj_snap.c.
|
2012-07-02 13:37:55 +02:00 |
|
Mike Pall
|
cda3630565
|
Clean up RegSP handling for parent link instructions.
|
2012-07-01 22:44:54 +02:00 |
|
Mike Pall
|
89f8c920c6
|
Expand array slots in template tables with mixed const/var initializers.
|
2012-06-30 20:58:19 +02:00 |
|
Mike Pall
|
eacecc90e1
|
Clean up snapshot restore.
|
2012-06-30 20:45:59 +02:00 |
|
Mike Pall
|
dd9e7a4608
|
Fix cdecl string parsing during recording.
|
2012-06-28 20:17:08 +02:00 |
|
Mike Pall
|
a6458ce4de
|
Make os.date() thread-safe.
|
2012-06-28 15:47:16 +02:00 |
|
Mike Pall
|
a751c8a5b5
|
Fix buffer check in bytecode writer.
|
2012-06-28 15:13:26 +02:00 |
|
Mike Pall
|
a9bf455b96
|
Add HREFK forwarding. Eliminate HREFK guard for TDUP refs.
|
2012-06-28 15:10:52 +02:00 |
|
Mike Pall
|
0d1056eeed
|
Create string hash slots in template tables even for non-const values.
|
2012-06-27 22:45:54 +02:00 |
|