Commit Graph

2603 Commits

Author SHA1 Message Date
Ilya Leoshkevich
8adf4c452e
Merge 035f133798 into e3c70a7d81 2025-03-10 09:46:04 +08:00
Mike Pall
e3c70a7d81 macOS: Fix support for Apple hardened runtime.
Reported by Christian Clason. #1334
2025-03-10 00:05:08 +01:00
Mike Pall
7db2d1b12a Fix handling of nil value markers in template tables.
Thanks to Peter Cawley. #1348 #1155
2025-03-09 23:11:05 +01:00
Mike Pall
e0551670c9 Merge branch 'master' into v2.1 2025-03-09 23:09:02 +01:00
Mike Pall
85c3f2fb6f Avoid unpatching bytecode twice after a trace flush.
Reported by Sergey Kaplun. #1345
2025-03-09 23:04:23 +01:00
Mike Pall
eee16efa77 Fix state restore when recording __concat metamethod.
Reported by Sergey Kaplun. #1338 #1298
2025-03-09 21:28:17 +01:00
Mike Pall
4219efae43 Windows: Allow mixed builds with msvcbuild.bat.
Suggested by alex4814. #1341
2025-03-09 21:05:06 +01:00
Mike Pall
0254770582 macOS: Add suport for Apple hardened runtime.
Thanks to Peter Cawley. #1334
2025-03-09 20:45:22 +01:00
Mike Pall
f14556234c Merge branch 'master' into v2.1 2025-03-09 16:25:34 +01:00
Mike Pall
d508715ab6 Add compatibility string coercion for fp:seek() argument.
Reported by Magnus Wibeck. #1343
2025-03-09 16:21:29 +01:00
Mike Pall
423ac2144b Improve CLI signal handling on POSIX. 2025-03-09 15:50:01 +01:00
Mike Pall
54dc2fa5d7 FFI: Add pre-declared int128_t, uint128_t, __int128 types.
Note: Only declaration and copy (interpreted only) are implemented.
2025-03-09 15:37:35 +01:00
Mike Pall
5eb9509468 Change handling of nil value markers in template tables.
Reported by Bernhard M. Wiedemann. #1348 #1155
2025-03-09 14:44:57 +01:00
Mike Pall
a4f56a459a Merge branch 'master' into v2.1 2025-01-13 16:22:22 +01:00
Mike Pall
62e362afbb Fix recording of BC_VARG.
Reported by Bachir Bendrissou.
2025-01-13 16:19:57 +01:00
Mike Pall
9d777346bc Reject negative getfenv()/setfenv() levels to prevent compiler warning.
Thanks to Sergey Kaplun. #1329
2025-01-13 16:16:27 +01:00
Mike Pall
8358eb0cce Merge branch 'master' into v2.1 2025-01-13 16:15:19 +01:00
Mike Pall
e8236561d4 Bump copyright date. 2025-01-13 15:59:10 +01:00
Mike Pall
f73e649a95 Merge branch 'master' into v2.1 2024-12-16 14:32:07 +01:00
Mike Pall
e2e0b1dd2d Force fallback source name for stripped bytecode.
Reported by Lyrth. #1319
2024-12-16 14:30:10 +01:00
Mike Pall
cd8d0a437d Remove dependency on <limits.h>.
Reported by yupengda002. #1318
2024-12-16 14:27:58 +01:00
Mike Pall
19878ec05c Restore state when recording __concat metamethod throws OOM.
Reported by Sergey Kaplun. #1298 #1234
2024-11-28 18:07:58 +01:00
Mike Pall
35a4dd6f79 MIPS64: Fix pcall() error case.
Thanks to Sergey Kaplun. #1308
2024-11-28 16:33:18 +01:00
Mike Pall
4788e6f92a Merge branch 'master' into v2.1 2024-11-28 16:28:51 +01:00
Mike Pall
811e448daa Fix detection of inconsistent renames due to sunk values.
Thanks to Sergey Kaplun. #1295 #584
2024-11-28 16:26:10 +01:00
Mike Pall
fe71d0fb54 Windows: Allow amalgamated static builds with msvcbuild.bat.
Reported by Naman Dixit. #1289
2024-11-14 17:21:00 +01:00
Mike Pall
fca66335d1 Always close profiler output file.
Reported by Guilherme Batalheiro. #1304
2024-11-14 17:13:58 +01:00
Ilya Leoshkevich
035f133798 Add s390x architecture support
This is a cumulative patch that adds the s390x LuaJIT implementation
by @ketank-new, @mundaym and @niravthakkar and others. It contains all
their contributions squashed together, plus minor stylistic cleanups.
It passes all the tests from LuaJIT-test-cleanup, except for
contents.lua, which fails on x86_64 as well.

Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
2024-11-14 12:26:21 +01:00
Ilya Leoshkevich
dee73f516f Add s390x architecture support to DynASM
s390x (IBM Z) is an architecture of server computers produced by IBM.
It is supported by a number of open source code generators, such as
GCC, LLVM, OpenJDK, eBPF, QEMU, Valgrind and Cranelift. One of the
missing pieces in the ecosystem support is LuaJIT.

