aboutsummaryrefslogtreecommitdiff
path: root/lvm.c
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>2002-11-14 14:15:53 -0200
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>2002-11-14 14:15:53 -0200
commit41fd639cab8e2835ad2860442c19eb78fbc777be (patch)
tree4ae644a4612561537169d070a90fdfd826024b26 /lvm.c
parenta845a46cc883a76cb5175c0755805ba44a37d909 (diff)
downloadlua-41fd639cab8e2835ad2860442c19eb78fbc777be.tar.gz
lua-41fd639cab8e2835ad2860442c19eb78fbc777be.tar.bz2
lua-41fd639cab8e2835ad2860442c19eb78fbc777be.zip
documentation for write barriers
Diffstat (limited to 'lvm.c')
-rw-r--r--lvm.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/lvm.c b/lvm.c
index 93c95e43..03ef02fe 100644
--- a/lvm.c
+++ b/lvm.c
@@ -1,5 +1,5 @@
1/* 1/*
2** $Id: lvm.c,v 1.259 2002/11/06 19:08:00 roberto Exp roberto $ 2** $Id: lvm.c,v 1.260 2002/11/07 15:37:10 roberto Exp roberto $
3** Lua virtual machine 3** Lua virtual machine
4** See Copyright Notice in lua.h 4** See Copyright Notice in lua.h
5*/ 5*/
@@ -57,13 +57,13 @@ const TObject *luaV_tonumber (const TObject *obj, TObject *n) {
57} 57}
58 58
59 59
60int luaV_tostring (lua_State *L, TObject *obj) { 60int luaV_tostring (lua_State *L, StkId obj) {
61 if (!ttisnumber(obj)) 61 if (!ttisnumber(obj))
62 return 0; 62 return 0;
63 else { 63 else {
64 char s[32]; /* 16 digits, sign, point and \0 (+ some extra...) */ 64 char s[32]; /* 16 digits, sign, point and \0 (+ some extra...) */
65 lua_number2str(s, nvalue(obj)); 65 lua_number2str(s, nvalue(obj));
66 setsvalue(obj, luaS_new(L, s)); 66 setsvalue2s(obj, luaS_new(L, s));
67 return 1; 67 return 1;
68 } 68 }
69} 69}
@@ -176,7 +176,7 @@ void luaV_settable (lua_State *L, const TObject *t, TObject *key, StkId val) {
176 TObject *oldval = luaH_set(L, h, key); /* do a primitive set */ 176 TObject *oldval = luaH_set(L, h, key); /* do a primitive set */
177 if (!ttisnil(oldval) || /* result is no nil? */ 177 if (!ttisnil(oldval) || /* result is no nil? */
178 (tm = fasttm(L, h->metatable, TM_NEWINDEX)) == NULL) { /* or no TM? */ 178 (tm = fasttm(L, h->metatable, TM_NEWINDEX)) == NULL) { /* or no TM? */
179 setobj2t(oldval, val); 179 setobj2t(oldval, val); /* write barrier */
180 return; 180 return;
181 } 181 }
182 /* else will try the tag method */ 182 /* else will try the tag method */
@@ -453,7 +453,7 @@ StkId luaV_execute (lua_State *L) {
453 } 453 }
454 case OP_SETUPVAL: { 454 case OP_SETUPVAL: {
455 int b = GETARG_B(i); 455 int b = GETARG_B(i);
456 setobj(cl->upvals[b]->v, ra); 456 setobj(cl->upvals[b]->v, ra); /* write barrier */
457 break; 457 break;
458 } 458 }
459 case OP_SETTABLE: { 459 case OP_SETTABLE: {
@@ -696,7 +696,7 @@ StkId luaV_execute (lua_State *L) {
696 } 696 }
697 bc &= ~(LFIELDS_PER_FLUSH-1); /* bc = bc - bc%FPF */ 697 bc &= ~(LFIELDS_PER_FLUSH-1); /* bc = bc - bc%FPF */
698 for (; n > 0; n--) 698 for (; n > 0; n--)
699 setobj2t(luaH_setnum(L, h, bc+n), ra+n); 699 setobj2t(luaH_setnum(L, h, bc+n), ra+n); /* write barrier */
700 break; 700 break;
701 } 701 }
702 case OP_CLOSE: { 702 case OP_CLOSE: {