David Chisnall
e87b5c1503
Remove an assertion that was useful in debugging, but not actually
...
correct.
Instance variables are not normally zero-sized, but some are. Examples
include zero-length arrays at the end of a class, and bitfields.
Fixes #30
Fixes #31
9 years ago
David Chisnall
4fd27a066f
When moving ivars to increase their alignment, make sure later ivars are
...
also moved.
Fixes #27
9 years ago
David Chisnall
695282e5d7
Don't conditionally run some cheap code that becomes a no-ops in the
...
case when we weren't running it.
9 years ago
David Chisnall
5725aa74ec
Fix the computation of the size when realigning ivars.
...
Fixes #25 , #26
9 years ago
David Chisnall
6df23377a0
Forcibly realign instance variables to take into account the padding
...
from the reference count.
9 years ago
Niels Grewe
f264fd159d
Fix a segfault on (s|g)etting ivars.
...
When we were trying to get or set an ivar on a class that had
no ivars defined, we'd dereference a NULL ivar list while
determining the ownership qualifier.
10 years ago
David Chisnall
2777fea77a
Enable correct behaviour with respect to ARC for objc_{g,s}etIvar().
10 years ago
David Chisnall
bfe5de572e
Fix the ivar access functions for objects that are not pointer sized.
10 years ago
theraven
da6d7f6060
Remove ivar offset fudging code, as it appears to break a lot of things.
13 years ago
theraven
16bfdc8ee6
Align ivars to 16 byte boundaries when they are larger than a pointer. This is
...
currently overly defensive.
Add a test case for this realignment.
13 years ago
theraven
f6697e5f86
Remove spurious &s.
15 years ago
theraven
79b67ad044
Added missing ivar access functions.
15 years ago
theraven
6c7cf4a5a6
Add visibility attributes on all internal functions so that we aren't ever exporting them outside of libobjc.
15 years ago
theraven
569a48650d
Various tidies.
16 years ago
theraven
8158ff0a7a
Tweak fragile ABI test to account for alignment padding.
16 years ago
theraven
bb8cafaa15
Finished rewriting the loader. It's now cleanly separated into logically-separate components, so there's a chance it might actually be maintainable...
16 years ago
theraven
bfbc15e4f7
Fix 64-bit warning.
16 years ago
theraven
7b8b3839df
More refactoring.
16 years ago