JPH11195011A - Language translation processor, language translation processing method and record medium recording language translation processing program - Google Patents

Language translation processor, language translation processing method and record medium recording language translation processing program

Info

Publication number
JPH11195011A
JPH11195011A JP43498A JP43498A JPH11195011A JP H11195011 A JPH11195011 A JP H11195011A JP 43498 A JP43498 A JP 43498A JP 43498 A JP43498 A JP 43498A JP H11195011 A JPH11195011 A JP H11195011A
Authority
JP
Japan
Prior art keywords
loop
language translation
program
instruction
condition
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
JP43498A
Other languages
Japanese (ja)
Inventor
Yoshinori Tsuda
義典 津田
Katsuaki Fundou
勝昭 分銅
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
Original Assignee
NEC Corp
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 filed Critical NEC Corp
Priority to JP43498A priority Critical patent/JPH11195011A/en
Publication of JPH11195011A publication Critical patent/JPH11195011A/en
Pending legal-status Critical Current

Links

Landscapes

  • Complex Calculations (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

PROBLEM TO BE SOLVED: To shorten the execution time of a target program by generating the target program without enlarging the size of the target program and optimizing a condition branching instruction string. SOLUTION: The processor 2 has a structure analysis means 221 extracting a loop which can be made into a vector and a condition branching/analyzing means 222 analyzing whether the condition of condition branching is constant in a loop. A vector text generation means 223 using a condition branching instruction without using the instruction with mask information and mask information when all the condition expressions of condition branching, which are contained in the loop of a source program 1, are constant, and a vector operation optimizing means 224 analyzing the condition expression of the condition branching instruction whose condition expression contained in the loop which is made into the vector is constant in the loop and optimizing condition branching with respect to the instruction string under the condition of the condition expression are provided.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、ベクトル演算処理
装置を有する計算機の言語処理に関し、特に条件分岐を
含むループのベクトル演算最適化処理に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to language processing of a computer having a vector operation processing device, and more particularly to vector operation optimization processing of a loop including a conditional branch.

【0002】[0002]

【従来の技術】少なくともひとつのベクトルレジスタと
条件付き命令を処理する際のマスク情報を格納するベク
トル制御レジスタを有するベクトル処理装置を持つ計算
機が、特開平7−56892号公報「マスク付きベクト
ル演算器を持つ計算機」に開示されている。この計算機
上で走行する目的プログラムを原始プログラムから作成
する言語翻訳処理装置では、ループに条件分岐が存在す
る場合はその条件分岐の条件式がループ中で一定か否か
に関係なくマスク情報データを作成し、条件分岐の条件
下の文を作成したマスク情報データによりマスク情報付
き命令列で作成することによりベクトル化していた。特
開平6ー251054号公報「IF文下ベクトル演算最
適化方法」には、ループ中で一定な条件分岐を含むルー
プの最適化方法として、図4の原始プログラムから図5
に示すプログラムの様に言語翻訳処理をして条件分岐を
ループの外側で行う様にする最適化方法、また、DOル
ープ内の異なる条件下に現れる同一演算がある場合に
は、図6の原始プログラムから、図7に示すプログラム
の様に言語翻訳処理をして条件下の文に着目し異なる条
件下にある同一の文や演算をマスク情報無し命令で実行
しておき、その値をマスク情報付き命令で実行すること
によるプログラムの実行時間短縮方法が開示されてい
る。しかし、条件分岐の条件式に着目した、プログラム
の実行時間短縮方法は今まで提供されていない。
2. Description of the Related Art A computer having a vector processing device having at least one vector register and a vector control register for storing mask information when processing a conditional instruction is disclosed in Japanese Patent Application Laid-Open No. 7-56892, entitled "Vector arithmetic unit with mask". Computer ". In a language translation processing device that creates a target program running on a computer from a source program, when a conditional branch exists in a loop, mask information data is output regardless of whether the conditional expression of the conditional branch is constant in the loop. A vector is created by creating a statement under the condition of the conditional branch using an instruction sequence with mask information based on the created mask information data. Japanese Unexamined Patent Publication No. Hei 6-251054 discloses a method for optimizing a vector operation under an IF sentence, which is a method for optimizing a loop including a certain conditional branch in the loop.
In the case of an optimization method in which conditional branching is performed outside the loop by performing language translation processing as in the program shown in FIG. As in the program shown in FIG. 7, the language translation process is performed from the program, and the same statement or operation under different conditions is executed by an instruction without mask information, and the value is stored in the mask information. There is disclosed a method for reducing the execution time of a program by executing the program with instructions. However, a method for reducing the execution time of a program focusing on a conditional expression of a conditional branch has not been provided so far.

【0003】[0003]

【発明が解決しようとする課題】上述した従来の言語翻
訳処理装置が行う最適化では、条件分岐をループの外側
で行う様な最適化には条件分岐が複雑な場合は最適化さ
れないという欠点や、目的プログラムのサイズが必要以
上に大きくなるという欠点がある。
In the above-mentioned optimization performed by the conventional language translation processing apparatus, the optimization in which the conditional branch is performed outside the loop is not optimized when the conditional branch is complicated. However, there is a disadvantage that the size of the target program becomes unnecessarily large.

【0004】また、条件下の文に着目し異なる条件下に
ある同一の文や演算をマスク情報無し命令で実行してお
き、その値をマスク情報付き命令で実行することによる
プログラムの実行時間短縮方法では、図8の原始プログ
ラムから、図9に示す様に条件によっては全く実行され
ない文が、必ず実行されしまうプログラムを生成する場
合がありうるという問題がある。
Further, the same statement or operation under different conditions is executed by an instruction without mask information by focusing attention on the statement under the condition, and the value is executed by the instruction with mask information, thereby shortening the execution time of the program. In the method, there is a problem that a statement that is not executed at all depending on the condition as shown in FIG. 9 may generate a program that is always executed from the source program of FIG.

【0005】さらに、従来はマスク情報付き命令で処理
されていたため、ベクトル化されたループ中には条件分
岐が存在しなかった為、条件分岐の最適化が行えなかっ
た。
Furthermore, since processing was conventionally performed using an instruction with mask information, there was no conditional branch in the vectorized loop, so that the conditional branch could not be optimized.

【0006】[0006]

【課題を解決するための手段】本発明第一の言語翻訳処
理装置は、 原始プログラムを読み込み構文解析を行い
第一の中間テキストを作成する第一の手段と、前記第一
の中間テキストの構造解析を行い前記原始プログラム内
のベクトル化可能な可能なループを抽出する第二の手段
と、前記第一の中間テキストを用いて前記原始プログラ
ムのループ中の条件分岐の条件がループ内で一定である
かを判断する第三の手段と、前記第三の手段の判断に基
づき、条件分岐命令とマスク情報無しベクトル命令用い
た第二の中間テキストを作成する第四の手段と、前記第
二の中間テキストから目的プログラムを作成する第五の
手段を有する。
A first language translation processing apparatus according to the present invention comprises: a first means for reading a source program and performing syntax analysis to create a first intermediate text; and a structure of the first intermediate text. Second means for analyzing and extracting possible loops that can be vectorized in the source program, and using the first intermediate text, the condition of the conditional branch in the source program loop is constant in the loop. A third means for determining whether there is, a fourth means for creating a second intermediate text using a conditional branch instruction and a vector instruction without mask information based on the determination of the third means, A fifth means for creating a target program from the intermediate text is provided.

【0007】本発明第二の言語翻訳処理装置は、本発明
第一の言語翻訳処理装置に前記第二の中間テキストから
ベクトル化されたループ内に含まれる条件式がループ中
で一定である条件分岐命令の条件下の命令列に対し、条
件分岐の最適化を行う第六の手段をさらに有する。
A second language translation processing device according to the present invention is characterized in that the first language translation processing device according to the first invention has a condition that a conditional expression included in a loop vectorized from the second intermediate text is constant in the loop. There is further provided a sixth means for optimizing a conditional branch for an instruction sequence under a condition of a branch instruction.

【0008】本発明第一の言語翻訳処理方法は、原始プ
ログラムを読み込み構文解析を行い第一の中間テキスト
を作成する第一のステップと、前記第一の中間テキスト
の構造解析を行い前記原始プログラム内のベクトル化可
能な可能なループを抽出する第二のステップと、前記第
一の中間テキストを用いて前記原始プログラムのループ
中の条件分岐の条件がループ内で一定であるかを判断す
る第三のステップと、前記第三の手段の判断に基づき、
条件分岐命令とマスク情報無しベクトル命令用いた第二
の中間テキストを作成する第四のステップと、前記第二
の中間テキストから目的プログラムを作成する第五のス
テップを有する。
According to a first language translation processing method of the present invention, a first step of reading a source program and parsing it to create a first intermediate text, and analyzing a structure of the first intermediate text to execute the source program Extracting the vectorizable loops that can be vectorized in the second step; and determining whether the condition of a conditional branch in the loop of the source program is constant in the loop using the first intermediate text. Based on the three steps and the judgment of the third means,
There is a fourth step of creating a second intermediate text using a conditional branch instruction and a vector instruction without mask information, and a fifth step of creating a target program from the second intermediate text.

【0009】本発明第二の言語翻訳処理方法は、本発明
第一の言語翻訳処理方法に前記第二の中間テキストから
ベクトル化されたループ内に含まれる条件式がループ中
で一定である条件分岐命令の条件下の命令列に対し、条
件分岐の最適化を行う第六のステップをさらに有する。
The second language translation processing method according to the present invention is characterized in that in the first language translation processing method according to the first aspect of the present invention, a conditional expression included in a loop vectorized from the second intermediate text is constant in the loop. The method further includes a sixth step of optimizing a conditional branch for an instruction sequence under a condition of a branch instruction.

【0010】本発明の記録媒体は、本発明の言語翻訳処
理方法をコンピュータに実行させる制御プログラムを有
する。
The recording medium of the present invention has a control program for causing a computer to execute the language translation processing method of the present invention.

【0011】[0011]

【発明の実施の形態】次に本発明について図面を参照し
て説明する。
DESCRIPTION OF THE PREFERRED EMBODIMENTS Next, the present invention will be described with reference to the drawings.

【0012】図1は本発明の一実施例である言語翻訳処
理装置のブロック図である。
FIG. 1 is a block diagram of a language translation processing apparatus according to an embodiment of the present invention.

【0013】言語翻訳処理装置2は、構文解析手段21
とベクトル化処理部22とコード生成手段23から構成
される。ベクトル化処理部22は、構造解析手段221
と条件分岐解析手段222とベクトルテキスト生成手段
223とベクトル演算最適化手段224から構成され
る。
The language translation processor 2 includes a syntax analyzer 21
, A vectorization processing unit 22 and a code generation unit 23. The vectorization processing unit 22 includes a structure analysis unit 221
, Conditional branch analysis means 222, vector text generation means 223, and vector calculation optimization means 224.

【0014】原始プログラム1は言語翻訳処理装置2へ
入力され、構文解析手段21により第一中間テキスト2
4が作成される。さらに原始プログラム1は構造解析手
段221に読み込まれ解析される。第二中間テキスト2
5は、ベクトル化された部分をベクトルテキスト生成手
段223により作成されたもので、それ以外を第一中間
テキスト24で構成されている。第2中間テキスト25
はさらにベクトル演算最適化手段224に読み込まれ最
適化される。目的プログラム3は言語翻訳処理装置2の
コード生成手段23によって生成される。次に、図1に
示した言語翻訳処理装置2の動作について図面を参照し
て説明する。
The source program 1 is input to the language translation processing device 2, and the first intermediate text 2
4 is created. Further, the source program 1 is read and analyzed by the structure analysis means 221. Second intermediate text 2
Reference numeral 5 denotes a vectorized part created by the vector text generating means 223, and the rest is constituted by the first intermediate text 24. Second intermediate text 25
Is further read and optimized by the vector operation optimizing means 224. The target program 3 is generated by the code generation unit 23 of the language translation processing device 2. Next, the operation of the language translation processing device 2 shown in FIG. 1 will be described with reference to the drawings.

【0015】図3は、本発明のプログラム処理を実行す
るコンピュータ50とその処理が格納された記録媒体5
1である。図2は、本発明の一実施例である言語翻訳処
理のフローチャートである。原始プログラム1は言語翻
訳処理装置2の入力となる。入力された原始プログラム
1は、言語翻訳処理装置2の構文解析手段21が第一中
間テキスト24を作成する(ステップA−1)。構造解
析手段221により生成された第一中間テキスト24か
らベクトル化可能なループを抽出する(ステップA−
2)。ベクトル化可能なループが無い場合は、目的プロ
グラム1の生成処理をする(ステップA−9)。ベクト
ル化可能なループがあるならば、ベクトル化可能なルー
プ内に条件分岐が含まれているかを検査する(ステップ
A−3)。ベクトル化可能なループ内に条件分岐が含ま
れていなければ、条件分岐を含まない第一中間テキスト
24内のベクトル化可能なループのテキストをベクトル
処理を用いたテキストに置き換え第二中間テキスト25
を作成する(ステップA−5)。ベクトル化可能なルー
プ内に条件分岐が含まれていれば、ベクトル化可能なル
ープに含まれる条件分岐の条件式が全てループ中で一定
か否かを検査する(ステップA−4)。
FIG. 3 shows a computer 50 for executing the program processing of the present invention and a recording medium 5 storing the processing.
It is one. FIG. 2 is a flowchart of a language translation process according to one embodiment of the present invention. The source program 1 is input to the language translation processing device 2. The syntax analysis unit 21 of the language translation processor 2 creates the first intermediate text 24 of the input source program 1 (step A-1). A vectorizable loop is extracted from the first intermediate text 24 generated by the structure analysis unit 221 (step A-).
2). If there is no loop that can be vectorized, the target program 1 is generated (step A-9). If there is a vectorizable loop, it is checked whether a conditional branch is included in the vectorizable loop (step A-3). If the conditional loop is not included in the vectorizable loop, the vectorizable loop text in the first intermediate text 24 that does not include the conditional branch is replaced with text using vector processing.
Is created (step A-5). If a conditional branch is included in the vectorizable loop, it is checked whether or not all conditional expressions of the conditional branches included in the vectorizable loop are constant in the loop (step A-4).

