IBM XL C/C++ for z/VM
z/VM 플랫폼을 위한 고급 최적화 컴파일러
추상적인 기하학적 쉐브론의 일러스트

IBM® XL C/C++ for z/VM은 크고 복잡하며 계산 집약적인 애플리케이션을 개발하도록 설계된 최적화 컴파일러입니다. 이를 통해 IBM® Z 시스템 하드웨어에 최적화된 C 및 C++ 애플리케이션을 작성할 수 있습니다.

IBM XL C/C++ for z/VM은 z/VM 플랫폼에서 언어 중심 C/C++ 애플리케이션을 개발하는 환경입니다. z/OS XL C/C++의 z/VM 지원 버전으로 C/C++ 컴파일러 컴포넌트(XL C/C++ 컴파일러라고 함)와 일부 C/C++ 애플리케이션 개발 유틸리티가 함께 제공됩니다.

XL C/C++ for z/VM 1.3 사용자 및 구현 가이드

이점 애플리케이션 성능 최적화

루프 성능을 개선하는 최적화 기술인 고차 변환을 지원합니다. 컴파일러의 가장 높고 가장 공격적인 최적화 레벨인 OPTIMIZE(3) 또는 OPT(3)를 지원합니다.

애플리케이션을 손쉽게 마이그레이션

ISO/IEC 9899:1999 국제 표준(C99), ANSI/ISO 1998 C++ 표준, 표준을 준수하는 C 컴파일러를 준수하며 C++ 표준 라이브러리를 함께 제공합니다.

애플리케이션 포팅 간소화

업계 표준을 지원하여 IBM 플랫폼과 타사 플랫폼 모두에서 z/VM으로 애플리케이션을 포팅하는 작업을 간소화합니다.

기능
광범위한 최적화

OPT(3) 지원으로 루프 언롤 옵션과 pragma, 여러 새로운 내장 기능을 비롯하여 애플리케이션 성능을 개선할 수 있는 추가 옵션과 pragma가 도입되었습니다. OPT(0), OPT(2), OPT(3) 옵션을 사용하면 포괄적인 하위 레벨 최적화부터 보다 광범위한 최적화까지 실행되는 최적화 레벨을 이용할 수 있습니다.


C++ 표준 라이브러리

IBM XL C/C++ for z/VM에는 입출력(I/O) 작업용 C++ 표준 I/O 스트림 라이브러리, 복소수 조작용 C++ 표준 복소수학 라이브러리와 C++ 템플릿 기반 알고리즘, 컨테이너 클래스, 반복자, 현지화 오브젝트, 문자열 클래스로 구성된 표준 템플릿 라이브러리(STL)가 포함되어 있습니다.


Unicode 리터럴 지원

IBM XL C/C++ for z/VM은 C에서는 typedef를 사용하고 C++에서는 기본 유형으로 사용하여 char16_t 및 char32_t 유형을 지원하며, 이러한 유형을 이용하는 코드를 z/OS로 쉽게 포팅할 수 있습니다.


GNU 컴파일러 콜렉션(GCC)과의 호환성

명령문 표현식 구성에 대한 C 지원을 통해 프로그래머는 표현식 내에서 루프, 스위치, 로컬 변수를 사용할 수 있으며, 제로 익스텐션 배열 구성에 대한 C 및 C++ 지원을 가변 길이 오브젝트의 헤더로 사용할 수 있습니다. 이러한 기능을 사용하면 다른 플랫폼에서 해당 구성을 사용하는 C/C++ 코드를 XL C/C++ for z/VM으로 쉽게 포팅할 수 있습니다.


심층적인 포인터 분석

RESTRICT 옵션은 모든 함수 또는 지정된 함수의 매개변수 포인터가 분리되어 있음을 컴파일러에 알립니다. RESTRICT 옵션이 활성화되면 컴파일러는 보다 심층적인 포인터 분석을 수행합니다. 이를 통해 컴파일 중인 애플리케이션의 성능을 향상할 수 있습니다.


저장된 옵션 문자열 기능

IBM XL C/C++ for z/VM은 각 소스 파일에 사용되는 컴파일러 옵션을 간략하게 표현하고 각 컴파일 단위에 대해 실행 파일에 저장된 옵션 문자열을 생성합니다. 컴파일러는 컴파일 중에 활성화된 모든 구성 요소의 버전 정보를 기록합니다. 이 새로운 기능을 활용하여 런타임 문제를 진단할 수도 있습니다.


메시지 심각도 수정 지원

SEVERITY 옵션을 사용하면 컴파일러에서 내보낸 일부 진단 메시지의 심각도를 변경할 수 있습니다. 이 기능을 사용하면 특정 진단 메시지 레벨을 사용자의 코딩 표준에 맞게 사용자 정의할 수 있습니다.


디버그 지원

컴파일러에서 생성한 소스 목록에는 각 함수의 시작 오프셋을 추가하도록 개선하였습니다. 각 함수의 시작 오프셋은 디버깅에 유용할 것입니다. 최적화 레벨 O2 또는 O3를 사용하여 컴파일된 코드의 경우, 최적화 코드를 디버깅할 때 함수의 이름과 주소, 매개변수의 이름, 유형, 값이 표시될 수 있습니다.

리소스 IBM z/VM Language Environment

z/VM의 언어 환경에 대한 개요를 확인하세요.

IBM XL C/C++ for z/VM의 추가 기능

기술 설명과 함께 IBM XL C/C++ for z/VM의 추가 기능을 살펴보세요.

XL C/C++ for z/VM과 z/OS XL C/C++의 차이점

XL C/C++ for z/VM에서 지원되지 않거나 다르게 작동하는 z/OS XL C/C++ 컴파일러 기능에 대해 알아보세요.

관련 제품 IBM z/OS IBM z/OS XL C/C++

최신 IBM z15™ 서버를 포함한 최신 z/Architecture®를 이용해 보세요.

IBM XL C/C++ for Linux

복잡한 C/C++ 프로그램 개발을 위한 고성능 컴파일러입니다.

IBM C and C++ Compiler Family 살펴보기
다음 단계

IBM XL C/C++ for z/VM을 살펴보세요. IBM Z 담당자와 30분 무료 미팅을 예약하세요.

더 살펴보기 문서 지원 IBM Redbooks 지원 및 서비스 글로벌 파이낸싱 유연한 가격 책정 교육 및 훈련 커뮤니티 개발자 커뮤니티 비즈니스 파트너 리소스