GCC 15 ๋ธ๋์น๋ฅผ ๋น๋ํ๋ ๋ฐ ์ฌ์ฉ๋ GCC ์ฝ๋๋ฒ ์ด์ค๋ ARM64 ILP32 ABI(-mabi=ilp32)์ ๋ํ ์ง์์ ์ค๋จํ๋๋ก ์์ ๋์์ต๋๋ค. ILP3์ x32_86 ์์คํ ์ x64 ํ์ ์ํคํ ์ฒ์ ์ ์ฌํ๋ฉฐ 32๋นํธ ํฌ์ธํฐ์ 32๋นํธ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์ ์ง์ ๋ชจ๋ธ์ ์ฌ์ฉํ๋ ๋์์ 64๋นํธ ๋ ์ง์คํฐ ๋ฐ ํ์ฅ ๋ช ๋ น์ ์ง์ํ๋ 64๋นํธ ๋ชจ๋์์ ํ๋ก์ธ์๋ฅผ ์คํํฉ๋๋ค. ILP32 ABI์ ์ ํ ์ฌํญ์ ์ ํ๋ฆฌ์ผ์ด์ ์์ 4GB ์ด์์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฒ๋ฆฌํ ์ ์๋ค๋ ๊ฒ์ ๋๋ค.
ILP32 ABI๋ ์๋ 32๋นํธ ์ ํ๋ฆฌ์ผ์ด์
์ 64๋นํธ AArch64 ํ๋ก์ธ์๋ก ์ด์ํ๋ ๊ณผ์ ์ ๊ฐ์ํํ๊ธฐ ์ํด ์ค๊ณ๋์์ง๋ง, ๋๋ฆฌ ์ฑํ๋์ง๋ ์์์ต๋๋ค. ILP32 ์ง์์ ์ปค๋์ ํตํฉ๋์ง ์์์ต๋๋ค. Linux ๊ทธ๋ฆฌ๊ณ Glibc ์์คํ
๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ์์ต๋๋ค. Linaro ํฌํธ๋ ๋ณ๋๋ก ๊ฐ๋ฐ๋์์ต๋๋ค. Debian ILP32์ ๋ํ ์ง์์ ์์์ง๋ง, 5๋
์ด์ ์ง์์ด ์ค๋จ๋ ์ํ์
๋๋ค. ILP32๋ฅผ ์ง์ํ๋ ๋ช ์ ๋๋ ์์คํ
์ค ํ๋๋ Apple Watch ๊ธฐ๊ธฐ์ ์ฌ์ฉ๋๋ ์ด์ ์ฒด์ ์ธ watchOS์ด์ง๋ง, ์ด OS์์๋ GCC๊ฐ ์ง์๋์ง ์์ต๋๋ค.
์ถ์ฒ : opennet.ru
