summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--development/luajit/luajit.SlackBuild6
-rw-r--r--development/luajit/luajit.info6
-rw-r--r--development/luajit/v2.0.1_hotfix1.patch103
3 files changed, 5 insertions, 110 deletions
diff --git a/development/luajit/luajit.SlackBuild b/development/luajit/luajit.SlackBuild
index 8a3ea1077c..19bb974c3d 100644
--- a/development/luajit/luajit.SlackBuild
+++ b/development/luajit/luajit.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for luajit
-# Copyright 2013, Andrew Tkalia <anddt@yandex.ru>, Ukraine, Kyiv
+# Copyright 2013-2014, Andrew Tkalia <anddt@yandex.ru>, Ukraine, Kyiv
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=luajit
-VERSION=2.0.1
+VERSION=2.0.3
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -69,8 +69,6 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-patch -p1 < $CWD/v2.0.1_hotfix1.patch
-
make \
PREFIX=/usr \
INSTALL_LIB=/usr/lib${LIBDIRSUFFIX} \
diff --git a/development/luajit/luajit.info b/development/luajit/luajit.info
index 1e9d701f20..ab3d4350b7 100644
--- a/development/luajit/luajit.info
+++ b/development/luajit/luajit.info
@@ -1,8 +1,8 @@
PRGNAM="luajit"
-VERSION="2.0.1"
+VERSION="2.0.3"
HOMEPAGE="http://luajit.org/"
-DOWNLOAD="http://luajit.org/download/LuaJIT-2.0.1.tar.gz"
-MD5SUM="85e406e8829602988eb1233a82e29f1f"
+DOWNLOAD="http://luajit.org/download/LuaJIT-2.0.3.tar.gz"
+MD5SUM="f14e9104be513913810cd59c8c658dc0"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="lua"
diff --git a/development/luajit/v2.0.1_hotfix1.patch b/development/luajit/v2.0.1_hotfix1.patch
deleted file mode 100644
index 0601cd9845..0000000000
--- a/development/luajit/v2.0.1_hotfix1.patch
+++ /dev/null
@@ -1,103 +0,0 @@
-Add missing GC steps for io.* functions.
-MIPS: Fix cache flush/sync for JIT-compiled code jump area.
-ARM: Fix cache flush/sync for exit stubs of JIT-compiled code.
-Fix MSVC intrinsics for older versions.
-Fix memory access check for fast string interning.
-
---- a/src/lib_io.c
-+++ b/src/lib_io.c
-@@ -17,6 +17,7 @@
- #include "lualib.h"
-
- #include "lj_obj.h"
-+#include "lj_gc.h"
- #include "lj_err.h"
- #include "lj_str.h"
- #include "lj_state.h"
-@@ -152,6 +153,7 @@ static int io_file_readline(lua_State *L, FILE *fp, MSize chop)
- if (n >= m - 64) m += m;
- }
- setstrV(L, L->top++, lj_str_new(L, buf, (size_t)n));
-+ lj_gc_check(L);
- return (int)ok;
- }
-
-@@ -163,6 +165,7 @@ static void io_file_readall(lua_State *L, FILE *fp)
- n += (MSize)fread(buf+n, 1, m-n, fp);
- if (n != m) {
- setstrV(L, L->top++, lj_str_new(L, buf, (size_t)n));
-+ lj_gc_check(L);
- return;
- }
- }
-@@ -174,6 +177,7 @@ static int io_file_readlen(lua_State *L, FILE *fp, MSize m)
- char *buf = lj_str_needbuf(L, &G(L)->tmpbuf, m);
- MSize n = (MSize)fread(buf, 1, m, fp);
- setstrV(L, L->top++, lj_str_new(L, buf, (size_t)n));
-+ lj_gc_check(L);
- return (n > 0 || m == 0);
- } else {
- int c = getc(fp);
---- a/src/lj_asm_arm.h
-+++ b/src/lj_asm_arm.h
-@@ -91,6 +91,7 @@ static MCode *asm_exitstub_gen(ASMState *as, ExitNo group)
- *mxp++ = group*EXITSTUBS_PER_GROUP;
- for (i = 0; i < EXITSTUBS_PER_GROUP; i++)
- *mxp++ = ARMI_B|((-6-i)&0x00ffffffu);
-+ lj_mcode_sync(as->mcbot, mxp);
- lj_mcode_commitbot(as->J, mxp);
- as->mcbot = mxp;
- as->mclim = as->mcbot + MCLIM_REDZONE;
---- a/src/lj_asm_mips.h
-+++ b/src/lj_asm_mips.h
-@@ -71,6 +71,7 @@ static void asm_sparejump_setup(ASMState *as)
- memset(mxp+2, 0, MIPS_SPAREJUMP*8);
- mxp += MIPS_SPAREJUMP*2;
- lua_assert(mxp < as->mctop);
-+ lj_mcode_sync(as->mcbot, mxp);
- lj_mcode_commitbot(as->J, mxp);
- as->mcbot = mxp;
- as->mclim = as->mcbot + MCLIM_REDZONE;
---- a/src/lj_def.h
-+++ b/src/lj_def.h
-@@ -243,17 +243,17 @@ static LJ_AINLINE uint32_t lj_getu32(const void *p)
- #endif
-
- #ifdef _M_PPC
--#pragma intrinsic(_CountLeadingZeros)
- unsigned int _CountLeadingZeros(long);
-+#pragma intrinsic(_CountLeadingZeros)
- static LJ_AINLINE uint32_t lj_fls(uint32_t x)
- {
- return _CountLeadingZeros(x) ^ 31;
- }
- #else
--#pragma intrinsic(_BitScanForward)
--#pragma intrinsic(_BitScanReverse)
- unsigned char _BitScanForward(uint32_t *, unsigned long);
- unsigned char _BitScanReverse(uint32_t *, unsigned long);
-+#pragma intrinsic(_BitScanForward)
-+#pragma intrinsic(_BitScanReverse)
-
- static LJ_AINLINE uint32_t lj_ffs(uint32_t x)
- {
---- a/src/lj_str.c
-+++ b/src/lj_str.c
-@@ -48,7 +48,7 @@ static LJ_AINLINE int str_fastcmp(const char *a, const char *b, MSize len)
- {
- MSize i = 0;
- lua_assert(len > 0);
-- lua_assert((((uintptr_t)a + len) & (LJ_PAGESIZE-1)) <= LJ_PAGESIZE-4);
-+ lua_assert((((uintptr_t)a+len-1) & (LJ_PAGESIZE-1)) <= LJ_PAGESIZE-4);
- do { /* Note: innocuous access up to end of string + 3. */
- uint32_t v = lj_getu32(a+i) ^ *(const uint32_t *)(b+i);
- if (v) {
-@@ -121,7 +121,7 @@ GCstr *lj_str_new(lua_State *L, const char *str, size_t lenx)
- 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) & (LJ_PAGESIZE-1)) <= LJ_PAGESIZE-4)) {
-+ if (LJ_LIKELY((((uintptr_t)str+len-1) & (LJ_PAGESIZE-1)) <= LJ_PAGESIZE-4)) {
- while (o != NULL) {
- GCstr *sx = gco2str(o);
- if (sx->len == len && str_fastcmp(str, strdata(sx), len) == 0) {