JPH04107738A - リテラルの最適化割り付け方式 - Google Patents

リテラルの最適化割り付け方式

Info

Publication number
JPH04107738A
JPH04107738A JP22777990A JP22777990A JPH04107738A JP H04107738 A JPH04107738 A JP H04107738A JP 22777990 A JP22777990 A JP 22777990A JP 22777990 A JP22777990 A JP 22777990A JP H04107738 A JPH04107738 A JP H04107738A
Authority
JP
Japan
Prior art keywords
literal
allocation
boundary
optimum
optimization
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
JP22777990A
Other languages
English (en)
Inventor
Mitsuo Tsuda
津田 三男
Isao Taguchi
功 田口
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.)
NEC Corp
NEC Solution Innovators Ltd
Original Assignee
NEC Corp
NEC Solution Innovators 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 NEC Corp, NEC Solution Innovators Ltd filed Critical NEC Corp
Priority to JP22777990A priority Critical patent/JPH04107738A/ja
Publication of JPH04107738A publication Critical patent/JPH04107738A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はリテラルの最適化割り付け方式に関する。
〔従来の技術〕
従来、リテラルを記述できるプログラム言語で、リテラ
ルの割り付け処理における最適化では、リテラルの内容
と割り付け境界情報をテーブル形式で保持し、テーブル
の内容を順次検索して、テーブルごとにリテラルの内容
と割り付け境界が一致するか否かを判定する方式が行わ
れていた。
〔発明が解決しようとする課題〕
上述した従来のリテラルの最適化割り付け方式は、割り
付け境界の異るリテラルのテーブルも検索する方式であ
ったので、リテラルの最適化割り付けの処理に時間がか
かるという問題点があった。
本発明の目的は、上記の問題を解決し、リテラルの最適
化割り付けの処理時間を短縮できるリテラルの最適化割
り付け方式を提供することにある。
〔課題を解決するための手段〕
本発明のリテラルの最適化割り付け方式は、コンパイラ
で割り付け境界を考慮してリテラルを割り付ける必要が
ある電子計算機におけるリテラルの最適化割り付け方式
において、 (A)リテラルの内容を割り付け境界別にテーブル形式
で作成し保持するリテラル管理手段、(B)前記リテラ
ル管理手段によって作成され保持されるリテラルの内容
を、リテラルの割り付け境界別に検索してリテラルの最
適割り付けを行うリテラル割り付け手段、 を備えている。
〔実施例〕
次に、本発明の実施例について図面を参照して説明する
第1図は本発明の一実施例のブロック図である。
第1図に示すリテラルの最適化割り付け方式は、原始プ
ログラム1、コンパイラ2、目的プログラム12から構
成されている。
まな、コンパイラ2は、字句解析処理部3,111文解
析処理部4、意味解析処理部5、リテラル生成処理部7
とリテラル割り付け処理部8とを含むコード生成処理部
6、目的プログラム出方処理部11から構成されている
また、リテラル割り付け処理部8は、リテラル生成処理
部7が生成したリテラル13を入力してリテラルテーブ
ル16に登録するリテラル管理手段9と、リテラルテー
ブル16を入力してリテラルの最適な割り付けアドレス
を決定するリテラル割り付け手段10がら構成されてい
る。
また、リテラル13は、割り付け境界情報14とリテラ
ル内容15から構成されている。
リテラルテーブル16は、割り付け境界ごとのリテラル
テーブルポインタ17、リテラルの割り付けアドレス1
8、及びリテラル内容19がら構成されている。
リテラル割り付け処理部8でアドレスを割り付けられた
リテラル情報2oは、割り付けアドレス21とリテラル
内容22から構成されている。
第2図は、リテラルテーブル16の構成を示した図であ
り、割り付け境界別のリテラルテーブルポインタ51と
、次のリテラルを示すポインタ52、割り付けアドレス
53及びリテラル内容54から成るリテラルテーブルの
チェーンとから構成されている。
次に、動作を説明する。
第3図は第1図に示すリテラルの最適化割り付け方式の
割り付け境界別のリテラルテーブルの検索順序を示す図
であり、第4図は第1図に示すリテラルの最適化割り付
け方式のリテラル割り付け手段の処理の流れを示す図で
ある。
第1図において、コンパイラ2は、原始プログラムlを
入力後、字句解析処理部3、構文解析処理部4、意味解
析処理部5において、原始プログラム1が構文的にも意
味的にも正しいことをチエツクした後、コード生成処理
部6を起動する。
コード生成処理部6はリテラル生成処理部7を起動する
。リテラル生成処理部7は、原始10グラム1に対する
コード生成処理において、リテラル13を生成し、リテ
ラル割り付け処理部8を起動する。
リテラル割り付け処理部8は、リテラル管理手段9によ
ってリテラル13を入力して、割り付け境界情報14に
対応する割り付け境界別のリテラルテーブルポインタ5
1につなぐ。
次に、リテラル割り付け処理部8は、リテラル割り付け
手段10によって、リテラルの最適割り付けを行う。リ
テラル割り付け手段10は、割り付け境界の一致するリ
テラルテーブルを選択しくステップ81)、先頭のリテ
ラルテーブルを求め(ステップ82)、リテラルテーブ
ルが終了するか否かを判定する(ステップ83)。
リテラルが終了でない場合は、リテラルの比較位置を先
頭としくステップ84)、リテラルテーブル内のリテラ
ルと一致するが否がを判定しくステップ85)、一致し
ない場合は、リテラルの位置を割り付け境界分だけ更新
しくステップ86)、リテラルが終了したか否かを判定
する(ステップ87)。
リテラルが終了した場合は、リテラルテーブルの終了判
定を再度行いくステップ83)、リテラルが終了してい
ない場合はリテラルテーブル内のリテラルとの比較判定
を再度行う(ステップ85)。
リテラルテーブル内のリテラルと一致した場合は、リテ
ラル比較位置の割り付けアドレスをリテラシレの割り付
けアドレスとしくステップ88)、リテラル管理手段9
で登録したリテラルテーブルを削除しくステップ89)
、リテラル割り付け手段lOが終了する。
一つのリテラルテーブルの検索が終了したか否かの判定
(ステップ83)で、検索が終了した場合は、第3図に
示す割り付け境界別のリテラルテーブルの検索順序に従
って、割り付け境界情報から次に検索する割り付け境界
のリテラルテーブルを求める(ステップ90)。
次に、検索するリテラルテーブルがあるか否かを判定し
くステップ91〉、次に検索するりチラルテーブルがあ
る場合は、先頭のリテラルテーブルを求める処理を再度
行いくステップ82)、次に検索すべきリテラルテーブ
ルがない場合は、リテラルのアドレスを最後のリテラル
の次のアドレスとして(ステップ92)、リテラル割り
付け手段10が終了する。
リテラル割り付け処理部8は、リテラル割り付け手段1
0によって最適割り付けされたリテラルテーブルを用い
て、リテラル13からリテラル情報20を生成して、目
的プログラム出力処理部11を起動する。
最後に、コンパイラ2は、目的プログラム出力処理部1
1を起動し、目的プログラム出力処理部11は目的プロ
グラム12を出力する。
〔発明の効果〕
以上説明したように、本発明は、リテラル内容を割り付
け境界ごとに作成・保持することにより、リテラルの最
適化が可能か否か判定する際に余分な割り付け境界情報
の判定を省略することができ、リテラルの最適化割り付
けの処理時間を短縮できるという効果を有する。
【図面の簡単な説明】
第1図は本発明の一実施例のブロック図、第2図は第1
図に示すリテラルの最適化割り付け方式のリテラルテー
ブルの構造図、第3図は第1図に示すリテラルの最適化
割り付け方式の割り付け境界別のリテラルテーブルの検
索順序を示す図、第4図は第1図に示すリテラルの最適
化割り付け方式のリテラル割り付け手段の処理の流れを
示す図である。 1・・・・・・原始プログラム、2・−・・・・コンパ
イラ、3・・・・・・字句解析処理部、4・・・・・・
構文解析処理部、5・・・・・・意味解析処理部、6・
・・・・・コード生成処理部、7・・・・・・リテラル
生成処理部、8・・・・・・リテラル割り付け処理部、
9・−・・・・リテラル管理手段、10・・・・・・リ
テラル割り付け手段、11・・・・・・目的プログラム
出力処理部、12・−・・・目的プログラム。 代理人 弁理士  内 原  晋 冶 4LA 図

