728x90
반응형

실습 2

[컴파일러] 3. LLVM을 이용하여 프로그램 안의 특정 명령어 세기

이번 글에서는 프로그램 내 특정 명령어의 수를 세어 출력하는 간단한 프로그램을 만들어 보도록 하겠다. LLVM IR에는 총 64개의 명령어 Opcode 존재하며 자주 사용되는 명령어들은 다음과 같다. BinaryOperator: add, sub, mul 과 같은 산술 연산이나, and, or과 같은 비교 연산 등 2개의 operand들을 연산하는 명령어 ReturnInst, BranchInst 등: 제어 흐름관련 명령어들 CallInst: 함수 호출 명령어 CastInst: 타입 변환 명령어 AllocaInst: 스택(정적)에 메모리 할당하는 명령어 LoadInst, StoreInst: 메모리에 있는 데이터들을 접근하는 명령어 GetElementPtrInst: 배열 접근 등에서 메모리 접근하는 명령어 이..

컴파일러 2021.07.22

[컴파일러] LLVM 다운로드 및 설치 방법

이번 글에는 llvm을 사용하기 위해 pre-built binary 파일을 다운 받는 과정을 작성해보도록 하겠다. 설치환경 : Ubuntu 16.04에 LLVM 6.0.1을 다운받았다. 먼저 미리 빌드된 binary 파일을 사용하기 위해서 아래의 사이트에서 LLVM 6.0.1버전 Pre-Built Binaries 부분에서 Ubuntu 16.04 파일을 다운받았다(.sig 파일이 아님). https://releases.llvm.org/download.html LLVM Download Page If you'd like access to the "latest and greatest" in LLVM development, please see the instructions for accessing the LLVM..

인턴 2021.07.11
728x90
반응형