On 31 May 2008, at 16:21, David Chisnall wrote:

The advantages of this would be:

- No code using GNUstep or other frameworks compiled with clang/LLVM (which we are almost in a position to do) would break if it inherited from a class whose layout changed.

- No ABI breakage would be needed - code compiled with GCC would still work on the modified runtime, although the existing constraints on modification would still apply.

The disadvantages are:

- Currently ivar accesses on most platforms will be a single load / store instruction in an indirect addressing mode with a constant offset embedded in the instruction. This would add another load and addition to every ivar access.

- The extra work that the runtime would do would increase load times slightly.

So, my questions is, is this worth doing?

IMO ... yes. It's a good feature to have, and the overheads get more insignificant as processor seeds increase.


_______________________________________________
Discuss-gnustep mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/discuss-gnustep

Reply via email to