JPH04273533A - 翻訳プログラムの手続きインライン展開方式 - Google Patents

翻訳プログラムの手続きインライン展開方式

Info

Publication number
JPH04273533A
JPH04273533A JP3385991A JP3385991A JPH04273533A JP H04273533 A JPH04273533 A JP H04273533A JP 3385991 A JP3385991 A JP 3385991A JP 3385991 A JP3385991 A JP 3385991A JP H04273533 A JPH04273533 A JP H04273533A
Authority
JP
Japan
Prior art keywords
procedure
program
information
inline expansion
parameter
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP3385991A
Other languages
English (en)
Inventor
Hisashi Uchida
久 内田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
HOKKAIDO NIPPON DENKI SOFTWARE KK
NEC Solution Innovators Ltd
Original Assignee
HOKKAIDO NIPPON DENKI SOFTWARE KK
NEC Software Hokkaido Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by HOKKAIDO NIPPON DENKI SOFTWARE KK, NEC Software Hokkaido Ltd filed Critical HOKKAIDO NIPPON DENKI SOFTWARE KK
Priority to JP3385991A priority Critical patent/JPH04273533A/ja
Publication of JPH04273533A publication Critical patent/JPH04273533A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は翻訳プログラムの手続き
インライン展開方式に関し、特に電子計算機システムに
おける翻訳プログラムの手続きインライン展開方法に関
する。
【0002】
【従来の技術】手続きのインライン展開手段を有する翻
訳プログラムシステムにおいては、すべての手続きをイ
ンライン展開の対象とすると、翻訳時間が異常に長くな
ったり、原始プログラムテキストが異常に大きくなった
り、実行性能にほとんど影響がない部分もインライン展
開されて冗長となる等の場合がある。それらを回避する
ために、従来はプログラムの内容を事前に解析してイン
ライン展開が有効と思われる手続き名とか、手続きが格
納されているファイル名をコマンド等により利用者が指
示してインライン展開を行う方式であった。
【0003】
【発明が解決しようとする課題】上述した従来の方式で
はインライン展開する名を指示するときにプログラムの
内容を理解しなければならず、また、インライン展開可
能か否かも判断しなければならないので試行錯誤になる
場合があり、特に大規模なプログラムの場合には有効な
指示を指定することは困難であった。
【0004】本発明の目的は、以上述べてきた従来技術
での問題点を解決する手続きのインライン展開方式を提
供することにある。
【0005】
【課題を解決するための手段】本発明の翻訳プログラム
の手続きインライン展開方式は、複数の手続きプログラ
ム単位を含む原始プログラムを入力して目的プログラム
を生成する翻訳プログラムを有する計算機システムにお
いて、原始プログラムを入力してプログラムを解析し、
動的解析情報を出力する動的解析手段と、手続きのイン
ライン展開のレベルを指示するパラメータを入力してパ
ラメータ情報を出力するパラメータ解析手段と、前記動
的解析情報とパラメータ情報を入力して、手続きのイン
ライン展開が可能か否かを解析し手続きインライン展開
情報を出力する手続きインライン展開解析手段と、前記
手続きインライン展開情報を入力して手続きのインライ
ン展開を行う手続きインライン展開手段とを有している
【0006】
【実施例】次に、本発明の実施例について図面を参照し
て説明する。
【0007】図1は本発明の一実施例を示す構成図であ
る。図1において、本発明の一実施例は複数の手続きプ
ログラム単位を含む原始プログラム3を入力して目的プ
ログラム11を生成する翻訳プログラムを有する計算機
システムにおける翻訳プログラムの手続きインライン展
開方式で、原始プログラム3を入力してプログラムを解
析し、動的解析情報を出力する動的解析手段5と、手続
きのインライン展開のレベルを指示するパラメータを入
力してパラメータ情報を出力するパラメータ解析手段4
と、動的解析情報8とパラメータ情報9を入力して、手
続きのインライン展開が可能か否かを解析し手続きイン
ライン展開情報10を出力する手続きインライン展開解
析手段6と、手続きインライン展開情報10を入力して
手続きのインライン展開を行う手続きインライン展開手
段7とを有している。
【0008】翻訳プログラム1において先ず、動的解析
手段5はプログラムテキストである原始プログラム3を
入力し、プログラムを実行させて動的解析情報8を出力
する。次に、パラメータ解析手段4はパラメータ2を入
力しパラメータ情報9を出力する。次に、手続きインラ
イン展開解析手段6は前記の動的解析情報8とパラメー
タ情報9とを入力し手続きがインライン展開可能か否か
を解析し、手続きインライン展開情報10を出力する。 次に、手続きインライン展開手段7は前記の手続きイン
ライン展開情報10を入力して手続きのインライン展開
処理を行い、最終的には目的プログラム11を出力する
【0009】この実施例についてはFORTRANで記
述されたプログラム例に基づいて説明する。
【0010】図2は原始プログラム3の一例である。部
分2−10はプログラムの行番号の部分であり、部分2
−20はプログラム部分である。動的解析手段5は図2
に示す原始プログラムを入力し、プログラムを実行させ
て図3に示す動的解析情報を出力する。ここで3−10
はプログラムの行番号であり、3−20は各行の実行回
数である。パラメータ解析手段4は第4図に示すパラメ
ータを入力してパラメータ情報9を出力する。ここで4
−10は行の実行頻度が100回以上の行においてイン
ライン展開処理を行うという指示の例であり、4−20
は行の実行頻度が5%以上の行においてインライン展開
を行うという指示の例である。手続きインライン展開解
析手段6は動的解析手段8とパラメータ情報9とを入力
し、手続きインライン展開情報10を出力し、手続きイ
ンライン展開手段7は手続きインライン展開情報10を
基に手続きのインライン展開処理を行う。図5は従来技
術によるインライン展開後のプログラム例である。5−
10と5−20がインライン展開された部分である。こ
こではプログラムの内容が事前に不明であると仮定して
いるのですべての手続きをインライン展開の対象とした
が、実行回数が1回だけの5−10の部分もインライン
展開されている。図6は本発明によるインライン展開後
のプログラムの例である。ここでは図3と図4に示す情
報を基にインライン展開処理が行なわれているので実行
回数が100回以上である6−20の部分のみがインラ
イン展開されている。既に動的解析情報8が存在すれば
動的解析手段5の段階を省略することもできる。
【0011】
【発明の効果】以上説明したように、本発明によれば、
プログラムの内容が事前に不明であっても実行頻度の高
い部分のみをインライン展開処理の対象とすることがで
きるので、インライン展開処理を効率よく実施できると
いう効果がある。特に大規模なプログラムにおいては事
前にプログラムの内容を解析することは難かしく、すべ
てをインライン展開の対象とすると実行性能にほとんど
影響のない部分もインライン展開の対象となるために、
プログラムの翻訳時間が膨大になってしまう場合もある
が、本発明によれば自動的に有効な指示が指定できるの
で事前のプログラムの解析は不要になるという効果があ
る。
【図面の簡単な説明】
【図1】本発明の一実施例を示す構成図である。
【図2】FORTRAN言語で記述されたプログラムの
例を示す図である。
【図3】動的解析情報の例を示す図である。
【図4】指定されたパラメータの例を示す図である。
【図5】従来技術によるプログラムのインライン展開後
の例を示す図である。
【図6】本発明によるプログラムのインライン展開後の
例を示す図である。
【符号の説明】
1    翻訳プログラム 2    パラメータ 3    原始プログラム 4    パラメータ解析手段 5    動的解析手段 6    手続きインライン展開解析手段7    手
続きインライン展開手段 8    動的解析情報 9    パラメータ情報

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】  複数の手続きプログラム単位を含む原
    始プログラムを入力して目的プログラムを生成する翻訳
    プログラムを有する計算機システムにおいて、原始プロ
    グラムを入力してプログラムを解析し、動的解析情報を
    出力する動的解析手段と、手続きのインライン展開のレ
    ベルを指示するパラメータを入力してパラメータ情報を
    出力するパラメータ解析手段と、前記動的解析情報とパ
    ラメータ情報を入力して、手続きのインライン展開が可
    能か否かを解析し手続きインライン展開情報を出力する
    手続きインライン展開解析手段と、前記手続きインライ
    ン展開情報を入力して手続きのインライン展開を行う手
    続きインライン展開手段とを有することを特徴とする翻
    訳プログラムの手続きインライン展開方式。
