You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Start adding MonoIFDS to phasar
* Port rest of monoifds-solver
* Add rest of monoifds to phasar
* Integrating MonoIFDSTaintAnalysis into phasar-cli + make double_free01_c_dbg.ll pass (2nd test does not pass, though!!)
* Fix ieration order + make tests pass
* Add initializer to MonoIFDSSolver
* Add some documentation + add summaryFlow() to MonoIFDS
* Add unittest for MonoIFDS and make it pass
* Add some more comments
* Add shouldBeInSummary
* minor
* Make ICFG independent from analysis domain for MonoIFDSSolver
* Add functionCompressor, usedGlobals, and CGSCCs to helperAnalyses to improve usability
* minor
* Some somments + renaming
* domain
* Some nullable-correctness in analyzeBlockImpl
* Integrate MonoIFDS with HelperAnalyses
* Use llvm::SmallBitVector in DataFlowEnvironment to match behavior presented in paper
* monir stuff + some general changes that should go into their own PR (aliasinfo -> aliasiterator conversion)
* As discussed, remove Eric from file headers
* Add example, how to use MonoIFDS
* pre-commit + readme
* modules
* llvm 22
* Fix dependency of UsedGlobals to ProjectIRDB
* Fix MonoIFDSSolver typo
* minor
* Fix module compilation.
Also use DummyFn in concept instead of lambda to prevent a clang-22 crash
---------
Co-authored-by: Fabian Schiebel <fabian.schiebel@uni-paderborn.de>
Shows some way, how you can use PhASAR to run an already existing MonoIFDS analysis on a LLVM IR module.
4
+
For this example, we selected the `MonoIFDSTaintAnalysis`.
5
+
6
+
You may look at the different C++ source files to see, how you can run an MonoIFDS taint analysis using PhASAR.
7
+
We suggest to start with the simplest example [helper-analyses.cpp](./helper-analyses.cpp).
8
+
9
+
## Build
10
+
11
+
This example program can be built using cmake.
12
+
It assumes, that you have installed PhASAR on your system. If you did not install PhASAR to a default location, you can specify `-Dphasar_ROOT=your/path/to/phasar` when invoking `cmake`, replacing "your/path/to/phasar" by the actual path where you have installed PhASAR.
13
+
14
+
```bash
15
+
# Invoked from the 06-run-monoifds-analysis root folder:
16
+
$ mkdir -p build &&cd build
17
+
$ cmake ..
18
+
$ cmake --build .
19
+
```
20
+
21
+
## Test
22
+
23
+
You can test the example program on the target programs from [llvm-hello-world/target](../../llvm-hello-world/target/).
24
+
25
+
```bash
26
+
# Invoked from the 06-run-monoifds-analysis/build folder:
0 commit comments