Language.PowerPC.RTL
- data RTL a = RTL (Stmt -> (a, Stmt))
- data Stmt
- data E
- = V String
- | C Integer
- | Add E E
- | Sub E E
- | Mul E E
- | Div E E
- | Not E
- | And E E
- | Or E E
- | BWNot E
- | BWAnd E E
- | BWOr E E
- | Shift E E
- | Eq E E
- | Lt E E
- | Null
- | Bit E Int E
- | AA
- | BA
- | BB
- | BD
- | BF
- | BI
- | BO
- | BT
- | CA'
- | CIA
- | CR'
- | CRField E
- | CTR
- | D
- | EA
- | EXTS Int E
- | GPR E
- | L10
- | L15
- | LI
- | LK
- | LR
- | MASK E E
- | MB5
- | MB6
- | ME5
- | ME6
- | MEM E Int
- | MSR
- | NIA
- | OE
- | RAI
- | RA
- | RB
- | Rc
- | ROTL32 E E
- | ROTL64 E E
- | RS
- | RSI
- | RT
- | RTI
- | SH5
- | SH6
- | SI
- | SPR
- | UI
- | XER
- data Cond
- stmt :: RTL () -> Stmt
- (<==) :: E -> E -> RTL ()
- assign :: [Cond] -> E -> E -> RTL ()
- cmp :: [Cond] -> E -> E -> RTL ()
- if' :: E -> RTL () -> RTL () -> RTL ()
- while :: E -> RTL () -> RTL ()
- (==.) :: E -> E -> E
- (/=.) :: E -> E -> E
- (<.) :: E -> E -> E
- (<=.) :: E -> E -> E
- (>.) :: E -> E -> E
- (>=.) :: E -> E -> E
- (&&.) :: E -> E -> E
- (||.) :: E -> E -> E
Documentation
Constructors
| V String | |
| C Integer | |
| Add E E | |
| Sub E E | |
| Mul E E | |
| Div E E | |
| Not E | |
| And E E | |
| Or E E | |
| BWNot E | |
| BWAnd E E | |
| BWOr E E | |
| Shift E E | |
| Eq E E | |
| Lt E E | |
| Null | |
| Bit E Int E | |
| AA | |
| BA | |
| BB | |
| BD | |
| BF | |
| BI | |
| BO | |
| BT | |
| CA' | |
| CIA | |
| CR' | |
| CRField E | |
| CTR | |
| D | |
| EA | |
| EXTS Int E | |
| GPR E | |
| L10 | |
| L15 | |
| LI | |
| LK | |
| LR | |
| MASK E E | Mask start stop |
| MB5 | |
| MB6 | |
| ME5 | |
| ME6 | |
| MEM E Int | |
| MSR | |
| NIA | |
| OE | |
| RAI | |
| RA | |
| RB | |
| Rc | |
| ROTL32 E E | ROTL32 value amount |
| ROTL64 E E | ROTL64 value amount |
| RS | |
| RSI | |
| RT | |
| RTI | |
| SH5 | |
| SH6 | |
| SI | |
| SPR | |
| UI | |
| XER |