Re: [PATCH] Objective-C: fix class_ro layout for non-LP64

2021-09-26 Thread Iain Sandoe
Hi Matt > On 26 Sep 2021, at 09:10, Matt Jacobson via Gcc-patches > wrote: > > Thanks for reviewing. I’m happy to make the suggested changes. One comment > inline. > >> On Sep 22, 2021, at 2:49 PM, Iain Sandoe wrote: >> >> However, the behaviour is changed - the existing implementation i

Re: [PATCH] Objective-C: fix class_ro layout for non-LP64

2021-09-26 Thread Matt Jacobson via Gcc-patches
Hi Iain, Thanks for reviewing. I’m happy to make the suggested changes. One comment inline. > On Sep 22, 2021, at 2:49 PM, Iain Sandoe wrote: > > However, the behaviour is changed - the existing implementation is explicit > about the fields and > clears the reserved ones (and, ISTR, that wa

Re: [PATCH] Objective-C: fix class_ro layout for non-LP64

2021-09-22 Thread Iain Sandoe
Hi Matt, thanks for the patch. > On 21 Sep 2021, at 23:29, Matt Jacobson via Gcc-patches > wrote: > > Fix class_ro layout for non-LP64. > On LP64, the requisite padding is added at a lower level. However, the behaviour is changed - the existing implementation is explicit about the field

[PATCH] Objective-C: fix class_ro layout for non-LP64

2021-09-21 Thread Matt Jacobson via Gcc-patches
Fix class_ro layout for non-LP64. On LP64, the requisite padding is added at a lower level. For non-LP64, this fixes binary compatibility with clang-built classes/runtimes. Tested by examining the generated assembly for a class_ro in both cases (and in the case of clang), for both x86_64 (64-bi