What problem does it solve?
This Skill provides a structured framework for performing LLVM-based static analysis to uncover dataflow issues, pointer aliasing, taint propagation, and verification gaps in code, enabling researchers and engineers to build more secure and reliable software.
Core Features & Use Cases
- Dataflow Analysis: forward and backward analyses, may/must analyses to reason about value flow.
- Pointer Analysis: flow-insensitive/sensitive and context-sensitive analyses to approximate aliases.
- Taint Analysis: source-sink modeling to detect untrusted data paths through the program.
- Dependency Analysis: build data dependency graphs and perform program slicing.
- Integration with LLVM: leverage built-in analyses like DominatorTree, LoopInfo, and AAManager to compose custom analyses.
- Use Cases: security research, vulnerability scanning, bug finding, and code quality evaluation on LLVM-based projects.
Quick Start
Use the static-analysis skill to examine a sample LLVM IR function and identify dataflow, taint, and pointer-aliasing issues.