Static Backward Demand-Driven Slicing

被引:9
|
作者
Lisper, Bjorn [1 ]
Masud, Abu Naser [1 ]
Khanfar, Husni [1 ]
机构
[1] Malardalen Univ, Sch Innovat Design & Engn, Vasteras, Sweden
关键词
Static backward slicing; Unstructured control flow; Data flow equations; Computational complexity; Strongly live variable; Abstract Interpretation;
D O I
10.1145/2678015.2682538
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Program slicing identifies the program parts that may affect certain properties of the program, such as the outcomes of conditions affecting the program flow. Ottenstein's Program Dependence Graph (PDG) based algorithm is the state-of-practice for static slicing today: it is well-suited in applications where many slices are computed, since the cost of building the PDG then can be amortized over the slices. But there are applications that require few slices of a given program, and where computing all the dependencies may be unnecessary. We present a light-weight interprocedural algorithm for backward static slicing where the data dependence analysis is done using a variant of the Strongly Live Variables (SLV) analysis. This allows us to avoid building the Data Dependence Graph, and to slice program statements "on-the-fly" during the SLV analysis which is potentially faster for computing few slices. Furthermore we use an abstract interpretation-based value analysis to extend our slicing algorithm to slice low-level code, where data dependencies are not evident due to dynamically calculated addresses. Our algorithm computes slices as sets of Control Flow Graph nodes: we show how to adapt existing techniques to generate executable slices that correspond to semantically correct code, where jump statements have been inserted at appropriate places. We have implemented our slicing algorithms, and made an experimental evaluation comparing them with the standard PDG-based algorithm for a number of example programs. We obtain the same accuracy as for PDG-based slicing, sometimes with substantial improvements in performance.
引用
收藏
页码:115 / 126
页数:12
相关论文
共 50 条
  • [41] Supply and demand-driven spillovers and productivity growth
    Paul, CJM
    [J]. JAPAN AND THE WORLD ECONOMY, 2002, 14 (03) : 285 - 304
  • [42] Demand-driven publish/subscribe in mobile environments
    Aris M. Ouksel
    Doug Lundquist
    [J]. Wireless Networks, 2010, 16 : 2237 - 2261
  • [43] Developing a Multiformat Demand-Driven Acquisition Model
    Levine-Clark, Michael
    [J]. COLLECTION MANAGEMENT, 2010, 35 (3-4) : 201 - 207
  • [44] THE SERVICE SECTOR - DEMAND-DRIVEN OR SUPPLY-DRIVEN PRODUCTIVITY
    MOON, SY
    STANO, M
    [J]. 1989 AMA WINTER EDUCATORS CONFERENCE: MARKETING THEORY AND PRACTICE, 1989, : 314 - 317
  • [45] Solve the demand-driven supply chain problem
    Laksham, Narayan
    [J]. Assembly, 2013, 56 (03):
  • [46] Demand-driven structural testing with dynamic instrumentation
    Misurda, J
    Clause, JA
    Reed, JL
    Childers, BR
    Soffa, ML
    [J]. ICSE 05: 27th International Conference on Software Engineering, Proceedings, 2005, : 156 - 165
  • [47] A demand-driven algorithm for generating minimal models
    Ben-Eliyahu-Zohary, R
    [J]. SEVENTEENTH NATIONAL CONFERENCE ON ARTIFICIAL INTELLIGENCE (AAAI-2001) / TWELFTH INNOVATIVE APPLICATIONS OF ARTIFICIAL INTELLIGENCE CONFERENCE (IAAI-2000), 2000, : 267 - 272
  • [48] Demand-Driven Transparency for Monitoring Intelligent Agents
    Vered, Mor
    Howe, Piers
    Miller, Tim
    Sonenberg, Liz
    Velloso, Eduardo
    [J]. IEEE TRANSACTIONS ON HUMAN-MACHINE SYSTEMS, 2020, 50 (03) : 264 - 275
  • [49] Demand-driven timetable design for metro services
    [J]. Lee, D.-H. (dhl@nus.edu.sg), 1600, Elsevier Ltd (46):
  • [50] DEMAND-DRIVEN FILE OF BRITISH POLITICAL HISTORY
    ROSE, R
    MILLER, W
    FRANKLIN, M
    [J]. SSRC NEWSLETTER-SOCIAL SCIENCE RESEARCH COUNCIL, 1972, (14): : 30 - 32