【0016】ベクトル化可能なループに含まれる条件分
岐の条件式が全て一定であれば、ループ中で一定な条件
分岐を含む第一中間テキスト24のベクトル化可能なル
ープのテキストをベクトル処理を用いたテキストに置き
換える。この時、条件分岐とその条件下の文や演算を条
件分岐とマスク情報無し命令を用いる内部テキストに書
き換え、第二中間テキスト25を作成する(ステップA
−6)。ベクトル化可能なループに含まれる条件分岐の
条件式が全て一定でないならば、条件分岐を含む第一中
間テキスト24のベクトル化可能なループのテキストを
ベクトル処理を用いたテキストに置き換える。この時、
条件分岐とその条件下の文や演算を条件分岐に対して条
件式演算結果よりマスク情報データを作成し、そのマス
ク情報データを用いたマスク情報付きの命令を用いる内
部テキストに書き換え、第二中間テキスト25を作成す
る(ステップA−7)。生成された第二中間テキスト2
5は、ベクトル演算最適化手段224によりテキストの
最適化をおこなう(ステップA−8)。最適化後の第二
中間テキスト25は、コード生成手段23により目的プ
ログラム1の生成処理をされる(ステップA−9)。
If the conditional expressions of the conditional branches included in the vectorizable loop are all constant, the vectorized loop text of the first intermediate text 24 including the constant conditional branches in the loop is subjected to vector processing. Replace with the existing text. At this time, the conditional branch and the statement or operation under the condition are rewritten into the internal text using the conditional branch and the instruction without mask information, and the second intermediate text 25 is created (step A).
-6). If the conditional expressions of the conditional branches included in the vectorizable loop are not all constant, the text of the vectorizable loop of the first intermediate text 24 including the conditional branch is replaced with text using vector processing. At this time,
The conditional branch and the statements and operations under the condition create mask information data from the result of the conditional expression operation for the conditional branch, and rewrite it into an internal text using an instruction with mask information using the mask information data. The text 25 is created (step A-7). Generated second intermediate text 2
Step 5 optimizes the text by the vector operation optimizing means 224 (step A-8). The second intermediate text 25 after the optimization is subjected to the generation processing of the target program 1 by the code generation means 23 (step A-9).

