Patent ID: 7665079

Claim:
A program execution method for transferring, from an interpreter process to a loop process of a compiled code process, a method that is currently being executed for code that includes one or more transfer points at which program execution is transferred from the interpreter process to said loop process of the compiled code process, comprising the steps of: optimizing the loop process, said optimizing step including the steps of: moving said one or more transfer points to the top of said loop process if they can be moved there without a problem occurring; copying code from the top of the loop process to a point that post-dominates said top of said loop process and said one or more transfer points to a location immediately preceding said loop process if said transfer points are located inside said loop process; storing information for generating recalculation code for one or more specific transfer points when privatization, common sub-expression elimination, and moving of code that are performed pass beyond said specific transfer points; and performing a recalculation during a transfer process; and transferring execution from the interpreter process to the optimized loop process via one of said transfer points.