|
|
|
|
@ -6,13 +6,29 @@ libobjc2). This runtime was designed to support the features of Objective-C 2
|
|
|
|
|
for use with GNUstep and other Objective-C programs. Highlights of this
|
|
|
|
|
release include:
|
|
|
|
|
|
|
|
|
|
- Compatibility with the new runtime APIs introduced with Mac OS X 10.7.
|
|
|
|
|
- Compatibility with the new runtime APIs introduced with Mac OS X 10.7 / iOS 5.
|
|
|
|
|
|
|
|
|
|
- Support for small objects (ones hidden inside a pointer). On 32-bit systems,
|
|
|
|
|
the runtime permits one small object class, on 64-bit systems it permits 4.
|
|
|
|
|
This is used by GNUstep for small NSNumber instances, and these are used by
|
|
|
|
|
LanguageKit for message sending to small integers.
|
|
|
|
|
|
|
|
|
|
- Support for prototype-style object orientation. You can now add methods, as
|
|
|
|
|
well as associated references, to individual objects, as well as cloning
|
|
|
|
|
them. The runtime now supports everything required for the JavaScript object
|
|
|
|
|
model, including the ability to use blocks as methods.
|
|
|
|
|
model, including the ability to use blocks as methods on x86, x86-64 and ARM.
|
|
|
|
|
|
|
|
|
|
- Support for Apple-compatible objc_msgSend() functions for x86, x86-64, and
|
|
|
|
|
ARM. Using these approximately halves the cost of message sending operations
|
|
|
|
|
and results in a 10% smaller total binary size.
|
|
|
|
|
|
|
|
|
|
- A fully maintained POSIX Makefile to make bootstrapping builds and packaging
|
|
|
|
|
easier.
|
|
|
|
|
|
|
|
|
|
Various features of this release required some per-platform assembly code. For
|
|
|
|
|
the 1.6.0 release, ARM, x86 and x86-64 (with the SysV ABI, not with the Win64
|
|
|
|
|
ABI) are supported. Future releases in the 1.6.x series will extend this to
|
|
|
|
|
other architectures.
|
|
|
|
|
|
|
|
|
|
You may obtain the code for this release from subversion at the following
|
|
|
|
|
subversion branch:
|
|
|
|
|
|