【0017】以上の処理(A−2乃至A−9)を中間テ
キストのベクトル化可能なループについて繰り返す(ス
テップA−10)。
The above processing (A-2 to A-9) is repeated for a loop that can vectorize the intermediate text (step A-10).

【0018】[0018]

【発明の効果】本発明では、コンパイル時にベクトル化
されるループ中にある全ての条件分岐の条件式がループ
で一定であることが判明したならば、条件分岐命令やマ
スク情報無しベクトル命令を用いた命令列により目的プ
ログラムを作成する。これにより目的プログラムサイズ
を大きくすることなく、目的プログラムを作成できる。
これに加えて、従来ベクトル化されたループ中には作成
されなかった条件分岐命令を作成するため、条件分岐命
令列に対する最適化が行うことができ、目的プログラム
の実行時間短縮がはかれる。
According to the present invention, if it is found that the conditional expressions of all conditional branches in a loop to be vectorized at the time of compilation are constant in the loop, a conditional branch instruction or a vector instruction without mask information is used. A target program is created using the instruction sequence. Thus, the target program can be created without increasing the target program size.
In addition, since a conditional branch instruction that has not been created in the conventional vectorized loop is created, optimization of the conditional branch instruction sequence can be performed, and the execution time of the target program can be reduced.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の一実施例である条件分岐を含むループ
のベクトル化を備える言語翻訳処理装置の機能ブロック
図である。
FIG. 1 is a functional block diagram of a language translation processing apparatus provided with vectorization of a loop including a conditional branch according to an embodiment of the present invention.