JP3385991A 1991-02-28 1991-02-28 翻訳プログラムの手続きインライン展開方式 Pending JPH04273533A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3385991A JPH04273533A (ja) 1991-02-28 1991-02-28 翻訳プログラムの手続きインライン展開方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3385991A JPH04273533A (ja) 1991-02-28 1991-02-28 翻訳プログラムの手続きインライン展開方式

Publications (1)

Publication Number Publication Date
JPH04273533A true JPH04273533A (ja) 1992-09-29

Family

ID=12398233

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3385991A Pending JPH04273533A (ja) 1991-02-28 1991-02-28 翻訳プログラムの手続きインライン展開方式

Country Status (1)

Country Link
JP (1) JPH04273533A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06202875A (ja) * 1992-12-28 1994-07-22 Nec Corp インライン展開による最適化を行うコンパイラ
JPH0744397A (ja) * 1993-07-30 1995-02-14 Nec Corp プログラム処理高速化方式
JP2000181724A (ja) * 1998-10-30 2000-06-30 Sun Microsyst Inc コンパイルする方法をランタイムにおいて選択する方法及び装置
US6292940B1 (en) 1998-01-26 2001-09-18 Nec Corporation Program complete system and its compile method for efficiently compiling a source program including an indirect call for a procedure
JP2007213490A (ja) * 2006-02-13 2007-08-23 Fujitsu Ltd アプリケーションサーバシステムおよび仮想マシンプログラム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01118931A (ja) * 1987-11-02 1989-05-11 Hitachi Ltd プログラム変換方式

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01118931A (ja) * 1987-11-02 1989-05-11 Hitachi Ltd プログラム変換方式

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06202875A (ja) * 1992-12-28 1994-07-22 Nec Corp インライン展開による最適化を行うコンパイラ
JPH0744397A (ja) * 1993-07-30 1995-02-14 Nec Corp プログラム処理高速化方式
US6292940B1 (en) 1998-01-26 2001-09-18 Nec Corporation Program complete system and its compile method for efficiently compiling a source program including an indirect call for a procedure
JP2000181724A (ja) * 1998-10-30 2000-06-30 Sun Microsyst Inc コンパイルする方法をランタイムにおいて選択する方法及び装置
JP2007213490A (ja) * 2006-02-13 2007-08-23 Fujitsu Ltd アプリケーションサーバシステムおよび仮想マシンプログラム
US8332845B2 (en) 2006-02-13 2012-12-11 Fujitsu Limited Compile timing based on execution frequency of a procedure

