Do kódu GCC, ktorý sa používa na vytvorenie vetvy GCC 15, bola zavedená zmena, ktorá zaradila podporu ABI ARM64 ILP32 (-mabi=ilp32) medzi zastarané. ILP32 pripomína subarchitektúru x32 pre systémy x86_64 a umožňuje používať 32-bitové ukazovatele a 32-bitový model adresovania pamäte, keď procesor pracuje v 64-bitovom režime s podporou 64-bitových registrov a rozšírených inštrukcií. Obmedzením ABI ILP32 je nemožnosť adresovať z aplikácie viac ako 4 GB pamäte.
Pôvodne bol ABI ILP32 navrhnutý na zjednodušenie prenosu 32-bitových aplikácií na 64-bitové procesory AArch64, ale nedostal sa do širokého používania. Podpora ILP32 nebola prijatá do jadra Linux a systémovej knižnice Glibc. Samostatne sa vyvíjali porty Linaro a Debian pre ILP32, ale už viac ako päť rokov sú v abandonovanom stave. Zriedkavé systémy, ktoré podporujú ILP32, zahŕňajú operačný systém watchOS používaný v zariadeniach Apple Watch, avšak GCC nie je pre tento OS podporovaný.
Zdroj: opennet.ru