【図2】本発明の一実施例である言語翻訳処理のフロー
チャートである。
FIG. 2 is a flowchart of a language translation process according to an embodiment of the present invention.

【図3】本発明の条件分岐を含むループのベクトル化方
法をプログラム処理としたときのコンピュータと処理プ
ログラムを格納した記録媒体である。
FIG. 3 is a recording medium storing a computer and a processing program when a method for vectorizing a loop including a conditional branch of the present invention is a program processing.

【図4】条件分岐をループの外側で行う様にする最適化
方法における、元の原始プログラムである。最適化後の
原始でプログラムある。
FIG. 4 shows an original source program in an optimization method in which a conditional branch is performed outside a loop. Primitive program after optimization.

【図5】条件分岐をループの外側で行う様にする最適化
方法における、最適化後の原始プログラムである。
FIG. 5 is a source program after optimization in an optimization method in which conditional branching is performed outside a loop.

【図6】条件下の文に着目し異なる条件下にある同一の
文や演算をマスク情報無し命令で実行しておき、その値
をマスク情報付き命令で実行する実行時間短縮方法にお
ける、元の原始プログラムである。
FIG. 6 focuses on the statement under the condition, executes the same statement or operation under different conditions with an instruction without mask information, and executes the original value in the execution time reduction method of executing the value with the instruction with mask information. It is a primitive program.

