 |
Lecture01 [Jan 03 2011]
Play in Silverlight Play in Flash
Pr. Lam introduces the Class to CS243, and presents motives behind studying compilers. Gradiance link can be put here for each whole lecture.
|
|
|
|
 |
Lecture03 [Jan 10 2011]
Play in Silverlight Play in Flash
Semi-lattice is described to provide a theoretical background for reasoning about the correctness, precision, and convergence properties of data flow analysis.
|
|
 |
Lecture04 [Jan 12 2011]
Play in Silverlight Play in Flash
Constant propagation is described as an example of non-distributive data flow analysis. Loops are defined in graph-theoretical terms.
|
|
 |
Lecture05 [Jan 24 2011]
Play in Silverlight Play in Flash
Partial redundancy elimination (PRE) is an analysis that subsumes multiple analyses including common subexpression elimination and loop invariant code motion. PRE is also a good example that shows how...
|
|
 |
Lecture06 [Jan 26 2011]
Play in Silverlight Play in Flash
The last two passes (minimizing register pressure and cleaning up) are described. A register allocation algorithm based on graph coloring is described.
|
|
 |
Lecture07 [Jan 31 2011]
Play in Silverlight Play in Flash
Instruction scheduling is introduced in this lecture, including basic block scheduling and global scheduling. An algorithm for basic global scheduling is discussed.
|
|
 |
Lecture08 [Feb 02 2011]
Play in Silverlight Play in Flash
Software pipelining is introduced in this lecture, along with the problem formulation, an example, and algorithm.
|
|
|
|
 |
Lecture10 [Feb 16 2011]
Play in Silverlight Play in Flash
Introduction to Binary Decision Diagram and the comparison between BDD and Datalog, followed by the BDD algorithm and the discussion of its performance.
|
|
 |
Lecture11 [Feb 23 2011]
Play in Silverlight Play in Flash
Introduction to Basic Parallelization, Data Dependence Analysis, and Interprocedural Parallelization.
|
|
 |
Lecture12 [Feb 28 2011]
Play in Silverlight Play in Flash
Discussions about Parallelism and Locality, and their Loop Transformations: Blocking and Affine Partitioning.
|
|
|
|
|
|
 |
Lecture15 [March 09 2011]
Play in Silverlight Play in Flash
Static and Dynamic Program Analysis: Synergies and Applications (guest lecture by Mayur Naik from Intel Labs, Berkeley).
|
|