Speculative execution for java hardware accelerator
AssigneeKoninklijke Philips Electronics N.V.
InventorMenno Menasshe Lindwer
Life of this patent
Estimating the term…
Loading patent…
AssigneeKoninklijke Philips Electronics N.V.
InventorMenno Menasshe Lindwer
Estimating the term…
Conditional branch bytecodes are processed by a Virtual Machine Interpreter (VMI) hardware accelerator that utilizes a branch prediction scheme to determine whether to speculatively process bytecodes while waiting for the CPU to return a condition control variable. In one branch prediction scheme, the VMI assumes the branch condition will be fulfilled if a conditional branch bytecode calls for a backward jump and that the branch condition will not be fulfilled if a conditional branch bytecode calls for a forward jump. In another branch prediction scheme the VMI makes an assumption only if a conditional branch bytecode calls for a backward jump. In yet another speculative execution scheme, the VMI assumes that the branch condition will be fulfilled whenever it processes a conditional branch bytecode. The VMI only speculatively processes bytecodes that are easily reversible, (for example, bytecodes representing simple stack manipulations), and suspends speculative processing of bytecodes upon encountering a bytecode that is not easily reversible. The assumptions made by the VMI are confirmed or invalidated upon receipt of the condition control variable. If an assumption is invalidated, any speculatively processed bytecodes are reversed.
A method of processing virtual machine instructions, the method comprising the steps of:
A method of processing virtual machine instructions, the method comprising:
An apparatus for processing virtual machine instructions, comprising:
Dependencies are inferred from the claim text.