책 이미지

책 정보
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 언어 > 프로그래밍 언어 기타
· ISBN : 9791186697320
· 쪽수 : 372쪽
· 출판일 : 2017-04-24
책 소개
목차
1장. LLVM의 빌드와 설치
- LLVM 버전의 이해
- 프리빌트 패키지 얻기
- 소스를 사용한 빌드
2장. 외부 프로젝트
- Clang extras의 소개
- DragonEgg 플러그인의 사용
3장. 툴과 디자인
- LLVM의 기본적인 설계 원칙과 역사에 대한 소개
- 오늘날의 LLVM의 이해
- 컴파일 드라이버와의 상효 작용
- 독립 툴의 사용
- LLVM 내부 설계 살펴보기
- 첫 번째 LLVM 프로젝트의 작성
- LLVM 소스 탐색 - 보편적 충고
4장. 프론트엔드
- Clang의 소개
- Clang을 이용한 프론트엔드 단계 학습하기
- 전체 코드
5장. LLVM 중간 표현
- IR 포멧을 다루기 위해 기본 툴 연습하기
- LLVM IR 언어 구문의 소개
- 커스텀 LLVM IR 생성기의 작성
- IR 레벨에서의 최적화
6장. 백엔드
- 백엔드 코드 구조의 학습
- 백엔드 라이브러리의 이해
- LLVM 백엔드를 위한 TableGen의 사용 방법에 대한 학습
- 명령어 선택 단계의 이해
- 스케줄러
- 머신 명령어
- 레지스터 할당
- 프롤로그와 에필로그
- 머신 코드 프레임워크의 이해
- 자신의 머신 패스 작성
7장. Just-In-Time 컴파일러
- LLVM JIT 엔진 기본기 익히기
- llvm::JIT 프레임워크에 대한 소개
- llvm::MCJIT 프레임워크에 대한 소개
- LLVM JIT 컴파일 툴의 사용
- 다른 리소스
8장. 크로스 플랫폼 컴파일
- GCC와 LLVM의 비교
- 타겟 트리플의 이해
- 툴체인의 준비
- Clang 커맨드 라인 인수를 사용한 크로스 컴파일
- Clang 크로스 컴파일러의 생성
- 자신만의 Clang 기반 크로스 컴파일러의 구축과 설치
- 테스트
- 추가 리소스
9장. Clang 정적 분석기
- 정적 분석기의 역할에 대한 이해
- 전통적인 경고와 Clang 정적 분석기의 비교
- 정적 분석기의 테스트
- 자신의 체커를 사용한 정적 분석기의 확장
- 추가 리소스
10장. LibTooling를 사용한 Clang Tools
- 컴파일 커맨드 데이터베이스의 생성
- clang-tidy 툴
- 리팩토링 툴
- 자신의 툴 작성
- 콜백 작성하기
- 추가리소스