summaryrefslogtreecommitdiffstats
path: root/content/zettel/3c3b.md
blob: 7b68517eaf28b47284ab986cb518ac9c983b2656 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
+++
title = "General overview"
author = "Yann Herklotz"
tags = []
categories = []
backlinks = ["3c3a", "2e1c6a"]
forwardlinks = ["1b8", "3c3c", "3c3b1"]
zettelid = "3c3b"
+++

The following two intermediate languages were created for scheduling:

-   **RTLPar**: A basic block version of RTL with parallel blocks inside
    a basic block.
-   **RTLBlock**: A standard basic block.

It should be possible to extend these with conditional execution to
support hyperblocks ([\#1b8]), however the translation validation might
have to change for that.

-   **RTL** is translated to **RTLBlock** using translation validation
    to prove the correctness of the generation of basic blocks.
-   **RTLBlock** is translated to **RTLPar** by scheduling, which is
    also proven using translation validation.
-   **RTLPar** is finally translated to **HTL** in a verified manner, as
    no optimisations need to be performed.

This should replace the verified **RTL** to **HTL** translation.

  [\#1b8]: /zettel/1b8