翻訳と辞書
Words near each other
・ 静的
・ 静的コンプライアンス
・ 静的コード解析
・ 静的スコープ
・ 静的ストレッチ
・ 静的フィールド
・ 静的プログラム解析
・ 静的メソッド
・ 静的リンク
・ 静的力
静的単一代入
・ 静的単一代入形
・ 静的単一代入形式
・ 静的型
・ 静的型付け
・ 静的姿勢
・ 静的安定度
・ 静的構造因子
・ 静的破砕剤
・ 静的筋力


Dictionary Lists
翻訳と辞書 辞書検索 [ 開発暫定版 ]
スポンサード リンク

静的単一代入 : ミニ英和和英辞書
静的単一代入[せいてきたんいつだいにゅう]
=====================================
〔語彙分解〕的な部分一致の検索結果は以下の通りです。

静的 : [せいてき]
 (adj-na,n) static
: [まと, てき]
 【名詞】 1. mark 2. target 
: [ひとえ, たん]
 【名詞】 1. one layer 2. single 
単一 : [たんいつ]
 【名詞・形容詞】 1. single 2. simple, simplex 3. sole 4. individual 5. unitory
: [いち]
  1. (num) one 
一代 : [いちだい]
 【名詞】 1. generation 2. lifetime 3. age 
: [よ, しろ]
 【名詞】 1. world 2. society 3. age 4. generation 
代入 : [だいにゅう]
 (n,vs) substitution
: [にゅう]
 【名詞】 1. go in 

静的単一代入 : ウィキペディア日本語版
静的単一代入[せいてきたんいつだいにゅう]
静的単一代入(せいてきたんいつだいにゅう、)形式は、コンパイラ設計における 中間表現 (IR) のひとつで、各変数が一度のみ代入されるよう定義されたものである。もともとの中間表現における変数は「バージョン」に分割され、全ての変数の定義がバージョンを表現できるよう、通例新たな変数は元の名前に添え字を付けて表現される。SSA ではuse-def 連鎖が明示的であり、連鎖は要素を一つだけ持つ。
SSA はRon CytronJeanne FerranteBarry RosenMark WegmanKen Zadeck および IBM の研究者たちにより1980年代に開発された。
SchemeMLHaskell などの関数型言語のコンパイラでは、FortranC などのコンパイラで SSA の利用が期待される箇所で継続渡しスタイル (CPS) を用いるのが一般的である。SSA と CPS は形式的に等価であり、最適化やコードの変換などがいずれかに施された場合、もう片方にも同様に適用することができる。
==SSA の利点==
変数の性質を簡単なものにすることにより様々なコンパイラ最適化を簡略化すると同時にその結果を改善することが SSA の第一の利点である。
例として、下記のようなコードを考える。
y := 1
y := 2
x := y
人間であれば、最初の代入が不要であり、3行目で使用されている y の値が2行目の代入の結果であることが分かる。これをプログラムで行う場合には、reaching definition analysisにより求める必要がある。しかし、プログラムが静的単一代入形式であれば、いずれも即座に判定可能である。
y1 := 1
y2 := 2
x1 := y2
SSA を利用することにより、下記のコンパイラ最適化アルゴリズムを実現したり、あるいは改善することができる。
*定数畳み込み
*疎な条件分岐を考慮した定数伝播
*デッドコード削除
*大域値番号付け
*部分冗長性除去
*演算子強度低減
*レジスタ割り付け

抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)
ウィキペディアで「静的単一代入」の詳細全文を読む




スポンサード リンク
翻訳と辞書 : 翻訳のためのインターネットリソース

Copyright(C) kotoba.ne.jp 1997-2016. All Rights Reserved.