diff options
-rw-r--r-- | Build/source/libs/README | 4 | ||||
-rw-r--r-- | Build/source/libs/luajit/ChangeLog | 5 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.2-PATCHES/TL-Changes | 6 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.2-PATCHES/patch-02-unwind | 12 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.2-PATCHES/patch-03-OSX-build | 32 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.2-PATCHES/patch-04-NetBSD64-build | 13 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3-PATCHES/ChangeLog (renamed from Build/source/libs/luajit/LuaJIT-2.0.2-PATCHES/ChangeLog) | 10 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3-PATCHES/TL-Changes | 6 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3-PATCHES/patch-01-LuaJITTeX (renamed from Build/source/libs/luajit/LuaJIT-2.0.2-PATCHES/patch-01-LuaJITTeX) | 48 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3-PATCHES/patch-05-LuaJITTeX | 99 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/COPYRIGHT (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/COPYRIGHT) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/Makefile (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/Makefile) | 10 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/README (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/README) | 4 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/doc/bluequad-print.css (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/doc/bluequad-print.css) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/doc/bluequad.css (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/doc/bluequad.css) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/doc/changes.html (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/doc/changes.html) | 42 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/doc/contact.html (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/doc/contact.html) | 6 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/doc/ext_c_api.html (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/doc/ext_c_api.html) | 4 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/doc/ext_ffi.html (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/doc/ext_ffi.html) | 4 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/doc/ext_ffi_api.html (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/doc/ext_ffi_api.html) | 4 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/doc/ext_ffi_semantics.html (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/doc/ext_ffi_semantics.html) | 8 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/doc/ext_ffi_tutorial.html (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/doc/ext_ffi_tutorial.html) | 4 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/doc/ext_jit.html (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/doc/ext_jit.html) | 4 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/doc/extensions.html (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/doc/extensions.html) | 4 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/doc/faq.html (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/doc/faq.html) | 4 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/doc/img/contact.png (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/doc/img/contact.png) | bin | 1340 -> 1340 bytes | |||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/doc/install.html (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/doc/install.html) | 32 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/doc/luajit.html (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/doc/luajit.html) | 8 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/doc/running.html (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/doc/running.html) | 6 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/doc/status.html (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/doc/status.html) | 4 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_arm.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_arm.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_arm.lua (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_arm.lua) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_mips.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_mips.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_mips.lua (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_mips.lua) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_ppc.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_ppc.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_ppc.lua (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_ppc.lua) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_proto.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_proto.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_x64.lua (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_x64.lua) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_x86.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_x86.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_x86.lua (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_x86.lua) | 14 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dynasm.lua (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dynasm.lua) | 15 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/etc/luajit.1 (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/etc/luajit.1) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/etc/luajit.pc (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/etc/luajit.pc) | 7 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/Makefile (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/Makefile) | 17 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/Makefile.dep (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/Makefile.dep) | 8 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/host/README (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/host/README) | 0 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/host/buildvm.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/host/buildvm.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/host/buildvm.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/host/buildvm.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/host/buildvm_asm.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/host/buildvm_asm.c) | 4 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/host/buildvm_fold.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/host/buildvm_fold.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/host/buildvm_lib.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/host/buildvm_lib.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/host/buildvm_peobj.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/host/buildvm_peobj.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/host/genminilua.lua (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/host/genminilua.lua) | 3 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/host/minilua.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/host/minilua.c) | 1 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/bc.lua (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/bc.lua) | 4 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/bcsave.lua (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/bcsave.lua) | 4 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/dis_arm.lua (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/dis_arm.lua) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/dis_mips.lua (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/dis_mips.lua) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/dis_mipsel.lua (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/dis_mipsel.lua) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/dis_ppc.lua (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/dis_ppc.lua) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/dis_x64.lua (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/dis_x64.lua) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/dis_x86.lua (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/dis_x86.lua) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/dump.lua (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/dump.lua) | 7 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/v.lua (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/v.lua) | 4 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lauxlib.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lauxlib.h) | 0 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lbitlib.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lbitlib.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_aux.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_aux.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_base.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_base.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_bit.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_bit.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_debug.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_debug.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_ffi.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_ffi.c) | 4 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_init.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_init.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_io.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_io.c) | 4 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_jit.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_jit.c) | 4 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_math.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_math.c) | 14 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_os.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_os.c) | 4 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_package.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_package.c) | 5 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_string.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_string.c) | 4 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_table.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_table.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj.supp (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj.supp) | 0 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_alloc.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_alloc.c) | 11 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_alloc.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_alloc.h) | 0 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_api.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_api.c) | 4 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_arch.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_arch.h) | 13 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_asm.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_asm.c) | 22 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_asm.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_asm.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_asm_arm.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_asm_arm.h) | 23 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_asm_mips.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_asm_mips.h) | 7 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_asm_ppc.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_asm_ppc.h) | 7 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_asm_x86.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_asm_x86.h) | 7 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_bc.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_bc.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_bc.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_bc.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_bcdump.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_bcdump.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_bcread.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_bcread.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_bcwrite.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_bcwrite.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_carith.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_carith.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_carith.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_carith.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ccall.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ccall.c) | 7 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ccall.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ccall.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ccallback.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ccallback.c) | 7 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ccallback.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ccallback.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_cconv.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_cconv.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_cconv.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_cconv.h) | 4 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_cdata.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_cdata.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_cdata.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_cdata.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_char.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_char.c) | 0 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_char.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_char.h) | 0 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_clib.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_clib.c) | 7 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_clib.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_clib.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_cparse.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_cparse.c) | 24 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_cparse.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_cparse.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_crecord.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_crecord.c) | 4 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_crecord.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_crecord.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ctype.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ctype.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ctype.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ctype.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_debug.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_debug.c) | 19 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_debug.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_debug.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_def.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_def.h) | 4 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_dispatch.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_dispatch.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_dispatch.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_dispatch.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_emit_arm.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_emit_arm.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_emit_mips.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_emit_mips.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_emit_ppc.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_emit_ppc.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_emit_x86.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_emit_x86.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_err.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_err.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_err.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_err.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_errmsg.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_errmsg.h) | 3 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ff.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ff.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ffrecord.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ffrecord.c) | 23 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ffrecord.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ffrecord.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_frame.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_frame.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_func.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_func.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_func.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_func.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_gc.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_gc.c) | 18 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_gc.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_gc.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_gdbjit.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_gdbjit.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_gdbjit.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_gdbjit.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ir.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ir.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ir.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ir.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ircall.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ircall.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_iropt.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_iropt.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_jit.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_jit.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_lex.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_lex.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_lex.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_lex.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_lib.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_lib.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_lib.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_lib.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_load.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_load.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_mcode.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_mcode.c) | 37 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_mcode.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_mcode.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_meta.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_meta.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_meta.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_meta.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_obj.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_obj.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_obj.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_obj.h) | 4 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_opt_dce.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_opt_dce.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_opt_fold.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_opt_fold.c) | 6 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_opt_loop.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_opt_loop.c) | 33 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_opt_mem.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_opt_mem.c) | 26 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_opt_narrow.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_opt_narrow.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_opt_sink.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_opt_sink.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_opt_split.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_opt_split.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_parse.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_parse.c) | 6 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_parse.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_parse.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_record.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_record.c) | 15 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_record.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_record.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_snap.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_snap.c) | 13 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_snap.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_snap.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_state.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_state.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_state.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_state.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_str.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_str.c) | 55 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_str.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_str.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_strscan.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_strscan.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_strscan.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_strscan.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_tab.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_tab.c) | 9 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_tab.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_tab.h) | 5 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_target.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_target.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_target_arm.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_target_arm.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_target_mips.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_target_mips.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_target_ppc.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_target_ppc.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_target_x86.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_target_x86.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_trace.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_trace.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_trace.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_trace.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_traceerr.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_traceerr.h) | 4 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_udata.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_udata.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_udata.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_udata.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_vm.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_vm.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_vmevent.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_vmevent.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_vmevent.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_vmevent.h) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_vmmath.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_vmmath.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/ljamalg.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/ljamalg.c) | 6 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lua.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lua.h) | 3 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lua.hpp (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lua.hpp) | 0 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/luaconf.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/luaconf.h) | 51 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/luajit.c (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/luajit.c) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/luajit.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/luajit.h) | 10 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/lualib.h (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/lualib.h) | 2 | ||||
-rwxr-xr-x | Build/source/libs/luajit/LuaJIT-2.0.3/src/msvcbuild.bat (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/msvcbuild.bat) | 12 | ||||
-rwxr-xr-x | Build/source/libs/luajit/LuaJIT-2.0.3/src/ps4build.bat | 103 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/vm_arm.dasc (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/vm_arm.dasc) | 4 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/vm_mips.dasc (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/vm_mips.dasc) | 8 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/vm_ppc.dasc (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/vm_ppc.dasc) | 6 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/vm_ppcspe.dasc (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/vm_ppcspe.dasc) | 2 | ||||
-rw-r--r-- | Build/source/libs/luajit/LuaJIT-2.0.3/src/vm_x86.dasc (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/vm_x86.dasc) | 4 | ||||
-rwxr-xr-x | Build/source/libs/luajit/LuaJIT-2.0.3/src/xedkbuild.bat (renamed from Build/source/libs/luajit/LuaJIT-2.0.2/src/xedkbuild.bat) | 4 | ||||
-rwxr-xr-x | Build/source/libs/luajit/configure | 26 | ||||
-rwxr-xr-x | Build/source/libs/luajit/native/configure | 24 | ||||
-rw-r--r-- | Build/source/libs/luajit/version.ac | 2 |
206 files changed, 878 insertions, 536 deletions
diff --git a/Build/source/libs/README b/Build/source/libs/README index eded439165f..b0f7d5b9a11 100644 --- a/Build/source/libs/README +++ b/Build/source/libs/README @@ -37,8 +37,8 @@ libpng 1.6.9 - checked 7feb14 lua 5.2.3 - checked 7dec13 http://www.lua.org/ftp/ -luajit 2.0.2 - checked 6feb14 - http://luajit.org/download/LuaJIT-2.0.2.tar.gz +luajit 2.0.3 - checked 14mar14 + http://luajit.org/download/LuaJIT-2.0.3.tar.gz pixman 0.32.4 - checked 18nov13 http://cairographics.org/releases/ diff --git a/Build/source/libs/luajit/ChangeLog b/Build/source/libs/luajit/ChangeLog index 44648397ff0..5151bca4d32 100644 --- a/Build/source/libs/luajit/ChangeLog +++ b/Build/source/libs/luajit/ChangeLog @@ -1,3 +1,8 @@ +2014-03-14 Peter Breitenlohner <peb@mppmu.mpg.de> + + Import LuaJIT-2.0.3. + * version.ac: Adjust. + 2014-03-13 Peter Breitenlohner <peb@mppmu.mpg.de> * Makefile.am: Use LUAJIT_LDEXTRA when linking the test program. diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2-PATCHES/TL-Changes b/Build/source/libs/luajit/LuaJIT-2.0.2-PATCHES/TL-Changes deleted file mode 100644 index ca8323beeb0..00000000000 --- a/Build/source/libs/luajit/LuaJIT-2.0.2-PATCHES/TL-Changes +++ /dev/null @@ -1,6 +0,0 @@ -Changes applied to the LuaJIT-2.0.2/ tree as obtained from: - ://luajit.org/download/LuaJIT-2.0.2.tar.gz - -Added: - src/lbitlib.c - diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2-PATCHES/patch-02-unwind b/Build/source/libs/luajit/LuaJIT-2.0.2-PATCHES/patch-02-unwind deleted file mode 100644 index 1251941fc63..00000000000 --- a/Build/source/libs/luajit/LuaJIT-2.0.2-PATCHES/patch-02-unwind +++ /dev/null @@ -1,12 +0,0 @@ -diff -ur -x lbitlib.c LuaJIT-2.0.2.orig/src/lj_err.c LuaJIT-2.0.2/src/lj_err.c ---- LuaJIT-2.0.2.orig/src/lj_err.c 2013-06-03 21:00:00.000000000 +0200 -+++ LuaJIT-2.0.2/src/lj_err.c 2014-02-06 14:01:09.000000000 +0100 -@@ -196,7 +196,7 @@ - typedef struct _Unwind_Exception - { - uint64_t exclass; -- void (*excleanup)(int, struct _Unwind_Exception); -+ void (*excleanup)(int, struct _Unwind_Exception *); - uintptr_t p1, p2; - } __attribute__((__aligned__)) _Unwind_Exception; - diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2-PATCHES/patch-03-OSX-build b/Build/source/libs/luajit/LuaJIT-2.0.2-PATCHES/patch-03-OSX-build deleted file mode 100644 index f7b437ee78d..00000000000 --- a/Build/source/libs/luajit/LuaJIT-2.0.2-PATCHES/patch-03-OSX-build +++ /dev/null @@ -1,32 +0,0 @@ -diff -ur -x lbitlib.c LuaJIT-2.0.2.orig/src/Makefile LuaJIT-2.0.2/src/Makefile ---- LuaJIT-2.0.2.orig/src/Makefile 2014-02-05 10:09:02.000000000 +0100 -+++ LuaJIT-2.0.2/src/Makefile 2014-02-07 09:53:10.000000000 +0100 -@@ -287,7 +287,9 @@ - endif - TARGET_STRIP+= -x - TARGET_AR+= 2>/dev/null -- TARGET_XCFLAGS+= -fno-stack-protector -+ ifeq (,$(shell $(TARGET_CC) -o /dev/null -c -x c /dev/null -fno-stack-protector 2>/dev/null || echo 1)) -+ TARGET_XCFLAGS+= -fno-stack-protector -+ endif - TARGET_XSHLDFLAGS= -dynamiclib -single_module -undefined dynamic_lookup -fPIC - TARGET_DYNXLDOPTS= - TARGET_XSHLDFLAGS+= -install_name $(TARGET_DYLIBPATH) -compatibility_version $(MAJVER).$(MINVER) -current_version $(MAJVER).$(MINVER).$(RELVER) -diff -ur -x lbitlib.c LuaJIT-2.0.2.orig/src/vm_x86.dasc LuaJIT-2.0.2/src/vm_x86.dasc ---- LuaJIT-2.0.2.orig/src/vm_x86.dasc 2013-06-03 21:00:00.000000000 +0200 -+++ LuaJIT-2.0.2/src/vm_x86.dasc 2014-02-07 09:53:19.000000000 +0100 -@@ -6344,12 +6344,12 @@ - #if LJ_64 - "\t.byte 0xe\n\t.byte 16\n" /* def_cfa_offset */ - "\t.byte 0x86\n\t.byte 0x2\n" /* offset rbp */ -- "\t.byte 0xd\n\t.uleb128 0x6\n" /* def_cfa_register rbp */ -+ "\t.byte 0xd\n\t.byte 0x6\n" /* def_cfa_register rbp */ - "\t.byte 0x83\n\t.byte 0x3\n" /* offset rbx */ - #else - "\t.byte 0xe\n\t.byte 8\n" /* def_cfa_offset */ - "\t.byte 0x84\n\t.byte 0x2\n" /* offset ebp (4 for MACH-O)*/ -- "\t.byte 0xd\n\t.uleb128 0x4\n" /* def_cfa_register ebp */ -+ "\t.byte 0xd\n\t.byte 0x4\n" /* def_cfa_register ebp */ - "\t.byte 0x83\n\t.byte 0x3\n" /* offset ebx */ - #endif - "\t.align " BSZPTR "\n" diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2-PATCHES/patch-04-NetBSD64-build b/Build/source/libs/luajit/LuaJIT-2.0.2-PATCHES/patch-04-NetBSD64-build deleted file mode 100644 index 6fef9eaa22f..00000000000 --- a/Build/source/libs/luajit/LuaJIT-2.0.2-PATCHES/patch-04-NetBSD64-build +++ /dev/null @@ -1,13 +0,0 @@ -diff -ur -x lbitlib.c LuaJIT-2.0.2.orig/src/lj_alloc.c LuaJIT-2.0.2/src/lj_alloc.c ---- LuaJIT-2.0.2.orig/src/lj_alloc.c 2013-06-03 21:00:00.000000000 +0200 -+++ LuaJIT-2.0.2/src/lj_alloc.c 2014-02-23 14:10:01.000000000 +0100 -@@ -188,7 +188,8 @@ - return ptr; - } - --#elif LJ_TARGET_OSX || defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__OpenBSD__) || defined(__sun__) -+#elif LJ_TARGET_OSX || defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || \ -+ defined(__NetBSD__) || defined(__OpenBSD__) || defined(__sun__) - - /* OSX and FreeBSD mmap() use a naive first-fit linear search. - ** That's perfect for us. Except that -pagezero_size must be set for OSX, diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2-PATCHES/ChangeLog b/Build/source/libs/luajit/LuaJIT-2.0.3-PATCHES/ChangeLog index 32074fa2ab6..f57e15b4b73 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2-PATCHES/ChangeLog +++ b/Build/source/libs/luajit/LuaJIT-2.0.3-PATCHES/ChangeLog @@ -1,3 +1,13 @@ +2014-03-14 Peter Breitenlohner <peb@mppmu.mpg.de> + + Import LuaJIT-2.0.3. + + * patch-01-LuaJITTeX: Adapted. + * patch-05-LuaJITTeX (new): More changes from Luigi and Taco. + + * patch-02-unwind, patch-03-OSX-build, patch-04-NetBSD64-build + (removed): Now in distribution. + 2014-02-23 Peter Breitenlohner <peb@mppmu.mpg.de> * patch-04-NetBSD64-build (new): Fix NetBSD/amd64 build from diff --git a/Build/source/libs/luajit/LuaJIT-2.0.3-PATCHES/TL-Changes b/Build/source/libs/luajit/LuaJIT-2.0.3-PATCHES/TL-Changes new file mode 100644 index 00000000000..5dc36ee546f --- /dev/null +++ b/Build/source/libs/luajit/LuaJIT-2.0.3-PATCHES/TL-Changes @@ -0,0 +1,6 @@ +Changes applied to the LuaJIT-2.0.3/ tree as obtained from: + http://luajit.org/download/LuaJIT-2.0.3.tar.gz + +Added: + src/lbitlib.c + diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2-PATCHES/patch-01-LuaJITTeX b/Build/source/libs/luajit/LuaJIT-2.0.3-PATCHES/patch-01-LuaJITTeX index dd84fff1619..351a00f3c11 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2-PATCHES/patch-01-LuaJITTeX +++ b/Build/source/libs/luajit/LuaJIT-2.0.3-PATCHES/patch-01-LuaJITTeX @@ -1,6 +1,6 @@ -diff -ur LuaJIT-2.0.2.orig/src/Makefile LuaJIT-2.0.2/src/Makefile ---- LuaJIT-2.0.2.orig/src/Makefile 2013-06-03 21:00:00.000000000 +0200 -+++ LuaJIT-2.0.2/src/Makefile 2014-02-05 10:09:02.000000000 +0100 +diff -ur -x lbitlib.c LuaJIT-2.0.3.orig/src/Makefile LuaJIT-2.0.3/src/Makefile +--- LuaJIT-2.0.3.orig/src/Makefile 2014-03-12 13:10:00.000000000 +0100 ++++ LuaJIT-2.0.3/src/Makefile 2014-03-14 09:15:50.000000000 +0100 @@ -100,7 +100,7 @@ # enabled by default. Some other features that *might* break some existing # code (e.g. __pairs or os.execute() return values) can be enabled here. @@ -10,7 +10,7 @@ diff -ur LuaJIT-2.0.2.orig/src/Makefile LuaJIT-2.0.2/src/Makefile # # Disable the JIT compiler, i.e. turn LuaJIT into a pure interpreter. #XCFLAGS+= -DLUAJIT_DISABLE_JIT -@@ -441,7 +441,7 @@ +@@ -450,7 +450,7 @@ LJVM_BOUT= $(LJVM_S) LJVM_MODE= elfasm @@ -19,9 +19,9 @@ diff -ur LuaJIT-2.0.2.orig/src/Makefile LuaJIT-2.0.2/src/Makefile lib_io.o lib_os.o lib_package.o lib_debug.o lib_jit.o lib_ffi.o LJLIB_C= $(LJLIB_O:.o=.c) -diff -ur LuaJIT-2.0.2.orig/src/Makefile.dep LuaJIT-2.0.2/src/Makefile.dep ---- LuaJIT-2.0.2.orig/src/Makefile.dep 2013-06-03 21:00:00.000000000 +0200 -+++ LuaJIT-2.0.2/src/Makefile.dep 2014-02-05 10:09:02.000000000 +0100 +diff -ur -x lbitlib.c LuaJIT-2.0.3.orig/src/Makefile.dep LuaJIT-2.0.3/src/Makefile.dep +--- LuaJIT-2.0.3.orig/src/Makefile.dep 2014-03-12 13:10:00.000000000 +0100 ++++ LuaJIT-2.0.3/src/Makefile.dep 2014-03-14 09:15:50.000000000 +0100 @@ -6,6 +6,7 @@ lj_tab.h lj_meta.h lj_state.h lj_ctype.h lj_cconv.h lj_bc.h lj_ff.h \ lj_ffdef.h lj_dispatch.h lj_jit.h lj_ir.h lj_char.h lj_strscan.h \ @@ -30,9 +30,9 @@ diff -ur LuaJIT-2.0.2.orig/src/Makefile.dep LuaJIT-2.0.2/src/Makefile.dep lib_bit.o: lib_bit.c lua.h luaconf.h lauxlib.h lualib.h lj_obj.h lj_def.h \ lj_arch.h lj_err.h lj_errmsg.h lj_str.h lj_lib.h lj_libdef.h lib_debug.o: lib_debug.c lua.h luaconf.h lauxlib.h lualib.h lj_obj.h \ -diff -ur LuaJIT-2.0.2.orig/src/lauxlib.h LuaJIT-2.0.2/src/lauxlib.h ---- LuaJIT-2.0.2.orig/src/lauxlib.h 2013-06-03 21:00:00.000000000 +0200 -+++ LuaJIT-2.0.2/src/lauxlib.h 2014-02-05 10:09:02.000000000 +0100 +diff -ur -x lbitlib.c LuaJIT-2.0.3.orig/src/lauxlib.h LuaJIT-2.0.3/src/lauxlib.h +--- LuaJIT-2.0.3.orig/src/lauxlib.h 2014-03-12 13:10:00.000000000 +0100 ++++ LuaJIT-2.0.3/src/lauxlib.h 2014-03-14 09:15:50.000000000 +0100 @@ -86,6 +86,32 @@ int level); @@ -66,9 +66,9 @@ diff -ur LuaJIT-2.0.2.orig/src/lauxlib.h LuaJIT-2.0.2/src/lauxlib.h /* ** =============================================================== ** some useful macros -diff -ur LuaJIT-2.0.2.orig/src/lib_init.c LuaJIT-2.0.2/src/lib_init.c ---- LuaJIT-2.0.2.orig/src/lib_init.c 2013-06-03 21:00:00.000000000 +0200 -+++ LuaJIT-2.0.2/src/lib_init.c 2014-02-05 10:09:02.000000000 +0100 +diff -ur -x lbitlib.c LuaJIT-2.0.3.orig/src/lib_init.c LuaJIT-2.0.3/src/lib_init.c +--- LuaJIT-2.0.3.orig/src/lib_init.c 2014-03-12 13:10:00.000000000 +0100 ++++ LuaJIT-2.0.3/src/lib_init.c 2014-03-14 09:15:50.000000000 +0100 @@ -26,6 +26,7 @@ { LUA_DBLIBNAME, luaopen_debug }, { LUA_BITLIBNAME, luaopen_bit }, @@ -77,10 +77,10 @@ diff -ur LuaJIT-2.0.2.orig/src/lib_init.c LuaJIT-2.0.2/src/lib_init.c { NULL, NULL } }; -diff -ur LuaJIT-2.0.2.orig/src/lib_package.c LuaJIT-2.0.2/src/lib_package.c ---- LuaJIT-2.0.2.orig/src/lib_package.c 2013-06-03 21:00:00.000000000 +0200 -+++ LuaJIT-2.0.2/src/lib_package.c 2014-02-05 10:09:02.000000000 +0100 -@@ -357,6 +357,29 @@ +diff -ur -x lbitlib.c LuaJIT-2.0.3.orig/src/lib_package.c LuaJIT-2.0.3/src/lib_package.c +--- LuaJIT-2.0.3.orig/src/lib_package.c 2014-03-12 13:10:00.000000000 +0100 ++++ LuaJIT-2.0.3/src/lib_package.c 2014-03-14 09:15:50.000000000 +0100 +@@ -354,6 +354,29 @@ return 1; /* library loaded successfully */ } @@ -110,7 +110,7 @@ diff -ur LuaJIT-2.0.2.orig/src/lib_package.c LuaJIT-2.0.2/src/lib_package.c static int lj_cf_package_loader_croot(lua_State *L) { const char *filename; -@@ -376,6 +399,21 @@ +@@ -373,6 +396,21 @@ return 1; } @@ -132,9 +132,9 @@ diff -ur LuaJIT-2.0.2.orig/src/lib_package.c LuaJIT-2.0.2/src/lib_package.c static int lj_cf_package_loader_preload(lua_State *L) { const char *name = luaL_checkstring(L, 1); -diff -ur LuaJIT-2.0.2.orig/src/lua.h LuaJIT-2.0.2/src/lua.h ---- LuaJIT-2.0.2.orig/src/lua.h 2013-06-03 21:00:00.000000000 +0200 -+++ LuaJIT-2.0.2/src/lua.h 2014-02-05 10:09:02.000000000 +0100 +diff -ur -x lbitlib.c LuaJIT-2.0.3.orig/src/lua.h LuaJIT-2.0.3/src/lua.h +--- LuaJIT-2.0.3.orig/src/lua.h 2014-03-12 13:10:00.000000000 +0100 ++++ LuaJIT-2.0.3/src/lua.h 2014-03-14 09:15:50.000000000 +0100 @@ -348,6 +348,16 @@ const char *chunkname, const char *mode); @@ -152,9 +152,9 @@ diff -ur LuaJIT-2.0.2.orig/src/lua.h LuaJIT-2.0.2/src/lua.h struct lua_Debug { int event; const char *name; /* (n) */ -diff -ur LuaJIT-2.0.2.orig/src/lualib.h LuaJIT-2.0.2/src/lualib.h ---- LuaJIT-2.0.2.orig/src/lualib.h 2013-06-03 21:00:00.000000000 +0200 -+++ LuaJIT-2.0.2/src/lualib.h 2014-02-05 10:09:02.301703093 +0100 +diff -ur -x lbitlib.c LuaJIT-2.0.3.orig/src/lualib.h LuaJIT-2.0.3/src/lualib.h +--- LuaJIT-2.0.3.orig/src/lualib.h 2014-03-12 13:10:00.000000000 +0100 ++++ LuaJIT-2.0.3/src/lualib.h 2014-03-14 09:15:50.000000000 +0100 @@ -22,6 +22,8 @@ #define LUA_JITLIBNAME "jit" #define LUA_FFILIBNAME "ffi" diff --git a/Build/source/libs/luajit/LuaJIT-2.0.3-PATCHES/patch-05-LuaJITTeX b/Build/source/libs/luajit/LuaJIT-2.0.3-PATCHES/patch-05-LuaJITTeX new file mode 100644 index 00000000000..d1e95b59f06 --- /dev/null +++ b/Build/source/libs/luajit/LuaJIT-2.0.3-PATCHES/patch-05-LuaJITTeX @@ -0,0 +1,99 @@ +diff -ur -x lbitlib.c LuaJIT-2.0.3.orig/src/lj_def.h LuaJIT-2.0.3/src/lj_def.h +--- LuaJIT-2.0.3.orig/src/lj_def.h 2014-03-12 13:10:00.000000000 +0100 ++++ LuaJIT-2.0.3/src/lj_def.h 2014-03-14 09:30:30.000000000 +0100 +@@ -62,7 +62,7 @@ + #define LJ_MAX_BCINS (1<<26) /* Max. # of bytecode instructions. */ + #define LJ_MAX_SLOTS 250 /* Max. # of slots in a Lua func. */ + #define LJ_MAX_LOCVAR 200 /* Max. # of local variables. */ +-#define LJ_MAX_UPVAL 60 /* Max. # of upvalues. */ ++#define LJ_MAX_UPVAL 249 /* Max. # of upvalues. */ + + #define LJ_MAX_IDXCHAIN 100 /* __index/__newindex chain limit. */ + #define LJ_STACK_EXTRA 5 /* Extra stack space (metamethods). */ +diff -ur -x lbitlib.c LuaJIT-2.0.3.orig/src/lj_str.c LuaJIT-2.0.3/src/lj_str.c +--- LuaJIT-2.0.3.orig/src/lj_str.c 2014-03-12 13:10:00.000000000 +0100 ++++ LuaJIT-2.0.3/src/lj_str.c 2014-03-14 10:04:14.540946490 +0100 +@@ -90,6 +90,8 @@ + g->strhash = newhash; + } + ++#define cast(t, exp) ((t)(exp)) ++int luajittex_choose_hash_function = 0 ; + /* Intern a string and return string object. */ + GCstr *lj_str_new(lua_State *L, const char *str, size_t lenx) + { +@@ -98,27 +100,44 @@ + GCobj *o; + MSize len = (MSize)lenx; + MSize a, b, h = len; ++ size_t step ; ++ size_t l1 ; + if (lenx >= LJ_MAX_STR) + lj_err_msg(L, LJ_ERR_STROV); + g = G(L); ++ ++ if (len==0) ++ return &g->strempty; ++ if (luajittex_choose_hash_function==0) { ++ /* Lua 5.1.5 hash function */ ++ /* for 5.2 max methods we also need to patch the vm eq */ ++ step = (len>>6)+1; /* if string is too long, don't hash all its chars Was 5, we try 6*/ ++ for (l1=len; l1>=step; l1-=step) /* compute hash */ ++ h = h ^ ((h<<5)+(h>>2)+cast(unsigned char, str[l1-1])); ++ } else { ++ /* LuaJIT 2.0.2 hash function */ + /* Compute string hash. Constants taken from lookup3 hash by Bob Jenkins. */ +- if (len >= 4) { /* Caveat: unaligned access! */ +- a = lj_getu32(str); +- h ^= lj_getu32(str+len-4); +- b = lj_getu32(str+(len>>1)-2); +- h ^= b; h -= lj_rol(b, 14); +- b += lj_getu32(str+(len>>2)-1); +- } else if (len > 0) { +- a = *(const uint8_t *)str; +- h ^= *(const uint8_t *)(str+len-1); +- b = *(const uint8_t *)(str+(len>>1)); +- h ^= b; h -= lj_rol(b, 14); +- } else { +- return &g->strempty; +- } +- a ^= h; a -= lj_rol(h, 11); +- b ^= a; b -= lj_rol(a, 25); +- h ^= b; h -= lj_rol(b, 16); ++ if (len >= 4) { /* Caveat: unaligned access! */ ++ a = lj_getu32(str); ++ h ^= lj_getu32(str+len-4); ++ b = lj_getu32(str+(len>>1)-2); ++ h ^= b; h -= lj_rol(b, 14); ++ b += lj_getu32(str+(len>>2)-1); ++ } else if (len > 0) { ++ a = *(const uint8_t *)str; ++ h ^= *(const uint8_t *)(str+len-1); ++ b = *(const uint8_t *)(str+(len>>1)); ++ h ^= b; h -= lj_rol(b, 14); ++ } else { ++ /* Already done, kept for reference */ ++ return &g->strempty; ++ } ++ a ^= h; a -= lj_rol(h, 11); ++ b ^= a; b -= lj_rol(a, 25); ++ h ^= b; h -= lj_rol(b, 16); ++ } ++ ++ + /* Check if the string has already been interned. */ + o = gcref(g->strhash[h & g->strmask]); + if (LJ_LIKELY((((uintptr_t)str+len-1) & (LJ_PAGESIZE-1)) <= LJ_PAGESIZE-4)) { +diff -ur -x lbitlib.c LuaJIT-2.0.3.orig/src/lua.h LuaJIT-2.0.3/src/lua.h +--- LuaJIT-2.0.3.orig/src/lua.h 2014-03-14 09:15:50.000000000 +0100 ++++ LuaJIT-2.0.3/src/lua.h 2014-03-14 10:08:51.000000000 +0100 +@@ -103,6 +103,9 @@ + typedef LUA_INTEGER lua_Integer; + + ++/* communication with LuaJiTTeX */ ++LUA_API int luajittex_choose_hash_function; ++ + + /* + ** state manipulation diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/COPYRIGHT b/Build/source/libs/luajit/LuaJIT-2.0.3/COPYRIGHT index 83ce94daee9..08936dfb911 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/COPYRIGHT +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/COPYRIGHT @@ -1,7 +1,7 @@ =============================================================================== LuaJIT -- a Just-In-Time Compiler for Lua. http://luajit.org/ -Copyright (C) 2005-2013 Mike Pall. All rights reserved. +Copyright (C) 2005-2014 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 "Software"), to deal diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/Makefile b/Build/source/libs/luajit/LuaJIT-2.0.3/Makefile index 8883503f66c..b23b64816d2 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/Makefile +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/Makefile @@ -10,12 +10,12 @@ # For MSVC, please follow the instructions given in src/msvcbuild.bat. # For MinGW and Cygwin, cd to src and run make with the Makefile there. # -# Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +# Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h ############################################################################## MAJVER= 2 MINVER= 0 -RELVER= 2 +RELVER= 3 VERSION= $(MAJVER).$(MINVER).$(RELVER) ABIVER= 5.1 @@ -25,11 +25,12 @@ ABIVER= 5.1 # the paths in src/luaconf.h, too. Note: PREFIX must be an absolute path! # export PREFIX= /usr/local +export MULTILIB= lib ############################################################################## DPREFIX= $(DESTDIR)$(PREFIX) INSTALL_BIN= $(DPREFIX)/bin -INSTALL_LIB= $(DPREFIX)/lib +INSTALL_LIB= $(DPREFIX)/$(MULTILIB) INSTALL_SHARE= $(DPREFIX)/share INSTALL_INC= $(DPREFIX)/include/luajit-$(MAJVER).$(MINVER) @@ -73,7 +74,8 @@ INSTALL_X= install -m 0755 INSTALL_F= install -m 0644 UNINSTALL= $(RM) LDCONFIG= ldconfig -n -SED_PC= sed -e "s|^prefix=.*|prefix=$(PREFIX)|" +SED_PC= sed -e "s|^prefix=.*|prefix=$(PREFIX)|" \ + -e "s|^multilib=.*|multilib=$(MULTILIB)|" FILE_T= luajit FILE_A= libluajit.a diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/README b/Build/source/libs/luajit/LuaJIT-2.0.3/README index d837fd2ff6d..902a6d2e40d 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/README +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/README @@ -1,11 +1,11 @@ -README for LuaJIT 2.0.2 +README for LuaJIT 2.0.3 ----------------------- LuaJIT is a Just-In-Time (JIT) compiler for the Lua programming language. Project Homepage: http://luajit.org/ -LuaJIT is Copyright (C) 2005-2013 Mike Pall. +LuaJIT is Copyright (C) 2005-2014 Mike Pall. LuaJIT is free software, released under the MIT license. See full Copyright Notice in the COPYRIGHT file or in luajit.h. diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/bluequad-print.css b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/bluequad-print.css index 41ae7575b6c..21da8688af0 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/bluequad-print.css +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/bluequad-print.css @@ -1,4 +1,4 @@ -/* Copyright (C) 2004-2013 Mike Pall. +/* Copyright (C) 2004-2014 Mike Pall. * * You are welcome to use the general ideas of this design for your own sites. * But please do not steal the stylesheet, the layout or the color scheme. diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/bluequad.css b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/bluequad.css index 5e8d5ce7729..05b092e4df6 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/bluequad.css +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/bluequad.css @@ -1,4 +1,4 @@ -/* Copyright (C) 2004-2013 Mike Pall. +/* Copyright (C) 2004-2014 Mike Pall. * * You are welcome to use the general ideas of this design for your own sites. * But please do not steal the stylesheet, the layout or the color scheme. diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/changes.html b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/changes.html index b3deeaf2e37..98412293973 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/changes.html +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/changes.html @@ -4,7 +4,7 @@ <title>LuaJIT Change History</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <meta name="Author" content="Mike Pall"> -<meta name="Copyright" content="Copyright (C) 2005-2013, Mike Pall"> +<meta name="Copyright" content="Copyright (C) 2005-2014, Mike Pall"> <meta name="Language" content="en"> <link rel="stylesheet" type="text/css" href="bluequad.css" media="screen"> <link rel="stylesheet" type="text/css" href="bluequad-print.css" media="print"> @@ -63,7 +63,7 @@ div.major { max-width: 600px; padding: 1em; margin: 1em 0 1em 0; } <div id="main"> <p> This is a list of changes between the released versions of LuaJIT.<br> -The current <span style="color: #0000c0;">stable version</span> is <strong>LuaJIT 2.0.2</strong>.<br> +The current <span style="color: #0000c0;">stable version</span> is <strong>LuaJIT 2.0.3</strong>.<br> </p> <p> Please check the @@ -72,6 +72,42 @@ to see whether newer versions are available. </p> <div class="major" style="background: #d0d0ff;"> +<h2 id="LuaJIT-2.0.3">LuaJIT 2.0.3 — 2014-03-12</h2> +<ul> +<li>Add PS4 port.</li> +<li>Add support for multilib distro builds.</li> +<li>Fix OSX build.</li> +<li>Fix MinGW build.</li> +<li>Fix Xbox 360 build.</li> +<li>Improve ULOAD forwarding for open upvalues.</li> +<li>Fix GC steps threshold handling when called by JIT-compiled code.</li> +<li>Fix argument checks for <tt>math.deg()</tt> and <tt>math.rad()</tt>.</li> +<li>Fix <tt>jit.flush(func|true)</tt>.</li> +<li>Respect <tt>jit.off(func)</tt> when returning to a function, too.</li> +<li>Fix compilation of <tt>string.byte(s, nil, n)</tt>.</li> +<li>Fix line number for relocated bytecode after closure fixup</li> +<li>Fix frame traversal for backtraces.</li> +<li>Fix ABC elimination.</li> +<li>Fix handling of redundant PHIs.</li> +<li>Fix snapshot restore for exit to function header.</li> +<li>Fix type punning alias analysis for constified pointers</li> +<li>Fix call unroll checks in the presence of metamethod frames.</li> +<li>Fix initial maxslot for down-recursive traces.</li> +<li>Prevent BASE register coalescing if parent uses <tt>IR_RETF</tt>.</li> +<li>Don't purge modified function from stack slots in <tt>BC_RET</tt>.</li> +<li>Fix recording of <tt>BC_VARG</tt>.</li> +<li>Don't access dangling reference to reallocated IR.</li> +<li>Fix frame depth display for bytecode dump in <tt>-jdump</tt>.</li> +<li>ARM: Fix register allocation when rematerializing FPRs.</li> +<li>x64: Fix store to upvalue for lightuserdata values.</li> +<li>FFI: Add missing GC steps for callback argument conversions.</li> +<li>FFI: Properly unload loaded DLLs.</li> +<li>FFI: Fix argument checks for <tt>ffi.string()</tt>.</li> +<li>FFI/x64: Fix passing of vector arguments to calls.</li> +<li>FFI: Rehash finalizer table after GC cycle, if needed.</li> +<li>FFI: Fix <tt>cts->L</tt> for cdata unsinking in snapshot restore.</li> +</ul> + <h2 id="LuaJIT-2.0.2">LuaJIT 2.0.2 — 2013-06-03</h2> <ul> <li>Fix memory access check for fast string interning.</li> @@ -882,7 +918,7 @@ This is the initial non-public release of LuaJIT. </div> <div id="foot"> <hr class="hide"> -Copyright © 2005-2013 Mike Pall +Copyright © 2005-2014 Mike Pall <span class="noprint"> · <a href="contact.html">Contact</a> diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/contact.html b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/contact.html index 4735faf440d..0483a829bdf 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/contact.html +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/contact.html @@ -4,7 +4,7 @@ <title>Contact</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <meta name="Author" content="Mike Pall"> -<meta name="Copyright" content="Copyright (C) 2005-2013, Mike Pall"> +<meta name="Copyright" content="Copyright (C) 2005-2014, Mike Pall"> <meta name="Language" content="en"> <link rel="stylesheet" type="text/css" href="bluequad.css" media="screen"> <link rel="stylesheet" type="text/css" href="bluequad-print.css" media="print"> @@ -84,7 +84,7 @@ xD("fyZKB8xv\"FJytmz8.KAB0u52D") <h2>Copyright</h2> <p> All documentation is -Copyright © 2005-2013 Mike Pall. +Copyright © 2005-2014 Mike Pall. </p> @@ -92,7 +92,7 @@ Copyright © 2005-2013 Mike Pall. </div> <div id="foot"> <hr class="hide"> -Copyright © 2005-2013 Mike Pall +Copyright © 2005-2014 Mike Pall <span class="noprint"> · <a href="contact.html">Contact</a> diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/ext_c_api.html b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/ext_c_api.html index c6feb8e16c5..48503361331 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/ext_c_api.html +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/ext_c_api.html @@ -4,7 +4,7 @@ <title>Lua/C API Extensions</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <meta name="Author" content="Mike Pall"> -<meta name="Copyright" content="Copyright (C) 2005-2013, Mike Pall"> +<meta name="Copyright" content="Copyright (C) 2005-2014, Mike Pall"> <meta name="Language" content="en"> <link rel="stylesheet" type="text/css" href="bluequad.css" media="screen"> <link rel="stylesheet" type="text/css" href="bluequad-print.css" media="print"> @@ -177,7 +177,7 @@ Also note that this mechanism is not without overhead. </div> <div id="foot"> <hr class="hide"> -Copyright © 2005-2013 Mike Pall +Copyright © 2005-2014 Mike Pall <span class="noprint"> · <a href="contact.html">Contact</a> diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/ext_ffi.html b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/ext_ffi.html index a146b055d8e..fa9ca971c1f 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/ext_ffi.html +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/ext_ffi.html @@ -4,7 +4,7 @@ <title>FFI Library</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <meta name="Author" content="Mike Pall"> -<meta name="Copyright" content="Copyright (C) 2005-2013, Mike Pall"> +<meta name="Copyright" content="Copyright (C) 2005-2014, Mike Pall"> <meta name="Language" content="en"> <link rel="stylesheet" type="text/css" href="bluequad.css" media="screen"> <link rel="stylesheet" type="text/css" href="bluequad-print.css" media="print"> @@ -320,7 +320,7 @@ without undue conversion penalties. </div> <div id="foot"> <hr class="hide"> -Copyright © 2005-2013 Mike Pall +Copyright © 2005-2014 Mike Pall <span class="noprint"> · <a href="contact.html">Contact</a> diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/ext_ffi_api.html b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/ext_ffi_api.html index 8b2555b568c..dcffcfa387f 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/ext_ffi_api.html +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/ext_ffi_api.html @@ -4,7 +4,7 @@ <title>ffi.* API Functions</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <meta name="Author" content="Mike Pall"> -<meta name="Copyright" content="Copyright (C) 2005-2013, Mike Pall"> +<meta name="Copyright" content="Copyright (C) 2005-2014, Mike Pall"> <meta name="Language" content="en"> <link rel="stylesheet" type="text/css" href="bluequad.css" media="screen"> <link rel="stylesheet" type="text/css" href="bluequad-print.css" media="print"> @@ -556,7 +556,7 @@ named <tt>i</tt>. </div> <div id="foot"> <hr class="hide"> -Copyright © 2005-2013 Mike Pall +Copyright © 2005-2014 Mike Pall <span class="noprint"> · <a href="contact.html">Contact</a> diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/ext_ffi_semantics.html b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/ext_ffi_semantics.html index 03229012ed5..7e5f70357de 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/ext_ffi_semantics.html +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/ext_ffi_semantics.html @@ -4,7 +4,7 @@ <title>FFI Semantics</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <meta name="Author" content="Mike Pall"> -<meta name="Copyright" content="Copyright (C) 2005-2013, Mike Pall"> +<meta name="Copyright" content="Copyright (C) 2005-2014, Mike Pall"> <meta name="Language" content="en"> <link rel="stylesheet" type="text/css" href="bluequad.css" media="screen"> <link rel="stylesheet" type="text/css" href="bluequad-print.css" media="print"> @@ -1188,7 +1188,9 @@ storing and initializing them are supported, yet.</li> <li>The <tt>volatile</tt> type qualifier is currently ignored by compiled code.</li> <li><a href="ext_ffi_api.html#ffi_cdef"><tt>ffi.cdef</tt></a> silently -ignores all re-declarations.</li> +ignores most re-declarations. Note: avoid re-declarations which do not +conform to C99. The implementation will eventually be changed to +perform strict checks.</li> </ul> <p> The JIT compiler already handles a large subset of all FFI operations. @@ -1233,7 +1235,7 @@ compiled.</li> </div> <div id="foot"> <hr class="hide"> -Copyright © 2005-2013 Mike Pall +Copyright © 2005-2014 Mike Pall <span class="noprint"> · <a href="contact.html">Contact</a> diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/ext_ffi_tutorial.html b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/ext_ffi_tutorial.html index 30213b31b08..01fb89929c4 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/ext_ffi_tutorial.html +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/ext_ffi_tutorial.html @@ -4,7 +4,7 @@ <title>FFI Tutorial</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <meta name="Author" content="Mike Pall"> -<meta name="Copyright" content="Copyright (C) 2005-2013, Mike Pall"> +<meta name="Copyright" content="Copyright (C) 2005-2014, Mike Pall"> <meta name="Language" content="en"> <link rel="stylesheet" type="text/css" href="bluequad.css" media="screen"> <link rel="stylesheet" type="text/css" href="bluequad-print.css" media="print"> @@ -591,7 +591,7 @@ it to a local variable in the function scope is unnecessary. </div> <div id="foot"> <hr class="hide"> -Copyright © 2005-2013 Mike Pall +Copyright © 2005-2014 Mike Pall <span class="noprint"> · <a href="contact.html">Contact</a> diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/ext_jit.html b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/ext_jit.html index cc00e72b1b0..098be5e06a5 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/ext_jit.html +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/ext_jit.html @@ -4,7 +4,7 @@ <title>jit.* Library</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <meta name="Author" content="Mike Pall"> -<meta name="Copyright" content="Copyright (C) 2005-2013, Mike Pall"> +<meta name="Copyright" content="Copyright (C) 2005-2014, Mike Pall"> <meta name="Language" content="en"> <link rel="stylesheet" type="text/css" href="bluequad.css" media="screen"> <link rel="stylesheet" type="text/css" href="bluequad-print.css" media="print"> @@ -189,7 +189,7 @@ if you want to know more. </div> <div id="foot"> <hr class="hide"> -Copyright © 2005-2013 Mike Pall +Copyright © 2005-2014 Mike Pall <span class="noprint"> · <a href="contact.html">Contact</a> diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/extensions.html b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/extensions.html index 8684dc32a06..20b597f132e 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/extensions.html +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/extensions.html @@ -4,7 +4,7 @@ <title>Extensions</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <meta name="Author" content="Mike Pall"> -<meta name="Copyright" content="Copyright (C) 2005-2013, Mike Pall"> +<meta name="Copyright" content="Copyright (C) 2005-2014, Mike Pall"> <meta name="Language" content="en"> <link rel="stylesheet" type="text/css" href="bluequad.css" media="screen"> <link rel="stylesheet" type="text/css" href="bluequad-print.css" media="print"> @@ -398,7 +398,7 @@ lead to the termination of the process.</li> </div> <div id="foot"> <hr class="hide"> -Copyright © 2005-2013 Mike Pall +Copyright © 2005-2014 Mike Pall <span class="noprint"> · <a href="contact.html">Contact</a> diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/faq.html b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/faq.html index c61b8dcf1fd..ffc2ae89973 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/faq.html +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/faq.html @@ -4,7 +4,7 @@ <title>Frequently Asked Questions (FAQ)</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <meta name="Author" content="Mike Pall"> -<meta name="Copyright" content="Copyright (C) 2005-2013, Mike Pall"> +<meta name="Copyright" content="Copyright (C) 2005-2014, Mike Pall"> <meta name="Language" content="en"> <link rel="stylesheet" type="text/css" href="bluequad.css" media="screen"> <link rel="stylesheet" type="text/css" href="bluequad-print.css" media="print"> @@ -174,7 +174,7 @@ the development of certain features, if they are important to you. </div> <div id="foot"> <hr class="hide"> -Copyright © 2005-2013 Mike Pall +Copyright © 2005-2014 Mike Pall <span class="noprint"> · <a href="contact.html">Contact</a> diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/img/contact.png b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/img/contact.png Binary files differindex 9c73dc594ef..9c73dc594ef 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/img/contact.png +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/img/contact.png diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/install.html b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/install.html index faf19c431b8..2388ff338e5 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/install.html +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/install.html @@ -4,7 +4,7 @@ <title>Installation</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <meta name="Author" content="Mike Pall"> -<meta name="Copyright" content="Copyright (C) 2005-2013, Mike Pall"> +<meta name="Copyright" content="Copyright (C) 2005-2014, Mike Pall"> <meta name="Language" content="en"> <link rel="stylesheet" type="text/css" href="bluequad.css" media="screen"> <link rel="stylesheet" type="text/css" href="bluequad-print.css" media="print"> @@ -120,7 +120,7 @@ operating systems, CPUs and compilers: <tr class="even"> <td class="compatcpu">x64 (64 bit)</td> <td class="compatos">GCC 4.x</td> -<td class="compatos compatno"> </td> +<td class="compatos">ORBIS (<a href="#ps4">PS4</a>)</td> <td class="compatos">GCC 4.x</td> <td class="compatos">MSVC + SDK v7.0<br>WinSDK v7.0</td> </tr> @@ -188,8 +188,8 @@ open a terminal window and change to this directory. Now unpack the archive and change to the newly created directory: </p> <pre class="code"> -tar zxf LuaJIT-2.0.2.tar.gz -cd LuaJIT-2.0.2</pre> +tar zxf LuaJIT-2.0.3.tar.gz +cd LuaJIT-2.0.3</pre> <h3>Building LuaJIT</h3> <p> The supplied Makefiles try to auto-detect the settings needed for your @@ -460,7 +460,7 @@ make HOST_CC="gcc -m32 -arch i386" CROSS=$ISDKP TARGET_FLAGS="$ISDKF" \ </pre> <p> You can cross-compile for <b id="ps3">PS3</b> using the PS3 SDK from -a Linux host or a Windows host (requires 32 bit MinGW (GCC) on the host, +a Linux host or a Windows host (requires 32 bit MinGW (GCC) on the host, too). Due to restrictions on consoles, the JIT compiler is disabled and only the fast interpreter is built: </p> @@ -468,6 +468,22 @@ only the fast interpreter is built: make HOST_CC="gcc -m32" CROSS=ppu-lv2- </pre> <p> +You can cross-compile for <b id="ps4">PS4</b> from a Windows host using +the PS4 SDK (ORBIS) plus 64 bit MSVC. Due to restrictions on +consoles, the JIT compiler is disabled and only the fast interpreter +is built. +</p> +<p> +Open a "Visual Studio .NET Command Prompt" (64 bit host compiler), +<tt>cd</tt> to the directory where you've unpacked the sources and run +the following commands. This builds a static library <tt>libluajit.a</tt>, +which can be linked against your game, just like the Lua library. +</p> +<pre class="code"> +cd src +ps4build +</pre> +<p> You can cross-compile for <b id="xbox360">Xbox 360</b> using the Xbox 360 SDK (MSVC + XEDK). Due to restrictions on consoles, the JIT compiler is disabled and only the fast interpreter is built. @@ -565,9 +581,11 @@ for a regular distribution build: <ul> <li><tt>PREFIX</tt> overrides the installation path and should usually be set to <tt>/usr</tt>. Setting this also changes the module paths and -the <tt>-rpath</tt> of the shared library.</li> +the paths needed to locate the shared library.</li> <li><tt>DESTDIR</tt> is an absolute path which allows you to install to a shadow tree instead of the root tree of the build system.</li> +<li><tt>MULTILIB</tt> sets the architecture-specific library path component +for multilib systems. The default is <tt>lib</tt>.</li> <li>Have a look at the top-level <tt>Makefile</tt> and <tt>src/Makefile</tt> for additional variables to tweak. The following variables <em>may</em> be overridden, but it's <em>not</em> recommended, except for special needs @@ -603,7 +621,7 @@ to me (the upstream) and not you (the package maintainer), anyway. </div> <div id="foot"> <hr class="hide"> -Copyright © 2005-2013 Mike Pall +Copyright © 2005-2014 Mike Pall <span class="noprint"> · <a href="contact.html">Contact</a> diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/luajit.html b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/luajit.html index e8581d3a030..43af69c9202 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/luajit.html +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/luajit.html @@ -4,7 +4,7 @@ <title>LuaJIT</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <meta name="Author" content="Mike Pall"> -<meta name="Copyright" content="Copyright (C) 2005-2013, Mike Pall"> +<meta name="Copyright" content="Copyright (C) 2005-2014, Mike Pall"> <meta name="Language" content="en"> <link rel="stylesheet" type="text/css" href="bluequad.css" media="screen"> <link rel="stylesheet" type="text/css" href="bluequad-print.css" media="print"> @@ -147,7 +147,7 @@ Lua is a powerful, dynamic and light-weight programming language. It may be embedded or used as a general-purpose, stand-alone language. </p> <p> -LuaJIT is Copyright © 2005-2013 Mike Pall, released under the +LuaJIT is Copyright © 2005-2014 Mike Pall, released under the <a href="http://www.opensource.org/licenses/mit-license.php"><span class="ext">»</span> MIT open source license</a>. </p> <p> @@ -158,7 +158,7 @@ LuaJIT is Copyright © 2005-2013 Mike Pall, released under the <tr><td>Windows</td><td>Linux</td><td>BSD</td><td>OSX</td><td>POSIX</td></tr> </table> <table class="feature os os2"> -<tr><td><span style="font-size:90%;">Embedded</span></td><td>Android</td><td>iOS</td><td>PS3</td><td>Xbox 360</td></tr> +<tr><td><span style="font-size:90%;">Embedded</span></td><td>Android</td><td>iOS</td><td>PS3</td><td>PS4</td><td>Xbox 360</td></tr> </table> <table class="feature compiler"> <tr><td>GCC</td><td>CLANG<br>LLVM</td><td>MSVC</td></tr> @@ -218,7 +218,7 @@ Please select a sub-topic in the navigation bar to learn more about LuaJIT. </div> <div id="foot"> <hr class="hide"> -Copyright © 2005-2013 Mike Pall +Copyright © 2005-2014 Mike Pall <span class="noprint"> · <a href="contact.html">Contact</a> diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/running.html b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/running.html index 3149b3818c6..c01c52d5ad0 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/running.html +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/running.html @@ -4,7 +4,7 @@ <title>Running LuaJIT</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <meta name="Author" content="Mike Pall"> -<meta name="Copyright" content="Copyright (C) 2005-2013, Mike Pall"> +<meta name="Copyright" content="Copyright (C) 2005-2014, Mike Pall"> <meta name="Language" content="en"> <link rel="stylesheet" type="text/css" href="bluequad.css" media="screen"> <link rel="stylesheet" type="text/css" href="bluequad-print.css" media="print"> @@ -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 <tt>lib</tt> directory of the source distribution or installed under the <tt>jit</tt> directory. By default -this is <tt>/usr/local/share/luajit-2.0.2/jit</tt> on POSIX +this is <tt>/usr/local/share/luajit-2.0.3/jit</tt> on POSIX systems. </p> @@ -296,7 +296,7 @@ Here are the parameters and their default settings: </div> <div id="foot"> <hr class="hide"> -Copyright © 2005-2013 Mike Pall +Copyright © 2005-2014 Mike Pall <span class="noprint"> · <a href="contact.html">Contact</a> diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/status.html b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/status.html index 3d148b0a86f..ddcaed33261 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/doc/status.html +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/doc/status.html @@ -4,7 +4,7 @@ <title>Status & Roadmap</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <meta name="Author" content="Mike Pall"> -<meta name="Copyright" content="Copyright (C) 2005-2013, Mike Pall"> +<meta name="Copyright" content="Copyright (C) 2005-2014, Mike Pall"> <meta name="Language" content="en"> <link rel="stylesheet" type="text/css" href="bluequad.css" media="screen"> <link rel="stylesheet" type="text/css" href="bluequad-print.css" media="print"> @@ -115,7 +115,7 @@ Please refer to the </div> <div id="foot"> <hr class="hide"> -Copyright © 2005-2013 Mike Pall +Copyright © 2005-2014 Mike Pall <span class="noprint"> · <a href="contact.html">Contact</a> diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_arm.h b/Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_arm.h index d83cbbb3391..435bbf5e17d 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_arm.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_arm.h @@ -1,6 +1,6 @@ /* ** DynASM ARM encoding engine. -** Copyright (C) 2005-2013 Mike Pall. All rights reserved. +** Copyright (C) 2005-2014 Mike Pall. All rights reserved. ** Released under the MIT license. See dynasm.lua for full copyright notice. */ diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_arm.lua b/Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_arm.lua index 9720e57cd31..b3a8827e399 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_arm.lua +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_arm.lua @@ -1,7 +1,7 @@ ------------------------------------------------------------------------------ -- DynASM ARM module. -- --- Copyright (C) 2005-2013 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2014 Mike Pall. All rights reserved. -- See dynasm.lua for full copyright notice. ------------------------------------------------------------------------------ diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_mips.h b/Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_mips.h index 0866beb8bf6..435958899f1 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_mips.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_mips.h @@ -1,6 +1,6 @@ /* ** DynASM MIPS encoding engine. -** Copyright (C) 2005-2013 Mike Pall. All rights reserved. +** Copyright (C) 2005-2014 Mike Pall. All rights reserved. ** Released under the MIT license. See dynasm.lua for full copyright notice. */ diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_mips.lua b/Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_mips.lua index 02ab9d5fe77..82942cbb591 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_mips.lua +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_mips.lua @@ -1,7 +1,7 @@ ------------------------------------------------------------------------------ -- DynASM MIPS module. -- --- Copyright (C) 2005-2013 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2014 Mike Pall. All rights reserved. -- See dynasm.lua for full copyright notice. ------------------------------------------------------------------------------ diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_ppc.h b/Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_ppc.h index 13c446110c6..5ccff250ffb 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_ppc.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_ppc.h @@ -1,6 +1,6 @@ /* ** DynASM PPC encoding engine. -** Copyright (C) 2005-2013 Mike Pall. All rights reserved. +** Copyright (C) 2005-2014 Mike Pall. All rights reserved. ** Released under the MIT license. See dynasm.lua for full copyright notice. */ diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_ppc.lua b/Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_ppc.lua index 65da317b8bd..61da50efbcf 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_ppc.lua +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_ppc.lua @@ -1,7 +1,7 @@ ------------------------------------------------------------------------------ -- DynASM PPC module. -- --- Copyright (C) 2005-2013 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2014 Mike Pall. All rights reserved. -- See dynasm.lua for full copyright notice. ------------------------------------------------------------------------------ diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_proto.h b/Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_proto.h index 960ddb72ec1..e77bb844557 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_proto.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_proto.h @@ -1,6 +1,6 @@ /* ** DynASM encoding engine prototypes. -** Copyright (C) 2005-2013 Mike Pall. All rights reserved. +** Copyright (C) 2005-2014 Mike Pall. All rights reserved. ** Released under the MIT license. See dynasm.lua for full copyright notice. */ diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_x64.lua b/Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_x64.lua index ca25823c0d1..91d676d1765 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_x64.lua +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_x64.lua @@ -1,7 +1,7 @@ ------------------------------------------------------------------------------ -- DynASM x64 module. -- --- Copyright (C) 2005-2013 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2014 Mike Pall. All rights reserved. -- See dynasm.lua for full copyright notice. ------------------------------------------------------------------------------ -- This module just sets 64 bit mode for the combined x86/x64 module. diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_x86.h b/Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_x86.h index c91bfdd53fa..97cbbea8934 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_x86.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_x86.h @@ -1,6 +1,6 @@ /* ** DynASM x86 encoding engine. -** Copyright (C) 2005-2013 Mike Pall. All rights reserved. +** Copyright (C) 2005-2014 Mike Pall. All rights reserved. ** Released under the MIT license. See dynasm.lua for full copyright notice. */ diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_x86.lua b/Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_x86.lua index 1f0981f3261..f3859e3e1da 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dasm_x86.lua +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dasm_x86.lua @@ -1,7 +1,7 @@ ------------------------------------------------------------------------------ -- DynASM x86/x64 module. -- --- Copyright (C) 2005-2013 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2014 Mike Pall. All rights reserved. -- See dynasm.lua for full copyright notice. ------------------------------------------------------------------------------ @@ -1040,7 +1040,7 @@ local map_op = { -- ED: *in Rdw,dx -- EE: *out dx,Rb -- EF: *out dx,Rdw - -- F0: *lock + lock_0 = "F0", int1_0 = "F1", repne_0 = "F2", repnz_0 = "F2", @@ -1678,7 +1678,7 @@ if x64 then function map_op.mov64_2(params) if not params then return { "reg, imm", "reg, [disp]", "[disp], reg" } end if secpos+2 > maxsecpos then wflush() end - local opcode, op64, sz, rex + local opcode, op64, sz, rex, vreg local op64 = match(params[1], "^%[%s*(.-)%s*%]$") if op64 then local a = parseoperand(params[2]) @@ -1699,11 +1699,17 @@ if x64 then werror("bad operand mode") end op64 = params[2] - opcode = 0xb8 + band(a.reg, 7) -- !x64: no VREG support. + if a.reg == -1 then + vreg = a.vreg + opcode = 0xb8 + else + opcode = 0xb8 + band(a.reg, 7) + end rex = a.reg > 7 and 9 or 8 end end wputop(sz, opcode, rex) + if vreg then waction("VREG", vreg); wputxb(0) end waction("IMM_D", format("(unsigned int)(%s)", op64)) waction("IMM_D", format("(unsigned int)((%s)>>32)", op64)) end diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dynasm.lua b/Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dynasm.lua index d670f8f8b30..0ea8697c07c 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/dynasm/dynasm.lua +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/dynasm/dynasm.lua @@ -2,7 +2,7 @@ -- DynASM. A dynamic assembler for code generation engines. -- Originally designed and implemented for LuaJIT. -- --- Copyright (C) 2005-2013 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2014 Mike Pall. All rights reserved. -- See below for full copyright notice. ------------------------------------------------------------------------------ @@ -17,7 +17,7 @@ local _info = { url = "http://luajit.org/dynasm.html", license = "MIT", copyright = [[ -Copyright (C) 2005-2013 Mike Pall. All rights reserved. +Copyright (C) 2005-2014 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 @@ -85,7 +85,7 @@ end -- Resync CPP line numbers. local function wsync() if g_synclineno ~= g_lineno and g_opt.cpp then - wline("# "..g_lineno..' "'..g_fname..'"') + wline("#line "..g_lineno..' "'..g_fname..'"') g_synclineno = g_lineno end end @@ -695,6 +695,9 @@ map_op[".arch_1"] = function(params) if not params then return "name" end local err = loadarch(params[1]) if err then wfatal(err) end + wline(format("#if DASM_VERSION != %d", _info.vernum)) + wline('#error "Version mismatch between DynASM and included encoding engine"') + wline("#endif") end -- Dummy .arch pseudo-opcode to improve the error report. @@ -877,13 +880,9 @@ local function dasmhead(out) ** DO NOT EDIT! The original file is in "%s". */ -#if DASM_VERSION != %d -#error "Version mismatch between DynASM and included encoding engine" -#endif - ]], _info.url, _info.version, g_arch._info.arch, g_arch._info.version, - g_fname, _info.vernum)) + g_fname)) end -- Read input file. diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/etc/luajit.1 b/Build/source/libs/luajit/LuaJIT-2.0.3/etc/luajit.1 index 6489bd3b532..723a708cc24 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/etc/luajit.1 +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/etc/luajit.1 @@ -74,7 +74,7 @@ luajit \-jv \-e "for i=1,10 do for j=1,10 do for k=1,100 do end end end" Runs some nested loops and shows the resulting traces. .SH COPYRIGHT .PP -\fBLuaJIT\fR is Copyright \(co 2005-2013 Mike Pall. +\fBLuaJIT\fR is Copyright \(co 2005-2014 Mike Pall. .br \fBLuaJIT\fR is open source software, released under the MIT license. .SH SEE ALSO diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/etc/luajit.pc b/Build/source/libs/luajit/LuaJIT-2.0.3/etc/luajit.pc index 5a982a627d2..d3f0cf30b42 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/etc/luajit.pc +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/etc/luajit.pc @@ -1,18 +1,19 @@ # Package information for LuaJIT to be used by pkg-config. majver=2 minver=0 -relver=2 +relver=3 version=${majver}.${minver}.${relver} abiver=5.1 prefix=/usr/local +multilib=lib exec_prefix=${prefix} -libdir=${exec_prefix}/lib +libdir=${exec_prefix}/${multilib} libname=luajit-${abiver} includedir=${prefix}/include/luajit-${majver}.${minver} INSTALL_LMOD=${prefix}/share/lua/${abiver} -INSTALL_CMOD=${prefix}/lib/lua/${abiver} +INSTALL_CMOD=${prefix}/${multilib}/lua/${abiver} Name: LuaJIT Description: Just-in-time compiler for Lua diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/Makefile b/Build/source/libs/luajit/LuaJIT-2.0.3/src/Makefile index f136e214551..818f3019257 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/Makefile +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/Makefile @@ -7,12 +7,12 @@ # Also works with MinGW and Cygwin on Windows. # Please check msvcbuild.bat for building with MSVC on Windows. # -# Copyright (C) 2005-2012 Mike Pall. See Copyright Notice in luajit.h +# Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h ############################################################################## MAJVER= 2 MINVER= 0 -RELVER= 2 +RELVER= 3 ABIVER= 5.1 NODOTABIVER= 51 @@ -188,9 +188,10 @@ TARGET_LD= $(CROSS)$(CC) TARGET_AR= $(CROSS)ar rcus TARGET_STRIP= $(CROSS)strip +TARGET_LIBPATH= $(or $(PREFIX),/usr/local)/$(or $(MULTILIB),lib) TARGET_SONAME= libluajit-$(ABIVER).so.$(MAJVER) TARGET_DYLIBNAME= libluajit-$(ABIVER).$(MAJVER).dylib -TARGET_DYLIBPATH= $(or $(PREFIX),/usr/local)/lib/$(TARGET_DYLIBNAME) +TARGET_DYLIBPATH= $(TARGET_LIBPATH)/$(TARGET_DYLIBNAME) TARGET_DLLNAME= lua$(NODOTABIVER).dll TARGET_XSHLDFLAGS= -shared -fPIC -Wl,-soname,$(TARGET_SONAME) TARGET_DYNXLDOPTS= @@ -249,12 +250,18 @@ TARGET_ARCH+= $(patsubst %,-DLUAJIT_TARGET=LUAJIT_ARCH_%,$(TARGET_LJARCH)) ifneq (,$(PREFIX)) ifneq (/usr/local,$(PREFIX)) - TARGET_XCFLAGS+= -DLUA_XROOT=\"$(PREFIX)/\" + TARGET_XCFLAGS+= -DLUA_ROOT=\"$(PREFIX)\" ifneq (/usr,$(PREFIX)) - TARGET_DYNXLDOPTS= -Wl,-rpath,$(PREFIX)/lib + TARGET_DYNXLDOPTS= -Wl,-rpath,$(TARGET_LIBPATH) endif endif endif +ifneq (,$(MULTILIB)) + TARGET_XCFLAGS+= -DLUA_MULTILIB=\"$(MULTILIB)\" +endif +ifneq (,$(LMULTILIB)) + TARGET_XCFLAGS+= -DLUA_LMULTILIB=\"$(LMULTILIB)\" +endif ############################################################################## # System detection. diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/Makefile.dep b/Build/source/libs/luajit/LuaJIT-2.0.3/src/Makefile.dep index d49d131b2e7..b155b81c681 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/Makefile.dep +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/Makefile.dep @@ -18,8 +18,8 @@ lib_ffi.o: lib_ffi.c lua.h luaconf.h lauxlib.h lualib.h lj_obj.h lj_def.h \ lj_ccallback.h lj_clib.h lj_ff.h lj_ffdef.h lj_lib.h lj_libdef.h lib_init.o: lib_init.c lua.h luaconf.h lauxlib.h lualib.h lj_arch.h lib_io.o: lib_io.c lua.h luaconf.h lauxlib.h lualib.h lj_obj.h lj_def.h \ - lj_arch.h lj_err.h lj_errmsg.h lj_str.h lj_state.h lj_ff.h lj_ffdef.h \ - lj_lib.h lj_libdef.h + lj_arch.h lj_gc.h lj_err.h lj_errmsg.h lj_str.h lj_state.h lj_ff.h \ + lj_ffdef.h lj_lib.h lj_libdef.h lib_jit.o: lib_jit.c lua.h luaconf.h lauxlib.h lualib.h lj_arch.h \ lj_obj.h lj_def.h lj_err.h lj_errmsg.h lj_debug.h lj_str.h lj_tab.h \ lj_bc.h lj_ir.h lj_jit.h lj_ircall.h lj_iropt.h lj_target.h \ @@ -130,8 +130,8 @@ lj_load.o: lj_load.c lua.h luaconf.h lauxlib.h lj_obj.h lj_def.h \ lj_arch.h lj_gc.h lj_err.h lj_errmsg.h lj_str.h lj_func.h lj_frame.h \ lj_bc.h lj_vm.h lj_lex.h lj_bcdump.h lj_parse.h lj_mcode.o: lj_mcode.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h \ - lj_gc.h lj_jit.h lj_ir.h lj_mcode.h lj_trace.h lj_dispatch.h lj_bc.h \ - lj_traceerr.h lj_vm.h + lj_gc.h lj_err.h lj_errmsg.h lj_jit.h lj_ir.h lj_mcode.h lj_trace.h \ + lj_dispatch.h lj_bc.h lj_traceerr.h lj_vm.h lj_meta.o: lj_meta.c lj_obj.h lua.h luaconf.h lj_def.h lj_arch.h lj_gc.h \ lj_err.h lj_errmsg.h lj_str.h lj_tab.h lj_meta.h lj_frame.h lj_bc.h \ lj_vm.h lj_strscan.h diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/host/README b/Build/source/libs/luajit/LuaJIT-2.0.3/src/host/README index abfcdaa76e9..abfcdaa76e9 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/host/README +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/host/README diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/host/buildvm.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/host/buildvm.c index 2ce3b638031..7687ad7ad0b 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/host/buildvm.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/host/buildvm.c @@ -1,6 +1,6 @@ /* ** LuaJIT VM builder. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h ** ** This is a tool to build the hand-tuned assembler code required for ** LuaJIT's bytecode interpreter. It supports a variety of output formats diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/host/buildvm.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/host/buildvm.h index 1a037e168f3..f9dc8c4f202 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/host/buildvm.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/host/buildvm.h @@ -1,6 +1,6 @@ /* ** LuaJIT VM builder. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _BUILDVM_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/host/buildvm_asm.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/host/buildvm_asm.c index f18d1493fb9..9b28b3b3846 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/host/buildvm_asm.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/host/buildvm_asm.c @@ -1,6 +1,6 @@ /* ** LuaJIT VM builder: Assembler source code emitter. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #include "buildvm.h" @@ -100,7 +100,7 @@ static void emit_asm_wordreloc(BuildCtx *ctx, uint8_t *p, int n, fprintf(ctx->fp, "\tblx %s\n", sym); } else if ((ins & 0x0e000000u) == 0x0a000000u) { fprintf(ctx->fp, "\t%s%.2s %s\n", (ins & 0x01000000u) ? "bl" : "b", - "eqnecsccmiplvsvchilsgeltgtle" + 2*(ins >> 28), sym); + &"eqnecsccmiplvsvchilsgeltgtle"[2*(ins >> 28)], sym); } else { fprintf(stderr, "Error: unsupported opcode %08x for %s symbol relocation.\n", diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/host/buildvm_fold.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/host/buildvm_fold.c index 085a4c345c1..7f5d9f2f186 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/host/buildvm_fold.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/host/buildvm_fold.c @@ -1,6 +1,6 @@ /* ** LuaJIT VM builder: IR folding hash table generator. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #include "buildvm.h" diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/host/buildvm_lib.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/host/buildvm_lib.c index 40141dfbc60..eafdab98178 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/host/buildvm_lib.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/host/buildvm_lib.c @@ -1,6 +1,6 @@ /* ** LuaJIT VM builder: library definition compiler. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #include "buildvm.h" diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/host/buildvm_peobj.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/host/buildvm_peobj.c index 1249445b028..138b04232d5 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/host/buildvm_peobj.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/host/buildvm_peobj.c @@ -1,6 +1,6 @@ /* ** LuaJIT VM builder: PE object emitter. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h ** ** Only used for building on Windows, since we cannot assume the presence ** of a suitable assembler. The host and target byte order must match. diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/host/genminilua.lua b/Build/source/libs/luajit/LuaJIT-2.0.3/src/host/genminilua.lua index e666f088a8c..04c55188720 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/host/genminilua.lua +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/host/genminilua.lua @@ -2,7 +2,7 @@ -- Lua script to generate a customized, minified version of Lua. -- The resulting 'minilua' is used for the build process of LuaJIT. ---------------------------------------------------------------------------- --- Copyright (C) 2005-2013 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2014 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- @@ -210,6 +210,7 @@ typedef unsigned __int64 U64; #else typedef unsigned long long U64; #endif +int _CRT_glob = 0; ]]}, {} local function preprocess(src) diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/host/minilua.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/host/minilua.c index 93e9273e462..aee192a710c 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/host/minilua.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/host/minilua.c @@ -27,6 +27,7 @@ typedef unsigned __int64 U64; #else typedef unsigned long long U64; #endif +int _CRT_glob = 0; #include <stddef.h> #include <stdarg.h> #include <limits.h> diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/bc.lua b/Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/bc.lua index cef4752467c..9df19c7bfee 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/bc.lua +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/bc.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT bytecode listing module. -- --- Copyright (C) 2005-2013 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2014 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- @@ -41,7 +41,7 @@ -- Cache some library functions and objects. local jit = require("jit") -assert(jit.version_num == 20002, "LuaJIT core/library version mismatch") +assert(jit.version_num == 20003, "LuaJIT core/library version mismatch") local jutil = require("jit.util") local vmdef = require("jit.vmdef") local bit = require("bit") diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/bcsave.lua b/Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/bcsave.lua index e6d566e534d..f55bda970be 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/bcsave.lua +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/bcsave.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT module to save/list bytecode. -- --- Copyright (C) 2005-2013 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2014 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- @@ -11,7 +11,7 @@ ------------------------------------------------------------------------------ local jit = require("jit") -assert(jit.version_num == 20002, "LuaJIT core/library version mismatch") +assert(jit.version_num == 20003, "LuaJIT core/library version mismatch") local bit = require("bit") -- Symbol name prefix for LuaJIT bytecode. diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/dis_arm.lua b/Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/dis_arm.lua index dc7ca71ff4d..b3d0ebc2c4c 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/dis_arm.lua +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/dis_arm.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT ARM disassembler module. -- --- Copyright (C) 2005-2013 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2014 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/Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/dis_mips.lua b/Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/dis_mips.lua index 830db409b6b..47a7a83bc0c 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/dis_mips.lua +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/dis_mips.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPS disassembler module. -- --- Copyright (C) 2005-2013 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2014 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/Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/dis_mipsel.lua b/Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/dis_mipsel.lua index 8a10c462359..d19de319334 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/dis_mipsel.lua +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/dis_mipsel.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT MIPSEL disassembler wrapper module. -- --- Copyright (C) 2005-2013 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2014 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/Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/dis_ppc.lua b/Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/dis_ppc.lua index 169a534c10b..cfaf982fadb 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/dis_ppc.lua +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/dis_ppc.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT PPC disassembler module. -- --- Copyright (C) 2005-2013 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2014 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/Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/dis_x64.lua b/Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/dis_x64.lua index 4a1894aceab..4f491695317 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/dis_x64.lua +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/dis_x64.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT x64 disassembler wrapper module. -- --- Copyright (C) 2005-2013 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2014 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/Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/dis_x86.lua b/Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/dis_x86.lua index c442a176b1b..0b865ab6ea8 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/dis_x86.lua +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/dis_x86.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT x86/x64 disassembler module. -- --- Copyright (C) 2005-2013 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2014 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/Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/dump.lua b/Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/dump.lua index 7441b74dbfd..556ce88300a 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/dump.lua +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/dump.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- LuaJIT compiler dump module. -- --- Copyright (C) 2005-2013 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2014 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- @@ -36,6 +36,7 @@ -- * m Dump the generated machine code. -- x Print each taken trace exit. -- X Print each taken trace exit and the contents of all registers. +-- a Print the IR of aborted traces, too. -- -- The output format can be set with the following characters: -- @@ -54,7 +55,7 @@ -- Cache some library functions and objects. local jit = require("jit") -assert(jit.version_num == 20002, "LuaJIT core/library version mismatch") +assert(jit.version_num == 20003, "LuaJIT core/library version mismatch") local jutil = require("jit.util") local vmdef = require("jit.vmdef") local funcinfo, funcbc = jutil.funcinfo, jutil.funcbc @@ -546,10 +547,8 @@ local function dump_trace(what, tr, func, pc, otr, oex) out:write("---- TRACE ", tr, " ", what) if otr then out:write(" ", otr, "/", oex) end out:write(" ", fmtfunc(func, pc), "\n") - recprefix = "" elseif what == "stop" or what == "abort" then out:write("---- TRACE ", tr, " ", what) - recprefix = nil if what == "abort" then out:write(" ", fmtfunc(func, pc), " -- ", fmterr(otr, oex), "\n") else diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/v.lua b/Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/v.lua index d7df71262b3..197e67c69e5 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/jit/v.lua +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/jit/v.lua @@ -1,7 +1,7 @@ ---------------------------------------------------------------------------- -- Verbose mode of the LuaJIT compiler. -- --- Copyright (C) 2005-2013 Mike Pall. All rights reserved. +-- Copyright (C) 2005-2014 Mike Pall. All rights reserved. -- Released under the MIT license. See Copyright Notice in luajit.h ---------------------------------------------------------------------------- -- @@ -59,7 +59,7 @@ -- Cache some library functions and objects. local jit = require("jit") -assert(jit.version_num == 20002, "LuaJIT core/library version mismatch") +assert(jit.version_num == 20003, "LuaJIT core/library version mismatch") local jutil = require("jit.util") local vmdef = require("jit.vmdef") local funcinfo, traceinfo = jutil.funcinfo, jutil.traceinfo diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lauxlib.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lauxlib.h index b6ed1a7d04a..b6ed1a7d04a 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lauxlib.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lauxlib.h diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lbitlib.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lbitlib.c index 5187bbff0dc..5187bbff0dc 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lbitlib.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lbitlib.c diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_aux.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_aux.c index 05fa6b1018a..1b01fe0705f 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_aux.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_aux.c @@ -1,6 +1,6 @@ /* ** Auxiliary library for the Lua/C API. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h ** ** Major parts taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_base.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_base.c index 070970ed71d..30e88f19d8f 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_base.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_base.c @@ -1,6 +1,6 @@ /* ** Base and coroutine library. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h ** ** Major portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2011 Lua.org, PUC-Rio. See Copyright Notice in lua.h diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_bit.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_bit.c index 93fead9232c..739924b09e5 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_bit.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_bit.c @@ -1,6 +1,6 @@ /* ** Bit manipulation library. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #define lib_bit_c diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_debug.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_debug.c index 38e60543672..97f032f11e1 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_debug.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_debug.c @@ -1,6 +1,6 @@ /* ** Debug library. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h ** ** Major portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_ffi.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_ffi.c index f61fabc0491..e789ad6c33c 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_ffi.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_ffi.c @@ -1,6 +1,6 @@ /* ** FFI library. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #define lib_ffi_c @@ -657,7 +657,7 @@ LJLIB_CF(ffi_string) LJLIB_REC(.) TValue *o = lj_lib_checkany(L, 1); const char *p; size_t len; - if (o+1 < L->top) { + if (o+1 < L->top && !tvisnil(o+1)) { len = (size_t)ffi_checkint(L, 2); lj_cconv_ct_tv(cts, ctype_get(cts, CTID_P_CVOID), (uint8_t *)&p, o, CCF_ARG(1)); diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_init.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_init.c index 90ce8b4a008..c1b6115e35c 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_init.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_init.c @@ -1,6 +1,6 @@ /* ** Library initialization. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h ** ** Major parts taken verbatim from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_io.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_io.c index e0c6908faeb..04f0f7390f3 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_io.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_io.c @@ -1,6 +1,6 @@ /* ** I/O library. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h ** ** Major portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2011 Lua.org, PUC-Rio. See Copyright Notice in lua.h @@ -426,7 +426,7 @@ LJLIB_CF(io_popen) LJLIB_CF(io_tmpfile) { IOFileUD *iof = io_file_new(L); -#if LJ_TARGET_PS3 +#if LJ_TARGET_PS3 || LJ_TARGET_PS4 iof->fp = NULL; errno = ENOSYS; #else iof->fp = tmpfile(); diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_jit.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_jit.c index 82e68258f3a..0fadf8b9efe 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_jit.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_jit.c @@ -1,6 +1,6 @@ /* ** JIT library. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #define lib_jit_c @@ -73,7 +73,7 @@ LJLIB_CF(jit_off) LJLIB_CF(jit_flush) { #if LJ_HASJIT - if (L->base < L->top && !tvisnil(L->base)) { + if (L->base < L->top && tvisnumber(L->base)) { int traceno = lj_lib_checkint(L, 1); luaJIT_setmode(L, traceno, LUAJIT_MODE_FLUSH|LUAJIT_MODE_TRACE); return 0; diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_math.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_math.c index b23d9a2dc07..3aa5c6b01bd 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_math.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_math.c @@ -1,6 +1,6 @@ /* ** Math library. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #include <math.h> @@ -47,6 +47,12 @@ LJLIB_ASM_(math_tanh) LJLIB_REC(math_htrig IRCALL_tanh) LJLIB_ASM_(math_frexp) LJLIB_ASM_(math_modf) LJLIB_REC(.) +LJLIB_PUSH(57.29577951308232) +LJLIB_ASM_(math_deg) LJLIB_REC(math_degrad) + +LJLIB_PUSH(0.017453292519943295) +LJLIB_ASM_(math_rad) LJLIB_REC(math_degrad) + LJLIB_ASM(math_log) LJLIB_REC(math_log) { double x = lj_lib_checknum(L, 1); @@ -63,12 +69,6 @@ LJLIB_ASM(math_log) LJLIB_REC(math_log) return FFH_RETRY; } -LJLIB_PUSH(57.29577951308232) -LJLIB_ASM_(math_deg) LJLIB_REC(math_degrad) - -LJLIB_PUSH(0.017453292519943295) -LJLIB_ASM_(math_rad) LJLIB_REC(math_degrad) - LJLIB_ASM(math_atan2) LJLIB_REC(.) { lj_lib_checknum(L, 1); diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_os.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_os.c index 0a784129098..f62e8c8bb2e 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_os.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_os.c @@ -1,6 +1,6 @@ /* ** OS library. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h ** ** Major portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h @@ -70,7 +70,7 @@ LJLIB_CF(os_rename) LJLIB_CF(os_tmpname) { -#if LJ_TARGET_PS3 +#if LJ_TARGET_PS3 || LJ_TARGET_PS4 lj_err_caller(L, LJ_ERR_OSUNIQF); return 0; #else diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_package.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_package.c index 17c7c3591fb..0e4a8ed0641 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_package.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_package.c @@ -1,6 +1,6 @@ /* ** Package library. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h ** ** Major portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2012 Lua.org, PUC-Rio. See Copyright Notice in lua.h @@ -68,9 +68,6 @@ static const char *ll_bcsym(void *lib, const char *sym) #elif LJ_TARGET_WINDOWS #define WIN32_LEAN_AND_MEAN -#ifndef WINVER -#define WINVER 0x0500 -#endif #include <windows.h> #ifndef GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_string.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_string.c index 9e8ab900fd2..9ec6d0c3d18 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_string.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_string.c @@ -1,6 +1,6 @@ /* ** String library. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h ** ** Major portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h @@ -64,7 +64,7 @@ LJLIB_ASM(string_byte) LJLIB_REC(string_range 0) LJLIB_ASM(string_char) { int i, nargs = (int)(L->top - L->base); - char *buf = lj_str_needbuf(L, &G(L)->tmpbuf, (size_t)nargs); + char *buf = lj_str_needbuf(L, &G(L)->tmpbuf, (MSize)nargs); for (i = 1; i <= nargs; i++) { int32_t k = lj_lib_checkint(L, i); if (!checku8(k)) diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_table.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_table.c index 542ed1f8641..e0e8302fcc9 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lib_table.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lib_table.c @@ -1,6 +1,6 @@ /* ** Table library. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h ** ** Major portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj.supp b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj.supp index 411f2617001..411f2617001 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj.supp +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj.supp diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_alloc.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_alloc.c index 93bf5a6e171..f856a7a017f 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_alloc.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_alloc.c @@ -177,7 +177,7 @@ static LJ_AINLINE int CALL_MUNMAP(void *ptr, size_t size) #if LJ_64 /* 64 bit mode needs special support for allocating memory in the lower 2GB. */ -#if LJ_TARGET_LINUX +#if defined(MAP_32BIT) /* Actually this only gives us max. 1GB in current Linux kernels. */ static LJ_AINLINE void *CALL_MMAP(size_t size) @@ -188,8 +188,7 @@ static LJ_AINLINE void *CALL_MMAP(size_t size) return ptr; } -#elif LJ_TARGET_OSX || defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || \ - defined(__NetBSD__) || defined(__OpenBSD__) || defined(__sun__) +#elif LJ_TARGET_OSX || LJ_TARGET_PS4 || defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__sun__) /* OSX and FreeBSD mmap() use a naive first-fit linear search. ** That's perfect for us. Except that -pagezero_size must be set for OSX, @@ -198,12 +197,14 @@ static LJ_AINLINE void *CALL_MMAP(size_t size) */ #if LJ_TARGET_OSX #define MMAP_REGION_START ((uintptr_t)0x10000) +#elif LJ_TARGET_PS4 +#define MMAP_REGION_START ((uintptr_t)0x4000) #else #define MMAP_REGION_START ((uintptr_t)0x10000000) #endif #define MMAP_REGION_END ((uintptr_t)0x80000000) -#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) +#if (defined(__FreeBSD__) || defined(__FreeBSD_kernel__)) && !LJ_TARGET_PS4 #include <sys/resource.h> #endif @@ -213,7 +214,7 @@ static LJ_AINLINE void *CALL_MMAP(size_t size) /* Hint for next allocation. Doesn't need to be thread-safe. */ static uintptr_t alloc_hint = MMAP_REGION_START; int retry = 0; -#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) +#if (defined(__FreeBSD__) || defined(__FreeBSD_kernel__)) && !LJ_TARGET_PS4 static int rlimit_modified = 0; if (LJ_UNLIKELY(rlimit_modified == 0)) { struct rlimit rlim; diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_alloc.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_alloc.h index f87a7cf3422..f87a7cf3422 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_alloc.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_alloc.h diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_api.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_api.c index edb2d620dab..bc5290b241f 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_api.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_api.c @@ -1,6 +1,6 @@ /* ** Public Lua/C API. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h ** ** Major portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h @@ -1164,7 +1164,7 @@ LUA_API int lua_gc(lua_State *L, int what, int data) MSize a = (MSize)data << 10; g->gc.threshold = (a <= g->gc.total) ? (g->gc.total - a) : 0; while (g->gc.total >= g->gc.threshold) - if (lj_gc_step(L)) { + if (lj_gc_step(L) > 0) { res = 1; break; } diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_arch.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_arch.h index 9ea10d0f5eb..0196eedc0ca 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_arch.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_arch.h @@ -1,6 +1,6 @@ /* ** Target architecture selection. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_ARCH_H @@ -66,8 +66,8 @@ #define LUAJIT_OS LUAJIT_OS_LINUX #elif defined(__MACH__) && defined(__APPLE__) #define LUAJIT_OS LUAJIT_OS_OSX -#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || \ - defined(__NetBSD__) || defined(__OpenBSD__) +#elif (defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || \ + defined(__NetBSD__) || defined(__OpenBSD__)) && !defined(__ORBIS__) #define LUAJIT_OS LUAJIT_OS_BSD #elif (defined(__sun__) && defined(__svr4__)) || defined(__CYGWIN__) #define LUAJIT_OS LUAJIT_OS_POSIX @@ -104,6 +104,13 @@ #define LJ_TARGET_CONSOLE 1 #endif +#ifdef __ORBIS__ +#define LJ_TARGET_PS4 1 +#define LJ_TARGET_CONSOLE 1 +#undef NULL +#define NULL ((void*)0) +#endif + #if _XBOX_VER >= 200 #define LJ_TARGET_XBOX360 1 #define LJ_TARGET_CONSOLE 1 diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_asm.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_asm.c index 316e81d6a85..264649aeb1c 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_asm.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_asm.c @@ -1,6 +1,6 @@ /* ** IR assembler (SSA IR -> machine code). -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #define lj_asm_c @@ -1246,16 +1246,18 @@ static void asm_phi_fixup(ASMState *as) Reg r = rset_picktop(work); IRRef lref = as->phireg[r]; IRIns *ir = IR(lref); - /* Left PHI gained a spill slot before the loop? */ - if (irt_ismarked(ir->t) && ra_hasspill(ir->s)) { - IRRef ren; - lj_ir_set(as->J, IRT(IR_RENAME, IRT_NIL), lref, as->loopsnapno); - ren = tref_ref(lj_ir_emit(as->J)); - as->ir = as->T->ir; /* The IR may have been reallocated. */ - IR(ren)->r = (uint8_t)r; - IR(ren)->s = SPS_NONE; + if (irt_ismarked(ir->t)) { + irt_clearmark(ir->t); + /* Left PHI gained a spill slot before the loop? */ + if (ra_hasspill(ir->s)) { + IRRef ren; + lj_ir_set(as->J, IRT(IR_RENAME, IRT_NIL), lref, as->loopsnapno); + ren = tref_ref(lj_ir_emit(as->J)); + as->ir = as->T->ir; /* The IR may have been reallocated. */ + IR(ren)->r = (uint8_t)r; + IR(ren)->s = SPS_NONE; + } } - irt_clearmark(ir->t); /* Always clear marker. */ rset_clear(work, r); } } diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_asm.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_asm.h index a88e7da3c6c..f5d0159b1e4 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_asm.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_asm.h @@ -1,6 +1,6 @@ /* ** IR assembler (SSA IR -> machine code). -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_ASM_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_asm_arm.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_asm_arm.h index a66573c0a3b..72f205d90ab 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_asm_arm.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_asm_arm.h @@ -1,6 +1,6 @@ /* ** ARM IR assembler (SSA IR -> machine code). -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ /* -- Register allocator extensions --------------------------------------- */ @@ -493,6 +493,7 @@ static void asm_retf(ASMState *as, IRIns *ir) int32_t delta = 1+bc_a(*((const BCIns *)pc - 1)); as->topslot -= (BCReg)delta; if ((int32_t)as->topslot < 0) as->topslot = 0; + irt_setmark(IR(REF_BASE)->t); /* Children must not coalesce with BASE reg. */ /* Need to force a spill on REF_BASE now to update the stack slot. */ emit_lso(as, ARMI_STR, base, RID_SP, ra_spill(as, IR(REF_BASE))); emit_setgl(as, base, jit_base); @@ -521,10 +522,10 @@ static void asm_tointg(ASMState *as, IRIns *ir, Reg left) static void asm_tobit(ASMState *as, IRIns *ir) { RegSet allow = RSET_FPR; - Reg dest = ra_dest(as, ir, RSET_GPR); Reg left = ra_alloc1(as, ir->op1, allow); Reg right = ra_alloc1(as, ir->op2, rset_clear(allow, left)); Reg tmp = ra_scratch(as, rset_clear(allow, right)); + Reg dest = ra_dest(as, ir, RSET_GPR); emit_dn(as, ARMI_VMOV_R_S, dest, (tmp & 15)); emit_dnm(as, ARMI_VADD_D, (tmp & 15), (left & 15), (right & 15)); } @@ -564,9 +565,9 @@ static void asm_conv(ASMState *as, IRIns *ir) lua_assert(irt_isint(ir->t) && st == IRT_NUM); asm_tointg(as, ir, ra_alloc1(as, lref, RSET_FPR)); } else { - Reg dest = ra_dest(as, ir, RSET_GPR); Reg left = ra_alloc1(as, lref, RSET_FPR); Reg tmp = ra_scratch(as, rset_exclude(RSET_FPR, left)); + Reg dest = ra_dest(as, ir, RSET_GPR); ARMIns ai; emit_dn(as, ARMI_VMOV_R_S, dest, (tmp & 15)); ai = irt_isint(ir->t) ? @@ -1210,6 +1211,9 @@ static void asm_sload(ASMState *as, IRIns *ir) } else #endif if (ra_used(ir)) { + Reg tmp = RID_NONE; + if ((ir->op2 & IRSLOAD_CONVERT)) + tmp = ra_scratch(as, t == IRT_INT ? RSET_FPR : RSET_GPR); lua_assert((LJ_SOFTFP ? 0 : irt_isnum(ir->t)) || irt_isint(ir->t) || irt_isaddr(ir->t)); dest = ra_dest(as, ir, (!LJ_SOFTFP && t == IRT_NUM) ? RSET_FPR : allow); @@ -1217,18 +1221,15 @@ static void asm_sload(ASMState *as, IRIns *ir) base = ra_alloc1(as, REF_BASE, allow); if ((ir->op2 & IRSLOAD_CONVERT)) { if (t == IRT_INT) { - Reg tmp = ra_scratch(as, RSET_FPR); emit_dn(as, ARMI_VMOV_R_S, dest, (tmp & 15)); emit_dm(as, ARMI_VCVT_S32_F64, (tmp & 15), (tmp & 15)); - dest = tmp; t = IRT_NUM; /* Check for original type. */ } else { - Reg tmp = ra_scratch(as, RSET_GPR); emit_dm(as, ARMI_VCVT_F64_S32, (dest & 15), (dest & 15)); emit_dn(as, ARMI_VMOV_S_R, tmp, (dest & 15)); - dest = tmp; t = IRT_INT; /* Check for original type. */ } + dest = tmp; } goto dotypecheck; } @@ -1503,7 +1504,7 @@ static void asm_intmul(ASMState *as, IRIns *ir) if (dest == left && left != right) { left = right; right = dest; } if (irt_isguard(ir->t)) { /* IR_MULOV */ if (!(as->flags & JIT_F_ARMV6) && dest == left) - tmp = left = ra_scratch(as, rset_exclude(RSET_FPR, left)); + tmp = left = ra_scratch(as, rset_exclude(RSET_GPR, left)); asm_guardcc(as, CC_NE); emit_nm(as, ARMI_TEQ|ARMF_SH(ARMSH_ASR, 31), RID_TMP, dest); emit_dnm(as, ARMI_SMULL|ARMF_S(right), dest, RID_TMP, left); @@ -2102,7 +2103,8 @@ static void asm_head_root_base(ASMState *as) IRIns *ir; asm_head_lreg(as); ir = IR(REF_BASE); - if (ra_hasreg(ir->r) && rset_test(as->modset, ir->r)) ra_spill(as, ir); + if (ra_hasreg(ir->r) && (rset_test(as->modset, ir->r) || irt_ismarked(ir->t))) + ra_spill(as, ir); ra_destreg(as, ir, RID_BASE); } @@ -2112,7 +2114,8 @@ static RegSet asm_head_side_base(ASMState *as, IRIns *irp, RegSet allow) IRIns *ir; asm_head_lreg(as); ir = IR(REF_BASE); - if (ra_hasreg(ir->r) && rset_test(as->modset, ir->r)) ra_spill(as, ir); + if (ra_hasreg(ir->r) && (rset_test(as->modset, ir->r) || irt_ismarked(ir->t))) + ra_spill(as, ir); if (ra_hasspill(irp->s)) { rset_clear(allow, ra_dest(as, ir, allow)); } else { diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_asm_mips.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_asm_mips.h index 9fe7c9c3348..e5c67b53e2a 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_asm_mips.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_asm_mips.h @@ -1,6 +1,6 @@ /* ** MIPS IR assembler (SSA IR -> machine code). -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ /* -- Register allocator extensions --------------------------------------- */ @@ -394,6 +394,7 @@ static void asm_retf(ASMState *as, IRIns *ir) int32_t delta = 1+bc_a(*((const BCIns *)pc - 1)); as->topslot -= (BCReg)delta; if ((int32_t)as->topslot < 0) as->topslot = 0; + irt_setmark(IR(REF_BASE)->t); /* Children must not coalesce with BASE reg. */ emit_setgl(as, base, jit_base); emit_addptr(as, base, -8*delta); asm_guard(as, MIPSI_BNE, RID_TMP, @@ -1723,7 +1724,7 @@ static void asm_head_root_base(ASMState *as) if (as->loopinv) as->mctop--; if (ra_hasreg(r)) { ra_free(as, r); - if (rset_test(as->modset, r)) + if (rset_test(as->modset, r) || irt_ismarked(ir->t)) ir->r = RID_INIT; /* No inheritance for modified BASE register. */ if (r != RID_BASE) emit_move(as, r, RID_BASE); @@ -1738,7 +1739,7 @@ static RegSet asm_head_side_base(ASMState *as, IRIns *irp, RegSet allow) if (as->loopinv) as->mctop--; if (ra_hasreg(r)) { ra_free(as, r); - if (rset_test(as->modset, r)) + if (rset_test(as->modset, r) || irt_ismarked(ir->t)) ir->r = RID_INIT; /* No inheritance for modified BASE register. */ if (irp->r == r) { rset_clear(allow, r); /* Mark same BASE register as coalesced. */ diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_asm_ppc.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_asm_ppc.h index 651fa3187a1..e1a496a7e0c 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_asm_ppc.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_asm_ppc.h @@ -1,6 +1,6 @@ /* ** PPC IR assembler (SSA IR -> machine code). -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ /* -- Register allocator extensions --------------------------------------- */ @@ -381,6 +381,7 @@ static void asm_retf(ASMState *as, IRIns *ir) int32_t delta = 1+bc_a(*((const BCIns *)pc - 1)); as->topslot -= (BCReg)delta; if ((int32_t)as->topslot < 0) as->topslot = 0; + irt_setmark(IR(REF_BASE)->t); /* Children must not coalesce with BASE reg. */ emit_setgl(as, base, jit_base); emit_addptr(as, base, -8*delta); asm_guardcc(as, CC_NE); @@ -1901,7 +1902,7 @@ static void asm_head_root_base(ASMState *as) Reg r = ir->r; if (ra_hasreg(r)) { ra_free(as, r); - if (rset_test(as->modset, r)) + if (rset_test(as->modset, r) || irt_ismarked(ir->t)) ir->r = RID_INIT; /* No inheritance for modified BASE register. */ if (r != RID_BASE) emit_mr(as, r, RID_BASE); @@ -1915,7 +1916,7 @@ static RegSet asm_head_side_base(ASMState *as, IRIns *irp, RegSet allow) Reg r = ir->r; if (ra_hasreg(r)) { ra_free(as, r); - if (rset_test(as->modset, r)) + if (rset_test(as->modset, r) || irt_ismarked(ir->t)) ir->r = RID_INIT; /* No inheritance for modified BASE register. */ if (irp->r == r) { rset_clear(allow, r); /* Mark same BASE register as coalesced. */ diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_asm_x86.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_asm_x86.h index 64441ccb7a0..fda911e50f2 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_asm_x86.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_asm_x86.h @@ -1,6 +1,6 @@ /* ** x86/x64 IR assembler (SSA IR -> machine code). -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ /* -- Guard handling ------------------------------------------------------ */ @@ -647,6 +647,7 @@ static void asm_retf(ASMState *as, IRIns *ir) int32_t delta = 1+bc_a(*((const BCIns *)pc - 1)); as->topslot -= (BCReg)delta; if ((int32_t)as->topslot < 0) as->topslot = 0; + irt_setmark(IR(REF_BASE)->t); /* Children must not coalesce with BASE reg. */ emit_setgl(as, base, jit_base); emit_addptr(as, base, -8*delta); asm_guardcc(as, CC_NE); @@ -2481,7 +2482,7 @@ static void asm_head_root_base(ASMState *as) Reg r = ir->r; if (ra_hasreg(r)) { ra_free(as, r); - if (rset_test(as->modset, r)) + if (rset_test(as->modset, r) || irt_ismarked(ir->t)) ir->r = RID_INIT; /* No inheritance for modified BASE register. */ if (r != RID_BASE) emit_rr(as, XO_MOV, r, RID_BASE); @@ -2495,7 +2496,7 @@ static RegSet asm_head_side_base(ASMState *as, IRIns *irp, RegSet allow) Reg r = ir->r; if (ra_hasreg(r)) { ra_free(as, r); - if (rset_test(as->modset, r)) + if (rset_test(as->modset, r) || irt_ismarked(ir->t)) ir->r = RID_INIT; /* No inheritance for modified BASE register. */ if (irp->r == r) { rset_clear(allow, r); /* Mark same BASE register as coalesced. */ diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_bc.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_bc.c index 1e5869e6e1a..d5d3d78db8c 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_bc.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_bc.c @@ -1,6 +1,6 @@ /* ** Bytecode instruction modes. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #define lj_bc_c diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_bc.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_bc.h index 56e71dd9dcb..1a4ade3175d 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_bc.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_bc.h @@ -1,6 +1,6 @@ /* ** Bytecode instruction format. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_BC_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_bcdump.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_bcdump.h index e660156d68b..77a789e9eb7 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_bcdump.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_bcdump.h @@ -1,6 +1,6 @@ /* ** Bytecode dump definitions. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_BCDUMP_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_bcread.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_bcread.c index 2b5ba85533c..c0baece4605 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_bcread.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_bcread.c @@ -1,6 +1,6 @@ /* ** Bytecode reader. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #define lj_bcread_c diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_bcwrite.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_bcwrite.c index 4805d515f3a..dcdaa10a632 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_bcwrite.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_bcwrite.c @@ -1,6 +1,6 @@ /* ** Bytecode writer. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #define lj_bcwrite_c diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_carith.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_carith.c index afe7e6821d4..9f94091d488 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_carith.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_carith.c @@ -1,6 +1,6 @@ /* ** C data arithmetic. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #include "lj_obj.h" diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_carith.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_carith.h index ae17df00685..8b28556d8cf 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_carith.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_carith.h @@ -1,6 +1,6 @@ /* ** C data arithmetic. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_CARITH_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ccall.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ccall.c index eb73604f6ed..70c9ba5ec1c 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ccall.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ccall.c @@ -1,6 +1,6 @@ /* ** FFI C call handling. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #include "lj_obj.h" @@ -173,9 +173,10 @@ #define CCALL_HANDLE_REGARG \ if (isfp) { /* Try to pass argument in FPRs. */ \ - if (nfpr + n <= CCALL_NARG_FPR) { \ + int n2 = ctype_isvector(d->info) ? 1 : n; \ + if (nfpr + n2 <= CCALL_NARG_FPR) { \ dp = &cc->fpr[nfpr]; \ - nfpr += n; \ + nfpr += n2; \ goto done; \ } \ } else { /* Try to pass argument in GPRs. */ \ diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ccall.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ccall.h index 1afeed75b20..c3ea9e6f985 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ccall.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ccall.h @@ -1,6 +1,6 @@ /* ** FFI C call handling. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_CCALL_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ccallback.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ccallback.c index 0010992323e..d872d671514 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ccallback.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ccallback.c @@ -1,6 +1,6 @@ /* ** FFI C callback handling. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #include "lj_obj.h" @@ -408,6 +408,7 @@ static void callback_conv_args(CTState *cts, lua_State *L) intptr_t *stack = cts->cb.stack; MSize slot = cts->cb.slot; CTypeID id = 0, rid, fid; + int gcsteps = 0; CType *ct; GCfunc *fn; MSize ngpr = 0, nsp = 0, maxgpr = CCALL_NARG_GPR; @@ -475,7 +476,7 @@ static void callback_conv_args(CTState *cts, lua_State *L) done: if (LJ_BE && cta->size < CTSIZE_PTR) sp = (void *)((uint8_t *)sp + CTSIZE_PTR-cta->size); - lj_cconv_tv_ct(cts, cta, 0, o++, sp); + gcsteps += lj_cconv_tv_ct(cts, cta, 0, o++, sp); } fid = ctf->sib; } @@ -485,6 +486,8 @@ static void callback_conv_args(CTState *cts, lua_State *L) if (ctype_cconv(ct->info) != CTCC_CDECL) (L->base-2)->u32.hi |= (nsp << (16+2)); #endif + while (gcsteps-- > 0) + lj_gc_check(L); } /* Convert Lua object to callback result. */ diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ccallback.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ccallback.h index ac11d7b66d2..45b5ff02d5e 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ccallback.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ccallback.h @@ -1,6 +1,6 @@ /* ** FFI C callback handling. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_CCALLBACK_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_cconv.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_cconv.c index 337382f5f2b..de4938e4fc6 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_cconv.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_cconv.c @@ -1,6 +1,6 @@ /* ** C type conversions. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #include "lj_obj.h" diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_cconv.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_cconv.h index 5e95d2e930d..17e0f050e46 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_cconv.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_cconv.h @@ -1,6 +1,6 @@ /* ** C type conversions. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_CCONV_H @@ -29,7 +29,7 @@ static LJ_AINLINE uint32_t cconv_idx(CTInfo info) uint32_t idx = ((info >> 26) & 15u); /* Dispatch bits. */ lua_assert(ctype_type(info) <= CT_MAYCONVERT); #if LJ_64 - idx = ((U64x(f436fff5,fff7f021) >> 4*idx) & 15u); + idx = ((uint32_t)(U64x(f436fff5,fff7f021) >> 4*idx) & 15u); #else idx = (((idx < 8 ? 0xfff7f021u : 0xf436fff5) >> 4*(idx & 7u)) & 15u); #endif diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_cdata.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_cdata.c index 10f4809c118..590ddf106c3 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_cdata.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_cdata.c @@ -1,6 +1,6 @@ /* ** C data management. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #include "lj_obj.h" diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_cdata.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_cdata.h index 0c81b02b7fd..6c8e7a1ad41 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_cdata.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_cdata.h @@ -1,6 +1,6 @@ /* ** C data management. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_CDATA_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_char.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_char.c index 11f23efe44d..11f23efe44d 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_char.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_char.c diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_char.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_char.h index c3c86d34b1d..c3c86d34b1d 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_char.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_char.h diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_clib.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_clib.c index 23d1f18224d..ccb99e55a4d 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_clib.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_clib.c @@ -1,6 +1,6 @@ /* ** FFI C library loader. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #include "lj_obj.h" @@ -144,9 +144,6 @@ static void *clib_getsym(CLibrary *cl, const char *name) #elif LJ_TARGET_WINDOWS #define WIN32_LEAN_AND_MEAN -#ifndef WINVER -#define WINVER 0x0500 -#endif #include <windows.h> #ifndef GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS @@ -220,7 +217,7 @@ static void clib_unloadlib(CLibrary *cl) FreeLibrary((HINSTANCE)h); } } - } else if (!cl->handle) { + } else if (cl->handle) { FreeLibrary((HINSTANCE)cl->handle); } } diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_clib.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_clib.h index 421388adebc..47373288219 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_clib.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_clib.h @@ -1,6 +1,6 @@ /* ** FFI C library loader. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_CLIB_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_cparse.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_cparse.c index 107c0381d4d..6ffe16a2f18 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_cparse.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_cparse.c @@ -1,6 +1,6 @@ /* ** C declaration parser. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #include "lj_obj.h" @@ -57,14 +57,22 @@ static LJ_AINLINE int cp_iseol(CPChar c) return (c == '\n' || c == '\r'); } -static LJ_AINLINE CPChar cp_get(CPState *cp); - /* Peek next raw character. */ static LJ_AINLINE CPChar cp_rawpeek(CPState *cp) { return (CPChar)(uint8_t)(*cp->p); } +static LJ_NOINLINE CPChar cp_get_bs(CPState *cp); + +/* Get next character. */ +static LJ_AINLINE CPChar cp_get(CPState *cp) +{ + cp->c = (CPChar)(uint8_t)(*cp->p++); + if (LJ_LIKELY(cp->c != '\\')) return cp->c; + return cp_get_bs(cp); +} + /* Transparently skip backslash-escaped line breaks. */ static LJ_NOINLINE CPChar cp_get_bs(CPState *cp) { @@ -77,14 +85,6 @@ static LJ_NOINLINE CPChar cp_get_bs(CPState *cp) return cp_get(cp); } -/* Get next character. */ -static LJ_AINLINE CPChar cp_get(CPState *cp) -{ - cp->c = (CPChar)(uint8_t)(*cp->p++); - if (LJ_LIKELY(cp->c != '\\')) return cp->c; - return cp_get_bs(cp); -} - /* Grow save buffer. */ static LJ_NOINLINE void cp_save_grow(CPState *cp, CPChar c) { @@ -1258,7 +1258,7 @@ static void cp_struct_layout(CPState *cp, CTypeID sid, CTInfo sattr) sinfo |= (info & (CTF_QUAL|CTF_VLA)); /* Merge pseudo-qualifiers. */ /* Check for size overflow and determine alignment. */ - if (sz >= 0x20000000u || bofs + csz < bofs) { + if (sz >= 0x20000000u || bofs + csz < bofs || (info & CTF_VLA)) { if (!(sz == CTSIZE_INVALID && ctype_isarray(info) && !(sinfo & CTF_UNION))) cp_err(cp, LJ_ERR_FFI_INVSIZE); diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_cparse.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_cparse.h index c097b14a6e0..586f494569d 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_cparse.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_cparse.h @@ -1,6 +1,6 @@ /* ** C declaration parser. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_CPARSE_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_crecord.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_crecord.c index df98e6ec909..da9013f0cae 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_crecord.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_crecord.c @@ -1,6 +1,6 @@ /* ** Trace recorder for C data operations. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #define lj_ffrecord_c @@ -1514,7 +1514,7 @@ void LJ_FASTCALL recff_ffi_string(jit_State *J, RecordFFData *rd) TRef tr = J->base[0]; if (tr) { TRef trlen = J->base[1]; - if (trlen) { + if (!tref_isnil(trlen)) { trlen = crec_toint(J, cts, trlen, &rd->argv[1]); tr = crec_ct_tv(J, ctype_get(cts, CTID_P_CVOID), 0, tr, &rd->argv[0]); } else { diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_crecord.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_crecord.h index dea05f78ab7..fb77ca60810 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_crecord.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_crecord.h @@ -1,6 +1,6 @@ /* ** Trace recorder for C data operations. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_CRECORD_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ctype.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ctype.c index 57a0d7cc817..e9fe0943f4e 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ctype.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ctype.c @@ -1,6 +1,6 @@ /* ** C type management. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #include "lj_obj.h" diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ctype.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ctype.h index c43a2ba8755..ff8ee069b07 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ctype.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ctype.h @@ -1,6 +1,6 @@ /* ** C type management. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_CTYPE_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_debug.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_debug.c index be7fb2b1f0a..4653a4ec153 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_debug.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_debug.c @@ -1,6 +1,6 @@ /* ** Debugging and introspection. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #define lj_debug_c @@ -71,9 +71,18 @@ static BCPos debug_framepc(lua_State *L, GCfunc *fn, cTValue *nextframe) /* Lua function below errfunc/gc/hook: find cframe to get the PC. */ void *cf = cframe_raw(L->cframe); TValue *f = L->base-1; - if (cf == NULL) - return NO_BCPOS; - while (f > nextframe) { + for (;;) { + if (cf == NULL) + return NO_BCPOS; + while (cframe_nres(cf) < 0) { + if (f >= restorestack(L, -cframe_nres(cf))) + break; + cf = cframe_raw(cframe_prev(cf)); + if (cf == NULL) + return NO_BCPOS; + } + if (f < nextframe) + break; if (frame_islua(f)) { f = frame_prevl(f); } else { @@ -82,8 +91,6 @@ static BCPos debug_framepc(lua_State *L, GCfunc *fn, cTValue *nextframe) f = frame_prevd(f); } } - if (cframe_prev(cf)) - cf = cframe_raw(cframe_prev(cf)); ins = cframe_pc(cf); } } diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_debug.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_debug.h index 7cf57de7785..bec6b4f35fe 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_debug.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_debug.h @@ -1,6 +1,6 @@ /* ** Debugging and introspection. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_DEBUG_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_def.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_def.h index 250729f759d..47c6158c08f 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_def.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_def.h @@ -1,6 +1,6 @@ /* ** LuaJIT common internal definitions. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_DEF_H @@ -62,7 +62,7 @@ typedef unsigned int uintptr_t; #define LJ_MAX_BCINS (1<<26) /* Max. # of bytecode instructions. */ #define LJ_MAX_SLOTS 250 /* Max. # of slots in a Lua func. */ #define LJ_MAX_LOCVAR 200 /* Max. # of local variables. */ -#define LJ_MAX_UPVAL 60 /* Max. # of upvalues. */ +#define LJ_MAX_UPVAL 249 /* Max. # of upvalues. */ #define LJ_MAX_IDXCHAIN 100 /* __index/__newindex chain limit. */ #define LJ_STACK_EXTRA 5 /* Extra stack space (metamethods). */ diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_dispatch.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_dispatch.c index d57f1a6f92f..58d6c3e2b81 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_dispatch.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_dispatch.c @@ -1,6 +1,6 @@ /* ** Instruction dispatch handling. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #define lj_dispatch_c diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_dispatch.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_dispatch.h index a56b626021a..5960e64a603 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_dispatch.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_dispatch.h @@ -1,6 +1,6 @@ /* ** Instruction dispatch handling. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_DISPATCH_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_emit_arm.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_emit_arm.h index b76a9a45f98..3bac3679a60 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_emit_arm.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_emit_arm.h @@ -1,6 +1,6 @@ /* ** ARM instruction emitter. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ /* -- Constant encoding --------------------------------------------------- */ diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_emit_mips.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_emit_mips.h index 74821b8b87a..dc9197ad8e8 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_emit_mips.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_emit_mips.h @@ -1,6 +1,6 @@ /* ** MIPS instruction emitter. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ /* -- Emit basic instructions --------------------------------------------- */ diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_emit_ppc.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_emit_ppc.h index a589f3a6076..3a2ae3894ff 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_emit_ppc.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_emit_ppc.h @@ -1,6 +1,6 @@ /* ** PPC instruction emitter. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ /* -- Emit basic instructions --------------------------------------------- */ diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_emit_x86.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_emit_x86.h index bd184a30587..8cfb654f3d0 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_emit_x86.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_emit_x86.h @@ -1,6 +1,6 @@ /* ** x86/x64 instruction emitter. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ /* -- Emit basic instructions --------------------------------------------- */ diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_err.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_err.c index 1d2ff5535a6..db182673384 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_err.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_err.c @@ -1,6 +1,6 @@ /* ** Error handling. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #define lj_err_c diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_err.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_err.h index dbea4091000..7ea512a348d 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_err.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_err.h @@ -1,6 +1,6 @@ /* ** Error handling. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_ERR_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_errmsg.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_errmsg.h index fd46acd4964..137831eb35c 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_errmsg.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_errmsg.h @@ -1,6 +1,6 @@ /* ** VM error messages. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ /* This file may be included multiple times with different ERRDEF macros. */ @@ -102,6 +102,7 @@ ERRDEF(STRFMTW, "invalid format (width or precision too long)") ERRDEF(STRGSRV, "invalid replacement value (a %s)") ERRDEF(BADMODN, "name conflict for module " LUA_QS) #if LJ_HASJIT +ERRDEF(JITPROT, "runtime code generation failed, restricted kernel?") #if LJ_TARGET_X86ORX64 ERRDEF(NOJIT, "JIT compiler disabled, CPU does not support SSE2") #else diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ff.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ff.h index b4a430108c0..d91a7395bae 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ff.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ff.h @@ -1,6 +1,6 @@ /* ** Fast function IDs. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_FF_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ffrecord.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ffrecord.c index 35e2e88e317..794bbd43cd5 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ffrecord.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ffrecord.c @@ -1,6 +1,6 @@ /* ** Fast function call recorder. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #define lj_ffrecord_c @@ -657,20 +657,19 @@ static void LJ_FASTCALL recff_string_range(jit_State *J, RecordFFData *rd) end = argv2int(J, &rd->argv[2]); } } else { /* string.byte(str, [,start [,end]]) */ - if (!tref_isnil(J->base[1])) { + if (tref_isnil(J->base[1])) { + start = 1; + trstart = lj_ir_kint(J, 1); + } else { start = argv2int(J, &rd->argv[1]); trstart = lj_opt_narrow_toint(J, J->base[1]); - trend = J->base[2]; - if (tref_isnil(trend)) { - trend = trstart; - end = start; - } else { - trend = lj_opt_narrow_toint(J, trend); - end = argv2int(J, &rd->argv[2]); - } + } + if (J->base[1] && !tref_isnil(J->base[2])) { + trend = lj_opt_narrow_toint(J, J->base[2]); + end = argv2int(J, &rd->argv[2]); } else { - trend = trstart = lj_ir_kint(J, 1); - end = start = 1; + trend = trstart; + end = start; } } if (end < 0) { diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ffrecord.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ffrecord.h index 9a30f359edf..b3bc66279c0 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ffrecord.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ffrecord.h @@ -1,6 +1,6 @@ /* ** Fast function call recorder. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_FFRECORD_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_frame.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_frame.h index 60ce1a9f0d9..fb533b0e548 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_frame.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_frame.h @@ -1,6 +1,6 @@ /* ** Stack frames. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_FRAME_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_func.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_func.c index 83f2d0b58ad..9a59b0f0cb2 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_func.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_func.c @@ -1,6 +1,6 @@ /* ** Function handling (prototypes, functions and upvalues). -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h ** ** Portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_func.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_func.h index 73280a8e1ae..88732e83ef4 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_func.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_func.h @@ -1,6 +1,6 @@ /* ** Function handling (prototypes, functions and upvalues). -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_FUNC_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_gc.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_gc.c index 79f8b720448..c2bc397d4bd 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_gc.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_gc.c @@ -1,6 +1,6 @@ /* ** Garbage collector. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h ** ** Major portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h @@ -501,6 +501,7 @@ static void gc_finalize(lua_State *L) setcdataV(L, &tmp, gco2cd(o)); tv = lj_tab_set(L, ctype_ctsG(g)->finalizer, &tmp); if (!tvisnil(tv)) { + g->gc.nocdatafin = 0; copyTV(L, &tmp, tv); setnilV(tv); /* Clear entry in finalizer table. */ gc_call_finalizer(g, L, &tmp, o); @@ -634,6 +635,9 @@ static size_t gc_onestep(lua_State *L) gc_shrink(g, L); if (gcref(g->gc.mmudata)) { /* Need any finalizations? */ g->gc.state = GCSfinalize; +#if LJ_HASFFI + g->gc.nocdatafin = 1; +#endif } else { /* Otherwise skip this phase to help the JIT. */ g->gc.state = GCSpause; /* End of GC cycle. */ g->gc.debt = 0; @@ -652,6 +656,9 @@ static size_t gc_onestep(lua_State *L) g->gc.estimate -= GCFINALIZECOST; return GCFINALIZECOST; } +#if LJ_HASFFI + if (!g->gc.nocdatafin) lj_tab_rehash(L, ctype_ctsG(g)->finalizer); +#endif g->gc.state = GCSpause; /* End of GC cycle. */ g->gc.debt = 0; return 0; @@ -671,7 +678,8 @@ int LJ_FASTCALL lj_gc_step(lua_State *L) lim = (GCSTEPSIZE/100) * g->gc.stepmul; if (lim == 0) lim = LJ_MAX_MEM; - g->gc.debt += g->gc.total - g->gc.threshold; + if (g->gc.total > g->gc.threshold) + g->gc.debt += g->gc.total - g->gc.threshold; do { lim -= (MSize)gc_onestep(L); if (g->gc.state == GCSpause) { @@ -682,12 +690,14 @@ int LJ_FASTCALL lj_gc_step(lua_State *L) } while ((int32_t)lim > 0); if (g->gc.debt < GCSTEPSIZE) { g->gc.threshold = g->gc.total + GCSTEPSIZE; + g->vmstate = ostate; + return -1; } else { g->gc.debt -= GCSTEPSIZE; g->gc.threshold = g->gc.total; + g->vmstate = ostate; + return 0; } - g->vmstate = ostate; - return 0; } /* Ditto, but fix the stack top first. */ diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_gc.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_gc.h index 22f7fea54cd..c85d0756ba7 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_gc.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_gc.h @@ -1,6 +1,6 @@ /* ** Garbage collector. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_GC_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_gdbjit.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_gdbjit.c index 284195a15d2..5e7fca1c16f 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_gdbjit.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_gdbjit.c @@ -1,6 +1,6 @@ /* ** Client for the GDB JIT API. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #define lj_gdbjit_c diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_gdbjit.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_gdbjit.h index 481cb22a362..9ae504fc55b 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_gdbjit.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_gdbjit.h @@ -1,6 +1,6 @@ /* ** Client for the GDB JIT API. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_GDBJIT_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ir.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ir.c index e1a59105cf6..b2170a10ebd 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ir.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ir.c @@ -1,6 +1,6 @@ /* ** SSA IR (Intermediate Representation) emitter. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #define lj_ir_c diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ir.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ir.h index a98243253fb..80763d88e12 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ir.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ir.h @@ -1,6 +1,6 @@ /* ** SSA IR (Intermediate Representation) format. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_IR_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ircall.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ircall.h index 7fcc532ebb5..af30ba8fc97 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_ircall.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_ircall.h @@ -1,6 +1,6 @@ /* ** IR CALL* instruction definitions. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_IRCALL_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_iropt.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_iropt.h index a74f018f318..e45ae2b7b02 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_iropt.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_iropt.h @@ -1,6 +1,6 @@ /* ** Common header for IR emitter and optimizations. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_IROPT_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_jit.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_jit.h index c0b1c41e687..b69e4f4ef89 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_jit.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_jit.h @@ -1,6 +1,6 @@ /* ** Common definitions for the JIT compiler. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_JIT_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_lex.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_lex.c index 9f2b06f8f50..4fa39313fff 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_lex.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_lex.c @@ -1,6 +1,6 @@ /* ** Lexical analyzer. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h ** ** Major portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_lex.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_lex.h index 6e18e4b080b..a7ff29a011a 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_lex.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_lex.h @@ -1,6 +1,6 @@ /* ** Lexical analyzer. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_LEX_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_lib.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_lib.c index 331eaa6a8c3..76c8a064a4f 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_lib.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_lib.c @@ -1,6 +1,6 @@ /* ** Library function support. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #define lj_lib_c diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_lib.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_lib.h index 2fe6d2a8d4c..daacb921357 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_lib.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_lib.h @@ -1,6 +1,6 @@ /* ** Library function support. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_LIB_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_load.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_load.c index 9d892678e9f..edfdc9037dc 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_load.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_load.c @@ -1,6 +1,6 @@ /* ** Load and dump code. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #include <errno.h> diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_mcode.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_mcode.c index cb79e8cdd7f..5a732960772 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_mcode.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_mcode.c @@ -1,6 +1,6 @@ /* ** Machine code management. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #define lj_mcode_c @@ -9,6 +9,7 @@ #include "lj_obj.h" #if LJ_HASJIT #include "lj_gc.h" +#include "lj_err.h" #include "lj_jit.h" #include "lj_mcode.h" #include "lj_trace.h" @@ -78,10 +79,10 @@ static void mcode_free(jit_State *J, void *p, size_t sz) VirtualFree(p, 0, MEM_RELEASE); } -static void mcode_setprot(void *p, size_t sz, DWORD prot) +static int mcode_setprot(void *p, size_t sz, DWORD prot) { DWORD oprot; - VirtualProtect(p, sz, prot, &oprot); + return !VirtualProtect(p, sz, prot, &oprot); } #elif LJ_TARGET_POSIX @@ -112,9 +113,9 @@ static void mcode_free(jit_State *J, void *p, size_t sz) munmap(p, sz); } -static void mcode_setprot(void *p, size_t sz, int prot) +static int mcode_setprot(void *p, size_t sz, int prot) { - mprotect(p, sz, prot); + return mprotect(p, sz, prot); } #elif LJ_64 @@ -140,8 +141,6 @@ static void mcode_free(jit_State *J, void *p, size_t sz) lj_mem_free(J2G(J), p, sz); } -#define mcode_setprot(p, sz, prot) UNUSED(p) - #endif /* -- MCode area protection ----------------------------------------------- */ @@ -180,11 +179,23 @@ static void mcode_protect(jit_State *J, int prot) #define MCPROT_GEN MCPROT_RW #define MCPROT_RUN MCPROT_RX +/* Protection twiddling failed. Probably due to kernel security. */ +static LJ_NOINLINE void mcode_protfail(jit_State *J) +{ + lua_CFunction panic = J2G(J)->panic; + if (panic) { + lua_State *L = J->L; + setstrV(L, L->top++, lj_err_str(L, LJ_ERR_JITPROT)); + panic(L); + } +} + /* Change protection of MCode area. */ static void mcode_protect(jit_State *J, int prot) { if (J->mcprot != prot) { - mcode_setprot(J->mcarea, J->szmcarea, prot); + if (LJ_UNLIKELY(mcode_setprot(J->mcarea, J->szmcarea, prot))) + mcode_protfail(J); J->mcprot = prot; } } @@ -305,7 +316,8 @@ void lj_mcode_commit(jit_State *J, MCode *top) /* Abort the reservation. */ void lj_mcode_abort(jit_State *J) { - mcode_protect(J, MCPROT_RUN); + if (J->mcarea) + mcode_protect(J, MCPROT_RUN); } /* Set/reset protection to allow patching of MCode areas. */ @@ -318,8 +330,8 @@ MCode *lj_mcode_patch(jit_State *J, MCode *ptr, int finish) if (finish) { if (J->mcarea == ptr) mcode_protect(J, MCPROT_RUN); - else - mcode_setprot(ptr, ((MCLink *)ptr)->size, MCPROT_RUN); + else if (LJ_UNLIKELY(mcode_setprot(ptr, ((MCLink *)ptr)->size, MCPROT_RUN))) + mcode_protfail(J); return NULL; } else { MCode *mc = J->mcarea; @@ -333,7 +345,8 @@ MCode *lj_mcode_patch(jit_State *J, MCode *ptr, int finish) mc = ((MCLink *)mc)->next; lua_assert(mc != NULL); if (ptr >= mc && ptr < (MCode *)((char *)mc + ((MCLink *)mc)->size)) { - mcode_setprot(mc, ((MCLink *)mc)->size, MCPROT_GEN); + if (LJ_UNLIKELY(mcode_setprot(mc, ((MCLink *)mc)->size, MCPROT_GEN))) + mcode_protfail(J); return mc; } } diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_mcode.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_mcode.h index 2ba371bc1d6..89344fc7345 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_mcode.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_mcode.h @@ -1,6 +1,6 @@ /* ** Machine code management. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_MCODE_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_meta.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_meta.c index 441d571ac7e..0a526671090 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_meta.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_meta.c @@ -1,6 +1,6 @@ /* ** Metamethod handling. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h ** ** Portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_meta.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_meta.h index 6af5e514435..8d7c2cd416d 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_meta.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_meta.h @@ -1,6 +1,6 @@ /* ** Metamethod handling. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_META_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_obj.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_obj.c index 322b7bec7ca..c7f3bc1214f 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_obj.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_obj.c @@ -1,6 +1,6 @@ /* ** Miscellaneous object handling. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #define lj_obj_c diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_obj.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_obj.h index b967819d079..cc999aa41a2 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_obj.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_obj.h @@ -1,6 +1,6 @@ /* ** LuaJIT VM tags, values and objects. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h ** ** Portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h @@ -493,7 +493,7 @@ typedef struct GCState { MSize threshold; /* Memory threshold. */ uint8_t currentwhite; /* Current white color. */ uint8_t state; /* GC state. */ - uint8_t unused1; + uint8_t nocdatafin; /* No cdata finalizer called. */ uint8_t unused2; MSize sweepstr; /* Sweep position in string table. */ GCRef root; /* List of all collectable objects. */ diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_opt_dce.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_opt_dce.c index d64cca76cca..be801894714 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_opt_dce.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_opt_dce.c @@ -1,6 +1,6 @@ /* ** DCE: Dead Code Elimination. Pre-LOOP only -- ASM already performs DCE. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #define lj_opt_dce_c diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_opt_fold.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_opt_fold.c index fe37b98a885..8a5b41cc223 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_opt_fold.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_opt_fold.c @@ -2,7 +2,7 @@ ** FOLD: Constant Folding, Algebraic Simplifications and Reassociation. ** ABCelim: Array Bounds Check Elimination. ** CSE: Common-Subexpression Elimination. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #define lj_opt_fold_c @@ -1699,7 +1699,9 @@ LJFOLDF(abc_k) LJFOLD(ABC any any) LJFOLDF(abc_invar) { - if (!irt_isint(fins->t) && J->chain[IR_LOOP]) /* Currently marked as PTR. */ + /* Invariant ABC marked as PTR. Drop if op1 is invariant, too. */ + if (!irt_isint(fins->t) && fins->op1 < J->chain[IR_LOOP] && + !irt_isphi(IR(fins->op1)->t)) return DROPFOLD; return NEXTFOLD; } diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_opt_loop.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_opt_loop.c index 3a119f4703e..fa001151a03 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_opt_loop.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_opt_loop.c @@ -1,6 +1,6 @@ /* ** LOOP: Loop Optimizations. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #define lj_opt_loop_c @@ -105,20 +105,24 @@ static void loop_emit_phi(jit_State *J, IRRef1 *subst, IRRef1 *phi, IRRef nphi, SnapNo onsnap) { int passx = 0; - IRRef i, nslots; + IRRef i, j, nslots; IRRef invar = J->chain[IR_LOOP]; /* Pass #1: mark redundant and potentially redundant PHIs. */ - for (i = 0; i < nphi; i++) { + for (i = 0, j = 0; i < nphi; i++) { IRRef lref = phi[i]; IRRef rref = subst[lref]; if (lref == rref || rref == REF_DROP) { /* Invariants are redundant. */ - irt_setmark(IR(lref)->t); - } else if (!(IR(rref)->op1 == lref || IR(rref)->op2 == lref)) { - /* Quick check for simple recurrences failed, need pass2. */ - irt_setmark(IR(lref)->t); - passx = 1; + irt_clearphi(IR(lref)->t); + } else { + phi[j++] = (IRRef1)lref; + if (!(IR(rref)->op1 == lref || IR(rref)->op2 == lref)) { + /* Quick check for simple recurrences failed, need pass2. */ + irt_setmark(IR(lref)->t); + passx = 1; + } } } + nphi = j; /* Pass #2: traverse variant part and clear marks of non-redundant PHIs. */ if (passx) { SnapNo s; @@ -174,15 +178,10 @@ static void loop_emit_phi(jit_State *J, IRRef1 *subst, IRRef1 *phi, IRRef nphi, IRRef lref = phi[i]; IRIns *ir = IR(lref); if (!irt_ismarked(ir->t)) { /* Propagate only from unmarked PHIs. */ - IRRef rref = subst[lref]; - if (lref == rref) { /* Mark redundant PHI. */ - irt_setmark(ir->t); - } else { - IRIns *irr = IR(rref); - if (irt_ismarked(irr->t)) { /* Right ref points to other PHI? */ - irt_clearmark(irr->t); /* Mark that PHI as non-redundant. */ - passx = 1; /* Retry. */ - } + IRIns *irr = IR(subst[lref]); + if (irt_ismarked(irr->t)) { /* Right ref points to other PHI? */ + irt_clearmark(irr->t); /* Mark that PHI as non-redundant. */ + passx = 1; /* Retry. */ } } } diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_opt_mem.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_opt_mem.c index 98974ce33c6..c8cdc3e5f01 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_opt_mem.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_opt_mem.c @@ -3,7 +3,7 @@ ** AA: Alias Analysis using high-level semantic disambiguation. ** FWD: Load Forwarding (L2L) + Store Forwarding (S2L). ** DSE: Dead-Store Elimination. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #define lj_opt_mem_c @@ -396,13 +396,13 @@ static AliasRet aa_uref(IRIns *refa, IRIns *refb) TRef LJ_FASTCALL lj_opt_fwd_uload(jit_State *J) { IRRef uref = fins->op1; - IRRef lim = uref; /* Search limit. */ + IRRef lim = REF_BASE; /* Search limit. */ IRIns *xr = IR(uref); IRRef ref; /* Search for conflicting stores. */ ref = J->chain[IR_USTORE]; - while (ref > uref) { + while (ref > lim) { IRIns *store = IR(ref); switch (aa_uref(xr, IR(store->op1))) { case ALIAS_NO: break; /* Continue searching. */ @@ -414,7 +414,16 @@ TRef LJ_FASTCALL lj_opt_fwd_uload(jit_State *J) cselim: /* Try to find a matching load. Below the conflicting store, if any. */ - return lj_opt_cselim(J, lim); + + ref = J->chain[IR_ULOAD]; + while (ref > lim) { + IRIns *ir = IR(ref); + if (ir->op1 == uref || + (IR(ir->op1)->op12 == IR(uref)->op12 && IR(ir->op1)->o == IR(uref)->o)) + return ref; /* Match for identical or equal UREFx (non-CSEable UREFO). */ + ref = ir->prev; + } + return lj_ir_emit(J); } /* USTORE elimination. */ @@ -609,16 +618,17 @@ static AliasRet aa_xref(jit_State *J, IRIns *refa, IRIns *xa, IRIns *xb) basea = IR(refa->op1); ofsa = (LJ_64 && irk->o == IR_KINT64) ? (ptrdiff_t)ir_k64(irk)->u64 : (ptrdiff_t)irk->i; - if (basea == refb && ofsa != 0) - return ALIAS_NO; /* base+-ofs vs. base. */ } if (refb->o == IR_ADD && irref_isk(refb->op2)) { IRIns *irk = IR(refb->op2); baseb = IR(refb->op1); ofsb = (LJ_64 && irk->o == IR_KINT64) ? (ptrdiff_t)ir_k64(irk)->u64 : (ptrdiff_t)irk->i; - if (refa == baseb && ofsb != 0) - return ALIAS_NO; /* base vs. base+-ofs. */ + } + /* Treat constified pointers like base vs. base+offset. */ + if (basea->o == IR_KPTR && baseb->o == IR_KPTR) { + ofsb += (char *)ir_kptr(baseb) - (char *)ir_kptr(basea); + baseb = basea; } /* This implements (very) strict aliasing rules. ** Different types do NOT alias, except for differences in signedness. diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_opt_narrow.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_opt_narrow.c index caf2a8df1cf..2cecf65daf4 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_opt_narrow.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_opt_narrow.c @@ -1,7 +1,7 @@ /* ** NARROW: Narrowing of numbers to integers (double to int32_t). ** STRIPOV: Stripping of overflow checks. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #define lj_opt_narrow_c diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_opt_sink.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_opt_sink.c index 56e463687e9..3a333461603 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_opt_sink.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_opt_sink.c @@ -1,6 +1,6 @@ /* ** SINK: Allocation Sinking and Store Sinking. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #define lj_opt_sink_c diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_opt_split.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_opt_split.c index 5a8c33b9499..99d10584f24 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_opt_split.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_opt_split.c @@ -1,6 +1,6 @@ /* ** SPLIT: Split 64 bit IR instructions into 32 bit IR instructions. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #define lj_opt_split_c diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_parse.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_parse.c index 7ff7d72855d..e8aafba2081 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_parse.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_parse.c @@ -1,6 +1,6 @@ /* ** Lua parser (source code -> bytecode). -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h ** ** Major portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h @@ -1555,7 +1555,9 @@ static void fs_fixup_ret(FuncState *fs) switch (bc_op(ins)) { case BC_CALLMT: case BC_CALLT: case BC_RETM: case BC_RET: case BC_RET0: case BC_RET1: - offset = bcemit_INS(fs, ins)-(pc+1)+BCBIAS_J; /* Copy return ins. */ + offset = bcemit_INS(fs, ins); /* Copy original instruction. */ + fs->bcbase[offset].line = fs->bcbase[pc].line; + offset = offset-(pc+1)+BCBIAS_J; if (offset > BCMAX_D) err_syntax(fs->ls, LJ_ERR_XFIXUP); /* Replace with UCLO plus branch. */ diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_parse.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_parse.h index 558b4e2d012..532657a0115 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_parse.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_parse.h @@ -1,6 +1,6 @@ /* ** Lua parser (source code -> bytecode). -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_PARSE_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_record.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_record.c index 7336e0ac14e..c6848fc09c8 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_record.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_record.c @@ -1,6 +1,6 @@ /* ** Trace recorder (bytecode -> SSA IR). -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #define lj_record_c @@ -701,7 +701,7 @@ void lj_record_ret(jit_State *J, BCReg rbase, ptrdiff_t gotresults) (!frame_islua(frame) || (J->parent == 0 && !bc_isret(bc_op(J->cur.startins))))) { /* NYI: specialize to frame type and return directly, not via RET*. */ - for (i = -1; i < (ptrdiff_t)rbase; i++) + for (i = 0; i < (ptrdiff_t)rbase; i++) J->base[i] = 0; /* Purge dead slots. */ J->maxslot = rbase + (BCReg)gotresults; rec_stop(J, LJ_TRLINK_RETURN, 0); /* Return to interpreter. */ @@ -722,6 +722,8 @@ void lj_record_ret(jit_State *J, BCReg rbase, ptrdiff_t gotresults) ptrdiff_t nresults = bc_b(callins) ? (ptrdiff_t)bc_b(callins)-1 :gotresults; BCReg cbase = bc_a(callins); GCproto *pt = funcproto(frame_func(frame - (cbase+1))); + if ((pt->flags & PROTO_NOJIT)) + lj_trace_err(J, LJ_TRERR_CJITOFF); if (J->framedepth == 0 && J->pt && frame == J->L->base - 1) { if (check_downrec_unroll(J, pt)) { J->maxslot = (BCReg)(rbase + gotresults); @@ -1387,6 +1389,7 @@ static void check_call_unroll(jit_State *J, TraceNo lnk) int32_t count = 0; if ((J->pt->flags & PROTO_VARARG)) depth--; /* Vararg frame still missing. */ for (; depth > 0; depth--) { /* Count frames with same prototype. */ + if (frame_iscont(frame)) depth--; frame = frame_prev(frame); if (mref(frame_func(frame)->l.pc, void) == pc) count++; @@ -1505,10 +1508,8 @@ static void rec_varg(jit_State *J, BCReg dst, ptrdiff_t nresults) } else if (dst + nresults > J->maxslot) { J->maxslot = dst + (BCReg)nresults; } - for (i = 0; i < nresults; i++) { - J->base[dst+i] = i < nvararg ? J->base[i - nvararg - 1] : TREF_NIL; - lua_assert(J->base[dst+i] != 0); - } + for (i = 0; i < nresults; i++) + J->base[dst+i] = i < nvararg ? getslot(J, i - nvararg - 1) : TREF_NIL; } else { /* Unknown number of varargs passed to trace. */ TRef fr = emitir(IRTI(IR_SLOAD), 0, IRSLOAD_READONLY|IRSLOAD_FRAME); int32_t frofs = 8*(1+numparams)+FRAME_VARG; @@ -2128,7 +2129,7 @@ static const BCIns *rec_setup_root(jit_State *J) case BC_RET0: case BC_RET1: /* No bytecode range check for down-recursive root traces. */ - J->maxslot = ra + bc_d(ins); + J->maxslot = ra + bc_d(ins) - 1; break; case BC_FUNCF: /* No bytecode range check for root traces started by a hot call. */ diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_record.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_record.h index 287b26045e2..940e105fb37 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_record.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_record.h @@ -1,6 +1,6 @@ /* ** Trace recorder (bytecode -> SSA IR). -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_RECORD_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_snap.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_snap.c index 30ff9152891..1c978c26a9a 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_snap.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_snap.c @@ -1,6 +1,6 @@ /* ** Snapshot handling. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #define lj_snap_c @@ -708,7 +708,7 @@ static void snap_unsink(jit_State *J, GCtrace *T, ExitState *ex, ir->o == IR_CNEW || ir->o == IR_CNEWI); #if LJ_HASFFI if (ir->o == IR_CNEW || ir->o == IR_CNEWI) { - CTState *cts = ctype_ctsG(J2G(J)); + CTState *cts = ctype_cts(J->L); CTypeID id = (CTypeID)T->ir[ir->op1].i; CTSize sz = lj_ctype_size(cts, id); GCcdata *cd = lj_cdata_new(cts, id, sz); @@ -845,12 +845,15 @@ const BCIns *lj_snap_restore(jit_State *J, void *exptr) /* Compute current stack top. */ switch (bc_op(*pc)) { + default: + if (bc_op(*pc) < BC_FUNCF) { + L->top = curr_topL(L); + break; + } + /* fallthrough */ case BC_CALLM: case BC_CALLMT: case BC_RETM: case BC_TSETM: L->top = frame + snap->nslots; break; - default: - L->top = curr_topL(L); - break; } return pc; } diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_snap.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_snap.h index aff97e5e4d1..1b2d74da71f 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_snap.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_snap.h @@ -1,6 +1,6 @@ /* ** Snapshot handling. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_SNAP_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_state.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_state.c index 8c53d37f1fc..f972fdcedf6 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_state.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_state.c @@ -1,6 +1,6 @@ /* ** State and stack handling. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h ** ** Portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_state.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_state.h index 527f054efab..74249d9bb24 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_state.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_state.h @@ -1,6 +1,6 @@ /* ** State and stack handling. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_STATE_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_str.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_str.c index 6548ee4d382..62ad5e891f5 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_str.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_str.c @@ -1,6 +1,6 @@ /* ** String handling. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h ** ** Portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h @@ -90,6 +90,8 @@ void lj_str_resize(lua_State *L, MSize newmask) g->strhash = newhash; } +#define cast(t, exp) ((t)(exp)) +int luajittex_choose_hash_function = 0 ; /* Intern a string and return string object. */ GCstr *lj_str_new(lua_State *L, const char *str, size_t lenx) { @@ -98,27 +100,44 @@ GCstr *lj_str_new(lua_State *L, const char *str, size_t lenx) GCobj *o; MSize len = (MSize)lenx; MSize a, b, h = len; + size_t step ; + size_t l1 ; if (lenx >= LJ_MAX_STR) lj_err_msg(L, LJ_ERR_STROV); g = G(L); + + if (len==0) + return &g->strempty; + if (luajittex_choose_hash_function==0) { + /* Lua 5.1.5 hash function */ + /* for 5.2 max methods we also need to patch the vm eq */ + step = (len>>6)+1; /* if string is too long, don't hash all its chars Was 5, we try 6*/ + for (l1=len; l1>=step; l1-=step) /* compute hash */ + h = h ^ ((h<<5)+(h>>2)+cast(unsigned char, str[l1-1])); + } else { + /* LuaJIT 2.0.2 hash function */ /* Compute string hash. Constants taken from lookup3 hash by Bob Jenkins. */ - if (len >= 4) { /* Caveat: unaligned access! */ - a = lj_getu32(str); - h ^= lj_getu32(str+len-4); - b = lj_getu32(str+(len>>1)-2); - h ^= b; h -= lj_rol(b, 14); - b += lj_getu32(str+(len>>2)-1); - } else if (len > 0) { - a = *(const uint8_t *)str; - h ^= *(const uint8_t *)(str+len-1); - b = *(const uint8_t *)(str+(len>>1)); - h ^= b; h -= lj_rol(b, 14); - } else { - return &g->strempty; - } - a ^= h; a -= lj_rol(h, 11); - b ^= a; b -= lj_rol(a, 25); - h ^= b; h -= lj_rol(b, 16); + if (len >= 4) { /* Caveat: unaligned access! */ + a = lj_getu32(str); + h ^= lj_getu32(str+len-4); + b = lj_getu32(str+(len>>1)-2); + h ^= b; h -= lj_rol(b, 14); + b += lj_getu32(str+(len>>2)-1); + } else if (len > 0) { + a = *(const uint8_t *)str; + h ^= *(const uint8_t *)(str+len-1); + b = *(const uint8_t *)(str+(len>>1)); + h ^= b; h -= lj_rol(b, 14); + } else { + /* Already done, kept for reference */ + return &g->strempty; + } + a ^= h; a -= lj_rol(h, 11); + b ^= a; b -= lj_rol(a, 25); + h ^= b; h -= lj_rol(b, 16); + } + + /* Check if the string has already been interned. */ o = gcref(g->strhash[h & g->strmask]); if (LJ_LIKELY((((uintptr_t)str+len-1) & (LJ_PAGESIZE-1)) <= LJ_PAGESIZE-4)) { diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_str.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_str.h index 3aa036625fb..1602c980c9e 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_str.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_str.h @@ -1,6 +1,6 @@ /* ** String handling. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_STR_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_strscan.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_strscan.c index a71b86a283a..a21c414ab4a 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_strscan.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_strscan.c @@ -1,6 +1,6 @@ /* ** String scanning. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #include <math.h> diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_strscan.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_strscan.h index 9557d67382e..15abd6afb22 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_strscan.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_strscan.h @@ -1,6 +1,6 @@ /* ** String scanning. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_STRSCAN_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_tab.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_tab.c index ccad1f68720..fc7d0f1c148 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_tab.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_tab.c @@ -1,6 +1,6 @@ /* ** Table handling. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h ** ** Major portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h @@ -351,6 +351,13 @@ static void rehashtab(lua_State *L, GCtab *t, cTValue *ek) resizetab(L, t, asize, hsize2hbits(total)); } +#if LJ_HASFFI +void lj_tab_rehash(lua_State *L, GCtab *t) +{ + rehashtab(L, t, niltv(L)); +} +#endif + void lj_tab_reasize(lua_State *L, GCtab *t, uint32_t nasize) { resizetab(L, t, nasize+1, t->hmask > 0 ? lj_fls(t->hmask)+1 : 0); diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_tab.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_tab.h index 2787caa0d62..44b1bbbd979 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_tab.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_tab.h @@ -1,6 +1,6 @@ /* ** Table handling. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_TAB_H @@ -39,6 +39,9 @@ LJ_FUNC GCtab * LJ_FASTCALL lj_tab_new1(lua_State *L, uint32_t ahsize); #endif LJ_FUNCA GCtab * LJ_FASTCALL lj_tab_dup(lua_State *L, const GCtab *kt); LJ_FUNC void LJ_FASTCALL lj_tab_free(global_State *g, GCtab *t); +#if LJ_HASFFI +LJ_FUNC void lj_tab_rehash(lua_State *L, GCtab *t); +#endif LJ_FUNCA void lj_tab_reasize(lua_State *L, GCtab *t, uint32_t nasize); /* Caveat: all getters except lj_tab_get() can return NULL! */ diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_target.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_target.h index eed69d1236a..820a97a4565 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_target.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_target.h @@ -1,6 +1,6 @@ /* ** Definitions for target CPU. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_TARGET_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_target_arm.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_target_arm.h index bec55772b1f..63a0c925dc0 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_target_arm.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_target_arm.h @@ -1,6 +1,6 @@ /* ** Definitions for ARM CPUs. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_TARGET_ARM_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_target_mips.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_target_mips.h index 36f46c83012..e0fc152d663 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_target_mips.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_target_mips.h @@ -1,6 +1,6 @@ /* ** Definitions for MIPS CPUs. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_TARGET_MIPS_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_target_ppc.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_target_ppc.h index 4e95c3a414d..475e0465149 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_target_ppc.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_target_ppc.h @@ -1,6 +1,6 @@ /* ** Definitions for PPC CPUs. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_TARGET_PPC_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_target_x86.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_target_x86.h index 84b0871da05..41f401b0484 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_target_x86.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_target_x86.h @@ -1,6 +1,6 @@ /* ** Definitions for x86 and x64 CPUs. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_TARGET_X86_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_trace.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_trace.c index c70fc247ecc..9e5e400f4a1 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_trace.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_trace.c @@ -1,6 +1,6 @@ /* ** Trace management. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #define lj_trace_c diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_trace.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_trace.h index e30d3d599ea..f3109081b54 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_trace.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_trace.h @@ -1,6 +1,6 @@ /* ** Trace management. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_TRACE_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_traceerr.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_traceerr.h index 2ef4ad63e7e..521560a18de 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_traceerr.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_traceerr.h @@ -1,6 +1,6 @@ /* ** Trace compiler error messages. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ /* This file may be included multiple times with different TREDEF macros. */ @@ -20,7 +20,7 @@ TREDEF(LUNROLL, "loop unroll limit reached") /* Recording calls/returns. */ TREDEF(BADTYPE, "bad argument type") -TREDEF(CJITOFF, "call to JIT-disabled function") +TREDEF(CJITOFF, "JIT compilation disabled for function") TREDEF(CUNROLL, "call unroll limit reached") TREDEF(DOWNREC, "down-recursion, restarting") TREDEF(NYICF, "NYI: C function %p") diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_udata.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_udata.c index df5e7f30bf5..6cd357ec5bf 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_udata.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_udata.c @@ -1,6 +1,6 @@ /* ** Userdata handling. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #define lj_udata_c diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_udata.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_udata.h index f62c02bceec..e03d9a3a8d3 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_udata.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_udata.h @@ -1,6 +1,6 @@ /* ** Userdata handling. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_UDATA_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_vm.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_vm.h index c5d05de44d9..4a8f03f0797 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_vm.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_vm.h @@ -1,6 +1,6 @@ /* ** Assembler VM interface definitions. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_VM_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_vmevent.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_vmevent.c index 21ad08feffc..e14ad5b60c9 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_vmevent.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_vmevent.c @@ -1,6 +1,6 @@ /* ** VM event handling. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #include <stdio.h> diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_vmevent.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_vmevent.h index 11dedb42f3f..51bae015a1d 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_vmevent.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_vmevent.h @@ -1,6 +1,6 @@ /* ** VM event handling. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LJ_VMEVENT_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_vmmath.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_vmmath.c index aa6903033c1..63886aa7e36 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lj_vmmath.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lj_vmmath.c @@ -1,6 +1,6 @@ /* ** Math helper functions for assembler VM. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #define lj_vmmath_c diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/ljamalg.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/ljamalg.c index 962b313442a..52a86153c43 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/ljamalg.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/ljamalg.c @@ -1,12 +1,12 @@ /* ** LuaJIT core and libraries amalgamation. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ /* +--------------------------------------------------------------------------+ | WARNING: Compiling the amalgamation needs a lot of virtual memory | -| (around 200 MB with GCC 4.x)! If you don't have enough physical memory | +| (around 300 MB with GCC 4.x)! If you don't have enough physical memory | | your machine will start swapping to disk and the compile will not finish | | within a reasonable amount of time. | | So either compile on a bigger machine or use the non-amalgamated build. | @@ -22,7 +22,7 @@ #endif #ifndef WINVER -#define WINVER 0x0500 +#define WINVER 0x0501 #endif #include "lua.h" diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lua.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lua.h index 2dc0dcf760e..64a930e3e38 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lua.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lua.h @@ -103,6 +103,9 @@ typedef LUA_NUMBER lua_Number; typedef LUA_INTEGER lua_Integer; +/* communication with LuaJiTTeX */ +LUA_API int luajittex_choose_hash_function; + /* ** state manipulation diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lua.hpp b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lua.hpp index 07e9002dc5a..07e9002dc5a 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lua.hpp +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lua.hpp diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/luaconf.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/luaconf.h index d55caab1d07..affb7da8f59 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/luaconf.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/luaconf.h @@ -1,11 +1,14 @@ /* ** Configuration header. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef luaconf_h #define luaconf_h +#ifndef WINVER +#define WINVER 0x0501 +#endif #include <limits.h> #include <stddef.h> @@ -23,26 +26,40 @@ ".\\?.dll;" LUA_CDIR"?.dll;" LUA_CDIR"loadall.dll" #else /* -** Note to distribution maintainers: do NOT patch the following line! +** Note to distribution maintainers: do NOT patch the following lines! ** Please read ../doc/install.html#distro and pass PREFIX=/usr instead. */ -#define LUA_ROOT "/usr/local/" -#define LUA_LDIR LUA_ROOT "share/lua/5.1/" -#define LUA_CDIR LUA_ROOT "lib/lua/5.1/" -#ifdef LUA_XROOT -#define LUA_JDIR LUA_XROOT "share/luajit-2.0.2/" -#define LUA_XPATH \ - ";" LUA_XROOT "share/lua/5.1/?.lua;" LUA_XROOT "share/lua/5.1/?/init.lua" -#define LUA_XCPATH LUA_XROOT "lib/lua/5.1/?.so;" +#ifndef LUA_MULTILIB +#define LUA_MULTILIB "lib" +#endif +#ifndef LUA_LMULTILIB +#define LUA_LMULTILIB "lib" +#endif +#define LUA_LROOT "/usr/local" +#define LUA_LUADIR "/lua/5.1/" +#define LUA_LJDIR "/luajit-2.0.3/" + +#ifdef LUA_ROOT +#define LUA_JROOT LUA_ROOT +#define LUA_RLDIR LUA_ROOT "/share" LUA_LUADIR +#define LUA_RCDIR LUA_ROOT "/" LUA_MULTILIB LUA_LUADIR +#define LUA_RLPATH ";" LUA_RLDIR "?.lua;" LUA_RLDIR "?/init.lua" +#define LUA_RCPATH ";" LUA_RCDIR "?.so" #else -#define LUA_JDIR LUA_ROOT "share/luajit-2.0.2/" -#define LUA_XPATH -#define LUA_XCPATH +#define LUA_JROOT LUA_LROOT +#define LUA_RLPATH +#define LUA_RCPATH #endif -#define LUA_PATH_DEFAULT \ - "./?.lua;" LUA_JDIR"?.lua;" LUA_LDIR"?.lua;" LUA_LDIR"?/init.lua" LUA_XPATH -#define LUA_CPATH_DEFAULT \ - "./?.so;" LUA_CDIR"?.so;" LUA_XCPATH LUA_CDIR"loadall.so" + +#define LUA_JPATH ";" LUA_JROOT "/share" LUA_LJDIR "?.lua" +#define LUA_LLDIR LUA_LROOT "/share" LUA_LUADIR +#define LUA_LCDIR LUA_LROOT "/" LUA_LMULTILIB LUA_LUADIR +#define LUA_LLPATH ";" LUA_LLDIR "?.lua;" LUA_LLDIR "?/init.lua" +#define LUA_LCPATH1 ";" LUA_LCDIR "?.so" +#define LUA_LCPATH2 ";" LUA_LCDIR "loadall.so" + +#define LUA_PATH_DEFAULT "./?.lua" LUA_JPATH LUA_LLPATH LUA_RLPATH +#define LUA_CPATH_DEFAULT "./?.so" LUA_LCPATH1 LUA_RCPATH LUA_LCPATH2 #endif /* Environment variable names for path overrides and initialization code. */ diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/luajit.c b/Build/source/libs/luajit/LuaJIT-2.0.3/src/luajit.c index e0eacc423ad..4cccf04e6af 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/luajit.c +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/luajit.c @@ -1,6 +1,6 @@ /* ** LuaJIT frontend. Runs commands, scripts, read-eval-print (REPL) etc. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h ** ** Major portions taken verbatim or adapted from the Lua interpreter. ** Copyright (C) 1994-2008 Lua.org, PUC-Rio. See Copyright Notice in lua.h diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/luajit.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/luajit.h index f33b64c5669..be721cf4b8e 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/luajit.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/luajit.h @@ -1,7 +1,7 @@ /* ** LuaJIT -- a Just-In-Time Compiler for Lua. http://luajit.org/ ** -** Copyright (C) 2005-2013 Mike Pall. All rights reserved. +** Copyright (C) 2005-2014 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.0.2" -#define LUAJIT_VERSION_NUM 20002 /* Version 2.0.2 = 02.00.02. */ -#define LUAJIT_VERSION_SYM luaJIT_version_2_0_2 -#define LUAJIT_COPYRIGHT "Copyright (C) 2005-2013 Mike Pall" +#define LUAJIT_VERSION "LuaJIT 2.0.3" +#define LUAJIT_VERSION_NUM 20003 /* Version 2.0.3 = 02.00.03. */ +#define LUAJIT_VERSION_SYM luaJIT_version_2_0_3 +#define LUAJIT_COPYRIGHT "Copyright (C) 2005-2014 Mike Pall" #define LUAJIT_URL "http://luajit.org/" /* Modes for luaJIT_setmode. */ diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lualib.h b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lualib.h index 49fe53edbf1..90687bdd1bf 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/lualib.h +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/lualib.h @@ -1,6 +1,6 @@ /* ** Standard library header. -** Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +** Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h */ #ifndef _LUALIB_H diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/msvcbuild.bat b/Build/source/libs/luajit/LuaJIT-2.0.3/src/msvcbuild.bat index cdb42a8de5e..9160e0f889e 100755 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/msvcbuild.bat +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/msvcbuild.bat @@ -1,5 +1,5 @@ @rem Script to build LuaJIT with MSVC.
-@rem Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h
+@rem Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h
@rem
@rem Either open a "Visual Studio .NET Command Prompt"
@rem (Note that the Express Edition does not contain an x64 compiler)
@@ -14,10 +14,10 @@ @if not defined INCLUDE goto :FAIL
@setlocal
-@set LJCOMPILE=cl /nologo /c /MD /O2 /W3 /D_CRT_SECURE_NO_DEPRECATE
+@set LJCOMPILE=cl /nologo /c /O2 /W3 /D_CRT_SECURE_NO_DEPRECATE
@set LJLINK=link /nologo
@set LJMT=mt /nologo
-@set LJLIB=lib /nologo
+@set LJLIB=lib /nologo /nodefaultlib
@set DASMDIR=..\dynasm
@set DASM=%DASMDIR%\dynasm.lua
@set LJDLLNAME=lua51.dll
@@ -70,19 +70,19 @@ buildvm -m folddef -o lj_folddef.h lj_opt_fold.c :NODEBUG
@if "%1"=="amalg" goto :AMALGDLL
@if "%1"=="static" goto :STATIC
-%LJCOMPILE% /DLUA_BUILD_AS_DLL lj_*.c lib_*.c
+%LJCOMPILE% /MD /DLUA_BUILD_AS_DLL lj_*.c lib_*.c
@if errorlevel 1 goto :BAD
%LJLINK% /DLL /out:%LJDLLNAME% lj_*.obj lib_*.obj
@if errorlevel 1 goto :BAD
@goto :MTDLL
:STATIC
-%LJCOMPILE% /DLUA_BUILD_AS_DLL lj_*.c lib_*.c
+%LJCOMPILE% lj_*.c lib_*.c
@if errorlevel 1 goto :BAD
%LJLIB% /OUT:%LJLIBNAME% lj_*.obj lib_*.obj
@if errorlevel 1 goto :BAD
@goto :MTDLL
:AMALGDLL
-%LJCOMPILE% /DLUA_BUILD_AS_DLL ljamalg.c
+%LJCOMPILE% /MD /DLUA_BUILD_AS_DLL ljamalg.c
@if errorlevel 1 goto :BAD
%LJLINK% /DLL /out:%LJDLLNAME% ljamalg.obj lj_vm.obj
@if errorlevel 1 goto :BAD
diff --git a/Build/source/libs/luajit/LuaJIT-2.0.3/src/ps4build.bat b/Build/source/libs/luajit/LuaJIT-2.0.3/src/ps4build.bat new file mode 100755 index 00000000000..42fc9a64a99 --- /dev/null +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/ps4build.bat @@ -0,0 +1,103 @@ +@rem Script to build LuaJIT with the PS4 SDK.
+@rem Donated to the public domain.
+@rem
+@rem Open a "Visual Studio .NET Command Prompt" (64 bit host compiler)
+@rem Then cd to this directory and run this script.
+
+@if not defined INCLUDE goto :FAIL
+@if not defined SCE_ORBIS_SDK_DIR goto :FAIL
+
+@setlocal
+@rem ---- Host compiler ----
+@set LJCOMPILE=cl /nologo /c /MD /O2 /W3 /D_CRT_SECURE_NO_DEPRECATE
+@set LJLINK=link /nologo
+@set LJMT=mt /nologo
+@set DASMDIR=..\dynasm
+@set DASM=%DASMDIR%\dynasm.lua
+@set ALL_LIB=lib_base.c lib_math.c lib_bit.c lib_string.c lib_table.c lib_io.c lib_os.c lib_package.c lib_debug.c lib_jit.c lib_ffi.c
+
+%LJCOMPILE% host\minilua.c
+@if errorlevel 1 goto :BAD
+%LJLINK% /out:minilua.exe minilua.obj
+@if errorlevel 1 goto :BAD
+if exist minilua.exe.manifest^
+ %LJMT% -manifest minilua.exe.manifest -outputresource:minilua.exe
+
+@rem Check for 64 bit host compiler.
+@minilua
+@if not errorlevel 8 goto :FAIL
+
+@set DASMFLAGS=-D P64
+minilua %DASM% -LN %DASMFLAGS% -o host\buildvm_arch.h vm_x86.dasc
+@if errorlevel 1 goto :BAD
+
+%LJCOMPILE% /I "." /I %DASMDIR% -DLUAJIT_TARGET=LUAJIT_ARCH_X64 -DLUAJIT_OS=LUAJIT_OS_OTHER -DLUAJIT_DISABLE_JIT -DLUAJIT_DISABLE_FFI host\buildvm*.c
+@if errorlevel 1 goto :BAD
+%LJLINK% /out:buildvm.exe buildvm*.obj
+@if errorlevel 1 goto :BAD
+if exist buildvm.exe.manifest^
+ %LJMT% -manifest buildvm.exe.manifest -outputresource:buildvm.exe
+
+buildvm -m elfasm -o lj_vm.s
+@if errorlevel 1 goto :BAD
+buildvm -m bcdef -o lj_bcdef.h %ALL_LIB%
+@if errorlevel 1 goto :BAD
+buildvm -m ffdef -o lj_ffdef.h %ALL_LIB%
+@if errorlevel 1 goto :BAD
+buildvm -m libdef -o lj_libdef.h %ALL_LIB%
+@if errorlevel 1 goto :BAD
+buildvm -m recdef -o lj_recdef.h %ALL_LIB%
+@if errorlevel 1 goto :BAD
+buildvm -m vmdef -o jit\vmdef.lua %ALL_LIB%
+@if errorlevel 1 goto :BAD
+buildvm -m folddef -o lj_folddef.h lj_opt_fold.c
+@if errorlevel 1 goto :BAD
+
+@rem ---- Cross compiler ----
+@set LJCOMPILE="%SCE_ORBIS_SDK_DIR%\host_tools\bin\orbis-clang" -c -Wall -DLUAJIT_DISABLE_FFI
+@set LJLIB="%SCE_ORBIS_SDK_DIR%\host_tools\bin\orbis-ar" rcus
+@set INCLUDE=""
+
+orbis-as -o lj_vm.o lj_vm.s
+
+@if "%1" neq "debug" goto :NODEBUG
+@shift
+@set LJCOMPILE=%LJCOMPILE% -g -O0
+@set TARGETLIB=libluajitD.a
+goto :BUILD
+:NODEBUG
+@set LJCOMPILE=%LJCOMPILE% -O2
+@set TARGETLIB=libluajit.a
+:BUILD
+del %TARGETLIB%
+@if "%1"=="amalg" goto :AMALG
+for %%f in (lj_*.c lib_*.c) do (
+ %LJCOMPILE% %%f
+ @if errorlevel 1 goto :BAD
+)
+
+%LJLIB% %TARGETLIB% lj_*.o lib_*.o
+@if errorlevel 1 goto :BAD
+@goto :NOAMALG
+:AMALG
+%LJCOMPILE% ljamalg.c
+@if errorlevel 1 goto :BAD
+%LJLIB% %TARGETLIB% ljamalg.o lj_vm.o
+@if errorlevel 1 goto :BAD
+:NOAMALG
+
+@del *.o *.obj *.manifest minilua.exe buildvm.exe
+@echo.
+@echo === Successfully built LuaJIT for PS4 ===
+
+@goto :END
+:BAD
+@echo.
+@echo *******************************************************
+@echo *** Build FAILED -- Please check the error messages ***
+@echo *******************************************************
+@goto :END
+:FAIL
+@echo To run this script you must open a "Visual Studio .NET Command Prompt"
+@echo (64 bit host compiler). The PS4 Orbis SDK must be installed, too.
+:END
diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/vm_arm.dasc b/Build/source/libs/luajit/LuaJIT-2.0.3/src/vm_arm.dasc index 114416a46a0..82cba909cf3 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/vm_arm.dasc +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/vm_arm.dasc @@ -1,6 +1,6 @@ |// Low-level VM code for ARM CPUs. |// Bytecode interpreter, fast functions and helper functions. -|// Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +|// Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h | |.arch arm |.section code_op, code_sub @@ -3217,7 +3217,7 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop) | ins_next | |2: // Check if new value is collectable. - | cmn RB, #-(LJ_TISNUM - LJ_TISGCV) + | cmn RB, #-(LJ_TNUMX - LJ_TISGCV) | ldrbhi RC, GCOBJ:CARG3->gch.marked | bls <1 // tvisgcv(v) | sub CARG1, DISPATCH, #-GG_DISP2G diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/vm_mips.dasc b/Build/source/libs/luajit/LuaJIT-2.0.3/src/vm_mips.dasc index a81dbeebf71..0ec13e608ee 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/vm_mips.dasc +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/vm_mips.dasc @@ -1,6 +1,6 @@ |// Low-level VM code for MIPS CPUs. |// Bytecode interpreter, fast functions and helper functions. -|// Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +|// Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h | |.arch mips |.section code_op, code_sub @@ -2155,7 +2155,7 @@ static void build_subroutines(BuildCtx *ctx) |2: | addiu RC, MULTRES, -8 | jr AT - |. add RA, RA, BASE + |. addu RA, RA, BASE | |3: // Rethrow error from the right C frame. | load_got lj_err_throw @@ -2882,12 +2882,12 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop) | li AT, LJ_GC_BLACK|1 | or TMP3, TMP3, TMP0 | beq TMP3, AT, >2 // Upvalue is closed and black? - |. addiu TMP2, TMP2, -(LJ_TISNUM+1) + |. addiu TMP2, TMP2, -(LJ_TNUMX+1) |1: | ins_next | |2: // Check if new value is collectable. - | sltiu AT, TMP2, LJ_TISGCV - (LJ_TISNUM+1) + | sltiu AT, TMP2, LJ_TISGCV - (LJ_TNUMX+1) | beqz AT, <1 // tvisgcv(v) |. lw TMP1, LO(RD) | lbu TMP3, GCOBJ:TMP1->gch.marked diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/vm_ppc.dasc b/Build/source/libs/luajit/LuaJIT-2.0.3/src/vm_ppc.dasc index f253081100e..da75f556daf 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/vm_ppc.dasc +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/vm_ppc.dasc @@ -1,6 +1,6 @@ |// Low-level VM code for PowerPC CPUs. |// Bytecode interpreter, fast functions and helper functions. -|// Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +|// Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h | |.arch ppc |.section code_op, code_sub @@ -3715,13 +3715,13 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop) | cmplwi cr1, TMP0, 0 | lwz TMP1, 4(RD) | cror 4*cr0+eq, 4*cr0+eq, 4*cr1+eq - | subi TMP2, TMP2, (LJ_TISNUM+1) + | subi TMP2, TMP2, (LJ_TNUMX+1) | bne >2 // Upvalue is closed and black? |1: | ins_next | |2: // Check if new value is collectable. - | cmplwi TMP2, LJ_TISGCV - (LJ_TISNUM+1) + | cmplwi TMP2, LJ_TISGCV - (LJ_TNUMX+1) | bge <1 // tvisgcv(v) | lbz TMP3, GCOBJ:TMP1->gch.marked | andix. TMP3, TMP3, LJ_GC_WHITES // iswhite(v) diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/vm_ppcspe.dasc b/Build/source/libs/luajit/LuaJIT-2.0.3/src/vm_ppcspe.dasc index 293e3919138..adcec244a3d 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/vm_ppcspe.dasc +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/vm_ppcspe.dasc @@ -1,6 +1,6 @@ |// Low-level VM code for PowerPC/e500 CPUs. |// Bytecode interpreter, fast functions and helper functions. -|// Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +|// Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h | |.arch ppc |.section code_op, code_sub diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/vm_x86.dasc b/Build/source/libs/luajit/LuaJIT-2.0.3/src/vm_x86.dasc index cc459254646..8a9b536df5e 100644 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/vm_x86.dasc +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/vm_x86.dasc @@ -1,6 +1,6 @@ |// Low-level VM code for x86 CPUs. |// Bytecode interpreter, fast functions and helper functions. -|// Copyright (C) 2005-2013 Mike Pall. See Copyright Notice in luajit.h +|// Copyright (C) 2005-2014 Mike Pall. See Copyright Notice in luajit.h | |.if P64 |.arch x64 @@ -4652,7 +4652,7 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop) | |2: // Upvalue is black. Check if new value is collectable and white. | sub RD, LJ_TISGCV - | cmp RD, LJ_TISNUM - LJ_TISGCV // tvisgcv(v) + | cmp RD, LJ_TNUMX - LJ_TISGCV // tvisgcv(v) | jbe <1 | test byte GCOBJ:RA->gch.marked, LJ_GC_WHITES // iswhite(v) | jz <1 diff --git a/Build/source/libs/luajit/LuaJIT-2.0.2/src/xedkbuild.bat b/Build/source/libs/luajit/LuaJIT-2.0.3/src/xedkbuild.bat index 375f1955dbe..240ec878daf 100755 --- a/Build/source/libs/luajit/LuaJIT-2.0.2/src/xedkbuild.bat +++ b/Build/source/libs/luajit/LuaJIT-2.0.3/src/xedkbuild.bat @@ -56,11 +56,11 @@ buildvm -m folddef -o lj_folddef.h lj_opt_fold.c @rem ---- Cross compiler ----
@set LJCOMPILE="%XEDK%\bin\win32\cl" /nologo /c /MT /O2 /W3 /GF /Gm- /GR- /GS- /Gy /openmp- /D_CRT_SECURE_NO_DEPRECATE /DNDEBUG /D_XBOX /D_LIB /DLUAJIT_USE_SYSMALLOC
@set LJLIB="%XEDK%\bin\win32\lib" /nologo
-@set INCLUDE="%XEDK%\include\xbox"
+@set "INCLUDE=%XEDK%\include\xbox"
@if "%1" neq "debug" goto :NODEBUG
@shift
-@set LJCOMPILE="%LJCOMPILE%" /Zi
+@set "LJCOMPILE=%LJCOMPILE% /Zi"
:NODEBUG
@if "%1"=="amalg" goto :AMALG
%LJCOMPILE% /DLUA_BUILD_AS_DLL lj_*.c lib_*.c
diff --git a/Build/source/libs/luajit/configure b/Build/source/libs/luajit/configure index 48e2a2da176..1f36913ba1f 100755 --- a/Build/source/libs/luajit/configure +++ b/Build/source/libs/luajit/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for luajit for TeX Live 2.0.2. +# Generated by GNU Autoconf 2.69 for luajit for TeX Live 2.0.3. # # Report bugs to <tex-k@tug.org>. # @@ -579,12 +579,12 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='luajit for TeX Live' PACKAGE_TARNAME='luajit-for-tex-live' -PACKAGE_VERSION='2.0.2' -PACKAGE_STRING='luajit for TeX Live 2.0.2' +PACKAGE_VERSION='2.0.3' +PACKAGE_STRING='luajit for TeX Live 2.0.3' PACKAGE_BUGREPORT='tex-k@tug.org' PACKAGE_URL='' -ac_unique_file="LuaJIT-2.0.2/src/luajit.h" +ac_unique_file="LuaJIT-2.0.3/src/luajit.h" enable_option_checking=no ac_subst_vars='am__EXEEXT_FALSE am__EXEEXT_TRUE @@ -1264,7 +1264,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures luajit for TeX Live 2.0.2 to adapt to many kinds of systems. +\`configure' configures luajit for TeX Live 2.0.3 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1335,7 +1335,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of luajit for TeX Live 2.0.2:";; + short | recursive ) echo "Configuration of luajit for TeX Live 2.0.3:";; esac cat <<\_ACEOF @@ -1435,7 +1435,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -luajit for TeX Live configure 2.0.2 +luajit for TeX Live configure 2.0.3 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1573,7 +1573,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by luajit for TeX Live $as_me 2.0.2, which was +It was created by luajit for TeX Live $as_me 2.0.3, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -3496,7 +3496,7 @@ fi # Define the identity of the package. PACKAGE='luajit-for-tex-live' - VERSION='2.0.2' + VERSION='2.0.3' cat >>confdefs.h <<_ACEOF @@ -5296,7 +5296,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu lj_save_CPPFLAGS=$CPPFLAGS -CPPFLAGS="$CPPFLAGS -I$srcdir/LuaJIT-2.0.2/src $LUAJIT_DEFINES -dM" +CPPFLAGS="$CPPFLAGS -I$srcdir/LuaJIT-2.0.3/src $LUAJIT_DEFINES -dM" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include <lj_arch.h> @@ -5454,7 +5454,7 @@ fi echo timestamp >config.force fi -LUAJIT_TREE=LuaJIT-2.0.2 +LUAJIT_TREE=LuaJIT-2.0.3 ac_config_headers="$ac_config_headers config.h" @@ -6020,7 +6020,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by luajit for TeX Live $as_me 2.0.2, which was +This file was extended by luajit for TeX Live $as_me 2.0.3, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -6086,7 +6086,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -luajit for TeX Live config.status 2.0.2 +luajit for TeX Live config.status 2.0.3 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff --git a/Build/source/libs/luajit/native/configure b/Build/source/libs/luajit/native/configure index 954c7ab90cd..5dd00401042 100755 --- a/Build/source/libs/luajit/native/configure +++ b/Build/source/libs/luajit/native/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for luajit native 2.0.2. +# Generated by GNU Autoconf 2.69 for luajit native 2.0.3. # # Report bugs to <tex-k@tug.org>. # @@ -579,12 +579,12 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='luajit native' PACKAGE_TARNAME='luajit-native' -PACKAGE_VERSION='2.0.2' -PACKAGE_STRING='luajit native 2.0.2' +PACKAGE_VERSION='2.0.3' +PACKAGE_STRING='luajit native 2.0.3' PACKAGE_BUGREPORT='tex-k@tug.org' PACKAGE_URL='' -ac_unique_file="../LuaJIT-2.0.2/src/luajit.h" +ac_unique_file="../LuaJIT-2.0.3/src/luajit.h" ac_subst_vars='am__EXEEXT_FALSE am__EXEEXT_TRUE LTLIBOBJS @@ -1245,7 +1245,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures luajit native 2.0.2 to adapt to many kinds of systems. +\`configure' configures luajit native 2.0.3 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1315,7 +1315,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of luajit native 2.0.2:";; + short | recursive ) echo "Configuration of luajit native 2.0.3:";; esac cat <<\_ACEOF @@ -1411,7 +1411,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -luajit native configure 2.0.2 +luajit native configure 2.0.3 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1512,7 +1512,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by luajit native $as_me 2.0.2, which was +It was created by luajit native $as_me 2.0.3, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -3435,7 +3435,7 @@ fi # Define the identity of the package. PACKAGE='luajit-native' - VERSION='2.0.2' + VERSION='2.0.3' cat >>confdefs.h <<_ACEOF @@ -4525,7 +4525,7 @@ esac -LUAJIT_TREE=../LuaJIT-2.0.2 +LUAJIT_TREE=../LuaJIT-2.0.3 ac_config_headers="$ac_config_headers config.h" @@ -5072,7 +5072,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by luajit native $as_me 2.0.2, which was +This file was extended by luajit native $as_me 2.0.3, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -5138,7 +5138,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -luajit native config.status 2.0.2 +luajit native config.status 2.0.3 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff --git a/Build/source/libs/luajit/version.ac b/Build/source/libs/luajit/version.ac index ec8de5f7abe..754170bc4a4 100644 --- a/Build/source/libs/luajit/version.ac +++ b/Build/source/libs/luajit/version.ac @@ -8,4 +8,4 @@ dnl dnl -------------------------------------------------------- dnl dnl m4-include this file to define the current luajit version -m4_define([luajit_version], [2.0.2]) +m4_define([luajit_version], [2.0.3]) |