commit cec21e6540ee2ddf6ad874f50ef1c69631ec37a4
parent 9fbb276e37125d1e14abbc854b9ad1d7c29f90e0
Author: Quentin Rameau <quinq@fifth.space>
Date: Fri, 20 Jan 2017 17:15:46 +0100
create an instruction index for the IL doc
Diffstat:
M | doc/il.txt | | | 50 | ++++++++++++++++++++++++++++++++++++++++++++++++++ |
1 file changed, 50 insertions(+), 0 deletions(-)
diff --git a/doc/il.txt b/doc/il.txt
@@ -30,6 +30,7 @@
* <@ Cast >
* <@ Call >
* <@ Phi >
+ * <@ Instructions index >
- 1. Basic Concepts
-------------------
@@ -800,3 +801,52 @@ An important remark about phi instructions is that QBE
assumes that if a variable is defined by a phi it respects
all the SSA invariants. So it is critical to not use phi
instructions unless you know exactly what you are doing.
+
+~ Instructions index
+~~~~~~~~~~~~~~~~~~~~~
+
+List of all QBE IL instructions, linked to their respective
+section.
+
+ * <@ Arithmetic and Bits >
+
+ `add`, `sub`, `div`, `mul`
+
+ `udiv`, `rem`, `urem`
+
+ `or`, `xor`, `and`
+
+ `sar`, `shr`, `shl`
+
+ * <@ Memory >
+
+ `stored`, `stores`, `storel`, `storew`, `storeh`, `storeb`
+
+ `loadd`, `loads`, `loadl`, `loadsw`, `loadsh`, `loadsb`
+
+ `alloc4`, `alloc8`, `alloc16`
+
+ * <@ Comparisons >
+
+ `ceqb`, `ceqh`, `ceqw`, `ceql`, `cneb`, `cneh`, `cnew`,
+ `cnel`, `csleb`, `csleh`, `cslew`, `cslel`, `csltb`,
+ `cslth`, `csltw`, `csltl`, `csgeb`, `csgeh`, `csgew`,
+ `csgel`, `csgtb`, `csgth`, `csgtw`, `csgtl`, `culeb`,
+ `culeh`, `culew`, `culel`, `cultb`, `culth`, `cultw`,
+ `cultl`, `cugeb`, `cugeh`, `cugew`, `cugel`, `cugtb`,
+ `cugth`, `cugtw`, `cugtl`
+
+ `ceqs`, `ceqd`, `cnes`, `cned`, `cles`, `cled`, `clts`,
+ `cltd`, `cges`, `cged`, `cgts`, `cgtd`, `cos`, `cod`,
+ `cuos`, `cuod`
+
+ * <@ Conversions >
+
+ `extsw`, `extsh`, `extsb`, `exts`
+ `extuw`, `extuh`, `extub`, `truncd`
+ `stosi`, `dtosi`, `swtof`, `sltof`
+
+ * <@ Cast >
+
+ `cast`
+