The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.

The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.

Date of Patent:
Dec. 28, 1999

Filed:

Oct. 21, 1997
Applicant:
Inventors:

Andrew E Ayers, Amherst, NH (US);

Jiyang Liu, Westford, MA (US);

Assignee:

Hewlett-Packard Company, Palo Alto, CA (US);

Attorney:
Primary Examiner:
Assistant Examiner:
Int. Cl.
CPC ...
G06F / ;
U.S. Cl.
CPC ...
395709 ; 395708 ; 395704 ; 395705 ; 712226 ; 712234 ; 712241 ;
Abstract

A compiler method analyzes a program listing to identify a first set of subroutines therein, each of which accepts a variable number of arguments, converting the first set of subroutines into further sets of subroutines which accept fixed numbers of arguments. The method includes the steps of: locating subroutines in the program listing which accept a variable number of arguments and identifying which thereof comprise a first set of subroutines that can be altered to a form which accepts a fixed number of arguments; for each subroutine identified as part of the first set, determining call sites which pass arguments to each subroutine and determining a number and kind of said arguments to be passed therefrom; partitioning call sites to each subroutine of the first set into one or more groups, each group comprising call sites which pass an identical number and kind of arguments to an associated subroutine of said first set; duplicating each subroutine of said first set into plural second sets of N corresponding subroutines, wherein N is equal to the number of groups associated with the subroutine of the first set, and revising each one of said N corresponding subroutines to receive a number of fixed arguments to be passed by call sites partitioned into an associated group; and substituting in the program listing the N corresponding subroutines and revising call sites in each group to refer to an associated one of said N corresponding subroutines.


Find Patent Forward Citations

Loading…