summaryrefslogtreecommitdiffstats
path: root/gc.c
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2000-08-07 05:05:04 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2000-08-07 05:05:04 +0000
commit031e40b61d2cdb4c8aac9456e08cec9bb8729fdc (patch)
tree81d59bfb40b0efc64b3acfc9cbe4dd7d3628af85 /gc.c
parent348746f66f9df54f66f83478093a6189f5d140df (diff)
downloadruby-031e40b61d2cdb4c8aac9456e08cec9bb8729fdc.tar.gz
ruby-031e40b61d2cdb4c8aac9456e08cec9bb8729fdc.tar.xz
ruby-031e40b61d2cdb4c8aac9456e08cec9bb8729fdc.zip
matz
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@876 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'gc.c')
-rw-r--r--gc.c14
1 files changed, 4 insertions, 10 deletions
diff --git a/gc.c b/gc.c
index 0db6354df..fb549f77d 100644
--- a/gc.c
+++ b/gc.c
@@ -278,15 +278,11 @@ rb_newobj()
{
VALUE obj;
- if (freelist) {
- retry:
- obj = (VALUE)freelist;
- freelist = freelist->as.free.next;
- return obj;
- }
- rb_gc();
+ if (!freelist) rb_gc();
- goto retry;
+ obj = (VALUE)freelist;
+ freelist = freelist->as.free.next;
+ return obj;
}
VALUE
@@ -649,8 +645,6 @@ rb_gc_mark(ptr)
}
}
-#define MIN_FREE_OBJ 512
-
static void obj_free _((VALUE));
static void