vcc
vbcc개발자 | 볼커 바르텔만 |
---|---|
초기 릴리즈 | 전 |
안정된 릴리스 | 0.9g / 2019년 10월 , 전( |
기입처 | ANSI C |
운영 체제 | 멀티플랫폼 |
유형 | 크로스 컴파일러 |
면허증. | 프리웨어 |
웹 사이트 | www |
vbcc는 이식 가능한 대상 재설정 가능한 ANSI C 컴파일러입니다.C89(ISO/IEC 9899:1989) 및 C99(ISO/IEC 9899:1999)의 일부를 지원합니다.
그것은 두 부분으로 나뉜다.하나는 타겟에 의존하지 않고 다른 하나는 타겟에 의존합니다.vbcc는 호스트 산술과 타깃 산술의 완전한 추상화를 제공합니다.8비트, 16비트, 32비트 및 64비트 아키텍처의 크로스 컴파일을 완전히 지원합니다.
임베디드 시스템은 다양한 포인터 크기, ROM 대응 코드, 인라인 어셈블리, 비트 유형, 인터럽트 핸들러, 섹션 속성, 스택 사용률 계산 등의 기능으로 지원됩니다(백엔드에 따라 다름).
vbcc는 68K, ColdFire, PowerPC, 6502, VideoCore, 80x86(386 이상), Alpha, C16x/ST10, 6809/6309/68의 성숙도를 달리하여 다음 백엔드를 지원합니다.HC12 및 Z-머신
컴파일러 자체는 Windows, Mac OS X 및 Unix/Linux를 포함한 모든 일반 운영 체제에서 실행할 수 있습니다.
최적화
컴파일러는 보다 빠르고 작은 코드를 생성하기 위해 높은 수준의 최적화와 타겟 고유의 최적화를 제공합니다.또한 기능 및 모듈 전반에 걸쳐 최적화할 수 있습니다.vbcc에서 지원되는 대상 독립적 최적화는 다음과 같습니다.
- 가교 함수 인라인
- 재귀 함수의 부분 삽입
- 프로시저간 데이터 흐름 분석
- 프로시저간 레지스터 할당
- 글로벌 변수 할당 등록
- 글로벌 공통 서브 표현 제거
- 지구 상수 전파
- 글로벌 복사 전파
- 데드 코드 제거
- 별칭 분석
- 루프 언롤
- 유도 변수 제거
- 루프 등가 부호 운동
- 루프 반전
레퍼런스
- Sunitha, K.V.N. (2013). Compiler Design. Pearson India. p. 20. ISBN 9-332-50029-0.
- Aycock, John (2016). Retrogame Archeology: Exploring Old Computer Games. John Aycock. p. 82. ISBN 9-783-31930002-3.