Index: src/OFObject.m ================================================================== --- src/OFObject.m +++ src/OFObject.m @@ -126,11 +126,10 @@ #endif } + (void)initialize { - autoreleasepool = [OFAutoreleasePool class]; } + alloc { OFObject *instance; @@ -618,10 +617,17 @@ #endif } - autorelease { + /* + * Cache OFAutoreleasePool since class lookups are expensive with the + * GNU runtime. + */ + if (autoreleasepool == Nil) + autoreleasepool = [OFAutoreleasePool class]; + [autoreleasepool addObjectToTopmostPool: self]; return self; }