Skip to content

Instantly share code, notes, and snippets.

@dbwodlf3
Created May 11, 2020 05:45
Show Gist options
  • Select an option

  • Save dbwodlf3/890cb722426e3bacd59e5a28e5a5f9bb to your computer and use it in GitHub Desktop.

Select an option

Save dbwodlf3/890cb722426e3bacd59e5a28e5a5f9bb to your computer and use it in GitHub Desktop.
BrainF.md

Overview

소스코드에 대한 자세한 내용들은 어떤 웹사이트에 잘정리되어 있기 보다는,

소스코드 내에 주석으로 잘 정리되어 있습니다.

그리고 그런 주석들을 바탕으로 웹에서 볼 수 있는 Doxygen 을 제공합니다.

Doxygen 사이트

CMakeLists.txt

set(LLVM_LINK_COMPONENTS
  BitWriter
  Core
  ExecutionEngine
  MC
  MCJIT
  Support
  nativecodegen
  )

LLVM_LINK_COMPONENTS 의 값을 설정함으로서, Module들을 링크합니다.

이때 사용되는 이름은 만들어지는 라이브러리 파일입니다.(.ao 파일)

# Example. lib/ir/CmakeLists.txt
~
add_llvm_library(LLVMCore
~
)
~

BitWriter

Core

https://llvm.org/doxygen/group__LLVMCCore.html

ExecutionEngine

https://llvm.org/doxygen/classllvm_1_1ExecutionEngine.html

MC

MCJIT

Support

nativecodegen

BrainFDriver.cpp => 월요일, 화요일

ADT / APInt

Bitcode / BitcodeWriter

ExecutionEngine / ExecutionEngine

ExecutionEngine / GenericValue

ExecutionEngine / MCJIT

IR / BasicBlock

IR / Constants

IR / DerivedTypes

IR / Function

IR / Instructions

IR / LLVMContext

IR / Module

IR / Value

IR / Verifier

Support / Casting

Support CommandLine

Support / FileSystem

Support / ManagedStatic

Support / TargetSelect

Support raw_ostream

Algorithm

cstdlib

fstream

iostream

memory

string

sytstem_error

vector

BrainF.cpp => 월요일, 화요일

ADT / APInt

IR / BasicBlock

IR / Costant

IR / Constants

IR / DerivedTypes

IR / Function

IR / GlobalValue

IR / GlobalVariable

IR / InstrTypes

IR / Instruction

IR / Instructions

IR / Intrinsics

IR / Module

IR / Type

Support/Casting

cstdlib

iostream

BrainFDriver, BrainF => 수요일, 목요일

LLVM Components

Flow

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment