Sort the glossary alphabetically.

This commit is contained in:
Dan Gohman
2017-10-18 14:46:33 -07:00
parent ee0f061ee8
commit 6d44508055

View File

@@ -1005,19 +1005,32 @@ Glossary
.. glossary:: .. glossary::
intermediate language basic block
IL A maximal sequence of instructions that can only be entered from the
The language used to describe functions to Cretonne. This reference top, and that contains no branch or terminator instructions except for
describes the syntax and semantics of the Cretonne IL. The IL has two the last instruction.
forms: Textual and an in-memory intermediate representation
(:term:`IR`).
intermediate representation entry block
IR The :term:`EBB` that is executed first in a function. Currently, a
The in-memory representation of :term:`IL`. The data structures Cretonne function must have exactly one entry block which must be the
Cretonne uses to represent a program internally are called the first block in the function. The types of the entry block arguments must
intermediate representation. Cretonne's IR can be converted to text match the types of arguments in the function signature.
losslessly.
extended basic block
EBB
A maximal sequence of instructions that can only be entered from the
top, and that contains no :term:`terminator instruction`\s except for
the last one. An EBB can contain conditional branches that can fall
through to the following instructions in the block, but only the first
instruction in the EBB can be a branch target.
The last instruction in an EBB must be a :term:`terminator instruction`,
so execution cannot flow through to the next EBB in the function. (But
there may be a branch to the next EBB.)
Note that some textbooks define an EBB as a maximal *subtree* in the
control flow graph where only the root can be a join node. This
definition is not equivalent to Cretonne EBBs.
function signature function signature
A function signature describes how to call a function. It consists of: A function signature describes how to call a function. It consists of:
@@ -1046,26 +1059,23 @@ Glossary
The extended basic blocks which contain all the executable code in a The extended basic blocks which contain all the executable code in a
function. The function body follows the function preamble. function. The function body follows the function preamble.
basic block intermediate language
A maximal sequence of instructions that can only be entered from the IL
top, and that contains no branch or terminator instructions except for The language used to describe functions to Cretonne. This reference
the last instruction. describes the syntax and semantics of the Cretonne IL. The IL has two
forms: Textual and an in-memory intermediate representation
(:term:`IR`).
extended basic block intermediate representation
EBB IR
A maximal sequence of instructions that can only be entered from the The in-memory representation of :term:`IL`. The data structures
top, and that contains no :term:`terminator instruction`\s except for Cretonne uses to represent a program internally are called the
the last one. An EBB can contain conditional branches that can fall intermediate representation. Cretonne's IR can be converted to text
through to the following instructions in the block, but only the first losslessly.
instruction in the EBB can be a branch target.
The last instruction in an EBB must be a :term:`terminator instruction`, stack slot
so execution cannot flow through to the next EBB in the function. (But A fixed size memory allocation in the current function's activation
there may be a branch to the next EBB.) frame. Also called a local variable.
Note that some textbooks define an EBB as a maximal *subtree* in the
control flow graph where only the root can be a join node. This
definition is not equivalent to Cretonne EBBs.
terminator instruction terminator instruction
A control flow instruction that unconditionally directs the flow of A control flow instruction that unconditionally directs the flow of
@@ -1075,13 +1085,3 @@ Glossary
The basic terminator instructions are :inst:`br`, :inst:`return`, and The basic terminator instructions are :inst:`br`, :inst:`return`, and
:inst:`trap`. Conditional branches and instructions that trap :inst:`trap`. Conditional branches and instructions that trap
conditionally are not terminator instructions. conditionally are not terminator instructions.
entry block
The :term:`EBB` that is executed first in a function. Currently, a
Cretonne function must have exactly one entry block which must be the
first block in the function. The types of the entry block arguments must
match the types of arguments in the function signature.
stack slot
A fixed size memory allocation in the current function's activation
frame. Also called a local variable.