Claims (1)

  1. 【特許請求の範囲】 コンパイラで割り付け境界を考慮してリテラルを割り付
    ける必要がある電子計算機におけるリテラルの最適化割
    り付け方式において、 (A)リテラルの内容を割り付け境界別にテーブル形式
    で作成し保持するリテラル管理手段、(B)前記リテラ
    ル管理手段によって作成され保持されるリテラルの内容
    を、リテラルの割り付け境界別に検索してリテラルの最
    適割り付けを行うリテラル割り付け手段、 を備えたことを特徴とするリテラルの最適化割り付け方
    式。
JP22777990A 1990-08-29 1990-08-29 リテラルの最適化割り付け方式 Pending JPH04107738A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP22777990A JPH04107738A (ja) 1990-08-29 1990-08-29 リテラルの最適化割り付け方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP22777990A JPH04107738A (ja) 1990-08-29 1990-08-29 リテラルの最適化割り付け方式

Publications (1)

Publication Number Publication Date
JPH04107738A true JPH04107738A (ja) 1992-04-09

Family

ID=16866252

Family Applications (1)

Application Number Title Priority Date Filing Date
JP22777990A Pending JPH04107738A (ja) 1990-08-29 1990-08-29 リテラルの最適化割り付け方式

Country Status (1)

