|
CSE 401, Wi09:
Final Exam Topics
|
|
This is meant as a quick reminder of topics covered since the midterm. Any
topic related to compiling is reasonable on the final (i.e, what would you
need to do to implement some feature, from the front to the back end of the
compiler). But we won't have detailed questions on regular expressions, LR
parser tables, and other front-end issues that were covered in depth on the
midterm.
- Intermediate Code Generation
- Intermediate Representations
- Symbol Table Design
- Runtime Storage Layout
- Representation
of scalars, arrays, objects
- Memory areas: static, stack, heap
- Calling
Conventions
- Caller vs. Callee
- What things must be taken care of on call
and return
- Layout of
stack frame
- Object
Representation
- Data Layout
- Inheritance
- Method invocation
with inheritance (vtables)
- Code Generation for other Language Constructs
- if-then-else
- Loops
- Arrays - new,
length, assignment, access
- Target
Code Generation
- Register Allocation
- Stack Frame Layout
- Instruction Selection
- Interpreters
- Compilers vs. Interpreters
- Pros
and Cons
- Optimization
- Scopes of Optimization: peephole, local, global, interprocedural
- Examples
of
each
- Runtime Systems
- What
functions can
be handled by runtime systems
- Why
needed?
- Compiler modularity
- What problem/issue is the visitor pattern trying to solve?
|
 |
Computer Science & Engineering
University of Washington
Box 352350
Seattle, WA 98195-2350
(206) 543-1695 voice, (206) 543-2969 FAX
[comments to
rea at cs.washington.edu]
|