Today Mini Learned :

기록하는 습관 들이기

PROJECT

[LLVM] VirtualEditor - 가상화 난독화를 적용해주는 Pass

얌챠 2020. 10. 19. 16:07

VirtualEditor

 

VirtualEditor 소스코드

 

 

yarncha/llvm

LLVM Pass codes to study. Contribute to yarncha/llvm development by creating an account on GitHub.

github.com

 

관련 포스팅 (github.io)


시험기간이라 시간이 부족했지만 공식 문서를 헤메고 돌아다닌 보람이 있게 드디어 완성했다ㅠㅠ (사실 완성했다고 보기는 힘들긴 하다... 해당 소스코드에서만 동작하기 때문에 이를 개선해주는 것을 다음 목표로 삼을 것이다)

LLVM을 하면서 제일 어려웠던 점은 가이드..?가 없다는 점이었다. 한글 문서 뿐만 아니라 제대로 정리되어 있고 어떻게 쓰는지 알 수 있는 문서가 별로 없었다. 그래서 처음에 엄청 헤멨던 것 같다. 예를 들어 "내가 C++을 처음 배우고 struct를 사용하고 싶다" 하면 "C++ struct"만 구글에 검색하면 많은 문서와 사용 방법들이 나오는데, LLVM을 할 땐.. 내가 못 찾는 건가 싶을 정도로 사용 예시 같은 게 없어서 도움을 받기 힘들었다ㅠㅠㅠ 나오는 건 공식 문서 하나뿐...😭😭 어떤 수업을 듣는 것도 아니고 완전 맨 땅부터 시작해서 그런 것 같기도 하다. 어떻게 사용해야 하는지 요령 없이 작성한 것들이 많아 아쉽다.

그래도 공식 문서가 정말 잘 정리되어 있고 (llvm.org/doxygen/classllvm_1_1IRBuilderBase.html <- 한번 쓰는걸 익히고 나서는 잘 쓰게 되었던 효자 irbuilder.......) (LLVM의 공식 문서를 보는게 익숙해져서 나중에는 다른 언어로 프로그래밍을 할 때에도 공식 문서를 찾아보는 습관이 생겼다ㅋㅋ) 또, 졸업프로젝트로 이를 진행하면서 주변에 도움을 많이 받을 수 있어서 다행이었다. 너무 좋은 경험이었고 마무리까지 잘 진행할 수 있으면 좋겠다 (❁´◡`❁)