]> git.ipfire.org Git - thirdparty/LuaJIT.git/commitdiff
Merge branch 'master' into v2.1
authorMike Pall <mike>
Tue, 22 Apr 2014 09:29:05 +0000 (11:29 +0200)
committerMike Pall <mike>
Tue, 22 Apr 2014 09:29:05 +0000 (11:29 +0200)
1  2 
src/Makefile
src/lj_gc.c
src/lj_state.c
src/lj_trace.c

diff --cc src/Makefile
Simple merge
diff --cc src/lj_gc.c
index 8fea98539843334edf9068175ff075df26614b66,c856df4db6beb9c1f27f77e29a222b862cb4d09f..376c9d09f91ccc3325d71220e499143bab41a697
@@@ -625,9 -631,10 +625,11 @@@ static size_t gc_onestep(lua_State *L
    case GCSsweep: {
      MSize old = g->gc.total;
      setmref(g->gc.sweep, gc_sweep(g, mref(g->gc.sweep, GCRef), GCSWEEPMAX));
+     lua_assert(old >= g->gc.total);
+     g->gc.estimate -= old - g->gc.total;
      if (gcref(*mref(g->gc.sweep, GCRef)) == NULL) {
 -      gc_shrink(g, L);
 +      if (g->strnum <= (g->strmask >> 2) && g->strmask > LJ_MIN_STRTAB*2-1)
 +      lj_str_resize(L, g->strmask >> 1);  /* Shrink string table. */
        if (gcref(g->gc.mmudata)) {  /* Need any finalizations? */
        g->gc.state = GCSfinalize;
  #if LJ_HASFFI
diff --cc src/lj_state.c
Simple merge
diff --cc src/lj_trace.c
Simple merge