【図7】条件下の文に着目し異なる条件下にある同一の
文や演算をマスク情報無し命令で実行しておき、その値
をマスク情報付き命令で実行する実行時間短縮方法にお
ける、実行時間短縮化後の原始プログラムである。
FIG. 7 is an execution time in the execution time reduction method in which the same statement or operation under different conditions is executed by an instruction without mask information, and the value is executed by an instruction with mask information. This is the source program after shortening.

【図8】条件によっては全く実行されない文が、必ず実
行されしまう場合における、原始プログラムである。
FIG. 8 shows a source program in a case where a statement that is not executed at all depending on conditions is always executed.

【図9】条件によっては全く実行されない文が、必ず実
行されしまう場合における、実行時間短縮化後の原始プ
ログラムである。
FIG. 9 shows a source program after execution time reduction when a statement that is not executed at all depending on conditions is always executed.

【符号の説明】[Explanation of symbols]

1 原始プログラム 2 言語翻訳処理装置 3 目的プログラム 21 構文解析手段 22 ベクトル化処理部 23 コード生成手段 24 第一中間テキスト 25 第二中間テキスト 50 コンピュータ 51 記録媒体 221 構造解析手段 222 条件分岐解析手段 223 ベクトルテキスト生成手段 224 ベクトル演算最適化手段 DESCRIPTION OF SYMBOLS 1 Source program 2 Language translation processing apparatus 3 Objective program 21 Syntax analysis means 22 Vectorization processing part 23 Code generation means 24 First intermediate text 25 Second intermediate text 50 Computer 51 Recording medium 221 Structural analysis means 222 Conditional branch analysis means 223 Vector Text generation means 224 Vector operation optimization means

Claims (8)

