In de codebasis van GCC, die wordt gebruikt voor de ontwikkeling van de GCC 15-functie, is een wijziging doorgevoerd die de ondersteuning voor ABI ARM64 ILP32 (-mabi=ilp32) als verouderd markeert. ILP32 lijkt op de subarchitectuur x32 voor x86_64-systemen en maakt het ook mogelijk om 32-bits aanwijzers en een 32-bits adresseringsmodel te gebruiken wanneer de processor in 64-bits modus werkt met ondersteuning voor 64-bits registers en uitgebreide instructies. Een beperking van ABI ILP32 is dat het onmogelijk is om meer dan 4 GB geheugen vanuit de applicatie te adresseren.
ABI ILP32 werd oorspronkelijk ontwikkeld om de overdracht van 32-bits applicaties naar 64-bits AArch64-processors te vereenvoudigen, maar kreeg niet de nodige verbreiding. De ondersteuning voor ILP32 is nooit geaccepteerd in de Linux-kernel en de systeembibliotheek Glibc. Er zijn aparte porten van Linaro en Debian voor ILP32 ontwikkeld, maar deze verkeren al meer dan vijf jaar in een verwaarloosde staat. Van de weinige systemen die ILP32 ondersteunen, is watchOS, gebruikt in Apple Watch-apparaten, genoemd, maar GCC wordt niet ondersteund voor dit besturingssysteem.
Bron: opennet.ru
