Differences From Artifact [959b2ef399]:
- File src/runtime/class.m — part of check-in [c7f0229795] at 2020-01-02 01:51:34 on branch trunk — Update copyright (user: js, size: 21735) [annotate] [blame] [check-ins using] [more...]
To Artifact [02bad041ab]:
- File
src/runtime/class.m
— part of check-in
[8707dd73c4]
at
2020-06-29 20:30:49
on branch tagged-pointers
— Add support for tagged pointers in object_getClass
This already makes tagged pointers work in the non-assembly lookup. (user: js, size: 21822) [annotate] [blame] [check-ins using]
︙ | ︙ | |||
842 843 844 845 846 847 848 849 850 851 852 853 854 855 | object_getClass(id object_) { struct objc_object *object; if (object_ == nil) return Nil; object = (struct objc_object *)object_; return object->isa; } Class object_setClass(id object_, Class class) | > > > | 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 | object_getClass(id object_) { struct objc_object *object; if (object_ == nil) return Nil; if (object_isTaggedPointer(object_)) return object_getTaggedPointerClass(object_); object = (struct objc_object *)object_; return object->isa; } Class object_setClass(id object_, Class class) |
︙ | ︙ |