A C/C++ code callchain checker
Project description
ccc
is the callchain checker used in DEAD.
To build just the clang tool
Prerequisites: cmake
, make
, clang/llvm
13/14.
mkdir build
cd build
cmake ..
cmake --build . [--parallel]
cmake --install . --prefix=/where/to/install/
Usage
cat test.c
int bar();
int foo(){
return bar();
}
./build/bin/ccc test.c --from=foo --to=bar --
call chain exists between foo -> bar
Python wrapper
pip install callchain-checker
To use the checker in python import from callchain_checker.callchain_checker import callchain_exists
:
callchain_exists(program: diopter.SourceProgram, source_function: str, target_function:str) -> bool
Building the python wrapper
Local build
./build_python_wheel_local.sh #this will build the current branch
pip install .
Docker based build
docker run --rm -e REVISION=REV -v `pwd`:/io theodort/manylinux-with-llvm:latest /io/build_python_wheel_docker.sh
This will build multiple wheels for REV
with multiple python versions.
The output is stored in the wheelhouse
directory.
The docker image is based on https://github.com/thetheodor/manylinux-with-llvm.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
No source distribution files available for this release.See tutorial on generating distribution archives.
Built Distributions
Close
Hashes for callchain_checker-0.0.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | abf740d7cda2e4e353fa66b4ec5a611ad07d1ebadf18b07aa7965545e31b5fdf |
|
MD5 | 319c66e49d374dce4b494e9055b7d4da |
|
BLAKE2b-256 | 8cc250963168d36308f4cbdd3fb1c4773137ee1250647b6e08661740344914ff |
Close
Hashes for callchain_checker-0.0.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 69d24719ceee15d2f8c89a781674d46054876e33141d588ad182dfa91a5816c3 |
|
MD5 | 5a5401c3613b116a0d8fcff9d6a977c5 |
|
BLAKE2b-256 | c48e902d93b4b3ff25296d59154dee342ec5ee9f49f3d49a6e6a4e2d1815fff7 |