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
Copy file name to clipboardExpand all lines: docs/index.md
+7-9Lines changed: 7 additions & 9 deletions
Original file line number
Diff line number
Diff line change
@@ -3,34 +3,32 @@ layout: default
3
3
---
4
4
5
5
6
-
## What is RUPTA
6
+
## What is RUPTA?
7
7
8
-
RUPTA is a pointer analysis framework for Rust, identifiying relationships between pointer variables and the memory locations that they point to in a program. It functions on Rust's Mid-level Intermediate Representation (MIR) and supports k-callsite context-sensitivity.
8
+
RUPTA is a pointer analysis framework designed for Rust. It identifies relationships between pointer variables and the memory locations they reference within a Rust program. RUPTA operates on Rust's Mid-level Intermediate Representation (MIR) and currently supports k-callsite context-sensitivity.
9
9
10
10
RUPTA can also be used to [construct precise call graphs](https://github.com/rustanlys/rupta/wiki/Analyze-a-Simple-Rust-Program#dump-the-call-graph) for Rust programs.
11
11
12
-
We refer to [SVF](https://svf-tools.github.io/SVF) for a pointer analysis framework that works for C and C++, and [Qilin](https://qilinpta.github.io/Qilin) for a pointer analysis framework that works for Java.
12
+
We refer to [SVF](https://svf-tools.github.io/SVF) for a pointer analysis framework that works for C/C++, and [Qilin](https://qilinpta.github.io/Qilin) for a pointer analysis framework that works for Java.
13
13
14
14
## How to setup RUPTA?
15
15
16
-
Please download the [source code]({{ site.github.source_code_url }}) of RUPTA and refer to this [step-by-step guide](https://github.com/rustanlys/rupta/wiki/Setup-Guide) to setup RUPTA.
17
-
16
+
Please download the [source code]({{ site.github.source_code_url }}) of RUPTA and consult the [step-by-step guide](https://github.com/rustanlys/rupta/wiki/Setup-Guide) for setting up RUPTA.
18
17
## How to use RUPTA?
19
18
20
-
The main routine RUPTA executable is a stub that invokes the RUST compiler with a call back that invokes RUPTA as part of the rust compilation. It analyzes a Rust program by taking the source code as its input.
21
-
RUPTA also smoothly integrates with Cargo, making it possible to compile a Rust project with dependencies and analyze with RUPTA with a single command `cargo pta`.
19
+
The main RUPTA executable is a stub that triggers the RUST compiler, incorporating a callback that activates RUPTA during the Rust compilation process. It analyzes a Rust program by processing the source code as its input. Additionally, RUPTA integrates seamlessly with Cargo, enabling the compilation of a Rust project along with its dependencies and allowing analysis through RUPTA using a single command, `cargo pta`.
22
20
23
21
Please refer to [this user guide](https://github.com/rustanlys/rupta/wiki/User-Guide) to run RUPTA with [a simple example](https://github.com/rustanlys/rupta/wiki/Analyze-a-Simple-Rust-Program) and generate the [analysis outputs](https://github.com/rustanlys/rupta/wiki/User-Guide#output-options) on your local machine.
24
22
25
-
Please refer to this [documentation]({{ site.github.doc_url }}) to understand the internal working of RUPTA.
23
+
Please refer to this [documentation]({{ site.github.doc_url }}) to understand the internal workings of RUPTA.
26
24
27
25
## License
28
26
29
27
GPLv3
30
28
31
29
## Reference
32
30
33
-
You are welcome to use RUPTA for research and development purposes under the license given. Please acknowledge the use of this tool by citing our CC'24 paper.
31
+
You are welcome to use RUPTA for research and development purposes under the provided license. Please acknowledge the use of this tool by citing our CC'24 paper.
34
32
35
33
Wei Li, Dongjie He, Yujiang Gui, Wenguang Chen, and Jingling Xue. [A Context-Sensitive Pointer Analysis Framework for Rust and Its Application to Call Graph Construction](https://doi.org/10.1145/3640537.3641574), 33rd ACM SIGPLAN International Conference on Compiler Construction (CC'24).
0 commit comments