위키득계정 ↗
기술

LLVM Bcanalyzer

LLVM Bcanalyzer기술
실행 이름
llvm-bcanalyzer
분류
비트코드 형식 분석
주요 출력
구조 통계와 저수준 덤프
입력
LLVM 비트코드
LLVM Bcanalyzer는 LLVM 비트코드 파일의 내부 인코딩과 통계를 살펴보는 도구다. 비트코드 형식 자체를 개발하거나 조사하는 작업에 활용한다.

저장 형식을 보는 도구

비트코드가 어떤 블록과 기록으로 구성되는지 조사한다. 모듈과 함수 등 구성 요소가 차지하는 크기를 분석하는 데 쓸 수 있다. 일반적인 최적화 결과를 읽기보다 저장 형식의 세부 사항을 확인하려는 개발자에게 적합하다.

텍스트 IR과 구분

사람이 읽을 수 있는 덤프를 제공하지만 LLVM Dis가 출력하는 텍스트 중간 표현과는 다르다. 같은 비트코드라도 프로그램의 명령 구조를 보는 관점과 파일의 인코딩을 보는 관점은 다르다. 조사 목적에 맞는 출력을 선택한다.

통계 해석

파일과 구성 블록의 크기 및 비율 등을 살펴볼 수 있다. 비트코드 형식 버전과 LLVM 배포 버전도 같은 숫자 체계라고 가정해서는 안 된다. 인코딩 크기가 작아졌다는 사실만으로 생성된 프로그램의 실행 시간이나 메모리 사용이 줄었다고 판단하지 않는다.

관련 문서

LLVM Dis / LLVM As / LLVM Size / Bloaty