About: Static single-assignment form     Goto   Sponge   NotDistinct   Permalink

An Entity of Type : owl:Thing, within Data Space : dbpedia.demo.openlinksw.com associated with source document(s)
QRcode icon
http://dbpedia.demo.openlinksw.com/describe/?url=http%3A%2F%2Fdbpedia.org%2Fresource%2FStatic_single-assignment_form&invfp=IFP_OFF&sas=SAME_AS_OFF

In compiler design, static single assignment form (often abbreviated as SSA form or simply SSA) is a property of an intermediate representation (IR) that requires each variable to be assigned exactly once and defined before it is used. Existing variables in the original IR are split into versions, new variables typically indicated by the original name with a subscript in textbooks, so that every definition gets its own version. In SSA form, use-def chains are explicit and each contains a single element.

AttributesValues
rdfs:label
  • Static single assignment form (fr)
  • 静的単一代入 (ja)
  • Single Static Assignment (pl)
  • Static single-assignment form (en)
  • SSA (ru)
  • SSA (static single assignment form) (sv)
  • 静态单赋值形式 (zh)
rdfs:comment
  • 静的単一代入(せいてきたんいつだいにゅう、英: Static Single Assignment form, SSA)形式は、コンパイラ設計における 中間表現 (IR) のひとつで、各変数が一度のみ代入されるよう定義されたものである。もともとの中間表現における変数は「バージョン」に分割され、全ての変数の定義がバージョンを表現できるよう、通例新たな変数は元の名前に添え字を付けて表現される。SSA ではuse-def 連鎖が明示的であり、連鎖は要素を一つだけ持つ。 SSA は、Jeanne Ferrante、、Mark Wegman、 および IBM の研究者たちにより1980年代に開発された。 Scheme、ML、Haskell などの関数型言語のコンパイラでは、Fortran や C などのコンパイラで SSA の利用が期待される箇所で継続渡しスタイル (CPS) を用いるのが一般的である。SSA と CPS は形式的に等価であり、最適化やコードの変換などがいずれかに施された場合、もう片方にも同様に適用することができる。 (ja)
  • 在編譯器的設計中,靜態單賦值形式(static single assignment form,通常簡寫為SSA form或是SSA)是中間表示(IR,intermediate representation)的特性,每個變數僅被賦值一次。在原始的IR中,已存在的變數可被分割成許多不同的版本,在許多教科書當中通常會將舊的變數名稱加上一個下標而成為新的變數名稱,以至於標明每個變數及其不同版本。在SSA,(use-define chain,賦值代表define,使用變數代表use)是非常明確,而且每個僅包含單一元素。 SSA於1980年在IBM開始進行研究,它是由、、、及所開發。 SSA等同於一個持續傳遞式樣(CPS,continuation-passing style)的子集(不包含非本地端控制流程。當CPS被使用在IR,前者就不會發生),所以任何最佳化及轉換,都會適用於CPS。當我們期待在C或是Fortran的編譯器中使用SSA時,CPS已被廣泛地使用在函數程式語言的編譯器中,像是Scheme、ML及Haskell。 (zh)
  • In compiler design, static single assignment form (often abbreviated as SSA form or simply SSA) is a property of an intermediate representation (IR) that requires each variable to be assigned exactly once and defined before it is used. Existing variables in the original IR are split into versions, new variables typically indicated by the original name with a subscript in textbooks, so that every definition gets its own version. In SSA form, use-def chains are explicit and each contains a single element. (en)
  • En compilation informatique, static single assignment form (SSA), en français, forme statique à affectation unique est une représentation intermédiaire (RI) du code source d'un programme dont la particularité est d'astreindre chaque variable à n'être affectée qu'une et une seule fois. Les variables existantes dans la première représentation sont divisées en « versions », les nouvelles variables reprenant le nom original avec une extension. La représentation SSA a été développée par , Jeanne Ferrante, , , et , chercheurs pour IBM dans les années 1980. (fr)
  • Single Static Assignment to postać programu używana przez kompilatory w trakcie optymalizacji, w której każdej zmiennej wartość przypisuje się tylko raz. Np. dla programu: a = read; b = a + 2; a = a + 1; f(a, b); Postać SSA to: a1 = read; b1 = a1 + 2; a2 = a1 + 1; f(a2, b1); Jeśli wartość zmiennej w danym użyciu może pochodzić z kilku różnych przypisań, używa się specjalnej φ-funkcji. Dla: a = 2; if (b > 0) a = 4; f(a); Postacią SSA jest: a1 = 2; if (b > 0) a2 = 4; a3 = φ(a1, a2); f(a3); (pl)
  • Static single assignment form (ofta förkortat SSA form eller SSA) är inom datavetenskapen en representation av datorinstruktioner (intermediate code) där varje variabel tilldelas exakt en gång. Existerande variabler i den ursprungliga koden delas upp i versioner (i regel med ett index), så att varje tilldelning till en variabel får ett eget namn. Nedan följer ett enkelt program (före övergång till SSA) y := 4; y := 2; x := y; print(x) Efter övergång till SSA ser det ut så här y1 := 4; y2 := 2; x1 := y2; print(x1) (sv)
  • SSA (англ. Static single assignment form) — промежуточное представление, используемое компиляторами, в котором каждой переменной значение присваивается лишь единожды. Переменные исходной программы разбиваются на версии, обычно с помощью добавления суффикса, таким образом, что каждое присваивание осуществляется уникальной версии переменной. В SSA-представлении DU-цепи (англ. def-use) заданы явно и содержат единственный элемент. (ru)
foaf:depiction
  • http://commons.wikimedia.org/wiki/Special:FilePath/SSA_example1.1.png
  • http://commons.wikimedia.org/wiki/Special:FilePath/SSA_example1.2.png
  • http://commons.wikimedia.org/wiki/Special:FilePath/SSA_example1.3.png
dcterms:subject
Wikipage page ID
Wikipage revision ID
Link from a Wikipage to another Wikipage
Faceted Search & Find service v1.17_git139 as of Feb 29 2024


Alternative Linked Data Documents: ODE     Content Formats:   [cxml] [csv]     RDF   [text] [turtle] [ld+json] [rdf+json] [rdf+xml]     ODATA   [atom+xml] [odata+json]     Microdata   [microdata+json] [html]    About   
This material is Open Knowledge   W3C Semantic Web Technology [RDF Data] Valid XHTML + RDFa
OpenLink Virtuoso version 08.03.3330 as of Mar 19 2024, on Linux (x86_64-generic-linux-glibc212), Single-Server Edition (378 GB total memory, 59 GB memory in use)
Data on this page belongs to its respective rights holders.
Virtuoso Faceted Browser Copyright © 2009-2024 OpenLink Software