Mention cton_frontend when discussing SSA construction.
This commit is contained in:
@@ -74,13 +74,15 @@ SSA values: In the entry block, ``v4`` is the initial value. In the loop block
|
|||||||
variable during each iteration. Finally, ``v12`` is computed as the induction
|
variable during each iteration. Finally, ``v12`` is computed as the induction
|
||||||
variable value for the next iteration.
|
variable value for the next iteration.
|
||||||
|
|
||||||
It can be difficult to generate correct SSA form if the program being converted
|
The `cton_frontend` crate contains utilities for translating from programs
|
||||||
into Cretonne :term:`IL` contains multiple assignments to the same variables.
|
containing multiple assignments to the same variables into SSA form for
|
||||||
Such variables can be presented to Cretonne as :term:`stack slot`\s instead.
|
Cretonne :term:`IL`.
|
||||||
|
|
||||||
|
Such variables can also be presented to Cretonne as :term:`stack slot`\s.
|
||||||
Stack slots are accessed with the :inst:`stack_store` and :inst:`stack_load`
|
Stack slots are accessed with the :inst:`stack_store` and :inst:`stack_load`
|
||||||
instructions which behave more like variable accesses in a typical programming
|
instructions, and can have their address taken with :inst:`stack_addr`, which
|
||||||
language. Cretonne can perform the necessary data-flow analysis to convert stack
|
supports C-like programming languages where local variables can have their
|
||||||
slots to SSA form.
|
address taken.
|
||||||
|
|
||||||
.. _value-types:
|
.. _value-types:
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user