Similar Documents

Publication Publication Date Title
JPH05342298A (ja) シミュレーション装置
JPH04273533A (ja) 翻訳プログラムの手続きインライン展開方式
WO2020209227A1 (ja) 解析装置、解析方法、及びプログラム
JP2003208307A (ja) ソースプログラム生成システム
CN107180193B (zh) 一种将程序代码转换成数据约束的方法和装置
KR20200052108A (ko) 편집 부분을 자동 제시하는 자동번역 후편집 시스템 및 이의 동작 방법
US8402445B2 (en) Program translation method and notifying instruction inserting method
JPH08180094A (ja) アーキテクチャ・シミュレータ
JP4952317B2 (ja) 退避データ判別方法、退避データ判別プログラムおよび退避データ判別装置
JPWO2019142266A1 (ja) テストケース生成装置、テストケース生成方法およびテストケース生成プログラム
JPH1115695A (ja) プログラムテストパターン自動生成システム
JPH11195011A (ja) 言語翻訳処理装置、言語翻訳処理方法、言語翻訳処理プログラムを記録した記録媒体
JPH06214777A (ja) プログラム開発方法及び装置
KR20220071113A (ko) 시간적 관계정보의 컨텍스트 이해를 위한 오픈 도메인 정보 활용 방법
JPH07239787A (ja) 構文解析木からの情報抽出装置
JPH0793144A (ja) プログラム解析装置
JPH04248675A (ja) Lsi設計支援装置
JPH05113885A (ja) 並列処理プログラム開発装置
JPH0954704A (ja) 言語プロセッサのテストプログラム自動作成システム
JP2006003987A (ja) デバッグ方法およびデバッガ
JPS62166432A (ja) プログラム翻訳制御方式
JPH0695887A (ja) コンパイラ装置
JP2001154878A (ja) デバッグ用プログラム生成方法及び生成・実行方法
JP2018097785A (ja) テスト支援装置、テスト支援プログラム
JPH05334123A (ja) デバッグ方法

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 19970819