Method and apparatus traversing stacks for just-in-time compilers for Java virtual machines
AssigneeInternational Business Machines Corporation
InventorsGeoffrey Owen Blandy, Andrew Johnson
Life of this patent
Estimating the term…
Abstract
A method and apparatus in a data processing system for traversing a plurality of frames for a stack stored sequentially in a memory. A method block associated with a current frame is found. The method block is read to identify an offset to previous frame information in the current frame. A previous frame is located within the plurality of frames using the previous frame information.
Claims25
A method in a data processing system for traversing a plurality of frames for a stack stored sequentially in a memory, the method comprising:
- finding a method block associated with a current frame;
- reading the method block to identify an offset to previous frame information in the current frame;
- and
- locating a previous frame within the plurality of frames using the previous frame information.
A method in a data processing system for traversing a plurality of frames stored sequentially in a memory, the method comprising:
- locating a current frame within the plurality of frames in the memory;
- obtaining an offset to frame offset information within the current frame;
- reading the frame offset information;
- determining an address for a previous frame using the frame offset information;
- finding a pointer to a method block associated with the previous frame using the address;
- determining whether a method block is present;
- and
- responsive to a method block being present, obtaining an offset to frame information in the previous frame.
A data processing system comprising:
- a bus system;
- a communications unit connected to the bus system;
- a memory connected to the bus system, wherein the memory includes a set of instructions;
- and
- a processing unit connected to the bus system, wherein the processing unit executes the set of instructions to find a method block associated with a current frame, read the method block to identify an offset to previous frame information in the current frame, and locate a previous frame within the plurality of frames using the previous frame information.
A data processing system for traversing a plurality of frames for a stack stored sequentially in a memory, the data processing system comprising:
- finding means for finding a method block associated with a current frame;
- reading means for reading the method block to identify an offset to previous frame information in the current frame;
- and
- locating means for locating a previous frame within the plurality of frames using the previous frame information.
A data processing system for traversing a plurality of frames stored sequentially in a memory comprising:
- locating means for locating a current frame within the plurality of frames in the memory;
- obtaining means for obtaining an offset to frame offset information within the current frame;
- reading means for reading the frame offset information;
- determining means for determining an address for a previous frame using the frame offset information;
- finding means for finding a pointer to a method block associated with the previous frame using the address;
- determining means for determining whether a method block is present;
- and
- obtaining means, responsive to a method block being present, for obtaining an offset to frame information in the previous frame.
A computer program product in a computer readable medium for use in a data processing system for traversing a plurality of frames for a stack stored sequentially in a memory, the computer program product comprising:
- first instructions for finding a method block associated with a current frame;
- second instructions for reading the method block to identify an offset to previous frame information in the current frame;
- and
- third instructions for locating a previous frame within the plurality of frames using the previous frame information.
A computer program product in a computer readable medium for use in a data processing system for traversing a plurality of frames stored sequentially in a memory, the computer program product comprising:
- first instructions for locating a current frame within the plurality of frames in the memory;
- second instructions for obtaining an offset to frame offset information within the current frame;
- third instructions for reading the frame offset information;
- fourth instructions for determining an address for a previous frame using the frame offset information;
- fifth instructions for finding a pointer to a method block associated with the previous frame using the address;
- sixth instructions for determining whether a method block is present;
- and
- seventh instructions for, responsive to a method block being present, obtaining an offset to frame information in the previous frame.
Dependencies are inferred from the claim text.