Matches in SemOpenAlex for { <https://semopenalex.org/work/W2124052022> ?p ?o ?g. }
- W2124052022 abstract "Pointer analysis is one of the key static analyses during compilation. The efficiency of several compiler optimizations and transformations depends directly on the scalability and precision of the underlying pointer analysis. Recent advances still lack an efficient and scalable context-sensitive inclusion-based pointer analysis. In this work, we propose four novel techniques to improve the scalability of context-sensitive points-to analysis for C/C++ programs. First, we develop an efficient way of storing the approximate points-to information using a multi-dimensional bloom filter (multibloom). By making use of fast hash functions and exploiting the spatial locality of the points-to information, our multibloom-based points-to analysis offers significant savings in both analysis time and memory requirement. Since the representation never resets any bit in the multibloom, no points-to information is ever lost; and the analysis is sound, though approximate. This allows a client to trade off a minimal amount of precision but gain huge savings(two orders less) in memory requirement. By making use of multiple random and independent hash functions, the algorithm also achieves high precision and runs, on an average,2×faster than Andersen’s points-to analysis. Using Mod/Ref analysis as a client, we illustrate that the precision is above 98% of that of Andersen’s analysis. Second, we devise a sound randomized algorithm that processes a group of constraints in a less precise but efficient manner and the remaining constraints in a more precise manner. By randomly choosing different groups of constraints across different runs, the analysis results in different points-to information, each of which is guaranteed to be sound. By joining the results of a few runs, the analysis obtains an approximation that is very close to the one obtained by the more precise analysis and still proves efficient in terms of the analysis time. We instantiate our technique to develop a randomized context-sensitive points-to analysis. By varying the level of randomization, a client of points-to analysis can trade off minimal precision (less than 5%) for large gain in efficiency(over 50% reduction in analysis time). We also develop an adaptive version of the randomized algorithm that carefully varies the randomization across different runs to achieve maximum benefit in terms of analysis time and precision without pre-setting the randomization percentage and the number of runs. Third, we transform the points-to analysis problem into finding a solution to a system of linear equations. By making novel use of prime factorization, we illustrate how to transform complex points-to constraints into a set of linear equations and transform the solution back as a points-to solution. We prove that our algorithm is sound and show that our technique is 1.8×faster than Andersen’s analysis for large benchmarks. Finally, we observe that the order in which points-to constraints are processed plays a vital role in the algorithm efficiency. We prove that finding an…" @default.
- W2124052022 created "2016-06-24" @default.
- W2124052022 creator A5018046405 @default.
- W2124052022 date "2012-02-01" @default.
- W2124052022 modified "2023-09-22" @default.
- W2124052022 title "Scaling Context-Sensitive Points-To Analysis" @default.
- W2124052022 cites W1503189222 @default.
- W2124052022 cites W1533004102 @default.
- W2124052022 cites W1548858116 @default.
- W2124052022 cites W1552472923 @default.
- W2124052022 cites W1567014300 @default.
- W2124052022 cites W1569687366 @default.
- W2124052022 cites W1576135198 @default.
- W2124052022 cites W1583651364 @default.
- W2124052022 cites W1586099086 @default.
- W2124052022 cites W1599912326 @default.
- W2124052022 cites W1602885681 @default.
- W2124052022 cites W1734116059 @default.
- W2124052022 cites W1797940162 @default.
- W2124052022 cites W1852059679 @default.
- W2124052022 cites W1965604953 @default.
- W2124052022 cites W1971782746 @default.
- W2124052022 cites W1974604404 @default.
- W2124052022 cites W1975514564 @default.
- W2124052022 cites W1976943774 @default.
- W2124052022 cites W1978068196 @default.
- W2124052022 cites W1979582240 @default.
- W2124052022 cites W1980440188 @default.
- W2124052022 cites W1981663184 @default.
- W2124052022 cites W1986703553 @default.
- W2124052022 cites W1987035533 @default.
- W2124052022 cites W1990053053 @default.
- W2124052022 cites W1994143452 @default.
- W2124052022 cites W1996146601 @default.
- W2124052022 cites W1997474908 @default.
- W2124052022 cites W1998285060 @default.
- W2124052022 cites W1999517284 @default.
- W2124052022 cites W2002771912 @default.
- W2124052022 cites W2004633100 @default.
- W2124052022 cites W2008722804 @default.
- W2124052022 cites W2009911326 @default.
- W2124052022 cites W2013578854 @default.
- W2124052022 cites W2014323361 @default.
- W2124052022 cites W2017842497 @default.
- W2124052022 cites W2018449188 @default.
- W2124052022 cites W2019514379 @default.
- W2124052022 cites W2020841721 @default.
- W2124052022 cites W2020910602 @default.
- W2124052022 cites W2021185572 @default.
- W2124052022 cites W2023797161 @default.
- W2124052022 cites W2025514726 @default.
- W2124052022 cites W2029674270 @default.
- W2124052022 cites W2036208810 @default.
- W2124052022 cites W2036555984 @default.
- W2124052022 cites W2044735058 @default.
- W2124052022 cites W2048229966 @default.
- W2124052022 cites W2048639238 @default.
- W2124052022 cites W2048742489 @default.
- W2124052022 cites W2050320220 @default.
- W2124052022 cites W2050903618 @default.
- W2124052022 cites W2053155313 @default.
- W2124052022 cites W2055084740 @default.
- W2124052022 cites W2064659940 @default.
- W2124052022 cites W2065088439 @default.
- W2124052022 cites W2069216738 @default.
- W2124052022 cites W2069476565 @default.
- W2124052022 cites W2074954052 @default.
- W2124052022 cites W2075309900 @default.
- W2124052022 cites W2077850509 @default.
- W2124052022 cites W2078075652 @default.
- W2124052022 cites W2078739669 @default.
- W2124052022 cites W2080267935 @default.
- W2124052022 cites W2080573945 @default.
- W2124052022 cites W2085164129 @default.
- W2124052022 cites W2087567537 @default.
- W2124052022 cites W2087612811 @default.
- W2124052022 cites W2091141964 @default.
- W2124052022 cites W2095115578 @default.
- W2124052022 cites W2096587139 @default.
- W2124052022 cites W2102440514 @default.
- W2124052022 cites W2110833886 @default.
- W2124052022 cites W2113238444 @default.
- W2124052022 cites W2113766267 @default.
- W2124052022 cites W2117576153 @default.
- W2124052022 cites W2117948828 @default.
- W2124052022 cites W2119029078 @default.
- W2124052022 cites W2120308515 @default.
- W2124052022 cites W2121083281 @default.
- W2124052022 cites W2122751766 @default.
- W2124052022 cites W2123845384 @default.
- W2124052022 cites W2125725994 @default.
- W2124052022 cites W2126540423 @default.
- W2124052022 cites W2127163775 @default.
- W2124052022 cites W2130794519 @default.
- W2124052022 cites W2131093354 @default.
- W2124052022 cites W2131135493 @default.
- W2124052022 cites W2132661148 @default.
- W2124052022 cites W2133497528 @default.
- W2124052022 cites W2133608633 @default.
- W2124052022 cites W2136986825 @default.