【特許請求の範囲】[Claims] 【請求項1】 少なくともひとつのベクトルレジスタ
と、条件付き命令を処理する際のマスク情報を格納する
ベクトル制御レジスタとを有するベクトル処理機構を持
つ計算機の原始プログラムから目的プログラムを作成す
る言語翻訳処理装置において、 前記原始プログラムを読み込み構文解析を行い第一の中
間テキストを作成する第一の手段と、前記第一の中間テ
キストの構造解析を行い前記原始プログラム内のベクト
ル化可能なループを抽出する第二の手段と、前記第一の
中間テキストを用いて前記原始プログラムのループ中の
条件分岐の条件がループ内で一定であるかを判断する第
三の手段と、前記第三の手段の判断に基づき、条件分岐
命令とマスク情報無しベクトル命令用いた第二の中間テ
キストを作成する第四の手段と、前記第二の中間テキス
トから目的プログラムを作成する第五の手段を有するこ
とを特徴とする言語翻訳処理装置。
1. A language translation processing device for creating a target program from a source program of a computer having a vector processing mechanism having at least one vector register and a vector control register for storing mask information for processing a conditional instruction. A first means for reading the source program and performing a syntax analysis to create a first intermediate text; and a second means for performing a structural analysis of the first intermediate text and extracting a vectorizable loop in the source program A second means, a third means for determining whether the condition of the conditional branch in the loop of the source program is constant in the loop using the first intermediate text, and A fourth means for generating a second intermediate text using a conditional branch instruction and a vector instruction without mask information based on the second instruction; Language translation processing apparatus characterized by having a fifth means for creating the desired program from among the text.
【請求項2】 前記第二の中間テキストからベクトル
化されたループ内に含まれる条件式がループ中で一定で
ある条件分岐命令の条件下の命令列に対し、条件分岐の
最適化を行う第六の手段をさらに有することを特徴とす
る請求項1記載の言語翻訳処理装置。
2. A method for optimizing a conditional branch for an instruction sequence under a condition of a conditional branch instruction in which a conditional expression included in a loop vectorized from the second intermediate text is constant in the loop. 2. The language translation processing device according to claim 1, further comprising: six means.
【請求項3】 前記第一乃至第五の手段をプログラム
処理としたことを特徴とする請求項1記載の言語翻訳処
理装置。
3. The language translation processing apparatus according to claim 1, wherein said first to fifth means are program processing.
【請求項4】 前記第一乃至第六の手段をプログラム
処理としたこと特徴とする請求項2記載の言語翻訳処理
装置。
4. The language translation processing apparatus according to claim 2, wherein said first to sixth means are program processing.
【請求項5】 少なくともひとつのベクトルレジスタ
と、条件付き命令を処理する際のマスク情報を格納する
ベクトル制御レジスタとを有するベクトル処理機構を持
つ計算機の原始プログラムから目的プログラムを作成す
る言語翻訳処理方法において、 前記原始プログラムを読み込み構文解析を行い第一の中
間テキストを作成する第一のステップと、前記第一の中
間テキストの構造解析を行い前記原始プログラム内のベ
クトル化可能なループを抽出する第二のステップと、前
記第一の中間テキストを用いて前記原始プログラムのル
ープ中の条件分岐の条件がループ内で一定であるかを判
断する第三のステップと、前記第三の手段の判断に基づ
き、条件分岐命令とマスク情報無しベクトル命令用いた
第二の中間テキストを作成する第四のステップと、前記
第二の中間テキストから目的プログラムを作成する第五
のステップを有することを特徴とする言語翻訳処理方
法。
5. A language translation processing method for creating a target program from a source program of a computer having a vector processing mechanism having at least one vector register and a vector control register for storing mask information for processing a conditional instruction. In the first step, a first step of reading the source program and performing a syntax analysis to create a first intermediate text, and a second step of performing a structural analysis of the first intermediate text and extracting a vectorizable loop in the source program A second step, a third step of using the first intermediate text to determine whether a condition of a conditional branch in the loop of the source program is constant in the loop, and a determination of the third means A fourth step of creating a second intermediate text using a conditional branch instruction and a vector instruction without mask information based on the If, language translation processing method characterized by having a fifth step of creating the desired program from said second intermediate text.
【請求項6】 前記第二の中間テキストからベクトル
化されたループ内に含まれる条件式がループ中で一定で
ある条件分岐命令の条件下の命令列に対し、条件分岐の
最適化を行う第六のステップをさらに有することを特徴
とする請求項5記載の言語翻訳処理方法。
6. A method for optimizing a conditional branch for an instruction sequence under a condition of a conditional branch instruction in which a conditional expression included in a loop vectorized from the second intermediate text is constant in the loop. The language translation processing method according to claim 5, further comprising six steps.
【請求項7】 請求項5記載の第一から第五のステッ
プをコンピュータに実行させるプログラムを格納した記
録媒体。
7. A recording medium storing a program for causing a computer to execute the first to fifth steps according to claim 5.
【請求項8】 請求項6記載の第一から第六のステッ
プをコンピュータに実行させるプログラムを格納した記
録媒体。
8. A recording medium storing a program for causing a computer to execute the first to sixth steps according to claim 6.
JP43498A 1998-01-05 1998-01-05 Language translation processor, language translation processing method and record medium recording language translation processing program Pending JPH11195011A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP43498A JPH11195011A (en) 1998-01-05 1998-01-05 Language translation processor, language translation processing method and record medium recording language translation processing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP43498A JPH11195011A (en) 1998-01-05 1998-01-05 Language translation processor, language translation processing method and record medium recording language translation processing program

