forked from SVF-tools/SVF
-
Notifications
You must be signed in to change notification settings - Fork 3
/
params.json
1 lines (1 loc) · 3.29 KB
/
params.json
1
{"name":"SVF","tagline":"Static Value-Flow Analysis in LLVM","body":"## What is SVF?\r\nSVF is an interprocedural Static Value-Flow analysis on top of LLVM. It allows value-flow construction and pointer analysis to be performed in an iterative way, thereby providing an effective solution for both.\r\n\r\n\r\n## What kind of analyses does SVF provide?\r\n* Andersen's Pointer analysis and call graph construction\r\n* Sparse Flow-sensitive Pointer Analysis\r\n* Value-Flow dependence analysis\r\n* Interprocedural memory SSA\r\n* Detecting source-sink related bugs, such as memory leak, incorrect file-open close error.\r\n\r\n\r\n## How to setup SVF?\r\nPlease download the [source code](https://github.com/unsw-corg/SVF/archive/gh-pages.zip) of SVF and refer to [this step by step guide](https://github.com/unsw-corg/SVF/wiki/Setup-Guide#getting-started) to setup SVF.\r\n\r\n## How to run SVF?\r\nSVF takes LLVM IR as its input. Please refer to [this user guide](https://github.com/unsw-corg/SVF/wiki/User-Guide#quick-start) to run SVF with [a simple example](https://github.com/unsw-corg/SVF/wiki/Analyze-a-Simple-C-Program#an-example) and generate the [outputs](https://github.com/unsw-corg/SVF/wiki/User-Guide#analysis-outputs) of each analysis pass.\r\n\r\nWe have also prepared a [virtual machine image](http://www.cse.unsw.edu.au/~corg/svf/SVF.ova) (an account is created with both its name and password \"pta\" under Ubuntu 12.04) for you to [run](https://github.com/unsw-corg/SVF/wiki/User-Guide#quick-start) directly. The source code and compiled binaries are placed under \"/home/pta/svf\" folder. We recommend you to allocate 16GB memory or more to the virtual machine. A [VirtualBox](https://www.virtualbox.org/) with version 4.1.12 or newer is required to run the image.\r\n\r\n## How does SVF work internally?\r\nPlease refer to [this wiki documentation](https://github.com/unsw-corg/SVF/wiki/Technical-documentation), [doxygen code manual](http://www.cse.unsw.edu.au/~corg/svf/doxygen/) and the following publications to understand the internal working of SVF.\r\n\r\n##Publications\r\n\r\nDing Ye, Yu Su, Yulei Sui, and Jingling Xue. WPBound: Enforcing Spatial Memory Safety Efficiently at Runtime with Weakest Preconditions, 25th IEEE International Symposium on Software Reliability Engineering (ISSRE'14)\r\n\r\nSen Ye, Yulei Sui, and Jingling Xue. Region-based Selective Flow-Sensitive Pointer Analysis , 21th International Static Analysis Symposium (SAS'14) \r\n\r\nYulei Sui, Ding Ye, and Jingling Xue. Detecting Memory Leaks Statically with Full-Sparse Value-Flow Analysis , IEEE Transactions on Software Engineering (TSE'14)\r\n\r\nDing Ye, Yulei Sui, and Jingling Xue. Accelerating Dynamic Detection of Uses of Undefined Values with Static Value-Flow Analysis , 12th Annual IEEE/ACM International Symposium on Code Generation and Optimization (CGO'14)\r\n\r\nYulei Sui, Ding Ye, and Jingling Xue. Static Memory Leak Detection Using Full-Sparse Value-Flow Analysis , 2012 International Symposium on Software Testing and Analysis (ISSTA'12)\r\n\r\nYulei Sui, Sen Ye, Jingling Xue, and Pen-Chung Yew. SPAS: Scalable Path-Sensitive Pointer Analysis on Full-Sparse SSA, 9th Asian Symposium on Programming Languages and Systems (APLAS'11)\r\n\r\n","google":"","note":"Don't delete this file! It's used internally to help with page regeneration."}