W GCC postanowiono usunąć wsparcie dla ABI ARM64 ILP32

Zmieniono bazę kodu GCC, używaną do tworzenia gałęzi GCC 15, aby usunąć wsparcie dla ABI ARM64 ILP32 (-mabi=ilp32). ILP32 przypomina subarchitekturę x32 dla systemów x86_64 i umożliwia użycie 32-bitowych wskaźników oraz 32-bitowego modelu adresowania pamięci, podczas gdy procesor działa w trybie 64-bitowym z obsługą 64-bitowych rejestrów i rozszerzonych instrukcji. Ograniczeniem ABI ILP32 jest niemożność adresowania z aplikacji więcej niż 4 GB pamięci.

Początkowo ABI ILP32 został opracowany w celu ułatwienia przenoszenia aplikacji 32-bitowych na 64-bitowe procesory AArch64, jednak nie zyskał on odpowiedniej popularności. Wsparcie dla ILP32 nigdy nie zostało zaakceptowane w jądrze Linux i bibliotece systemowej Glibc. Oddzielnie rozwijały się porty Linaro i Debian dla ILP32, ale od ponad pięciu lat są w stanie porzucenia. Z nielicznych systemów obsługujących ILP32 można wymienić system operacyjny watchOS, stosowany w urządzeniach Apple Watch, jednak GCC nie jest wspierany dla tego systemu.

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster