SSA Destruction for Machine Code

Chapter 3 of this book provides a basic algorithm for destructing SSA that suffers from several limitations and drawbacks: First, it works under implicit assumptions that are not necessarily fulfiled at machine level; second, it must rely on subsequent phases to remove the numerous copy operations i...

Full description

Saved in:
Bibliographic Details
Published inSSA-based Compiler Design pp. 285 - 302
Main Author Rastello, Fabrice
Format Book Chapter
LanguageEnglish
Published Cham Springer International Publishing 2022
Subjects
Online AccessGet full text
ISBN303080514X
9783030805142
DOI10.1007/978-3-030-80515-9_21

Cover

More Information
Summary:Chapter 3 of this book provides a basic algorithm for destructing SSA that suffers from several limitations and drawbacks: First, it works under implicit assumptions that are not necessarily fulfiled at machine level; second, it must rely on subsequent phases to remove the numerous copy operations it inserts; finally, it subsequently increases the size of the intermediate representation, thus making it unsuitable for just-in-time compilation. The current chapter addresses these three issues: correctness (handling of machine-level constraints), code quality (elimination of copies), and algorithm efficiency (speed and memory footprint). The layout falls into three corresponding sections.
ISBN:303080514X
9783030805142
DOI:10.1007/978-3-030-80515-9_21