Top Banner
1/20 Principles of Program Analysis Charngki Hong @ PSWLAB Principles of Program Analysis Flemming Nielson, Hanne Riis Nielson and Chris Hankin
26

1/20 Principles of Program Analysis Charngki Hong @ PSWLAB Principles of Program Analysis Flemming Nielson, Hanne Riis Nielson and Chris Hankin.

Jan 11, 2016

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 1/20 Principles of Program Analysis Charngki Hong @ PSWLAB Principles of Program Analysis Flemming Nielson, Hanne Riis Nielson and Chris Hankin.

1/20 Principles of Program Analysis Charngki Hong @ PSWLAB

Principles of Program Analysis

Flemming Nielson, Hanne Riis Nielson and Chris Hankin

Page 2: 1/20 Principles of Program Analysis Charngki Hong @ PSWLAB Principles of Program Analysis Flemming Nielson, Hanne Riis Nielson and Chris Hankin.

2/20 Principles of Program Analysis Charngki Hong @ PSWLAB

Table of Contents

Introduction Data flow analysis Future work

Constraints based analysis References

Page 3: 1/20 Principles of Program Analysis Charngki Hong @ PSWLAB Principles of Program Analysis Flemming Nielson, Hanne Riis Nielson and Chris Hankin.

3/20 Principles of Program Analysis Charngki Hong @ PSWLAB

Introduction

Page 4: 1/20 Principles of Program Analysis Charngki Hong @ PSWLAB Principles of Program Analysis Flemming Nielson, Hanne Riis Nielson and Chris Hankin.

4/20 Principles of Program Analysis Charngki Hong @ PSWLAB

Table of Contents

Introduction Data flow analysis Future work

Constraints based analysis References

Page 5: 1/20 Principles of Program Analysis Charngki Hong @ PSWLAB Principles of Program Analysis Flemming Nielson, Hanne Riis Nielson and Chris Hankin.

5/20 Principles of Program Analysis Charngki Hong @ PSWLAB

Data flow analysis

Page 6: 1/20 Principles of Program Analysis Charngki Hong @ PSWLAB Principles of Program Analysis Flemming Nielson, Hanne Riis Nielson and Chris Hankin.

6/20 Principles of Program Analysis Charngki Hong @ PSWLAB

Data flow analysiselementary block :1. assignment state-

ment2. test statement3. skip statement

with labels

Page 7: 1/20 Principles of Program Analysis Charngki Hong @ PSWLAB Principles of Program Analysis Flemming Nielson, Hanne Riis Nielson and Chris Hankin.

7/20 Principles of Program Analysis Charngki Hong @ PSWLAB

Data flow analysis

Page 8: 1/20 Principles of Program Analysis Charngki Hong @ PSWLAB Principles of Program Analysis Flemming Nielson, Hanne Riis Nielson and Chris Hankin.

8/20 Principles of Program Analysis Charngki Hong @ PSWLAB

Reaching definitions analysis (1)

Page 9: 1/20 Principles of Program Analysis Charngki Hong @ PSWLAB Principles of Program Analysis Flemming Nielson, Hanne Riis Nielson and Chris Hankin.

9/20 Principles of Program Analysis Charngki Hong @ PSWLAB

Reaching definitions analysis (2)

Page 10: 1/20 Principles of Program Analysis Charngki Hong @ PSWLAB Principles of Program Analysis Flemming Nielson, Hanne Riis Nielson and Chris Hankin.

10/20 Principles of Program Analysis Charngki Hong @ PSWLAB

Reaching definitions analysis

Page 11: 1/20 Principles of Program Analysis Charngki Hong @ PSWLAB Principles of Program Analysis Flemming Nielson, Hanne Riis Nielson and Chris Hankin.

11/20 Principles of Program Analysis Charngki Hong @ PSWLAB

The best solution

Page 12: 1/20 Principles of Program Analysis Charngki Hong @ PSWLAB Principles of Program Analysis Flemming Nielson, Hanne Riis Nielson and Chris Hankin.

12/20 Principles of Program Analysis Charngki Hong @ PSWLAB

A safe solution – but not the best

