In Connection with the Exam

How do you ensure that the code you put on the projector is written by the student you are examinating?
Obviously, I can't. This is one reason why all group members are responsible for all code, independent of who has written it. You must know the code written by fellow group members as well as your own.

Is it OK to talk about stuff that we didn't have time to do?
It's OK to go beyond what you did. If you got halfway through something, but ended up not finishing because of problems and time issues, it might be interesting to sketch your concrete problems and how they can be solved. Even if you just considered a certain topic carefully, but didn't manage to implement it, you could discuss some of the issues. It's important to notice, however, that you do not get any credit for just telling us about parts of the curriculum from the compiler course. For example, explaining the general algorithm for register allocation through liveness computation, graph building, and graph coloring is not a new contribution. Instead, you should explain in context of your compiler what the additional issues are when you want to realize the algorithm known from the course. Thus, you could discuss questions such as the following: Which registers can be used as colors? What would you do with registers that are special to some instructions? What parts of your code would you analyze? How would you identify those parts? Should one use a special strategy when generating temporaries in order to get the best possible result? Etc.


Last modified: Tue May 28 16:00:52 CEST 2013
Kim Skak Larsen (kslarsen@imada.sdu.dk)