A change has been made to the GCC codebase used to create the GCC 15 branch, demoting support for ABI ARM64 ILP32 (-mabi=ilp32) to deprecated status. ILP32 is similar to the x32 subarchitecture for x86_64 systems and also allows the use of 32-bit pointers and a 32-bit memory addressing model while the processor operates in 64-bit mode with support for 64-bit registers and extended instructions. The limitation of the ABI ILP32 is the inability of the application to address more than 4 GB of memory.
Initially, ABI ILP32 was developed to simplify the porting of 32-bit applications to 64-bit AArch64 processors, but it did not gain significant traction. Support for ILP32 was never adopted in the Linux kernel or the Glibc system library. Linaro and Debian ports for ILP32 developed separately, but they have been in a state of neglect for over five years. Among the rare systems supporting ILP32 is the watchOS operating system used in Apple Watch devices, although GCC is not supported for this OS.
Source: opennet.ru
