FP8-17 Course Description Schedule Resources Semester Plan

Software Programmable Signal Processing Platform Analysis, Spring 2006: Episode 5

Lecture, April 5, afternoon

Subject: Liveness Analysis and Register Allocation

Text: Read Appel p. 218—223 (excluding representation of sets). Then read bottom of p.225 (Static vs Dynamic Liveness) until 229 (without section 10.2). Finally read about Register Allocation starting at page 235 and ending at p.248 (without section 11.4). Time permitting we may also discuss section 11.5. Also skim section 2.4.1 of spru198 (Programmer's Guide).

Prerequisites: instruction selection (as explained in episode 4).

Comments: We will mostly focus on translating machine programs with abstract registers to concrete programs (register allocation). Liveness analysis will serve us to this purpose, by providing information how to do it more efficiently. In the last part of the lecture we shall briefly mention C67x compiler intrinsics, encourage their use (and explain why not using them would be bad, referring to techniques of episodes 4 and 5).

Time: Tuesday, 5 Apr, 12:30—14:15. Room A6-308

Tutorial: 14:30–16:00. Room your group office.

Resources:

episode05-handout.pdf
lecture slides
exercises05.pdf
exercise sheet