Differences From Artifact [43abec3b5d]:
- File
src/OFObject.m
— part of check-in
[2b20e164d7]
at
2012-11-16 21:16:06
on branch trunk
— Implement forwarding target for the Apple runtime.
Only on x86_64 so far, others to follow. (user: js, size: 25774) [annotate] [blame] [check-ins using]
To Artifact [62c904a387]:
- File src/OFObject.m — part of check-in [1ec18e57bc] at 2012-11-16 23:07:44 on branch trunk — Implement forwarding target for Apple/i386. (user: js, size: 25826) [annotate] [blame] [check-ins using]
︙ | ︙ | |||
63 64 65 66 67 68 69 | #import "instance.h" #if defined(OF_ATOMIC_OPS) # import "atomic.h" #elif defined(OF_THREADS) # import "threading.h" #endif | | > > | 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 | #import "instance.h" #if defined(OF_ATOMIC_OPS) # import "atomic.h" #elif defined(OF_THREADS) # import "threading.h" #endif #ifdef OF_APPLE_RUNTIME # if defined(__x86_64__) || defined(__i386__) extern id of_forward(id, SEL, ...); extern struct stret of_forward_stret(id, SEL, ...); # endif #endif struct pre_ivar { int32_t retainCount; struct pre_mem *firstMem, *lastMem; #if !defined(OF_ATOMIC_OPS) && defined(OF_THREADS) of_spinlock_t retainCountSpinlock; |
︙ | ︙ | |||
254 255 256 257 258 259 260 | #if !defined(OF_APPLE_RUNTIME) || defined(__OBJC2__) objc_setUncaughtExceptionHandler(uncaught_exception_handler); #endif #if defined(OF_OBJFW_RUNTIME) objc_forward_handler = forward_handler; #elif defined(OF_APPLE_RUNTIME) | | | 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 | #if !defined(OF_APPLE_RUNTIME) || defined(__OBJC2__) objc_setUncaughtExceptionHandler(uncaught_exception_handler); #endif #if defined(OF_OBJFW_RUNTIME) objc_forward_handler = forward_handler; #elif defined(OF_APPLE_RUNTIME) # if defined(__x86_64__) || defined(__i386__) objc_setForwardHandler(of_forward, of_forward_stret); # endif #endif #ifdef HAVE_OBJC_ENUMERATIONMUTATION objc_setEnumerationMutationHandler(enumeration_mutation_handler); #endif |
︙ | ︙ |