From 21269a1bc078531371d82db31a8db968befb8fc8 Mon Sep 17 00:00:00 2001 From: Ronan Collobert Date: Mon, 31 Aug 2015 16:27:36 -0700 Subject: Squashed 'luajit-2.0/' changes from 8b6af89..8715ae6 8715ae6 Properly handle OOM in trace_save(). 424940f Fix NYICF error message. a5b1c4d FFI: Don't propagate qualifiers into subtypes of complex. 575bfe5 Limit number of arguments given to io.lines() and fp:lines(). 7f454ae Fix narrowing of TOBIT. 7234789 x64: Allow building without external unwinder. 69e5342 RELEASE LuaJIT-2.0.4 cd4c59f Update changelog. 9622d6b x86/x64: Fix argument check for bit shifts. 11106aa Fix stack check in narrowing optimization. a9fd686 Doc cleanup. git-subtree-dir: luajit-2.0 git-subtree-split: 8715ae65c1f70f2402b89a004b88ab04ca103625 --- Makefile | 2 +- README | 2 +- doc/changes.html | 52 +++++++++++++++++++++++++++++++++++++++++++++++++++- doc/install.html | 4 ++-- doc/running.html | 2 +- doc/status.html | 13 ++----------- etc/luajit.pc | 2 +- src/Makefile | 9 +++++---- src/jit/bc.lua | 2 +- src/jit/bcsave.lua | 2 +- src/jit/dump.lua | 2 +- src/jit/v.lua | 2 +- src/lib_io.c | 15 +++++++++++---- src/lj_arch.h | 2 +- src/lj_cparse.c | 4 ++++ src/lj_err.c | 4 ++-- src/lj_frame.h | 4 ++++ src/lj_opt_narrow.c | 21 +++++++++++++-------- src/lj_trace.c | 16 ++++++++++++---- src/lj_traceerr.h | 2 +- src/luaconf.h | 2 +- src/luajit.h | 6 +++--- src/ps4build.bat | 4 ++-- src/vm_x86.dasc | 34 +++++++++++++++++++++++++++++++--- 24 files changed, 153 insertions(+), 55 deletions(-) diff --git a/Makefile b/Makefile index 0891b71..0cbe741 100644 --- a/Makefile +++ b/Makefile @@ -15,7 +15,7 @@ MAJVER= 2 MINVER= 0 -RELVER= 3 +RELVER= 4 VERSION= $(MAJVER).$(MINVER).$(RELVER) ABIVER= 5.1 diff --git a/README b/README index d151bb7..44366af 100644 --- a/README +++ b/README @@ -1,4 +1,4 @@ -README for LuaJIT 2.0.3 +README for LuaJIT 2.0.4 ----------------------- LuaJIT is a Just-In-Time (JIT) compiler for the Lua programming language. diff --git a/doc/changes.html b/doc/changes.html index 3d8f5db..d7b83ce 100644 --- a/doc/changes.html +++ b/doc/changes.html @@ -63,7 +63,7 @@ div.major { max-width: 600px; padding: 1em; margin: 1em 0 1em 0; }

This is a list of changes between the released versions of LuaJIT.
-The current stable version is LuaJIT 2.0.3.
+The current stable version is LuaJIT 2.0.4.

Please check the @@ -72,6 +72,56 @@ to see whether newer versions are available.

+

LuaJIT 2.0.4 — 2015-05-14

