GCC 프로젝트는 ARM64 ILP32 응용 프로그램 이진 인터페이스(Application Binary Interface, ABI) 지원을 공식적으로 중단하기로 결정했습니다. 이 결정은 AArch64 아키텍처로의 전환을 용이하게 하기 위해 처음 설계된 ILP32에 대한 오랜 비활동 기간을 거친 후 내려졌습니다. 그러나 ILP32 지원은 리눅스 커널이나 GNU C 라이브러리(GLIBC)에 통합되지 않았기 때문에 수년간 지원되지 않았습니다. GCC 팀은 지원되지 않는 기능을 유지하는 것이 불필요하다고 결론지었고, 현재 ILP32를 중단하기로 결정했으며, 향후 릴리스에서 완전 제거될 가능성도 있습니다.
이러한 조치는 소프트웨어 개발에서 구식 또는 사용되지 않는 기능을 유지하는 것이 코드베이스를 복잡하게 하고 발전을 저해할 수 있다는 더 넓은 추세를 반영합니다. ILP32를 제거함으로써 GCC는 자사의 제공 사항을 간소화하고, 더 관련성이 높고 적극적으로 지원되는 기능에 집중하여 성능을 향상시키고 개발자들의 유지 관리 부담을 줄이는 것을 목표로 하고 있습니다.
이 중단의 의미는 특정 응용 프로그램을 위해 ILP32에 의존해온 개발자들에게 상당한 영향을 미칩니다. 이들은 AArch64의 LP64와 같이 적극적으로 지원되는 대체 ABI를 사용하도록 코드를 조정해야 할 것입니다. 이러한 전환은 추가적인 개발 노력이 필요할 수 있지만, 궁극적으로 GCC 툴체인의 전반적인 효율성과 관련성을 개선하는 목표와 일치합니다.
* 이 글은
phoronix.com의 기사를 요약한 것입니다. 전체 기사의 내용은
이곳에서 확인하실 수 있습니다.