diff --git a/libs/LuaJIT/android/arm64-v8a/jit/bc.lua b/libs/LuaJIT/android/arm64-v8a/jit/bc.lua index 71ba52be..8014d602 100644 --- a/libs/LuaJIT/android/arm64-v8a/jit/bc.lua +++ b/libs/LuaJIT/android/arm64-v8a/jit/bc.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT bytecode listing module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- diff --git a/libs/LuaJIT/android/arm64-v8a/jit/bcsave.lua b/libs/LuaJIT/android/arm64-v8a/jit/bcsave.lua index a30a34b6..7d19cb06 100644 --- a/libs/LuaJIT/android/arm64-v8a/jit/bcsave.lua +++ b/libs/LuaJIT/android/arm64-v8a/jit/bcsave.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT module to save/list bytecode. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- @@ -165,6 +165,8 @@ extern "C" #endif #ifdef _WIN32 __declspec(dllexport) +#elif (defined(__ELF__) || defined(__MACH__) || defined(__psp2__)) && !((defined(__sun__) && defined(__svr4__)) || defined(__CELLOS_LV2__)) +__attribute__((visibility("default"))) #endif const unsigned char %s%s[] = { ]], LJBC_PREFIX, ctx.modname)) @@ -465,9 +467,11 @@ typedef struct { mach_segment_command_64 seg; mach_section_64 sec; mach_symtab_command sym; +} mach_obj_64; +typedef struct { mach_nlist_64 sym_entry; uint8_t space[4096]; -} mach_obj_64; +} mach_obj_64_tail; ]] local symname = '_'..LJBC_PREFIX..ctx.modname local cputype, cpusubtype = 0x01000007, 3 @@ -479,7 +483,10 @@ typedef struct { -- Create Mach-O object and fill in header. local o = ffi.new("mach_obj_64") - local mach_size = aligned(ffi.offsetof(o, "space")+#symname+2, 8) + local t = ffi.new("mach_obj_64_tail") + local ofs_bc = ffi.sizeof(o) + local sz_bc = aligned(#s, 8) + local ofs_sym = ofs_bc + sz_bc -- Fill in sections and symbols. o.hdr.magic = 0xfeedfacf @@ -491,7 +498,7 @@ typedef struct { o.seg.cmd = 0x19 o.seg.cmdsize = ffi.sizeof(o.seg)+ffi.sizeof(o.sec) o.seg.vmsize = #s - o.seg.fileoff = mach_size + o.seg.fileoff = ofs_bc o.seg.filesize = #s o.seg.maxprot = 1 o.seg.initprot = 1 @@ -499,22 +506,23 @@ typedef struct { ffi.copy(o.sec.sectname, "__data") ffi.copy(o.sec.segname, "__DATA") o.sec.size = #s - o.sec.offset = mach_size + o.sec.offset = ofs_bc o.sym.cmd = 2 o.sym.cmdsize = ffi.sizeof(o.sym) - o.sym.symoff = ffi.offsetof(o, "sym_entry") + o.sym.symoff = ofs_sym o.sym.nsyms = 1 - o.sym.stroff = ffi.offsetof(o, "sym_entry")+ffi.sizeof(o.sym_entry) + o.sym.stroff = ofs_sym + ffi.offsetof(t, "space") o.sym.strsize = aligned(#symname+2, 8) - o.sym_entry.type = 0xf - o.sym_entry.sect = 1 - o.sym_entry.strx = 1 - ffi.copy(o.space+1, symname) + t.sym_entry.type = 0xf + t.sym_entry.sect = 1 + t.sym_entry.strx = 1 + ffi.copy(t.space+1, symname) -- Write Mach-O object file. local fp = savefile(output, "wb") - fp:write(ffi.string(o, mach_size)) - bcsave_tail(fp, output, s) + fp:write(ffi.string(o, ofs_bc)) + fp:write(s, ("\0"):rep(sz_bc - #s)) + bcsave_tail(fp, output, ffi.string(t, ffi.offsetof(t, "space") + o.sym.strsize)) end local function bcsave_obj(ctx, output, s) diff --git a/libs/LuaJIT/android/arm64-v8a/jit/dis_arm.lua b/libs/LuaJIT/android/arm64-v8a/jit/dis_arm.lua index 494b9502..0adc799d 100644 --- a/libs/LuaJIT/android/arm64-v8a/jit/dis_arm.lua +++ b/libs/LuaJIT/android/arm64-v8a/jit/dis_arm.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT ARM disassembler module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This is a helper module used by the LuaJIT machine code dumper module. diff --git a/libs/LuaJIT/android/arm64-v8a/jit/dis_arm64.lua b/libs/LuaJIT/android/arm64-v8a/jit/dis_arm64.lua index facc6e4a..896fab79 100644 --- a/libs/LuaJIT/android/arm64-v8a/jit/dis_arm64.lua +++ b/libs/LuaJIT/android/arm64-v8a/jit/dis_arm64.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT ARM64 disassembler module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h -- -- Contributed by Djordje Kovacevic and Stefan Pejic from RT-RK.com. @@ -485,15 +485,15 @@ local map_ls = { -- Loads and stores. shift = 30, mask = 3, [0] = { shift = 22, mask = 3, - [0] = "strbDwzU", "ldrbDwzU" + [0] = "strbDwzU", "ldrbDwzU", "ldrsbDwzU", "ldrsbDxzU" }, { shift = 22, mask = 3, - [0] = "strhDwzU", "ldrhDwzU" + [0] = "strhDwzU", "ldrhDwzU", "ldrshDwzU", "ldrshDxzU" }, { shift = 22, mask = 3, - [0] = "strDwzU", "ldrDwzU" + [0] = "strDwzU", "ldrDwzU", "ldrswDxzU" }, { shift = 22, mask = 3, diff --git a/libs/LuaJIT/android/arm64-v8a/jit/dis_arm64be.lua b/libs/LuaJIT/android/arm64-v8a/jit/dis_arm64be.lua index 47f191dc..e62a28cb 100644 --- a/libs/LuaJIT/android/arm64-v8a/jit/dis_arm64be.lua +++ b/libs/LuaJIT/android/arm64-v8a/jit/dis_arm64be.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT ARM64BE disassembler wrapper module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- ARM64 instructions are always little-endian. So just forward to the diff --git a/libs/LuaJIT/android/arm64-v8a/jit/dis_mips.lua b/libs/LuaJIT/android/arm64-v8a/jit/dis_mips.lua index fe1928e0..fece8937 100644 --- a/libs/LuaJIT/android/arm64-v8a/jit/dis_mips.lua +++ b/libs/LuaJIT/android/arm64-v8a/jit/dis_mips.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPS disassembler module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT/X license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This is a helper module used by the LuaJIT machine code dumper module. diff --git a/libs/LuaJIT/android/arm64-v8a/jit/dis_mips64.lua b/libs/LuaJIT/android/arm64-v8a/jit/dis_mips64.lua index 447ab80e..d7d160a0 100644 --- a/libs/LuaJIT/android/arm64-v8a/jit/dis_mips64.lua +++ b/libs/LuaJIT/android/arm64-v8a/jit/dis_mips64.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPS64 disassembler wrapper module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the big-endian functions from the diff --git a/libs/LuaJIT/android/arm64-v8a/jit/dis_mips64el.lua b/libs/LuaJIT/android/arm64-v8a/jit/dis_mips64el.lua index d4ead029..06767c01 100644 --- a/libs/LuaJIT/android/arm64-v8a/jit/dis_mips64el.lua +++ b/libs/LuaJIT/android/arm64-v8a/jit/dis_mips64el.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPS64EL disassembler wrapper module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the little-endian functions from the diff --git a/libs/LuaJIT/android/arm64-v8a/jit/dis_mips64r6.lua b/libs/LuaJIT/android/arm64-v8a/jit/dis_mips64r6.lua index e19d3983..ef4a125a 100644 --- a/libs/LuaJIT/android/arm64-v8a/jit/dis_mips64r6.lua +++ b/libs/LuaJIT/android/arm64-v8a/jit/dis_mips64r6.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPS64R6 disassembler wrapper module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the r6 big-endian functions from the diff --git a/libs/LuaJIT/android/arm64-v8a/jit/dis_mips64r6el.lua b/libs/LuaJIT/android/arm64-v8a/jit/dis_mips64r6el.lua index c0842fec..4dc6a54a 100644 --- a/libs/LuaJIT/android/arm64-v8a/jit/dis_mips64r6el.lua +++ b/libs/LuaJIT/android/arm64-v8a/jit/dis_mips64r6el.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPS64R6EL disassembler wrapper module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the r6 little-endian functions from the diff --git a/libs/LuaJIT/android/arm64-v8a/jit/dis_mipsel.lua b/libs/LuaJIT/android/arm64-v8a/jit/dis_mipsel.lua index 870d1d0f..1da538a6 100644 --- a/libs/LuaJIT/android/arm64-v8a/jit/dis_mipsel.lua +++ b/libs/LuaJIT/android/arm64-v8a/jit/dis_mipsel.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPSEL disassembler wrapper module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the little-endian functions from the diff --git a/libs/LuaJIT/android/arm64-v8a/jit/dis_ppc.lua b/libs/LuaJIT/android/arm64-v8a/jit/dis_ppc.lua index 830d76b6..d8f4cfb7 100644 --- a/libs/LuaJIT/android/arm64-v8a/jit/dis_ppc.lua +++ b/libs/LuaJIT/android/arm64-v8a/jit/dis_ppc.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT PPC disassembler module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT/X license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This is a helper module used by the LuaJIT machine code dumper module. diff --git a/libs/LuaJIT/android/arm64-v8a/jit/dis_x64.lua b/libs/LuaJIT/android/arm64-v8a/jit/dis_x64.lua index dc43cdb3..42ae48bf 100644 --- a/libs/LuaJIT/android/arm64-v8a/jit/dis_x64.lua +++ b/libs/LuaJIT/android/arm64-v8a/jit/dis_x64.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT x64 disassembler wrapper module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the 64 bit functions from the combined diff --git a/libs/LuaJIT/android/arm64-v8a/jit/dis_x86.lua b/libs/LuaJIT/android/arm64-v8a/jit/dis_x86.lua index 6b04ee84..80bf721b 100644 --- a/libs/LuaJIT/android/arm64-v8a/jit/dis_x86.lua +++ b/libs/LuaJIT/android/arm64-v8a/jit/dis_x86.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT x86/x64 disassembler module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This is a helper module used by the LuaJIT machine code dumper module. diff --git a/libs/LuaJIT/android/arm64-v8a/jit/dump.lua b/libs/LuaJIT/android/arm64-v8a/jit/dump.lua index c855fa09..6a700bbe 100644 --- a/libs/LuaJIT/android/arm64-v8a/jit/dump.lua +++ b/libs/LuaJIT/android/arm64-v8a/jit/dump.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT compiler dump module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- diff --git a/libs/LuaJIT/android/arm64-v8a/jit/p.lua b/libs/LuaJIT/android/arm64-v8a/jit/p.lua index 3002c19f..9d938ce5 100644 --- a/libs/LuaJIT/android/arm64-v8a/jit/p.lua +++ b/libs/LuaJIT/android/arm64-v8a/jit/p.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT profiler. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- diff --git a/libs/LuaJIT/android/arm64-v8a/jit/v.lua b/libs/LuaJIT/android/arm64-v8a/jit/v.lua index 0d4ec277..69443d31 100644 --- a/libs/LuaJIT/android/arm64-v8a/jit/v.lua +++ b/libs/LuaJIT/android/arm64-v8a/jit/v.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- Verbose mode of the LuaJIT compiler. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- diff --git a/libs/LuaJIT/android/arm64-v8a/jit/vmdef.lua b/libs/LuaJIT/android/arm64-v8a/jit/vmdef.lua index fa2e5c27..bbc3dcc8 100644 --- a/libs/LuaJIT/android/arm64-v8a/jit/vmdef.lua +++ b/libs/LuaJIT/android/arm64-v8a/jit/vmdef.lua @@ -1,10 +1,10 @@ -- This is a generated file. DO NOT EDIT! -assert(require("jit").version == "LuaJIT 2.1.1762386122", "LuaJIT core/library version mismatch") +assert(require("jit").version == "LuaJIT 2.1.1784580905", "LuaJIT core/library version mismatch") return { -bcnames = "ISLT ISGE ISLE ISGT ISEQV ISNEV ISEQS ISNES ISEQN ISNEN ISEQP ISNEP ISTC ISFC IST ISF ISTYPEISNUM MOV NOT UNM LEN ADDVN SUBVN MULVN DIVVN MODVN ADDNV SUBNV MULNV DIVNV MODNV ADDVV SUBVV MULVV DIVVV MODVV POW CAT KSTR KCDATAKSHORTKNUM KPRI KNIL UGET USETV USETS USETN USETP UCLO FNEW TNEW TDUP GGET GSET TGETV TGETS TGETB TGETR TSETV TSETS TSETB TSETM TSETR CALLM CALL CALLMTCALLT ITERC ITERN VARG ISNEXTRETM RET RET0 RET1 FORI JFORI FORL IFORL JFORL ITERL IITERLJITERLLOOP ILOOP JLOOP JMP FUNCF IFUNCFJFUNCFFUNCV IFUNCVJFUNCVFUNCC FUNCCW", +bcnames = "ISLT ISGE ISLE ISGT ISEQV ISNEV ISEQS ISNES ISEQN ISNEN ISEQP ISNEP ISTC ISFC IST ISF ISTYPEISNUM MOV NOT UNM LEN ADDVN SUBVN MULVN DIVVN MODVN ADDNV SUBNV MULNV DIVNV MODNV ADDVV SUBVV MULVV DIVVV MODVV POW CAT KSTR KCDATAKSHORTKNUM KPRI KNIL UGET USETV USETS USETN USETP UCLO FNEW TNEW TDUP GGET GSET TGETV TGETS TGETB TGETR TSETV TSETS TSETB TSETM TSETR CALLM CALL CALLMTCALLT ITERC ITERN VARG ISNEXTRETM RET RET0 RET1 FORI JFORI FORL IFORL JFORL ITERL IITERLJITERLLOOP ILOOP JLOOP JMP BNOT BAND BOR BXOR BSHL BSHR BSAR FUNCF IFUNCFJFUNCFFUNCV IFUNCVJFUNCVFUNCC FUNCCW", irnames = "LT GE LE GT ULT UGE ULE UGT EQ NE ABC RETF NOP BASE PVAL GCSTEPHIOP LOOP USE PHI RENAMEPROF KPRI KINT KGC KPTR KKPTR KNULL KNUM KINT64KSLOT BNOT BSWAP BAND BOR BXOR BSHL BSHR BSAR BROL BROR ADD SUB MUL DIV MOD POW NEG ABS LDEXP MIN MAX FPMATHADDOV SUBOV MULOV AREF HREFK HREF NEWREFUREFO UREFC FREF TMPREFSTRREFLREF ALOAD HLOAD ULOAD FLOAD XLOAD SLOAD VLOAD ALEN ASTOREHSTOREUSTOREFSTOREXSTORESNEW XSNEW TNEW TDUP CNEW CNEWI BUFHDRBUFPUTBUFSTRTBAR OBAR XBAR CONV TOBIT TOSTR STRTO CALLN CALLA CALLL CALLS CALLXSCARG ", @@ -94,20 +94,15 @@ ircall = { "lj_vm_tointg", "softfp_ui2d", "softfp_f2d", -"softfp_d2ui", "softfp_d2f", "softfp_i2f", "softfp_ui2f", "softfp_f2i", -"softfp_f2ui", "fp64_l2d", "fp64_ul2d", "fp64_l2f", "fp64_ul2f", -"fp64_d2l", -"fp64_d2ul", -"fp64_f2l", -"fp64_f2ul", +"lj_vm_num2u64", "lj_carith_divi64", "lj_carith_divu64", "lj_carith_modi64", diff --git a/libs/LuaJIT/android/arm64-v8a/jit/zone.lua b/libs/LuaJIT/android/arm64-v8a/jit/zone.lua index 7f210730..0ed6935a 100644 --- a/libs/LuaJIT/android/arm64-v8a/jit/zone.lua +++ b/libs/LuaJIT/android/arm64-v8a/jit/zone.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT profiler zones. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- diff --git a/libs/LuaJIT/android/arm64-v8a/libluajit.a b/libs/LuaJIT/android/arm64-v8a/libluajit.a index 6fdee89b..ca75d26f 100644 Binary files a/libs/LuaJIT/android/arm64-v8a/libluajit.a and b/libs/LuaJIT/android/arm64-v8a/libluajit.a differ diff --git a/libs/LuaJIT/android/arm64-v8a/libluajit.so b/libs/LuaJIT/android/arm64-v8a/libluajit.so index c1364e94..69cabb53 100644 Binary files a/libs/LuaJIT/android/arm64-v8a/libluajit.so and b/libs/LuaJIT/android/arm64-v8a/libluajit.so differ diff --git a/libs/LuaJIT/android/arm64-v8a/luajit.h b/libs/LuaJIT/android/arm64-v8a/luajit.h index 236dfadc..c75bce29 100644 --- a/libs/LuaJIT/android/arm64-v8a/luajit.h +++ b/libs/LuaJIT/android/arm64-v8a/luajit.h @@ -1,7 +1,7 @@ /* ** LuaJIT -- a Just-In-Time Compiler for Lua. https://luajit.org/ ** -** Copyright (C) 2005-2025 Mike Pall. All rights reserved. +** Copyright (C) 2005-2026 Mike Pall. All rights reserved. ** ** Permission is hereby granted, free of charge, to any person obtaining ** a copy of this software and associated documentation files (the @@ -30,10 +30,10 @@ #include "lua.h" -#define LUAJIT_VERSION "LuaJIT 2.1.1762386122" +#define LUAJIT_VERSION "LuaJIT 2.1.1784580905" #define LUAJIT_VERSION_NUM 20199 /* Deprecated. */ -#define LUAJIT_VERSION_SYM luaJIT_version_2_1_1762386122 -#define LUAJIT_COPYRIGHT "Copyright (C) 2005-2025 Mike Pall" +#define LUAJIT_VERSION_SYM luaJIT_version_2_1_1784580905 +#define LUAJIT_COPYRIGHT "Copyright (C) 2005-2026 Mike Pall" #define LUAJIT_URL "https://luajit.org/" /* Modes for luaJIT_setmode. */ diff --git a/libs/LuaJIT/android/armeabi-v7a/jit/bc.lua b/libs/LuaJIT/android/armeabi-v7a/jit/bc.lua index 71ba52be..8014d602 100644 --- a/libs/LuaJIT/android/armeabi-v7a/jit/bc.lua +++ b/libs/LuaJIT/android/armeabi-v7a/jit/bc.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT bytecode listing module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- diff --git a/libs/LuaJIT/android/armeabi-v7a/jit/bcsave.lua b/libs/LuaJIT/android/armeabi-v7a/jit/bcsave.lua index a30a34b6..7d19cb06 100644 --- a/libs/LuaJIT/android/armeabi-v7a/jit/bcsave.lua +++ b/libs/LuaJIT/android/armeabi-v7a/jit/bcsave.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT module to save/list bytecode. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- @@ -165,6 +165,8 @@ extern "C" #endif #ifdef _WIN32 __declspec(dllexport) +#elif (defined(__ELF__) || defined(__MACH__) || defined(__psp2__)) && !((defined(__sun__) && defined(__svr4__)) || defined(__CELLOS_LV2__)) +__attribute__((visibility("default"))) #endif const unsigned char %s%s[] = { ]], LJBC_PREFIX, ctx.modname)) @@ -465,9 +467,11 @@ typedef struct { mach_segment_command_64 seg; mach_section_64 sec; mach_symtab_command sym; +} mach_obj_64; +typedef struct { mach_nlist_64 sym_entry; uint8_t space[4096]; -} mach_obj_64; +} mach_obj_64_tail; ]] local symname = '_'..LJBC_PREFIX..ctx.modname local cputype, cpusubtype = 0x01000007, 3 @@ -479,7 +483,10 @@ typedef struct { -- Create Mach-O object and fill in header. local o = ffi.new("mach_obj_64") - local mach_size = aligned(ffi.offsetof(o, "space")+#symname+2, 8) + local t = ffi.new("mach_obj_64_tail") + local ofs_bc = ffi.sizeof(o) + local sz_bc = aligned(#s, 8) + local ofs_sym = ofs_bc + sz_bc -- Fill in sections and symbols. o.hdr.magic = 0xfeedfacf @@ -491,7 +498,7 @@ typedef struct { o.seg.cmd = 0x19 o.seg.cmdsize = ffi.sizeof(o.seg)+ffi.sizeof(o.sec) o.seg.vmsize = #s - o.seg.fileoff = mach_size + o.seg.fileoff = ofs_bc o.seg.filesize = #s o.seg.maxprot = 1 o.seg.initprot = 1 @@ -499,22 +506,23 @@ typedef struct { ffi.copy(o.sec.sectname, "__data") ffi.copy(o.sec.segname, "__DATA") o.sec.size = #s - o.sec.offset = mach_size + o.sec.offset = ofs_bc o.sym.cmd = 2 o.sym.cmdsize = ffi.sizeof(o.sym) - o.sym.symoff = ffi.offsetof(o, "sym_entry") + o.sym.symoff = ofs_sym o.sym.nsyms = 1 - o.sym.stroff = ffi.offsetof(o, "sym_entry")+ffi.sizeof(o.sym_entry) + o.sym.stroff = ofs_sym + ffi.offsetof(t, "space") o.sym.strsize = aligned(#symname+2, 8) - o.sym_entry.type = 0xf - o.sym_entry.sect = 1 - o.sym_entry.strx = 1 - ffi.copy(o.space+1, symname) + t.sym_entry.type = 0xf + t.sym_entry.sect = 1 + t.sym_entry.strx = 1 + ffi.copy(t.space+1, symname) -- Write Mach-O object file. local fp = savefile(output, "wb") - fp:write(ffi.string(o, mach_size)) - bcsave_tail(fp, output, s) + fp:write(ffi.string(o, ofs_bc)) + fp:write(s, ("\0"):rep(sz_bc - #s)) + bcsave_tail(fp, output, ffi.string(t, ffi.offsetof(t, "space") + o.sym.strsize)) end local function bcsave_obj(ctx, output, s) diff --git a/libs/LuaJIT/android/armeabi-v7a/jit/dis_arm.lua b/libs/LuaJIT/android/armeabi-v7a/jit/dis_arm.lua index 494b9502..0adc799d 100644 --- a/libs/LuaJIT/android/armeabi-v7a/jit/dis_arm.lua +++ b/libs/LuaJIT/android/armeabi-v7a/jit/dis_arm.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT ARM disassembler module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This is a helper module used by the LuaJIT machine code dumper module. diff --git a/libs/LuaJIT/android/armeabi-v7a/jit/dis_arm64.lua b/libs/LuaJIT/android/armeabi-v7a/jit/dis_arm64.lua index facc6e4a..896fab79 100644 --- a/libs/LuaJIT/android/armeabi-v7a/jit/dis_arm64.lua +++ b/libs/LuaJIT/android/armeabi-v7a/jit/dis_arm64.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT ARM64 disassembler module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h -- -- Contributed by Djordje Kovacevic and Stefan Pejic from RT-RK.com. @@ -485,15 +485,15 @@ local map_ls = { -- Loads and stores. shift = 30, mask = 3, [0] = { shift = 22, mask = 3, - [0] = "strbDwzU", "ldrbDwzU" + [0] = "strbDwzU", "ldrbDwzU", "ldrsbDwzU", "ldrsbDxzU" }, { shift = 22, mask = 3, - [0] = "strhDwzU", "ldrhDwzU" + [0] = "strhDwzU", "ldrhDwzU", "ldrshDwzU", "ldrshDxzU" }, { shift = 22, mask = 3, - [0] = "strDwzU", "ldrDwzU" + [0] = "strDwzU", "ldrDwzU", "ldrswDxzU" }, { shift = 22, mask = 3, diff --git a/libs/LuaJIT/android/armeabi-v7a/jit/dis_arm64be.lua b/libs/LuaJIT/android/armeabi-v7a/jit/dis_arm64be.lua index 47f191dc..e62a28cb 100644 --- a/libs/LuaJIT/android/armeabi-v7a/jit/dis_arm64be.lua +++ b/libs/LuaJIT/android/armeabi-v7a/jit/dis_arm64be.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT ARM64BE disassembler wrapper module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- ARM64 instructions are always little-endian. So just forward to the diff --git a/libs/LuaJIT/android/armeabi-v7a/jit/dis_mips.lua b/libs/LuaJIT/android/armeabi-v7a/jit/dis_mips.lua index fe1928e0..fece8937 100644 --- a/libs/LuaJIT/android/armeabi-v7a/jit/dis_mips.lua +++ b/libs/LuaJIT/android/armeabi-v7a/jit/dis_mips.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPS disassembler module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT/X license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This is a helper module used by the LuaJIT machine code dumper module. diff --git a/libs/LuaJIT/android/armeabi-v7a/jit/dis_mips64.lua b/libs/LuaJIT/android/armeabi-v7a/jit/dis_mips64.lua index 447ab80e..d7d160a0 100644 --- a/libs/LuaJIT/android/armeabi-v7a/jit/dis_mips64.lua +++ b/libs/LuaJIT/android/armeabi-v7a/jit/dis_mips64.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPS64 disassembler wrapper module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the big-endian functions from the diff --git a/libs/LuaJIT/android/armeabi-v7a/jit/dis_mips64el.lua b/libs/LuaJIT/android/armeabi-v7a/jit/dis_mips64el.lua index d4ead029..06767c01 100644 --- a/libs/LuaJIT/android/armeabi-v7a/jit/dis_mips64el.lua +++ b/libs/LuaJIT/android/armeabi-v7a/jit/dis_mips64el.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPS64EL disassembler wrapper module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the little-endian functions from the diff --git a/libs/LuaJIT/android/armeabi-v7a/jit/dis_mips64r6.lua b/libs/LuaJIT/android/armeabi-v7a/jit/dis_mips64r6.lua index e19d3983..ef4a125a 100644 --- a/libs/LuaJIT/android/armeabi-v7a/jit/dis_mips64r6.lua +++ b/libs/LuaJIT/android/armeabi-v7a/jit/dis_mips64r6.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPS64R6 disassembler wrapper module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the r6 big-endian functions from the diff --git a/libs/LuaJIT/android/armeabi-v7a/jit/dis_mips64r6el.lua b/libs/LuaJIT/android/armeabi-v7a/jit/dis_mips64r6el.lua index c0842fec..4dc6a54a 100644 --- a/libs/LuaJIT/android/armeabi-v7a/jit/dis_mips64r6el.lua +++ b/libs/LuaJIT/android/armeabi-v7a/jit/dis_mips64r6el.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPS64R6EL disassembler wrapper module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the r6 little-endian functions from the diff --git a/libs/LuaJIT/android/armeabi-v7a/jit/dis_mipsel.lua b/libs/LuaJIT/android/armeabi-v7a/jit/dis_mipsel.lua index 870d1d0f..1da538a6 100644 --- a/libs/LuaJIT/android/armeabi-v7a/jit/dis_mipsel.lua +++ b/libs/LuaJIT/android/armeabi-v7a/jit/dis_mipsel.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPSEL disassembler wrapper module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the little-endian functions from the diff --git a/libs/LuaJIT/android/armeabi-v7a/jit/dis_ppc.lua b/libs/LuaJIT/android/armeabi-v7a/jit/dis_ppc.lua index 830d76b6..d8f4cfb7 100644 --- a/libs/LuaJIT/android/armeabi-v7a/jit/dis_ppc.lua +++ b/libs/LuaJIT/android/armeabi-v7a/jit/dis_ppc.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT PPC disassembler module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT/X license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This is a helper module used by the LuaJIT machine code dumper module. diff --git a/libs/LuaJIT/android/armeabi-v7a/jit/dis_x64.lua b/libs/LuaJIT/android/armeabi-v7a/jit/dis_x64.lua index dc43cdb3..42ae48bf 100644 --- a/libs/LuaJIT/android/armeabi-v7a/jit/dis_x64.lua +++ b/libs/LuaJIT/android/armeabi-v7a/jit/dis_x64.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT x64 disassembler wrapper module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the 64 bit functions from the combined diff --git a/libs/LuaJIT/android/armeabi-v7a/jit/dis_x86.lua b/libs/LuaJIT/android/armeabi-v7a/jit/dis_x86.lua index 6b04ee84..80bf721b 100644 --- a/libs/LuaJIT/android/armeabi-v7a/jit/dis_x86.lua +++ b/libs/LuaJIT/android/armeabi-v7a/jit/dis_x86.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT x86/x64 disassembler module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This is a helper module used by the LuaJIT machine code dumper module. diff --git a/libs/LuaJIT/android/armeabi-v7a/jit/dump.lua b/libs/LuaJIT/android/armeabi-v7a/jit/dump.lua index c855fa09..6a700bbe 100644 --- a/libs/LuaJIT/android/armeabi-v7a/jit/dump.lua +++ b/libs/LuaJIT/android/armeabi-v7a/jit/dump.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT compiler dump module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- diff --git a/libs/LuaJIT/android/armeabi-v7a/jit/p.lua b/libs/LuaJIT/android/armeabi-v7a/jit/p.lua index 3002c19f..9d938ce5 100644 --- a/libs/LuaJIT/android/armeabi-v7a/jit/p.lua +++ b/libs/LuaJIT/android/armeabi-v7a/jit/p.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT profiler. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- diff --git a/libs/LuaJIT/android/armeabi-v7a/jit/v.lua b/libs/LuaJIT/android/armeabi-v7a/jit/v.lua index 0d4ec277..69443d31 100644 --- a/libs/LuaJIT/android/armeabi-v7a/jit/v.lua +++ b/libs/LuaJIT/android/armeabi-v7a/jit/v.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- Verbose mode of the LuaJIT compiler. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- diff --git a/libs/LuaJIT/android/armeabi-v7a/jit/vmdef.lua b/libs/LuaJIT/android/armeabi-v7a/jit/vmdef.lua index fa2e5c27..bbc3dcc8 100644 --- a/libs/LuaJIT/android/armeabi-v7a/jit/vmdef.lua +++ b/libs/LuaJIT/android/armeabi-v7a/jit/vmdef.lua @@ -1,10 +1,10 @@ -- This is a generated file. DO NOT EDIT! -assert(require("jit").version == "LuaJIT 2.1.1762386122", "LuaJIT core/library version mismatch") +assert(require("jit").version == "LuaJIT 2.1.1784580905", "LuaJIT core/library version mismatch") return { -bcnames = "ISLT ISGE ISLE ISGT ISEQV ISNEV ISEQS ISNES ISEQN ISNEN ISEQP ISNEP ISTC ISFC IST ISF ISTYPEISNUM MOV NOT UNM LEN ADDVN SUBVN MULVN DIVVN MODVN ADDNV SUBNV MULNV DIVNV MODNV ADDVV SUBVV MULVV DIVVV MODVV POW CAT KSTR KCDATAKSHORTKNUM KPRI KNIL UGET USETV USETS USETN USETP UCLO FNEW TNEW TDUP GGET GSET TGETV TGETS TGETB TGETR TSETV TSETS TSETB TSETM TSETR CALLM CALL CALLMTCALLT ITERC ITERN VARG ISNEXTRETM RET RET0 RET1 FORI JFORI FORL IFORL JFORL ITERL IITERLJITERLLOOP ILOOP JLOOP JMP FUNCF IFUNCFJFUNCFFUNCV IFUNCVJFUNCVFUNCC FUNCCW", +bcnames = "ISLT ISGE ISLE ISGT ISEQV ISNEV ISEQS ISNES ISEQN ISNEN ISEQP ISNEP ISTC ISFC IST ISF ISTYPEISNUM MOV NOT UNM LEN ADDVN SUBVN MULVN DIVVN MODVN ADDNV SUBNV MULNV DIVNV MODNV ADDVV SUBVV MULVV DIVVV MODVV POW CAT KSTR KCDATAKSHORTKNUM KPRI KNIL UGET USETV USETS USETN USETP UCLO FNEW TNEW TDUP GGET GSET TGETV TGETS TGETB TGETR TSETV TSETS TSETB TSETM TSETR CALLM CALL CALLMTCALLT ITERC ITERN VARG ISNEXTRETM RET RET0 RET1 FORI JFORI FORL IFORL JFORL ITERL IITERLJITERLLOOP ILOOP JLOOP JMP BNOT BAND BOR BXOR BSHL BSHR BSAR FUNCF IFUNCFJFUNCFFUNCV IFUNCVJFUNCVFUNCC FUNCCW", irnames = "LT GE LE GT ULT UGE ULE UGT EQ NE ABC RETF NOP BASE PVAL GCSTEPHIOP LOOP USE PHI RENAMEPROF KPRI KINT KGC KPTR KKPTR KNULL KNUM KINT64KSLOT BNOT BSWAP BAND BOR BXOR BSHL BSHR BSAR BROL BROR ADD SUB MUL DIV MOD POW NEG ABS LDEXP MIN MAX FPMATHADDOV SUBOV MULOV AREF HREFK HREF NEWREFUREFO UREFC FREF TMPREFSTRREFLREF ALOAD HLOAD ULOAD FLOAD XLOAD SLOAD VLOAD ALEN ASTOREHSTOREUSTOREFSTOREXSTORESNEW XSNEW TNEW TDUP CNEW CNEWI BUFHDRBUFPUTBUFSTRTBAR OBAR XBAR CONV TOBIT TOSTR STRTO CALLN CALLA CALLL CALLS CALLXSCARG ", @@ -94,20 +94,15 @@ ircall = { "lj_vm_tointg", "softfp_ui2d", "softfp_f2d", -"softfp_d2ui", "softfp_d2f", "softfp_i2f", "softfp_ui2f", "softfp_f2i", -"softfp_f2ui", "fp64_l2d", "fp64_ul2d", "fp64_l2f", "fp64_ul2f", -"fp64_d2l", -"fp64_d2ul", -"fp64_f2l", -"fp64_f2ul", +"lj_vm_num2u64", "lj_carith_divi64", "lj_carith_divu64", "lj_carith_modi64", diff --git a/libs/LuaJIT/android/armeabi-v7a/jit/zone.lua b/libs/LuaJIT/android/armeabi-v7a/jit/zone.lua index 7f210730..0ed6935a 100644 --- a/libs/LuaJIT/android/armeabi-v7a/jit/zone.lua +++ b/libs/LuaJIT/android/armeabi-v7a/jit/zone.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT profiler zones. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- diff --git a/libs/LuaJIT/android/armeabi-v7a/libluajit.a b/libs/LuaJIT/android/armeabi-v7a/libluajit.a index 9c6341dc..a41590b8 100644 Binary files a/libs/LuaJIT/android/armeabi-v7a/libluajit.a and b/libs/LuaJIT/android/armeabi-v7a/libluajit.a differ diff --git a/libs/LuaJIT/android/armeabi-v7a/libluajit.so b/libs/LuaJIT/android/armeabi-v7a/libluajit.so index 2587bf26..ec171784 100644 Binary files a/libs/LuaJIT/android/armeabi-v7a/libluajit.so and b/libs/LuaJIT/android/armeabi-v7a/libluajit.so differ diff --git a/libs/LuaJIT/android/armeabi-v7a/luajit.h b/libs/LuaJIT/android/armeabi-v7a/luajit.h index 236dfadc..c75bce29 100644 --- a/libs/LuaJIT/android/armeabi-v7a/luajit.h +++ b/libs/LuaJIT/android/armeabi-v7a/luajit.h @@ -1,7 +1,7 @@ /* ** LuaJIT -- a Just-In-Time Compiler for Lua. https://luajit.org/ ** -** Copyright (C) 2005-2025 Mike Pall. All rights reserved. +** Copyright (C) 2005-2026 Mike Pall. All rights reserved. ** ** Permission is hereby granted, free of charge, to any person obtaining ** a copy of this software and associated documentation files (the @@ -30,10 +30,10 @@ #include "lua.h" -#define LUAJIT_VERSION "LuaJIT 2.1.1762386122" +#define LUAJIT_VERSION "LuaJIT 2.1.1784580905" #define LUAJIT_VERSION_NUM 20199 /* Deprecated. */ -#define LUAJIT_VERSION_SYM luaJIT_version_2_1_1762386122 -#define LUAJIT_COPYRIGHT "Copyright (C) 2005-2025 Mike Pall" +#define LUAJIT_VERSION_SYM luaJIT_version_2_1_1784580905 +#define LUAJIT_COPYRIGHT "Copyright (C) 2005-2026 Mike Pall" #define LUAJIT_URL "https://luajit.org/" /* Modes for luaJIT_setmode. */ diff --git a/libs/LuaJIT/android/x86/jit/bc.lua b/libs/LuaJIT/android/x86/jit/bc.lua index 71ba52be..8014d602 100644 --- a/libs/LuaJIT/android/x86/jit/bc.lua +++ b/libs/LuaJIT/android/x86/jit/bc.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT bytecode listing module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- diff --git a/libs/LuaJIT/android/x86/jit/bcsave.lua b/libs/LuaJIT/android/x86/jit/bcsave.lua index a30a34b6..7d19cb06 100644 --- a/libs/LuaJIT/android/x86/jit/bcsave.lua +++ b/libs/LuaJIT/android/x86/jit/bcsave.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT module to save/list bytecode. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- @@ -165,6 +165,8 @@ extern "C" #endif #ifdef _WIN32 __declspec(dllexport) +#elif (defined(__ELF__) || defined(__MACH__) || defined(__psp2__)) && !((defined(__sun__) && defined(__svr4__)) || defined(__CELLOS_LV2__)) +__attribute__((visibility("default"))) #endif const unsigned char %s%s[] = { ]], LJBC_PREFIX, ctx.modname)) @@ -465,9 +467,11 @@ typedef struct { mach_segment_command_64 seg; mach_section_64 sec; mach_symtab_command sym; +} mach_obj_64; +typedef struct { mach_nlist_64 sym_entry; uint8_t space[4096]; -} mach_obj_64; +} mach_obj_64_tail; ]] local symname = '_'..LJBC_PREFIX..ctx.modname local cputype, cpusubtype = 0x01000007, 3 @@ -479,7 +483,10 @@ typedef struct { -- Create Mach-O object and fill in header. local o = ffi.new("mach_obj_64") - local mach_size = aligned(ffi.offsetof(o, "space")+#symname+2, 8) + local t = ffi.new("mach_obj_64_tail") + local ofs_bc = ffi.sizeof(o) + local sz_bc = aligned(#s, 8) + local ofs_sym = ofs_bc + sz_bc -- Fill in sections and symbols. o.hdr.magic = 0xfeedfacf @@ -491,7 +498,7 @@ typedef struct { o.seg.cmd = 0x19 o.seg.cmdsize = ffi.sizeof(o.seg)+ffi.sizeof(o.sec) o.seg.vmsize = #s - o.seg.fileoff = mach_size + o.seg.fileoff = ofs_bc o.seg.filesize = #s o.seg.maxprot = 1 o.seg.initprot = 1 @@ -499,22 +506,23 @@ typedef struct { ffi.copy(o.sec.sectname, "__data") ffi.copy(o.sec.segname, "__DATA") o.sec.size = #s - o.sec.offset = mach_size + o.sec.offset = ofs_bc o.sym.cmd = 2 o.sym.cmdsize = ffi.sizeof(o.sym) - o.sym.symoff = ffi.offsetof(o, "sym_entry") + o.sym.symoff = ofs_sym o.sym.nsyms = 1 - o.sym.stroff = ffi.offsetof(o, "sym_entry")+ffi.sizeof(o.sym_entry) + o.sym.stroff = ofs_sym + ffi.offsetof(t, "space") o.sym.strsize = aligned(#symname+2, 8) - o.sym_entry.type = 0xf - o.sym_entry.sect = 1 - o.sym_entry.strx = 1 - ffi.copy(o.space+1, symname) + t.sym_entry.type = 0xf + t.sym_entry.sect = 1 + t.sym_entry.strx = 1 + ffi.copy(t.space+1, symname) -- Write Mach-O object file. local fp = savefile(output, "wb") - fp:write(ffi.string(o, mach_size)) - bcsave_tail(fp, output, s) + fp:write(ffi.string(o, ofs_bc)) + fp:write(s, ("\0"):rep(sz_bc - #s)) + bcsave_tail(fp, output, ffi.string(t, ffi.offsetof(t, "space") + o.sym.strsize)) end local function bcsave_obj(ctx, output, s) diff --git a/libs/LuaJIT/android/x86/jit/dis_arm.lua b/libs/LuaJIT/android/x86/jit/dis_arm.lua index 494b9502..0adc799d 100644 --- a/libs/LuaJIT/android/x86/jit/dis_arm.lua +++ b/libs/LuaJIT/android/x86/jit/dis_arm.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT ARM disassembler module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This is a helper module used by the LuaJIT machine code dumper module. diff --git a/libs/LuaJIT/android/x86/jit/dis_arm64.lua b/libs/LuaJIT/android/x86/jit/dis_arm64.lua index facc6e4a..896fab79 100644 --- a/libs/LuaJIT/android/x86/jit/dis_arm64.lua +++ b/libs/LuaJIT/android/x86/jit/dis_arm64.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT ARM64 disassembler module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h -- -- Contributed by Djordje Kovacevic and Stefan Pejic from RT-RK.com. @@ -485,15 +485,15 @@ local map_ls = { -- Loads and stores. shift = 30, mask = 3, [0] = { shift = 22, mask = 3, - [0] = "strbDwzU", "ldrbDwzU" + [0] = "strbDwzU", "ldrbDwzU", "ldrsbDwzU", "ldrsbDxzU" }, { shift = 22, mask = 3, - [0] = "strhDwzU", "ldrhDwzU" + [0] = "strhDwzU", "ldrhDwzU", "ldrshDwzU", "ldrshDxzU" }, { shift = 22, mask = 3, - [0] = "strDwzU", "ldrDwzU" + [0] = "strDwzU", "ldrDwzU", "ldrswDxzU" }, { shift = 22, mask = 3, diff --git a/libs/LuaJIT/android/x86/jit/dis_arm64be.lua b/libs/LuaJIT/android/x86/jit/dis_arm64be.lua index 47f191dc..e62a28cb 100644 --- a/libs/LuaJIT/android/x86/jit/dis_arm64be.lua +++ b/libs/LuaJIT/android/x86/jit/dis_arm64be.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT ARM64BE disassembler wrapper module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- ARM64 instructions are always little-endian. So just forward to the diff --git a/libs/LuaJIT/android/x86/jit/dis_mips.lua b/libs/LuaJIT/android/x86/jit/dis_mips.lua index fe1928e0..fece8937 100644 --- a/libs/LuaJIT/android/x86/jit/dis_mips.lua +++ b/libs/LuaJIT/android/x86/jit/dis_mips.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPS disassembler module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT/X license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This is a helper module used by the LuaJIT machine code dumper module. diff --git a/libs/LuaJIT/android/x86/jit/dis_mips64.lua b/libs/LuaJIT/android/x86/jit/dis_mips64.lua index 447ab80e..d7d160a0 100644 --- a/libs/LuaJIT/android/x86/jit/dis_mips64.lua +++ b/libs/LuaJIT/android/x86/jit/dis_mips64.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPS64 disassembler wrapper module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the big-endian functions from the diff --git a/libs/LuaJIT/android/x86/jit/dis_mips64el.lua b/libs/LuaJIT/android/x86/jit/dis_mips64el.lua index d4ead029..06767c01 100644 --- a/libs/LuaJIT/android/x86/jit/dis_mips64el.lua +++ b/libs/LuaJIT/android/x86/jit/dis_mips64el.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPS64EL disassembler wrapper module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the little-endian functions from the diff --git a/libs/LuaJIT/android/x86/jit/dis_mips64r6.lua b/libs/LuaJIT/android/x86/jit/dis_mips64r6.lua index e19d3983..ef4a125a 100644 --- a/libs/LuaJIT/android/x86/jit/dis_mips64r6.lua +++ b/libs/LuaJIT/android/x86/jit/dis_mips64r6.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPS64R6 disassembler wrapper module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the r6 big-endian functions from the diff --git a/libs/LuaJIT/android/x86/jit/dis_mips64r6el.lua b/libs/LuaJIT/android/x86/jit/dis_mips64r6el.lua index c0842fec..4dc6a54a 100644 --- a/libs/LuaJIT/android/x86/jit/dis_mips64r6el.lua +++ b/libs/LuaJIT/android/x86/jit/dis_mips64r6el.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPS64R6EL disassembler wrapper module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the r6 little-endian functions from the diff --git a/libs/LuaJIT/android/x86/jit/dis_mipsel.lua b/libs/LuaJIT/android/x86/jit/dis_mipsel.lua index 870d1d0f..1da538a6 100644 --- a/libs/LuaJIT/android/x86/jit/dis_mipsel.lua +++ b/libs/LuaJIT/android/x86/jit/dis_mipsel.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPSEL disassembler wrapper module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the little-endian functions from the diff --git a/libs/LuaJIT/android/x86/jit/dis_ppc.lua b/libs/LuaJIT/android/x86/jit/dis_ppc.lua index 830d76b6..d8f4cfb7 100644 --- a/libs/LuaJIT/android/x86/jit/dis_ppc.lua +++ b/libs/LuaJIT/android/x86/jit/dis_ppc.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT PPC disassembler module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT/X license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This is a helper module used by the LuaJIT machine code dumper module. diff --git a/libs/LuaJIT/android/x86/jit/dis_x64.lua b/libs/LuaJIT/android/x86/jit/dis_x64.lua index dc43cdb3..42ae48bf 100644 --- a/libs/LuaJIT/android/x86/jit/dis_x64.lua +++ b/libs/LuaJIT/android/x86/jit/dis_x64.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT x64 disassembler wrapper module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the 64 bit functions from the combined diff --git a/libs/LuaJIT/android/x86/jit/dis_x86.lua b/libs/LuaJIT/android/x86/jit/dis_x86.lua index 6b04ee84..80bf721b 100644 --- a/libs/LuaJIT/android/x86/jit/dis_x86.lua +++ b/libs/LuaJIT/android/x86/jit/dis_x86.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT x86/x64 disassembler module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This is a helper module used by the LuaJIT machine code dumper module. diff --git a/libs/LuaJIT/android/x86/jit/dump.lua b/libs/LuaJIT/android/x86/jit/dump.lua index c855fa09..6a700bbe 100644 --- a/libs/LuaJIT/android/x86/jit/dump.lua +++ b/libs/LuaJIT/android/x86/jit/dump.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT compiler dump module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- diff --git a/libs/LuaJIT/android/x86/jit/p.lua b/libs/LuaJIT/android/x86/jit/p.lua index 3002c19f..9d938ce5 100644 --- a/libs/LuaJIT/android/x86/jit/p.lua +++ b/libs/LuaJIT/android/x86/jit/p.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT profiler. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- diff --git a/libs/LuaJIT/android/x86/jit/v.lua b/libs/LuaJIT/android/x86/jit/v.lua index 0d4ec277..69443d31 100644 --- a/libs/LuaJIT/android/x86/jit/v.lua +++ b/libs/LuaJIT/android/x86/jit/v.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- Verbose mode of the LuaJIT compiler. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- diff --git a/libs/LuaJIT/android/x86/jit/vmdef.lua b/libs/LuaJIT/android/x86/jit/vmdef.lua index fa2e5c27..bbc3dcc8 100644 --- a/libs/LuaJIT/android/x86/jit/vmdef.lua +++ b/libs/LuaJIT/android/x86/jit/vmdef.lua @@ -1,10 +1,10 @@ -- This is a generated file. DO NOT EDIT! -assert(require("jit").version == "LuaJIT 2.1.1762386122", "LuaJIT core/library version mismatch") +assert(require("jit").version == "LuaJIT 2.1.1784580905", "LuaJIT core/library version mismatch") return { -bcnames = "ISLT ISGE ISLE ISGT ISEQV ISNEV ISEQS ISNES ISEQN ISNEN ISEQP ISNEP ISTC ISFC IST ISF ISTYPEISNUM MOV NOT UNM LEN ADDVN SUBVN MULVN DIVVN MODVN ADDNV SUBNV MULNV DIVNV MODNV ADDVV SUBVV MULVV DIVVV MODVV POW CAT KSTR KCDATAKSHORTKNUM KPRI KNIL UGET USETV USETS USETN USETP UCLO FNEW TNEW TDUP GGET GSET TGETV TGETS TGETB TGETR TSETV TSETS TSETB TSETM TSETR CALLM CALL CALLMTCALLT ITERC ITERN VARG ISNEXTRETM RET RET0 RET1 FORI JFORI FORL IFORL JFORL ITERL IITERLJITERLLOOP ILOOP JLOOP JMP FUNCF IFUNCFJFUNCFFUNCV IFUNCVJFUNCVFUNCC FUNCCW", +bcnames = "ISLT ISGE ISLE ISGT ISEQV ISNEV ISEQS ISNES ISEQN ISNEN ISEQP ISNEP ISTC ISFC IST ISF ISTYPEISNUM MOV NOT UNM LEN ADDVN SUBVN MULVN DIVVN MODVN ADDNV SUBNV MULNV DIVNV MODNV ADDVV SUBVV MULVV DIVVV MODVV POW CAT KSTR KCDATAKSHORTKNUM KPRI KNIL UGET USETV USETS USETN USETP UCLO FNEW TNEW TDUP GGET GSET TGETV TGETS TGETB TGETR TSETV TSETS TSETB TSETM TSETR CALLM CALL CALLMTCALLT ITERC ITERN VARG ISNEXTRETM RET RET0 RET1 FORI JFORI FORL IFORL JFORL ITERL IITERLJITERLLOOP ILOOP JLOOP JMP BNOT BAND BOR BXOR BSHL BSHR BSAR FUNCF IFUNCFJFUNCFFUNCV IFUNCVJFUNCVFUNCC FUNCCW", irnames = "LT GE LE GT ULT UGE ULE UGT EQ NE ABC RETF NOP BASE PVAL GCSTEPHIOP LOOP USE PHI RENAMEPROF KPRI KINT KGC KPTR KKPTR KNULL KNUM KINT64KSLOT BNOT BSWAP BAND BOR BXOR BSHL BSHR BSAR BROL BROR ADD SUB MUL DIV MOD POW NEG ABS LDEXP MIN MAX FPMATHADDOV SUBOV MULOV AREF HREFK HREF NEWREFUREFO UREFC FREF TMPREFSTRREFLREF ALOAD HLOAD ULOAD FLOAD XLOAD SLOAD VLOAD ALEN ASTOREHSTOREUSTOREFSTOREXSTORESNEW XSNEW TNEW TDUP CNEW CNEWI BUFHDRBUFPUTBUFSTRTBAR OBAR XBAR CONV TOBIT TOSTR STRTO CALLN CALLA CALLL CALLS CALLXSCARG ", @@ -94,20 +94,15 @@ ircall = { "lj_vm_tointg", "softfp_ui2d", "softfp_f2d", -"softfp_d2ui", "softfp_d2f", "softfp_i2f", "softfp_ui2f", "softfp_f2i", -"softfp_f2ui", "fp64_l2d", "fp64_ul2d", "fp64_l2f", "fp64_ul2f", -"fp64_d2l", -"fp64_d2ul", -"fp64_f2l", -"fp64_f2ul", +"lj_vm_num2u64", "lj_carith_divi64", "lj_carith_divu64", "lj_carith_modi64", diff --git a/libs/LuaJIT/android/x86/jit/zone.lua b/libs/LuaJIT/android/x86/jit/zone.lua index 7f210730..0ed6935a 100644 --- a/libs/LuaJIT/android/x86/jit/zone.lua +++ b/libs/LuaJIT/android/x86/jit/zone.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT profiler zones. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- diff --git a/libs/LuaJIT/android/x86/libluajit.a b/libs/LuaJIT/android/x86/libluajit.a index b4dc54cc..e9926ee1 100644 Binary files a/libs/LuaJIT/android/x86/libluajit.a and b/libs/LuaJIT/android/x86/libluajit.a differ diff --git a/libs/LuaJIT/android/x86/libluajit.so b/libs/LuaJIT/android/x86/libluajit.so index 60306789..6d3a102b 100644 Binary files a/libs/LuaJIT/android/x86/libluajit.so and b/libs/LuaJIT/android/x86/libluajit.so differ diff --git a/libs/LuaJIT/android/x86/luajit.h b/libs/LuaJIT/android/x86/luajit.h index 236dfadc..c75bce29 100644 --- a/libs/LuaJIT/android/x86/luajit.h +++ b/libs/LuaJIT/android/x86/luajit.h @@ -1,7 +1,7 @@ /* ** LuaJIT -- a Just-In-Time Compiler for Lua. https://luajit.org/ ** -** Copyright (C) 2005-2025 Mike Pall. All rights reserved. +** Copyright (C) 2005-2026 Mike Pall. All rights reserved. ** ** Permission is hereby granted, free of charge, to any person obtaining ** a copy of this software and associated documentation files (the @@ -30,10 +30,10 @@ #include "lua.h" -#define LUAJIT_VERSION "LuaJIT 2.1.1762386122" +#define LUAJIT_VERSION "LuaJIT 2.1.1784580905" #define LUAJIT_VERSION_NUM 20199 /* Deprecated. */ -#define LUAJIT_VERSION_SYM luaJIT_version_2_1_1762386122 -#define LUAJIT_COPYRIGHT "Copyright (C) 2005-2025 Mike Pall" +#define LUAJIT_VERSION_SYM luaJIT_version_2_1_1784580905 +#define LUAJIT_COPYRIGHT "Copyright (C) 2005-2026 Mike Pall" #define LUAJIT_URL "https://luajit.org/" /* Modes for luaJIT_setmode. */ diff --git a/libs/LuaJIT/android/x86_64/jit/bc.lua b/libs/LuaJIT/android/x86_64/jit/bc.lua index 71ba52be..8014d602 100644 --- a/libs/LuaJIT/android/x86_64/jit/bc.lua +++ b/libs/LuaJIT/android/x86_64/jit/bc.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT bytecode listing module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- diff --git a/libs/LuaJIT/android/x86_64/jit/bcsave.lua b/libs/LuaJIT/android/x86_64/jit/bcsave.lua index a30a34b6..7d19cb06 100644 --- a/libs/LuaJIT/android/x86_64/jit/bcsave.lua +++ b/libs/LuaJIT/android/x86_64/jit/bcsave.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT module to save/list bytecode. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- @@ -165,6 +165,8 @@ extern "C" #endif #ifdef _WIN32 __declspec(dllexport) +#elif (defined(__ELF__) || defined(__MACH__) || defined(__psp2__)) && !((defined(__sun__) && defined(__svr4__)) || defined(__CELLOS_LV2__)) +__attribute__((visibility("default"))) #endif const unsigned char %s%s[] = { ]], LJBC_PREFIX, ctx.modname)) @@ -465,9 +467,11 @@ typedef struct { mach_segment_command_64 seg; mach_section_64 sec; mach_symtab_command sym; +} mach_obj_64; +typedef struct { mach_nlist_64 sym_entry; uint8_t space[4096]; -} mach_obj_64; +} mach_obj_64_tail; ]] local symname = '_'..LJBC_PREFIX..ctx.modname local cputype, cpusubtype = 0x01000007, 3 @@ -479,7 +483,10 @@ typedef struct { -- Create Mach-O object and fill in header. local o = ffi.new("mach_obj_64") - local mach_size = aligned(ffi.offsetof(o, "space")+#symname+2, 8) + local t = ffi.new("mach_obj_64_tail") + local ofs_bc = ffi.sizeof(o) + local sz_bc = aligned(#s, 8) + local ofs_sym = ofs_bc + sz_bc -- Fill in sections and symbols. o.hdr.magic = 0xfeedfacf @@ -491,7 +498,7 @@ typedef struct { o.seg.cmd = 0x19 o.seg.cmdsize = ffi.sizeof(o.seg)+ffi.sizeof(o.sec) o.seg.vmsize = #s - o.seg.fileoff = mach_size + o.seg.fileoff = ofs_bc o.seg.filesize = #s o.seg.maxprot = 1 o.seg.initprot = 1 @@ -499,22 +506,23 @@ typedef struct { ffi.copy(o.sec.sectname, "__data") ffi.copy(o.sec.segname, "__DATA") o.sec.size = #s - o.sec.offset = mach_size + o.sec.offset = ofs_bc o.sym.cmd = 2 o.sym.cmdsize = ffi.sizeof(o.sym) - o.sym.symoff = ffi.offsetof(o, "sym_entry") + o.sym.symoff = ofs_sym o.sym.nsyms = 1 - o.sym.stroff = ffi.offsetof(o, "sym_entry")+ffi.sizeof(o.sym_entry) + o.sym.stroff = ofs_sym + ffi.offsetof(t, "space") o.sym.strsize = aligned(#symname+2, 8) - o.sym_entry.type = 0xf - o.sym_entry.sect = 1 - o.sym_entry.strx = 1 - ffi.copy(o.space+1, symname) + t.sym_entry.type = 0xf + t.sym_entry.sect = 1 + t.sym_entry.strx = 1 + ffi.copy(t.space+1, symname) -- Write Mach-O object file. local fp = savefile(output, "wb") - fp:write(ffi.string(o, mach_size)) - bcsave_tail(fp, output, s) + fp:write(ffi.string(o, ofs_bc)) + fp:write(s, ("\0"):rep(sz_bc - #s)) + bcsave_tail(fp, output, ffi.string(t, ffi.offsetof(t, "space") + o.sym.strsize)) end local function bcsave_obj(ctx, output, s) diff --git a/libs/LuaJIT/android/x86_64/jit/dis_arm.lua b/libs/LuaJIT/android/x86_64/jit/dis_arm.lua index 494b9502..0adc799d 100644 --- a/libs/LuaJIT/android/x86_64/jit/dis_arm.lua +++ b/libs/LuaJIT/android/x86_64/jit/dis_arm.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT ARM disassembler module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This is a helper module used by the LuaJIT machine code dumper module. diff --git a/libs/LuaJIT/android/x86_64/jit/dis_arm64.lua b/libs/LuaJIT/android/x86_64/jit/dis_arm64.lua index facc6e4a..896fab79 100644 --- a/libs/LuaJIT/android/x86_64/jit/dis_arm64.lua +++ b/libs/LuaJIT/android/x86_64/jit/dis_arm64.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT ARM64 disassembler module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h -- -- Contributed by Djordje Kovacevic and Stefan Pejic from RT-RK.com. @@ -485,15 +485,15 @@ local map_ls = { -- Loads and stores. shift = 30, mask = 3, [0] = { shift = 22, mask = 3, - [0] = "strbDwzU", "ldrbDwzU" + [0] = "strbDwzU", "ldrbDwzU", "ldrsbDwzU", "ldrsbDxzU" }, { shift = 22, mask = 3, - [0] = "strhDwzU", "ldrhDwzU" + [0] = "strhDwzU", "ldrhDwzU", "ldrshDwzU", "ldrshDxzU" }, { shift = 22, mask = 3, - [0] = "strDwzU", "ldrDwzU" + [0] = "strDwzU", "ldrDwzU", "ldrswDxzU" }, { shift = 22, mask = 3, diff --git a/libs/LuaJIT/android/x86_64/jit/dis_arm64be.lua b/libs/LuaJIT/android/x86_64/jit/dis_arm64be.lua index 47f191dc..e62a28cb 100644 --- a/libs/LuaJIT/android/x86_64/jit/dis_arm64be.lua +++ b/libs/LuaJIT/android/x86_64/jit/dis_arm64be.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT ARM64BE disassembler wrapper module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- ARM64 instructions are always little-endian. So just forward to the diff --git a/libs/LuaJIT/android/x86_64/jit/dis_mips.lua b/libs/LuaJIT/android/x86_64/jit/dis_mips.lua index fe1928e0..fece8937 100644 --- a/libs/LuaJIT/android/x86_64/jit/dis_mips.lua +++ b/libs/LuaJIT/android/x86_64/jit/dis_mips.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPS disassembler module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT/X license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This is a helper module used by the LuaJIT machine code dumper module. diff --git a/libs/LuaJIT/android/x86_64/jit/dis_mips64.lua b/libs/LuaJIT/android/x86_64/jit/dis_mips64.lua index 447ab80e..d7d160a0 100644 --- a/libs/LuaJIT/android/x86_64/jit/dis_mips64.lua +++ b/libs/LuaJIT/android/x86_64/jit/dis_mips64.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPS64 disassembler wrapper module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the big-endian functions from the diff --git a/libs/LuaJIT/android/x86_64/jit/dis_mips64el.lua b/libs/LuaJIT/android/x86_64/jit/dis_mips64el.lua index d4ead029..06767c01 100644 --- a/libs/LuaJIT/android/x86_64/jit/dis_mips64el.lua +++ b/libs/LuaJIT/android/x86_64/jit/dis_mips64el.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPS64EL disassembler wrapper module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the little-endian functions from the diff --git a/libs/LuaJIT/android/x86_64/jit/dis_mips64r6.lua b/libs/LuaJIT/android/x86_64/jit/dis_mips64r6.lua index e19d3983..ef4a125a 100644 --- a/libs/LuaJIT/android/x86_64/jit/dis_mips64r6.lua +++ b/libs/LuaJIT/android/x86_64/jit/dis_mips64r6.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPS64R6 disassembler wrapper module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the r6 big-endian functions from the diff --git a/libs/LuaJIT/android/x86_64/jit/dis_mips64r6el.lua b/libs/LuaJIT/android/x86_64/jit/dis_mips64r6el.lua index c0842fec..4dc6a54a 100644 --- a/libs/LuaJIT/android/x86_64/jit/dis_mips64r6el.lua +++ b/libs/LuaJIT/android/x86_64/jit/dis_mips64r6el.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPS64R6EL disassembler wrapper module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the r6 little-endian functions from the diff --git a/libs/LuaJIT/android/x86_64/jit/dis_mipsel.lua b/libs/LuaJIT/android/x86_64/jit/dis_mipsel.lua index 870d1d0f..1da538a6 100644 --- a/libs/LuaJIT/android/x86_64/jit/dis_mipsel.lua +++ b/libs/LuaJIT/android/x86_64/jit/dis_mipsel.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPSEL disassembler wrapper module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the little-endian functions from the diff --git a/libs/LuaJIT/android/x86_64/jit/dis_ppc.lua b/libs/LuaJIT/android/x86_64/jit/dis_ppc.lua index 830d76b6..d8f4cfb7 100644 --- a/libs/LuaJIT/android/x86_64/jit/dis_ppc.lua +++ b/libs/LuaJIT/android/x86_64/jit/dis_ppc.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT PPC disassembler module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT/X license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This is a helper module used by the LuaJIT machine code dumper module. diff --git a/libs/LuaJIT/android/x86_64/jit/dis_x64.lua b/libs/LuaJIT/android/x86_64/jit/dis_x64.lua index dc43cdb3..42ae48bf 100644 --- a/libs/LuaJIT/android/x86_64/jit/dis_x64.lua +++ b/libs/LuaJIT/android/x86_64/jit/dis_x64.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT x64 disassembler wrapper module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This module just exports the 64 bit functions from the combined diff --git a/libs/LuaJIT/android/x86_64/jit/dis_x86.lua b/libs/LuaJIT/android/x86_64/jit/dis_x86.lua index 6b04ee84..80bf721b 100644 --- a/libs/LuaJIT/android/x86_64/jit/dis_x86.lua +++ b/libs/LuaJIT/android/x86_64/jit/dis_x86.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT x86/x64 disassembler module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- This is a helper module used by the LuaJIT machine code dumper module. diff --git a/libs/LuaJIT/android/x86_64/jit/dump.lua b/libs/LuaJIT/android/x86_64/jit/dump.lua index c855fa09..6a700bbe 100644 --- a/libs/LuaJIT/android/x86_64/jit/dump.lua +++ b/libs/LuaJIT/android/x86_64/jit/dump.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT compiler dump module. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- diff --git a/libs/LuaJIT/android/x86_64/jit/p.lua b/libs/LuaJIT/android/x86_64/jit/p.lua index 3002c19f..9d938ce5 100644 --- a/libs/LuaJIT/android/x86_64/jit/p.lua +++ b/libs/LuaJIT/android/x86_64/jit/p.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT profiler. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- diff --git a/libs/LuaJIT/android/x86_64/jit/v.lua b/libs/LuaJIT/android/x86_64/jit/v.lua index 0d4ec277..69443d31 100644 --- a/libs/LuaJIT/android/x86_64/jit/v.lua +++ b/libs/LuaJIT/android/x86_64/jit/v.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- Verbose mode of the LuaJIT compiler. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- diff --git a/libs/LuaJIT/android/x86_64/jit/vmdef.lua b/libs/LuaJIT/android/x86_64/jit/vmdef.lua index fa2e5c27..bbc3dcc8 100644 --- a/libs/LuaJIT/android/x86_64/jit/vmdef.lua +++ b/libs/LuaJIT/android/x86_64/jit/vmdef.lua @@ -1,10 +1,10 @@ -- This is a generated file. DO NOT EDIT! -assert(require("jit").version == "LuaJIT 2.1.1762386122", "LuaJIT core/library version mismatch") +assert(require("jit").version == "LuaJIT 2.1.1784580905", "LuaJIT core/library version mismatch") return { -bcnames = "ISLT ISGE ISLE ISGT ISEQV ISNEV ISEQS ISNES ISEQN ISNEN ISEQP ISNEP ISTC ISFC IST ISF ISTYPEISNUM MOV NOT UNM LEN ADDVN SUBVN MULVN DIVVN MODVN ADDNV SUBNV MULNV DIVNV MODNV ADDVV SUBVV MULVV DIVVV MODVV POW CAT KSTR KCDATAKSHORTKNUM KPRI KNIL UGET USETV USETS USETN USETP UCLO FNEW TNEW TDUP GGET GSET TGETV TGETS TGETB TGETR TSETV TSETS TSETB TSETM TSETR CALLM CALL CALLMTCALLT ITERC ITERN VARG ISNEXTRETM RET RET0 RET1 FORI JFORI FORL IFORL JFORL ITERL IITERLJITERLLOOP ILOOP JLOOP JMP FUNCF IFUNCFJFUNCFFUNCV IFUNCVJFUNCVFUNCC FUNCCW", +bcnames = "ISLT ISGE ISLE ISGT ISEQV ISNEV ISEQS ISNES ISEQN ISNEN ISEQP ISNEP ISTC ISFC IST ISF ISTYPEISNUM MOV NOT UNM LEN ADDVN SUBVN MULVN DIVVN MODVN ADDNV SUBNV MULNV DIVNV MODNV ADDVV SUBVV MULVV DIVVV MODVV POW CAT KSTR KCDATAKSHORTKNUM KPRI KNIL UGET USETV USETS USETN USETP UCLO FNEW TNEW TDUP GGET GSET TGETV TGETS TGETB TGETR TSETV TSETS TSETB TSETM TSETR CALLM CALL CALLMTCALLT ITERC ITERN VARG ISNEXTRETM RET RET0 RET1 FORI JFORI FORL IFORL JFORL ITERL IITERLJITERLLOOP ILOOP JLOOP JMP BNOT BAND BOR BXOR BSHL BSHR BSAR FUNCF IFUNCFJFUNCFFUNCV IFUNCVJFUNCVFUNCC FUNCCW", irnames = "LT GE LE GT ULT UGE ULE UGT EQ NE ABC RETF NOP BASE PVAL GCSTEPHIOP LOOP USE PHI RENAMEPROF KPRI KINT KGC KPTR KKPTR KNULL KNUM KINT64KSLOT BNOT BSWAP BAND BOR BXOR BSHL BSHR BSAR BROL BROR ADD SUB MUL DIV MOD POW NEG ABS LDEXP MIN MAX FPMATHADDOV SUBOV MULOV AREF HREFK HREF NEWREFUREFO UREFC FREF TMPREFSTRREFLREF ALOAD HLOAD ULOAD FLOAD XLOAD SLOAD VLOAD ALEN ASTOREHSTOREUSTOREFSTOREXSTORESNEW XSNEW TNEW TDUP CNEW CNEWI BUFHDRBUFPUTBUFSTRTBAR OBAR XBAR CONV TOBIT TOSTR STRTO CALLN CALLA CALLL CALLS CALLXSCARG ", @@ -94,20 +94,15 @@ ircall = { "lj_vm_tointg", "softfp_ui2d", "softfp_f2d", -"softfp_d2ui", "softfp_d2f", "softfp_i2f", "softfp_ui2f", "softfp_f2i", -"softfp_f2ui", "fp64_l2d", "fp64_ul2d", "fp64_l2f", "fp64_ul2f", -"fp64_d2l", -"fp64_d2ul", -"fp64_f2l", -"fp64_f2ul", +"lj_vm_num2u64", "lj_carith_divi64", "lj_carith_divu64", "lj_carith_modi64", diff --git a/libs/LuaJIT/android/x86_64/jit/zone.lua b/libs/LuaJIT/android/x86_64/jit/zone.lua index 7f210730..0ed6935a 100644 --- a/libs/LuaJIT/android/x86_64/jit/zone.lua +++ b/libs/LuaJIT/android/x86_64/jit/zone.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT profiler zones. -- --- Copyright (C) 2005-2025 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2026 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- diff --git a/libs/LuaJIT/android/x86_64/libluajit.a b/libs/LuaJIT/android/x86_64/libluajit.a index 80f3b0a6..7d044f55 100644 Binary files a/libs/LuaJIT/android/x86_64/libluajit.a and b/libs/LuaJIT/android/x86_64/libluajit.a differ diff --git a/libs/LuaJIT/android/x86_64/libluajit.so b/libs/LuaJIT/android/x86_64/libluajit.so index 7d7315b0..08557f81 100644 Binary files a/libs/LuaJIT/android/x86_64/libluajit.so and b/libs/LuaJIT/android/x86_64/libluajit.so differ diff --git a/libs/LuaJIT/android/x86_64/luajit.h b/libs/LuaJIT/android/x86_64/luajit.h index 236dfadc..c75bce29 100644 --- a/libs/LuaJIT/android/x86_64/luajit.h +++ b/libs/LuaJIT/android/x86_64/luajit.h @@ -1,7 +1,7 @@ /* ** LuaJIT -- a Just-In-Time Compiler for Lua. https://luajit.org/ ** -** Copyright (C) 2005-2025 Mike Pall. All rights reserved. +** Copyright (C) 2005-2026 Mike Pall. All rights reserved. ** ** Permission is hereby granted, free of charge, to any person obtaining ** a copy of this software and associated documentation files (the @@ -30,10 +30,10 @@ #include "lua.h" -#define LUAJIT_VERSION "LuaJIT 2.1.1762386122" +#define LUAJIT_VERSION "LuaJIT 2.1.1784580905" #define LUAJIT_VERSION_NUM 20199 /* Deprecated. */ -#define LUAJIT_VERSION_SYM luaJIT_version_2_1_1762386122 -#define LUAJIT_COPYRIGHT "Copyright (C) 2005-2025 Mike Pall" +#define LUAJIT_VERSION_SYM luaJIT_version_2_1_1784580905 +#define LUAJIT_COPYRIGHT "Copyright (C) 2005-2026 Mike Pall" #define LUAJIT_URL "https://luajit.org/" /* Modes for luaJIT_setmode. */