~/talk

Beyond Relooper: Recursive Translation of Unstructured Control Flow to Structu…

Talkat ICFP 2022 · 2022-09-11..09-16· [compilers-and-language-design]
links:none on file
slides:none on file

Translates arbitrary intraprocedural control-flow graphs into structured WebAssembly constructs and reduces the classic three-pass Peterson/Kasami/Tokura method to a single-pass translation by replacing side-effect emissions with a recursive function that returns immutable ASTs. Uses reverse-postorder numbering and a dominator tree to decide loop wrappers, if-ends, and multilevel breaks; handles reducible graphs (irreducible ones require prior transformation). Implementation is slated for Glasgow Haskell Compiler and has evaluated artifacts available.

AI-written summary · about

  1. 0:00Start
  2. 2:43Not all control flow is structured
  3. 6:46Code shape determined by graph properties
  4. 7:30Code placement determined by dominance
  5. 10:38Recursion over dominator tree
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.