Quiz 3
Topics
Reference Pages (will be included with the quiz):Refererence pages
IR Concepts
- Purposes of IRs
- Translating IRs
- Specific IR examples
- ASTs
- 3AC
Runtime environment concepts
- What runtime environment are
- What runtime environments are used for
- Examples of runtime environments
Architecture details
- Binary encoding
- x64 instructions
- x64 data representation
- hand-coded x64 programs
Allocation schemes
- Static allocation
Assembly code
- x64 programming
- Implementating source-language constructs
- The System V ABI
Quiz 2
Topics
- Bison
- LL(1) Parsing
- Using an LL(1) Parser
- Building an LL(1) Parser
- LR Parsing
- Using an LR Parser
- Building an SLR Parser
- Stack Items
- Closure Sets
- GoTo Sets
- Grammar transformations
- Left-Recursion Elimination
- Left Factoring
- FIRST Sets
- FOLLOW Sets
- Top-Down SDT / SDT for LL(1) Grammars
- ASTs / Building ASTs from Parse Trees
- Name Analysis
- Dynamic Scope / Static Scope
- Shadowing
- Overriding
- Type Analysis / Type Checking
Quiz 1
Topics
- Phases of the compiler
- Regex to NFA-with-epsilon-transitions
- NFA epsilon elimination
- epsilon-closure sets
- Rabin-Scott Powerset Construction (NFA to DFA)
- Regular Expressions
- DFAs
- State transition tables
- Tokenizers
- Flex patterns
- Context-Free Grammars
- Ambiguous Grammars
- Fixing Precendence in CF Grammars
- Fixing Associativity in CF Grammars
- Backus Normal Form Notation
- Parse Trees
- Syntax-Directed Definitions
- Syntax-Directed Translation