Commit Graph

16 Commits

Author SHA1 Message Date
David Chisnall
d6ca506d6a Make sure that we remove hidden classes from the subclass list, as well as adding them. Also make sure that subclass list manipulation is protected by the runtime lock. 2015-03-23 14:10:07 +00:00
theraven
d838f7ad28 Don't crash when trying to synchronize on nil (but don't do anything sensible either). 2013-07-18 09:14:02 +00:00
theraven
38568fca57 Remove some dead code. Fix a bug when cloning objects with no associated references. 2011-08-07 20:39:33 +00:00
theraven
5d3c047fa2 Finished implementing JavaScript-style prototypes. 2011-08-07 19:50:32 +00:00
theraven
b54719abf1 Basic support for prototype-style object orientation (you can now add methods to an individual object). 2011-08-07 17:04:44 +00:00
theraven
8af52846b7 Small object (hidden in a pointer) support. 2011-07-26 17:39:13 +00:00
theraven
663995f08c Small cleanup. Use the ARC functions for retain / release / autorelease messages everywhere. This will make properties faster if we're using an ARC-compatible NSObject. 2011-07-04 20:58:46 +00:00
theraven
e05c9c2ff5 More GC fixes 2011-05-26 13:28:31 +00:00
theraven
a4decfa4e3 Add hidden class -dealloc method as -finalize as well. 2011-05-23 17:38:31 +00:00
theraven
9015795dde Use explicitly typed memory for instances. 2011-05-23 17:26:44 +00:00
theraven
9dcc66f7f6 Make sure that associated objects and blocks use GC-scanned memory in GC mode.
Blocks do not yet support __weak bound variables.  This needs fixing before the release.
2011-05-23 16:24:45 +00:00
theraven
52381f163b Make sure locks are initialised before using them and destroyed afterwards. 2011-04-20 12:45:15 +00:00
theraven
7b49755964 Dtable cleanup cleanups. 2011-04-19 10:55:10 +00:00
theraven
d7056f6de2 Simplify @synchronize() and improve efficiency (space and time). 2011-04-17 18:04:58 +00:00
theraven
987ab88a94 Don't do hidden-class transforms for classes, just dangle the look-aside data off the class structure.
Individually lock classes so that +initialize can be sent concurrently to two different classes in two different threads.
2011-04-17 17:31:37 +00:00
theraven
e198597bd3 Added support for associative references. Modified sync code to use this. 2011-04-15 11:20:37 +00:00