Patent ID: 8195925

Claim:
An information processing apparatus comprising: a compile unit, which divides a program into a plurality of program blocks according to a predetermined rule; a main memory, which stores the plurality of program blocks created by the compile unit; a local memory contained in a processing unit, into which the processing unit copies one or more program blocks among the plurality of program blocks stored in the main memory as a plurality of copied program blocks, allowing the processing unit to execute the plurality of copied program blocks; and a branch resolution routine execution unit that executes a branch resolution routine when, during the execution of one of the plurality of copied program blocks by the processing unit, the execution requires a branch to an instruction that is not described in the copied program block being executed, wherein the branch resolution routine determines if the instruction exists in one of the plurality of copied program blocks in local memory, and, if the instruction does not exist in one of the plurality of copied program blocks in local memory, instructs the processing unit to copy into the local memory a program block from the main memory that contains the instruction as a branch target, and wherein, after executing the branch resolution routine to copy into local memory the program block from the main memory containing the branch target, the branch resolution routine execution unit adds a branch instruction into the copied program block being executed for providing a branch to the branch target and performs branch processing with reference to the branch instruction.