3 ms·
Even if bitcode was fully architecture independent, you would immediately hit a wall with various framework constants having different #defined integer values.
by 0x0 4y ago
Even if bitcode was fully architecture independent, you would immediately hit a wall with various framework constants having different #defined integer values. For example, https://developer.apple.com/documentation/apple-silicon/addressing-architectural-differences-in-your-macos-code https://developer.apple.com/documentation/apple-silicon/addr... talks about how the NSTextAlignment enum has diverging definitions between archs.
By the way something similar happens on Linux where kernel syscalls have different numbers between archs, for example. (Although on mac/ios, syscalls aren't guaranteed to be stable even across minor macos versions; the only officially supported interface to the kernel is libc)
- skissane 4y ago> talks about how the NSTextAlignment enum has diverging definitions between archs I wonder why: was there some benefit for Apple in doing this?
- plorkyeran 4y agoThat specific change is possibly just a mistake. They take advantage of architecture transitions to do cleanup which they couldn't do normally because it's an ABI-breaking change. In that specific case, I'd guess they removed the enum values which were no longer actually supported and (accidentally?) renumbered the rest.
- DaiPlusPlus 4y ago> the only officially supported interface to the kernel is libc aka "no fun allowed"