From d7d30674fe4acfcf6da1b9c03c7cd67528ba59d8 Mon Sep 17 00:00:00 2001 From: Carlos Galindo Date: Fri, 18 Oct 2019 08:54:33 +0000 Subject: [PATCH] Initial commit (TFM Carlos) --- Makefile | 13 ++++ bibliography.tex | 78 ++++++++++++++++++++++++ img/Makefile | 9 +++ img/breakcfg.dot | 8 +++ img/breakpdg.dot | 22 +++++++ img/cfgsimple.dot | 6 ++ img/cfgsimple2.dot | 5 ++ img/legendsimple.dot | 42 +++++++++++++ img/multiplycfg.dot | 5 ++ img/multiplypdg.dot | 26 ++++++++ img/multiplysdg.dot | 52 ++++++++++++++++ img/pdgsimple.dot | 30 +++++++++ img/pdgsimple2.dot | 27 ++++++++ img/sdgsimple.dot | 50 +++++++++++++++ incremental_slicing.tex | 122 +++++++++++++++++++++++++++++++++++++ introduction.tex | 97 +++++++++++++++++++++++++++++ listings-config.tex | 28 +++++++++ paper.tex | 58 ++++++++++++++++++ solution.tex | 107 ++++++++++++++++++++++++++++++++ state_of_the_art.tex | 64 +++++++++++++++++++ title/logo-dsic.png | Bin 0 -> 18268 bytes title/logo-upv-cropped.png | Bin 0 -> 117808 bytes title/logo-upv.png | Bin 0 -> 113316 bytes title/mitssTitle.sty | 40 ++++++++++++ 24 files changed, 889 insertions(+) create mode 100644 Makefile create mode 100644 bibliography.tex create mode 100644 img/Makefile create mode 100644 img/breakcfg.dot create mode 100644 img/breakpdg.dot create mode 100644 img/cfgsimple.dot create mode 100644 img/cfgsimple2.dot create mode 100644 img/legendsimple.dot create mode 100644 img/multiplycfg.dot create mode 100644 img/multiplypdg.dot create mode 100644 img/multiplysdg.dot create mode 100644 img/pdgsimple.dot create mode 100644 img/pdgsimple2.dot create mode 100644 img/sdgsimple.dot create mode 100644 incremental_slicing.tex create mode 100644 introduction.tex create mode 100644 listings-config.tex create mode 100644 paper.tex create mode 100644 solution.tex create mode 100644 state_of_the_art.tex create mode 100644 title/logo-dsic.png create mode 100644 title/logo-upv-cropped.png create mode 100644 title/logo-upv.png create mode 100644 title/mitssTitle.sty diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..a5f5e16 --- /dev/null +++ b/Makefile @@ -0,0 +1,13 @@ +all: paper.pdf + +images: + $(MAKE) -C img + +paper.pdf: paper.tex images + pdflatex -synctex=1 -interaction=nonstopmode paper.tex + pdflatex -synctex=1 -interaction=nonstopmode paper.tex + +clean: + rm -f *.toc *.aux *.bbl *.blg *.fls *.out *.log *.synctex.gz *.dot + rm -rf tmp + $(MAKE) -C img clean diff --git a/bibliography.tex b/bibliography.tex new file mode 100644 index 0000000..253f4d9 --- /dev/null +++ b/bibliography.tex @@ -0,0 +1,78 @@ +\begin{thebibliography}{99} +\bibitem{weiser79} + Mark D. Weiser. + \textsl{Program Slices: Formal, Psychological, and Practical Investigations of an Automatic Program Abstraction Method.} + 1979. + +\bibitem{sinha98} + Saurabh Sinha, Mary Jean Harrold. + \textsl{Analysis of Programs with Exception-Handling Constructs.} + 1998. + +\bibitem{sinha99} + Saurabh Sinha, Mary Jean Harrold, Gregg Rothermel. + \textsl{System-Dependence-Graph-Based Slicing of Programs With Arbitrary Interprocedural Control Flow.} + 1999. + +\bibitem{sinha00} + Saurabh Sinha, Mary Jean Harrold. + \textsl{Analysis and Testing of Programs with Exception-Handling Constructs.} + 2000. + +\bibitem{allen03} + Mathew Allen, Susan Horwitz. + \textsl{Slicing Java Programs That Throw and Catch Exceptions.} + 2003. + +\bibitem{jo04} + Jang-Wu Jo, Byeong-Mo Chang. + \textsl{Constructing Control Flow Graph for Java by Decoupling Exception Flow from Normal Flow.} + 2004. + +\bibitem{jiang06} + Shujuan Jiang, Shengwu Zhou, Yuqin Shi, Yuanpeng Jiang. + \textsl{Improving the Preciseness of Dependence Analysis using Exception Analysis.} + 2006. + +\bibitem{jiang07} + Shujuan Jiang, Yuanpeng Jiang. + \textsl{An Analysis Approach for Testing Exception Handling Programs.} + 2007. + +\bibitem{dooren07} + Marko van Dooren, Eric Steegmans. + \textsl{Combining the Robustness of Checked Exceptions with the Flexibility of Unchecked Exceptions using Anchored Exception Declarations.} + 2007. + +\bibitem{xu07} + Guoqing Xu, Atanas Rountev. + \textsl{Data-flow and Control-flow Analysis of AspectJ Software for Program Slicing.} + 2007. + +\bibitem{corbat08} + Thomas Corbat. + \textsl{Dependence Graphs for Slicing and Refactoring.} + 2008. + +\bibitem{qui10} + Xiang Qiu, Li Zhang, Xiaoli Lian. + \textsl{Static Analysis for Java Exception Propagation Structure.} + 2010. + +\bibitem{prabhu11} + Prakash Prabhu, Naoto Maeda, Gogul Balakrishnan, Franjo Ivančić, Aarti Gupta. + \textsl{Interprocedural Exception Analysis for C++.} + 2011. + +\bibitem{jie11} + Hao Jie, Jiang Shu-juan. + \textsl{An Approach of Slicing for Object-oriented Language with Exception Handling.} + 2011. + +\bibitem{chang15} + Byeong-Mo Chang, Kwanghoon Choi. + \textsl{A review on exception analysis.} + 2015. + +%\bibitem{citekey} +\end{thebibliography} \ No newline at end of file diff --git a/img/Makefile b/img/Makefile new file mode 100644 index 0000000..0e5aa0d --- /dev/null +++ b/img/Makefile @@ -0,0 +1,9 @@ +dotfiles = $(shell ls *.dot | sed 's/\.dot/\.pdf/' -) + +all: $(dotfiles) + +%.pdf: %.dot + dot -Tpdf $< -o $@ + +clean: + rm -f *.pdf diff --git a/img/breakcfg.dot b/img/breakcfg.dot new file mode 100644 index 0000000..576823a --- /dev/null +++ b/img/breakcfg.dot @@ -0,0 +1,8 @@ +digraph g { + Start [shape=box]; + End [shape=box]; + Start -> End [style=dashed]; + Start -> "int a = 1" -> "while (a > 0)" -> "if (a > 10)" -> "break" -> "print(a)"; + "break" -> "a++" [style=dashed]; + "if (a > 10)" -> "a++" -> "while (a > 0)" -> "print(a)" -> End; + } \ No newline at end of file diff --git a/img/breakpdg.dot b/img/breakpdg.dot new file mode 100644 index 0000000..c02a97c --- /dev/null +++ b/img/breakpdg.dot @@ -0,0 +1,22 @@ +digraph g { + "f()" [shape=box, rank=min]; + // Rank adjustment + { rank = same; "int a = 1"; "while (a > 0)"; } + { rank = same; "print(a)"; "a++"; } + { rank = max; "a++"; "print(a)"; } + // Control flow + "f()" -> "int a = 1" [style=bold]; + "f()" -> "while (a > 0)" [style=bold]; + "while (a > 0)" -> "if (a > 10)" [style=bold]; + "if (a > 10)" -> "break" [style=bold]; + "break" -> "print(a)" [style=bold]; + "break" -> "a++" [style=bold]; + "break" -> "while (a > 0)" [style=bold]; + // Data flow + "int a = 1" -> "while (a > 0)" [color=red]; + "int a = 1" -> "if (a > 10)" [color=red]; + "int a = 1" -> "print(a)" [color=red]; + "a++" -> "a++" -> "while (a > 0)" [color=red]; + "a++" -> "if (a > 10)" [color=red]; + "a++" -> "print(a)" [color=red]; + } \ No newline at end of file diff --git a/img/cfgsimple.dot b/img/cfgsimple.dot new file mode 100644 index 0000000..1eeaaa3 --- /dev/null +++ b/img/cfgsimple.dot @@ -0,0 +1,6 @@ +digraph g { + Start [shape=box]; + End [shape=box]; + f [label=y_in = b
f (a, b)
b = x_out>] + Start -> "a = 10" -> "b = 20" -> f -> "print(a)" -> End; +} diff --git a/img/cfgsimple2.dot b/img/cfgsimple2.dot new file mode 100644 index 0000000..9864d3e --- /dev/null +++ b/img/cfgsimple2.dot @@ -0,0 +1,5 @@ +digraph g { +s [shape=box,label=x = x_in
y = y_in>]; + End [shape=box,label=End>]; + s -> "while (x > y)" -> "x = x - 1" -> "while (x > y)" -> "print(x)" -> End; +} diff --git a/img/legendsimple.dot b/img/legendsimple.dot new file mode 100644 index 0000000..d126a13 --- /dev/null +++ b/img/legendsimple.dot @@ -0,0 +1,42 @@ +digraph g { +rankdir=LR + +node [shape=plaintext] + +subgraph cluster_01 { + + label = "Legend"; + + key [label=< + + + + + + + + + +
Control dependency
Data dependency
Call, param-in, param-out
Summary
>] + + key2 [label=< + + + + + + + + + +
 
 
 
 
>] + + key:i1:e -> key2:i1:w [style=bold] + + key:i2:e -> key2:i2:w [color=red] + + key:i3:e -> key2:i3:w [style=dashed] + + key:i4:e -> key2:i4:w [color=blue] +} +} diff --git a/img/multiplycfg.dot b/img/multiplycfg.dot new file mode 100644 index 0000000..1d4197a --- /dev/null +++ b/img/multiplycfg.dot @@ -0,0 +1,5 @@ + digraph g { + Start [shape=box]; + End [shape=box]; + Start -> "int result = 0" -> "while (x > 0)" -> "result += y" -> "x--" -> "while (x > 0)" -> "System.out.println(result)" -> "return result" -> "End"; + } \ No newline at end of file diff --git a/img/multiplypdg.dot b/img/multiplypdg.dot new file mode 100644 index 0000000..87380fc --- /dev/null +++ b/img/multiplypdg.dot @@ -0,0 +1,26 @@ +digraph g { "multiply()" [shape=box, rank=min]; + // Rank adjustment + { rank = same; "int result = 0"; "while (x > 0)"; "System.out.println(result)"; "return result"; } + { rank = same; "result += y"; "x--"; } + // Control flow + "multiply()" -> "int result = 0" [style=bold]; + "multiply()" -> "while (x > 0)" [style=bold]; + "multiply()" -> "System.out.println(result)" [style=bold]; + "multiply()" -> "return result" [style=bold]; + "while (x > 0)" -> "result += y" [style=bold]; + "while (x > 0)" -> "x--" [style=bold]; + // Data flow + "int result = 0" -> "result += y" [color=red]; + "int result = 0" -> "System.out.println(result)" [color=red]; + "int result = 0" -> "return result" [color=red]; + "result += y" -> "result += y" [color=red]; + "result += y" -> "System.out.println(result)" [color=red]; + "result += y" -> "return result" [color=red]; + "x--" -> "x--" [color=red]; + "x--" -> "while (x > 0)" [color=red]; + // Order adjustment + "int result = 0" -> "while (x > 0)" [style=invis]; + "while (x > 0)" -> "System.out.println(result)" [style=invis]; + "System.out.println(result)" -> "return result" [style=invis]; + "result += y" -> "x--" [style=invis]; +} \ No newline at end of file diff --git a/img/multiplysdg.dot b/img/multiplysdg.dot new file mode 100644 index 0000000..12d2806 --- /dev/null +++ b/img/multiplysdg.dot @@ -0,0 +1,52 @@ +digraph g { + "main()" [shape=box]; +"main()" -> "multiply(3, 2)" [style=bold]; +{ rank = same; "x"; "y"; "out" } +"x" -> "y" [style=invis]; +"y" -> "out" [style=invis]; +"multiply(3, 2)" -> "multiply()" [style=dotted]; +"multiply(3, 2)" -> "x"; +"multiply(3, 2)" -> "y"; +"multiply(3, 2)" -> "out"; +"x" -> "x_in" [style=dotted]; +"y" -> "y_in" [style=dotted]; +"output" -> "out" [style=dotted]; +"x" -> "out" [style=bold, color=blue]; +"y" -> "out" [style=bold, color=blue]; + +"multiply()" [shape=box]; +// Rank adjustment +{ rank = same; "x_in"; "y_in"; "output" } +{ rank = same; "int result = 0"; "while (x > 0)"; "System.out.println(result)"; "return result"; } +{ rank = same; "result += y"; "x--"; } +// Input/output +"multiply()" -> "x_in"; +"multiply()" -> "y_in"; +"multiply()" -> "output" +"x_in" -> "while (x > 0)" [color=red]; +"x_in" -> "x--" [color=red]; +"y_in" -> "result += y" [color=red]; +"return result" -> "output" [color=red]; +// Control flow +"multiply()" -> "int result = 0" [style=bold]; +"multiply()" -> "while (x > 0)" [style=bold]; +"multiply()" -> "System.out.println(result)" [style=bold]; +"multiply()" -> "return result" [style=bold]; +"while (x > 0)" -> "result += y" [style=bold]; +"while (x > 0)" -> "x--" [style=bold]; +// Data flow +"int result = 0" -> "result += y" [color=red]; +"int result = 0" -> "System.out.println(result)" [color=red]; +"int result = 0" -> "return result" [color=red]; +"result += y" -> "result += y" [color=red]; +"result += y" -> "System.out.println(result)" [color=red]; +"result += y" -> "return result" [color=red]; +"x--" -> "x--" [color=red]; +"x--" -> "while (x > 0)" [color=red]; +// Order adjustment +"int result = 0" -> "while (x > 0)" [style=invis]; +"while (x > 0)" -> "System.out.println(result)" [style=invis]; +"System.out.println(result)" -> "return result" [style=invis]; +"result += y" -> "x--" [style=invis]; +"x_in" -> "y_in" [style=invis]; +} \ No newline at end of file diff --git a/img/pdgsimple.dot b/img/pdgsimple.dot new file mode 100644 index 0000000..4adfc1d --- /dev/null +++ b/img/pdgsimple.dot @@ -0,0 +1,30 @@ +digraph g { + Start [shape=box]; + l2 [label="a = 10"]; + l3 [label="b = 20"]; + l4 [label="f(a, b)"]; + p1 [label="x_in = a"]; + p2 [label="y_in = b"]; + p3 [label="a = x_out"]; + l5 [label="print(a)"]; + // Rank + { rank = same; l2; l3; l4; l5; } + { rank = min; Start; } + { rank = same; p1; p2; p3; } + // Control + { edge [style = bold]; + Start -> { l2 l3 l4 l5 }; + l4 -> { p1 p2 p3 }; + } + // Data + { edge [color = red]; + l2 -> p1; + l3 -> p2; + p3 -> l5; + } + // Order + { edge [style = invis]; + l2 -> l3 -> l4 -> l5; + p1 -> p2 -> p3; + } +} diff --git a/img/pdgsimple2.dot b/img/pdgsimple2.dot new file mode 100644 index 0000000..56bebb6 --- /dev/null +++ b/img/pdgsimple2.dot @@ -0,0 +1,27 @@ +digraph g { + Start [shape=box]; + s1 [label="x = x_in"]; + s0 [label="y = y_in"]; + s2 [label="while (x > y)"]; + s3 [label="x = x + 1"]; + s4 [label="print(x)"]; + s5 [label="x_out = x"]; + // Rank + { rank=same; s0; s1; s5; } + { rank=same; s2; s4; } + { rank=min; Start; } + s0 -> s2 [style=invis]; + // Control + { + edge [style = bold]; + Start -> {s0 s1 s2 s4 s5}; + s2 -> s3; + } + // Data + { + edge [color = red]; + edge [constraint = false]; + {s1 s3} -> {s2 s3 s4 s5}; + s0 -> s2; + } +} diff --git a/img/sdgsimple.dot b/img/sdgsimple.dot new file mode 100644 index 0000000..89436f9 --- /dev/null +++ b/img/sdgsimple.dot @@ -0,0 +1,50 @@ +digraph g { + subgraph { + l1; l2; l3; l4; l5; + "x_in = a"; "y_in = b"; "a = x_out"; + } + subgraph { + l8; l9; l10; l12; + "x = x_in"; "y = y_in"; "x_out = x"; + } + l1 [label="main()"]; + l2 [label="a = 10"]; + l3 [label="b = 20"]; + l4 [label="f(a, b)"]; + l5 [label="print(a)"]; + l8 [label="f()"]; + l9 [label="while (x > y)"]; + l10 [label="x = x + 1"]; + l12 [label="print(x)"]; + // Rank + { rank = same; l9; l12; } + // s0 -> s2 [style=invis]; + // Control + { + edge [style = bold]; + l1 -> {l2 l3 l4 l5}; + l4 -> {"x_in = a" "y_in = b" "a = x_out"}; + l8 -> {"x = x_in" "y = y_in" l9 l12 "x_out = x"}; + l9 -> l10; + } + // Data + { + edge [color = red]; + edge [constraint = false]; + l2 -> "x_in = a"; + l3 -> "y_in = b"; + "a = x_out" -> l5; + {"x = x_in" l10} -> {l9 l10 l12 "x_out = x"}; + "y = y_in" -> l9; + } + { + edge [style=dashed]; + edge [constraint=false]; + "x_in = a" -> "x = x_in"; + "y_in = b" -> "y = y_in"; + l4 -> l8 [constraint=true]; + "x_out = x" -> "a = x_out"; + } + {edge [color=blue,constraint=false]; {"x_in = a" "y_in = b"} -> "a = x_out"} + {edge [style=invis]; "y_in = b" -> l8; "y = y_in" -> l9; } +} diff --git a/incremental_slicing.tex b/incremental_slicing.tex new file mode 100644 index 0000000..3ef7fc7 --- /dev/null +++ b/incremental_slicing.tex @@ -0,0 +1,122 @@ +\chapter{Main explanation?} + +\section{First definition of the SDG} + +The system dependence graph (SDG) is a method for program slicing that was first proposed by Horwitz, Reps and Blinkey \cite{horwitz90}. It builds upon the existing control flow graph (CFG), defining dependencies between vertices of the CFG, and building a program dependence graph (PDG), which represents them. The system dependence graph (SDG) is then build from the assembly of the different PDGs (each representing a method of the program), linking each method call to its corresponding definition. Because each graph is built from the previous one, new constructs can be added with to the CFG, without the need to alter the algorithm that converts CFG to PDG and then to SDG. The only modification possible is the redefinition of a dependency or the addition of new kinds of dependence. + +The language covered by the initial proposal was a simple one, featuring procedures with modifiable parameters and basic instructions, including calls to procedures, variable assignments, arithmetic and logic operators and conditional instructions (branches and loops): the basic features of an imperative programming language. The control flow graph was as simple as the programs themselves, with each graph representing one procedure. The instructions of the program are represented as vertices of the graph and are split into two categories: statements, which have no effect on the control flow (assignments, procedure calls) and predicates, whose execution may lead to one of multiple ---though traditionally two--- paths (conditional instructions). Statements are connected sequentially to the next instruction. Predicates have two outgoing edges, each connected to the first statement that should be executed, according to the result of evaluating the conditional expression in the guard of the predicate. + +To build the PDG and then the SDG, some dependencies must be extracted from the CFG, which are defined as follows: + +\begin{definition}[Postdominance] + Vertex $b$ \textit{postdominates} vertex $b$ if and only if $a \neq b$ and $b$ is on every path from $a$ to the ``End'' vertex. +\end{definition} + +\begin{definition}[Control dependency] + \label{def:ctrl-dep} + Vertex $b$ is \textit{control dependent} on vertex $a$ ($a \ctrldep b$) if and only if $b$ postdominates one but not all of $a$'s successors. It follows that a vertex with only one successor cannot be the source of control dependence. +\end{definition} + +\begin{definition}[Data dependency] + Vertex $b$ is \textit{data dependent} on vertex $a$ ($a \datadep b$) if and only if $a$ may define a variable $x$, $b$ may use $x$ and there an $x$-definition free path from $a$ to $b$.\footnote{The initial definition of data dependency was further split into in-loop data dependencies and the rest, but the difference is not relevant for computing the slices in the SDG.} +\end{definition} + +It should be noted that variable definitions and uses can be computed for each statement independently, analyzing the procedures called by it if necessary. In general, any instruction uses all variables that appear in it, save for the left-hand side of assignments. Similarly, no instruction defines variables, except those in the left-hand side of assignments. The variables used and defined by a procedure call are those used and defined by its body. + +With the data and control dependencies, the PDG may be built, by replacing the edges from the CFG by data and control dependence edges. The first tends to be represented as a thin solid line, and the latter as a thick solid line. In the examples, data dependencies will be thin solid red lines. + +The organization of the vertices of the PDG tends to resemble a tree graph, with the ``Start'' node in the position of the root (at the top), and the ``End'' node typically omitted. The control dependence edges structure the tree vertically. In the case that a vertex is control dependent on multiple vertices, it will be placed one level below the lowest source of control dependency. With a programming language this simple, cyclical control dependencies do not appear, but should they do so in further sections, the instructions are sorted top to bottom in the order they appear in the program. Horizontally, the vertices are sorted by their order in the program, left to right, in order to make the graph more readable. Data dependency edges are placed without reordering the nodes of the graph. In the examples given, edges like $a \datadep a$ or $b \ctrldep b$ may be omitted, as they are not relevant for later use of the graph. Please be noted that the location of the vertices is irrelevant for the slicing algorithm, and the aforementioned sorting rules are just for consistency with previous papers on the topic and to ease the visualization of programs. + +Finally, the SDG is built from the combination of all the PDGs that compose the program. Each call vertex is connected to the ``Start'' of the corresponding procedure. All edges that connect PDGs are represented with dashed lines. + +\begin{figure} +\begin{minipage}{0.3\linewidth} + \begin{lstlisting} + proc main() { + a = 10; + b = 20; + f(a, b); + print(a); + } + + proc f(x, y) { + while (x > y) { + x = x - 1; + } + print(x); + } + \end{lstlisting} +\end{minipage} +\begin{minipage}{0.6\linewidth} + \includegraphics[width=0.3\linewidth]{img/cfgsimple} + \includegraphics[width=0.65\linewidth]{img/cfgsimple2} +\end{minipage} +\includegraphics[width=0.5\linewidth]{img/pdgsimple} +\includegraphics[width=0.49\linewidth]{img/pdgsimple2} +\includegraphics[width=0.6\linewidth]{img/sdgsimple} +\includegraphics[width=0.4\linewidth]{img/legendsimple} +\caption{A simple program with its CFGs (top right), PDGs (center) and SDG (bottom).} +\label{fig:sdg-loop} +\end{figure} + +\subsubsection{Procedures and data dependencies} + +The only thing left to explain before introducing more constructs into the language is the passing of parameters. Most programming language accept a variable number of input parameters and one output parameter. In the case of input parameters passed by reference, or constructs such as structs or classes, modifying a field of a parameter may modify the original variable. In order to deal with everything related to parameter passing, including global variables, class fields, etc. there is a small extension to be made to the CFG and PDG. + +In the CFG, the ``Start'' and ``End'' nodes contain a list of assignments, inputting and outputting respectively the appropriate values, as can be seen in the example. Consequently, every vertex that contains a procedure or function call pack and unpack the arguments. For every variable $x$ that is used in a procedure, every call to it must be preceded by $x_{in} = x$, and the procedures's ``Start'' vertex must contain $x = x_{in}$. The opposite happens when a variable must be ``outputted''\todo{replace}: before the ``End'' node, the value must be packed ($x_{out} = x$), and after each call, the value must be assigned to the corresponding variable ($x = x_{out}$). Parameters may be assigned as $par^i_{in} = expr_i$ (where $i$ is the index of the parameter in the procedure definition, $par^i$ is the name of the parameter and $expr_i$ is the expression in the $i^{th}$ position in the procedure call) in the call vertex, and parameters whose modifications inside the procedure are passed back to the calling procedure must be extracted as $var = par^i_{out}$ (where $var$ is the name of the variable ---passed by reference--- in the calling procedure).\todo{What if object/struct passed by value?} As an addition, in the SDG, an extra edge is added (summary edge), which represents the dependencies that the input variables have on the outputs. This allows the algorithm to know the dependencies without traversing the corresponding function. + +All these additions are added as extra lines in the ``Start'', ``End'' and calling vertices. +When building the PDG, all additions (variable assignments) are split into their own vertices, and are control dependent on them. +Data dependencies no longer flow throw the call vertex, but throw the appropriate child, which minimizes the size of the slice produced. +As an example, figure~\ref{fig:sdg-loop} shows the three stages of a program, from CFG to SDG. +The construction of the CFG is straight-forward, save for the packing and unpacking of variables in the start, end and call vertices. +In the PDG, the statements are split, control and data dependencies replace the control flow edges. +Finally, both PDGs are linked via call and parameter (input and output) edges, forming the SDG. +Summary edges are placed according to the data and control flow of the method call, and the graph is complete. + +\section{Unconditional control flow} + +Even though the initial definition of the SDG was useful to compute slices, the language covered was not enough for the typical language of the 1980's, which included (in one form or another) unconditional control flow. +Therefore, one of the first additions contributed to the algorithm to build system dependence graphs was the inclusion of unconditional jumps, such as ``break'', ``continue'', ``goto'' and ``return'' statements (or any other equivalent). +A naive representation would be to treat them the same as any other statement, but with the outgoing edge landing in the corresponding instruction (outside the loop, at the loop condition, at the method's end, etc.). +An alternative approach is to represent the instruction as an edge, not a vertex, connecting the previous statement with the next to be executed. +Both of these approaches fail to generate a control dependence from the unconditional jump, as the definition of control dependence (see Definition~\ref{def:ctrl-dep}) requires a vertex to have more than one successor for it to be possible to be a source of control dependence. +A possible ---but difficult--- solution would be to redefine control dependence, as some\todo{citation-needed} have done. + +The most popular solution was proposed by Ball and Horwitz\cite{ball??}, and represents unconditional jumps as a predicate. +The true edge would lead to the next instruction to be executed, and the false edge would be non-executable or \textit{dummy} edges, connected to the instruction that would be executed were the unconditional jump a \textit{nop}. +The consequence of this solution is that every instruction placed after the unconditional jump is control dependent on the jump, as can be seen in Figure~\ref{fig:break-graphs}. +In the example, when slicing with respect to variable $a$ on line 5, every statement would be included, save for ``print(a)''. +Line 4 is not strictly necessary in this example ---in the context of weak slicing---, but is included nonetheless. +In the original paper, the transformation is proved to be complete, but not correct, as for some examples, the slice includes more unconditional jumps that would be strictly necessary, even for weak slicing. +Ball and Horwitz theorize that a more correct approach would be possible, if it weren't for the limitation of slices to be a subset of statements of the program, in the same order as in the original. + +\begin{figure} +\centering +\begin{minipage}{0.3\linewidth} + \begin{lstlisting} +static void f() { + int a = 1; + while (a > 0) { + if (a > 10) break; + a++; + } + System.out.println(a); +} + \end{lstlisting} +\end{minipage} +\begin{minipage}{0.6\linewidth} + \includegraphics[width=0.4\linewidth]{img/breakcfg} + \includegraphics[width=0.59\linewidth]{img/breakpdg} +\end{minipage} +\caption{A program with unconditional control flow, its CFG (center) and PDG(right).} +\label{fig:break-graphs} +\end{figure} + +\section{Exceptions} + +As seen in section~\ref{sec:intro-exception}, exception handling adds two constructs: the \texttt{throw} and the \texttt{try-catch} statements. The first one resembles an unconditional control flow statement, with an unknown (on compile time) destination. The exception will be caught by a \texttt{catch} of the corresponding type or a supertype ---if it exists. , but polymorphism and inheritance make the analysis difficult. + +\subsection{\texttt{throw} statement} + +\subsection{\texttt{try-catch} statement} \ No newline at end of file diff --git a/introduction.tex b/introduction.tex new file mode 100644 index 0000000..a1b5fcd --- /dev/null +++ b/introduction.tex @@ -0,0 +1,97 @@ +\chapter{Introduction} + +\section{Program slicing} +\textsl{Program slicing} is a debugging technique which answers the question: ``which parts of a program affect a selected statement and variable?'' The statement and the variable are the basic input to create a slice and are called the \textsl{slicing criterion}. The criterion can be more complex, as different slicing techniques may require additional pieces of input. +There exist two dimensions along which the problem of slicing can be proposed: +\begin{itemize} + \item \textsl{Static} or \textsl{dynamic}: slicing can be performed statically (which is the default) or dynamically, which includes an execution log. A statement in the log is marked, along with a variable. The dynamic slice will only include statements from the execution log, even if in the general case more statements are required. This makes the slice more useful for the specific case, and may help solve a bug related with an indeterministic behaviour (such as a random or pseudo-random number generator), but must be recomputed for each case to be analyzed. + \item \textsl{Backward} or \textsl{forward}: the default tends to be backward slicing, which looks at which statements affect the selected one. Forward slicing obtains the statements that are affected by the chosen one. There also exists a mixed approach, which is used to find all the statements that affect or affected by a specific line. +\end{itemize} + +The default choice tends to be a \textsl{static backward slice}, which obtains the list of statements that affect the value of a variable in a given statement in all possible executions of the program. +The \textsl{slice} of a program is a list of statements from the original program which constitutes a valid program, whose execution will result in the same values for the variable being read by a debugger in the selected statement\cite{weiser79}. +Some definitions of slicing\todo{Citation needed} allow for the slice to continue producing values after the program has stopped, making the slices simpler to produce and smaller in size at the cost of different endings\footnotemark. We will name the exact slice ---one that produces exactly the same values--- a \textit{strong} slice, and the permissive one, a \textit{weak} slice. See table \ref{tab:slice-permissive} for an example; with each row showing the values logged at the slicing criterion from the execution of 4 different programs. The first is the original, which computes $3!$. Slice A is one slice, whose execution is identical and therefore is a strong slice. Slice B is correct but continues producing values after the original stops ---a weak slice. It would fit the relaxed definition but not a strict one. Slice C is incorrect, as the values differ from the original. Some data or control dependency has not been included in the slice and the program is behaving in a different way. + +\footnotetext{POSSIBLE ADDITION: It could be argued that permissive or weak slicing is enough for most uses of slicing, as if we suppose that the bug is present before the end of the program, then the bug must show up in the slice as well, regardless of whether the sliced program continues producing extra values or not.} + +\begin{table} + \centering + \label{tab:slice-permissive} + \begin{tabular}{r | r | r | r | r | r } + Iteration & \textbf{1} & \textbf{2} & \textbf{3} & \textbf{4} & \textbf{5} \\ \hline + Original & 1 & 2 & 6 & & \\ \hline + Slice A & 1 & 2 & 6 & & \\ \hline + Slice B & 1 & 2 & 6 & 24 & 120 \\ \hline + Slice C & 1 & 1 & 3 & 5 & 8 \\ + \end{tabular} + \caption{Execution logs of different slices and their original program.} +\end{table} + +The most efficient and broadly used tool for slicing is the system dependence graph (SDG), first introduced by Horwitz, Reps and Blinkey\cite{horwitz90}. It represents the statements of a program as vertices, and their dependencies as directed edges. Method calls are connected to method definitions, and so are the corresponding input and output parameters. SDGs show two different kinds of dependencies: \textsl{data} and \textsl{control}. The first one connects nodes that write to variables to the nodes that use (or \textsl{may} use) the value, and it is represented as a dashed\todo{check} line. The latter represents which nodes have control over the execution of others (conditional jumps and loops, mainly), and its representation is a solid line. In order to obtain a slice of a program, its SDG must be built from the source code. Then a two pass search ($\mathcal{O}(n)$ each) is performed to obtain the slice. The SDG can be reused to obtain a different slice of the same program (with a different criterion or kind\footnotemark of slice). The efficiency derives from the linear cost of the search on the SDG, so most modifications\todo{citation needed} modify the complexity of the SDG's construction, but try to keep the slice process linear. + +\footnotetext{TODO: change this word to the proper one.} + +The SDG is built in 3 stages, each resulting in a different graph: + +\begin{description} + \item[CFG] The control flow graph is the representation of the control dependencies in a method of a program. Every statement has an edge from itself to every statement that can immediately follow. This means that most will only have one outgoing edge, and conditional jumps and loops will have two. The graph starts in a ``Begin'' or ``Start'' node, and ends in an ``End'' node, to which the last statement and all return statements are connected. It is created directly from the source code, without any need for data dependency analysis. + \item[PDG] The program dependence graph is the result of restructuring and adding data dependencies to a CFG. All statements are placed below and connected to a ``Begin'' node, except those which are inside a loop or conditional block. Then data dependencies are added (red or dashed edges), adding an edge between two nodes if there is a data dependency. \todo{add definitions?} + \item[SDG] Finally, the system dependence graph is the interconnection of each method's PDG. When a call is made, the input arguments are passed to subnodes of the call, and the result is obtained in another subnode. There is an edge from the call to the beginning of the corresponding method, and an extra type of edge exists: \textsl{summary edges}, which summarize the data dependencies between input and output variables. +\end{description} + +An example is provided in figure \ref{fig:basic-graphs}, where a simple multiplication program is converted to CFG, then PDG and finally SDG. For simplicity only the CFG and PDG of \texttt{multiply} are shown. Control dependencies are black, data dependencies red and summary edges blue. + +\begin{figure} + \centering +% \lstinputlisting[firstline=8, lastline=16]{./dot/simple.java} + \includegraphics[width=0.5\linewidth]{img/multiplycfg} + \includegraphics[width=\linewidth]{img/multiplypdg} + \includegraphics[width=\linewidth]{img/multiplysdg} + \caption{A simple multiplication program, its CFG, PDG and SDG} + \label{fig:basic-graphs} +\end{figure} + +The original proposal by Weiser\cite{weiser79} covers the simplest of an imperative programming language. The various iterations\todo{cite} until reaching the SDG\todo{cite} have added other elements, such as return statements\todo{cite}, global variables\todo{cite}, object oriented features\todo{cite} and finally exception handling\cite{horwitz03}. + +\subsection{Metrics} + +There are 5 metrics considered when evaluating a slicing algorithm: + +\begin{description} + \item[Completeness] The solution includes all the statements that affect the slice. This is the most important feature, and almost all publications achieve at least completeness. Trivial completeness is easily achievable, as simple as including the whole program in the slice. + \item[Correctness] The solution excludes all statements that don't affect the slice. Most solutions are complete, but the degree of correctness is what sets them apart, as smaller slices will not execute unnecessary code to compute the values, decreasing the executing time. + \item[Features covered] Which features or language a slicing algorithm covers. Different approaches to slicing cover different programming languages and even paradigms. There are slicing techniques (published or commercially available) for most popular programming languages, from C++ to Erlang. Some slicing techniques only cover a subset of the targeted language, and as such are less useful for commercial applications, but can be a stepping stone in the betterment of the field. + \item[Speed] Speed of graph generation and slice creation. As previously commented, slicing is a two-step process: build a graph and traverse it. The traversal is linear in most proposals, with small variations. Graph generation tends to be longer and with higher variance, but it is not as relevant, because it is only done once (per program being analyzed). As such, this is the least important metric. Only proposals that deviate from the aforementioned schema show a wider variation in speed. +\end{description} + +\subsection{Program slicing as a debugging technique} + +Program slicing is first and foremost a debugging technique, having each variation a different purpose: + +\begin{description} + \item[Backward static] +\end{description} + +\section{Exception handling in Java} +\label{sec:intro-exception} + +Exception handling is common in most modern programming languages. In Java, it consists of the following elements: +\begin{description} + \item[Throwable] An interface that encompasses all the exceptions or errors that may be thrown. Child classes are \texttt{Exception} for most errors and \texttt{Error} for internal errors in the Java Virtual Machine. Exceptions can be classified in two categories: \textsl{unchecked} (those inheriting from \texttt{RuntimeException} or \texttt{Error}) and \textsl{checked} (the rest). The first may be thrown anywhere, whereas the second, if thrown, must be caught or declared in the method header. + \item[throws] A statement that activates an exception, altering the normal control-flow of the method. If the statement is inside a \textsl{try} block with a \textsl{catch} clause for its type or any supertype, the control flow will continue in the first statement of such clause. Otherwise, the method is exited and the check performed again, until either the exception is caught or the last method in the stack (\textsl{main}) is popped, and the execution of the program ends abruptly. + \item[try] This statement is followed by a block of statements and by one or more \textsl{catch} clauses. All exceptions thrown in the statements contained or any methods called will be processed by the list of catches. Optionally, after the \textsl{catch} clauses a \textsl{finally} block may appear. + \item[catch] Contains two elements: a variable declaration (the type must be an exception) and a block of statements to be executed when an exception of the corresponding type (or a subtype) is thrown. \textsl{catch} clauses are processed sequentially, and if any matches the type of the thrown exception, its block is executed, and the rest are ignored. Variable declarations may be of multiple types \texttt{(T1|T2 exc)}, when two unrelated types of exception must be caught and the same code executed for both. When there is an inheritance relationship, the parent suffices.\footnotemark + \item[finally] Contains a block of statements that will always be executed if the \textsl{try} is entered. It is used to tidy up, for example closing I/O streams. The \textsl{finally} can be reached in two ways: with an exception pending (thrown in \textsl{try} and not captured by any \textsl{catch} or thrown inside a \textsl{catch}) or without it (when the \textsl{try} or \textsl{catch} block end successfully). After the last instruction of the block is executed, if there is an exception pending, control will be passed to the corresponding \textsl{catch} or the program will end. Otherwise, the execution continues in the next statement after the \textsl{try-catch-finally} block. +\end{description} + +\footnotetext{Introduced in Java 7, see \url{https://docs.oracle.com/javase/7/docs/technotes/guides/language/catch-multiple.html} for more details.} + +\section{Exception handling in other programming languages} + +In almost all programming languages, errors exist, and must be dealt with. Java's exception system is a common one among object-oriented programming languages, but not the only one, +Most of the popular object oriented programs feature some kind of error system, normally very similar to Java's exceptions. In this section, we will perform a small survey on the most popular programming languages. The ``most popular'' list has been obtained from the Stack Overflow 2019 Developer Survey\footnotemark ($>5\%$ usage in the industry). The languages and their usage in the industry are shown in Figure~\ref{fig:languages}. +Most of them feature an exception system similar to the one appearing in Java, while others (bash, assembly, VBA, C) have no built-in method, but allow . Some check if the exception is of a given set of types for the catching mechanism (Java, C++, C\#), whilst others rely on a condition that includes the exception (Python, JavaScript, TypeScript). All of them have a mechanism that catches all exceptions ---either by catching the type from which all exceptions inherit or by providing no condition to check. + +\footnotetext{\url{https://insights.stackoverflow.com/survey/2019/\#technology-\_-programming-scripting-and-markup-languages}} + +Go doesn't have an exception system per se, but a simple one can be built by using the keywords ``panic'' (throw an exception with a value associated), ``defer'' (finally, run even when a panic is activated) and ``recover'' (stopping the panic state, retrieves the value associated with the panic). Deferred code will be run after the main function ends, before the program terminates. Each block is stored as a member of a stack, so the execution order is LIFO. If a panic instruction is run, such code will still run, therefore acting as a finally. The panic can only be stopped via the ``recover'' instruction, which obtains the value associated with the panic. Then, the exception \ No newline at end of file diff --git a/listings-config.tex b/listings-config.tex new file mode 100644 index 0000000..a66ebc5 --- /dev/null +++ b/listings-config.tex @@ -0,0 +1,28 @@ +\lstset{ + % Numbering + numbers=left, + stepnumber=2, + numberstyle=\tiny, + numbersep=5pt, + % Style + tabsize=2, + basicstyle=\footnotesize\ttfamily, + % Others + language=Java, + % Escape sequences (UTF-8 support) + literate= + {á}{{\'a}}1 {é}{{\'e}}1 {í}{{\'i}}1 {ó}{{\'o}}1 {ú}{{\'u}}1 + {Á}{{\'A}}1 {É}{{\'E}}1 {Í}{{\'I}}1 {Ó}{{\'O}}1 {Ú}{{\'U}}1 + {à}{{\`a}}1 {è}{{\`e}}1 {ì}{{\`i}}1 {ò}{{\`o}}1 {ù}{{\`u}}1 + {À}{{\`A}}1 {È}{{\'E}}1 {Ì}{{\`I}}1 {Ò}{{\`O}}1 {Ù}{{\`U}}1 + {ä}{{\"a}}1 {ë}{{\"e}}1 {ï}{{\"i}}1 {ö}{{\"o}}1 {ü}{{\"u}}1 + {Ä}{{\"A}}1 {Ë}{{\"E}}1 {Ï}{{\"I}}1 {Ö}{{\"O}}1 {Ü}{{\"U}}1 + {â}{{\^a}}1 {ê}{{\^e}}1 {î}{{\^i}}1 {ô}{{\^o}}1 {û}{{\^u}}1 + {Â}{{\^A}}1 {Ê}{{\^E}}1 {Î}{{\^I}}1 {Ô}{{\^O}}1 {Û}{{\^U}}1 + {Ã}{{\~A}}1 {ã}{{\~a}}1 {Õ}{{\~O}}1 {õ}{{\~o}}1 + {œ}{{\oe}}1 {Œ}{{\OE}}1 {æ}{{\ae}}1 {Æ}{{\AE}}1 {ß}{{\ss}}1 + {ű}{{\H{u}}}1 {Ű}{{\H{U}}}1 {ő}{{\H{o}}}1 {Ő}{{\H{O}}}1 + {ç}{{\c c}}1 {Ç}{{\c C}}1 {ø}{{\o}}1 {å}{{\r a}}1 {Å}{{\r A}}1 + {€}{{\euro}}1 {£}{{\pounds}}1 {«}{{\guillemotleft}}1 + {»}{{\guillemotright}}1 {ñ}{{\~n}}1 {Ñ}{{\~N}}1 {¿}{{?`}}1, +} diff --git a/paper.tex b/paper.tex new file mode 100644 index 0000000..312aefb --- /dev/null +++ b/paper.tex @@ -0,0 +1,58 @@ +\documentclass[a4paper,twoside]{report} + +\usepackage[spanish,english]{babel} +\usepackage[utf8]{inputenc} +\usepackage{listings} +\usepackage{algorithm} +\usepackage{algorithmic} +\renewcommand{\algorithmicrequire}{\textbf{Input:}} +\renewcommand{\algorithmicensure}{\textbf{Output:}} +\usepackage{amsthm} +\usepackage{amssymb} +\theoremstyle{definition} +\newtheorem{definition}{Definition} +\usepackage{hyperref} +\usepackage{graphics} +\usepackage{title/mitssTitle} + +\newcommand{\ctrldep}{\rightarrow^{ctrl}} +\newcommand{\datadep}{\rightarrow^{data}} + +\usepackage{todonotes} +\usepackage{marginnote} + +\title{Fragmentación de programas con excepciones} +%\title{Program slicing with exceptions} +\author{Carlos S. Galindo Jiménez} +\date{diciembre de 2019} +\supervisor{Josep Francesc Silva Galiana} + +\begin{document} +\algsetup{linenodelimiter=.} +\include{listings-config} +\maketitle + +\begin{abstract} + This must be filled \todo{complete} +\end{abstract} + +\selectlanguage{spanish} +\begin{abstract} + A completar \todo{completar} +\end{abstract} + +\selectlanguage{english} + +\tableofcontents + +\include{introduction} +\include{incremental_slicing} +\include{state_of_the_art} +\include{solution} + +\input{bibliography} + +%\bibliography{mybib} +%\bibliographystyle{plain} + +\end{document} diff --git a/solution.tex b/solution.tex new file mode 100644 index 0000000..1cfa95d --- /dev/null +++ b/solution.tex @@ -0,0 +1,107 @@ +\chapter{Proposed solution} + +This solution is an extension of Allen's\cite{allen03}, with some modifications to solve the problem found. Before starting, we need to split all instructions in three categories: + +\begin{description} + \item[statement] non-branching instruction, e.g. an assignment or method call. + \item[predicate] conditional branch, e.g. if statements and loops. + \item[pseudo-predicate] unconditional jump, e.g. break, continue, return, goto and throw instructions. +\end{description} + +Pseudo-predicates have been previously use to model unconditional jumps with a counter-intuitive reasoning: the next statement that would be executed were the pseudo-predicate not there would be executed, therefore it is control dependent on it. Going back to the definition of control dependency, one could argue that the real control dependency is on the conditional branch that lead to the + +\begin{figure} +\centering +\begin{lstlisting} +if (a) { + return a; +} +print(a); +\end{lstlisting} +\begin{lstlisting} +if (a) { + +} +print(a); +\end{lstlisting} +\caption{Example of pseudo-predicates control dependencies} +\end{figure} + +This is the process used to build the Program Dependence Graph. + +\begin{description} + \item[Step 1 (static analysis):] Identify for each instruction the variables read and defined. Each method is annotated with the global variables that they access or modify. + \item[Step 2 (build CFGs):] Build a CFG for each method of the program. The start of all methods is a vertex labeled \textsl{enter}, which also contains the assignments for parameters and global variables used (\texttt{var = var\_in}). The \textsl{enter} node is connected to the first instruction of the method. In a similar fashion, all methods end in an \textsl{exit} vertex with the corresponding output variables. There exists one \textsl{normal exit} to which the last instruction and all return instructions are connected. If the method can throw any exceptions, there exists one \textsl{error exit} for each type of exception that may be thrown. The normal and erroneous exits are connected to the \textsl{exit} node. + + Every normal statement is connected to the subsequent one by an unlabeled edge. Predicates have two outgoing edges, labeled \textsl{true} and \textsl{false}. Pseudo-predicates also have two outgoing edges. The \textsl{true} edge is connected to the destination of the jump (\textsl{normal exit} in the case of return, the begin or end of the loop in the case of continue and break, etc.). The \textsl{false} edge is a non-executable edge, marked with a dashed line, and it is connected to the next instruction that would be executed if the pseudo-predicate was a \textsl{nop}. + + Nodes that represent a call to a method $M$ include the transfer of parameters and variables that may be read or written to, then execute the call, and finally the extraction of modified variables. Call nodes are an exception to the previous paragraph, as they can have an unlimited amount of outgoing edges. Each outgoing edge lands on a pseudo-predicate which indicates if the execution was correct or an exception was raised. The executable edge of each pseudo-predicate will lead to the next instruction to be executed, whereas the non-executable one will lead to the end of the try-catch block. All call nodes can lead to a \textsl{normal return} node, which is linked to the next instruction, and one error node for each type of exception that may be thrown. The erroneous returns are labeled \textsl{catch ExType}, and lead to the first instruction in the corresponding catch block\footnotemark. Any exception that may not be caught will lead to the erroneous exit node of the method it's in. See the example for more details. + + \footnotetext{A problem presents itself here, as some exceptions may be able to trigger different catch blocks, due to the secuential nature of catches and polymorphism in Java. A way to fix this is to make catch blocks behave as a switch.}. %TODO + + \item[Step 3 (compute dependences):] For each node in the CFG, compute the control and data dependencies. Non-executable edges are only included when computing control dependencies.\\ + \todo{put inside definition} + A node $a$ is \textsl{control dependent} on node $b$ iff $a$ post-dominates one but not all of $b$'s successors.\\ + A node $a$ is \textsl{data dependent} on node $b$ iff $b$ defines or may define a variable $x$, $a$ uses or may use $x$, and there is an $x$-definition-free path in the CFG from $b$ to $a$.\\ + \item[Step 4 (convert each CFG into a PDG):] each node of the CFG is one node of the PDG, with two exceptions. The first are the \textsl{enter}, \textsl{exit} and method call nodes, where the variable input and output assignments are split and placed as control-dependent on their original node. The second is the \textsl{exit} node, which is to be removed (the control-dependencies from \textsl{exit} to the variable outputs is transferred to the \textsl{enter} node). Then all the dependencies computed in the previous step are drawn. + \item[Step 5 (connect PDGs to form a SDG):] each method call to $M$ must be connected to the \textsl{enter} node in $M$'s PDG, as a control dependence. Each variable input from the method call is connected to a variable input of the method definition via a data dependence. Each variable output from the method definition is connected to the variable output of the method call via a data dependence. Each method exit is connected \todo{complete}. +\end{description} + +\begin{itemize} + \item An extra type of control dependency represented by an ``exception edge''. It will represent the need to include a \textsl{catch} clause when an exception can be thrown. It is represented with a dotted line (dashed line is for data dependency). These edges have a special characteristic: when one is traversed, only ``exception edges'' may be traversed from the new nodes included in the slice. If the same node is reached by another kind of edge, the restriction is lifted. The behavior is documented in algorithm \ref{alg:2pass}, with changes from the original algorithm are \underline{underlined}. + \item Add an extra ``exception edge'' from each ``exit with exception of type T'' node, where the type of the exception is \texttt{t} to all the corresponding ``\texttt{throw e}'', such that \texttt{e} is or inherits from \texttt{T}. + \item Add an extra ``exception edge'' from each catch statement to every statement that can throw that error. + \item The exception edges will only be placed when the method or the try-catch statement are loop-carrier\footnote{Loop-carrier, when referring to a statement, is the property that in a CFG for the complete program, the node representing the statement is part of a loop, meaning that it could be executed again once it is executed.}. +\end{itemize} + +\begin{algorithm} % generate slice +\caption{Two-pass algorithm to obtain a backward static slice with exceptions} +\label{alg:2pass} +\begin{algorithmic}[1] + \REQUIRE SDG $\mathcal{G}$ representing program P. $\mathcal{G} = \{\mathcal{S}, \mathcal{E}\}$, where $\mathcal{S}$ is a set of states (some are statements) connected by a set of edges $\mathcal{E}$. Each edge, is a triplet composed of the type of edge (control, data or \underline{exception} dependency, summary, param-in, param-out), the source and destination of the edge. + \REQUIRE A slicing criterion, composed of a statement $s \in \mathcal{S}$ and a variable $v$. + \ENSURE $\mathcal{S}' \subseteq \mathcal{S}$, representing the slice of P according to the criterion provided. + + \medskip + \COMMENT{First pass (do not traverse output parameter edges).} + \STATE{$\mathcal{S}' \Leftarrow \emptyset$ (slice), $\mathcal{Q}\Leftarrow\{s\}$ (queue), $\mathcal{S}\Leftarrow \mathcal{S} - \{s\}$ (not visited), $\mathcal{R}\Leftarrow \emptyset$ (only visited via exception edge)} + \WHILE{$\mathcal{Q} \neq \emptyset$} + \STATE{$a \in \mathcal{Q}$} \COMMENT{Select an element from $\mathcal{Q}$} + \STATE{$\mathcal{Q} \Leftarrow \mathcal{Q} - \{a\}$} + \STATE{$\mathcal{S}' \Leftarrow \mathcal{S}' + \{a\}$} + \FORALL{$\mathcal{A}$ in $\{\{type, origin, a\} \in \mathcal{E}\}$} + \IF{$type \neq$ param-out \AND ($origin \notin \mathcal{S}'$ \OR ($origin \in \mathcal{R}$ \AND $a \notin \mathcal{R}$))} \label{line:param-out} + \IF{\underline{$a \in \mathcal{R}$}} + \IF{\underline{$type =$ exception}} + \STATE{\underline{$\mathcal{Q} \Leftarrow \mathcal{Q} + \{origin\}$}} + \STATE{\underline{$\mathcal{R} \Leftarrow \mathcal{R} + \{origin\}$}} + \ENDIF + \ELSE + \STATE{$\mathcal{Q} \Leftarrow \mathcal{Q} + \{origin\}$} + \ENDIF + \ENDIF + \ENDFOR + \ENDWHILE + \\ + \medskip + \COMMENT{Second pass (very similar, do not traverse input parameter edges).} + \STATE $\mathcal{Q} \Leftarrow \mathcal{S}'$ + \WHILE{$\mathcal{Q} \neq \emptyset$} + \STATE{$a \in \mathcal{Q}$} \COMMENT{Select an element from $\mathcal{Q}$} + \STATE{$\mathcal{Q} \Leftarrow \mathcal{Q} - \{a\}$} + \STATE{$\mathcal{S}' \Leftarrow \mathcal{S}' + \{a\}$} + \FORALL{$\mathcal{A}$ in $\{\{type, origin, a\} \in \mathcal{E}\}$} + \IF{$type \neq$ param-in \AND ($origin \notin \mathcal{S}'$ \OR ($origin \in \mathcal{R}$ \AND $a \notin \mathcal{R}$))} + \IF{\underline{$a \in \mathcal{R}$}} + \IF{\underline{$type =$ exception}} + \STATE{\underline{$\mathcal{Q} \Leftarrow \mathcal{Q} + \{origin\}$}} + \STATE{\underline{$\mathcal{R} \Leftarrow \mathcal{R} + \{origin\}$}} + \ENDIF + \ELSE + \STATE{$\mathcal{Q} \Leftarrow \mathcal{Q} + \{origin\}$} + \ENDIF + \ENDIF + \ENDFOR + \ENDWHILE +\end{algorithmic} +\end{algorithm} \ No newline at end of file diff --git a/state_of_the_art.tex b/state_of_the_art.tex new file mode 100644 index 0000000..e45ab5d --- /dev/null +++ b/state_of_the_art.tex @@ -0,0 +1,64 @@ +\chapter{State of the art} + +Slicing was proposed\cite{weiser79} and improved until the proposal of the current system (the SDG) \todo{(citation)}. Specifically in the context of exceptions, multiple approaches have been attempted, with varying degrees of success. There exist commercial solutions for various programming languages: \todo{name them and link}. +In the realm of academia, there exists no definite solution. One of the most relevant initial proposal\cite{allen03}, although not the first one\cite{sinha98,sinha99} to target Java specifically. + +It uses the existing proposals for \textsl{return}, \textsl{goto} and other unconditional jumps to model the behavior of \textsl{throw} statements. Control flow inside \textsl{try-catch-finally} statements is simulated, both for explicit \textsl{throw} and those nested inside a method call. The base algorithm is presented, and then the proposal is detailed as changes. Unchecked exceptions are considered but regarded as ``worthless'' to include, due to the increase in size of the slices, which reduces their effectiveness as a debugging tool. This is due to the number of unchecked exceptions embedded in normal Java instructions, such as \texttt{NullException} in any instance field or method, \texttt{IndexOutOfBoundsException} in array accesses and countless others. On top of that, handling \textsl{unchecked} exceptions opens the problem of calling an API to which there is no analyzable source code, either because the module was compiled before-hand or because it is part of a distributed system. The first should not be an obstacle, as class files can be easily decompiled. The only information that may be lost is variable names and comments, which don't affect a slice's precision, only its readability. + +Chang and Jo\cite{chang04} present an alternative to the CFG by computing exception-induced control flow separately from the traditional control flow computation, but go no further into the ramifications it entails for the PDG and the SDG. + +Jiang et al.\cite{jiang06} describes a solution specific for the exception system in C++, which differs from Java's implementation of exceptions. They reuse the idea of non-executable edges in \textsl{throw} nodes, and introduce handling \textsl{catch} nodes as a switch, each trying to catch the exception before deferring onto the next \textsl{catch} or propagating it to the calling method. Their proposal is center around the IECFG (Improved Exception Control-Flow Graph), which propagates control dependencies onto the PDG and then the SDG. Finally, in their SDG, each normal and exceptional return and their data output are connected to all \textsl{catch} statements where the data may have arrived, which is fine for the example they propose, but could be inefficient if the method has many different call nodes. + +Others\cite{prabhu11} have worked specifically on the C++ exception framework. \todo{remove or expand}. + +Finally, Hao\cite{hao11} introduced a Object-Oriented System Dependence Graph with exception handling (EOSDG), which represented a generic object-oriented language, with exception handling capabilities. Its broadness allows for the EOSDG to fit into both Java and C++. It uses concepts from Jiang\cite{jiang06}, such as cascading \textsl{catch} statements, while adding explicit support for virtual calls, polymorphism and inheritance. + +% TODO UNCOMPLETE + +\hrulefill +\marginnote{Alternative explanation of \cite{allen03}, with counter example. Maybe should move the counter example backwards.} + +In her paper, Horwitz suggests treating exceptions in the following way: +\begin{itemize} + \item Statements are divided into statements, predicates (loops and conditional blocks) and pseudo-predicates (return and throw statements). Statements only have one successor in the CFG, predicates have two (one when the condition is true and another when false), pseudo-predicates have two, but the one labeled ``false'' is non-executable. The non-executable edge connects to the statement that would be executed if the unconditional jump was replaced by a ``nop''. + \item \textsl{try-catch-finally} blocks are treated differently, but it has fewer dependencies than needed. Each catch block is control-dependent on any statement that may throw the corresponding exception. The +\end{itemize} + +\begin{lstlisting}[title=Example] +void main() { + int x = 0; + while (true) { + try { + f(x); + } catch (ExceptionA e) { + x--; + } catch (ExceptionB e) { + System.err.println(x); + } catch (ExceptionC e) { + System.out.println(x); + } + System.out.println(x); + } +} + +void f(x) { + x--; + if (x > 10) + throw new ExceptionA(); + else if (x == 0) + throw new ExceptionB(); + else if (x > 0) + throw new ExceptionC(); + x++; + System.out.println(x); +} + +static class ExceptionA extends ExceptionC {} +static class ExceptionB extends Exception {} +static class ExceptionC extends Exception {} +\end{lstlisting} + +In this example we can explore all the errors found with the current state of the art. + +The first problem found is the lack of \texttt{catch} statements in the slice, as no edge is drawn from the catch. Some of the catch blocks will be included via data dependencies, but some may not be reached, though they are still necessary if the slice includes anything after a caught exception. +Therefore, an extra control dependency must be introduced, in order to always include a ``catch'' statement in the slice if the ``throw'' statement is in the slice. In the example, only the catch statement from line 20 will be included, and if ExceptionC or ExceptionB were thrown, they would not be caught. That would not be a problem if the function $f$ was not executed again, but it is, making the slice incorrect. \ No newline at end of file diff --git a/title/logo-dsic.png b/title/logo-dsic.png new file mode 100644 index 0000000000000000000000000000000000000000..8b74e3da2eb77ac92110039aafc149ed8b2bb65d GIT binary patch literal 18268 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 dzvt*Hg3(+>_|-_+I27woRWEbGgC{`m}Nw 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

-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∈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 b6LUwozET!tXQOe71ilnxRHe%$&EEeX;R~AG literal 0 HcmV?d00001 diff --git a/title/mitssTitle.sty b/title/mitssTitle.sty new file mode 100644 index 0000000..0aab171 --- /dev/null +++ b/title/mitssTitle.sty @@ -0,0 +1,40 @@ +\ProvidesPackage{mitssTitle}[2019/08/25] +\RequirePackage{graphicx} +\RequirePackage{geometry} +\RequirePackage[export]{adjustbox} % align images + +\newcommand*{\supervisor}[1]{\gdef\@supervisor{#1}% +} + +\renewcommand*{\maketitle}{% +\newgeometry{margin=1in} +\begin{titlepage} +%\pagestyle{empty} +\makeatletter +{\centering +\includegraphics[width=.5\linewidth,valign=t]{title/logo-upv-cropped} \hfill +\includegraphics[width=.23\linewidth,valign=t]{title/logo-dsic} +} + +\vfill +\begin{center} + {\huge\bfseries \@title} \\ + \vspace{2em} + {\Large Trabajo Fin de Máster} \\ + \vspace{2em} + \Large + \textbf{Máster Universitario en Ingeniería \\ y Tecnología de Sistemas Software} +\end{center} +\vfill +{ + \large + \raggedleft + \textbf{Autor}: \@author \\ + \textbf{Tutor}: \@supervisor \\ + Valencia, \@date \\ +} +\end{titlepage} +\restoregeometry +} % maketitle + +\endinput