Country Link
JP (1) JPH04107738A (ja)

Similar Documents

Publication Publication Date Title
US6901579B1 (en) Generation of source code from classes and maintaining the comment that indicates the role of the class in the generated source code
JPH096627A (ja) 最適化装置
JPH0769832B2 (ja) プログラミング演算の効果と従属性とを表現する方法及び装置
JPH04107738A (ja) リテラルの最適化割り付け方式
JP3085309B2 (ja) デバッグシステム
JPS6234240A (ja) デ−タ割付け方式
JPH07244601A (ja) 関係データベースのアクセス方法および装置
JP3327662B2 (ja) プログラム翻訳装置及びプログラム翻訳方法
JPH06266562A (ja) オブジェクト指向言語処理システムにおける目的コードサイズ最適化方式
JPH02222032A (ja) 加減算命令の最適化方式
JP2000339175A (ja) 抽象構文記法を用いたデータ構造定義における型情報の動的割り当て方法
JPH08272620A (ja) コンパイラのテンポラリ領域最適化方法
JPH02231638A (ja) オブジエクト指向データベース管理システムにおけるメツセージ処理方法
JPH0342728A (ja) 予約語の判定方式
JPS63138426A (ja) プログラム生成方式
JPH06119203A (ja) デバック行削除装置
JPH04364537A (ja) 並列処理用プログラム最適化方法、装置およびコンパイラ
JPH01286037A (ja) ソースファイル更新時刻自動認識コンパイル方式
JPS62163145A (ja) コンパイラ装置
JPS63178345A (ja) デ−タベ−スアクセス処理方式
JPH05204699A (ja) デバッグ時識別子探索方式
JPS6375837A (ja) プログラミング言語の予約語追加に対する互換性維持の為の予約語管理方式
JPH01291329A (ja) 高速コンパイル処理方式
JPH05298116A (ja) コンパイラシステム
JPH02191038A (ja) コンパイラ入力データエディット方式