Page 13: 1/20 Principles of Program Analysis Charngki Hong @ PSWLAB Principles of Program Analysis Flemming Nielson, Hanne Riis Nielson and Chris Hankin.

13/20 Principles of Program Analysis Charngki Hong @ PSWLAB

An unsafe solution

Page 14: 1/20 Principles of Program Analysis Charngki Hong @ PSWLAB Principles of Program Analysis Flemming Nielson, Hanne Riis Nielson and Chris Hankin.

14/20 Principles of Program Analysis Charngki Hong @ PSWLAB

How to automate the analysis

Page 15: 1/20 Principles of Program Analysis Charngki Hong @ PSWLAB Principles of Program Analysis Flemming Nielson, Hanne Riis Nielson and Chris Hankin.

15/20 Principles of Program Analysis Charngki Hong @ PSWLAB

Page 16: 1/20 Principles of Program Analysis Charngki Hong @ PSWLAB Principles of Program Analysis Flemming Nielson, Hanne Riis Nielson and Chris Hankin.

16/20 Principles of Program Analysis Charngki Hong @ PSWLAB

Flow through assignments and tests

Var = { x, y, z }

Page 17: 1/20 Principles of Program Analysis Charngki Hong @ PSWLAB Principles of Program Analysis Flemming Nielson, Hanne Riis Nielson and Chris Hankin.

17/20 Principles of Program Analysis Charngki Hong @ PSWLAB

Flow along the control

Var = { x, y, z }

Page 18: 1/20 Principles of Program Analysis Charngki Hong @ PSWLAB Principles of Program Analysis Flemming Nielson, Hanne Riis Nielson and Chris Hankin.

18/20 Principles of Program Analysis Charngki Hong @ PSWLAB

Summary of equation system

Page 19: 1/20 Principles of Program Analysis Charngki Hong @ PSWLAB Principles of Program Analysis Flemming Nielson, Hanne Riis Nielson and Chris Hankin.

19/20 Principles of Program Analysis Charngki Hong @ PSWLAB

How to solve the equations

Page 20: 1/20 Principles of Program Analysis Charngki Hong @ PSWLAB Principles of Program Analysis Flemming Nielson, Hanne Riis Nielson and Chris Hankin.

20/20 Principles of Program Analysis Charngki Hong @ PSWLAB

The example equations

Page 21: 1/20 Principles of Program Analysis Charngki Hong @ PSWLAB Principles of Program Analysis Flemming Nielson, Hanne Riis Nielson and Chris Hankin.

21/20 Principles of Program Analysis Charngki Hong @ PSWLAB

Why does it work? (1)

Page 22: 1/20 Principles of Program Analysis Charngki Hong @ PSWLAB Principles of Program Analysis Flemming Nielson, Hanne Riis Nielson and Chris Hankin.

22/20 Principles of Program Analysis Charngki Hong @ PSWLAB

Why does it work? (2)

Page 23: 1/20 Principles of Program Analysis Charngki Hong @ PSWLAB Principles of Program Analysis Flemming Nielson, Hanne Riis Nielson and Chris Hankin.

23/20 Principles of Program Analysis Charngki Hong @ PSWLAB

Why does it work? (3)

Page 24: 1/20 Principles of Program Analysis Charngki Hong @ PSWLAB Principles of Program Analysis Flemming Nielson, Hanne Riis Nielson and Chris Hankin.

25/20 Principles of Program Analysis Charngki Hong @ PSWLAB

Future work Constraints based analysis

Page 25: 1/20 Principles of Program Analysis Charngki Hong @ PSWLAB Principles of Program Analysis Flemming Nielson, Hanne Riis Nielson and Chris Hankin.

26/20 Principles of Program Analysis Charngki Hong @ PSWLAB

Table of Contents

Introduction Data flow analysis Future work

Constraints based analysis References

Page 26: 1/20 Principles of Program Analysis Charngki Hong @ PSWLAB Principles of Program Analysis Flemming Nielson, Hanne Riis Nielson and Chris Hankin.

27/20 Principles of Program Analysis Charngki Hong @ PSWLAB

References Principles of program analysis, Flemming Niel-

son, Hanne Riis Nielson, Chris Hankin http://www2.imm.dtu.dk/~riis/PPA/ppa-

sup2004.html