diff options
| author | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2003-12-09 14:56:11 -0200 |
|---|---|---|
| committer | Roberto Ierusalimschy <roberto@inf.puc-rio.br> | 2003-12-09 14:56:11 -0200 |
| commit | df429f163ada6581d921e7f51b016f1abfeefddd (patch) | |
| tree | a1af3ce961377e6548074f706f65e2b34181918f /lcode.c | |
| parent | fe595a45c246faf2cf12084e7aac4b772f8f72da (diff) | |
| download | lua-df429f163ada6581d921e7f51b016f1abfeefddd.tar.gz lua-df429f163ada6581d921e7f51b016f1abfeefddd.tar.bz2 lua-df429f163ada6581d921e7f51b016f1abfeefddd.zip | |
First version of incremental GC
Diffstat (limited to '')
| -rw-r--r-- | lcode.c | 6 |
1 files changed, 4 insertions, 2 deletions
| @@ -1,5 +1,5 @@ | |||
| 1 | /* | 1 | /* |
| 2 | ** $Id: lcode.c,v 1.119 2003/08/27 21:01:44 roberto Exp roberto $ | 2 | ** $Id: lcode.c,v 1.120 2003/11/19 19:59:18 roberto Exp roberto $ |
| 3 | ** Code generator for Lua | 3 | ** Code generator for Lua |
| 4 | ** See Copyright Notice in lua.h | 4 | ** See Copyright Notice in lua.h |
| 5 | */ | 5 | */ |
| @@ -14,6 +14,7 @@ | |||
| 14 | #include "lcode.h" | 14 | #include "lcode.h" |
| 15 | #include "ldebug.h" | 15 | #include "ldebug.h" |
| 16 | #include "ldo.h" | 16 | #include "ldo.h" |
| 17 | #include "lgc.h" | ||
| 17 | #include "llex.h" | 18 | #include "llex.h" |
| 18 | #include "lmem.h" | 19 | #include "lmem.h" |
| 19 | #include "lobject.h" | 20 | #include "lobject.h" |
| @@ -219,7 +220,8 @@ static int addk (FuncState *fs, TObject *k, TObject *v) { | |||
| 219 | luaM_growvector(fs->L, f->k, fs->nk, f->sizek, TObject, | 220 | luaM_growvector(fs->L, f->k, fs->nk, f->sizek, TObject, |
| 220 | MAXARG_Bx, "constant table overflow"); | 221 | MAXARG_Bx, "constant table overflow"); |
| 221 | while (oldsize < f->sizek) setnilvalue(&f->k[oldsize++]); | 222 | while (oldsize < f->sizek) setnilvalue(&f->k[oldsize++]); |
| 222 | setobj(&f->k[fs->nk], v); /* write barrier */ | 223 | setobj(&f->k[fs->nk], v); |
| 224 | luaC_barrier(fs->L, f, v); | ||
| 223 | return fs->nk++; | 225 | return fs->nk++; |
| 224 | } | 226 | } |
| 225 | } | 227 | } |
