Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

LLVM 코드 생성

Rust가 LLVM DIBuilder 함수를 호출하면, LLVM은 주어진 정보를 형식에 구애받지 않는 “디버그 레코드(debug record)”로 변환합니다. 이러한 레코드는 LLVM-IR에서 살펴볼 수 있습니다.

디버그 레코드 안의 태그는 항상 DWARF 태그로 저장된다는 점에 유의해야 합니다. 타깃이 PDB 디버그 정보를 요구하는 경우, 코드 생성 과정에서 디버그 레코드는 DWARF 태그를 대응하는 CodeView 태그로 변환하는 모듈을 거치게 됩니다.