+
    +
  • Fix stack check in narrowing optimization.
  • +
  • Fix Lua/C API typecheck error for special indexes.
  • +
  • Fix string to number conversion.
  • +
  • Fix lexer error for chunks without tokens.
  • +
  • Don't compile IR_RETF after CALLT to ff with-side effects.
  • +
  • Fix BC_UCLO/BC_JMP join optimization in Lua parser.
  • +
  • Fix corner case in string to number conversion.
  • +
  • Gracefully handle lua_error() for a suspended coroutine.
  • +
  • Avoid error messages when building with Clang.
  • +
  • Fix snapshot #0 handling for traces with a stack check on entry.
  • +
  • Fix fused constant loads under high register pressure.
  • +
  • Invalidate backpropagation cache after DCE.
  • +
  • Fix ABC elimination.
  • +
  • Fix debug info for main chunk of stripped bytecode.
  • +
  • Fix FOLD rule for string.sub(s, ...) == k.
  • +
  • Fix FOLD rule for STRREF of SNEW.
  • +
  • Fix frame traversal while searching for error function.
  • +
  • Prevent GC estimate miscalculation due to buffer growth.
  • +
  • Prevent adding side traces for stack checks.
  • +
  • Fix top slot calculation for snapshots with continuations.
  • +
  • Fix check for reuse of SCEV results in FORL.
  • +
  • Add PS Vita port.
  • +
  • Fix compatibility issues with Illumos.
  • +
  • Fix DragonFly build (unsupported).
  • +
  • OpenBSD/x86: Better executable memory allocation for W^X mode.
  • +
  • x86: Fix argument checks for ipairs() iterator.
  • +
  • x86: lj_math_random_step() clobbers XMM regs on OSX Clang.
  • +
  • x86: Fix code generation for unused result of math.random().
  • +
  • x64: Allow building with LUAJIT_USE_SYSMALLOC and LUAJIT_USE_VALGRIND.
  • +
  • x86/x64: Fix argument check for bit shifts.
  • +
  • x86/x64: Fix code generation for fused test/arith ops.
  • +
  • ARM: Fix write barrier check in BC_USETS.
  • +
  • PPC: Fix red zone overflow in machine code generation.
  • +
  • PPC: Don't use mcrxr on PPE.
  • +
  • Various archs: Fix excess stack growth in interpreter.
  • +
  • FFI: Fix FOLD rule for TOBIT + CONV num.u32.
  • +
  • FFI: Prevent DSE across ffi.string().
  • +
  • FFI: No meta fallback when indexing pointer to incomplete struct.
  • +
  • FFI: Fix initialization of unions of subtypes.
  • +
  • FFI: Fix cdata vs. non-cdata arithmetic and comparisons.
  • +
  • FFI: Fix __index/__newindex metamethod resolution for ctypes.
  • +
  • FFI: Fix compilation of reference field access.
  • +
  • FFI: Fix frame traversal for backtraces with FFI callbacks.
  • +
  • FFI: Fix recording of indexing a struct pointer ctype object itself.
  • +
  • FFI: Allow non-scalar cdata to be compared for equality by address.
  • +
  • FFI: Fix pseudo type conversions for type punning.
  • +
+

LuaJIT 2.0.3 — 2014-03-12

  • Add PS4 port.
  • diff --git a/doc/install.html b/doc/install.html index 7369aeb..7a878b1 100644 --- a/doc/install.html +++ b/doc/install.html @@ -188,8 +188,8 @@ open a terminal window and change to this directory. Now unpack the archive and change to the newly created directory:

    -tar zxf LuaJIT-2.0.3.tar.gz
    -cd LuaJIT-2.0.3
    +tar zxf LuaJIT-2.0.4.tar.gz +cd LuaJIT-2.0.4

    Building LuaJIT

    The supplied Makefiles try to auto-detect the settings needed for your diff --git a/doc/running.html b/doc/running.html index c2ec511..c6e1c29 100644 --- a/doc/running.html +++ b/doc/running.html @@ -186,7 +186,7 @@ itself. For a description of their options and output format, please read the comment block at the start of their source. They can be found in the lib directory of the source distribution or installed under the jit directory. By default -this is /usr/local/share/luajit-2.0.3/jit on POSIX +this is /usr/local/share/luajit-2.0.4/jit on POSIX systems.

    diff --git a/doc/status.html b/doc/status.html index e3655d4..b4bbec7 100644 --- a/doc/status.html +++ b/doc/status.html @@ -1,7 +1,7 @@ -Status & Roadmap +Status @@ -17,7 +17,7 @@ ul li { padding-bottom: 0.3em; } Lua