X-Git-Url: https://scm.cri.minesparis.psl.eu/git/pipstransfo.git/blobdiff_plain/eb409209849979d0e3c6850d60de9106277acf46..5356218c7c4d8a78fc6ff2596e51ddd56e113703:/pipstransfo.tex?ds=sidebyside

diff --git a/pipstransfo.tex b/pipstransfo.tex
index 7409fd1..1e9527f 100644
--- a/pipstransfo.tex
+++ b/pipstransfo.tex
@@ -3,18 +3,116 @@
 \usepackage[utf8]{inputenc}
 \usepackage[T1]{fontenc}
 \usepackage[english]{babel}
+\usepackage{lmodern}
 
 \usepackage{listings}
 \usepackage{hyperref}
 
 
-\title{PIPS - List of code transformations}
+\title{PIPS~--- List of code transformations}
 
 
 
 \begin{document}
 
 
+\chapter{Summary}
+
+\section{SGuelton}
+\begin{itemize}
+% memory allocation alteration
+\item scalar renaming
+% loop transformations
+\item loop unrolling
+\item loop fusion
+\item loop tiling
+\item loop rerolling
+\item loop interchange
+\item loop normalization
+% inter procedural transformations
+\item inlining
+% basic bloc transformations
+\item forward substitution
+% dead code removal
+\item constant propagation
+\item dead code elimination
+
+% ??
+\item array linearization
+\item common subexpression elimination
+\item directive generation
+\item flatten code
+\item goto elimination
+\item instruction selection
+\item invariant code motion
+\item iteration clamping
+\item loop unswitching
+\item memory footprint reduction
+\item n adress code generation
+\item outlining
+\item parallelism detection
+\item parallelism extraction
+\item privatization
+\item reduction detection
+\item redundant load-store elimination
+\item split update operator
+\item statement isolation
+\item strengh reduction
+\end{itemize}
+
+
+\section{Teraops}
+\begin{itemize}
+% memory allocation alteration
+\item scalar renaming
+\item scalar/array expansion
+\item scalar/array privatization
+\item scalarization
+\item variable copying
+% loop transformations
+\item index set splitting
+\item loop peeling
+\item loop unrolling
+\item loop rerolling
+\item full loop unrolling
+\item idiom recognition
+\item unswitching
+\item loop fusion
+\item loop fission/loop distribution
+\item loop normalization
+\item unimodular loop transformation/hyperplane method
+\item loop interchange
+\item loop reversal
+\item loop skewing
+\item non-unimodular loop transformation
+\item strip-mining (loop sectionning)
+\item loop coalescing/loop collapsing
+\item loop tiling
+\item loop parallelization
+\item loop vectorization
+\item loop invariant code motion
+\item software pipelining
+\item locality increazing
+% inter procedural transformations
+\item loop embedding/loop jamming
+\item procedure inlining
+\item procedure cloning
+% basic bloc transformations
+\item node splitting
+\item forward expression substitution
+\item induction variable substitution
+\item if-conversion
+\item statement reordering
+\item expression optimization
+\item partial redundancy elimination
+% dead code removal
+\item unreachable code
+\item semantically uneachable code
+\item if and loop elimination
+\item use-def elimination
+\item constant propagation
+\end{itemize}
+
 \chapter{List of Pips transformations}
 
 \section{Memory allocation alteration}
@@ -35,7 +133,7 @@
 \begin{description}
 
 \item[loop unrolling]{
-  is a loop transformation. 
+  is a loop transformation.
   Unrolling a loop by a factor of $n$ consists in the substitution of a loop
   body by itself, replicated $n$ times. A prelude and/or postlude are
   added to preserve the number of iteration.}
@@ -58,8 +156,8 @@
   containing the loop without the test in both true and false branch.}
 
 \item[loop normalization]{is a loop transformation that changes
-  the loop initial increment value or the loop range to enforce certain values, 
-  generally 1.}
+  the loop initial increment value or the loop range to enforce certain values,
+  generally~1.}
 
 \end{description}
 
@@ -140,9 +238,6 @@
   conversion from array to pointer.}
 
 
-
-
-
 \item[iteration clamping]{is a loop transformation that extends
   the loop range but guards the loop body with the former range.}
 
@@ -176,7 +271,9 @@
 \end{description}
 
 
-\section{References}
+\nocite{*}
+\bibliographystyle{alpha}
+\bibliography{refs}
 
 
-\end{document}
\ No newline at end of file
+\end{document}
