This blog serves as a updated version of LLVM-11-Tutorial, at which more detailed explanation of this project can be found. In this blog, I mainly record the difference between LLVM-11 and LLVM-18, the specific changes are explained within each experiment folder. I am happy to discuss and any suggestion will be welcome ^_^ (jgeab@connect.ust.hk). ~If this blog is useful for you, a STAR will be encouragement to me.
Auxiliary File Settings: To avoid potential warnings from VS Code, it is recommended to set the configurations in the
c_cpp_properties.jsonfile as follows::
- includePath:
- "${workspaceFolder}/**"
- "/usr/local/include/"
- "cStandard": "c17"
- "cppStandard": "c++17"
CMake Path: The compilation logic can be complex within these folders. Here is an explanation:
- The pass source codes can be found within the
Implementsfolder. - The specific experiments testing each pass can be found in the
Testsfolder. - The compiled libraries can be found in
Tests/LLVM_Learner_Libsand please remember to include the corresponding passes in the CMake file.