Day 1: Monday July 5, 2010 |
09:00 to 09:30 |
Registration |
09:30 to 10:00 |
Theme: Introduction Activity: Lecture
Topics: Workshop plan, Introductory remarks |
10:00 to 10:30 |
Theme: Introduction
Activity: Lecture Topic: An overview of compilation and GCC |
10:30 to 11:00 |
Theme: An external view of GCC
Activity: Lecture
Topic: First level gray box probing of GCC |
11:00 to 11:30 |
Tea break |
11:30 to 12:15 |
Theme: An external view of GCC
Activity: Lecture
Topic: First level gray box probing of GCC |
12:15 to 13:00 |
Theme: An external view of GCC
Activity: Lecture
Topic: Gray box probing for machine independent optimizations |
13:00 to 14:00 |
Lunch |
14:00 to 15:30 |
Theme: An external view of GCC
Activity: Lab
Topic: Gray box probing of GCC |
15:30 to 16:00 |
Tea break |
16:00 to 16:30 |
Theme: Generating a compiler from GCC
Activity: Lecture
Topic: Configuration and building |
16:30 to 17:30 |
Theme: Generating a compiler from GCC
Activity: Lab
Topic: Configuration and building |
TBD |
Theme: Optional session
Topic: ctags, cscope, ddd, gdb, shell, make, reading patch files (Participants can continue with their lab work until dinner) |
20:00 onwards |
Dinner |
Day 2: Tuesday July 6, 2010 |
09:00 to 09:30 |
Registration (for industry candidates joining on the second day) |
09:30 to 10:00 |
Theme: Generating a compiler from GCC
Activity: Lecture
Topic: Building a cross compiler |
10:00 to 11:00 |
Theme: An internal view of GCC
Activity: Lecture
Topics: Pass structure, front end plugins, back end plugins, pass plugins (Gimple intra/interprocedural, RTL intraprocedural) |
11:00 to 11:30 |
Tea break |
11:30 to 13:00 |
Theme: An internal view of GCC: Intermediate representations
Activity: Lecture
Topic: Adding passes to GCC: Manipulating gimple and RTL IRs |
13:00 to 14:00 |
Lunch |
14:00 to 15:30 |
Theme: Intermediate Representations (IRs) in GCC
Activity: Lab
Topic: Adding Gimple interprocedural pass |
15:30 to 16:00 |
Tea break |
16:00 to 17:30 |
Theme: Intermediate Representations (IRs) in GCC
Activity: Lab
Topic: Adding RTL pass |
20:00 onwards |
Dinner |
Day 3: Wednesday July 7, 2010 |
09:30 to 10:15 |
Theme: Program Analysis and Optimization in GCC
Activity: Lecture
Topic: Introduction to data flow analysis |
10:15 to 11:00 |
Theme: Program Analysis and Optimization in GCC
Activity: Lecture
Topic: Introduction to GDFA |
11:00 to 11:30 |
Tea break |
11:30 to 12:15 |
Theme: Program Analysis and Optimization in GCC
Activity: Lecture
Topic: Introduction to parallelization and vectorization |
12:15 to 13:00 |
Theme: Program Analysis and Optimization in GCC
Activity: Lecture
Topic: Parallelization and vectorization in GCC |
13:00 to 14:00 |
Lunch |
14:00 to 15:00 |
Theme: Program Analysis and Optimization in GCC
Activity: Lecture
Topic: Parallelization and vectorization in GCC |
15:00 to 15:30 |
Theme: Program Analysis and Optimization in GCC
Activity: Lab
Topic: Using data flow analysis |
15:30 to 16:00 |
Tea break |
16:00 to 17:30 |
Theme: Program Analysis and Optimization in GCC
Activity: Lab
Topic: Parallelization and vectorization in GCC |
20:00 onwards |
Dinner |
Day 4: Thursday July 8, 2010 |
09:30 to 10:15 |
Theme: Retargatibility Issues
Activity: Lecture
Topic: Introduction to machine descriptions |
10:15 to 11:00 |
Theme: Retargatibility Issues
Activity: Lecture
Topic: Spim machine descriptions levels 0 and 1 |
11:00 to 11:30 |
Tea break |
11:30 to 12:15 |
Theme: Retargatibility Issues
Activity: Lecture
Topic: Spim machine descriptions levels 2, 3, and 4 |
12:15 to 13:00 |
Theme: Retargatibility Issues
Activity: Lecture
Topic: Advanced issues in machine desciptions and retargetability model of GCC |
13:00 to 14:00 |
Lunch |
14:00 to 15:30 |
Theme: Retargatibility Issues
Activity: Lab
Topic: Spim machine descriptions |
15:30 to 16:00 |
Tea break |
16:00 to 17:00 |
Theme: Concluding session
Activity: Summarization, Interactive session, and Distribution of certificates |