JPH049357B2 - - Google Patents

Info

Publication number
JPH049357B2
JPH049357B2 JP4591485A JP4591485A JPH049357B2 JP H049357 B2 JPH049357 B2 JP H049357B2 JP 4591485 A JP4591485 A JP 4591485A JP 4591485 A JP4591485 A JP 4591485A JP H049357 B2 JPH049357 B2 JP H049357B2
Authority
JP
Japan
Prior art keywords
vector mask
mask register
contents
vector
procedure
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.)
Expired
Application number
JP4591485A
Other languages
English (en)
Other versions
JPS61204770A (ja
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 filed Critical
Priority to JP4591485A priority Critical patent/JPS61204770A/ja
Publication of JPS61204770A publication Critical patent/JPS61204770A/ja
Publication of JPH049357B2 publication Critical patent/JPH049357B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8053Vector processors

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Complex Calculations (AREA)
  • Devices For Executing Special Programs (AREA)
  • Advance Control (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、ベクトルマスクレジスタ管理方式、
さらに詳しくは、ベクトル演算を行う計算機と組
込み手続きを有する言語プロセツサとからなる計
算機システムにおけるベクトルマスクレジスタ管
理方式に関する。
〔従来の技術〕
ベクトルを構成する複数の要素について同時に
演算を実行可能なベクトル演算器を備える計算機
では、ベクトル演算において個々の要素について
それぞれ演算を行うか否かを制御するためにベク
トルマスクが使用され、このベクトルマスクを保
持するためにベクトルマスクレジスタが用いられ
る。
このようなベクトル演算可能な計算機におい
て、ベクトルマスクレジスタを使用するオブジエ
クトプログラムを生成し、かつこのオブジエクト
プログラムで引用可能でベクトルマスクレジスタ
を使用する組込み手続きを有するコンパイラ形式
の言語プロセツサを用いる場合、オブジエクトプ
ログラムで使用するベクトルマスクレジスタと組
込み手続きで使用するベクトルマスクレジスタと
が重複する可能性があつた。
そこで、従来は、ベクトルマスクレジスタを使
用しているオブジエクトプログラムからベクトル
マスクレジスタを使用する組込み手続きを呼び出
すときには、オブジエクトプログラムおよび組込
み手続きにおけるベクトルマスクレジスタの使用
状態とは無関係に、オブジエクトプログラムで使
用している全てのベクトルマスクレジスタの内
容、あるいは組込み手続きで使用する全てのベク
トルマスクレジスタの内容を一旦退避領域に退避
させ、組込み手続きの実行終了後に退避させてい
た全てのベクトルマスクレジスタの内容を元のベ
クトルマスクレジスタ内に回復させる処理を行つ
ていた。
すなわち、ベクトルマスクレジスタの内容の退
避および回復を組込み手続き側で行う場合には、
例えば、第3図に示すように、あらかじめ組込み
関数f(x)7の入口および出口に、組込み関数
f(x)7で使用する全てのベクトルマスクレジ
スタの内容を図示しない退避領域に一旦退避させ
る命令、および一旦退避させた全てのベクトルマ
スクレジスタの内容を回復させる命令を組み入れ
ておくようにしていた。また、ベクトルマスクレ
ジスタの管理をオブジエクトプログラム側で行う
場合には、同じく、例えば、第3図に示すよう
に、オブジエクトプログラム6の組込み関数f
(x)7を呼び出す命令列の直前において、オブ
ジエクトプログラムで使用している全てのベクト
ルマスクレジスタの内容を図示しない退避領域に
一旦退避させる命令を生成させ、オブジエクトプ
ログラム6の組込み関数f(x)7を呼び出す命
令列の直後において、一旦退避させた全てのベク
トルマスクレジスタの内容を生成させるようにし
ていた。
上記のように、従来は、組込み関数f(x)7
を呼び出す時点で、オブジエクトプログラム6で
使用されていたベクトルマスクレジスタが組込み
関数f(x)7で使用されるベクトルマスクレジ
スタと重複せず、したがつて、ベクトルマスクレ
ジスタの内容の退避が本来的に不必要な場合で
も、組込み関数f(x)7を呼び出すたびに必ず
ベクトルマスクレジスタの内容の退避および回復
が実行されていた。
〔発明が解決しようとする問題点〕
上述した従来のベクトルマスクレジスタ管理装
置では、組込み手続きを呼び出すための命令列の
前で内容が定義され、この命令列の後で参照され
るベクトルマスクレジスタと、その組込み手続き
において必要とされるベクトルマスクレジスタと
の間に重複しているものが有るか否かにかかわら
ず、組込み手続きを呼び出すための命令列の直前
あるいはこの組込み手続きの入口で、オブジエク
トプログラムで使用していた全てのベクトルマス
クレジスタの内容または組込み手続きで使用する
全てのベクトルマスクレジスタの内容の退避が行
われ、組込み手続きを呼び出すための命令列の直
後あるいはこの組込み手続きの出口で、退避され
ていたベクトルマスクレジスタの内容の回復が行
われるようになつていたので、重複していないベ
クトルマスクレジスタに対する内容の退避および
回復の命令の実行のために、無駄な時間が消費さ
れ、プログラムの実行速度が低下するという欠点
があつた。
〔問題点を解決するための手段〕
本発明のベクトルマスクレジスタ管理装置は、
ベクトルを構成する複数の要素について同時に演
算を実行可能なベクトル演算器とベクトル演算に
おいて個々の要素についてそれぞれ演算を行うか
否かを制御するためのベクトルマスクを保持する
ベクトルマスクレジスタとを有する計算機と、ベ
クトルマスクレジスタを使用するオブジエクトコ
ードを生成し、かつこのオブジエクトコードで引
用可能で前記ベクトルマスクレジスタを使用する
組込み手続きを有するコンパイラ形式の言語プロ
セツサとを備える計算機システムのベクトルマス
クレジスタ管理装置において、前記言語プロセツ
サによつて生成される各命令ごとに、以降に実行
される命令において内容の参照があり、その時点
においてはその内容を破壊してはならないベクト
ルマスクレジスタの使用状態を記録する手段と、
プログラム実行時に前記オブジエクトコードで引
用される前記組込み手続きが使用するベクトルマ
スクレジスタの記録を保持する手段と、前記組込
み手続きを呼び出すための命令列を生成するとき
に、前記ベクトルマスクレジスタの使用状態の記
録と前記組込み手続きが使用するベクトルマスク
レジスタの記録とを互いに比較する手段と、この
比較手段による比較の結果に基づき、前記組込み
手続きを呼び出すための命令列の前で内容が定義
され、同命令列の後で参照されるベクトルマスク
レジスタと、前記組込み手続きが使用するベクト
ルマスクレジスタとの間に重複するものがあると
きに、前記組込み手続きを呼び出すための命令列
の前に重複したベクトルマスクレジスタの内容を
退避領域に退避させる命令を生成するとともに、
前記組込み手続きを呼び出すための命令列の後に
退避させたベクトルマスクレジスタの内容を重複
していたベクトルマスクレジスタ内に回復させる
命令を生成する手段とを有している。
〔実施例〕
次に、本発明について図面を参照して説明す
る。
第1図は、本発明の一実施例の構成を示すブロ
ツク図である。本実施例のベクトルマスクレジス
タ管理システムは、ベクトル演算器とベクトルマ
スクレジスタとを備えた計算機(図示せず)と、
この計算機に搭載された言語プロセツサとしての
コンパイラ2とでなる計算機システムに適用され
るものであり、コンパイラ2は、解析部21と、
レジスタ管理部22と、比較部25と、オブジエ
クトコード生成部26とで、その主要部が構成さ
れている。
コンパイラ2は、ソースプログラムおよびオペ
レータによるコンパイラ2への指示1に基づき、
いくつかのベクトルマスクレジスタについての定
義および参照を行う命令列を含むオブジエクトプ
ログラム3を生成する機能を有する。
コンパイラ2内に設けられた解析部21は供給
されたソースプログラムおよびオペレータによる
コンパイラ2への指示1を解析するとともに、中
間テキスト27を作成する。
解析部21に続くレジスタ管理部22は、解析
部21からの情報および中間テキスト27に基づ
き、生成される各命令ごとに、以降に実行される
命令において内容の参照があり、その時点におい
てはその内容を破壊してはならないベクトルマス
クレジスタのアドレスを実行時ベクトルマスクレ
ジスタ使用状態記録23に記録する。
レジスタ管理部22に続く比較部25は、解析
部21から組込み手続きが引用されているとの情
報を受け取ると、まず、各組込み手続きごとにそ
の組込み手続きが使用するベクトルマスクレジス
タのアドレスを保持している組込み手続きベクト
ルマスクレジスタテーブル24を検索して、引用
された組込み手続きが必要とするベクトルマスク
レジスタのアドレスを取り出す。次に、この取り
引されたベクトルマスクレジスタのアドレスと、
実行時ベクトルマスクレジスタ使用状態記録23
に基づく、組込み手続きの引用の時点で内容を保
存しなければならないベクトルマスクレジスタの
アドレスとを比較して、両者の間に重複している
ものが存在しているかどうかを調べる。両者の間
に重複するものがあるときには、オブジエクトコ
ード生成部26に対して、重複しているベクトル
マスクレジスタの内容の退避が必要であるとの通
知を行う。また、両者の間に重複するものがない
ときには、オブジエクトコード生成部26に対し
て、ベクトルマスクレジスタの内容の退避が必要
ないとの通知を行う。
比較部25に続くオブジエクトコード生成部2
6は、中間テキスト27をもとにオブジエクトプ
ログラム3を生成する。このオブジエクトコード
生成部26は、オブジエクトプログラム3を生成
する際に、前記比較部25からの通知に基づき、
組込み手続きを呼び出す前にベクトルマスクレジ
スタの内容の退避が必要な場合に限り、組込み手
続きを呼び出すための命令列32の直前にベクト
ルマスクレジスタの内容を退避させる命令を生成
するとともに、組込み手続きを呼び出すための命
令列32の直後に退避させていたベクトルマスク
レジスタの内容を回復させる命令を生成する。
第2図は、本発明に係るベクトルマスクレジス
タ管理システムを用いて、ベクトルマスクレジス
タを使用するベクトル組込み関数f(x)5を参
照している、フオートラン言語で記述されたソー
スプログラムをコンパイルしたときの、ソースプ
ログラム1と、オブジエクトプログラム4と、組
込み関数f(x)5との関係を示している。第2
図に示すように、オブジエクトプログラム4で使
用するベクトルマスクレジスタと、組込み関数f
(x)5で使用するベクトルマスクレジスタとが
重複しない場合には、組込み関数f(x)を呼び
出すための命令列の直前および直後に、ベクトル
マスクレジスタの内容を退避および回復するため
の命令は生成されない。
〔発明の効果〕
以上説明したように、本発明は、ベクトルマス
クレジスタの退避および回復のための命令を、オ
ブジエクトプログラムと組込み手続きとで使用す
るベクトルマスクレジスタが重複しない場合に生
成しないようにしたので、ベクトル演算を行う計
算機システムにおいて、プログラムの実行速度を
確実に向上させることができるという効果があ
る。
【図面の簡単な説明】
第1図は、本発明の一実施例の構成を示すブロ
ツク図、第2図は、本発明に係るベクトルマスク
レジスタ管理システムを用いてソースプログラム
をコンパイルしたときの、ソースプログラムとオ
ブジエクトプログラムと組込み関数との関係を示
す模式図および第3図は、従来のオブジエクトプ
ログラムと組込み関数との関係を示す模式図であ
る。 1……ソースプログラムおよびオペレータの指
示、2……コンパイラ、3,4,6……オブジエ
クトプログラム、5,7……組込み関数f(x)、
16……組込み関数f(x)を呼び出すための命
令列、21……解析部、22……レジスタ管理
部、23……実行時ベクトルマスクレジスタ使用
状態記録、24……組込み手続きベクトルマスク
レジスタテーブル、25……比較部、26……オ
ブジエクトコード生成部、27……中間テキス
ト、31……ベクトルマスクレジスタの内容を退
避させる命令、32……組込み手続きを呼び出す
ための命令列、33……ベクトルマスクレジスタ
の内容を回復させる命令。

Claims (1)

  1. 【特許請求の範囲】 1 ベクトルを構成する複数の要素について同時
    に演算を実行できるベクトル演算器とこのベクト
    ル演算において前記各要素についてそれぞれ演算
    を行うか否かを制御するためのベクトルマスク情
    報を保持する複数のベクトルマスクレジスタとを
    有する計算機と、ソースプログラムから複数の命
    令を有するオブジエクトプログラムを生成すると
    ともにこのオブジエクトプログラムで引用可能で
    前記複数のベクトルマスクレジスタを使用する組
    込み手続きを有するコンパイラ形式の言語プロセ
    ツサとを備える計算機システムのベクトルマスク
    レジスタ管理方式において、 前記言語プロセツサによつて生成される前記各
    命令ごとに、以降に実行される命令において内容
    の参照があり、その時点においてはその内容を破
    壊してはならない前記ベクトルマスクレジスタの
    識別情報を保持する第1の保持手段と、 プログラム実行時に前記オブジエクトプログラ
    ムで引用される前記組込み手続きが使用する前記
    ベクトルマスクレジスタの識別情報を保持する第
    2の保持手段と、 前記組込み手続きを呼び出すための命令列を生
    成するときに前記第1の保持手段の内容と第2の
    保持手段の内容とを互いに比較する比較手段と、 前記組込み手続きを呼び出すための命令列の前
    で内容が定義されこの命令列の後で参照されるベ
    クトルマスクレジスタと前記組込み手続きが使用
    するベクトルマスクレジスタとの間に重複するも
    のがあることが前記比較手段による比較の結果か
    ら判明したときに前記組込み手続きを呼び出すた
    めの命令列の直前に重複したベクトルマスクレジ
    スタの内容を退避領域に退避させる命令を生成す
    るとともに前記組込み手続きを呼び出すための命
    令列の直後に退避させたベクトルマスクレジスタ
    の内容を重複していたベクトルマスクレジスタ内
    に回復させる命令を生成する手段と、 を具備することを特徴とするベクトルマスクレジ
    スタ管理方式。
JP4591485A 1985-03-08 1985-03-08 ベクトルマスクレジスタ管理方式 Granted JPS61204770A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4591485A JPS61204770A (ja) 1985-03-08 1985-03-08 ベクトルマスクレジスタ管理方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4591485A JPS61204770A (ja) 1985-03-08 1985-03-08 ベクトルマスクレジスタ管理方式

Publications (2)

Publication Number Publication Date
JPS61204770A JPS61204770A (ja) 1986-09-10
JPH049357B2 true JPH049357B2 (ja) 1992-02-19

Family

ID=12732513

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4591485A Granted JPS61204770A (ja) 1985-03-08 1985-03-08 ベクトルマスクレジスタ管理方式

Country Status (1)

Country Link
JP (1) JPS61204770A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04350765A (ja) * 1991-05-28 1992-12-04 Nec Corp コンパイラのベクトル化方式

Also Published As

Publication number Publication date
JPS61204770A (ja) 1986-09-10

Similar Documents

Publication Publication Date Title
US4819234A (en) Operating system debugger
JP2005063435A (ja) ソフトウェアフォールトを封じ込める方法およびシステム
JPH049357B2 (ja)
JPH0250228A (ja) デバッグ処理装置
JPS592156A (ja) リスト出力制御方式
JPH0340143A (ja) パイプライン方式計算機におけるデバッグ方式
JPH04106652A (ja) 例外処理システム
JP3039450B2 (ja) スタック領域の切替方法、方式およびスタック領域切替プログラムを記録した記憶媒体
JPH02232727A (ja) 情報処理装置
JPS63163636A (ja) 並列処理実行方式
JPH0563824B2 (ja)
JPS6159540A (ja) デイスパツチング処理方式
JPS62214445A (ja) 情報処理装置
JPH03172934A (ja) 言語間インタフェース
JPH0540653A (ja) デバツグ装置及びデバツグ方法
JPH03204036A (ja) 割込み処理後の動的再開機構を備えた計算機
JPH0658632B2 (ja) デ−タ処理装置
JPS59121678A (ja) スタツクの書込み・読出し制御方式
JPS62144237A (ja) バックトラック方式
JPH03109643A (ja) データ例外手続き実行方式
JPH08171499A (ja) デバッグ装置
JPS62219032A (ja) 初期診断方式
JPS6398040A (ja) ソフトウエアトラツプ制御方式
JPH04264625A (ja) レジスタ管理方式
JPS62166444A (ja) プログラムデバツグ装置