Publications (1)

Publication Number Publication Date
JPH11195011A true JPH11195011A (en) 1999-07-21

Family

ID=11473717

Family Applications (1)

Application Number Title Priority Date Filing Date
JP43498A Pending JPH11195011A (en) 1998-01-05 1998-01-05 Language translation processor, language translation processing method and record medium recording language translation processing program

Country Status (1)

Country Link
JP (1) JPH11195011A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001265606A (en) * 2000-01-13 2001-09-28 Fujitsu Ltd Information processor
JP2012150811A (en) * 2011-01-20 2012-08-09 Fujitsu Ltd Method and system for validating c++ programs using symbolic execution
CN111008266A (en) * 2019-12-06 2020-04-14 北京金山数字娱乐科技有限公司 Training method and device of text analysis model and text analysis method and device

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001265606A (en) * 2000-01-13 2001-09-28 Fujitsu Ltd Information processor
JP4579425B2 (en) * 2000-01-13 2010-11-10 富士通株式会社 Information processing device
JP2012150811A (en) * 2011-01-20 2012-08-09 Fujitsu Ltd Method and system for validating c++ programs using symbolic execution
CN111008266A (en) * 2019-12-06 2020-04-14 北京金山数字娱乐科技有限公司 Training method and device of text analysis model and text analysis method and device
CN111008266B (en) * 2019-12-06 2023-09-26 北京金山数字娱乐科技有限公司 Training method and device of text analysis model, text analysis method and device

Similar Documents

Publication Publication Date Title
US7917899B2 (en) Program development apparatus, method for developing a program, and a computer program product for executing an application for a program development apparatus
JP4157016B2 (en) Compiler apparatus and compiling method
JPH10228382A (en) Compiling system
JP2003029977A (en) Computer system, exception processing program and conversion program for the same and compiling method
KR20020070809A (en) Optimizing Post-Link Code
US6301652B1 (en) Instruction cache alignment mechanism for branch targets based on predicted execution frequencies
JPH11195011A (en) Language translation processor, language translation processing method and record medium recording language translation processing program
JP2001125792A (en) Optimization promoting device
KR20080045545A (en) Method of pre-processing conditional region
CN113031952A (en) Method and device for determining execution code of deep learning model and storage medium
JP2008071065A (en) Compile device, method, program and storage medium for performing in-line expansion
JP2008015665A (en) Program analysis method and program analyzer
JPH1196018A (en) Compiling device, its method and computer-readable recording medium recording compiling execution program
JP2002082811A (en) Compiling method and recording medium
JP3031767B2 (en) Natural language processor
JP2003067195A (en) Optimization compile method and optimization compile device
JP2004139369A (en) Analysis method for pointer pointing constant address domain
JPH04343140A (en) Parallelized processing system
JP2000089964A (en) Information processor, its method and providing medium
JP2000242504A (en) Compiler device
JP3367438B2 (en) Conditional execution processing device
JPH05120323A (en) System for optimizing vector calculation under if sentence
CN118312153A (en) Compiler back-end code generation method, device and storage medium
JPH05108372A (en) System for outputting compiler optimization processing content
JP2003337709A (en) Compiling method

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20020625