RSSA: a reversible SSA form

Research output: Chapter in Book/Report/Conference proceedingArticle in proceedingsResearchpeer-review

Standard

RSSA : a reversible SSA form. / Mogensen, Torben Ægidius.

Perspectives of System Informatics: 10th International Andrei Ershov Informatics Conference, PSI 2015, Revised Selected Papers. ed. / Manuel Mazzara; Andrei Voronkov. Springer, 2016. p. 203-217 (Lecture notes in computer science, Vol. 9609).

Research output: Chapter in Book/Report/Conference proceedingArticle in proceedingsResearchpeer-review

Harvard

Mogensen, TÆ 2016, RSSA: a reversible SSA form. in M Mazzara & A Voronkov (eds), Perspectives of System Informatics: 10th International Andrei Ershov Informatics Conference, PSI 2015, Revised Selected Papers. Springer, Lecture notes in computer science, vol. 9609, pp. 203-217, 10th International Andrei Ershov Informatics Conference on Perspectives of System Informatics, PSI 2015, Kazan and Innopolis, Russian Federation, 24/08/2015. https://doi.org/10.1007/978-3-319-41579-6_16

APA

Mogensen, T. Æ. (2016). RSSA: a reversible SSA form. In M. Mazzara, & A. Voronkov (Eds.), Perspectives of System Informatics: 10th International Andrei Ershov Informatics Conference, PSI 2015, Revised Selected Papers (pp. 203-217). Springer. Lecture notes in computer science Vol. 9609 https://doi.org/10.1007/978-3-319-41579-6_16

Vancouver

Mogensen TÆ. RSSA: a reversible SSA form. In Mazzara M, Voronkov A, editors, Perspectives of System Informatics: 10th International Andrei Ershov Informatics Conference, PSI 2015, Revised Selected Papers. Springer. 2016. p. 203-217. (Lecture notes in computer science, Vol. 9609). https://doi.org/10.1007/978-3-319-41579-6_16

Author

Mogensen, Torben Ægidius. / RSSA : a reversible SSA form. Perspectives of System Informatics: 10th International Andrei Ershov Informatics Conference, PSI 2015, Revised Selected Papers. editor / Manuel Mazzara ; Andrei Voronkov. Springer, 2016. pp. 203-217 (Lecture notes in computer science, Vol. 9609).

Bibtex

@inproceedings{737abda721434c3c808369af6f6c2a75,
title = "RSSA: a reversible SSA form",
abstract = "The SSA form (Static Single Assignment form) is used in compilers as an intermediate language as an alternative to traditional three-address code because code in SSA form is easier to analyse and optimize using data-flow analysis such as common-subexpression elimination, value numbering, register allocation and so on. We introduce RSSA, a reversible variant of the SSA form suitable as an intermediate language for reversible programming languages that are compiled to reversible machine language. The main issues in making SSA reversible are the unsuitability for SSA of the reversible updates and exchanges that are traditional in reversible languages and the need for ϕ-nodes on both joins and splits of control-flow. The first issue is handled by making selected uses of a variable destroy the variable and the latter by adding parameters to labels. We show how programs in the reversible intermediate language RIL can be translated into RSSA and discuss copy propagation, constant propagation and register allocation in the context of RSSA.",
author = "Mogensen, {Torben {\AE}gidius}",
year = "2016",
doi = "10.1007/978-3-319-41579-6_16",
language = "English",
isbn = "978-3-319-41578-9",
series = "Lecture notes in computer science",
publisher = "Springer",
pages = "203--217",
editor = "Manuel Mazzara and Andrei Voronkov",
booktitle = "Perspectives of System Informatics",
address = "Switzerland",
note = "10th International Andrei Ershov Informatics Conference on Perspectives of System Informatics, PSI 2015 ; Conference date: 24-08-2015 Through 27-08-2015",

}

RIS

TY - GEN

T1 - RSSA

T2 - 10th International Andrei Ershov Informatics Conference on Perspectives of System Informatics, PSI 2015

AU - Mogensen, Torben Ægidius

PY - 2016

Y1 - 2016

N2 - The SSA form (Static Single Assignment form) is used in compilers as an intermediate language as an alternative to traditional three-address code because code in SSA form is easier to analyse and optimize using data-flow analysis such as common-subexpression elimination, value numbering, register allocation and so on. We introduce RSSA, a reversible variant of the SSA form suitable as an intermediate language for reversible programming languages that are compiled to reversible machine language. The main issues in making SSA reversible are the unsuitability for SSA of the reversible updates and exchanges that are traditional in reversible languages and the need for ϕ-nodes on both joins and splits of control-flow. The first issue is handled by making selected uses of a variable destroy the variable and the latter by adding parameters to labels. We show how programs in the reversible intermediate language RIL can be translated into RSSA and discuss copy propagation, constant propagation and register allocation in the context of RSSA.

AB - The SSA form (Static Single Assignment form) is used in compilers as an intermediate language as an alternative to traditional three-address code because code in SSA form is easier to analyse and optimize using data-flow analysis such as common-subexpression elimination, value numbering, register allocation and so on. We introduce RSSA, a reversible variant of the SSA form suitable as an intermediate language for reversible programming languages that are compiled to reversible machine language. The main issues in making SSA reversible are the unsuitability for SSA of the reversible updates and exchanges that are traditional in reversible languages and the need for ϕ-nodes on both joins and splits of control-flow. The first issue is handled by making selected uses of a variable destroy the variable and the latter by adding parameters to labels. We show how programs in the reversible intermediate language RIL can be translated into RSSA and discuss copy propagation, constant propagation and register allocation in the context of RSSA.

U2 - 10.1007/978-3-319-41579-6_16

DO - 10.1007/978-3-319-41579-6_16

M3 - Article in proceedings

AN - SCOPUS:84979084439

SN - 978-3-319-41578-9

T3 - Lecture notes in computer science

SP - 203

EP - 217

BT - Perspectives of System Informatics

A2 - Mazzara, Manuel

A2 - Voronkov, Andrei

PB - Springer

Y2 - 24 August 2015 through 27 August 2015

ER -

ID: 168284239