diff options
Diffstat (limited to 'content/zettel/2b1b.md')
-rw-r--r-- | content/zettel/2b1b.md | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/content/zettel/2b1b.md b/content/zettel/2b1b.md new file mode 100644 index 0000000..1d060fa --- /dev/null +++ b/content/zettel/2b1b.md @@ -0,0 +1,31 @@ ++++ +title = "Classes of phi-predicated instructions" +author = "Yann Herklotz" +tags = [] +categories = [] +backlinks = ["2b1a"] +forwardlinks = ["2b1c"] +zettelid = "2b1b" ++++ + +There are various types of instructions that are needed. + +Phi function +: This is used to select the right value of the current register from + the two alternatives that were generated by predicated instructions. + +Predicated memory +: Memory operations need to be predicated, as these cannot have + side-effects, and therefore have to stall the pipeline if the + predicate is not evaluated yet. + +Unconditional compares +: These are the operations that update the values of the predicates + for the instructions, and also have to have the predicate updated + immediately. + +Internal join +: This instruction is needed to update the predicates to a join block, + and performs the join of all of the input predicates. This means + that if any of the control flow of those instructions was taken, + that the predicate will be set to true. |