This pass was created as a project for the Type Systems and Static Analysis course and is no longer maintained.
In case you are interested, you can take a look at the project report.
Built and tested against LLVM 7.0.1 on macOS Mojave 10.14.3 and Ubuntu 18.04 LTS.
- LLVM source code
- Clang
- CMake
- Zsh (for executing the scripts)
In scripts/configuration.zsh
:
- Point
LLVM_SOURCE_DIR
to the LLVM codebase. - Point
LLVM_BUILD_DIR
to the directory LLVM should be built in. - Point
CLANG
to the Clang executable that should be used to compile the test files. - Set
GENERATOR
to your generator of choice, e.g.Ninja
orXcode
.
$ cd scripts
$ ./build_llvm.zsh
$ cd scripts
$ ./build_pass.zsh
$ cd scripts
$ ./run_test.zsh
$ cd scripts
$ ./clean_up.zsh
You can run all of the above mentioned steps at once using the following script:
$ ./build_and_run.zsh
Create a test file <TEST_NAME>.cpp
and place it under test
. Build and run the test using either:
$ cd scripts
$ ./run_test.zsh <TEST_NAME>
or
$ ./build_and_run.zsh <TEST_NAME>
If no test name is provided, defaults to hello
.
NOTE: The working directory of the test file will be logs
.
All logging happens in logs/log.txt
.
Licensed under the Mozilla Public License 2.0.
Vangelis Tsiatsianas - [email protected]