In compiler theory, copy propagation is the process of replacing the occurrences of targets of direct assignments with their values. A direct assignment is an instruction of the form x = y, which simply assigns the value of y to x. From the following code: y = xz = 3 + y Copy propagation would yield: z = 3 + x Copy propagation often makes use of reaching definitions, use-def chains and def-use chains when computing which occurrences of the target may be safely replaced. If all upwards exposed uses of the target may be safely modified, the assignment operation may be eliminated.
Attributes | Values |
---|
rdf:type
| |
rdfs:label
| - Copy propagation (en)
- Copy propagation (it)
- 复制传播 (zh)
|
rdfs:comment
| - 在计算机科学中,复制传播(copy propagation)是一种编译器优化技术,在GCC、LLVM等大型编译器中均有使用此技术。 假设有一直接赋值语句(direct assignment) ,则 是其赋值目标, 是这个赋值语句的值。那么复制传播便是将代码中所有出现的、能被替换的 ,统统直接替换成该语句的值 的一个过程。 在计算什么赋值目标能被安全地替换时,复制传播经常会使用到定义可达性、use-def链、def-use链这些算法。以 为例,如果 这个赋值目标在程序中的某个点 之前从未被重新赋值过,则在点 以前都可以安全地使用 替代 。 (zh)
- In compiler theory, copy propagation is the process of replacing the occurrences of targets of direct assignments with their values. A direct assignment is an instruction of the form x = y, which simply assigns the value of y to x. From the following code: y = xz = 3 + y Copy propagation would yield: z = 3 + x Copy propagation often makes use of reaching definitions, use-def chains and def-use chains when computing which occurrences of the target may be safely replaced. If all upwards exposed uses of the target may be safely modified, the assignment operation may be eliminated. (en)
- La copy propagation è una tecnica di ottimizzazione utilizzata dai compilatore per migliorare le prestazioni dei programmi informatici. La tecnica provvede a evitare copie multiple della stessa variabile eliminando eventuali variabili intermedie che vengono utilizzate come alias dai programmatori. Per esempio il seguente frammento di codice: y = xz = 3 + y verrà convertito con la copy propagation nel seguente codice z = 3 + x (it)
|
dct:subject
| |
Wikipage page ID
| |
Wikipage revision ID
| |
Link from a Wikipage to another Wikipage
| |
sameAs
| |
dbp:wikiPageUsesTemplate
| |
has abstract
| - In compiler theory, copy propagation is the process of replacing the occurrences of targets of direct assignments with their values. A direct assignment is an instruction of the form x = y, which simply assigns the value of y to x. From the following code: y = xz = 3 + y Copy propagation would yield: z = 3 + x Copy propagation often makes use of reaching definitions, use-def chains and def-use chains when computing which occurrences of the target may be safely replaced. If all upwards exposed uses of the target may be safely modified, the assignment operation may be eliminated. Copy propagation is a useful "clean up" optimization frequently used after other compiler passes have already been run. Some optimizations—such as classical implementations of elimination of common sub expressions—require that copy propagation be run afterwards in order to achieve an increase in efficiency. (en)
- La copy propagation è una tecnica di ottimizzazione utilizzata dai compilatore per migliorare le prestazioni dei programmi informatici. La tecnica provvede a evitare copie multiple della stessa variabile eliminando eventuali variabili intermedie che vengono utilizzate come alias dai programmatori. Per esempio il seguente frammento di codice: y = xz = 3 + y verrà convertito con la copy propagation nel seguente codice z = 3 + x La tecnica elimina inutili copie di dati tra le variabili, riducendo il codice e migliorando le prestazioni del codice in esecuzione. Questa tecnica si avvale spesso anche di tecniche di analisi dei grafi che individuano i valori reali delle variabili saltando tutti i passaggi intermedi. La copy propagation è un'ottimizzazione che non fa specifiche assunzioni sul tipo di codice o sulla struttura hardware che lo eseguirà e viene spesso utilizzata dopo che sono state eseguite altre ottimizzazioni per eliminare inutili variabili temporanee create durante i processi intermedi. (it)
- 在计算机科学中,复制传播(copy propagation)是一种编译器优化技术,在GCC、LLVM等大型编译器中均有使用此技术。 假设有一直接赋值语句(direct assignment) ,则 是其赋值目标, 是这个赋值语句的值。那么复制传播便是将代码中所有出现的、能被替换的 ,统统直接替换成该语句的值 的一个过程。 在计算什么赋值目标能被安全地替换时,复制传播经常会使用到定义可达性、use-def链、def-use链这些算法。以 为例,如果 这个赋值目标在程序中的某个点 之前从未被重新赋值过,则在点 以前都可以安全地使用 替代 。 (zh)
|
prov:wasDerivedFrom
| |
page length (characters) of wiki page
| |
foaf:isPrimaryTopicOf
| |
is Link from a Wikipage to another Wikipage
of | |
is foaf:primaryTopic
of | |