Detail publikace

SkipFlow: Improving the Precision of Points-to Analysis using Primitive Values and Predicate Edges

KOZÁK, D.; STANCU, C.; VOJNAR, T.; WIMMER, C. SkipFlow: Improving the Precision of Points-to Analysis using Primitive Values and Predicate Edges. In Proceedings of the 23rd ACM/IEEE International Symposium on Code Generation and Optimization. New York: Association for Computing Machinery, 2025. p. 347-361. ISBN: 979-8-4007-1275-3.
Název česky
SkipFlow: Zlepšení přesnosti analýzy bodů pomocí primitivních hodnot a predikátových hran
Typ
článek ve sborníku konference
Jazyk
anglicky
Autoři
Kozák David, Ing. (UITS)
STANCU, C.
Vojnar Tomáš, prof. Ing., Ph.D. (UITS)
WIMMER, C.
URL
Klíčová slova

points-to analýza, statická analýza, analýza ukazatelů, překladač, optimalizace

Abstrakt

Typická points-to analýza, jako je Andersenova nebo Steensgaardova, může ztrácet
na přesnosti, protože ignoruje strukturu větvení analyzovaného programu. Kromě
toho se analýza points-to typicky zaměřuje pouze na objekty a nebere v úvahu
instrukce manipulující s primitivními hodnotami. Tvrdíme, že takový přístup vede
ke zbytečné ztrátě přesnosti, například když se z volání metod vracejí primitivní
konstanty true a false. Navrhujeme novou rychlou points-to analýzu nazvanou
SkipFlow, která interprocedurálně sleduje tok primitivních hodnot i objektů
a explicitně zachycuje strukturu větvení kódu pomocí predikátových hran. Zároveň
je však SkipFlow na rozdíl od tradiční analýzy citlivé na tok rychlý a lépe
škálovatelný. SkipFlow aplikujeme na GraalVM Native Image, uzavřené řešení pro
sestavování samostatných binárních souborů pro aplikace v jazyce Java.
Implementaci vyhodnocujeme pomocí sady aplikací mikroslužeb i známých sad
benchmarků. Ukazujeme, že SkipFlow snižuje velikost aplikace z hlediska
dosažitelných metod v průměru o 9 %, aniž by se výrazně prodloužila doba
analýzy.

Rok
2025
Strany
347–361
Sborník
Proceedings of the 23rd ACM/IEEE International Symposium on Code Generation and Optimization
Konference
International Symposium on Code Generation and Optimization -- CGO'25, Las Vegas, Nevada, US
ISBN
979-8-4007-1275-3
Vydavatel
Association for Computing Machinery
Místo
New York
DOI
EID Scopus
BibTeX
@inproceedings{BUT193310,
  author="KOZÁK, D. and STANCU, C. and VOJNAR, T. and WIMMER, C.",
  title="SkipFlow: Improving the Precision of Points-to Analysis using Primitive Values and Predicate Edges",
  booktitle="Proceedings of the 23rd ACM/IEEE International Symposium on Code Generation and Optimization",
  year="2025",
  pages="347--361",
  publisher="Association for Computing Machinery",
  address="New York",
  doi="10.1145/3696443.3708932",
  isbn="979-8-4007-1275-3",
  url="https://dl.acm.org/doi/10.1145/3696443.3708932"
}
Nahoru