No.  See the email you replied to for why not.

David

On 8 Jun 2013, at 18:20, Maxthon Chan <[email protected]> wrote:

> So I can safely do this? (Macro rewritten as inline function)
> 
> static inline __attribute__((always_inline)) BOOL objc_isSmallObject(id obj)
> {
>       return (((intptr_t)obj) & 1) ? YES : NO;
> }
> 
> 在 2013-6-8,上午4:10,David Chisnall <[email protected]> 写道:
> 
>> On 7 Jun 2013, at 16:29, Luboš Doležel <[email protected]> wrote:
>> 
>>> for toll-free bridging in CoreBase, I need a way to detect whether the 
>>> incoming pointer is a small object encoded in a pointer and act accordingly 
>>> (treat it as an ObjC object and avoid reading it).
>> 
>> In objc/runtime.h, there is a constant SMALL_OBJECT_MASK.  If ptr & 
>> SMALL_OBJECT_MASK == 0, then the pointer is not a small object.
>> 
>> On 32-bit platforms, the low bit of the pointer will be 0.  On 64-bit 
>> platforms, the low 3 bits will always be zero.
>> 
>> David
>> 
>> 
>> _______________________________________________
>> Gnustep-dev mailing list
>> [email protected]
>> https://lists.gnu.org/mailman/listinfo/gnustep-dev
> 
> 
> _______________________________________________
> Gnustep-dev mailing list
> [email protected]
> https://lists.gnu.org/mailman/listinfo/gnustep-dev



--
This email complies with ISO 3103


_______________________________________________
Gnustep-dev mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/gnustep-dev

Reply via email to