diff options
Diffstat (limited to 'il.sig')
-rw-r--r-- | il.sig | 21 |
1 files changed, 9 insertions, 12 deletions
@@ -14,6 +14,11 @@ signature IL = sig datatype accessClass = AC1 | AC2 | AC4 | AC8 + datatype cmpOp = + Cmpeq | Cmpneq | + Cmpul | Cmpug | Cmpule | Cmpuge | + Cmpsl | Cmpsg | Cmpsle | Cmpsge + datatype irIns = IrSet of vreg * setArg | IrAdd of vreg * vreg * vreg @@ -30,18 +35,8 @@ signature IL = sig | IrAnd of vreg * vreg * vreg | IrOr of vreg * vreg * vreg | IrXor of vreg * vreg * vreg - | IrEq of vreg * vreg * vreg - | IrNeq of vreg * vreg * vreg - - | IrCmpul of vreg * vreg * vreg - | IrCmpug of vreg * vreg * vreg - | IrCmpule of vreg * vreg * vreg - | IrCmpuge of vreg * vreg * vreg - | IrCmpsl of vreg * vreg * vreg - | IrCmpsg of vreg * vreg * vreg - | IrCmpsle of vreg * vreg * vreg - | IrCmpsge of vreg * vreg * vreg + | IrCmp of cmpOp * vreg * vreg * vreg | IrExtZero of vreg * vreg * accessClass | IrExtSign of vreg * vreg * accessClass @@ -72,10 +67,12 @@ signature IL = sig class: vregClass, use: int list, defs: int list, - t: regType + t: regType, + canFold: bool } val Pwc: (vregClass, word, 'a, 'b, 'c) a2printer + val Pac: (accessClass, 'a, 'b, 'c) a1printer datatype funcInfo = Fi of { name: int, |