Efficient Demand Evaluation of Fixed-Point Attributes Using Static Analysis
summary
New demand algorithm called the relax stack algorithm combines circular, non‑circular and agnostic attributes and uses a static meta-analysis over the JustAD‑generated Java evaluator (using a call‑graph tool) to reclassify many attributes as permanently non‑circular. Implementations on real Java analyses show large wins: startup speedups up to 115× (median ~15×) and steady‑state speedups with a median ~22× for null‑pointer analysis, eliminating wasted global fixpoint iterations while preserving original RAG specs.
AI-written summary · about
chapters (11)
- 0:00Introduction
- 1:30Demand-driven static analysis
- 3:40Attribute grammars
- 6:10Circular attributes
- 8:00Limitations of Stack algorithm
- 9:47Relaxed Monolithic algorithm
- 12:52Relax Stack algorithm
- 14:17Automated annotation
- 17:06Experimental results
- 19:57Conclusion
- 21:08Q&A
related talks
20mTaking out the Toxic Trash: Recovering Precision in Mixed Flow-Sensitive Static Analyses
38mStatic Code Analysis - A Behind-the-scenes Look
36mThe art of static code analysis
16mA Pragmatic Approach to Stateful Partial Order Reduction
18mStatistical Testing of Quantum Programs via Fixed-Point Amplitude Amplification
26mValue and Allocation Sensitivities in Static Python Analyses
18mEnhancing Static Analysis for Practical Bug Detection: An LLM-Integrated Approach
59mUnder-approximation for Scalable Bug Detection
