SHARP: fast incremental context-sensitive pointer analysis for Java
summary
SHARP is an incremental, context-sensitive pointer analysis for Java that claims to be the first to support k-CFA and k-obj under incremental code edits (additions and deletions) while preserving soundness. It implements redundancy elimination for deleted contexts, parallel change propagation, and runs in the Vala framework. Empirical results on large GitHub projects show an average update time of 31 seconds for k-CFA/k-obj and 18 seconds on eight cores, demonstrating practical scalability.
AI-written summary · about
chapters (8)
- 0:00SHARP introduction
- 3:16Incremental context-sensitive challenges
- 5:06Redundant computation in IPA
- 7:59Handling deletions in algorithms
- 9:07Parallelizing incremental analysis
- 13:02Empirical evaluation results
- 15:13Q&A: Reflection handling
- 16:58Q&A: Context and object sensitivity
related talks
29mHow (Not) To Write Java Pointer Analyses After 2020
15mMaking Pointer Analysis More Precise by Unleashing the Power of Selective Context Sensitivity
14mHeap-Snapshot Matching and Ordering using CAHPs: A Context-Augmented Heap-Path(…)
16mHow (Not) to Write Java Pointer Analyses after 2020
19mThe ART of Sharing Points-to Analysis: Reusing Points-to Analysis Results Safely and(…)
15mTwo Approaches to Fast Bytecode Frontend for Static Analysis
19mPointer Analysis for Database-Backed Applications
43mReflecting on HAT: A Project Babylon Case Study
