The areas covered may be chosen from the following set o- Program Analysis (Static and Dynamic). o- Program Optimization. o- Machine specific optimizations. o- Concurrency. o- Programming Language Design. o- Program Verification/Validation. o- Memory management / Garbage Collection. o- Power-aware compilation.