]>
git.ipfire.org Git - thirdparty/LuaJIT.git/log
Mike Pall [Sun, 12 Nov 2023 14:18:44 +0000 (15:18 +0100)]
x86/x64: Add more red zone checks to assembler backend.
Thanks to Peter Cawley. #1116
Mike Pall [Sun, 12 Nov 2023 13:42:24 +0000 (14:42 +0100)]
Add stack check to pcall/xpcall.
Analyzed by Peter Cawley. #1048
Mike Pall [Thu, 9 Nov 2023 10:02:36 +0000 (11:02 +0100)]
Invalidate SCEV entry when returning to lower frame.
Thanks to Zhongwei Yao. #1115
Mike Pall [Tue, 7 Nov 2023 21:25:42 +0000 (22:25 +0100)]
FFI: Fix pragma push stack limit check and throw on overflow.
Reported by Sergey Kaplun. #1114
Mike Pall [Sun, 5 Nov 2023 10:31:08 +0000 (11:31 +0100)]
x64: Properly fix __call metamethod return dispatch.
Reported by Sergey Kaplun. #1110
Mike Pall [Sat, 21 Oct 2023 11:11:50 +0000 (13:11 +0200)]
FFI: Fix dangling reference to CType in carith_checkarg().
Reported by Sergey Kaplun. #1108
Mike Pall [Fri, 22 Sep 2023 19:04:22 +0000 (21:04 +0200)]
Maintain chain invariant in DCE.
Thanks to Peter Cawley. #1094
Mike Pall [Thu, 21 Sep 2023 02:43:40 +0000 (04:43 +0200)]
Follow-up fix for stack overflow handling cleanup.
Mike Pall [Thu, 21 Sep 2023 00:15:16 +0000 (02:15 +0200)]
Handle all stack layouts in (delayed) TRACE vmevent.
Thanks to Sergey Bronnikov and Peter Cawley. #1087
Mike Pall [Thu, 21 Sep 2023 00:10:18 +0000 (02:10 +0200)]
Add missing coercion when recording select(string, ...)
Thanks to Peter Cawley. #1083
Mike Pall [Wed, 20 Sep 2023 23:58:43 +0000 (01:58 +0200)]
Cleanup stack overflow handling.
Reported by Peter Cawley. #962
Mike Pall [Sun, 10 Sep 2023 03:23:10 +0000 (05:23 +0200)]
Allow path overrides in genversion.lua with minilua, too.
Thanks to arch1t3cht. #1067
Mike Pall [Sat, 9 Sep 2023 21:01:26 +0000 (23:01 +0200)]
Improve architecture detection error messages.
Mike Pall [Sat, 9 Sep 2023 16:16:31 +0000 (18:16 +0200)]
ARM: Fix stack check code generation.
Thanks to Peter Cawley. #1068
Mike Pall [Sat, 9 Sep 2023 15:44:54 +0000 (17:44 +0200)]
Fix mcode limit check for non-x86 archs.
Thanks to Peter Cawley.
Mike Pall [Sat, 9 Sep 2023 11:37:31 +0000 (13:37 +0200)]
Add NaN check to IR_NEWREF.
Thanks to Peter Cawley. #1069
Mike Pall [Sat, 9 Sep 2023 10:47:27 +0000 (12:47 +0200)]
Allow override of paths for genversion.lua.
Thanks to arch1t3cht. #1067
Mike Pall [Sat, 9 Sep 2023 10:41:47 +0000 (12:41 +0200)]
Fix native MinGW build.
Thanks to Victor Bombi. #1071
Mike Pall [Tue, 29 Aug 2023 20:27:38 +0000 (22:27 +0200)]
Update external MSDN URL in code.
Thanks to Kyle Marshall. #1060
Mike Pall [Mon, 28 Aug 2023 20:15:42 +0000 (22:15 +0200)]
Handle table unsinking in the presence of IRFL_TAB_NOMM.
Reported by Sergey Kaplun. #1052
Mike Pall [Mon, 28 Aug 2023 19:25:51 +0000 (21:25 +0200)]
Use fallback name for install files without valid .git or .relver.
Mike Pall [Mon, 28 Aug 2023 19:59:01 +0000 (21:59 +0200)]
Handle non-.git checkout with .relver in .bat-file builds.
Thanks to Simon Cooke.
Mike Pall [Mon, 28 Aug 2023 19:04:01 +0000 (21:04 +0200)]
Fix external C call stack check when using LUAJIT_MODE_WRAPCFUNC.
Thanks to Peter Cawley. #1047
Mike Pall [Mon, 28 Aug 2023 19:00:37 +0000 (21:00 +0200)]
Fix predict_next() in parser (again).
Reported by Sergey Bronnikov. #1054
Mike Pall [Tue, 22 Aug 2023 15:04:22 +0000 (17:04 +0200)]
Handle the case when .git is not a directory.
Thanks to Alexander Shpilkin.
Mike Pall [Tue, 22 Aug 2023 13:36:55 +0000 (15:36 +0200)]
Add .gitattributes to dynamically resolve .relver.
Thanks to Alexander Shpilkin.
Mike Pall [Mon, 21 Aug 2023 11:08:00 +0000 (13:08 +0200)]
Fix Windows build scripts for rolling releases.
Reported by Miku AuahDark.
Mike Pall [Mon, 21 Aug 2023 01:59:03 +0000 (03:59 +0200)]
Switch MSVC and console build scripts to rolling releases.
Mike Pall [Mon, 21 Aug 2023 01:06:26 +0000 (03:06 +0200)]
Switch build system to rolling releases.
Mike Pall [Mon, 21 Aug 2023 00:28:49 +0000 (02:28 +0200)]
Update documentation for switch to rolling releases.
Mike Pall [Sun, 20 Aug 2023 19:25:30 +0000 (21:25 +0200)]
Bump copyright date.
Mike Pall [Sat, 12 Aug 2023 18:16:56 +0000 (20:16 +0200)]
Fix maxslots when recording BC_VARG, part 3.
Thanks to Peter Cawley. #1046
Mike Pall [Sat, 12 Aug 2023 14:21:41 +0000 (16:21 +0200)]
Fix predict_next() in parser.
Reported by Sergey Kaplun. #1033
Mike Pall [Wed, 12 Jul 2023 19:56:17 +0000 (21:56 +0200)]
Fix base register coalescing in side trace.
Thanks to Sergey Kaplun, NiLuJe and Peter Cawley. #1031 #1016
Mike Pall [Sun, 9 Jul 2023 19:08:12 +0000 (21:08 +0200)]
Fix maxslots when recording BC_VARG, part 2.
Analyzed by Sergey Kaplun. #1024
Mike Pall [Sat, 8 Jul 2023 17:40:12 +0000 (19:40 +0200)]
Fix maxslots when recording BC_VARG.
Analyzed by Sergey Kaplun. #1024
Mike Pall [Sat, 8 Jul 2023 17:36:24 +0000 (19:36 +0200)]
Fix register mask for stack check in head of side trace.
Analyzed by Sergey Kaplun. #1016
Mike Pall [Sat, 8 Jul 2023 17:30:56 +0000 (19:30 +0200)]
FFI: Fix ffi.metatype() for non-raw types.
Reported by 999pingGG. #1005
Mike Pall [Fri, 2 Jun 2023 09:38:45 +0000 (11:38 +0200)]
Fix handling of instable types in TNEW/TDUP load forwarding.
Analyzed by Sergey Kaplun. #994
Mike Pall [Fri, 2 Jun 2023 09:36:24 +0000 (11:36 +0200)]
Fix compiler warning.
Reported by Myriachan.
Mike Pall [Sun, 16 Apr 2023 11:26:18 +0000 (13:26 +0200)]
Fix TDUP load forwarding after table rehash.
Reported by Sergey Kaplun. #980
Mike Pall [Sun, 16 Apr 2023 11:24:08 +0000 (13:24 +0200)]
Fix canonicalization of +-0.0 keys for IR_NEWREF.
Reported by Sergey Kaplun. #981
Mike Pall [Tue, 21 Feb 2023 16:05:12 +0000 (17:05 +0100)]
Improve error reporting on stack overflow.
Thanks to Nicolas Lebedenco.
Mike Pall [Tue, 21 Feb 2023 15:49:51 +0000 (16:49 +0100)]
Allow building sources with mixed LF/CRLF line-endings.
Reported by mgood7123.
Mike Pall [Wed, 21 Dec 2022 23:03:06 +0000 (00:03 +0100)]
Avoid negation of signed integers in C that may hold INT*_MIN.
Reported by minoki.
Recent C compilers 'take advantage' of the undefined behavior.
This completely changes the meaning of expressions like (k == -k).
Mike Pall [Thu, 8 Dec 2022 23:20:05 +0000 (00:20 +0100)]
Correct fix for stack check when recording BC_VARG.
Reported by Yichun Zhang.
Mike Pall [Wed, 7 Dec 2022 16:19:29 +0000 (17:19 +0100)]
FFI: Fix dangling reference to CType. Improve checks.
Reported by elmknot.
Mike Pall [Mon, 14 Nov 2022 08:55:38 +0000 (09:55 +0100)]
Clarify contact page.
Mike Pall [Wed, 9 Nov 2022 10:01:41 +0000 (11:01 +0100)]
Ensure correct stack top for OOM error message.
Reported by Sergey Kaplun.
Mike Pall [Tue, 13 Sep 2022 09:32:53 +0000 (11:32 +0200)]
Fix last edit.
Mike Pall [Tue, 13 Sep 2022 09:21:30 +0000 (11:21 +0200)]
Remove dead Wiki links.
The lost content may be resurrected later.
Mike Pall [Mon, 15 Aug 2022 12:16:14 +0000 (14:16 +0200)]
Patch luajit.pc with INSTALL_INC, if customized.
Suggested by Henrique Bucher.
Mike Pall [Sun, 7 Aug 2022 18:02:40 +0000 (20:02 +0200)]
Prevent use of RTLD_DEFAULT when NO_RTLD_DEFAULT is defined.
Workaround for Android 4.4 bug.
Thanks to gudzpoz.
Mike Pall [Tue, 12 Jul 2022 22:32:31 +0000 (00:32 +0200)]
FFI: Fix sizeof expression in C parser for reference types.
Mike Pall [Tue, 12 Jul 2022 22:32:04 +0000 (00:32 +0200)]
FFI: Fix ffi.alignof() for reference types.
Reported by Eric Gouyer.
Mike Pall [Tue, 12 Jul 2022 22:30:23 +0000 (00:30 +0200)]
FFI: Allow ffi.metatype() for typedefs with attributes.
Reported by Eric Gouyer.
Mike Pall [Fri, 8 Jul 2022 12:57:01 +0000 (14:57 +0200)]
x86/x64: Fix math.ceil(-0.9) result sign.
Reported by minoki.
Mike Pall [Thu, 23 Jun 2022 07:10:09 +0000 (09:10 +0200)]
Grammar and spell check.
Mike Pall [Wed, 8 Jun 2022 13:35:12 +0000 (15:35 +0200)]
Fix warnings in minilua.c.
Mike Pall [Wed, 8 Jun 2022 12:55:59 +0000 (14:55 +0200)]
Update console build instructions.
Mike Pall [Sat, 21 May 2022 10:00:10 +0000 (12:00 +0200)]
Prevent C compiler undefined-behavior optimization.
Mike Pall [Sun, 17 Apr 2022 23:54:00 +0000 (01:54 +0200)]
Cleanup of system and architecture support docs.
Mike Pall [Sun, 17 Apr 2022 08:56:11 +0000 (10:56 +0200)]
Fix assertions.
Reported by ssdr.
Mike Pall [Sun, 13 Mar 2022 17:32:32 +0000 (18:32 +0100)]
Fix BC_UCLO insertion for returns.
Contributed by XmiliaH.
Mike Pall [Mon, 7 Mar 2022 08:50:25 +0000 (09:50 +0100)]
Fix install docs for Android.
Thanks to GuDzpoz.
Mike Pall [Thu, 27 Jan 2022 21:18:39 +0000 (22:18 +0100)]
Fix command-line argv handling.
Mike Pall [Tue, 25 Jan 2022 21:17:56 +0000 (22:17 +0100)]
Don't export internal symbol.
Mike Pall [Sun, 23 Jan 2022 18:16:53 +0000 (19:16 +0100)]
Always exit after machine code page protection change fails.
Reported by Sergey Kaplun.
Mike Pall [Sun, 16 Jan 2022 19:58:42 +0000 (20:58 +0100)]
Save trace recorder state around VM event call.
Reported by Sergey Kaplun.
Mike Pall [Sat, 15 Jan 2022 18:30:54 +0000 (19:30 +0100)]
Bump copyright date.
Mike Pall [Thu, 13 Jan 2022 16:48:43 +0000 (17:48 +0100)]
Limit exponent range in number parsing.
Reported by XmiliaH.
Mike Pall [Thu, 13 Jan 2022 14:38:56 +0000 (15:38 +0100)]
Fix tonumber("-0") in dual-number mode.
Reported by Sergey Kaplun.
Mike Pall [Thu, 13 Jan 2022 14:13:59 +0000 (15:13 +0100)]
Limit work done in SINK pass.
Reported by XmiliaH.
Mike Pall [Thu, 13 Jan 2022 13:40:11 +0000 (14:40 +0100)]
Fix ABC FOLD rule with constants.
Reported by XmiliaH.
Mike Pall [Sun, 19 Dec 2021 17:35:27 +0000 (18:35 +0100)]
Prevent CSE of a REF_BASE operand across IR_RETF.
Reported by XmiliaH.
Mike Pall [Fri, 17 Dec 2021 13:15:40 +0000 (14:15 +0100)]
Fix FOLD rule for x-0.
Reported by XmiliaH.
Mike Pall [Sat, 13 Nov 2021 19:24:06 +0000 (20:24 +0100)]
Update Android build docs.
Mike Pall [Sat, 2 Oct 2021 14:52:57 +0000 (16:52 +0200)]
MIPS: Fix register allocation in assembly of HREF.
Reported by Jakub Piotr Cłapa.
Mike Pall [Fri, 24 Sep 2021 10:10:44 +0000 (12:10 +0200)]
Windows/x64: Document MSVC flags for C++ exception interoperability.
Suggested by Julien Cugnière.
Mike Pall [Tue, 21 Sep 2021 14:42:35 +0000 (16:42 +0200)]
Fix stack allocation after on-trace stack check.
Mike Pall [Mon, 20 Sep 2021 12:36:52 +0000 (14:36 +0200)]
FFI: Don't load PC from non-function object in FFI continuation.
Reported by Yichun Zhang. #743
Mike Pall [Mon, 20 Sep 2021 12:34:47 +0000 (14:34 +0200)]
FFI: Fix missing cts->L initialization in argv2ctype().
Mike Pall [Tue, 27 Jul 2021 12:47:41 +0000 (14:47 +0200)]
Consider slots used by upvalues in use-def analysis.
Reported by XmiliaH.
Mike Pall [Fri, 23 Jul 2021 19:33:59 +0000 (21:33 +0200)]
Prevent loop in snap_usedef().
Reported by XmiliaH.
Mike Pall [Thu, 22 Jul 2021 14:21:45 +0000 (16:21 +0200)]
Fix io.close() error message.
Reported by François Perrad.
Mike Pall [Thu, 22 Jul 2021 00:33:04 +0000 (02:33 +0200)]
Fix io.close().
Reported by farmboy0.
Mike Pall [Wed, 21 Jul 2021 10:14:09 +0000 (12:14 +0200)]
Fix minilua vararg stack handling.
Note: this is not exploitable! minilua is only used during the LuaJIT
build process. It only runs controlled and static Lua code (DynASM),
which is entirely contained within this repo. LuaJIT itself has
completely different stack handling code and is not affected either.
This change is solely for the benefit of others, who might possibly use
minilua for purposes other than running DynASM.
Mike Pall [Mon, 19 Jul 2021 15:03:16 +0000 (17:03 +0200)]
Avoid out-of-range number of results when compiling select(k, ...).
The interpreter will throw and abort the trace, anyway.
Mike Pall [Mon, 19 Jul 2021 14:05:05 +0000 (16:05 +0200)]
Fix jit.dump() output for IR_CONV.
Mike Pall [Tue, 8 Jun 2021 20:34:22 +0000 (22:34 +0200)]
DynASM/x86: Add missing escape in pattern.
Mike Pall [Mon, 7 Jun 2021 10:05:34 +0000 (12:05 +0200)]
Fix HTML.
Mike Pall [Mon, 31 May 2021 22:26:45 +0000 (00:26 +0200)]
FFI: Fix dangling reference to CType.
Mike Pall [Sat, 29 May 2021 13:33:08 +0000 (15:33 +0200)]
PPC/PS3: Fix BC_ADD*/BC_SUB*.
Thanks to MaryWan1982.
Mike Pall [Sat, 29 May 2021 13:31:13 +0000 (15:31 +0200)]
Fix use-def analysis for vararg functions.
Reported by Shmuel Zeigerman.
Mike Pall [Mon, 24 May 2021 20:25:26 +0000 (22:25 +0200)]
Fix use-def analysis for BC_VARG.
Reported by Ryan Lucia.
Mike Pall [Mon, 17 May 2021 17:42:06 +0000 (19:42 +0200)]
Fix compiler warnings.
Mike Pall [Sun, 25 Apr 2021 15:44:03 +0000 (17:44 +0200)]
Add FAQ about table iteration order.
Mike Pall [Mon, 22 Mar 2021 23:43:07 +0000 (00:43 +0100)]
Detect inconsistent renames even in the presence of sunk values.
Reported by Igor Munkin.
Mike Pall [Thu, 11 Mar 2021 14:32:28 +0000 (15:32 +0100)]
Remove specific version numbers from the docs.
Mike Pall [Tue, 12 Jan 2021 11:59:54 +0000 (12:59 +0100)]
Clarify macOS build instructions.