Patent US5726987A successfully refreshed from Google Patents.
Patent US5396631A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5396631A Expired / Lapsed US ⏱️ 0.0 years remaining

Compiling apparatus and a compiling method

Assignee: Fujitsu Ltd
•
Filing: 1993-08-31
•
Granted: 1995-03-07
•
Expires: 2013-08-31
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A compiling apparatus has a front end for providing intermediate representations according to a source program; an optimizing unit for optimizing the intermediate representations; an intermediate representation changing unit for changing the optimized intermediate representations; and a code output unit for providing code according to the lastly obtained intermediate representations. The compiling apparatus further has an optimizing structure determination unit for determining the number of repetitions of an optimization phase achieved by the optimizing unit and intermediate representation changing unit and selecting optimization functions carried out in each of the optimization phases. The intermediate representations are changed and optimized in each optimization phase according to the determination by the optimizing structure determination unit.

Inventors

  • 👤 Masakazu Hayashi
  • 👤 Yutaka Igarashi
  • 👤 Masaaki Takiuchi
  • 👤 Kohichiro Hotta

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-29 19:47
CPC Classifications
G; G06; G06F; G06F8/00; G06F8/40; G06F8/41; G06F8/44; G06F8/443

Claims Analysis

Total Claims: 25
Claim 1
Independent Claim 140 words
A compiling apparatus in a data processing apparatus, comprising: a front end providing intermediate representations described by an intermediate language according to a source program; optimizing means for optimizing the intermediate representations from the front end in accordance with predetermined optimization functions; at least one intermediate representation changing means for further transforming the optimized intermediate representations from the optimizing means in accordance with predetermined optimization functions; code output means for providing code according to the intermediate representations finally obtained by the optimization from the intermediate representation changing means; and optimizing structure determination means for determining a number of repetitions of an optimization phase achieved by the optimizing means and intermediate representation changing means and selecting the optimization functions for directing an optimizing process carried out in each of the optimization phases, and thereby the intermediate representations being changed and optimized.
Claim 2
Dependent Claim 140 words
A compiling apparatus in a data processing apparatus, comprising: a front end providing intermediate representations described by an intermediate language according to a source program; optimizing means for optimizing the intermediate representations from the front end in accordance with predetermined optimization functions; at least one intermediate representation changing means for further transforming the optimized intermediate representations from the optimizing means in accordance with predetermined optimization functions; code output means for providing code according to the intermediate representations finally obtained by the optimization from the intermediate representation changing means; and optimizing structure determination means for determining a number of repetitions of an optimization phase achieved by the optimizing means and intermediate representation changing means and selecting the optimization functions for directing an optimizing process carried out in each of the optimization phases, and thereby the intermediate representations being changed and optimized.
Claim 3
Dependent Claim 60 words
The compiling apparatus according to claim 1, wherein the optimizing structure determination means determines the number of times of changing the intermediate representations and selects optimization functions to be achieved in each phase according to the intermediate representations dependent on the source program provided by the front end, intermediate representations dependent on an object architecture, and the applied optimization functions.
Claim 4
Dependent Claim 60 words
The compiling apparatus according to claim 2, further comprising a switch that connects and disconnects the optimizing structure determination means in front of the optimizing means and intermediate representation changing means, the switch being turned ON to determine an optimizing structure in a compiling phase, change intermediate representations according to the source program, and change optimization functions to be applied.
Claim 5
Dependent Claim 35 words
The compiling apparatus according to claim 3, wherein, when the switch is turned OFF, the optimizing means and intermediate representation changing means repeat predetermined intermediate representation optimizing and changing processes a predetermined number of times.
Claim 6
Dependent Claim 28 words
The compiling apparatus according to claim 4, wherein the optimizing means and intermediate representation changing means have a variable identifying a present phase when repeating the same optimization.
Claim 7
Dependent Claim 51 words
The compiling apparatus according to claim 4, further comprising a selection switch to determine whether or not an optional one of the optimization functions must be achieved in an optional one of the optimizing phases, the selection switch being externally controlled to stop an optional optimization function in an optional phase.
Claim 8
Dependent Claim 51 words
The compiling apparatus according to claim 3, further comprising a selection switch to determine whether or not an optional one of the optimization functions must be achieved in an optional one of the optimizing phases, the selection switch being externally controlled to stop an optional optimization function in an optional phase.
Claim 9
Dependent Claim 21 words
The compiling apparatus according to claim 2, wherein the optimizing means and intermediate representation changing means repeat the same predetermined optimization.
Claim 10
Dependent Claim 48 words
The compiling apparatus according to claim 2, wherein a physical memory map structure of main data of the intermediate representations during the intermediate representation changing and optimizing processes is fixed; and the fixed physical memory map structure are commonly used by the intermediate representation changing and optimizing processes.
Claim 11
Dependent Claim 45 words
The compiling apparatus according to claim 2, wherein the optimizing structure determination means selects a plurality of optimizing structures, separately carries out optimization according to each of the selected structures, and selects the best optimizing structure among the optimizing structures according to the optimization results.
Claim 12
Dependent Claim 60 words
The compiling apparatus according to claim 1, further comprising a switch that connects and disconnects the optimizing structure determination means in front of the optimizing means and intermediate representation changing means, the switch being turned ON to determine an optimizing structure in a compiling phase, change intermediate representations according to the source program, and change optimization functions to be applied.
Claim 13
Dependent Claim 35 words
The compiling apparatus according to claim 11, wherein, when the switch is turned OFF, the optimizing means and intermediate representation changing means repeat predetermined intermediate representation optimizing and changing processes a predetermined number of times.
Claim 14
Dependent Claim 28 words
The compiling apparatus according to claim 12, wherein the optimizing means and intermediate representation changing means have a variable identifying a present phase when repeating the same optimization.
Claim 15
Dependent Claim 51 words
The compiling apparatus according to claim 12, further comprising a selection switch to determine whether or not an optional one of the optimization functions must be achieved in an optional one of the optimizing phases, the selection switch being externally controlled to stop an optional optimization function in an optional phase.
Claim 16
Dependent Claim 51 words
The compiling apparatus according to claim 11, further comprising a selection switch to determine whether or not an optional one of the optimization functions must be achieved in an optional one of the optimizing phases, the selection switch being externally controlled to stop an optional optimization function in an optional phase.
Claim 17
Dependent Claim 49 words
The compiling apparatus according to claim 1, wherein a physical memory map structure of main data of the intermediate representations during the intermediate representation changing and optimizing processes is fixed; and thereby the fixed physical memory map structure are commonly used by the intermediate representation changing and optimizing processes.
Claim 18
Dependent Claim 45 words
The compiling apparatus according to claim 1, wherein the optimizing structure determination means selects a plurality of optimizing structures, separately carries out optimization according to each of the selected structures, and selects the best optimizing structure among the optimizing structures according to the optimization results.
Claim 19
Dependent Claim 21 words
The compiling apparatus according to claim 1, wherein the optimizing means and intermediate representation changing means repeat the same predetermined optimization.
Claim 20
Dependent Claim 46 words
The compiling apparatus according to claim 1, further comprising printing means for printing intermediate representations in each phase and a selection switch for activating the printing means, the selection switch being externally controlled to print intermediate representations at optional timing in any one of the phases.
Claim 21
Dependent Claim 150 words
A compiling apparatus for compiling a source program in a data processing apparatus, comprising: a front end transforming a source program into intermediate representations; optimizing means for optimizing the intermediate representations from the front end in accordance with predetermined optimization functions; at least one intermediate representation changing means for further transferring the optimized intermediate representations from the optimizing means in accordance with predetermined optimization functions, the at least one intermediate representation changing means including final intermediate representation changing means; code output means for providing code according to the intermediate representations obtained by the optimization from the file in intermediate representation changing means; and optimizing structure determination means for determining a number of repetitions required for optimization by the optimizing means and intermediate representation changing means, and selecting the optimization functions for directing an optimizing process performed in each of the repetitions, and thereby the intermediate representations being changed and optimized.
Claim 22
Dependent Claim 150 words
A compiling apparatus for compiling a source program in a data processing apparatus, comprising: a front end transforming a source program into intermediate representations; optimizing means for optimizing the intermediate representations from the front end in accordance with predetermined optimization functions; at least one intermediate representation changing means for further transferring the optimized intermediate representations from the optimizing means in accordance with predetermined optimization functions, the at least one intermediate representation changing means including final intermediate representation changing means; code output means for providing code according to the intermediate representations obtained by the optimization from the file in intermediate representation changing means; and optimizing structure determination means for determining a number of repetitions required for optimization by the optimizing means and intermediate representation changing means, and selecting the optimization functions for directing an optimizing process performed in each of the repetitions, and thereby the intermediate representations being changed and optimized.
Claim 23
Dependent Claim 155 words
A compiling method in a data processing apparatus comprising steps of: a step for providing intermediate representations described by an intermediate language according to a source program; an optimizing structure determination step for determining the number of repetitions of an optimization phase to execute optimization of the intermediate language and selecting optimization functions to direct an optimizing process carried out in each of the optimization phases; an optimizing step for optimizing the intermediate representations provided by the source program and the intermediate representations in each of the optimization phases, according to the determination by the optimizing structure determination step; an intermediate representation changing step for further transforming the optimized intermediate representation in each of the optimization phases, according to the determination by the optimizing structure determination step; a determination step for determining the number of repetitions of an optimization phase; and a code output step for providing codes according to the finally obtained intermediate representations.
Claim 24
Dependent Claim 155 words
A compiling method in a data processing apparatus comprising steps of: a step for providing intermediate representations described by an intermediate language according to a source program; an optimizing structure determination step for determining the number of repetitions of an optimization phase to execute optimization of the intermediate language and selecting optimization functions to direct an optimizing process carried out in each of the optimization phases; an optimizing step for optimizing the intermediate representations provided by the source program and the intermediate representations in each of the optimization phases, according to the determination by the optimizing structure determination step; an intermediate representation changing step for further transforming the optimized intermediate representation in each of the optimization phases, according to the determination by the optimizing structure determination step; a determination step for determining the number of repetitions of an optimization phase; and a code output step for providing codes according to the finally obtained intermediate representations.
Claim 25
Dependent Claim 93 words
A compiling method according to claim 21, wherein the optimizing structure determination step includes steps of: a pick up step for selecting at least one optimization function; a classification step for classifying the selected optimization functions into execution classes; and a compiler structure determination step for determining the number of times of changing intermediate representations according to the types of intermediate representations and intermediate dependencies, sorting and extracting applicable ones among the optimization functions in each optimization phase, and determining the execution order of the optimization functions according to dependencies of the functions.

References Cited (Backward Citations)

US4667290A Cited
US4763255A Cited
US5146594A Cited
JPH0281137A Cited
US5193190A Cited
US5212794A Cited
US5293631A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1998-03-06 1998-09-05 1999-03-07 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2002-03-06 2002-09-05 2003-03-07 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2006-03-06 2006-09-05 2007-03-07 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag