1. A method, in a data processing system, for optimizing program code, comprising: receiving source code for a program in a compiler; and optimizing, in a loop optimization engine, the source code for execution by a computing device, wherein optimizing the source code comprises: generating a program statement view of the source code; generating a program loop view of the source code based on the program statement view; applying one or more code generation optimizations to the program loop view of the source code to generate an optimized program loop view of the source code; converting the optimized program loop view of the source code back into a first optimized program statement view of the source code through a re-entrance path; performing one or more additional optimizations on the first optimized program statement view of the source code; and outputting resulting optimized code, as a result of optimizing the source code, to the compiler for generation of executable code to be executed on a computing device.