이 새로운 버전의 GCC 컴파일러 며칠 전에 새로운 기능과 버그 수정을 통해 제공되었습니다.
GNU GCC 프로젝트 팀에 따르면이 새 버전은 버전 9.1은 주요 컴파일러 버전입니다. GCC 8.x 또는 이전 버전에서 사용할 수없는 중요한 새 기능이 포함되어 있습니다. GCC 9.1은 새로운 언어 기능을 가져와야합니다, 새로운 최적화 및 소프트웨어의 일부 성능 향상.
GCC 정보
GCC 컴파일러 컬렉션입니다. GNU 프로젝트에 의해 생성되었습니다. 더 정확하게는 자유 소프트웨어입니다. C, C ++, Objective-C, Java, Ada 및 Fortran을 포함한 다양한 프로그래밍 언어를 컴파일 할 수 있습니다.
또한 대부분의 자유 소프트웨어 개발에 사용. 최신 주요 컴파일러 릴리스는 2018 년 8.1 월 버전 XNUMX로 거슬러 올라갑니다.
Red Hat 개발자 인 Jakub Jelinek은 GCC 8.1이 GCC 7.x 및 이전 버전의 GCC에서 사용할 수없는 중요한 새 기능을 제공하는 주요 릴리스를 대표한다고 설명했습니다.
이 시점에서 C ++ 프런트 엔드는 -std = c ++ 2a 및 -std = gnu ++ 2a 옵션을 사용하여 일부 C ++ 2a 함수에 대한 실험적 지원을 제공했습니다.
일반 개선 수준의 버전 8.2에서 대용량 바이너리 파일 생성 중 파티셔닝 알고리즘의 오버플로로 인한 LTO (링크 시간 최적화) 성능 문제가 수정되었습니다.
지난 8 월 컴파일러 버전 8.3 릴리스와 함께 8.2.x 분기에서 수정이 계속되었습니다. 이 릴리스는 GCC의 이전 버전과 비교하여 GCC XNUMX의 회귀 패치가 포함 된 버그 수정 릴리스입니다. GCC 팀은 3 월 9 일 새 브랜치를 시작하여 버전 XNUMX를 출시했습니다.
GCC 9.1의 새로운 기능은 무엇입니까?
이 버전에서는 컴파일러 버전 17이 더 이상 경험되지 않기 때문에 C ++ 8.1 지원이 도입되었습니다.엘. 따라서 C ++ 17에 대한 지원이 이제 안정적입니다.
의 인터페이스 C ++는 C ++ 17의 전체 언어를 구현합니다. C ++ 표준 라이브러리에 대한 지원이 거의 완료되었습니다.
El 프런트 엔드 및 C ++ 라이브러리에는 C ++ 2a에서 코딩 된 다른 많은 기능도 있습니다.. 또한 GCC에는 D 언어 용 새 인터페이스가 있으며 이제 부분적으로 OpenMP 5.0을 지원하고 OpenACC 2.5에 대한 지원을 거의 완벽하게 통합합니다.
많은 사람들에게 GCC 9는 개발자 성능을 향상시키기 위해 뛰어난 기능과 향상된 기능을 제공하는 강력한 컴파일러 버전입니다.
GCC 9.1의 많은 새로운 기능은 다음과 같습니다.
- D 프로그래밍 언어로 작성된 코드 컴파일 지원 지원
- 새로운 AMD GCN GPU 백엔드가 GCC에 추가되었습니다. 구현은 현재 단일 스레드 프로그램 컴파일로 제한됩니다.
- LRA는 이제 ARC 대상에 대해 기본적으로 활성화됩니다. -mlra로 제어 할 수 있습니다.
- 이미지 코드 및 분기 및 인덱스 밀도 문에 대한 지원이 추가되었습니다.
- GCC에는 C-SKY V2 프로세서를 대상으로하는 새로운 백엔드가 추가되었습니다.
- Intel MPX 지원이 제거되었습니다.
- OpenRISC 프로세서 지원을위한 새로운 백엔드가 추가되었습니다.
- OpenACC 2.5 사양에 대한 지원이 거의 완료되었습니다.
- GCC의 내부 "selftest"패키지는 이제 C ++ 및 C (컴파일러의 디버그 버전에서)에서 작동합니다.
- GCC의 Fortran 지원도 개선되었습니다. 이제 비동기 I / O 및 기타 기능을 처리합니다.
- 프로 시저 간 최적화 (OPI), 프로필 기반 최적화, 링크 시간 최적화 (LTO) 및 기타 여러 최적화를 통해 더 나은 코드 품질을 보장합니다.
- 66 코어 컴퓨터에서 Firefox 6.2.3 및 LibreOffice 8의 총 컴파일 시간이 GCC 5에 비해 약 8.3 % 단축되었습니다. LTO 개체 파일의 크기가 7 % 줄어 듭니다.
- LTO 링크 시간은 11 개의 코어 머신에서 8 % 향상되고 더 많은 병렬 구성 환경을 위해 크게 진화합니다. 링크 시간 최적화의 직렬 단계는 28 % 더 빠르며 메모리를 20 % 덜 사용합니다. Parallel Stage는 이제 128 개 대신 32 개의 파티션을 분할하고 각 사용자의 메모리 사용량을 30 % 줄입니다.
- 컴퓨터에서 읽을 수있는 형식의 진단을 위해 새로운 옵션 "-fdiagnostics-format = json"이 도입되었습니다.
출처 : https://gcc.gnu.org