Commit Graph

2482 Commits

Author SHA1 Message Date
Mike Pall
17fb96d904 Windows: Fix NtAllocateVirtualMemory prototype. 2020-06-23 03:13:54 +02:00
Mike Pall
2e68e1fc18 Add jit.security(). 2020-06-23 03:12:32 +02:00
Mike Pall
ff34b48ddd Redesign and harden string interning.
Up to 40% faster on hash-intensive benchmarks.
With some ideas from Sokolov Yura.
2020-06-23 03:06:45 +02:00
Mike Pall
a44f53acf5 Use a securely seeded global PRNG for the VM.
It's not 2005 anymore.
2020-06-15 12:21:05 +02:00
Mike Pall
34e53736c6 Cleanup some arch defines and fix builds. 2020-06-15 11:23:04 +02:00
Mike Pall
d333b1a6fe ARM: Implement FLOAD from GG_State. 2020-06-13 01:12:14 +02:00
Mike Pall
8ae5170cdc Improve assertions. 2020-06-15 02:52:00 +02:00
Mike Pall
8b55054473 Merge branch 'master' into v2.1 2020-06-07 14:35:18 +02:00
Mike Pall
f5b0fff5a9 Fix debug.debug() for non-string errors. 2020-06-07 14:34:09 +02:00
Mike Pall
1a4ff13117 Optimize table length computation with hinting.
10x faster on loop with t[#t+1] = x idiom. Also used by table.insert.
2020-05-27 19:20:44 +02:00
Mike Pall
b2307c8ad8 Remove pow() splitting and cleanup backends. 2020-05-23 21:33:01 +02:00
Mike Pall
5655be4546 Cleanup math function compilation and fix inconsistencies. 2020-05-22 04:53:35 +02:00
Mike Pall
c5b8e9168b Merge branch 'master' into v2.1 2020-05-22 03:30:55 +02:00
Mike Pall
2f3f07882f Fix bytecode register allocation for comparisons. 2020-05-22 03:28:52 +02:00
Mike Pall
d75e26275b Don't compile math.modf() anymore.
It's rarely used and properly compiling it would be difficult.
2020-05-22 03:13:57 +02:00
Mike Pall
03208c8162 Fix math.min()/math.max() inconsistencies. 2020-05-22 03:10:30 +02:00
Mike Pall
1e6e8aaa20 Fix narrowing of unary minus. 2020-05-22 02:45:03 +02:00
Mike Pall
0eddcbead2 Cleanup CPU detection and tuning for old CPUs. 2020-05-20 20:42:04 +02:00
Mike Pall
5bf0da3d7c ARM64: Fix {AHUV}LOAD specialized to nil/false/true.
Reported by caohongqing.
2020-05-18 22:24:53 +02:00
Mike Pall
ae20998ff5 ARM, ARM64, PPC: Fix TSETR fallback.
Thanks to Javier Guerra Giraldez.
2020-05-18 22:06:50 +02:00
Mike Pall
322db02081 Remove unused file. 2020-05-08 14:00:19 +02:00
Mike Pall
d5e12d5174 Merge branch 'master' into v2.1 2020-05-08 14:00:07 +02:00
Mike Pall
cc4bbec483 FFI: Always fall back to metamethods for cdata length/concat.
Thanks to Egor Skriptunoff.
2020-05-08 13:50:41 +02:00
Mike Pall
92c011b511 Windows: Make actual use of internal allocator optimization.
Thanks to Nicholas Ham.
2020-05-05 12:32:55 +02:00
Mike Pall
99d1268823 Merge branch 'master' into v2.1 2020-04-28 17:54:03 +02:00
Mike Pall
179cf2eb84 Fix overflow check in unpack().
Thanks to HybridDog.
2020-04-28 17:52:28 +02:00
Mike Pall
f133649ced Merge branch 'master' into v2.1 2020-04-28 16:53:32 +02:00
Mike Pall
db0b7ec194 Fix Windows make clean. 2020-04-28 16:52:28 +02:00
Mike Pall
9143e86498 FFI/ARM64: Fix pass-by-value struct calling conventions. 2020-03-20 14:10:18 +01:00
Mike Pall
fc1c4da3cc Merge branch 'master' into v2.1 2020-03-20 13:38:05 +01:00
Mike Pall
e613105ca9 Fix write barrier for lua_setupvalue() and debug.setupvalue(). 2020-03-20 13:35:49 +01:00
Mike Pall
0ad60ccbc3 Make string to number conversions fail on NUL char.
Contributed by Igor Munkin.
2020-02-13 17:39:51 +01:00
Mike Pall
d85d6b3c1b Merge branch 'master' into v2.1 2020-02-02 18:20:35 +01:00
Mike Pall
522d2073da x86/x64: Fix loop realignment. 2020-02-02 18:19:44 +01:00
Mike Pall
0c982ad74c Merge branch 'master' into v2.1 2020-01-26 15:44:40 +01:00
Mike Pall
bd907032e3 Documentation cleanup. 2020-01-26 15:37:33 +01:00
Mike Pall
6d267ff613 Merge branch 'master' into v2.1 2020-01-25 17:38:49 +01:00
Mike Pall
18c9cf7d37 Fix POSIX install with missing or incompatible ldconfig. 2020-01-25 17:37:12 +01:00
Mike Pall
694d69aed9 Merge branch 'master' into v2.1 2020-01-22 02:39:26 +01:00
Mike Pall
62903bacf4 Fix C file generation in jit.bcsave.
Thanks to codicodi.
2020-01-22 02:37:21 +01:00
Mike Pall
87b111f0fe Merge branch 'master' into v2.1 2020-01-20 23:34:21 +01:00
Mike Pall
38a5ed4b43 Bump copyright date. 2020-01-20 23:26:51 +01:00
Mike Pall
981ec8d2aa Remove support for de-facto dead archs. 2020-01-20 22:56:47 +01:00
Mike Pall
9749952b55 DynASM/x86: Fix BMI instructions.
Thanks to Peter Cawley.
2020-01-20 22:23:17 +01:00
Mike Pall
54484e257f Minor fixes. 2020-01-20 22:20:55 +01:00
Mike Pall
94d0b53004 MIPS: Add MIPS64 R6 port.
Contributed by Hua Zhang, YunQiang Su from Wave Computing,
and Radovan Birdic from RT-RK.
Sponsored by Wave Computing.
2020-01-20 22:15:45 +01:00
Mike Pall
dfa692b746 Fix string.char() recording with no arguments. 2020-01-14 11:08:42 +01:00
Mike Pall
e49863eda1 Followup fix for embedded bytecode loader. 2020-01-14 11:07:07 +01:00
Mike Pall
1357a25f81 Merge branch 'master' into v2.1 2020-01-13 14:50:30 +01:00
Mike Pall
8203399601 Fix embedded bytecode loader. 2020-01-13 14:28:43 +01:00