Identifying pure pointers to disambiguate memory references
AssigneeIntel Corporation
InventorsRakesh Ghiya, Daniel Lavery, David Sehr
Life of this patent
Estimating the term…
Abstract
In one embodiment, disambiguation of memory references, such as structure field accesses, of a computer program is performed. Disambiguation may be effected by identifying pure pointer variables within the computer program and applying at least one disambiguation rule to memory references associated with the pure pointers to determine whether the references are disjoint.
Claims14
A computer-implemented method comprising:
- initializing a plurality of pointers of a computer program as pure pointers;
- analyzing an assignment statement of said computer program relating to one of said initialized pure pointers for compliance with at least one preselected condition;
- and
- converting said one pointer from a pure pointer to a non-pure pointer if said at least one preselected condition is met.
A computer-implemented method comprising:
- initializing a plurality of pointers of a computer program as pure pointers;
- analyzing said computer program for an assignment statement;
- resetting a pointer associated with said assignment statement from a pure pointer to a non-pure pointer if a predetermined condition is met;
- iteratively performing said analyzing and said resetting until no further non-pure pointers can be reset in said computer program;
- and
- disambiguating a remaining group of said pure pointers.
An article comprising a machine-readable storage medium containing instructions that if executed enables a system to:
- initialize a plurality of pointers of a computer program as pure pointers;
- analyze said computer program for an assignment statement;
- reset a pointer associated with said assignment statement from a pure pointer to a non-pure pointer if a predetermined condition is met;
- iteratively perform said analyzing and said resetting until no further non-pure pointers can be reset in said computer program;
- and
- disambiguate a remaining group of said pure pointers.
An article comprising a machine-readable storage medium containing instructions that if executed enables a system to:
- initialize all of a plurality of pointers of a computer program as pure pointers;
- analyze an assignment statement of said computer program relating to one of said initialized pure pointers for compliance with at least one preselected condition;
- and
- convert said one pointer from a pure pointer to a non-pure pointer if said at least one preselected condition is met.
Dependencies are inferred from the claim text.