The s390x support for LuaJIT was initially developed by @ketank-new,
@mundaym and @niravthakkar. It found its way into moonjit and luajit2
forks, as well as Fedora distro (as a patch). There were also smaller
contributions by @preetikhorjuvenkar, @Bisht13, @velemas,
@AlekseiNikiforovIBM, and @iii-i.

This is a cumulative patch of the DynASM changes from this work. It
contains all the contributions squashed together, plus minor stylistic
cleanups.

Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
2024-11-14 12:25:58 +01:00
Mike Pall
69bbf3c1b0 Fix bit op coercion for shifts in DUALNUM builds.
Reported by Junlong Li. Followup to #1273
2024-11-13 09:18:32 +01:00
Mike Pall
97813fb924 macOS: Remove obsolete -single_module flag.
Thanks to dundargoc. #1284
2024-10-02 13:59:42 +02:00
Mike Pall
b2915e9ab5 macOS: Workaround for buggy XCode 15.0 - 15.2 linker.
Thanks to Carlo Cabrera. #1283
2024-10-02 12:12:56 +02:00
Mike Pall
2240d84464 macOS: Fix macOS 15 / Clang 16 build.
Note: The -Wl,-no_deduplicate workaround is NOT needed anymore.
Thanks to fxcoudert, corsix, clason, baconpaul, mvf. #1275 #1266
2024-10-02 02:06:25 +02:00
Mike Pall
f5fd22203e Fix bit op coercion in DUALNUM builds.
Thanks to Sergey Kaplun. #1273
2024-09-29 16:46:29 +02:00
Mike Pall
0ae532c9aa Merge branch 'master' into v2.1 2024-09-29 16:11:15 +02:00
Mike Pall
5141cbc20c Fix compiliation of getmetatable() for UDTYPE_IO_FILE.
Reported by Sergey Bronnikov. #1279
2024-09-29 16:03:37 +02:00
Mike Pall
c63a160706 Remove ancient RtlUnwindEx workaround for MinGW64.
Thanks to Kacper Michajłow. #1272
2024-09-29 15:33:32 +02:00
Mike Pall
87ae18af97 Drop unused function wrapper.
Follow-up to #1247.
2024-09-04 14:32:08 +02:00
Mike Pall
f725e44cda Merge branch 'master' into v2.1 2024-08-24 17:14:51 +02:00
Mike Pall
e45fd4cb71 Fix limit check in narrow_conv_backprop().
Thanks to Sergey Kaplun. #1262
2024-08-24 17:11:45 +02:00
Mike Pall
9bb6b35f7f Always use IRT_NIL for IR_TBAR.
Thanks to Peter Cawley. #1258
2024-08-24 17:03:17 +02:00
Mike Pall
c68711cc87 ARM64: Use ldr literal to load FP constants.
Thanks to Peter Cawley. #1255
2024-08-21 11:31:29 +02:00
Mike Pall
304da39cc5 FFI: Add missing coercion when recording 64-bit bit.*().
Thanks to Peter Cawley. #1252
2024-08-20 19:13:59 +02:00
Mike Pall
cdc2db3aea ARM64: Make tobit conversions match JIT backend behavior.
Thanks to Peter Cawley. #1253
2024-08-20 19:01:51 +02:00
Mike Pall
f4fa5646a8 Merge branch 'master' into v2.1 2024-08-20 19:01:38 +02:00
Mike Pall
32a683d226 ARM: Make hard-float tobit conversions match JIT backend behavior.
Reported by Peter Cawley. #1253
2024-08-20 19:00:47 +02:00
Mike Pall
fb22d0f80f FFI: Drop finalizer table rehash after GC cycle.
Reported by Sergey Kaplun. #1247
2024-08-19 20:00:21 +02:00
Mike Pall
fb5e1c9f0d Merge branch 'master' into v2.1 2024-08-19 17:33:23 +02:00
Mike Pall
ab39082fdd Fix another potential file descriptor leak in luaL_loadfile*().
Reported by Peter Cawley. #1249
2024-08-19 17:31:15 +02:00
Mike Pall
fddc9650d8 Merge branch 'master' into v2.1 2024-08-19 16:22:55 +02:00