This project develops and evaluates a feedback compiler. Most of the traditional compilers provide feedback to the user only from the front-end of the compiler. The feedback compiler provides feedback both from the front-end and back-end of the compiler. The feedback compiler assists both students and practicing programmers. The student programmers gain a clear understanding about the role of a programmer and the role of a compiler. The practicing programmer benefits from the feedback on the machine specific optimizations performed by the compiler. The feedback also aids in the debugging of complex programs. The feedback compiler helps the programmers learn to write efficient programs on a new computer system.