-- GENERATED by C->Haskell Compiler, version 0.28.1 Switcheroo, 1 April 2016 (Haskell)
-- Edit the ORIGNAL .chs file instead!


{-# LINE 1 "src/Hapstone/Internal/Ppc.chs" #-}
{-# LANGUAGE ForeignFunctionInterface #-}
{-|
Module      : Hapstone.Internal.Ppc
Description : PPC architecture header ported using C2HS + some boilerplate
Copyright   : (c) Inokentiy Babushkin, 2016
License     : BSD3
Maintainer  : Inokentiy Babushkin <inokentiy.babushkin@googlemail.com>
Stability   : experimental

This module contains PPC specific datatypes and their respective Storable
instances. Most of the types are used internally and can be looked up here.
Some of them are currently unused, as the headers only define them as symbolic
constants whose type is never used explicitly, which poses a problem for a
memory-safe port to the Haskell language, this is about to get fixed in a
future version.

Apart from that, because the module is generated using C2HS, some of the
documentation is misplaced or rendered incorrectly, so if in doubt, read the
source file.
-}
module Hapstone.Internal.Ppc where
import qualified Foreign.C.Types as C2HSImp
import qualified Foreign.Storable as C2HSImp






{-# LINE 25 "src/Hapstone/Internal/Ppc.chs" #-}


import Foreign
import Foreign.C.Types

-- | PPC branch codes for some branch instructions
data PpcBc = PpcBcInvalid
           | PpcBcGe
           | PpcBcLt
           | PpcBcLe
           | PpcBcGt
           | PpcBcNe
           | PpcBcEq
           | PpcBcNu
           | PpcBcUn
           | PpcBcNs
           | PpcBcSo
  deriving (Show,Eq,Bounded)
instance Enum PpcBc where
  succ PpcBcInvalid = PpcBcGe
  succ PpcBcGe = PpcBcLt
  succ PpcBcLt = PpcBcLe
  succ PpcBcLe = PpcBcGt
  succ PpcBcGt = PpcBcNe
  succ PpcBcNe = PpcBcEq
  succ PpcBcEq = PpcBcNu
  succ PpcBcNu = PpcBcUn
  succ PpcBcUn = PpcBcNs
  succ PpcBcNs = PpcBcSo
  succ PpcBcSo = error "PpcBc.succ: PpcBcSo has no successor"

  pred PpcBcGe = PpcBcInvalid
  pred PpcBcLt = PpcBcGe
  pred PpcBcLe = PpcBcLt
  pred PpcBcGt = PpcBcLe
  pred PpcBcNe = PpcBcGt
  pred PpcBcEq = PpcBcNe
  pred PpcBcNu = PpcBcEq
  pred PpcBcUn = PpcBcNu
  pred PpcBcNs = PpcBcUn
  pred PpcBcSo = PpcBcNs
  pred PpcBcInvalid = error "PpcBc.pred: PpcBcInvalid has no predecessor"

  enumFromTo from to = go from
    where
      end = fromEnum to
      go v = case compare (fromEnum v) end of
                 LT -> v : go (succ v)
                 EQ -> [v]
                 GT -> []

  enumFrom from = enumFromTo from PpcBcSo

  fromEnum PpcBcInvalid = 0
  fromEnum PpcBcGe = 4
  fromEnum PpcBcLt = 12
  fromEnum PpcBcLe = 36
  fromEnum PpcBcGt = 44
  fromEnum PpcBcNe = 68
  fromEnum PpcBcEq = 76
  fromEnum PpcBcNu = 100
  fromEnum PpcBcUn = 108
  fromEnum PpcBcNs = 132
  fromEnum PpcBcSo = 140

  toEnum 0 = PpcBcInvalid
  toEnum 4 = PpcBcGe
  toEnum 12 = PpcBcLt
  toEnum 36 = PpcBcLe
  toEnum 44 = PpcBcGt
  toEnum 68 = PpcBcNe
  toEnum 76 = PpcBcEq
  toEnum 100 = PpcBcNu
  toEnum 108 = PpcBcUn
  toEnum 132 = PpcBcNs
  toEnum 140 = PpcBcSo
  toEnum unmatched = error ("PpcBc.toEnum: Cannot match " ++ show unmatched)

{-# LINE 32 "src/Hapstone/Internal/Ppc.chs" #-}

-- | PPC branch hint for some branch instructions
data PpcBh = PpcBhInvalid
           | PpcBhPlus
           | PpcBhMinus
  deriving (Show,Eq,Bounded)
instance Enum PpcBh where
  succ PpcBhInvalid = PpcBhPlus
  succ PpcBhPlus = PpcBhMinus
  succ PpcBhMinus = error "PpcBh.succ: PpcBhMinus has no successor"

  pred PpcBhPlus = PpcBhInvalid
  pred PpcBhMinus = PpcBhPlus
  pred PpcBhInvalid = error "PpcBh.pred: PpcBhInvalid has no predecessor"

  enumFromTo from to = go from
    where
      end = fromEnum to
      go v = case compare (fromEnum v) end of
                 LT -> v : go (succ v)
                 EQ -> [v]
                 GT -> []

  enumFrom from = enumFromTo from PpcBhMinus

  fromEnum PpcBhInvalid = 0
  fromEnum PpcBhPlus = 1
  fromEnum PpcBhMinus = 2

  toEnum 0 = PpcBhInvalid
  toEnum 1 = PpcBhPlus
  toEnum 2 = PpcBhMinus
  toEnum unmatched = error ("PpcBh.toEnum: Cannot match " ++ show unmatched)

{-# LINE 35 "src/Hapstone/Internal/Ppc.chs" #-}


-- | PPC registers
data PpcReg = PpcRegInvalid
            | PpcRegCarry
            | PpcRegCc
            | PpcRegCr0
            | PpcRegCr1
            | PpcRegCr2
            | PpcRegCr3
            | PpcRegCr4
            | PpcRegCr5
            | PpcRegCr6
            | PpcRegCr7
            | PpcRegCtr
            | PpcRegF0
            | PpcRegF1
            | PpcRegF2
            | PpcRegF3
            | PpcRegF4
            | PpcRegF5
            | PpcRegF6
            | PpcRegF7
            | PpcRegF8
            | PpcRegF9
            | PpcRegF10
            | PpcRegF11
            | PpcRegF12
            | PpcRegF13
            | PpcRegF14
            | PpcRegF15
            | PpcRegF16
            | PpcRegF17
            | PpcRegF18
            | PpcRegF19
            | PpcRegF20
            | PpcRegF21
            | PpcRegF22
            | PpcRegF23
            | PpcRegF24
            | PpcRegF25
            | PpcRegF26
            | PpcRegF27
            | PpcRegF28
            | PpcRegF29
            | PpcRegF30
            | PpcRegF31
            | PpcRegLr
            | PpcRegR0
            | PpcRegR1
            | PpcRegR2
            | PpcRegR3
            | PpcRegR4
            | PpcRegR5
            | PpcRegR6
            | PpcRegR7
            | PpcRegR8
            | PpcRegR9
            | PpcRegR10
            | PpcRegR11
            | PpcRegR12
            | PpcRegR13
            | PpcRegR14
            | PpcRegR15
            | PpcRegR16
            | PpcRegR17
            | PpcRegR18
            | PpcRegR19
            | PpcRegR20
            | PpcRegR21
            | PpcRegR22
            | PpcRegR23
            | PpcRegR24
            | PpcRegR25
            | PpcRegR26
            | PpcRegR27
            | PpcRegR28
            | PpcRegR29
            | PpcRegR30
            | PpcRegR31
            | PpcRegV0
            | PpcRegV1
            | PpcRegV2
            | PpcRegV3
            | PpcRegV4
            | PpcRegV5
            | PpcRegV6
            | PpcRegV7
            | PpcRegV8
            | PpcRegV9
            | PpcRegV10
            | PpcRegV11
            | PpcRegV12
            | PpcRegV13
            | PpcRegV14
            | PpcRegV15
            | PpcRegV16
            | PpcRegV17
            | PpcRegV18
            | PpcRegV19
            | PpcRegV20
            | PpcRegV21
            | PpcRegV22
            | PpcRegV23
            | PpcRegV24
            | PpcRegV25
            | PpcRegV26
            | PpcRegV27
            | PpcRegV28
            | PpcRegV29
            | PpcRegV30
            | PpcRegV31
            | PpcRegVrsave
            | PpcRegVs0
            | PpcRegVs1
            | PpcRegVs2
            | PpcRegVs3
            | PpcRegVs4
            | PpcRegVs5
            | PpcRegVs6
            | PpcRegVs7
            | PpcRegVs8
            | PpcRegVs9
            | PpcRegVs10
            | PpcRegVs11
            | PpcRegVs12
            | PpcRegVs13
            | PpcRegVs14
            | PpcRegVs15
            | PpcRegVs16
            | PpcRegVs17
            | PpcRegVs18
            | PpcRegVs19
            | PpcRegVs20
            | PpcRegVs21
            | PpcRegVs22
            | PpcRegVs23
            | PpcRegVs24
            | PpcRegVs25
            | PpcRegVs26
            | PpcRegVs27
            | PpcRegVs28
            | PpcRegVs29
            | PpcRegVs30
            | PpcRegVs31
            | PpcRegVs32
            | PpcRegVs33
            | PpcRegVs34
            | PpcRegVs35
            | PpcRegVs36
            | PpcRegVs37
            | PpcRegVs38
            | PpcRegVs39
            | PpcRegVs40
            | PpcRegVs41
            | PpcRegVs42
            | PpcRegVs43
            | PpcRegVs44
            | PpcRegVs45
            | PpcRegVs46
            | PpcRegVs47
            | PpcRegVs48
            | PpcRegVs49
            | PpcRegVs50
            | PpcRegVs51
            | PpcRegVs52
            | PpcRegVs53
            | PpcRegVs54
            | PpcRegVs55
            | PpcRegVs56
            | PpcRegVs57
            | PpcRegVs58
            | PpcRegVs59
            | PpcRegVs60
            | PpcRegVs61
            | PpcRegVs62
            | PpcRegVs63
            | PpcRegRm
            | PpcRegCtr8
            | PpcRegLr8
            | PpcRegCr1eq
            | PpcRegEnding
  deriving (Show,Eq,Bounded)
instance Enum PpcReg where
  succ PpcRegInvalid = PpcRegCarry
  succ PpcRegCarry = PpcRegCc
  succ PpcRegCc = PpcRegCr0
  succ PpcRegCr0 = PpcRegCr1
  succ PpcRegCr1 = PpcRegCr2
  succ PpcRegCr2 = PpcRegCr3
  succ PpcRegCr3 = PpcRegCr4
  succ PpcRegCr4 = PpcRegCr5
  succ PpcRegCr5 = PpcRegCr6
  succ PpcRegCr6 = PpcRegCr7
  succ PpcRegCr7 = PpcRegCtr
  succ PpcRegCtr = PpcRegF0
  succ PpcRegF0 = PpcRegF1
  succ PpcRegF1 = PpcRegF2
  succ PpcRegF2 = PpcRegF3
  succ PpcRegF3 = PpcRegF4
  succ PpcRegF4 = PpcRegF5
  succ PpcRegF5 = PpcRegF6
  succ PpcRegF6 = PpcRegF7
  succ PpcRegF7 = PpcRegF8
  succ PpcRegF8 = PpcRegF9
  succ PpcRegF9 = PpcRegF10
  succ PpcRegF10 = PpcRegF11
  succ PpcRegF11 = PpcRegF12
  succ PpcRegF12 = PpcRegF13
  succ PpcRegF13 = PpcRegF14
  succ PpcRegF14 = PpcRegF15
  succ PpcRegF15 = PpcRegF16
  succ PpcRegF16 = PpcRegF17
  succ PpcRegF17 = PpcRegF18
  succ PpcRegF18 = PpcRegF19
  succ PpcRegF19 = PpcRegF20
  succ PpcRegF20 = PpcRegF21
  succ PpcRegF21 = PpcRegF22
  succ PpcRegF22 = PpcRegF23
  succ PpcRegF23 = PpcRegF24
  succ PpcRegF24 = PpcRegF25
  succ PpcRegF25 = PpcRegF26
  succ PpcRegF26 = PpcRegF27
  succ PpcRegF27 = PpcRegF28
  succ PpcRegF28 = PpcRegF29
  succ PpcRegF29 = PpcRegF30
  succ PpcRegF30 = PpcRegF31
  succ PpcRegF31 = PpcRegLr
  succ PpcRegLr = PpcRegR0
  succ PpcRegR0 = PpcRegR1
  succ PpcRegR1 = PpcRegR2
  succ PpcRegR2 = PpcRegR3
  succ PpcRegR3 = PpcRegR4
  succ PpcRegR4 = PpcRegR5
  succ PpcRegR5 = PpcRegR6
  succ PpcRegR6 = PpcRegR7
  succ PpcRegR7 = PpcRegR8
  succ PpcRegR8 = PpcRegR9
  succ PpcRegR9 = PpcRegR10
  succ PpcRegR10 = PpcRegR11
  succ PpcRegR11 = PpcRegR12
  succ PpcRegR12 = PpcRegR13
  succ PpcRegR13 = PpcRegR14
  succ PpcRegR14 = PpcRegR15
  succ PpcRegR15 = PpcRegR16
  succ PpcRegR16 = PpcRegR17
  succ PpcRegR17 = PpcRegR18
  succ PpcRegR18 = PpcRegR19
  succ PpcRegR19 = PpcRegR20
  succ PpcRegR20 = PpcRegR21
  succ PpcRegR21 = PpcRegR22
  succ PpcRegR22 = PpcRegR23
  succ PpcRegR23 = PpcRegR24
  succ PpcRegR24 = PpcRegR25
  succ PpcRegR25 = PpcRegR26
  succ PpcRegR26 = PpcRegR27
  succ PpcRegR27 = PpcRegR28
  succ PpcRegR28 = PpcRegR29
  succ PpcRegR29 = PpcRegR30
  succ PpcRegR30 = PpcRegR31
  succ PpcRegR31 = PpcRegV0
  succ PpcRegV0 = PpcRegV1
  succ PpcRegV1 = PpcRegV2
  succ PpcRegV2 = PpcRegV3
  succ PpcRegV3 = PpcRegV4
  succ PpcRegV4 = PpcRegV5
  succ PpcRegV5 = PpcRegV6
  succ PpcRegV6 = PpcRegV7
  succ PpcRegV7 = PpcRegV8
  succ PpcRegV8 = PpcRegV9
  succ PpcRegV9 = PpcRegV10
  succ PpcRegV10 = PpcRegV11
  succ PpcRegV11 = PpcRegV12
  succ PpcRegV12 = PpcRegV13
  succ PpcRegV13 = PpcRegV14
  succ PpcRegV14 = PpcRegV15
  succ PpcRegV15 = PpcRegV16
  succ PpcRegV16 = PpcRegV17
  succ PpcRegV17 = PpcRegV18
  succ PpcRegV18 = PpcRegV19
  succ PpcRegV19 = PpcRegV20
  succ PpcRegV20 = PpcRegV21
  succ PpcRegV21 = PpcRegV22
  succ PpcRegV22 = PpcRegV23
  succ PpcRegV23 = PpcRegV24
  succ PpcRegV24 = PpcRegV25
  succ PpcRegV25 = PpcRegV26
  succ PpcRegV26 = PpcRegV27
  succ PpcRegV27 = PpcRegV28
  succ PpcRegV28 = PpcRegV29
  succ PpcRegV29 = PpcRegV30
  succ PpcRegV30 = PpcRegV31
  succ PpcRegV31 = PpcRegVrsave
  succ PpcRegVrsave = PpcRegVs0
  succ PpcRegVs0 = PpcRegVs1
  succ PpcRegVs1 = PpcRegVs2
  succ PpcRegVs2 = PpcRegVs3
  succ PpcRegVs3 = PpcRegVs4
  succ PpcRegVs4 = PpcRegVs5
  succ PpcRegVs5 = PpcRegVs6
  succ PpcRegVs6 = PpcRegVs7
  succ PpcRegVs7 = PpcRegVs8
  succ PpcRegVs8 = PpcRegVs9
  succ PpcRegVs9 = PpcRegVs10
  succ PpcRegVs10 = PpcRegVs11
  succ PpcRegVs11 = PpcRegVs12
  succ PpcRegVs12 = PpcRegVs13
  succ PpcRegVs13 = PpcRegVs14
  succ PpcRegVs14 = PpcRegVs15
  succ PpcRegVs15 = PpcRegVs16
  succ PpcRegVs16 = PpcRegVs17
  succ PpcRegVs17 = PpcRegVs18
  succ PpcRegVs18 = PpcRegVs19
  succ PpcRegVs19 = PpcRegVs20
  succ PpcRegVs20 = PpcRegVs21
  succ PpcRegVs21 = PpcRegVs22
  succ PpcRegVs22 = PpcRegVs23
  succ PpcRegVs23 = PpcRegVs24
  succ PpcRegVs24 = PpcRegVs25
  succ PpcRegVs25 = PpcRegVs26
  succ PpcRegVs26 = PpcRegVs27
  succ PpcRegVs27 = PpcRegVs28
  succ PpcRegVs28 = PpcRegVs29
  succ PpcRegVs29 = PpcRegVs30
  succ PpcRegVs30 = PpcRegVs31
  succ PpcRegVs31 = PpcRegVs32
  succ PpcRegVs32 = PpcRegVs33
  succ PpcRegVs33 = PpcRegVs34
  succ PpcRegVs34 = PpcRegVs35
  succ PpcRegVs35 = PpcRegVs36
  succ PpcRegVs36 = PpcRegVs37
  succ PpcRegVs37 = PpcRegVs38
  succ PpcRegVs38 = PpcRegVs39
  succ PpcRegVs39 = PpcRegVs40
  succ PpcRegVs40 = PpcRegVs41
  succ PpcRegVs41 = PpcRegVs42
  succ PpcRegVs42 = PpcRegVs43
  succ PpcRegVs43 = PpcRegVs44
  succ PpcRegVs44 = PpcRegVs45
  succ PpcRegVs45 = PpcRegVs46
  succ PpcRegVs46 = PpcRegVs47
  succ PpcRegVs47 = PpcRegVs48
  succ PpcRegVs48 = PpcRegVs49
  succ PpcRegVs49 = PpcRegVs50
  succ PpcRegVs50 = PpcRegVs51
  succ PpcRegVs51 = PpcRegVs52
  succ PpcRegVs52 = PpcRegVs53
  succ PpcRegVs53 = PpcRegVs54
  succ PpcRegVs54 = PpcRegVs55
  succ PpcRegVs55 = PpcRegVs56
  succ PpcRegVs56 = PpcRegVs57
  succ PpcRegVs57 = PpcRegVs58
  succ PpcRegVs58 = PpcRegVs59
  succ PpcRegVs59 = PpcRegVs60
  succ PpcRegVs60 = PpcRegVs61
  succ PpcRegVs61 = PpcRegVs62
  succ PpcRegVs62 = PpcRegVs63
  succ PpcRegVs63 = PpcRegRm
  succ PpcRegRm = PpcRegCtr8
  succ PpcRegCtr8 = PpcRegLr8
  succ PpcRegLr8 = PpcRegCr1eq
  succ PpcRegCr1eq = PpcRegEnding
  succ PpcRegEnding = error "PpcReg.succ: PpcRegEnding has no successor"

  pred PpcRegCarry = PpcRegInvalid
  pred PpcRegCc = PpcRegCarry
  pred PpcRegCr0 = PpcRegCc
  pred PpcRegCr1 = PpcRegCr0
  pred PpcRegCr2 = PpcRegCr1
  pred PpcRegCr3 = PpcRegCr2
  pred PpcRegCr4 = PpcRegCr3
  pred PpcRegCr5 = PpcRegCr4
  pred PpcRegCr6 = PpcRegCr5
  pred PpcRegCr7 = PpcRegCr6
  pred PpcRegCtr = PpcRegCr7
  pred PpcRegF0 = PpcRegCtr
  pred PpcRegF1 = PpcRegF0
  pred PpcRegF2 = PpcRegF1
  pred PpcRegF3 = PpcRegF2
  pred PpcRegF4 = PpcRegF3
  pred PpcRegF5 = PpcRegF4
  pred PpcRegF6 = PpcRegF5
  pred PpcRegF7 = PpcRegF6
  pred PpcRegF8 = PpcRegF7
  pred PpcRegF9 = PpcRegF8
  pred PpcRegF10 = PpcRegF9
  pred PpcRegF11 = PpcRegF10
  pred PpcRegF12 = PpcRegF11
  pred PpcRegF13 = PpcRegF12
  pred PpcRegF14 = PpcRegF13
  pred PpcRegF15 = PpcRegF14
  pred PpcRegF16 = PpcRegF15
  pred PpcRegF17 = PpcRegF16
  pred PpcRegF18 = PpcRegF17
  pred PpcRegF19 = PpcRegF18
  pred PpcRegF20 = PpcRegF19
  pred PpcRegF21 = PpcRegF20
  pred PpcRegF22 = PpcRegF21
  pred PpcRegF23 = PpcRegF22
  pred PpcRegF24 = PpcRegF23
  pred PpcRegF25 = PpcRegF24
  pred PpcRegF26 = PpcRegF25
  pred PpcRegF27 = PpcRegF26
  pred PpcRegF28 = PpcRegF27
  pred PpcRegF29 = PpcRegF28
  pred PpcRegF30 = PpcRegF29
  pred PpcRegF31 = PpcRegF30
  pred PpcRegLr = PpcRegF31
  pred PpcRegR0 = PpcRegLr
  pred PpcRegR1 = PpcRegR0
  pred PpcRegR2 = PpcRegR1
  pred PpcRegR3 = PpcRegR2
  pred PpcRegR4 = PpcRegR3
  pred PpcRegR5 = PpcRegR4
  pred PpcRegR6 = PpcRegR5
  pred PpcRegR7 = PpcRegR6
  pred PpcRegR8 = PpcRegR7
  pred PpcRegR9 = PpcRegR8
  pred PpcRegR10 = PpcRegR9
  pred PpcRegR11 = PpcRegR10
  pred PpcRegR12 = PpcRegR11
  pred PpcRegR13 = PpcRegR12
  pred PpcRegR14 = PpcRegR13
  pred PpcRegR15 = PpcRegR14
  pred PpcRegR16 = PpcRegR15
  pred PpcRegR17 = PpcRegR16
  pred PpcRegR18 = PpcRegR17
  pred PpcRegR19 = PpcRegR18
  pred PpcRegR20 = PpcRegR19
  pred PpcRegR21 = PpcRegR20
  pred PpcRegR22 = PpcRegR21
  pred PpcRegR23 = PpcRegR22
  pred PpcRegR24 = PpcRegR23
  pred PpcRegR25 = PpcRegR24
  pred PpcRegR26 = PpcRegR25
  pred PpcRegR27 = PpcRegR26
  pred PpcRegR28 = PpcRegR27
  pred PpcRegR29 = PpcRegR28
  pred PpcRegR30 = PpcRegR29
  pred PpcRegR31 = PpcRegR30
  pred PpcRegV0 = PpcRegR31
  pred PpcRegV1 = PpcRegV0
  pred PpcRegV2 = PpcRegV1
  pred PpcRegV3 = PpcRegV2
  pred PpcRegV4 = PpcRegV3
  pred PpcRegV5 = PpcRegV4
  pred PpcRegV6 = PpcRegV5
  pred PpcRegV7 = PpcRegV6
  pred PpcRegV8 = PpcRegV7
  pred PpcRegV9 = PpcRegV8
  pred PpcRegV10 = PpcRegV9
  pred PpcRegV11 = PpcRegV10
  pred PpcRegV12 = PpcRegV11
  pred PpcRegV13 = PpcRegV12
  pred PpcRegV14 = PpcRegV13
  pred PpcRegV15 = PpcRegV14
  pred PpcRegV16 = PpcRegV15
  pred PpcRegV17 = PpcRegV16
  pred PpcRegV18 = PpcRegV17
  pred PpcRegV19 = PpcRegV18
  pred PpcRegV20 = PpcRegV19
  pred PpcRegV21 = PpcRegV20
  pred PpcRegV22 = PpcRegV21
  pred PpcRegV23 = PpcRegV22
  pred PpcRegV24 = PpcRegV23
  pred PpcRegV25 = PpcRegV24
  pred PpcRegV26 = PpcRegV25
  pred PpcRegV27 = PpcRegV26
  pred PpcRegV28 = PpcRegV27
  pred PpcRegV29 = PpcRegV28
  pred PpcRegV30 = PpcRegV29
  pred PpcRegV31 = PpcRegV30
  pred PpcRegVrsave = PpcRegV31
  pred PpcRegVs0 = PpcRegVrsave
  pred PpcRegVs1 = PpcRegVs0
  pred PpcRegVs2 = PpcRegVs1
  pred PpcRegVs3 = PpcRegVs2
  pred PpcRegVs4 = PpcRegVs3
  pred PpcRegVs5 = PpcRegVs4
  pred PpcRegVs6 = PpcRegVs5
  pred PpcRegVs7 = PpcRegVs6
  pred PpcRegVs8 = PpcRegVs7
  pred PpcRegVs9 = PpcRegVs8
  pred PpcRegVs10 = PpcRegVs9
  pred PpcRegVs11 = PpcRegVs10
  pred PpcRegVs12 = PpcRegVs11
  pred PpcRegVs13 = PpcRegVs12
  pred PpcRegVs14 = PpcRegVs13
  pred PpcRegVs15 = PpcRegVs14
  pred PpcRegVs16 = PpcRegVs15
  pred PpcRegVs17 = PpcRegVs16
  pred PpcRegVs18 = PpcRegVs17
  pred PpcRegVs19 = PpcRegVs18
  pred PpcRegVs20 = PpcRegVs19
  pred PpcRegVs21 = PpcRegVs20
  pred PpcRegVs22 = PpcRegVs21
  pred PpcRegVs23 = PpcRegVs22
  pred PpcRegVs24 = PpcRegVs23
  pred PpcRegVs25 = PpcRegVs24
  pred PpcRegVs26 = PpcRegVs25
  pred PpcRegVs27 = PpcRegVs26
  pred PpcRegVs28 = PpcRegVs27
  pred PpcRegVs29 = PpcRegVs28
  pred PpcRegVs30 = PpcRegVs29
  pred PpcRegVs31 = PpcRegVs30
  pred PpcRegVs32 = PpcRegVs31
  pred PpcRegVs33 = PpcRegVs32
  pred PpcRegVs34 = PpcRegVs33
  pred PpcRegVs35 = PpcRegVs34
  pred PpcRegVs36 = PpcRegVs35
  pred PpcRegVs37 = PpcRegVs36
  pred PpcRegVs38 = PpcRegVs37
  pred PpcRegVs39 = PpcRegVs38
  pred PpcRegVs40 = PpcRegVs39
  pred PpcRegVs41 = PpcRegVs40
  pred PpcRegVs42 = PpcRegVs41
  pred PpcRegVs43 = PpcRegVs42
  pred PpcRegVs44 = PpcRegVs43
  pred PpcRegVs45 = PpcRegVs44
  pred PpcRegVs46 = PpcRegVs45
  pred PpcRegVs47 = PpcRegVs46
  pred PpcRegVs48 = PpcRegVs47
  pred PpcRegVs49 = PpcRegVs48
  pred PpcRegVs50 = PpcRegVs49
  pred PpcRegVs51 = PpcRegVs50
  pred PpcRegVs52 = PpcRegVs51
  pred PpcRegVs53 = PpcRegVs52
  pred PpcRegVs54 = PpcRegVs53
  pred PpcRegVs55 = PpcRegVs54
  pred PpcRegVs56 = PpcRegVs55
  pred PpcRegVs57 = PpcRegVs56
  pred PpcRegVs58 = PpcRegVs57
  pred PpcRegVs59 = PpcRegVs58
  pred PpcRegVs60 = PpcRegVs59
  pred PpcRegVs61 = PpcRegVs60
  pred PpcRegVs62 = PpcRegVs61
  pred PpcRegVs63 = PpcRegVs62
  pred PpcRegRm = PpcRegVs63
  pred PpcRegCtr8 = PpcRegRm
  pred PpcRegLr8 = PpcRegCtr8
  pred PpcRegCr1eq = PpcRegLr8
  pred PpcRegEnding = PpcRegCr1eq
  pred PpcRegInvalid = error "PpcReg.pred: PpcRegInvalid has no predecessor"

  enumFromTo from to = go from
    where
      end = fromEnum to
      go v = case compare (fromEnum v) end of
                 LT -> v : go (succ v)
                 EQ -> [v]
                 GT -> []

  enumFrom from = enumFromTo from PpcRegEnding

  fromEnum PpcRegInvalid = 0
  fromEnum PpcRegCarry = 1
  fromEnum PpcRegCc = 2
  fromEnum PpcRegCr0 = 3
  fromEnum PpcRegCr1 = 4
  fromEnum PpcRegCr2 = 5
  fromEnum PpcRegCr3 = 6
  fromEnum PpcRegCr4 = 7
  fromEnum PpcRegCr5 = 8
  fromEnum PpcRegCr6 = 9
  fromEnum PpcRegCr7 = 10
  fromEnum PpcRegCtr = 11
  fromEnum PpcRegF0 = 12
  fromEnum PpcRegF1 = 13
  fromEnum PpcRegF2 = 14
  fromEnum PpcRegF3 = 15
  fromEnum PpcRegF4 = 16
  fromEnum PpcRegF5 = 17
  fromEnum PpcRegF6 = 18
  fromEnum PpcRegF7 = 19
  fromEnum PpcRegF8 = 20
  fromEnum PpcRegF9 = 21
  fromEnum PpcRegF10 = 22
  fromEnum PpcRegF11 = 23
  fromEnum PpcRegF12 = 24
  fromEnum PpcRegF13 = 25
  fromEnum PpcRegF14 = 26
  fromEnum PpcRegF15 = 27
  fromEnum PpcRegF16 = 28
  fromEnum PpcRegF17 = 29
  fromEnum PpcRegF18 = 30
  fromEnum PpcRegF19 = 31
  fromEnum PpcRegF20 = 32
  fromEnum PpcRegF21 = 33
  fromEnum PpcRegF22 = 34
  fromEnum PpcRegF23 = 35
  fromEnum PpcRegF24 = 36
  fromEnum PpcRegF25 = 37
  fromEnum PpcRegF26 = 38
  fromEnum PpcRegF27 = 39
  fromEnum PpcRegF28 = 40
  fromEnum PpcRegF29 = 41
  fromEnum PpcRegF30 = 42
  fromEnum PpcRegF31 = 43
  fromEnum PpcRegLr = 44
  fromEnum PpcRegR0 = 45
  fromEnum PpcRegR1 = 46
  fromEnum PpcRegR2 = 47
  fromEnum PpcRegR3 = 48
  fromEnum PpcRegR4 = 49
  fromEnum PpcRegR5 = 50
  fromEnum PpcRegR6 = 51
  fromEnum PpcRegR7 = 52
  fromEnum PpcRegR8 = 53
  fromEnum PpcRegR9 = 54
  fromEnum PpcRegR10 = 55
  fromEnum PpcRegR11 = 56
  fromEnum PpcRegR12 = 57
  fromEnum PpcRegR13 = 58
  fromEnum PpcRegR14 = 59
  fromEnum PpcRegR15 = 60
  fromEnum PpcRegR16 = 61
  fromEnum PpcRegR17 = 62
  fromEnum PpcRegR18 = 63
  fromEnum PpcRegR19 = 64
  fromEnum PpcRegR20 = 65
  fromEnum PpcRegR21 = 66
  fromEnum PpcRegR22 = 67
  fromEnum PpcRegR23 = 68
  fromEnum PpcRegR24 = 69
  fromEnum PpcRegR25 = 70
  fromEnum PpcRegR26 = 71
  fromEnum PpcRegR27 = 72
  fromEnum PpcRegR28 = 73
  fromEnum PpcRegR29 = 74
  fromEnum PpcRegR30 = 75
  fromEnum PpcRegR31 = 76
  fromEnum PpcRegV0 = 77
  fromEnum PpcRegV1 = 78
  fromEnum PpcRegV2 = 79
  fromEnum PpcRegV3 = 80
  fromEnum PpcRegV4 = 81
  fromEnum PpcRegV5 = 82
  fromEnum PpcRegV6 = 83
  fromEnum PpcRegV7 = 84
  fromEnum PpcRegV8 = 85
  fromEnum PpcRegV9 = 86
  fromEnum PpcRegV10 = 87
  fromEnum PpcRegV11 = 88
  fromEnum PpcRegV12 = 89
  fromEnum PpcRegV13 = 90
  fromEnum PpcRegV14 = 91
  fromEnum PpcRegV15 = 92
  fromEnum PpcRegV16 = 93
  fromEnum PpcRegV17 = 94
  fromEnum PpcRegV18 = 95
  fromEnum PpcRegV19 = 96
  fromEnum PpcRegV20 = 97
  fromEnum PpcRegV21 = 98
  fromEnum PpcRegV22 = 99
  fromEnum PpcRegV23 = 100
  fromEnum PpcRegV24 = 101
  fromEnum PpcRegV25 = 102
  fromEnum PpcRegV26 = 103
  fromEnum PpcRegV27 = 104
  fromEnum PpcRegV28 = 105
  fromEnum PpcRegV29 = 106
  fromEnum PpcRegV30 = 107
  fromEnum PpcRegV31 = 108
  fromEnum PpcRegVrsave = 109
  fromEnum PpcRegVs0 = 110
  fromEnum PpcRegVs1 = 111
  fromEnum PpcRegVs2 = 112
  fromEnum PpcRegVs3 = 113
  fromEnum PpcRegVs4 = 114
  fromEnum PpcRegVs5 = 115
  fromEnum PpcRegVs6 = 116
  fromEnum PpcRegVs7 = 117
  fromEnum PpcRegVs8 = 118
  fromEnum PpcRegVs9 = 119
  fromEnum PpcRegVs10 = 120
  fromEnum PpcRegVs11 = 121
  fromEnum PpcRegVs12 = 122
  fromEnum PpcRegVs13 = 123
  fromEnum PpcRegVs14 = 124
  fromEnum PpcRegVs15 = 125
  fromEnum PpcRegVs16 = 126
  fromEnum PpcRegVs17 = 127
  fromEnum PpcRegVs18 = 128
  fromEnum PpcRegVs19 = 129
  fromEnum PpcRegVs20 = 130
  fromEnum PpcRegVs21 = 131
  fromEnum PpcRegVs22 = 132
  fromEnum PpcRegVs23 = 133
  fromEnum PpcRegVs24 = 134
  fromEnum PpcRegVs25 = 135
  fromEnum PpcRegVs26 = 136
  fromEnum PpcRegVs27 = 137
  fromEnum PpcRegVs28 = 138
  fromEnum PpcRegVs29 = 139
  fromEnum PpcRegVs30 = 140
  fromEnum PpcRegVs31 = 141
  fromEnum PpcRegVs32 = 142
  fromEnum PpcRegVs33 = 143
  fromEnum PpcRegVs34 = 144
  fromEnum PpcRegVs35 = 145
  fromEnum PpcRegVs36 = 146
  fromEnum PpcRegVs37 = 147
  fromEnum PpcRegVs38 = 148
  fromEnum PpcRegVs39 = 149
  fromEnum PpcRegVs40 = 150
  fromEnum PpcRegVs41 = 151
  fromEnum PpcRegVs42 = 152
  fromEnum PpcRegVs43 = 153
  fromEnum PpcRegVs44 = 154
  fromEnum PpcRegVs45 = 155
  fromEnum PpcRegVs46 = 156
  fromEnum PpcRegVs47 = 157
  fromEnum PpcRegVs48 = 158
  fromEnum PpcRegVs49 = 159
  fromEnum PpcRegVs50 = 160
  fromEnum PpcRegVs51 = 161
  fromEnum PpcRegVs52 = 162
  fromEnum PpcRegVs53 = 163
  fromEnum PpcRegVs54 = 164
  fromEnum PpcRegVs55 = 165
  fromEnum PpcRegVs56 = 166
  fromEnum PpcRegVs57 = 167
  fromEnum PpcRegVs58 = 168
  fromEnum PpcRegVs59 = 169
  fromEnum PpcRegVs60 = 170
  fromEnum PpcRegVs61 = 171
  fromEnum PpcRegVs62 = 172
  fromEnum PpcRegVs63 = 173
  fromEnum PpcRegRm = 174
  fromEnum PpcRegCtr8 = 175
  fromEnum PpcRegLr8 = 176
  fromEnum PpcRegCr1eq = 177
  fromEnum PpcRegEnding = 178

  toEnum 0 = PpcRegInvalid
  toEnum 1 = PpcRegCarry
  toEnum 2 = PpcRegCc
  toEnum 3 = PpcRegCr0
  toEnum 4 = PpcRegCr1
  toEnum 5 = PpcRegCr2
  toEnum 6 = PpcRegCr3
  toEnum 7 = PpcRegCr4
  toEnum 8 = PpcRegCr5
  toEnum 9 = PpcRegCr6
  toEnum 10 = PpcRegCr7
  toEnum 11 = PpcRegCtr
  toEnum 12 = PpcRegF0
  toEnum 13 = PpcRegF1
  toEnum 14 = PpcRegF2
  toEnum 15 = PpcRegF3
  toEnum 16 = PpcRegF4
  toEnum 17 = PpcRegF5
  toEnum 18 = PpcRegF6
  toEnum 19 = PpcRegF7
  toEnum 20 = PpcRegF8
  toEnum 21 = PpcRegF9
  toEnum 22 = PpcRegF10
  toEnum 23 = PpcRegF11
  toEnum 24 = PpcRegF12
  toEnum 25 = PpcRegF13
  toEnum 26 = PpcRegF14
  toEnum 27 = PpcRegF15
  toEnum 28 = PpcRegF16
  toEnum 29 = PpcRegF17
  toEnum 30 = PpcRegF18
  toEnum 31 = PpcRegF19
  toEnum 32 = PpcRegF20
  toEnum 33 = PpcRegF21
  toEnum 34 = PpcRegF22
  toEnum 35 = PpcRegF23
  toEnum 36 = PpcRegF24
  toEnum 37 = PpcRegF25
  toEnum 38 = PpcRegF26
  toEnum 39 = PpcRegF27
  toEnum 40 = PpcRegF28
  toEnum 41 = PpcRegF29
  toEnum 42 = PpcRegF30
  toEnum 43 = PpcRegF31
  toEnum 44 = PpcRegLr
  toEnum 45 = PpcRegR0
  toEnum 46 = PpcRegR1
  toEnum 47 = PpcRegR2
  toEnum 48 = PpcRegR3
  toEnum 49 = PpcRegR4
  toEnum 50 = PpcRegR5
  toEnum 51 = PpcRegR6
  toEnum 52 = PpcRegR7
  toEnum 53 = PpcRegR8
  toEnum 54 = PpcRegR9
  toEnum 55 = PpcRegR10
  toEnum 56 = PpcRegR11
  toEnum 57 = PpcRegR12
  toEnum 58 = PpcRegR13
  toEnum 59 = PpcRegR14
  toEnum 60 = PpcRegR15
  toEnum 61 = PpcRegR16
  toEnum 62 = PpcRegR17
  toEnum 63 = PpcRegR18
  toEnum 64 = PpcRegR19
  toEnum 65 = PpcRegR20
  toEnum 66 = PpcRegR21
  toEnum 67 = PpcRegR22
  toEnum 68 = PpcRegR23
  toEnum 69 = PpcRegR24
  toEnum 70 = PpcRegR25
  toEnum 71 = PpcRegR26
  toEnum 72 = PpcRegR27
  toEnum 73 = PpcRegR28
  toEnum 74 = PpcRegR29
  toEnum 75 = PpcRegR30
  toEnum 76 = PpcRegR31
  toEnum 77 = PpcRegV0
  toEnum 78 = PpcRegV1
  toEnum 79 = PpcRegV2
  toEnum 80 = PpcRegV3
  toEnum 81 = PpcRegV4
  toEnum 82 = PpcRegV5
  toEnum 83 = PpcRegV6
  toEnum 84 = PpcRegV7
  toEnum 85 = PpcRegV8
  toEnum 86 = PpcRegV9
  toEnum 87 = PpcRegV10
  toEnum 88 = PpcRegV11
  toEnum 89 = PpcRegV12
  toEnum 90 = PpcRegV13
  toEnum 91 = PpcRegV14
  toEnum 92 = PpcRegV15
  toEnum 93 = PpcRegV16
  toEnum 94 = PpcRegV17
  toEnum 95 = PpcRegV18
  toEnum 96 = PpcRegV19
  toEnum 97 = PpcRegV20
  toEnum 98 = PpcRegV21
  toEnum 99 = PpcRegV22
  toEnum 100 = PpcRegV23
  toEnum 101 = PpcRegV24
  toEnum 102 = PpcRegV25
  toEnum 103 = PpcRegV26
  toEnum 104 = PpcRegV27
  toEnum 105 = PpcRegV28
  toEnum 106 = PpcRegV29
  toEnum 107 = PpcRegV30
  toEnum 108 = PpcRegV31
  toEnum 109 = PpcRegVrsave
  toEnum 110 = PpcRegVs0
  toEnum 111 = PpcRegVs1
  toEnum 112 = PpcRegVs2
  toEnum 113 = PpcRegVs3
  toEnum 114 = PpcRegVs4
  toEnum 115 = PpcRegVs5
  toEnum 116 = PpcRegVs6
  toEnum 117 = PpcRegVs7
  toEnum 118 = PpcRegVs8
  toEnum 119 = PpcRegVs9
  toEnum 120 = PpcRegVs10
  toEnum 121 = PpcRegVs11
  toEnum 122 = PpcRegVs12
  toEnum 123 = PpcRegVs13
  toEnum 124 = PpcRegVs14
  toEnum 125 = PpcRegVs15
  toEnum 126 = PpcRegVs16
  toEnum 127 = PpcRegVs17
  toEnum 128 = PpcRegVs18
  toEnum 129 = PpcRegVs19
  toEnum 130 = PpcRegVs20
  toEnum 131 = PpcRegVs21
  toEnum 132 = PpcRegVs22
  toEnum 133 = PpcRegVs23
  toEnum 134 = PpcRegVs24
  toEnum 135 = PpcRegVs25
  toEnum 136 = PpcRegVs26
  toEnum 137 = PpcRegVs27
  toEnum 138 = PpcRegVs28
  toEnum 139 = PpcRegVs29
  toEnum 140 = PpcRegVs30
  toEnum 141 = PpcRegVs31
  toEnum 142 = PpcRegVs32
  toEnum 143 = PpcRegVs33
  toEnum 144 = PpcRegVs34
  toEnum 145 = PpcRegVs35
  toEnum 146 = PpcRegVs36
  toEnum 147 = PpcRegVs37
  toEnum 148 = PpcRegVs38
  toEnum 149 = PpcRegVs39
  toEnum 150 = PpcRegVs40
  toEnum 151 = PpcRegVs41
  toEnum 152 = PpcRegVs42
  toEnum 153 = PpcRegVs43
  toEnum 154 = PpcRegVs44
  toEnum 155 = PpcRegVs45
  toEnum 156 = PpcRegVs46
  toEnum 157 = PpcRegVs47
  toEnum 158 = PpcRegVs48
  toEnum 159 = PpcRegVs49
  toEnum 160 = PpcRegVs50
  toEnum 161 = PpcRegVs51
  toEnum 162 = PpcRegVs52
  toEnum 163 = PpcRegVs53
  toEnum 164 = PpcRegVs54
  toEnum 165 = PpcRegVs55
  toEnum 166 = PpcRegVs56
  toEnum 167 = PpcRegVs57
  toEnum 168 = PpcRegVs58
  toEnum 169 = PpcRegVs59
  toEnum 170 = PpcRegVs60
  toEnum 171 = PpcRegVs61
  toEnum 172 = PpcRegVs62
  toEnum 173 = PpcRegVs63
  toEnum 174 = PpcRegRm
  toEnum 175 = PpcRegCtr8
  toEnum 176 = PpcRegLr8
  toEnum 177 = PpcRegCr1eq
  toEnum 178 = PpcRegEnding
  toEnum unmatched = error ("PpcReg.toEnum: Cannot match " ++ show unmatched)

{-# LINE 39 "src/Hapstone/Internal/Ppc.chs" #-}


-- | operand type for instruction's operands
data PpcOpType = PpcOpInvalid
               | PpcOpReg
               | PpcOpImm
               | PpcOpMem
               | PpcOpCrx
  deriving (Show,Eq,Bounded)
instance Enum PpcOpType where
  succ PpcOpInvalid = PpcOpReg
  succ PpcOpReg = PpcOpImm
  succ PpcOpImm = PpcOpMem
  succ PpcOpMem = PpcOpCrx
  succ PpcOpCrx = error "PpcOpType.succ: PpcOpCrx has no successor"

  pred PpcOpReg = PpcOpInvalid
  pred PpcOpImm = PpcOpReg
  pred PpcOpMem = PpcOpImm
  pred PpcOpCrx = PpcOpMem
  pred PpcOpInvalid = error "PpcOpType.pred: PpcOpInvalid has no predecessor"

  enumFromTo from to = go from
    where
      end = fromEnum to
      go v = case compare (fromEnum v) end of
                 LT -> v : go (succ v)
                 EQ -> [v]
                 GT -> []

  enumFrom from = enumFromTo from PpcOpCrx

  fromEnum PpcOpInvalid = 0
  fromEnum PpcOpReg = 1
  fromEnum PpcOpImm = 2
  fromEnum PpcOpMem = 3
  fromEnum PpcOpCrx = 64

  toEnum 0 = PpcOpInvalid
  toEnum 1 = PpcOpReg
  toEnum 2 = PpcOpImm
  toEnum 3 = PpcOpMem
  toEnum 64 = PpcOpCrx
  toEnum unmatched = error ("PpcOpType.toEnum: Cannot match " ++ show unmatched)

{-# LINE 43 "src/Hapstone/Internal/Ppc.chs" #-}


-- | memory access operands
-- associated with 'Ppc64OpMem' operand type
data PpcOpMemStruct = PpcOpMemStruct 
    { base :: PpcReg -- ^ base register
    , disp :: Int32 -- ^ displacement/offset value
    } deriving (Show, Eq)

instance Storable PpcOpMemStruct where
    sizeOf _ = 8
{-# LINE 53 "src/Hapstone/Internal/Ppc.chs" #-}

    alignment _ = 4
{-# LINE 54 "src/Hapstone/Internal/Ppc.chs" #-}

    peek p = PpcOpMemStruct
        <$> ((toEnum . fromIntegral) <$> (\ptr -> do {C2HSImp.peekByteOff ptr 0 :: IO C2HSImp.CUInt}) p)
        <*> (fromIntegral <$> (\ptr -> do {C2HSImp.peekByteOff ptr 4 :: IO C2HSImp.CInt}) p)
    poke p (PpcOpMemStruct b d) = do
        (\ptr val -> do {C2HSImp.pokeByteOff ptr 0 (val :: C2HSImp.CUInt)}) p (fromIntegral $ fromEnum b)
        (\ptr val -> do {C2HSImp.pokeByteOff ptr 4 (val :: C2HSImp.CInt)}) p (fromIntegral d)

-- | CRX operands
-- associated with 'Ppc64OpCrx' operand type
data PpcOpCrxStruct = PpcOpCrxStruct
    { scale :: Word32
    , reg :: PpcReg
    , cond :: PpcBc
    } deriving (Show, Eq)

instance Storable PpcOpCrxStruct where
    sizeOf _ = 12
{-# LINE 71 "src/Hapstone/Internal/Ppc.chs" #-}

    alignment _ = 4
{-# LINE 72 "src/Hapstone/Internal/Ppc.chs" #-}

    peek p = PpcOpCrxStruct
        <$> (fromIntegral <$> (\ptr -> do {C2HSImp.peekByteOff ptr 0 :: IO C2HSImp.CUInt}) p)
        <*> ((toEnum . fromIntegral) <$> (\ptr -> do {C2HSImp.peekByteOff ptr 4 :: IO C2HSImp.CUInt}) p)
        <*> ((toEnum . fromIntegral) <$> (\ptr -> do {C2HSImp.peekByteOff ptr 8 :: IO C2HSImp.CInt}) p)
    poke p (PpcOpCrxStruct s r c) = do
        (\ptr val -> do {C2HSImp.pokeByteOff ptr 0 (val :: C2HSImp.CUInt)}) p (fromIntegral s)
        (\ptr val -> do {C2HSImp.pokeByteOff ptr 4 (val :: C2HSImp.CUInt)}) p (fromIntegral $ fromEnum r)
        (\ptr val -> do {C2HSImp.pokeByteOff ptr 8 (val :: C2HSImp.CInt)}) p (fromIntegral $ fromEnum c)

-- | instruction operands
data CsPpcOp
    = Reg PpcReg -- ^ register value for 'PpcOpReg' operands
    | Imm Int32 -- ^ immediate value for 'PpcOpImm' operands
    | Mem PpcOpMemStruct -- ^ base/disp value for 'PpcOpMem' operands
    | Crx PpcOpCrxStruct -- ^ operand with condition register
    | Undefined -- ^ invalid operand value, for 'PpcOpInvalid' operand
    deriving (Show, Eq)

instance Storable CsPpcOp where
    sizeOf _ = 16
    alignment _ = 4
    peek p = do
        t <- fromIntegral <$> (\ptr -> do {C2HSImp.peekByteOff ptr 0 :: IO C2HSImp.CInt}) p
        let bP = plusPtr p 4
        case toEnum t of
          PpcOpReg -> (Reg . toEnum . fromIntegral) <$> (peek bP :: IO CInt)
          PpcOpImm -> Imm <$> peek bP
          PpcOpMem -> Mem <$> peek bP
          PpcOpCrx -> Crx <$> peek bP
          _ -> return Undefined
    poke p op = do
        let bP = plusPtr p 4
            setType = (\ptr val -> do {C2HSImp.pokeByteOff ptr 0 (val :: C2HSImp.CInt)}) p . fromIntegral . fromEnum
        case op of
          Reg r -> do
              poke bP (fromIntegral $ fromEnum r :: CInt)
              setType PpcOpReg
          Imm i -> do
              poke bP i
              setType PpcOpImm
          Mem m -> do
              poke bP m
              setType PpcOpMem
          Crx c -> do
              poke bP c
              setType PpcOpCrx
          _ -> setType PpcOpInvalid

-- | instruction datatype
data CsPpc = CsPpc 
    { bc :: PpcBc -- ^ branch code for branch instructions
    , bh :: PpcBh -- ^ branch hint for branch instructions
    , updateCr0 :: Bool -- ^ does this instruction update CR0?
    , operands :: [CsPpcOp] -- ^ operand list of this instruction, *MUST*
                            -- have <= 8 elements, else you'll get a runtime
                            -- error when you (implicitly) try to write it to
                            -- write it to memory via it's Storable instance
    } deriving (Show, Eq)

instance Storable CsPpc where
    sizeOf _ = 140
    alignment _ = 4
    peek p = CsPpc
        <$> ((toEnum . fromIntegral) <$> (\ptr -> do {C2HSImp.peekByteOff ptr 0 :: IO C2HSImp.CInt}) p)
        <*> ((toEnum . fromIntegral) <$> (\ptr -> do {C2HSImp.peekByteOff ptr 4 :: IO C2HSImp.CInt}) p)
        <*> (toBool <$> (peekByteOff p 8 :: IO Word8)) -- update_cr0
        <*> do num <- fromIntegral <$> (\ptr -> do {C2HSImp.peekByteOff ptr 9 :: IO C2HSImp.CUChar}) p
               let ptr = plusPtr p (12)
{-# LINE 140 "src/Hapstone/Internal/Ppc.chs" #-}

               peekArray num ptr
    poke p (CsPpc bc bh u o) = do
        (\ptr val -> do {C2HSImp.pokeByteOff ptr 0 (val :: C2HSImp.CInt)}) p (fromIntegral $ fromEnum bc)
        (\ptr val -> do {C2HSImp.pokeByteOff ptr 4 (val :: C2HSImp.CInt)}) p (fromIntegral $ fromEnum bh)
        pokeByteOff p 8 (fromBool u :: Word8) -- update_cr0
        (\ptr val -> do {C2HSImp.pokeByteOff ptr 9 (val :: C2HSImp.CUChar)}) p (fromIntegral $ length o)
        if length o > 8
           then error "operands overflew 8 elements"
           else pokeArray (plusPtr p (12)) o

-- | PPC instructions
data PpcInsn = PpcInsInvalid
             | PpcInsAdd
             | PpcInsAddc
             | PpcInsAdde
             | PpcInsAddi
             | PpcInsAddic
             | PpcInsAddis
             | PpcInsAddme
             | PpcInsAddze
             | PpcInsAnd
             | PpcInsAndc
             | PpcInsAndis
             | PpcInsAndi
             | PpcInsB
             | PpcInsBa
             | PpcInsBc
             | PpcInsBcctr
             | PpcInsBcctrl
             | PpcInsBcl
             | PpcInsBclr
             | PpcInsBclrl
             | PpcInsBctr
             | PpcInsBctrl
             | PpcInsBdnz
             | PpcInsBdnza
             | PpcInsBdnzl
             | PpcInsBdnzla
             | PpcInsBdnzlr
             | PpcInsBdnzlrl
             | PpcInsBdz
             | PpcInsBdza
             | PpcInsBdzl
             | PpcInsBdzla
             | PpcInsBdzlr
             | PpcInsBdzlrl
             | PpcInsBl
             | PpcInsBla
             | PpcInsBlr
             | PpcInsBlrl
             | PpcInsBrinc
             | PpcInsCmpd
             | PpcInsCmpdi
             | PpcInsCmpld
             | PpcInsCmpldi
             | PpcInsCmplw
             | PpcInsCmplwi
             | PpcInsCmpw
             | PpcInsCmpwi
             | PpcInsCntlzd
             | PpcInsCntlzw
             | PpcInsCreqv
             | PpcInsCrxor
             | PpcInsCrand
             | PpcInsCrandc
             | PpcInsCrnand
             | PpcInsCrnor
             | PpcInsCror
             | PpcInsCrorc
             | PpcInsDcba
             | PpcInsDcbf
             | PpcInsDcbi
             | PpcInsDcbst
             | PpcInsDcbt
             | PpcInsDcbtst
             | PpcInsDcbz
             | PpcInsDcbzl
             | PpcInsDccci
             | PpcInsDivd
             | PpcInsDivdu
             | PpcInsDivw
             | PpcInsDivwu
             | PpcInsDss
             | PpcInsDssall
             | PpcInsDst
             | PpcInsDstst
             | PpcInsDststt
             | PpcInsDstt
             | PpcInsEieio
             | PpcInsEqv
             | PpcInsEvabs
             | PpcInsEvaddiw
             | PpcInsEvaddsmiaaw
             | PpcInsEvaddssiaaw
             | PpcInsEvaddumiaaw
             | PpcInsEvaddusiaaw
             | PpcInsEvaddw
             | PpcInsEvand
             | PpcInsEvandc
             | PpcInsEvcmpeq
             | PpcInsEvcmpgts
             | PpcInsEvcmpgtu
             | PpcInsEvcmplts
             | PpcInsEvcmpltu
             | PpcInsEvcntlsw
             | PpcInsEvcntlzw
             | PpcInsEvdivws
             | PpcInsEvdivwu
             | PpcInsEveqv
             | PpcInsEvextsb
             | PpcInsEvextsh
             | PpcInsEvldd
             | PpcInsEvlddx
             | PpcInsEvldh
             | PpcInsEvldhx
             | PpcInsEvldw
             | PpcInsEvldwx
             | PpcInsEvlhhesplat
             | PpcInsEvlhhesplatx
             | PpcInsEvlhhossplat
             | PpcInsEvlhhossplatx
             | PpcInsEvlhhousplat
             | PpcInsEvlhhousplatx
             | PpcInsEvlwhe
             | PpcInsEvlwhex
             | PpcInsEvlwhos
             | PpcInsEvlwhosx
             | PpcInsEvlwhou
             | PpcInsEvlwhoux
             | PpcInsEvlwhsplat
             | PpcInsEvlwhsplatx
             | PpcInsEvlwwsplat
             | PpcInsEvlwwsplatx
             | PpcInsEvmergehi
             | PpcInsEvmergehilo
             | PpcInsEvmergelo
             | PpcInsEvmergelohi
             | PpcInsEvmhegsmfaa
             | PpcInsEvmhegsmfan
             | PpcInsEvmhegsmiaa
             | PpcInsEvmhegsmian
             | PpcInsEvmhegumiaa
             | PpcInsEvmhegumian
             | PpcInsEvmhesmf
             | PpcInsEvmhesmfa
             | PpcInsEvmhesmfaaw
             | PpcInsEvmhesmfanw
             | PpcInsEvmhesmi
             | PpcInsEvmhesmia
             | PpcInsEvmhesmiaaw
             | PpcInsEvmhesmianw
             | PpcInsEvmhessf
             | PpcInsEvmhessfa
             | PpcInsEvmhessfaaw
             | PpcInsEvmhessfanw
             | PpcInsEvmhessiaaw
             | PpcInsEvmhessianw
             | PpcInsEvmheumi
             | PpcInsEvmheumia
             | PpcInsEvmheumiaaw
             | PpcInsEvmheumianw
             | PpcInsEvmheusiaaw
             | PpcInsEvmheusianw
             | PpcInsEvmhogsmfaa
             | PpcInsEvmhogsmfan
             | PpcInsEvmhogsmiaa
             | PpcInsEvmhogsmian
             | PpcInsEvmhogumiaa
             | PpcInsEvmhogumian
             | PpcInsEvmhosmf
             | PpcInsEvmhosmfa
             | PpcInsEvmhosmfaaw
             | PpcInsEvmhosmfanw
             | PpcInsEvmhosmi
             | PpcInsEvmhosmia
             | PpcInsEvmhosmiaaw
             | PpcInsEvmhosmianw
             | PpcInsEvmhossf
             | PpcInsEvmhossfa
             | PpcInsEvmhossfaaw
             | PpcInsEvmhossfanw
             | PpcInsEvmhossiaaw
             | PpcInsEvmhossianw
             | PpcInsEvmhoumi
             | PpcInsEvmhoumia
             | PpcInsEvmhoumiaaw
             | PpcInsEvmhoumianw
             | PpcInsEvmhousiaaw
             | PpcInsEvmhousianw
             | PpcInsEvmra
             | PpcInsEvmwhsmf
             | PpcInsEvmwhsmfa
             | PpcInsEvmwhsmi
             | PpcInsEvmwhsmia
             | PpcInsEvmwhssf
             | PpcInsEvmwhssfa
             | PpcInsEvmwhumi
             | PpcInsEvmwhumia
             | PpcInsEvmwlsmiaaw
             | PpcInsEvmwlsmianw
             | PpcInsEvmwlssiaaw
             | PpcInsEvmwlssianw
             | PpcInsEvmwlumi
             | PpcInsEvmwlumia
             | PpcInsEvmwlumiaaw
             | PpcInsEvmwlumianw
             | PpcInsEvmwlusiaaw
             | PpcInsEvmwlusianw
             | PpcInsEvmwsmf
             | PpcInsEvmwsmfa
             | PpcInsEvmwsmfaa
             | PpcInsEvmwsmfan
             | PpcInsEvmwsmi
             | PpcInsEvmwsmia
             | PpcInsEvmwsmiaa
             | PpcInsEvmwsmian
             | PpcInsEvmwssf
             | PpcInsEvmwssfa
             | PpcInsEvmwssfaa
             | PpcInsEvmwssfan
             | PpcInsEvmwumi
             | PpcInsEvmwumia
             | PpcInsEvmwumiaa
             | PpcInsEvmwumian
             | PpcInsEvnand
             | PpcInsEvneg
             | PpcInsEvnor
             | PpcInsEvor
             | PpcInsEvorc
             | PpcInsEvrlw
             | PpcInsEvrlwi
             | PpcInsEvrndw
             | PpcInsEvslw
             | PpcInsEvslwi
             | PpcInsEvsplatfi
             | PpcInsEvsplati
             | PpcInsEvsrwis
             | PpcInsEvsrwiu
             | PpcInsEvsrws
             | PpcInsEvsrwu
             | PpcInsEvstdd
             | PpcInsEvstddx
             | PpcInsEvstdh
             | PpcInsEvstdhx
             | PpcInsEvstdw
             | PpcInsEvstdwx
             | PpcInsEvstwhe
             | PpcInsEvstwhex
             | PpcInsEvstwho
             | PpcInsEvstwhox
             | PpcInsEvstwwe
             | PpcInsEvstwwex
             | PpcInsEvstwwo
             | PpcInsEvstwwox
             | PpcInsEvsubfsmiaaw
             | PpcInsEvsubfssiaaw
             | PpcInsEvsubfumiaaw
             | PpcInsEvsubfusiaaw
             | PpcInsEvsubfw
             | PpcInsEvsubifw
             | PpcInsEvxor
             | PpcInsExtsb
             | PpcInsExtsh
             | PpcInsExtsw
             | PpcInsFabs
             | PpcInsFadd
             | PpcInsFadds
             | PpcInsFcfid
             | PpcInsFcfids
             | PpcInsFcfidu
             | PpcInsFcfidus
             | PpcInsFcmpu
             | PpcInsFcpsgn
             | PpcInsFctid
             | PpcInsFctiduz
             | PpcInsFctidz
             | PpcInsFctiw
             | PpcInsFctiwuz
             | PpcInsFctiwz
             | PpcInsFdiv
             | PpcInsFdivs
             | PpcInsFmadd
             | PpcInsFmadds
             | PpcInsFmr
             | PpcInsFmsub
             | PpcInsFmsubs
             | PpcInsFmul
             | PpcInsFmuls
             | PpcInsFnabs
             | PpcInsFneg
             | PpcInsFnmadd
             | PpcInsFnmadds
             | PpcInsFnmsub
             | PpcInsFnmsubs
             | PpcInsFre
             | PpcInsFres
             | PpcInsFrim
             | PpcInsFrin
             | PpcInsFrip
             | PpcInsFriz
             | PpcInsFrsp
             | PpcInsFrsqrte
             | PpcInsFrsqrtes
             | PpcInsFsel
             | PpcInsFsqrt
             | PpcInsFsqrts
             | PpcInsFsub
             | PpcInsFsubs
             | PpcInsIcbi
             | PpcInsIccci
             | PpcInsIsel
             | PpcInsIsync
             | PpcInsLa
             | PpcInsLbz
             | PpcInsLbzu
             | PpcInsLbzux
             | PpcInsLbzx
             | PpcInsLd
             | PpcInsLdarx
             | PpcInsLdbrx
             | PpcInsLdu
             | PpcInsLdux
             | PpcInsLdx
             | PpcInsLfd
             | PpcInsLfdu
             | PpcInsLfdux
             | PpcInsLfdx
             | PpcInsLfiwax
             | PpcInsLfiwzx
             | PpcInsLfs
             | PpcInsLfsu
             | PpcInsLfsux
             | PpcInsLfsx
             | PpcInsLha
             | PpcInsLhau
             | PpcInsLhaux
             | PpcInsLhax
             | PpcInsLhbrx
             | PpcInsLhz
             | PpcInsLhzu
             | PpcInsLhzux
             | PpcInsLhzx
             | PpcInsLi
             | PpcInsLis
             | PpcInsLmw
             | PpcInsLswi
             | PpcInsLvebx
             | PpcInsLvehx
             | PpcInsLvewx
             | PpcInsLvsl
             | PpcInsLvsr
             | PpcInsLvx
             | PpcInsLvxl
             | PpcInsLwa
             | PpcInsLwarx
             | PpcInsLwaux
             | PpcInsLwax
             | PpcInsLwbrx
             | PpcInsLwz
             | PpcInsLwzu
             | PpcInsLwzux
             | PpcInsLwzx
             | PpcInsLxsdx
             | PpcInsLxvd2x
             | PpcInsLxvdsx
             | PpcInsLxvw4x
             | PpcInsMbar
             | PpcInsMcrf
             | PpcInsMfcr
             | PpcInsMfctr
             | PpcInsMfdcr
             | PpcInsMffs
             | PpcInsMflr
             | PpcInsMfmsr
             | PpcInsMfocrf
             | PpcInsMfspr
             | PpcInsMfsr
             | PpcInsMfsrin
             | PpcInsMftb
             | PpcInsMfvscr
             | PpcInsMsync
             | PpcInsMtcrf
             | PpcInsMtctr
             | PpcInsMtdcr
             | PpcInsMtfsb0
             | PpcInsMtfsb1
             | PpcInsMtfsf
             | PpcInsMtlr
             | PpcInsMtmsr
             | PpcInsMtmsrd
             | PpcInsMtocrf
             | PpcInsMtspr
             | PpcInsMtsr
             | PpcInsMtsrin
             | PpcInsMtvscr
             | PpcInsMulhd
             | PpcInsMulhdu
             | PpcInsMulhw
             | PpcInsMulhwu
             | PpcInsMulld
             | PpcInsMulli
             | PpcInsMullw
             | PpcInsNand
             | PpcInsNeg
             | PpcInsNop
             | PpcInsOri
             | PpcInsNor
             | PpcInsOr
             | PpcInsOrc
             | PpcInsOris
             | PpcInsPopcntd
             | PpcInsPopcntw
             | PpcInsRfci
             | PpcInsRfdi
             | PpcInsRfi
             | PpcInsRfid
             | PpcInsRfmci
             | PpcInsRldcl
             | PpcInsRldcr
             | PpcInsRldic
             | PpcInsRldicl
             | PpcInsRldicr
             | PpcInsRldimi
             | PpcInsRlwimi
             | PpcInsRlwinm
             | PpcInsRlwnm
             | PpcInsSc
             | PpcInsSlbia
             | PpcInsSlbie
             | PpcInsSlbmfee
             | PpcInsSlbmte
             | PpcInsSld
             | PpcInsSlw
             | PpcInsSrad
             | PpcInsSradi
             | PpcInsSraw
             | PpcInsSrawi
             | PpcInsSrd
             | PpcInsSrw
             | PpcInsStb
             | PpcInsStbu
             | PpcInsStbux
             | PpcInsStbx
             | PpcInsStd
             | PpcInsStdbrx
             | PpcInsStdcx
             | PpcInsStdu
             | PpcInsStdux
             | PpcInsStdx
             | PpcInsStfd
             | PpcInsStfdu
             | PpcInsStfdux
             | PpcInsStfdx
             | PpcInsStfiwx
             | PpcInsStfs
             | PpcInsStfsu
             | PpcInsStfsux
             | PpcInsStfsx
             | PpcInsSth
             | PpcInsSthbrx
             | PpcInsSthu
             | PpcInsSthux
             | PpcInsSthx
             | PpcInsStmw
             | PpcInsStswi
             | PpcInsStvebx
             | PpcInsStvehx
             | PpcInsStvewx
             | PpcInsStvx
             | PpcInsStvxl
             | PpcInsStw
             | PpcInsStwbrx
             | PpcInsStwcx
             | PpcInsStwu
             | PpcInsStwux
             | PpcInsStwx
             | PpcInsStxsdx
             | PpcInsStxvd2x
             | PpcInsStxvw4x
             | PpcInsSubf
             | PpcInsSubfc
             | PpcInsSubfe
             | PpcInsSubfic
             | PpcInsSubfme
             | PpcInsSubfze
             | PpcInsSync
             | PpcInsTd
             | PpcInsTdi
             | PpcInsTlbia
             | PpcInsTlbie
             | PpcInsTlbiel
             | PpcInsTlbivax
             | PpcInsTlbld
             | PpcInsTlbli
             | PpcInsTlbre
             | PpcInsTlbsx
             | PpcInsTlbsync
             | PpcInsTlbwe
             | PpcInsTrap
             | PpcInsTw
             | PpcInsTwi
             | PpcInsVaddcuw
             | PpcInsVaddfp
             | PpcInsVaddsbs
             | PpcInsVaddshs
             | PpcInsVaddsws
             | PpcInsVaddubm
             | PpcInsVaddubs
             | PpcInsVadduhm
             | PpcInsVadduhs
             | PpcInsVadduwm
             | PpcInsVadduws
             | PpcInsVand
             | PpcInsVandc
             | PpcInsVavgsb
             | PpcInsVavgsh
             | PpcInsVavgsw
             | PpcInsVavgub
             | PpcInsVavguh
             | PpcInsVavguw
             | PpcInsVcfsx
             | PpcInsVcfux
             | PpcInsVcmpbfp
             | PpcInsVcmpeqfp
             | PpcInsVcmpequb
             | PpcInsVcmpequh
             | PpcInsVcmpequw
             | PpcInsVcmpgefp
             | PpcInsVcmpgtfp
             | PpcInsVcmpgtsb
             | PpcInsVcmpgtsh
             | PpcInsVcmpgtsw
             | PpcInsVcmpgtub
             | PpcInsVcmpgtuh
             | PpcInsVcmpgtuw
             | PpcInsVctsxs
             | PpcInsVctuxs
             | PpcInsVexptefp
             | PpcInsVlogefp
             | PpcInsVmaddfp
             | PpcInsVmaxfp
             | PpcInsVmaxsb
             | PpcInsVmaxsh
             | PpcInsVmaxsw
             | PpcInsVmaxub
             | PpcInsVmaxuh
             | PpcInsVmaxuw
             | PpcInsVmhaddshs
             | PpcInsVmhraddshs
             | PpcInsVminfp
             | PpcInsVminsb
             | PpcInsVminsh
             | PpcInsVminsw
             | PpcInsVminub
             | PpcInsVminuh
             | PpcInsVminuw
             | PpcInsVmladduhm
             | PpcInsVmrghb
             | PpcInsVmrghh
             | PpcInsVmrghw
             | PpcInsVmrglb
             | PpcInsVmrglh
             | PpcInsVmrglw
             | PpcInsVmsummbm
             | PpcInsVmsumshm
             | PpcInsVmsumshs
             | PpcInsVmsumubm
             | PpcInsVmsumuhm
             | PpcInsVmsumuhs
             | PpcInsVmulesb
             | PpcInsVmulesh
             | PpcInsVmuleub
             | PpcInsVmuleuh
             | PpcInsVmulosb
             | PpcInsVmulosh
             | PpcInsVmuloub
             | PpcInsVmulouh
             | PpcInsVnmsubfp
             | PpcInsVnor
             | PpcInsVor
             | PpcInsVperm
             | PpcInsVpkpx
             | PpcInsVpkshss
             | PpcInsVpkshus
             | PpcInsVpkswss
             | PpcInsVpkswus
             | PpcInsVpkuhum
             | PpcInsVpkuhus
             | PpcInsVpkuwum
             | PpcInsVpkuwus
             | PpcInsVrefp
             | PpcInsVrfim
             | PpcInsVrfin
             | PpcInsVrfip
             | PpcInsVrfiz
             | PpcInsVrlb
             | PpcInsVrlh
             | PpcInsVrlw
             | PpcInsVrsqrtefp
             | PpcInsVsel
             | PpcInsVsl
             | PpcInsVslb
             | PpcInsVsldoi
             | PpcInsVslh
             | PpcInsVslo
             | PpcInsVslw
             | PpcInsVspltb
             | PpcInsVsplth
             | PpcInsVspltisb
             | PpcInsVspltish
             | PpcInsVspltisw
             | PpcInsVspltw
             | PpcInsVsr
             | PpcInsVsrab
             | PpcInsVsrah
             | PpcInsVsraw
             | PpcInsVsrb
             | PpcInsVsrh
             | PpcInsVsro
             | PpcInsVsrw
             | PpcInsVsubcuw
             | PpcInsVsubfp
             | PpcInsVsubsbs
             | PpcInsVsubshs
             | PpcInsVsubsws
             | PpcInsVsububm
             | PpcInsVsububs
             | PpcInsVsubuhm
             | PpcInsVsubuhs
             | PpcInsVsubuwm
             | PpcInsVsubuws
             | PpcInsVsum2sws
             | PpcInsVsum4sbs
             | PpcInsVsum4shs
             | PpcInsVsum4ubs
             | PpcInsVsumsws
             | PpcInsVupkhpx
             | PpcInsVupkhsb
             | PpcInsVupkhsh
             | PpcInsVupklpx
             | PpcInsVupklsb
             | PpcInsVupklsh
             | PpcInsVxor
             | PpcInsWait
             | PpcInsWrtee
             | PpcInsWrteei
             | PpcInsXor
             | PpcInsXori
             | PpcInsXoris
             | PpcInsXsabsdp
             | PpcInsXsadddp
             | PpcInsXscmpodp
             | PpcInsXscmpudp
             | PpcInsXscpsgndp
             | PpcInsXscvdpsp
             | PpcInsXscvdpsxds
             | PpcInsXscvdpsxws
             | PpcInsXscvdpuxds
             | PpcInsXscvdpuxws
             | PpcInsXscvspdp
             | PpcInsXscvsxddp
             | PpcInsXscvuxddp
             | PpcInsXsdivdp
             | PpcInsXsmaddadp
             | PpcInsXsmaddmdp
             | PpcInsXsmaxdp
             | PpcInsXsmindp
             | PpcInsXsmsubadp
             | PpcInsXsmsubmdp
             | PpcInsXsmuldp
             | PpcInsXsnabsdp
             | PpcInsXsnegdp
             | PpcInsXsnmaddadp
             | PpcInsXsnmaddmdp
             | PpcInsXsnmsubadp
             | PpcInsXsnmsubmdp
             | PpcInsXsrdpi
             | PpcInsXsrdpic
             | PpcInsXsrdpim
             | PpcInsXsrdpip
             | PpcInsXsrdpiz
             | PpcInsXsredp
             | PpcInsXsrsqrtedp
             | PpcInsXssqrtdp
             | PpcInsXssubdp
             | PpcInsXstdivdp
             | PpcInsXstsqrtdp
             | PpcInsXvabsdp
             | PpcInsXvabssp
             | PpcInsXvadddp
             | PpcInsXvaddsp
             | PpcInsXvcmpeqdp
             | PpcInsXvcmpeqsp
             | PpcInsXvcmpgedp
             | PpcInsXvcmpgesp
             | PpcInsXvcmpgtdp
             | PpcInsXvcmpgtsp
             | PpcInsXvcpsgndp
             | PpcInsXvcpsgnsp
             | PpcInsXvcvdpsp
             | PpcInsXvcvdpsxds
             | PpcInsXvcvdpsxws
             | PpcInsXvcvdpuxds
             | PpcInsXvcvdpuxws
             | PpcInsXvcvspdp
             | PpcInsXvcvspsxds
             | PpcInsXvcvspsxws
             | PpcInsXvcvspuxds
             | PpcInsXvcvspuxws
             | PpcInsXvcvsxddp
             | PpcInsXvcvsxdsp
             | PpcInsXvcvsxwdp
             | PpcInsXvcvsxwsp
             | PpcInsXvcvuxddp
             | PpcInsXvcvuxdsp
             | PpcInsXvcvuxwdp
             | PpcInsXvcvuxwsp
             | PpcInsXvdivdp
             | PpcInsXvdivsp
             | PpcInsXvmaddadp
             | PpcInsXvmaddasp
             | PpcInsXvmaddmdp
             | PpcInsXvmaddmsp
             | PpcInsXvmaxdp
             | PpcInsXvmaxsp
             | PpcInsXvmindp
             | PpcInsXvminsp
             | PpcInsXvmsubadp
             | PpcInsXvmsubasp
             | PpcInsXvmsubmdp
             | PpcInsXvmsubmsp
             | PpcInsXvmuldp
             | PpcInsXvmulsp
             | PpcInsXvnabsdp
             | PpcInsXvnabssp
             | PpcInsXvnegdp
             | PpcInsXvnegsp
             | PpcInsXvnmaddadp
             | PpcInsXvnmaddasp
             | PpcInsXvnmaddmdp
             | PpcInsXvnmaddmsp
             | PpcInsXvnmsubadp
             | PpcInsXvnmsubasp
             | PpcInsXvnmsubmdp
             | PpcInsXvnmsubmsp
             | PpcInsXvrdpi
             | PpcInsXvrdpic
             | PpcInsXvrdpim
             | PpcInsXvrdpip
             | PpcInsXvrdpiz
             | PpcInsXvredp
             | PpcInsXvresp
             | PpcInsXvrspi
             | PpcInsXvrspic
             | PpcInsXvrspim
             | PpcInsXvrspip
             | PpcInsXvrspiz
             | PpcInsXvrsqrtedp
             | PpcInsXvrsqrtesp
             | PpcInsXvsqrtdp
             | PpcInsXvsqrtsp
             | PpcInsXvsubdp
             | PpcInsXvsubsp
             | PpcInsXvtdivdp
             | PpcInsXvtdivsp
             | PpcInsXvtsqrtdp
             | PpcInsXvtsqrtsp
             | PpcInsXxland
             | PpcInsXxlandc
             | PpcInsXxlnor
             | PpcInsXxlor
             | PpcInsXxlxor
             | PpcInsXxmrghw
             | PpcInsXxmrglw
             | PpcInsXxpermdi
             | PpcInsXxsel
             | PpcInsXxsldwi
             | PpcInsXxspltw
             | PpcInsBca
             | PpcInsBcla
             | PpcInsSlwi
             | PpcInsSrwi
             | PpcInsSldi
             | PpcInsBta
             | PpcInsCrset
             | PpcInsCrnot
             | PpcInsCrmove
             | PpcInsCrclr
             | PpcInsMfbr0
             | PpcInsMfbr1
             | PpcInsMfbr2
             | PpcInsMfbr3
             | PpcInsMfbr4
             | PpcInsMfbr5
             | PpcInsMfbr6
             | PpcInsMfbr7
             | PpcInsMfxer
             | PpcInsMfrtcu
             | PpcInsMfrtcl
             | PpcInsMfdscr
             | PpcInsMfdsisr
             | PpcInsMfdar
             | PpcInsMfsrr2
             | PpcInsMfsrr3
             | PpcInsMfcfar
             | PpcInsMfamr
             | PpcInsMfpid
             | PpcInsMftblo
             | PpcInsMftbhi
             | PpcInsMfdbatu
             | PpcInsMfdbatl
             | PpcInsMfibatu
             | PpcInsMfibatl
             | PpcInsMfdccr
             | PpcInsMficcr
             | PpcInsMfdear
             | PpcInsMfesr
             | PpcInsMfspefscr
             | PpcInsMftcr
             | PpcInsMfasr
             | PpcInsMfpvr
             | PpcInsMftbu
             | PpcInsMtcr
             | PpcInsMtbr0
             | PpcInsMtbr1
             | PpcInsMtbr2
             | PpcInsMtbr3
             | PpcInsMtbr4
             | PpcInsMtbr5
             | PpcInsMtbr6
             | PpcInsMtbr7
             | PpcInsMtxer
             | PpcInsMtdscr
             | PpcInsMtdsisr
             | PpcInsMtdar
             | PpcInsMtsrr2
             | PpcInsMtsrr3
             | PpcInsMtcfar
             | PpcInsMtamr
             | PpcInsMtpid
             | PpcInsMttbl
             | PpcInsMttbu
             | PpcInsMttblo
             | PpcInsMttbhi
             | PpcInsMtdbatu
             | PpcInsMtdbatl
             | PpcInsMtibatu
             | PpcInsMtibatl
             | PpcInsMtdccr
             | PpcInsMticcr
             | PpcInsMtdear
             | PpcInsMtesr
             | PpcInsMtspefscr
             | PpcInsMttcr
             | PpcInsNot
             | PpcInsMr
             | PpcInsRotld
             | PpcInsRotldi
             | PpcInsClrldi
             | PpcInsRotlwi
             | PpcInsClrlwi
             | PpcInsRotlw
             | PpcInsSub
             | PpcInsSubc
             | PpcInsLwsync
             | PpcInsPtesync
             | PpcInsTdlt
             | PpcInsTdeq
             | PpcInsTdgt
             | PpcInsTdne
             | PpcInsTdllt
             | PpcInsTdlgt
             | PpcInsTdu
             | PpcInsTdlti
             | PpcInsTdeqi
             | PpcInsTdgti
             | PpcInsTdnei
             | PpcInsTdllti
             | PpcInsTdlgti
             | PpcInsTdui
             | PpcInsTlbrehi
             | PpcInsTlbrelo
             | PpcInsTlbwehi
             | PpcInsTlbwelo
             | PpcInsTwlt
             | PpcInsTweq
             | PpcInsTwgt
             | PpcInsTwne
             | PpcInsTwllt
             | PpcInsTwlgt
             | PpcInsTwu
             | PpcInsTwlti
             | PpcInsTweqi
             | PpcInsTwgti
             | PpcInsTwnei
             | PpcInsTwllti
             | PpcInsTwlgti
             | PpcInsTwui
             | PpcInsWaitrsv
             | PpcInsWaitimpl
             | PpcInsXnop
             | PpcInsXvmovdp
             | PpcInsXvmovsp
             | PpcInsXxspltd
             | PpcInsXxmrghd
             | PpcInsXxmrgld
             | PpcInsXxswapd
             | PpcInsBt
             | PpcInsBf
             | PpcInsBdnzt
             | PpcInsBdnzf
             | PpcInsBdzf
             | PpcInsBdzt
             | PpcInsBfa
             | PpcInsBdnzta
             | PpcInsBdnzfa
             | PpcInsBdzta
             | PpcInsBdzfa
             | PpcInsBtctr
             | PpcInsBfctr
             | PpcInsBtctrl
             | PpcInsBfctrl
             | PpcInsBtl
             | PpcInsBfl
             | PpcInsBdnztl
             | PpcInsBdnzfl
             | PpcInsBdztl
             | PpcInsBdzfl
             | PpcInsBtla
             | PpcInsBfla
             | PpcInsBdnztla
             | PpcInsBdnzfla
             | PpcInsBdztla
             | PpcInsBdzfla
             | PpcInsBtlr
             | PpcInsBflr
             | PpcInsBdnztlr
             | PpcInsBdztlr
             | PpcInsBdzflr
             | PpcInsBtlrl
             | PpcInsBflrl
             | PpcInsBdnztlrl
             | PpcInsBdnzflrl
             | PpcInsBdztlrl
             | PpcInsBdzflrl
             | PpcInsEnding
  deriving (Show,Eq,Bounded)
instance Enum PpcInsn where
  succ PpcInsInvalid = PpcInsAdd
  succ PpcInsAdd = PpcInsAddc
  succ PpcInsAddc = PpcInsAdde
  succ PpcInsAdde = PpcInsAddi
  succ PpcInsAddi = PpcInsAddic
  succ PpcInsAddic = PpcInsAddis
  succ PpcInsAddis = PpcInsAddme
  succ PpcInsAddme = PpcInsAddze
  succ PpcInsAddze = PpcInsAnd
  succ PpcInsAnd = PpcInsAndc
  succ PpcInsAndc = PpcInsAndis
  succ PpcInsAndis = PpcInsAndi
  succ PpcInsAndi = PpcInsB
  succ PpcInsB = PpcInsBa
  succ PpcInsBa = PpcInsBc
  succ PpcInsBc = PpcInsBcctr
  succ PpcInsBcctr = PpcInsBcctrl
  succ PpcInsBcctrl = PpcInsBcl
  succ PpcInsBcl = PpcInsBclr
  succ PpcInsBclr = PpcInsBclrl
  succ PpcInsBclrl = PpcInsBctr
  succ PpcInsBctr = PpcInsBctrl
  succ PpcInsBctrl = PpcInsBdnz
  succ PpcInsBdnz = PpcInsBdnza
  succ PpcInsBdnza = PpcInsBdnzl
  succ PpcInsBdnzl = PpcInsBdnzla
  succ PpcInsBdnzla = PpcInsBdnzlr
  succ PpcInsBdnzlr = PpcInsBdnzlrl
  succ PpcInsBdnzlrl = PpcInsBdz
  succ PpcInsBdz = PpcInsBdza
  succ PpcInsBdza = PpcInsBdzl
  succ PpcInsBdzl = PpcInsBdzla
  succ PpcInsBdzla = PpcInsBdzlr
  succ PpcInsBdzlr = PpcInsBdzlrl
  succ PpcInsBdzlrl = PpcInsBl
  succ PpcInsBl = PpcInsBla
  succ PpcInsBla = PpcInsBlr
  succ PpcInsBlr = PpcInsBlrl
  succ PpcInsBlrl = PpcInsBrinc
  succ PpcInsBrinc = PpcInsCmpd
  succ PpcInsCmpd = PpcInsCmpdi
  succ PpcInsCmpdi = PpcInsCmpld
  succ PpcInsCmpld = PpcInsCmpldi
  succ PpcInsCmpldi = PpcInsCmplw
  succ PpcInsCmplw = PpcInsCmplwi
  succ PpcInsCmplwi = PpcInsCmpw
  succ PpcInsCmpw = PpcInsCmpwi
  succ PpcInsCmpwi = PpcInsCntlzd
  succ PpcInsCntlzd = PpcInsCntlzw
  succ PpcInsCntlzw = PpcInsCreqv
  succ PpcInsCreqv = PpcInsCrxor
  succ PpcInsCrxor = PpcInsCrand
  succ PpcInsCrand = PpcInsCrandc
  succ PpcInsCrandc = PpcInsCrnand
  succ PpcInsCrnand = PpcInsCrnor
  succ PpcInsCrnor = PpcInsCror
  succ PpcInsCror = PpcInsCrorc
  succ PpcInsCrorc = PpcInsDcba
  succ PpcInsDcba = PpcInsDcbf
  succ PpcInsDcbf = PpcInsDcbi
  succ PpcInsDcbi = PpcInsDcbst
  succ PpcInsDcbst = PpcInsDcbt
  succ PpcInsDcbt = PpcInsDcbtst
  succ PpcInsDcbtst = PpcInsDcbz
  succ PpcInsDcbz = PpcInsDcbzl
  succ PpcInsDcbzl = PpcInsDccci
  succ PpcInsDccci = PpcInsDivd
  succ PpcInsDivd = PpcInsDivdu
  succ PpcInsDivdu = PpcInsDivw
  succ PpcInsDivw = PpcInsDivwu
  succ PpcInsDivwu = PpcInsDss
  succ PpcInsDss = PpcInsDssall
  succ PpcInsDssall = PpcInsDst
  succ PpcInsDst = PpcInsDstst
  succ PpcInsDstst = PpcInsDststt
  succ PpcInsDststt = PpcInsDstt
  succ PpcInsDstt = PpcInsEieio
  succ PpcInsEieio = PpcInsEqv
  succ PpcInsEqv = PpcInsEvabs
  succ PpcInsEvabs = PpcInsEvaddiw
  succ PpcInsEvaddiw = PpcInsEvaddsmiaaw
  succ PpcInsEvaddsmiaaw = PpcInsEvaddssiaaw
  succ PpcInsEvaddssiaaw = PpcInsEvaddumiaaw
  succ PpcInsEvaddumiaaw = PpcInsEvaddusiaaw
  succ PpcInsEvaddusiaaw = PpcInsEvaddw
  succ PpcInsEvaddw = PpcInsEvand
  succ PpcInsEvand = PpcInsEvandc
  succ PpcInsEvandc = PpcInsEvcmpeq
  succ PpcInsEvcmpeq = PpcInsEvcmpgts
  succ PpcInsEvcmpgts = PpcInsEvcmpgtu
  succ PpcInsEvcmpgtu = PpcInsEvcmplts
  succ PpcInsEvcmplts = PpcInsEvcmpltu
  succ PpcInsEvcmpltu = PpcInsEvcntlsw
  succ PpcInsEvcntlsw = PpcInsEvcntlzw
  succ PpcInsEvcntlzw = PpcInsEvdivws
  succ PpcInsEvdivws = PpcInsEvdivwu
  succ PpcInsEvdivwu = PpcInsEveqv
  succ PpcInsEveqv = PpcInsEvextsb
  succ PpcInsEvextsb = PpcInsEvextsh
  succ PpcInsEvextsh = PpcInsEvldd
  succ PpcInsEvldd = PpcInsEvlddx
  succ PpcInsEvlddx = PpcInsEvldh
  succ PpcInsEvldh = PpcInsEvldhx
  succ PpcInsEvldhx = PpcInsEvldw
  succ PpcInsEvldw = PpcInsEvldwx
  succ PpcInsEvldwx = PpcInsEvlhhesplat
  succ PpcInsEvlhhesplat = PpcInsEvlhhesplatx
  succ PpcInsEvlhhesplatx = PpcInsEvlhhossplat
  succ PpcInsEvlhhossplat = PpcInsEvlhhossplatx
  succ PpcInsEvlhhossplatx = PpcInsEvlhhousplat
  succ PpcInsEvlhhousplat = PpcInsEvlhhousplatx
  succ PpcInsEvlhhousplatx = PpcInsEvlwhe
  succ PpcInsEvlwhe = PpcInsEvlwhex
  succ PpcInsEvlwhex = PpcInsEvlwhos
  succ PpcInsEvlwhos = PpcInsEvlwhosx
  succ PpcInsEvlwhosx = PpcInsEvlwhou
  succ PpcInsEvlwhou = PpcInsEvlwhoux
  succ PpcInsEvlwhoux = PpcInsEvlwhsplat
  succ PpcInsEvlwhsplat = PpcInsEvlwhsplatx
  succ PpcInsEvlwhsplatx = PpcInsEvlwwsplat
  succ PpcInsEvlwwsplat = PpcInsEvlwwsplatx
  succ PpcInsEvlwwsplatx = PpcInsEvmergehi
  succ PpcInsEvmergehi = PpcInsEvmergehilo
  succ PpcInsEvmergehilo = PpcInsEvmergelo
  succ PpcInsEvmergelo = PpcInsEvmergelohi
  succ PpcInsEvmergelohi = PpcInsEvmhegsmfaa
  succ PpcInsEvmhegsmfaa = PpcInsEvmhegsmfan
  succ PpcInsEvmhegsmfan = PpcInsEvmhegsmiaa
  succ PpcInsEvmhegsmiaa = PpcInsEvmhegsmian
  succ PpcInsEvmhegsmian = PpcInsEvmhegumiaa
  succ PpcInsEvmhegumiaa = PpcInsEvmhegumian
  succ PpcInsEvmhegumian = PpcInsEvmhesmf
  succ PpcInsEvmhesmf = PpcInsEvmhesmfa
  succ PpcInsEvmhesmfa = PpcInsEvmhesmfaaw
  succ PpcInsEvmhesmfaaw = PpcInsEvmhesmfanw
  succ PpcInsEvmhesmfanw = PpcInsEvmhesmi
  succ PpcInsEvmhesmi = PpcInsEvmhesmia
  succ PpcInsEvmhesmia = PpcInsEvmhesmiaaw
  succ PpcInsEvmhesmiaaw = PpcInsEvmhesmianw
  succ PpcInsEvmhesmianw = PpcInsEvmhessf
  succ PpcInsEvmhessf = PpcInsEvmhessfa
  succ PpcInsEvmhessfa = PpcInsEvmhessfaaw
  succ PpcInsEvmhessfaaw = PpcInsEvmhessfanw
  succ PpcInsEvmhessfanw = PpcInsEvmhessiaaw
  succ PpcInsEvmhessiaaw = PpcInsEvmhessianw
  succ PpcInsEvmhessianw = PpcInsEvmheumi
  succ PpcInsEvmheumi = PpcInsEvmheumia
  succ PpcInsEvmheumia = PpcInsEvmheumiaaw
  succ PpcInsEvmheumiaaw = PpcInsEvmheumianw
  succ PpcInsEvmheumianw = PpcInsEvmheusiaaw
  succ PpcInsEvmheusiaaw = PpcInsEvmheusianw
  succ PpcInsEvmheusianw = PpcInsEvmhogsmfaa
  succ PpcInsEvmhogsmfaa = PpcInsEvmhogsmfan
  succ PpcInsEvmhogsmfan = PpcInsEvmhogsmiaa
  succ PpcInsEvmhogsmiaa = PpcInsEvmhogsmian
  succ PpcInsEvmhogsmian = PpcInsEvmhogumiaa
  succ PpcInsEvmhogumiaa = PpcInsEvmhogumian
  succ PpcInsEvmhogumian = PpcInsEvmhosmf
  succ PpcInsEvmhosmf = PpcInsEvmhosmfa
  succ PpcInsEvmhosmfa = PpcInsEvmhosmfaaw
  succ PpcInsEvmhosmfaaw = PpcInsEvmhosmfanw
  succ PpcInsEvmhosmfanw = PpcInsEvmhosmi
  succ PpcInsEvmhosmi = PpcInsEvmhosmia
  succ PpcInsEvmhosmia = PpcInsEvmhosmiaaw
  succ PpcInsEvmhosmiaaw = PpcInsEvmhosmianw
  succ PpcInsEvmhosmianw = PpcInsEvmhossf
  succ PpcInsEvmhossf = PpcInsEvmhossfa
  succ PpcInsEvmhossfa = PpcInsEvmhossfaaw
  succ PpcInsEvmhossfaaw = PpcInsEvmhossfanw
  succ PpcInsEvmhossfanw = PpcInsEvmhossiaaw
  succ PpcInsEvmhossiaaw = PpcInsEvmhossianw
  succ PpcInsEvmhossianw = PpcInsEvmhoumi
  succ PpcInsEvmhoumi = PpcInsEvmhoumia
  succ PpcInsEvmhoumia = PpcInsEvmhoumiaaw
  succ PpcInsEvmhoumiaaw = PpcInsEvmhoumianw
  succ PpcInsEvmhoumianw = PpcInsEvmhousiaaw
  succ PpcInsEvmhousiaaw = PpcInsEvmhousianw
  succ PpcInsEvmhousianw = PpcInsEvmra
  succ PpcInsEvmra = PpcInsEvmwhsmf
  succ PpcInsEvmwhsmf = PpcInsEvmwhsmfa
  succ PpcInsEvmwhsmfa = PpcInsEvmwhsmi
  succ PpcInsEvmwhsmi = PpcInsEvmwhsmia
  succ PpcInsEvmwhsmia = PpcInsEvmwhssf
  succ PpcInsEvmwhssf = PpcInsEvmwhssfa
  succ PpcInsEvmwhssfa = PpcInsEvmwhumi
  succ PpcInsEvmwhumi = PpcInsEvmwhumia
  succ PpcInsEvmwhumia = PpcInsEvmwlsmiaaw
  succ PpcInsEvmwlsmiaaw = PpcInsEvmwlsmianw
  succ PpcInsEvmwlsmianw = PpcInsEvmwlssiaaw
  succ PpcInsEvmwlssiaaw = PpcInsEvmwlssianw
  succ PpcInsEvmwlssianw = PpcInsEvmwlumi
  succ PpcInsEvmwlumi = PpcInsEvmwlumia
  succ PpcInsEvmwlumia = PpcInsEvmwlumiaaw
  succ PpcInsEvmwlumiaaw = PpcInsEvmwlumianw
  succ PpcInsEvmwlumianw = PpcInsEvmwlusiaaw
  succ PpcInsEvmwlusiaaw = PpcInsEvmwlusianw
  succ PpcInsEvmwlusianw = PpcInsEvmwsmf
  succ PpcInsEvmwsmf = PpcInsEvmwsmfa
  succ PpcInsEvmwsmfa = PpcInsEvmwsmfaa
  succ PpcInsEvmwsmfaa = PpcInsEvmwsmfan
  succ PpcInsEvmwsmfan = PpcInsEvmwsmi
  succ PpcInsEvmwsmi = PpcInsEvmwsmia
  succ PpcInsEvmwsmia = PpcInsEvmwsmiaa
  succ PpcInsEvmwsmiaa = PpcInsEvmwsmian
  succ PpcInsEvmwsmian = PpcInsEvmwssf
  succ PpcInsEvmwssf = PpcInsEvmwssfa
  succ PpcInsEvmwssfa = PpcInsEvmwssfaa
  succ PpcInsEvmwssfaa = PpcInsEvmwssfan
  succ PpcInsEvmwssfan = PpcInsEvmwumi
  succ PpcInsEvmwumi = PpcInsEvmwumia
  succ PpcInsEvmwumia = PpcInsEvmwumiaa
  succ PpcInsEvmwumiaa = PpcInsEvmwumian
  succ PpcInsEvmwumian = PpcInsEvnand
  succ PpcInsEvnand = PpcInsEvneg
  succ PpcInsEvneg = PpcInsEvnor
  succ PpcInsEvnor = PpcInsEvor
  succ PpcInsEvor = PpcInsEvorc
  succ PpcInsEvorc = PpcInsEvrlw
  succ PpcInsEvrlw = PpcInsEvrlwi
  succ PpcInsEvrlwi = PpcInsEvrndw
  succ PpcInsEvrndw = PpcInsEvslw
  succ PpcInsEvslw = PpcInsEvslwi
  succ PpcInsEvslwi = PpcInsEvsplatfi
  succ PpcInsEvsplatfi = PpcInsEvsplati
  succ PpcInsEvsplati = PpcInsEvsrwis
  succ PpcInsEvsrwis = PpcInsEvsrwiu
  succ PpcInsEvsrwiu = PpcInsEvsrws
  succ PpcInsEvsrws = PpcInsEvsrwu
  succ PpcInsEvsrwu = PpcInsEvstdd
  succ PpcInsEvstdd = PpcInsEvstddx
  succ PpcInsEvstddx = PpcInsEvstdh
  succ PpcInsEvstdh = PpcInsEvstdhx
  succ PpcInsEvstdhx = PpcInsEvstdw
  succ PpcInsEvstdw = PpcInsEvstdwx
  succ PpcInsEvstdwx = PpcInsEvstwhe
  succ PpcInsEvstwhe = PpcInsEvstwhex
  succ PpcInsEvstwhex = PpcInsEvstwho
  succ PpcInsEvstwho = PpcInsEvstwhox
  succ PpcInsEvstwhox = PpcInsEvstwwe
  succ PpcInsEvstwwe = PpcInsEvstwwex
  succ PpcInsEvstwwex = PpcInsEvstwwo
  succ PpcInsEvstwwo = PpcInsEvstwwox
  succ PpcInsEvstwwox = PpcInsEvsubfsmiaaw
  succ PpcInsEvsubfsmiaaw = PpcInsEvsubfssiaaw
  succ PpcInsEvsubfssiaaw = PpcInsEvsubfumiaaw
  succ PpcInsEvsubfumiaaw = PpcInsEvsubfusiaaw
  succ PpcInsEvsubfusiaaw = PpcInsEvsubfw
  succ PpcInsEvsubfw = PpcInsEvsubifw
  succ PpcInsEvsubifw = PpcInsEvxor
  succ PpcInsEvxor = PpcInsExtsb
  succ PpcInsExtsb = PpcInsExtsh
  succ PpcInsExtsh = PpcInsExtsw
  succ PpcInsExtsw = PpcInsFabs
  succ PpcInsFabs = PpcInsFadd
  succ PpcInsFadd = PpcInsFadds
  succ PpcInsFadds = PpcInsFcfid
  succ PpcInsFcfid = PpcInsFcfids
  succ PpcInsFcfids = PpcInsFcfidu
  succ PpcInsFcfidu = PpcInsFcfidus
  succ PpcInsFcfidus = PpcInsFcmpu
  succ PpcInsFcmpu = PpcInsFcpsgn
  succ PpcInsFcpsgn = PpcInsFctid
  succ PpcInsFctid = PpcInsFctiduz
  succ PpcInsFctiduz = PpcInsFctidz
  succ PpcInsFctidz = PpcInsFctiw
  succ PpcInsFctiw = PpcInsFctiwuz
  succ PpcInsFctiwuz = PpcInsFctiwz
  succ PpcInsFctiwz = PpcInsFdiv
  succ PpcInsFdiv = PpcInsFdivs
  succ PpcInsFdivs = PpcInsFmadd
  succ PpcInsFmadd = PpcInsFmadds
  succ PpcInsFmadds = PpcInsFmr
  succ PpcInsFmr = PpcInsFmsub
  succ PpcInsFmsub = PpcInsFmsubs
  succ PpcInsFmsubs = PpcInsFmul
  succ PpcInsFmul = PpcInsFmuls
  succ PpcInsFmuls = PpcInsFnabs
  succ PpcInsFnabs = PpcInsFneg
  succ PpcInsFneg = PpcInsFnmadd
  succ PpcInsFnmadd = PpcInsFnmadds
  succ PpcInsFnmadds = PpcInsFnmsub
  succ PpcInsFnmsub = PpcInsFnmsubs
  succ PpcInsFnmsubs = PpcInsFre
  succ PpcInsFre = PpcInsFres
  succ PpcInsFres = PpcInsFrim
  succ PpcInsFrim = PpcInsFrin
  succ PpcInsFrin = PpcInsFrip
  succ PpcInsFrip = PpcInsFriz
  succ PpcInsFriz = PpcInsFrsp
  succ PpcInsFrsp = PpcInsFrsqrte
  succ PpcInsFrsqrte = PpcInsFrsqrtes
  succ PpcInsFrsqrtes = PpcInsFsel
  succ PpcInsFsel = PpcInsFsqrt
  succ PpcInsFsqrt = PpcInsFsqrts
  succ PpcInsFsqrts = PpcInsFsub
  succ PpcInsFsub = PpcInsFsubs
  succ PpcInsFsubs = PpcInsIcbi
  succ PpcInsIcbi = PpcInsIccci
  succ PpcInsIccci = PpcInsIsel
  succ PpcInsIsel = PpcInsIsync
  succ PpcInsIsync = PpcInsLa
  succ PpcInsLa = PpcInsLbz
  succ PpcInsLbz = PpcInsLbzu
  succ PpcInsLbzu = PpcInsLbzux
  succ PpcInsLbzux = PpcInsLbzx
  succ PpcInsLbzx = PpcInsLd
  succ PpcInsLd = PpcInsLdarx
  succ PpcInsLdarx = PpcInsLdbrx
  succ PpcInsLdbrx = PpcInsLdu
  succ PpcInsLdu = PpcInsLdux
  succ PpcInsLdux = PpcInsLdx
  succ PpcInsLdx = PpcInsLfd
  succ PpcInsLfd = PpcInsLfdu
  succ PpcInsLfdu = PpcInsLfdux
  succ PpcInsLfdux = PpcInsLfdx
  succ PpcInsLfdx = PpcInsLfiwax
  succ PpcInsLfiwax = PpcInsLfiwzx
  succ PpcInsLfiwzx = PpcInsLfs
  succ PpcInsLfs = PpcInsLfsu
  succ PpcInsLfsu = PpcInsLfsux
  succ PpcInsLfsux = PpcInsLfsx
  succ PpcInsLfsx = PpcInsLha
  succ PpcInsLha = PpcInsLhau
  succ PpcInsLhau = PpcInsLhaux
  succ PpcInsLhaux = PpcInsLhax
  succ PpcInsLhax = PpcInsLhbrx
  succ PpcInsLhbrx = PpcInsLhz
  succ PpcInsLhz = PpcInsLhzu
  succ PpcInsLhzu = PpcInsLhzux
  succ PpcInsLhzux = PpcInsLhzx
  succ PpcInsLhzx = PpcInsLi
  succ PpcInsLi = PpcInsLis
  succ PpcInsLis = PpcInsLmw
  succ PpcInsLmw = PpcInsLswi
  succ PpcInsLswi = PpcInsLvebx
  succ PpcInsLvebx = PpcInsLvehx
  succ PpcInsLvehx = PpcInsLvewx
  succ PpcInsLvewx = PpcInsLvsl
  succ PpcInsLvsl = PpcInsLvsr
  succ PpcInsLvsr = PpcInsLvx
  succ PpcInsLvx = PpcInsLvxl
  succ PpcInsLvxl = PpcInsLwa
  succ PpcInsLwa = PpcInsLwarx
  succ PpcInsLwarx = PpcInsLwaux
  succ PpcInsLwaux = PpcInsLwax
  succ PpcInsLwax = PpcInsLwbrx
  succ PpcInsLwbrx = PpcInsLwz
  succ PpcInsLwz = PpcInsLwzu
  succ PpcInsLwzu = PpcInsLwzux
  succ PpcInsLwzux = PpcInsLwzx
  succ PpcInsLwzx = PpcInsLxsdx
  succ PpcInsLxsdx = PpcInsLxvd2x
  succ PpcInsLxvd2x = PpcInsLxvdsx
  succ PpcInsLxvdsx = PpcInsLxvw4x
  succ PpcInsLxvw4x = PpcInsMbar
  succ PpcInsMbar = PpcInsMcrf
  succ PpcInsMcrf = PpcInsMfcr
  succ PpcInsMfcr = PpcInsMfctr
  succ PpcInsMfctr = PpcInsMfdcr
  succ PpcInsMfdcr = PpcInsMffs
  succ PpcInsMffs = PpcInsMflr
  succ PpcInsMflr = PpcInsMfmsr
  succ PpcInsMfmsr = PpcInsMfocrf
  succ PpcInsMfocrf = PpcInsMfspr
  succ PpcInsMfspr = PpcInsMfsr
  succ PpcInsMfsr = PpcInsMfsrin
  succ PpcInsMfsrin = PpcInsMftb
  succ PpcInsMftb = PpcInsMfvscr
  succ PpcInsMfvscr = PpcInsMsync
  succ PpcInsMsync = PpcInsMtcrf
  succ PpcInsMtcrf = PpcInsMtctr
  succ PpcInsMtctr = PpcInsMtdcr
  succ PpcInsMtdcr = PpcInsMtfsb0
  succ PpcInsMtfsb0 = PpcInsMtfsb1
  succ PpcInsMtfsb1 = PpcInsMtfsf
  succ PpcInsMtfsf = PpcInsMtlr
  succ PpcInsMtlr = PpcInsMtmsr
  succ PpcInsMtmsr = PpcInsMtmsrd
  succ PpcInsMtmsrd = PpcInsMtocrf
  succ PpcInsMtocrf = PpcInsMtspr
  succ PpcInsMtspr = PpcInsMtsr
  succ PpcInsMtsr = PpcInsMtsrin
  succ PpcInsMtsrin = PpcInsMtvscr
  succ PpcInsMtvscr = PpcInsMulhd
  succ PpcInsMulhd = PpcInsMulhdu
  succ PpcInsMulhdu = PpcInsMulhw
  succ PpcInsMulhw = PpcInsMulhwu
  succ PpcInsMulhwu = PpcInsMulld
  succ PpcInsMulld = PpcInsMulli
  succ PpcInsMulli = PpcInsMullw
  succ PpcInsMullw = PpcInsNand
  succ PpcInsNand = PpcInsNeg
  succ PpcInsNeg = PpcInsNop
  succ PpcInsNop = PpcInsOri
  succ PpcInsOri = PpcInsNor
  succ PpcInsNor = PpcInsOr
  succ PpcInsOr = PpcInsOrc
  succ PpcInsOrc = PpcInsOris
  succ PpcInsOris = PpcInsPopcntd
  succ PpcInsPopcntd = PpcInsPopcntw
  succ PpcInsPopcntw = PpcInsRfci
  succ PpcInsRfci = PpcInsRfdi
  succ PpcInsRfdi = PpcInsRfi
  succ PpcInsRfi = PpcInsRfid
  succ PpcInsRfid = PpcInsRfmci
  succ PpcInsRfmci = PpcInsRldcl
  succ PpcInsRldcl = PpcInsRldcr
  succ PpcInsRldcr = PpcInsRldic
  succ PpcInsRldic = PpcInsRldicl
  succ PpcInsRldicl = PpcInsRldicr
  succ PpcInsRldicr = PpcInsRldimi
  succ PpcInsRldimi = PpcInsRlwimi
  succ PpcInsRlwimi = PpcInsRlwinm
  succ PpcInsRlwinm = PpcInsRlwnm
  succ PpcInsRlwnm = PpcInsSc
  succ PpcInsSc = PpcInsSlbia
  succ PpcInsSlbia = PpcInsSlbie
  succ PpcInsSlbie = PpcInsSlbmfee
  succ PpcInsSlbmfee = PpcInsSlbmte
  succ PpcInsSlbmte = PpcInsSld
  succ PpcInsSld = PpcInsSlw
  succ PpcInsSlw = PpcInsSrad
  succ PpcInsSrad = PpcInsSradi
  succ PpcInsSradi = PpcInsSraw
  succ PpcInsSraw = PpcInsSrawi
  succ PpcInsSrawi = PpcInsSrd
  succ PpcInsSrd = PpcInsSrw
  succ PpcInsSrw = PpcInsStb
  succ PpcInsStb = PpcInsStbu
  succ PpcInsStbu = PpcInsStbux
  succ PpcInsStbux = PpcInsStbx
  succ PpcInsStbx = PpcInsStd
  succ PpcInsStd = PpcInsStdbrx
  succ PpcInsStdbrx = PpcInsStdcx
  succ PpcInsStdcx = PpcInsStdu
  succ PpcInsStdu = PpcInsStdux
  succ PpcInsStdux = PpcInsStdx
  succ PpcInsStdx = PpcInsStfd
  succ PpcInsStfd = PpcInsStfdu
  succ PpcInsStfdu = PpcInsStfdux
  succ PpcInsStfdux = PpcInsStfdx
  succ PpcInsStfdx = PpcInsStfiwx
  succ PpcInsStfiwx = PpcInsStfs
  succ PpcInsStfs = PpcInsStfsu
  succ PpcInsStfsu = PpcInsStfsux
  succ PpcInsStfsux = PpcInsStfsx
  succ PpcInsStfsx = PpcInsSth
  succ PpcInsSth = PpcInsSthbrx
  succ PpcInsSthbrx = PpcInsSthu
  succ PpcInsSthu = PpcInsSthux
  succ PpcInsSthux = PpcInsSthx
  succ PpcInsSthx = PpcInsStmw
  succ PpcInsStmw = PpcInsStswi
  succ PpcInsStswi = PpcInsStvebx
  succ PpcInsStvebx = PpcInsStvehx
  succ PpcInsStvehx = PpcInsStvewx
  succ PpcInsStvewx = PpcInsStvx
  succ PpcInsStvx = PpcInsStvxl
  succ PpcInsStvxl = PpcInsStw
  succ PpcInsStw = PpcInsStwbrx
  succ PpcInsStwbrx = PpcInsStwcx
  succ PpcInsStwcx = PpcInsStwu
  succ PpcInsStwu = PpcInsStwux
  succ PpcInsStwux = PpcInsStwx
  succ PpcInsStwx = PpcInsStxsdx
  succ PpcInsStxsdx = PpcInsStxvd2x
  succ PpcInsStxvd2x = PpcInsStxvw4x
  succ PpcInsStxvw4x = PpcInsSubf
  succ PpcInsSubf = PpcInsSubfc
  succ PpcInsSubfc = PpcInsSubfe
  succ PpcInsSubfe = PpcInsSubfic
  succ PpcInsSubfic = PpcInsSubfme
  succ PpcInsSubfme = PpcInsSubfze
  succ PpcInsSubfze = PpcInsSync
  succ PpcInsSync = PpcInsTd
  succ PpcInsTd = PpcInsTdi
  succ PpcInsTdi = PpcInsTlbia
  succ PpcInsTlbia = PpcInsTlbie
  succ PpcInsTlbie = PpcInsTlbiel
  succ PpcInsTlbiel = PpcInsTlbivax
  succ PpcInsTlbivax = PpcInsTlbld
  succ PpcInsTlbld = PpcInsTlbli
  succ PpcInsTlbli = PpcInsTlbre
  succ PpcInsTlbre = PpcInsTlbsx
  succ PpcInsTlbsx = PpcInsTlbsync
  succ PpcInsTlbsync = PpcInsTlbwe
  succ PpcInsTlbwe = PpcInsTrap
  succ PpcInsTrap = PpcInsTw
  succ PpcInsTw = PpcInsTwi
  succ PpcInsTwi = PpcInsVaddcuw
  succ PpcInsVaddcuw = PpcInsVaddfp
  succ PpcInsVaddfp = PpcInsVaddsbs
  succ PpcInsVaddsbs = PpcInsVaddshs
  succ PpcInsVaddshs = PpcInsVaddsws
  succ PpcInsVaddsws = PpcInsVaddubm
  succ PpcInsVaddubm = PpcInsVaddubs
  succ PpcInsVaddubs = PpcInsVadduhm
  succ PpcInsVadduhm = PpcInsVadduhs
  succ PpcInsVadduhs = PpcInsVadduwm
  succ PpcInsVadduwm = PpcInsVadduws
  succ PpcInsVadduws = PpcInsVand
  succ PpcInsVand = PpcInsVandc
  succ PpcInsVandc = PpcInsVavgsb
  succ PpcInsVavgsb = PpcInsVavgsh
  succ PpcInsVavgsh = PpcInsVavgsw
  succ PpcInsVavgsw = PpcInsVavgub
  succ PpcInsVavgub = PpcInsVavguh
  succ PpcInsVavguh = PpcInsVavguw
  succ PpcInsVavguw = PpcInsVcfsx
  succ PpcInsVcfsx = PpcInsVcfux
  succ PpcInsVcfux = PpcInsVcmpbfp
  succ PpcInsVcmpbfp = PpcInsVcmpeqfp
  succ PpcInsVcmpeqfp = PpcInsVcmpequb
  succ PpcInsVcmpequb = PpcInsVcmpequh
  succ PpcInsVcmpequh = PpcInsVcmpequw
  succ PpcInsVcmpequw = PpcInsVcmpgefp
  succ PpcInsVcmpgefp = PpcInsVcmpgtfp
  succ PpcInsVcmpgtfp = PpcInsVcmpgtsb
  succ PpcInsVcmpgtsb = PpcInsVcmpgtsh
  succ PpcInsVcmpgtsh = PpcInsVcmpgtsw
  succ PpcInsVcmpgtsw = PpcInsVcmpgtub
  succ PpcInsVcmpgtub = PpcInsVcmpgtuh
  succ PpcInsVcmpgtuh = PpcInsVcmpgtuw
  succ PpcInsVcmpgtuw = PpcInsVctsxs
  succ PpcInsVctsxs = PpcInsVctuxs
  succ PpcInsVctuxs = PpcInsVexptefp
  succ PpcInsVexptefp = PpcInsVlogefp
  succ PpcInsVlogefp = PpcInsVmaddfp
  succ PpcInsVmaddfp = PpcInsVmaxfp
  succ PpcInsVmaxfp = PpcInsVmaxsb
  succ PpcInsVmaxsb = PpcInsVmaxsh
  succ PpcInsVmaxsh = PpcInsVmaxsw
  succ PpcInsVmaxsw = PpcInsVmaxub
  succ PpcInsVmaxub = PpcInsVmaxuh
  succ PpcInsVmaxuh = PpcInsVmaxuw
  succ PpcInsVmaxuw = PpcInsVmhaddshs
  succ PpcInsVmhaddshs = PpcInsVmhraddshs
  succ PpcInsVmhraddshs = PpcInsVminfp
  succ PpcInsVminfp = PpcInsVminsb
  succ PpcInsVminsb = PpcInsVminsh
  succ PpcInsVminsh = PpcInsVminsw
  succ PpcInsVminsw = PpcInsVminub
  succ PpcInsVminub = PpcInsVminuh
  succ PpcInsVminuh = PpcInsVminuw
  succ PpcInsVminuw = PpcInsVmladduhm
  succ PpcInsVmladduhm = PpcInsVmrghb
  succ PpcInsVmrghb = PpcInsVmrghh
  succ PpcInsVmrghh = PpcInsVmrghw
  succ PpcInsVmrghw = PpcInsVmrglb
  succ PpcInsVmrglb = PpcInsVmrglh
  succ PpcInsVmrglh = PpcInsVmrglw
  succ PpcInsVmrglw = PpcInsVmsummbm
  succ PpcInsVmsummbm = PpcInsVmsumshm
  succ PpcInsVmsumshm = PpcInsVmsumshs
  succ PpcInsVmsumshs = PpcInsVmsumubm
  succ PpcInsVmsumubm = PpcInsVmsumuhm
  succ PpcInsVmsumuhm = PpcInsVmsumuhs
  succ PpcInsVmsumuhs = PpcInsVmulesb
  succ PpcInsVmulesb = PpcInsVmulesh
  succ PpcInsVmulesh = PpcInsVmuleub
  succ PpcInsVmuleub = PpcInsVmuleuh
  succ PpcInsVmuleuh = PpcInsVmulosb
  succ PpcInsVmulosb = PpcInsVmulosh
  succ PpcInsVmulosh = PpcInsVmuloub
  succ PpcInsVmuloub = PpcInsVmulouh
  succ PpcInsVmulouh = PpcInsVnmsubfp
  succ PpcInsVnmsubfp = PpcInsVnor
  succ PpcInsVnor = PpcInsVor
  succ PpcInsVor = PpcInsVperm
  succ PpcInsVperm = PpcInsVpkpx
  succ PpcInsVpkpx = PpcInsVpkshss
  succ PpcInsVpkshss = PpcInsVpkshus
  succ PpcInsVpkshus = PpcInsVpkswss
  succ PpcInsVpkswss = PpcInsVpkswus
  succ PpcInsVpkswus = PpcInsVpkuhum
  succ PpcInsVpkuhum = PpcInsVpkuhus
  succ PpcInsVpkuhus = PpcInsVpkuwum
  succ PpcInsVpkuwum = PpcInsVpkuwus
  succ PpcInsVpkuwus = PpcInsVrefp
  succ PpcInsVrefp = PpcInsVrfim
  succ PpcInsVrfim = PpcInsVrfin
  succ PpcInsVrfin = PpcInsVrfip
  succ PpcInsVrfip = PpcInsVrfiz
  succ PpcInsVrfiz = PpcInsVrlb
  succ PpcInsVrlb = PpcInsVrlh
  succ PpcInsVrlh = PpcInsVrlw
  succ PpcInsVrlw = PpcInsVrsqrtefp
  succ PpcInsVrsqrtefp = PpcInsVsel
  succ PpcInsVsel = PpcInsVsl
  succ PpcInsVsl = PpcInsVslb
  succ PpcInsVslb = PpcInsVsldoi
  succ PpcInsVsldoi = PpcInsVslh
  succ PpcInsVslh = PpcInsVslo
  succ PpcInsVslo = PpcInsVslw
  succ PpcInsVslw = PpcInsVspltb
  succ PpcInsVspltb = PpcInsVsplth
  succ PpcInsVsplth = PpcInsVspltisb
  succ PpcInsVspltisb = PpcInsVspltish
  succ PpcInsVspltish = PpcInsVspltisw
  succ PpcInsVspltisw = PpcInsVspltw
  succ PpcInsVspltw = PpcInsVsr
  succ PpcInsVsr = PpcInsVsrab
  succ PpcInsVsrab = PpcInsVsrah
  succ PpcInsVsrah = PpcInsVsraw
  succ PpcInsVsraw = PpcInsVsrb
  succ PpcInsVsrb = PpcInsVsrh
  succ PpcInsVsrh = PpcInsVsro
  succ PpcInsVsro = PpcInsVsrw
  succ PpcInsVsrw = PpcInsVsubcuw
  succ PpcInsVsubcuw = PpcInsVsubfp
  succ PpcInsVsubfp = PpcInsVsubsbs
  succ PpcInsVsubsbs = PpcInsVsubshs
  succ PpcInsVsubshs = PpcInsVsubsws
  succ PpcInsVsubsws = PpcInsVsububm
  succ PpcInsVsububm = PpcInsVsububs
  succ PpcInsVsububs = PpcInsVsubuhm
  succ PpcInsVsubuhm = PpcInsVsubuhs
  succ PpcInsVsubuhs = PpcInsVsubuwm
  succ PpcInsVsubuwm = PpcInsVsubuws
  succ PpcInsVsubuws = PpcInsVsum2sws
  succ PpcInsVsum2sws = PpcInsVsum4sbs
  succ PpcInsVsum4sbs = PpcInsVsum4shs
  succ PpcInsVsum4shs = PpcInsVsum4ubs
  succ PpcInsVsum4ubs = PpcInsVsumsws
  succ PpcInsVsumsws = PpcInsVupkhpx
  succ PpcInsVupkhpx = PpcInsVupkhsb
  succ PpcInsVupkhsb = PpcInsVupkhsh
  succ PpcInsVupkhsh = PpcInsVupklpx
  succ PpcInsVupklpx = PpcInsVupklsb
  succ PpcInsVupklsb = PpcInsVupklsh
  succ PpcInsVupklsh = PpcInsVxor
  succ PpcInsVxor = PpcInsWait
  succ PpcInsWait = PpcInsWrtee
  succ PpcInsWrtee = PpcInsWrteei
  succ PpcInsWrteei = PpcInsXor
  succ PpcInsXor = PpcInsXori
  succ PpcInsXori = PpcInsXoris
  succ PpcInsXoris = PpcInsXsabsdp
  succ PpcInsXsabsdp = PpcInsXsadddp
  succ PpcInsXsadddp = PpcInsXscmpodp
  succ PpcInsXscmpodp = PpcInsXscmpudp
  succ PpcInsXscmpudp = PpcInsXscpsgndp
  succ PpcInsXscpsgndp = PpcInsXscvdpsp
  succ PpcInsXscvdpsp = PpcInsXscvdpsxds
  succ PpcInsXscvdpsxds = PpcInsXscvdpsxws
  succ PpcInsXscvdpsxws = PpcInsXscvdpuxds
  succ PpcInsXscvdpuxds = PpcInsXscvdpuxws
  succ PpcInsXscvdpuxws = PpcInsXscvspdp
  succ PpcInsXscvspdp = PpcInsXscvsxddp
  succ PpcInsXscvsxddp = PpcInsXscvuxddp
  succ PpcInsXscvuxddp = PpcInsXsdivdp
  succ PpcInsXsdivdp = PpcInsXsmaddadp
  succ PpcInsXsmaddadp = PpcInsXsmaddmdp
  succ PpcInsXsmaddmdp = PpcInsXsmaxdp
  succ PpcInsXsmaxdp = PpcInsXsmindp
  succ PpcInsXsmindp = PpcInsXsmsubadp
  succ PpcInsXsmsubadp = PpcInsXsmsubmdp
  succ PpcInsXsmsubmdp = PpcInsXsmuldp
  succ PpcInsXsmuldp = PpcInsXsnabsdp
  succ PpcInsXsnabsdp = PpcInsXsnegdp
  succ PpcInsXsnegdp = PpcInsXsnmaddadp
  succ PpcInsXsnmaddadp = PpcInsXsnmaddmdp
  succ PpcInsXsnmaddmdp = PpcInsXsnmsubadp
  succ PpcInsXsnmsubadp = PpcInsXsnmsubmdp
  succ PpcInsXsnmsubmdp = PpcInsXsrdpi
  succ PpcInsXsrdpi = PpcInsXsrdpic
  succ PpcInsXsrdpic = PpcInsXsrdpim
  succ PpcInsXsrdpim = PpcInsXsrdpip
  succ PpcInsXsrdpip = PpcInsXsrdpiz
  succ PpcInsXsrdpiz = PpcInsXsredp
  succ PpcInsXsredp = PpcInsXsrsqrtedp
  succ PpcInsXsrsqrtedp = PpcInsXssqrtdp
  succ PpcInsXssqrtdp = PpcInsXssubdp
  succ PpcInsXssubdp = PpcInsXstdivdp
  succ PpcInsXstdivdp = PpcInsXstsqrtdp
  succ PpcInsXstsqrtdp = PpcInsXvabsdp
  succ PpcInsXvabsdp = PpcInsXvabssp
  succ PpcInsXvabssp = PpcInsXvadddp
  succ PpcInsXvadddp = PpcInsXvaddsp
  succ PpcInsXvaddsp = PpcInsXvcmpeqdp
  succ PpcInsXvcmpeqdp = PpcInsXvcmpeqsp
  succ PpcInsXvcmpeqsp = PpcInsXvcmpgedp
  succ PpcInsXvcmpgedp = PpcInsXvcmpgesp
  succ PpcInsXvcmpgesp = PpcInsXvcmpgtdp
  succ PpcInsXvcmpgtdp = PpcInsXvcmpgtsp
  succ PpcInsXvcmpgtsp = PpcInsXvcpsgndp
  succ PpcInsXvcpsgndp = PpcInsXvcpsgnsp
  succ PpcInsXvcpsgnsp = PpcInsXvcvdpsp
  succ PpcInsXvcvdpsp = PpcInsXvcvdpsxds
  succ PpcInsXvcvdpsxds = PpcInsXvcvdpsxws
  succ PpcInsXvcvdpsxws = PpcInsXvcvdpuxds
  succ PpcInsXvcvdpuxds = PpcInsXvcvdpuxws
  succ PpcInsXvcvdpuxws = PpcInsXvcvspdp
  succ PpcInsXvcvspdp = PpcInsXvcvspsxds
  succ PpcInsXvcvspsxds = PpcInsXvcvspsxws
  succ PpcInsXvcvspsxws = PpcInsXvcvspuxds
  succ PpcInsXvcvspuxds = PpcInsXvcvspuxws
  succ PpcInsXvcvspuxws = PpcInsXvcvsxddp
  succ PpcInsXvcvsxddp = PpcInsXvcvsxdsp
  succ PpcInsXvcvsxdsp = PpcInsXvcvsxwdp
  succ PpcInsXvcvsxwdp = PpcInsXvcvsxwsp
  succ PpcInsXvcvsxwsp = PpcInsXvcvuxddp
  succ PpcInsXvcvuxddp = PpcInsXvcvuxdsp
  succ PpcInsXvcvuxdsp = PpcInsXvcvuxwdp
  succ PpcInsXvcvuxwdp = PpcInsXvcvuxwsp
  succ PpcInsXvcvuxwsp = PpcInsXvdivdp
  succ PpcInsXvdivdp = PpcInsXvdivsp
  succ PpcInsXvdivsp = PpcInsXvmaddadp
  succ PpcInsXvmaddadp = PpcInsXvmaddasp
  succ PpcInsXvmaddasp = PpcInsXvmaddmdp
  succ PpcInsXvmaddmdp = PpcInsXvmaddmsp
  succ PpcInsXvmaddmsp = PpcInsXvmaxdp
  succ PpcInsXvmaxdp = PpcInsXvmaxsp
  succ PpcInsXvmaxsp = PpcInsXvmindp
  succ PpcInsXvmindp = PpcInsXvminsp
  succ PpcInsXvminsp = PpcInsXvmsubadp
  succ PpcInsXvmsubadp = PpcInsXvmsubasp
  succ PpcInsXvmsubasp = PpcInsXvmsubmdp
  succ PpcInsXvmsubmdp = PpcInsXvmsubmsp
  succ PpcInsXvmsubmsp = PpcInsXvmuldp
  succ PpcInsXvmuldp = PpcInsXvmulsp
  succ PpcInsXvmulsp = PpcInsXvnabsdp
  succ PpcInsXvnabsdp = PpcInsXvnabssp
  succ PpcInsXvnabssp = PpcInsXvnegdp
  succ PpcInsXvnegdp = PpcInsXvnegsp
  succ PpcInsXvnegsp = PpcInsXvnmaddadp
  succ PpcInsXvnmaddadp = PpcInsXvnmaddasp
  succ PpcInsXvnmaddasp = PpcInsXvnmaddmdp
  succ PpcInsXvnmaddmdp = PpcInsXvnmaddmsp
  succ PpcInsXvnmaddmsp = PpcInsXvnmsubadp
  succ PpcInsXvnmsubadp = PpcInsXvnmsubasp
  succ PpcInsXvnmsubasp = PpcInsXvnmsubmdp
  succ PpcInsXvnmsubmdp = PpcInsXvnmsubmsp
  succ PpcInsXvnmsubmsp = PpcInsXvrdpi
  succ PpcInsXvrdpi = PpcInsXvrdpic
  succ PpcInsXvrdpic = PpcInsXvrdpim
  succ PpcInsXvrdpim = PpcInsXvrdpip
  succ PpcInsXvrdpip = PpcInsXvrdpiz
  succ PpcInsXvrdpiz = PpcInsXvredp
  succ PpcInsXvredp = PpcInsXvresp
  succ PpcInsXvresp = PpcInsXvrspi
  succ PpcInsXvrspi = PpcInsXvrspic
  succ PpcInsXvrspic = PpcInsXvrspim
  succ PpcInsXvrspim = PpcInsXvrspip
  succ PpcInsXvrspip = PpcInsXvrspiz
  succ PpcInsXvrspiz = PpcInsXvrsqrtedp
  succ PpcInsXvrsqrtedp = PpcInsXvrsqrtesp
  succ PpcInsXvrsqrtesp = PpcInsXvsqrtdp
  succ PpcInsXvsqrtdp = PpcInsXvsqrtsp
  succ PpcInsXvsqrtsp = PpcInsXvsubdp
  succ PpcInsXvsubdp = PpcInsXvsubsp
  succ PpcInsXvsubsp = PpcInsXvtdivdp
  succ PpcInsXvtdivdp = PpcInsXvtdivsp
  succ PpcInsXvtdivsp = PpcInsXvtsqrtdp
  succ PpcInsXvtsqrtdp = PpcInsXvtsqrtsp
  succ PpcInsXvtsqrtsp = PpcInsXxland
  succ PpcInsXxland = PpcInsXxlandc
  succ PpcInsXxlandc = PpcInsXxlnor
  succ PpcInsXxlnor = PpcInsXxlor
  succ PpcInsXxlor = PpcInsXxlxor
  succ PpcInsXxlxor = PpcInsXxmrghw
  succ PpcInsXxmrghw = PpcInsXxmrglw
  succ PpcInsXxmrglw = PpcInsXxpermdi
  succ PpcInsXxpermdi = PpcInsXxsel
  succ PpcInsXxsel = PpcInsXxsldwi
  succ PpcInsXxsldwi = PpcInsXxspltw
  succ PpcInsXxspltw = PpcInsBca
  succ PpcInsBca = PpcInsBcla
  succ PpcInsBcla = PpcInsSlwi
  succ PpcInsSlwi = PpcInsSrwi
  succ PpcInsSrwi = PpcInsSldi
  succ PpcInsSldi = PpcInsBta
  succ PpcInsBta = PpcInsCrset
  succ PpcInsCrset = PpcInsCrnot
  succ PpcInsCrnot = PpcInsCrmove
  succ PpcInsCrmove = PpcInsCrclr
  succ PpcInsCrclr = PpcInsMfbr0
  succ PpcInsMfbr0 = PpcInsMfbr1
  succ PpcInsMfbr1 = PpcInsMfbr2
  succ PpcInsMfbr2 = PpcInsMfbr3
  succ PpcInsMfbr3 = PpcInsMfbr4
  succ PpcInsMfbr4 = PpcInsMfbr5
  succ PpcInsMfbr5 = PpcInsMfbr6
  succ PpcInsMfbr6 = PpcInsMfbr7
  succ PpcInsMfbr7 = PpcInsMfxer
  succ PpcInsMfxer = PpcInsMfrtcu
  succ PpcInsMfrtcu = PpcInsMfrtcl
  succ PpcInsMfrtcl = PpcInsMfdscr
  succ PpcInsMfdscr = PpcInsMfdsisr
  succ PpcInsMfdsisr = PpcInsMfdar
  succ PpcInsMfdar = PpcInsMfsrr2
  succ PpcInsMfsrr2 = PpcInsMfsrr3
  succ PpcInsMfsrr3 = PpcInsMfcfar
  succ PpcInsMfcfar = PpcInsMfamr
  succ PpcInsMfamr = PpcInsMfpid
  succ PpcInsMfpid = PpcInsMftblo
  succ PpcInsMftblo = PpcInsMftbhi
  succ PpcInsMftbhi = PpcInsMfdbatu
  succ PpcInsMfdbatu = PpcInsMfdbatl
  succ PpcInsMfdbatl = PpcInsMfibatu
  succ PpcInsMfibatu = PpcInsMfibatl
  succ PpcInsMfibatl = PpcInsMfdccr
  succ PpcInsMfdccr = PpcInsMficcr
  succ PpcInsMficcr = PpcInsMfdear
  succ PpcInsMfdear = PpcInsMfesr
  succ PpcInsMfesr = PpcInsMfspefscr
  succ PpcInsMfspefscr = PpcInsMftcr
  succ PpcInsMftcr = PpcInsMfasr
  succ PpcInsMfasr = PpcInsMfpvr
  succ PpcInsMfpvr = PpcInsMftbu
  succ PpcInsMftbu = PpcInsMtcr
  succ PpcInsMtcr = PpcInsMtbr0
  succ PpcInsMtbr0 = PpcInsMtbr1
  succ PpcInsMtbr1 = PpcInsMtbr2
  succ PpcInsMtbr2 = PpcInsMtbr3
  succ PpcInsMtbr3 = PpcInsMtbr4
  succ PpcInsMtbr4 = PpcInsMtbr5
  succ PpcInsMtbr5 = PpcInsMtbr6
  succ PpcInsMtbr6 = PpcInsMtbr7
  succ PpcInsMtbr7 = PpcInsMtxer
  succ PpcInsMtxer = PpcInsMtdscr
  succ PpcInsMtdscr = PpcInsMtdsisr
  succ PpcInsMtdsisr = PpcInsMtdar
  succ PpcInsMtdar = PpcInsMtsrr2
  succ PpcInsMtsrr2 = PpcInsMtsrr3
  succ PpcInsMtsrr3 = PpcInsMtcfar
  succ PpcInsMtcfar = PpcInsMtamr
  succ PpcInsMtamr = PpcInsMtpid
  succ PpcInsMtpid = PpcInsMttbl
  succ PpcInsMttbl = PpcInsMttbu
  succ PpcInsMttbu = PpcInsMttblo
  succ PpcInsMttblo = PpcInsMttbhi
  succ PpcInsMttbhi = PpcInsMtdbatu
  succ PpcInsMtdbatu = PpcInsMtdbatl
  succ PpcInsMtdbatl = PpcInsMtibatu
  succ PpcInsMtibatu = PpcInsMtibatl
  succ PpcInsMtibatl = PpcInsMtdccr
  succ PpcInsMtdccr = PpcInsMticcr
  succ PpcInsMticcr = PpcInsMtdear
  succ PpcInsMtdear = PpcInsMtesr
  succ PpcInsMtesr = PpcInsMtspefscr
  succ PpcInsMtspefscr = PpcInsMttcr
  succ PpcInsMttcr = PpcInsNot
  succ PpcInsNot = PpcInsMr
  succ PpcInsMr = PpcInsRotld
  succ PpcInsRotld = PpcInsRotldi
  succ PpcInsRotldi = PpcInsClrldi
  succ PpcInsClrldi = PpcInsRotlwi
  succ PpcInsRotlwi = PpcInsClrlwi
  succ PpcInsClrlwi = PpcInsRotlw
  succ PpcInsRotlw = PpcInsSub
  succ PpcInsSub = PpcInsSubc
  succ PpcInsSubc = PpcInsLwsync
  succ PpcInsLwsync = PpcInsPtesync
  succ PpcInsPtesync = PpcInsTdlt
  succ PpcInsTdlt = PpcInsTdeq
  succ PpcInsTdeq = PpcInsTdgt
  succ PpcInsTdgt = PpcInsTdne
  succ PpcInsTdne = PpcInsTdllt
  succ PpcInsTdllt = PpcInsTdlgt
  succ PpcInsTdlgt = PpcInsTdu
  succ PpcInsTdu = PpcInsTdlti
  succ PpcInsTdlti = PpcInsTdeqi
  succ PpcInsTdeqi = PpcInsTdgti
  succ PpcInsTdgti = PpcInsTdnei
  succ PpcInsTdnei = PpcInsTdllti
  succ PpcInsTdllti = PpcInsTdlgti
  succ PpcInsTdlgti = PpcInsTdui
  succ PpcInsTdui = PpcInsTlbrehi
  succ PpcInsTlbrehi = PpcInsTlbrelo
  succ PpcInsTlbrelo = PpcInsTlbwehi
  succ PpcInsTlbwehi = PpcInsTlbwelo
  succ PpcInsTlbwelo = PpcInsTwlt
  succ PpcInsTwlt = PpcInsTweq
  succ PpcInsTweq = PpcInsTwgt
  succ PpcInsTwgt = PpcInsTwne
  succ PpcInsTwne = PpcInsTwllt
  succ PpcInsTwllt = PpcInsTwlgt
  succ PpcInsTwlgt = PpcInsTwu
  succ PpcInsTwu = PpcInsTwlti
  succ PpcInsTwlti = PpcInsTweqi
  succ PpcInsTweqi = PpcInsTwgti
  succ PpcInsTwgti = PpcInsTwnei
  succ PpcInsTwnei = PpcInsTwllti
  succ PpcInsTwllti = PpcInsTwlgti
  succ PpcInsTwlgti = PpcInsTwui
  succ PpcInsTwui = PpcInsWaitrsv
  succ PpcInsWaitrsv = PpcInsWaitimpl
  succ PpcInsWaitimpl = PpcInsXnop
  succ PpcInsXnop = PpcInsXvmovdp
  succ PpcInsXvmovdp = PpcInsXvmovsp
  succ PpcInsXvmovsp = PpcInsXxspltd
  succ PpcInsXxspltd = PpcInsXxmrghd
  succ PpcInsXxmrghd = PpcInsXxmrgld
  succ PpcInsXxmrgld = PpcInsXxswapd
  succ PpcInsXxswapd = PpcInsBt
  succ PpcInsBt = PpcInsBf
  succ PpcInsBf = PpcInsBdnzt
  succ PpcInsBdnzt = PpcInsBdnzf
  succ PpcInsBdnzf = PpcInsBdzf
  succ PpcInsBdzf = PpcInsBdzt
  succ PpcInsBdzt = PpcInsBfa
  succ PpcInsBfa = PpcInsBdnzta
  succ PpcInsBdnzta = PpcInsBdnzfa
  succ PpcInsBdnzfa = PpcInsBdzta
  succ PpcInsBdzta = PpcInsBdzfa
  succ PpcInsBdzfa = PpcInsBtctr
  succ PpcInsBtctr = PpcInsBfctr
  succ PpcInsBfctr = PpcInsBtctrl
  succ PpcInsBtctrl = PpcInsBfctrl
  succ PpcInsBfctrl = PpcInsBtl
  succ PpcInsBtl = PpcInsBfl
  succ PpcInsBfl = PpcInsBdnztl
  succ PpcInsBdnztl = PpcInsBdnzfl
  succ PpcInsBdnzfl = PpcInsBdztl
  succ PpcInsBdztl = PpcInsBdzfl
  succ PpcInsBdzfl = PpcInsBtla
  succ PpcInsBtla = PpcInsBfla
  succ PpcInsBfla = PpcInsBdnztla
  succ PpcInsBdnztla = PpcInsBdnzfla
  succ PpcInsBdnzfla = PpcInsBdztla
  succ PpcInsBdztla = PpcInsBdzfla
  succ PpcInsBdzfla = PpcInsBtlr
  succ PpcInsBtlr = PpcInsBflr
  succ PpcInsBflr = PpcInsBdnztlr
  succ PpcInsBdnztlr = PpcInsBdztlr
  succ PpcInsBdztlr = PpcInsBdzflr
  succ PpcInsBdzflr = PpcInsBtlrl
  succ PpcInsBtlrl = PpcInsBflrl
  succ PpcInsBflrl = PpcInsBdnztlrl
  succ PpcInsBdnztlrl = PpcInsBdnzflrl
  succ PpcInsBdnzflrl = PpcInsBdztlrl
  succ PpcInsBdztlrl = PpcInsBdzflrl
  succ PpcInsBdzflrl = PpcInsEnding
  succ PpcInsEnding = error "PpcInsn.succ: PpcInsEnding has no successor"

  pred PpcInsAdd = PpcInsInvalid
  pred PpcInsAddc = PpcInsAdd
  pred PpcInsAdde = PpcInsAddc
  pred PpcInsAddi = PpcInsAdde
  pred PpcInsAddic = PpcInsAddi
  pred PpcInsAddis = PpcInsAddic
  pred PpcInsAddme = PpcInsAddis
  pred PpcInsAddze = PpcInsAddme
  pred PpcInsAnd = PpcInsAddze
  pred PpcInsAndc = PpcInsAnd
  pred PpcInsAndis = PpcInsAndc
  pred PpcInsAndi = PpcInsAndis
  pred PpcInsB = PpcInsAndi
  pred PpcInsBa = PpcInsB
  pred PpcInsBc = PpcInsBa
  pred PpcInsBcctr = PpcInsBc
  pred PpcInsBcctrl = PpcInsBcctr
  pred PpcInsBcl = PpcInsBcctrl
  pred PpcInsBclr = PpcInsBcl
  pred PpcInsBclrl = PpcInsBclr
  pred PpcInsBctr = PpcInsBclrl
  pred PpcInsBctrl = PpcInsBctr
  pred PpcInsBdnz = PpcInsBctrl
  pred PpcInsBdnza = PpcInsBdnz
  pred PpcInsBdnzl = PpcInsBdnza
  pred PpcInsBdnzla = PpcInsBdnzl
  pred PpcInsBdnzlr = PpcInsBdnzla
  pred PpcInsBdnzlrl = PpcInsBdnzlr
  pred PpcInsBdz = PpcInsBdnzlrl
  pred PpcInsBdza = PpcInsBdz
  pred PpcInsBdzl = PpcInsBdza
  pred PpcInsBdzla = PpcInsBdzl
  pred PpcInsBdzlr = PpcInsBdzla
  pred PpcInsBdzlrl = PpcInsBdzlr
  pred PpcInsBl = PpcInsBdzlrl
  pred PpcInsBla = PpcInsBl
  pred PpcInsBlr = PpcInsBla
  pred PpcInsBlrl = PpcInsBlr
  pred PpcInsBrinc = PpcInsBlrl
  pred PpcInsCmpd = PpcInsBrinc
  pred PpcInsCmpdi = PpcInsCmpd
  pred PpcInsCmpld = PpcInsCmpdi
  pred PpcInsCmpldi = PpcInsCmpld
  pred PpcInsCmplw = PpcInsCmpldi
  pred PpcInsCmplwi = PpcInsCmplw
  pred PpcInsCmpw = PpcInsCmplwi
  pred PpcInsCmpwi = PpcInsCmpw
  pred PpcInsCntlzd = PpcInsCmpwi
  pred PpcInsCntlzw = PpcInsCntlzd
  pred PpcInsCreqv = PpcInsCntlzw
  pred PpcInsCrxor = PpcInsCreqv
  pred PpcInsCrand = PpcInsCrxor
  pred PpcInsCrandc = PpcInsCrand
  pred PpcInsCrnand = PpcInsCrandc
  pred PpcInsCrnor = PpcInsCrnand
  pred PpcInsCror = PpcInsCrnor
  pred PpcInsCrorc = PpcInsCror
  pred PpcInsDcba = PpcInsCrorc
  pred PpcInsDcbf = PpcInsDcba
  pred PpcInsDcbi = PpcInsDcbf
  pred PpcInsDcbst = PpcInsDcbi
  pred PpcInsDcbt = PpcInsDcbst
  pred PpcInsDcbtst = PpcInsDcbt
  pred PpcInsDcbz = PpcInsDcbtst
  pred PpcInsDcbzl = PpcInsDcbz
  pred PpcInsDccci = PpcInsDcbzl
  pred PpcInsDivd = PpcInsDccci
  pred PpcInsDivdu = PpcInsDivd
  pred PpcInsDivw = PpcInsDivdu
  pred PpcInsDivwu = PpcInsDivw
  pred PpcInsDss = PpcInsDivwu
  pred PpcInsDssall = PpcInsDss
  pred PpcInsDst = PpcInsDssall
  pred PpcInsDstst = PpcInsDst
  pred PpcInsDststt = PpcInsDstst
  pred PpcInsDstt = PpcInsDststt
  pred PpcInsEieio = PpcInsDstt
  pred PpcInsEqv = PpcInsEieio
  pred PpcInsEvabs = PpcInsEqv
  pred PpcInsEvaddiw = PpcInsEvabs
  pred PpcInsEvaddsmiaaw = PpcInsEvaddiw
  pred PpcInsEvaddssiaaw = PpcInsEvaddsmiaaw
  pred PpcInsEvaddumiaaw = PpcInsEvaddssiaaw
  pred PpcInsEvaddusiaaw = PpcInsEvaddumiaaw
  pred PpcInsEvaddw = PpcInsEvaddusiaaw
  pred PpcInsEvand = PpcInsEvaddw
  pred PpcInsEvandc = PpcInsEvand
  pred PpcInsEvcmpeq = PpcInsEvandc
  pred PpcInsEvcmpgts = PpcInsEvcmpeq
  pred PpcInsEvcmpgtu = PpcInsEvcmpgts
  pred PpcInsEvcmplts = PpcInsEvcmpgtu
  pred PpcInsEvcmpltu = PpcInsEvcmplts
  pred PpcInsEvcntlsw = PpcInsEvcmpltu
  pred PpcInsEvcntlzw = PpcInsEvcntlsw
  pred PpcInsEvdivws = PpcInsEvcntlzw
  pred PpcInsEvdivwu = PpcInsEvdivws
  pred PpcInsEveqv = PpcInsEvdivwu
  pred PpcInsEvextsb = PpcInsEveqv
  pred PpcInsEvextsh = PpcInsEvextsb
  pred PpcInsEvldd = PpcInsEvextsh
  pred PpcInsEvlddx = PpcInsEvldd
  pred PpcInsEvldh = PpcInsEvlddx
  pred PpcInsEvldhx = PpcInsEvldh
  pred PpcInsEvldw = PpcInsEvldhx
  pred PpcInsEvldwx = PpcInsEvldw
  pred PpcInsEvlhhesplat = PpcInsEvldwx
  pred PpcInsEvlhhesplatx = PpcInsEvlhhesplat
  pred PpcInsEvlhhossplat = PpcInsEvlhhesplatx
  pred PpcInsEvlhhossplatx = PpcInsEvlhhossplat
  pred PpcInsEvlhhousplat = PpcInsEvlhhossplatx
  pred PpcInsEvlhhousplatx = PpcInsEvlhhousplat
  pred PpcInsEvlwhe = PpcInsEvlhhousplatx
  pred PpcInsEvlwhex = PpcInsEvlwhe
  pred PpcInsEvlwhos = PpcInsEvlwhex
  pred PpcInsEvlwhosx = PpcInsEvlwhos
  pred PpcInsEvlwhou = PpcInsEvlwhosx
  pred PpcInsEvlwhoux = PpcInsEvlwhou
  pred PpcInsEvlwhsplat = PpcInsEvlwhoux
  pred PpcInsEvlwhsplatx = PpcInsEvlwhsplat
  pred PpcInsEvlwwsplat = PpcInsEvlwhsplatx
  pred PpcInsEvlwwsplatx = PpcInsEvlwwsplat
  pred PpcInsEvmergehi = PpcInsEvlwwsplatx
  pred PpcInsEvmergehilo = PpcInsEvmergehi
  pred PpcInsEvmergelo = PpcInsEvmergehilo
  pred PpcInsEvmergelohi = PpcInsEvmergelo
  pred PpcInsEvmhegsmfaa = PpcInsEvmergelohi
  pred PpcInsEvmhegsmfan = PpcInsEvmhegsmfaa
  pred PpcInsEvmhegsmiaa = PpcInsEvmhegsmfan
  pred PpcInsEvmhegsmian = PpcInsEvmhegsmiaa
  pred PpcInsEvmhegumiaa = PpcInsEvmhegsmian
  pred PpcInsEvmhegumian = PpcInsEvmhegumiaa
  pred PpcInsEvmhesmf = PpcInsEvmhegumian
  pred PpcInsEvmhesmfa = PpcInsEvmhesmf
  pred PpcInsEvmhesmfaaw = PpcInsEvmhesmfa
  pred PpcInsEvmhesmfanw = PpcInsEvmhesmfaaw
  pred PpcInsEvmhesmi = PpcInsEvmhesmfanw
  pred PpcInsEvmhesmia = PpcInsEvmhesmi
  pred PpcInsEvmhesmiaaw = PpcInsEvmhesmia
  pred PpcInsEvmhesmianw = PpcInsEvmhesmiaaw
  pred PpcInsEvmhessf = PpcInsEvmhesmianw
  pred PpcInsEvmhessfa = PpcInsEvmhessf
  pred PpcInsEvmhessfaaw = PpcInsEvmhessfa
  pred PpcInsEvmhessfanw = PpcInsEvmhessfaaw
  pred PpcInsEvmhessiaaw = PpcInsEvmhessfanw
  pred PpcInsEvmhessianw = PpcInsEvmhessiaaw
  pred PpcInsEvmheumi = PpcInsEvmhessianw
  pred PpcInsEvmheumia = PpcInsEvmheumi
  pred PpcInsEvmheumiaaw = PpcInsEvmheumia
  pred PpcInsEvmheumianw = PpcInsEvmheumiaaw
  pred PpcInsEvmheusiaaw = PpcInsEvmheumianw
  pred PpcInsEvmheusianw = PpcInsEvmheusiaaw
  pred PpcInsEvmhogsmfaa = PpcInsEvmheusianw
  pred PpcInsEvmhogsmfan = PpcInsEvmhogsmfaa
  pred PpcInsEvmhogsmiaa = PpcInsEvmhogsmfan
  pred PpcInsEvmhogsmian = PpcInsEvmhogsmiaa
  pred PpcInsEvmhogumiaa = PpcInsEvmhogsmian
  pred PpcInsEvmhogumian = PpcInsEvmhogumiaa
  pred PpcInsEvmhosmf = PpcInsEvmhogumian
  pred PpcInsEvmhosmfa = PpcInsEvmhosmf
  pred PpcInsEvmhosmfaaw = PpcInsEvmhosmfa
  pred PpcInsEvmhosmfanw = PpcInsEvmhosmfaaw
  pred PpcInsEvmhosmi = PpcInsEvmhosmfanw
  pred PpcInsEvmhosmia = PpcInsEvmhosmi
  pred PpcInsEvmhosmiaaw = PpcInsEvmhosmia
  pred PpcInsEvmhosmianw = PpcInsEvmhosmiaaw
  pred PpcInsEvmhossf = PpcInsEvmhosmianw
  pred PpcInsEvmhossfa = PpcInsEvmhossf
  pred PpcInsEvmhossfaaw = PpcInsEvmhossfa
  pred PpcInsEvmhossfanw = PpcInsEvmhossfaaw
  pred PpcInsEvmhossiaaw = PpcInsEvmhossfanw
  pred PpcInsEvmhossianw = PpcInsEvmhossiaaw
  pred PpcInsEvmhoumi = PpcInsEvmhossianw
  pred PpcInsEvmhoumia = PpcInsEvmhoumi
  pred PpcInsEvmhoumiaaw = PpcInsEvmhoumia
  pred PpcInsEvmhoumianw = PpcInsEvmhoumiaaw
  pred PpcInsEvmhousiaaw = PpcInsEvmhoumianw
  pred PpcInsEvmhousianw = PpcInsEvmhousiaaw
  pred PpcInsEvmra = PpcInsEvmhousianw
  pred PpcInsEvmwhsmf = PpcInsEvmra
  pred PpcInsEvmwhsmfa = PpcInsEvmwhsmf
  pred PpcInsEvmwhsmi = PpcInsEvmwhsmfa
  pred PpcInsEvmwhsmia = PpcInsEvmwhsmi
  pred PpcInsEvmwhssf = PpcInsEvmwhsmia
  pred PpcInsEvmwhssfa = PpcInsEvmwhssf
  pred PpcInsEvmwhumi = PpcInsEvmwhssfa
  pred PpcInsEvmwhumia = PpcInsEvmwhumi
  pred PpcInsEvmwlsmiaaw = PpcInsEvmwhumia
  pred PpcInsEvmwlsmianw = PpcInsEvmwlsmiaaw
  pred PpcInsEvmwlssiaaw = PpcInsEvmwlsmianw
  pred PpcInsEvmwlssianw = PpcInsEvmwlssiaaw
  pred PpcInsEvmwlumi = PpcInsEvmwlssianw
  pred PpcInsEvmwlumia = PpcInsEvmwlumi
  pred PpcInsEvmwlumiaaw = PpcInsEvmwlumia
  pred PpcInsEvmwlumianw = PpcInsEvmwlumiaaw
  pred PpcInsEvmwlusiaaw = PpcInsEvmwlumianw
  pred PpcInsEvmwlusianw = PpcInsEvmwlusiaaw
  pred PpcInsEvmwsmf = PpcInsEvmwlusianw
  pred PpcInsEvmwsmfa = PpcInsEvmwsmf
  pred PpcInsEvmwsmfaa = PpcInsEvmwsmfa
  pred PpcInsEvmwsmfan = PpcInsEvmwsmfaa
  pred PpcInsEvmwsmi = PpcInsEvmwsmfan
  pred PpcInsEvmwsmia = PpcInsEvmwsmi
  pred PpcInsEvmwsmiaa = PpcInsEvmwsmia
  pred PpcInsEvmwsmian = PpcInsEvmwsmiaa
  pred PpcInsEvmwssf = PpcInsEvmwsmian
  pred PpcInsEvmwssfa = PpcInsEvmwssf
  pred PpcInsEvmwssfaa = PpcInsEvmwssfa
  pred PpcInsEvmwssfan = PpcInsEvmwssfaa
  pred PpcInsEvmwumi = PpcInsEvmwssfan
  pred PpcInsEvmwumia = PpcInsEvmwumi
  pred PpcInsEvmwumiaa = PpcInsEvmwumia
  pred PpcInsEvmwumian = PpcInsEvmwumiaa
  pred PpcInsEvnand = PpcInsEvmwumian
  pred PpcInsEvneg = PpcInsEvnand
  pred PpcInsEvnor = PpcInsEvneg
  pred PpcInsEvor = PpcInsEvnor
  pred PpcInsEvorc = PpcInsEvor
  pred PpcInsEvrlw = PpcInsEvorc
  pred PpcInsEvrlwi = PpcInsEvrlw
  pred PpcInsEvrndw = PpcInsEvrlwi
  pred PpcInsEvslw = PpcInsEvrndw
  pred PpcInsEvslwi = PpcInsEvslw
  pred PpcInsEvsplatfi = PpcInsEvslwi
  pred PpcInsEvsplati = PpcInsEvsplatfi
  pred PpcInsEvsrwis = PpcInsEvsplati
  pred PpcInsEvsrwiu = PpcInsEvsrwis
  pred PpcInsEvsrws = PpcInsEvsrwiu
  pred PpcInsEvsrwu = PpcInsEvsrws
  pred PpcInsEvstdd = PpcInsEvsrwu
  pred PpcInsEvstddx = PpcInsEvstdd
  pred PpcInsEvstdh = PpcInsEvstddx
  pred PpcInsEvstdhx = PpcInsEvstdh
  pred PpcInsEvstdw = PpcInsEvstdhx
  pred PpcInsEvstdwx = PpcInsEvstdw
  pred PpcInsEvstwhe = PpcInsEvstdwx
  pred PpcInsEvstwhex = PpcInsEvstwhe
  pred PpcInsEvstwho = PpcInsEvstwhex
  pred PpcInsEvstwhox = PpcInsEvstwho
  pred PpcInsEvstwwe = PpcInsEvstwhox
  pred PpcInsEvstwwex = PpcInsEvstwwe
  pred PpcInsEvstwwo = PpcInsEvstwwex
  pred PpcInsEvstwwox = PpcInsEvstwwo
  pred PpcInsEvsubfsmiaaw = PpcInsEvstwwox
  pred PpcInsEvsubfssiaaw = PpcInsEvsubfsmiaaw
  pred PpcInsEvsubfumiaaw = PpcInsEvsubfssiaaw
  pred PpcInsEvsubfusiaaw = PpcInsEvsubfumiaaw
  pred PpcInsEvsubfw = PpcInsEvsubfusiaaw
  pred PpcInsEvsubifw = PpcInsEvsubfw
  pred PpcInsEvxor = PpcInsEvsubifw
  pred PpcInsExtsb = PpcInsEvxor
  pred PpcInsExtsh = PpcInsExtsb
  pred PpcInsExtsw = PpcInsExtsh
  pred PpcInsFabs = PpcInsExtsw
  pred PpcInsFadd = PpcInsFabs
  pred PpcInsFadds = PpcInsFadd
  pred PpcInsFcfid = PpcInsFadds
  pred PpcInsFcfids = PpcInsFcfid
  pred PpcInsFcfidu = PpcInsFcfids
  pred PpcInsFcfidus = PpcInsFcfidu
  pred PpcInsFcmpu = PpcInsFcfidus
  pred PpcInsFcpsgn = PpcInsFcmpu
  pred PpcInsFctid = PpcInsFcpsgn
  pred PpcInsFctiduz = PpcInsFctid
  pred PpcInsFctidz = PpcInsFctiduz
  pred PpcInsFctiw = PpcInsFctidz
  pred PpcInsFctiwuz = PpcInsFctiw
  pred PpcInsFctiwz = PpcInsFctiwuz
  pred PpcInsFdiv = PpcInsFctiwz
  pred PpcInsFdivs = PpcInsFdiv
  pred PpcInsFmadd = PpcInsFdivs
  pred PpcInsFmadds = PpcInsFmadd
  pred PpcInsFmr = PpcInsFmadds
  pred PpcInsFmsub = PpcInsFmr
  pred PpcInsFmsubs = PpcInsFmsub
  pred PpcInsFmul = PpcInsFmsubs
  pred PpcInsFmuls = PpcInsFmul
  pred PpcInsFnabs = PpcInsFmuls
  pred PpcInsFneg = PpcInsFnabs
  pred PpcInsFnmadd = PpcInsFneg
  pred PpcInsFnmadds = PpcInsFnmadd
  pred PpcInsFnmsub = PpcInsFnmadds
  pred PpcInsFnmsubs = PpcInsFnmsub
  pred PpcInsFre = PpcInsFnmsubs
  pred PpcInsFres = PpcInsFre
  pred PpcInsFrim = PpcInsFres
  pred PpcInsFrin = PpcInsFrim
  pred PpcInsFrip = PpcInsFrin
  pred PpcInsFriz = PpcInsFrip
  pred PpcInsFrsp = PpcInsFriz
  pred PpcInsFrsqrte = PpcInsFrsp
  pred PpcInsFrsqrtes = PpcInsFrsqrte
  pred PpcInsFsel = PpcInsFrsqrtes
  pred PpcInsFsqrt = PpcInsFsel
  pred PpcInsFsqrts = PpcInsFsqrt
  pred PpcInsFsub = PpcInsFsqrts
  pred PpcInsFsubs = PpcInsFsub
  pred PpcInsIcbi = PpcInsFsubs
  pred PpcInsIccci = PpcInsIcbi
  pred PpcInsIsel = PpcInsIccci
  pred PpcInsIsync = PpcInsIsel
  pred PpcInsLa = PpcInsIsync
  pred PpcInsLbz = PpcInsLa
  pred PpcInsLbzu = PpcInsLbz
  pred PpcInsLbzux = PpcInsLbzu
  pred PpcInsLbzx = PpcInsLbzux
  pred PpcInsLd = PpcInsLbzx
  pred PpcInsLdarx = PpcInsLd
  pred PpcInsLdbrx = PpcInsLdarx
  pred PpcInsLdu = PpcInsLdbrx
  pred PpcInsLdux = PpcInsLdu
  pred PpcInsLdx = PpcInsLdux
  pred PpcInsLfd = PpcInsLdx
  pred PpcInsLfdu = PpcInsLfd
  pred PpcInsLfdux = PpcInsLfdu
  pred PpcInsLfdx = PpcInsLfdux
  pred PpcInsLfiwax = PpcInsLfdx
  pred PpcInsLfiwzx = PpcInsLfiwax
  pred PpcInsLfs = PpcInsLfiwzx
  pred PpcInsLfsu = PpcInsLfs
  pred PpcInsLfsux = PpcInsLfsu
  pred PpcInsLfsx = PpcInsLfsux
  pred PpcInsLha = PpcInsLfsx
  pred PpcInsLhau = PpcInsLha
  pred PpcInsLhaux = PpcInsLhau
  pred PpcInsLhax = PpcInsLhaux
  pred PpcInsLhbrx = PpcInsLhax
  pred PpcInsLhz = PpcInsLhbrx
  pred PpcInsLhzu = PpcInsLhz
  pred PpcInsLhzux = PpcInsLhzu
  pred PpcInsLhzx = PpcInsLhzux
  pred PpcInsLi = PpcInsLhzx
  pred PpcInsLis = PpcInsLi
  pred PpcInsLmw = PpcInsLis
  pred PpcInsLswi = PpcInsLmw
  pred PpcInsLvebx = PpcInsLswi
  pred PpcInsLvehx = PpcInsLvebx
  pred PpcInsLvewx = PpcInsLvehx
  pred PpcInsLvsl = PpcInsLvewx
  pred PpcInsLvsr = PpcInsLvsl
  pred PpcInsLvx = PpcInsLvsr
  pred PpcInsLvxl = PpcInsLvx
  pred PpcInsLwa = PpcInsLvxl
  pred PpcInsLwarx = PpcInsLwa
  pred PpcInsLwaux = PpcInsLwarx
  pred PpcInsLwax = PpcInsLwaux
  pred PpcInsLwbrx = PpcInsLwax
  pred PpcInsLwz = PpcInsLwbrx
  pred PpcInsLwzu = PpcInsLwz
  pred PpcInsLwzux = PpcInsLwzu
  pred PpcInsLwzx = PpcInsLwzux
  pred PpcInsLxsdx = PpcInsLwzx
  pred PpcInsLxvd2x = PpcInsLxsdx
  pred PpcInsLxvdsx = PpcInsLxvd2x
  pred PpcInsLxvw4x = PpcInsLxvdsx
  pred PpcInsMbar = PpcInsLxvw4x
  pred PpcInsMcrf = PpcInsMbar
  pred PpcInsMfcr = PpcInsMcrf
  pred PpcInsMfctr = PpcInsMfcr
  pred PpcInsMfdcr = PpcInsMfctr
  pred PpcInsMffs = PpcInsMfdcr
  pred PpcInsMflr = PpcInsMffs
  pred PpcInsMfmsr = PpcInsMflr
  pred PpcInsMfocrf = PpcInsMfmsr
  pred PpcInsMfspr = PpcInsMfocrf
  pred PpcInsMfsr = PpcInsMfspr
  pred PpcInsMfsrin = PpcInsMfsr
  pred PpcInsMftb = PpcInsMfsrin
  pred PpcInsMfvscr = PpcInsMftb
  pred PpcInsMsync = PpcInsMfvscr
  pred PpcInsMtcrf = PpcInsMsync
  pred PpcInsMtctr = PpcInsMtcrf
  pred PpcInsMtdcr = PpcInsMtctr
  pred PpcInsMtfsb0 = PpcInsMtdcr
  pred PpcInsMtfsb1 = PpcInsMtfsb0
  pred PpcInsMtfsf = PpcInsMtfsb1
  pred PpcInsMtlr = PpcInsMtfsf
  pred PpcInsMtmsr = PpcInsMtlr
  pred PpcInsMtmsrd = PpcInsMtmsr
  pred PpcInsMtocrf = PpcInsMtmsrd
  pred PpcInsMtspr = PpcInsMtocrf
  pred PpcInsMtsr = PpcInsMtspr
  pred PpcInsMtsrin = PpcInsMtsr
  pred PpcInsMtvscr = PpcInsMtsrin
  pred PpcInsMulhd = PpcInsMtvscr
  pred PpcInsMulhdu = PpcInsMulhd
  pred PpcInsMulhw = PpcInsMulhdu
  pred PpcInsMulhwu = PpcInsMulhw
  pred PpcInsMulld = PpcInsMulhwu
  pred PpcInsMulli = PpcInsMulld
  pred PpcInsMullw = PpcInsMulli
  pred PpcInsNand = PpcInsMullw
  pred PpcInsNeg = PpcInsNand
  pred PpcInsNop = PpcInsNeg
  pred PpcInsOri = PpcInsNop
  pred PpcInsNor = PpcInsOri
  pred PpcInsOr = PpcInsNor
  pred PpcInsOrc = PpcInsOr
  pred PpcInsOris = PpcInsOrc
  pred PpcInsPopcntd = PpcInsOris
  pred PpcInsPopcntw = PpcInsPopcntd
  pred PpcInsRfci = PpcInsPopcntw
  pred PpcInsRfdi = PpcInsRfci
  pred PpcInsRfi = PpcInsRfdi
  pred PpcInsRfid = PpcInsRfi
  pred PpcInsRfmci = PpcInsRfid
  pred PpcInsRldcl = PpcInsRfmci
  pred PpcInsRldcr = PpcInsRldcl
  pred PpcInsRldic = PpcInsRldcr
  pred PpcInsRldicl = PpcInsRldic
  pred PpcInsRldicr = PpcInsRldicl
  pred PpcInsRldimi = PpcInsRldicr
  pred PpcInsRlwimi = PpcInsRldimi
  pred PpcInsRlwinm = PpcInsRlwimi
  pred PpcInsRlwnm = PpcInsRlwinm
  pred PpcInsSc = PpcInsRlwnm
  pred PpcInsSlbia = PpcInsSc
  pred PpcInsSlbie = PpcInsSlbia
  pred PpcInsSlbmfee = PpcInsSlbie
  pred PpcInsSlbmte = PpcInsSlbmfee
  pred PpcInsSld = PpcInsSlbmte
  pred PpcInsSlw = PpcInsSld
  pred PpcInsSrad = PpcInsSlw
  pred PpcInsSradi = PpcInsSrad
  pred PpcInsSraw = PpcInsSradi
  pred PpcInsSrawi = PpcInsSraw
  pred PpcInsSrd = PpcInsSrawi
  pred PpcInsSrw = PpcInsSrd
  pred PpcInsStb = PpcInsSrw
  pred PpcInsStbu = PpcInsStb
  pred PpcInsStbux = PpcInsStbu
  pred PpcInsStbx = PpcInsStbux
  pred PpcInsStd = PpcInsStbx
  pred PpcInsStdbrx = PpcInsStd
  pred PpcInsStdcx = PpcInsStdbrx
  pred PpcInsStdu = PpcInsStdcx
  pred PpcInsStdux = PpcInsStdu
  pred PpcInsStdx = PpcInsStdux
  pred PpcInsStfd = PpcInsStdx
  pred PpcInsStfdu = PpcInsStfd
  pred PpcInsStfdux = PpcInsStfdu
  pred PpcInsStfdx = PpcInsStfdux
  pred PpcInsStfiwx = PpcInsStfdx
  pred PpcInsStfs = PpcInsStfiwx
  pred PpcInsStfsu = PpcInsStfs
  pred PpcInsStfsux = PpcInsStfsu
  pred PpcInsStfsx = PpcInsStfsux
  pred PpcInsSth = PpcInsStfsx
  pred PpcInsSthbrx = PpcInsSth
  pred PpcInsSthu = PpcInsSthbrx
  pred PpcInsSthux = PpcInsSthu
  pred PpcInsSthx = PpcInsSthux
  pred PpcInsStmw = PpcInsSthx
  pred PpcInsStswi = PpcInsStmw
  pred PpcInsStvebx = PpcInsStswi
  pred PpcInsStvehx = PpcInsStvebx
  pred PpcInsStvewx = PpcInsStvehx
  pred PpcInsStvx = PpcInsStvewx
  pred PpcInsStvxl = PpcInsStvx
  pred PpcInsStw = PpcInsStvxl
  pred PpcInsStwbrx = PpcInsStw
  pred PpcInsStwcx = PpcInsStwbrx
  pred PpcInsStwu = PpcInsStwcx
  pred PpcInsStwux = PpcInsStwu
  pred PpcInsStwx = PpcInsStwux
  pred PpcInsStxsdx = PpcInsStwx
  pred PpcInsStxvd2x = PpcInsStxsdx
  pred PpcInsStxvw4x = PpcInsStxvd2x
  pred PpcInsSubf = PpcInsStxvw4x
  pred PpcInsSubfc = PpcInsSubf
  pred PpcInsSubfe = PpcInsSubfc
  pred PpcInsSubfic = PpcInsSubfe
  pred PpcInsSubfme = PpcInsSubfic
  pred PpcInsSubfze = PpcInsSubfme
  pred PpcInsSync = PpcInsSubfze
  pred PpcInsTd = PpcInsSync
  pred PpcInsTdi = PpcInsTd
  pred PpcInsTlbia = PpcInsTdi
  pred PpcInsTlbie = PpcInsTlbia
  pred PpcInsTlbiel = PpcInsTlbie
  pred PpcInsTlbivax = PpcInsTlbiel
  pred PpcInsTlbld = PpcInsTlbivax
  pred PpcInsTlbli = PpcInsTlbld
  pred PpcInsTlbre = PpcInsTlbli
  pred PpcInsTlbsx = PpcInsTlbre
  pred PpcInsTlbsync = PpcInsTlbsx
  pred PpcInsTlbwe = PpcInsTlbsync
  pred PpcInsTrap = PpcInsTlbwe
  pred PpcInsTw = PpcInsTrap
  pred PpcInsTwi = PpcInsTw
  pred PpcInsVaddcuw = PpcInsTwi
  pred PpcInsVaddfp = PpcInsVaddcuw
  pred PpcInsVaddsbs = PpcInsVaddfp
  pred PpcInsVaddshs = PpcInsVaddsbs
  pred PpcInsVaddsws = PpcInsVaddshs
  pred PpcInsVaddubm = PpcInsVaddsws
  pred PpcInsVaddubs = PpcInsVaddubm
  pred PpcInsVadduhm = PpcInsVaddubs
  pred PpcInsVadduhs = PpcInsVadduhm
  pred PpcInsVadduwm = PpcInsVadduhs
  pred PpcInsVadduws = PpcInsVadduwm
  pred PpcInsVand = PpcInsVadduws
  pred PpcInsVandc = PpcInsVand
  pred PpcInsVavgsb = PpcInsVandc
  pred PpcInsVavgsh = PpcInsVavgsb
  pred PpcInsVavgsw = PpcInsVavgsh
  pred PpcInsVavgub = PpcInsVavgsw
  pred PpcInsVavguh = PpcInsVavgub
  pred PpcInsVavguw = PpcInsVavguh
  pred PpcInsVcfsx = PpcInsVavguw
  pred PpcInsVcfux = PpcInsVcfsx
  pred PpcInsVcmpbfp = PpcInsVcfux
  pred PpcInsVcmpeqfp = PpcInsVcmpbfp
  pred PpcInsVcmpequb = PpcInsVcmpeqfp
  pred PpcInsVcmpequh = PpcInsVcmpequb
  pred PpcInsVcmpequw = PpcInsVcmpequh
  pred PpcInsVcmpgefp = PpcInsVcmpequw
  pred PpcInsVcmpgtfp = PpcInsVcmpgefp
  pred PpcInsVcmpgtsb = PpcInsVcmpgtfp
  pred PpcInsVcmpgtsh = PpcInsVcmpgtsb
  pred PpcInsVcmpgtsw = PpcInsVcmpgtsh
  pred PpcInsVcmpgtub = PpcInsVcmpgtsw
  pred PpcInsVcmpgtuh = PpcInsVcmpgtub
  pred PpcInsVcmpgtuw = PpcInsVcmpgtuh
  pred PpcInsVctsxs = PpcInsVcmpgtuw
  pred PpcInsVctuxs = PpcInsVctsxs
  pred PpcInsVexptefp = PpcInsVctuxs
  pred PpcInsVlogefp = PpcInsVexptefp
  pred PpcInsVmaddfp = PpcInsVlogefp
  pred PpcInsVmaxfp = PpcInsVmaddfp
  pred PpcInsVmaxsb = PpcInsVmaxfp
  pred PpcInsVmaxsh = PpcInsVmaxsb
  pred PpcInsVmaxsw = PpcInsVmaxsh
  pred PpcInsVmaxub = PpcInsVmaxsw
  pred PpcInsVmaxuh = PpcInsVmaxub
  pred PpcInsVmaxuw = PpcInsVmaxuh
  pred PpcInsVmhaddshs = PpcInsVmaxuw
  pred PpcInsVmhraddshs = PpcInsVmhaddshs
  pred PpcInsVminfp = PpcInsVmhraddshs
  pred PpcInsVminsb = PpcInsVminfp
  pred PpcInsVminsh = PpcInsVminsb
  pred PpcInsVminsw = PpcInsVminsh
  pred PpcInsVminub = PpcInsVminsw
  pred PpcInsVminuh = PpcInsVminub
  pred PpcInsVminuw = PpcInsVminuh
  pred PpcInsVmladduhm = PpcInsVminuw
  pred PpcInsVmrghb = PpcInsVmladduhm
  pred PpcInsVmrghh = PpcInsVmrghb
  pred PpcInsVmrghw = PpcInsVmrghh
  pred PpcInsVmrglb = PpcInsVmrghw
  pred PpcInsVmrglh = PpcInsVmrglb
  pred PpcInsVmrglw = PpcInsVmrglh
  pred PpcInsVmsummbm = PpcInsVmrglw
  pred PpcInsVmsumshm = PpcInsVmsummbm
  pred PpcInsVmsumshs = PpcInsVmsumshm
  pred PpcInsVmsumubm = PpcInsVmsumshs
  pred PpcInsVmsumuhm = PpcInsVmsumubm
  pred PpcInsVmsumuhs = PpcInsVmsumuhm
  pred PpcInsVmulesb = PpcInsVmsumuhs
  pred PpcInsVmulesh = PpcInsVmulesb
  pred PpcInsVmuleub = PpcInsVmulesh
  pred PpcInsVmuleuh = PpcInsVmuleub
  pred PpcInsVmulosb = PpcInsVmuleuh
  pred PpcInsVmulosh = PpcInsVmulosb
  pred PpcInsVmuloub = PpcInsVmulosh
  pred PpcInsVmulouh = PpcInsVmuloub
  pred PpcInsVnmsubfp = PpcInsVmulouh
  pred PpcInsVnor = PpcInsVnmsubfp
  pred PpcInsVor = PpcInsVnor
  pred PpcInsVperm = PpcInsVor
  pred PpcInsVpkpx = PpcInsVperm
  pred PpcInsVpkshss = PpcInsVpkpx
  pred PpcInsVpkshus = PpcInsVpkshss
  pred PpcInsVpkswss = PpcInsVpkshus
  pred PpcInsVpkswus = PpcInsVpkswss
  pred PpcInsVpkuhum = PpcInsVpkswus
  pred PpcInsVpkuhus = PpcInsVpkuhum
  pred PpcInsVpkuwum = PpcInsVpkuhus
  pred PpcInsVpkuwus = PpcInsVpkuwum
  pred PpcInsVrefp = PpcInsVpkuwus
  pred PpcInsVrfim = PpcInsVrefp
  pred PpcInsVrfin = PpcInsVrfim
  pred PpcInsVrfip = PpcInsVrfin
  pred PpcInsVrfiz = PpcInsVrfip
  pred PpcInsVrlb = PpcInsVrfiz
  pred PpcInsVrlh = PpcInsVrlb
  pred PpcInsVrlw = PpcInsVrlh
  pred PpcInsVrsqrtefp = PpcInsVrlw
  pred PpcInsVsel = PpcInsVrsqrtefp
  pred PpcInsVsl = PpcInsVsel
  pred PpcInsVslb = PpcInsVsl
  pred PpcInsVsldoi = PpcInsVslb
  pred PpcInsVslh = PpcInsVsldoi
  pred PpcInsVslo = PpcInsVslh
  pred PpcInsVslw = PpcInsVslo
  pred PpcInsVspltb = PpcInsVslw
  pred PpcInsVsplth = PpcInsVspltb
  pred PpcInsVspltisb = PpcInsVsplth
  pred PpcInsVspltish = PpcInsVspltisb
  pred PpcInsVspltisw = PpcInsVspltish
  pred PpcInsVspltw = PpcInsVspltisw
  pred PpcInsVsr = PpcInsVspltw
  pred PpcInsVsrab = PpcInsVsr
  pred PpcInsVsrah = PpcInsVsrab
  pred PpcInsVsraw = PpcInsVsrah
  pred PpcInsVsrb = PpcInsVsraw
  pred PpcInsVsrh = PpcInsVsrb
  pred PpcInsVsro = PpcInsVsrh
  pred PpcInsVsrw = PpcInsVsro
  pred PpcInsVsubcuw = PpcInsVsrw
  pred PpcInsVsubfp = PpcInsVsubcuw
  pred PpcInsVsubsbs = PpcInsVsubfp
  pred PpcInsVsubshs = PpcInsVsubsbs
  pred PpcInsVsubsws = PpcInsVsubshs
  pred PpcInsVsububm = PpcInsVsubsws
  pred PpcInsVsububs = PpcInsVsububm
  pred PpcInsVsubuhm = PpcInsVsububs
  pred PpcInsVsubuhs = PpcInsVsubuhm
  pred PpcInsVsubuwm = PpcInsVsubuhs
  pred PpcInsVsubuws = PpcInsVsubuwm
  pred PpcInsVsum2sws = PpcInsVsubuws
  pred PpcInsVsum4sbs = PpcInsVsum2sws
  pred PpcInsVsum4shs = PpcInsVsum4sbs
  pred PpcInsVsum4ubs = PpcInsVsum4shs
  pred PpcInsVsumsws = PpcInsVsum4ubs
  pred PpcInsVupkhpx = PpcInsVsumsws
  pred PpcInsVupkhsb = PpcInsVupkhpx
  pred PpcInsVupkhsh = PpcInsVupkhsb
  pred PpcInsVupklpx = PpcInsVupkhsh
  pred PpcInsVupklsb = PpcInsVupklpx
  pred PpcInsVupklsh = PpcInsVupklsb
  pred PpcInsVxor = PpcInsVupklsh
  pred PpcInsWait = PpcInsVxor
  pred PpcInsWrtee = PpcInsWait
  pred PpcInsWrteei = PpcInsWrtee
  pred PpcInsXor = PpcInsWrteei
  pred PpcInsXori = PpcInsXor
  pred PpcInsXoris = PpcInsXori
  pred PpcInsXsabsdp = PpcInsXoris
  pred PpcInsXsadddp = PpcInsXsabsdp
  pred PpcInsXscmpodp = PpcInsXsadddp
  pred PpcInsXscmpudp = PpcInsXscmpodp
  pred PpcInsXscpsgndp = PpcInsXscmpudp
  pred PpcInsXscvdpsp = PpcInsXscpsgndp
  pred PpcInsXscvdpsxds = PpcInsXscvdpsp
  pred PpcInsXscvdpsxws = PpcInsXscvdpsxds
  pred PpcInsXscvdpuxds = PpcInsXscvdpsxws
  pred PpcInsXscvdpuxws = PpcInsXscvdpuxds
  pred PpcInsXscvspdp = PpcInsXscvdpuxws
  pred PpcInsXscvsxddp = PpcInsXscvspdp
  pred PpcInsXscvuxddp = PpcInsXscvsxddp
  pred PpcInsXsdivdp = PpcInsXscvuxddp
  pred PpcInsXsmaddadp = PpcInsXsdivdp
  pred PpcInsXsmaddmdp = PpcInsXsmaddadp
  pred PpcInsXsmaxdp = PpcInsXsmaddmdp
  pred PpcInsXsmindp = PpcInsXsmaxdp
  pred PpcInsXsmsubadp = PpcInsXsmindp
  pred PpcInsXsmsubmdp = PpcInsXsmsubadp
  pred PpcInsXsmuldp = PpcInsXsmsubmdp
  pred PpcInsXsnabsdp = PpcInsXsmuldp
  pred PpcInsXsnegdp = PpcInsXsnabsdp
  pred PpcInsXsnmaddadp = PpcInsXsnegdp
  pred PpcInsXsnmaddmdp = PpcInsXsnmaddadp
  pred PpcInsXsnmsubadp = PpcInsXsnmaddmdp
  pred PpcInsXsnmsubmdp = PpcInsXsnmsubadp
  pred PpcInsXsrdpi = PpcInsXsnmsubmdp
  pred PpcInsXsrdpic = PpcInsXsrdpi
  pred PpcInsXsrdpim = PpcInsXsrdpic
  pred PpcInsXsrdpip = PpcInsXsrdpim
  pred PpcInsXsrdpiz = PpcInsXsrdpip
  pred PpcInsXsredp = PpcInsXsrdpiz
  pred PpcInsXsrsqrtedp = PpcInsXsredp
  pred PpcInsXssqrtdp = PpcInsXsrsqrtedp
  pred PpcInsXssubdp = PpcInsXssqrtdp
  pred PpcInsXstdivdp = PpcInsXssubdp
  pred PpcInsXstsqrtdp = PpcInsXstdivdp
  pred PpcInsXvabsdp = PpcInsXstsqrtdp
  pred PpcInsXvabssp = PpcInsXvabsdp
  pred PpcInsXvadddp = PpcInsXvabssp
  pred PpcInsXvaddsp = PpcInsXvadddp
  pred PpcInsXvcmpeqdp = PpcInsXvaddsp
  pred PpcInsXvcmpeqsp = PpcInsXvcmpeqdp
  pred PpcInsXvcmpgedp = PpcInsXvcmpeqsp
  pred PpcInsXvcmpgesp = PpcInsXvcmpgedp
  pred PpcInsXvcmpgtdp = PpcInsXvcmpgesp
  pred PpcInsXvcmpgtsp = PpcInsXvcmpgtdp
  pred PpcInsXvcpsgndp = PpcInsXvcmpgtsp
  pred PpcInsXvcpsgnsp = PpcInsXvcpsgndp
  pred PpcInsXvcvdpsp = PpcInsXvcpsgnsp
  pred PpcInsXvcvdpsxds = PpcInsXvcvdpsp
  pred PpcInsXvcvdpsxws = PpcInsXvcvdpsxds
  pred PpcInsXvcvdpuxds = PpcInsXvcvdpsxws
  pred PpcInsXvcvdpuxws = PpcInsXvcvdpuxds
  pred PpcInsXvcvspdp = PpcInsXvcvdpuxws
  pred PpcInsXvcvspsxds = PpcInsXvcvspdp
  pred PpcInsXvcvspsxws = PpcInsXvcvspsxds
  pred PpcInsXvcvspuxds = PpcInsXvcvspsxws
  pred PpcInsXvcvspuxws = PpcInsXvcvspuxds
  pred PpcInsXvcvsxddp = PpcInsXvcvspuxws
  pred PpcInsXvcvsxdsp = PpcInsXvcvsxddp
  pred PpcInsXvcvsxwdp = PpcInsXvcvsxdsp
  pred PpcInsXvcvsxwsp = PpcInsXvcvsxwdp
  pred PpcInsXvcvuxddp = PpcInsXvcvsxwsp
  pred PpcInsXvcvuxdsp = PpcInsXvcvuxddp
  pred PpcInsXvcvuxwdp = PpcInsXvcvuxdsp
  pred PpcInsXvcvuxwsp = PpcInsXvcvuxwdp
  pred PpcInsXvdivdp = PpcInsXvcvuxwsp
  pred PpcInsXvdivsp = PpcInsXvdivdp
  pred PpcInsXvmaddadp = PpcInsXvdivsp
  pred PpcInsXvmaddasp = PpcInsXvmaddadp
  pred PpcInsXvmaddmdp = PpcInsXvmaddasp
  pred PpcInsXvmaddmsp = PpcInsXvmaddmdp
  pred PpcInsXvmaxdp = PpcInsXvmaddmsp
  pred PpcInsXvmaxsp = PpcInsXvmaxdp
  pred PpcInsXvmindp = PpcInsXvmaxsp
  pred PpcInsXvminsp = PpcInsXvmindp
  pred PpcInsXvmsubadp = PpcInsXvminsp
  pred PpcInsXvmsubasp = PpcInsXvmsubadp
  pred PpcInsXvmsubmdp = PpcInsXvmsubasp
  pred PpcInsXvmsubmsp = PpcInsXvmsubmdp
  pred PpcInsXvmuldp = PpcInsXvmsubmsp
  pred PpcInsXvmulsp = PpcInsXvmuldp
  pred PpcInsXvnabsdp = PpcInsXvmulsp
  pred PpcInsXvnabssp = PpcInsXvnabsdp
  pred PpcInsXvnegdp = PpcInsXvnabssp
  pred PpcInsXvnegsp = PpcInsXvnegdp
  pred PpcInsXvnmaddadp = PpcInsXvnegsp
  pred PpcInsXvnmaddasp = PpcInsXvnmaddadp
  pred PpcInsXvnmaddmdp = PpcInsXvnmaddasp
  pred PpcInsXvnmaddmsp = PpcInsXvnmaddmdp
  pred PpcInsXvnmsubadp = PpcInsXvnmaddmsp
  pred PpcInsXvnmsubasp = PpcInsXvnmsubadp
  pred PpcInsXvnmsubmdp = PpcInsXvnmsubasp
  pred PpcInsXvnmsubmsp = PpcInsXvnmsubmdp
  pred PpcInsXvrdpi = PpcInsXvnmsubmsp
  pred PpcInsXvrdpic = PpcInsXvrdpi
  pred PpcInsXvrdpim = PpcInsXvrdpic
  pred PpcInsXvrdpip = PpcInsXvrdpim
  pred PpcInsXvrdpiz = PpcInsXvrdpip
  pred PpcInsXvredp = PpcInsXvrdpiz
  pred PpcInsXvresp = PpcInsXvredp
  pred PpcInsXvrspi = PpcInsXvresp
  pred PpcInsXvrspic = PpcInsXvrspi
  pred PpcInsXvrspim = PpcInsXvrspic
  pred PpcInsXvrspip = PpcInsXvrspim
  pred PpcInsXvrspiz = PpcInsXvrspip
  pred PpcInsXvrsqrtedp = PpcInsXvrspiz
  pred PpcInsXvrsqrtesp = PpcInsXvrsqrtedp
  pred PpcInsXvsqrtdp = PpcInsXvrsqrtesp
  pred PpcInsXvsqrtsp = PpcInsXvsqrtdp
  pred PpcInsXvsubdp = PpcInsXvsqrtsp
  pred PpcInsXvsubsp = PpcInsXvsubdp
  pred PpcInsXvtdivdp = PpcInsXvsubsp
  pred PpcInsXvtdivsp = PpcInsXvtdivdp
  pred PpcInsXvtsqrtdp = PpcInsXvtdivsp
  pred PpcInsXvtsqrtsp = PpcInsXvtsqrtdp
  pred PpcInsXxland = PpcInsXvtsqrtsp
  pred PpcInsXxlandc = PpcInsXxland
  pred PpcInsXxlnor = PpcInsXxlandc
  pred PpcInsXxlor = PpcInsXxlnor
  pred PpcInsXxlxor = PpcInsXxlor
  pred PpcInsXxmrghw = PpcInsXxlxor
  pred PpcInsXxmrglw = PpcInsXxmrghw
  pred PpcInsXxpermdi = PpcInsXxmrglw
  pred PpcInsXxsel = PpcInsXxpermdi
  pred PpcInsXxsldwi = PpcInsXxsel
  pred PpcInsXxspltw = PpcInsXxsldwi
  pred PpcInsBca = PpcInsXxspltw
  pred PpcInsBcla = PpcInsBca
  pred PpcInsSlwi = PpcInsBcla
  pred PpcInsSrwi = PpcInsSlwi
  pred PpcInsSldi = PpcInsSrwi
  pred PpcInsBta = PpcInsSldi
  pred PpcInsCrset = PpcInsBta
  pred PpcInsCrnot = PpcInsCrset
  pred PpcInsCrmove = PpcInsCrnot
  pred PpcInsCrclr = PpcInsCrmove
  pred PpcInsMfbr0 = PpcInsCrclr
  pred PpcInsMfbr1 = PpcInsMfbr0
  pred PpcInsMfbr2 = PpcInsMfbr1
  pred PpcInsMfbr3 = PpcInsMfbr2
  pred PpcInsMfbr4 = PpcInsMfbr3
  pred PpcInsMfbr5 = PpcInsMfbr4
  pred PpcInsMfbr6 = PpcInsMfbr5
  pred PpcInsMfbr7 = PpcInsMfbr6
  pred PpcInsMfxer = PpcInsMfbr7
  pred PpcInsMfrtcu = PpcInsMfxer
  pred PpcInsMfrtcl = PpcInsMfrtcu
  pred PpcInsMfdscr = PpcInsMfrtcl
  pred PpcInsMfdsisr = PpcInsMfdscr
  pred PpcInsMfdar = PpcInsMfdsisr
  pred PpcInsMfsrr2 = PpcInsMfdar
  pred PpcInsMfsrr3 = PpcInsMfsrr2
  pred PpcInsMfcfar = PpcInsMfsrr3
  pred PpcInsMfamr = PpcInsMfcfar
  pred PpcInsMfpid = PpcInsMfamr
  pred PpcInsMftblo = PpcInsMfpid
  pred PpcInsMftbhi = PpcInsMftblo
  pred PpcInsMfdbatu = PpcInsMftbhi
  pred PpcInsMfdbatl = PpcInsMfdbatu
  pred PpcInsMfibatu = PpcInsMfdbatl
  pred PpcInsMfibatl = PpcInsMfibatu
  pred PpcInsMfdccr = PpcInsMfibatl
  pred PpcInsMficcr = PpcInsMfdccr
  pred PpcInsMfdear = PpcInsMficcr
  pred PpcInsMfesr = PpcInsMfdear
  pred PpcInsMfspefscr = PpcInsMfesr
  pred PpcInsMftcr = PpcInsMfspefscr
  pred PpcInsMfasr = PpcInsMftcr
  pred PpcInsMfpvr = PpcInsMfasr
  pred PpcInsMftbu = PpcInsMfpvr
  pred PpcInsMtcr = PpcInsMftbu
  pred PpcInsMtbr0 = PpcInsMtcr
  pred PpcInsMtbr1 = PpcInsMtbr0
  pred PpcInsMtbr2 = PpcInsMtbr1
  pred PpcInsMtbr3 = PpcInsMtbr2
  pred PpcInsMtbr4 = PpcInsMtbr3
  pred PpcInsMtbr5 = PpcInsMtbr4
  pred PpcInsMtbr6 = PpcInsMtbr5
  pred PpcInsMtbr7 = PpcInsMtbr6
  pred PpcInsMtxer = PpcInsMtbr7
  pred PpcInsMtdscr = PpcInsMtxer
  pred PpcInsMtdsisr = PpcInsMtdscr
  pred PpcInsMtdar = PpcInsMtdsisr
  pred PpcInsMtsrr2 = PpcInsMtdar
  pred PpcInsMtsrr3 = PpcInsMtsrr2
  pred PpcInsMtcfar = PpcInsMtsrr3
  pred PpcInsMtamr = PpcInsMtcfar
  pred PpcInsMtpid = PpcInsMtamr
  pred PpcInsMttbl = PpcInsMtpid
  pred PpcInsMttbu = PpcInsMttbl
  pred PpcInsMttblo = PpcInsMttbu
  pred PpcInsMttbhi = PpcInsMttblo
  pred PpcInsMtdbatu = PpcInsMttbhi
  pred PpcInsMtdbatl = PpcInsMtdbatu
  pred PpcInsMtibatu = PpcInsMtdbatl
  pred PpcInsMtibatl = PpcInsMtibatu
  pred PpcInsMtdccr = PpcInsMtibatl
  pred PpcInsMticcr = PpcInsMtdccr
  pred PpcInsMtdear = PpcInsMticcr
  pred PpcInsMtesr = PpcInsMtdear
  pred PpcInsMtspefscr = PpcInsMtesr
  pred PpcInsMttcr = PpcInsMtspefscr
  pred PpcInsNot = PpcInsMttcr
  pred PpcInsMr = PpcInsNot
  pred PpcInsRotld = PpcInsMr
  pred PpcInsRotldi = PpcInsRotld
  pred PpcInsClrldi = PpcInsRotldi
  pred PpcInsRotlwi = PpcInsClrldi
  pred PpcInsClrlwi = PpcInsRotlwi
  pred PpcInsRotlw = PpcInsClrlwi
  pred PpcInsSub = PpcInsRotlw
  pred PpcInsSubc = PpcInsSub
  pred PpcInsLwsync = PpcInsSubc
  pred PpcInsPtesync = PpcInsLwsync
  pred PpcInsTdlt = PpcInsPtesync
  pred PpcInsTdeq = PpcInsTdlt
  pred PpcInsTdgt = PpcInsTdeq
  pred PpcInsTdne = PpcInsTdgt
  pred PpcInsTdllt = PpcInsTdne
  pred PpcInsTdlgt = PpcInsTdllt
  pred PpcInsTdu = PpcInsTdlgt
  pred PpcInsTdlti = PpcInsTdu
  pred PpcInsTdeqi = PpcInsTdlti
  pred PpcInsTdgti = PpcInsTdeqi
  pred PpcInsTdnei = PpcInsTdgti
  pred PpcInsTdllti = PpcInsTdnei
  pred PpcInsTdlgti = PpcInsTdllti
  pred PpcInsTdui = PpcInsTdlgti
  pred PpcInsTlbrehi = PpcInsTdui
  pred PpcInsTlbrelo = PpcInsTlbrehi
  pred PpcInsTlbwehi = PpcInsTlbrelo
  pred PpcInsTlbwelo = PpcInsTlbwehi
  pred PpcInsTwlt = PpcInsTlbwelo
  pred PpcInsTweq = PpcInsTwlt
  pred PpcInsTwgt = PpcInsTweq
  pred PpcInsTwne = PpcInsTwgt
  pred PpcInsTwllt = PpcInsTwne
  pred PpcInsTwlgt = PpcInsTwllt
  pred PpcInsTwu = PpcInsTwlgt
  pred PpcInsTwlti = PpcInsTwu
  pred PpcInsTweqi = PpcInsTwlti
  pred PpcInsTwgti = PpcInsTweqi
  pred PpcInsTwnei = PpcInsTwgti
  pred PpcInsTwllti = PpcInsTwnei
  pred PpcInsTwlgti = PpcInsTwllti
  pred PpcInsTwui = PpcInsTwlgti
  pred PpcInsWaitrsv = PpcInsTwui
  pred PpcInsWaitimpl = PpcInsWaitrsv
  pred PpcInsXnop = PpcInsWaitimpl
  pred PpcInsXvmovdp = PpcInsXnop
  pred PpcInsXvmovsp = PpcInsXvmovdp
  pred PpcInsXxspltd = PpcInsXvmovsp
  pred PpcInsXxmrghd = PpcInsXxspltd
  pred PpcInsXxmrgld = PpcInsXxmrghd
  pred PpcInsXxswapd = PpcInsXxmrgld
  pred PpcInsBt = PpcInsXxswapd
  pred PpcInsBf = PpcInsBt
  pred PpcInsBdnzt = PpcInsBf
  pred PpcInsBdnzf = PpcInsBdnzt
  pred PpcInsBdzf = PpcInsBdnzf
  pred PpcInsBdzt = PpcInsBdzf
  pred PpcInsBfa = PpcInsBdzt
  pred PpcInsBdnzta = PpcInsBfa
  pred PpcInsBdnzfa = PpcInsBdnzta
  pred PpcInsBdzta = PpcInsBdnzfa
  pred PpcInsBdzfa = PpcInsBdzta
  pred PpcInsBtctr = PpcInsBdzfa
  pred PpcInsBfctr = PpcInsBtctr
  pred PpcInsBtctrl = PpcInsBfctr
  pred PpcInsBfctrl = PpcInsBtctrl
  pred PpcInsBtl = PpcInsBfctrl
  pred PpcInsBfl = PpcInsBtl
  pred PpcInsBdnztl = PpcInsBfl
  pred PpcInsBdnzfl = PpcInsBdnztl
  pred PpcInsBdztl = PpcInsBdnzfl
  pred PpcInsBdzfl = PpcInsBdztl
  pred PpcInsBtla = PpcInsBdzfl
  pred PpcInsBfla = PpcInsBtla
  pred PpcInsBdnztla = PpcInsBfla
  pred PpcInsBdnzfla = PpcInsBdnztla
  pred PpcInsBdztla = PpcInsBdnzfla
  pred PpcInsBdzfla = PpcInsBdztla
  pred PpcInsBtlr = PpcInsBdzfla
  pred PpcInsBflr = PpcInsBtlr
  pred PpcInsBdnztlr = PpcInsBflr
  pred PpcInsBdztlr = PpcInsBdnztlr
  pred PpcInsBdzflr = PpcInsBdztlr
  pred PpcInsBtlrl = PpcInsBdzflr
  pred PpcInsBflrl = PpcInsBtlrl
  pred PpcInsBdnztlrl = PpcInsBflrl
  pred PpcInsBdnzflrl = PpcInsBdnztlrl
  pred PpcInsBdztlrl = PpcInsBdnzflrl
  pred PpcInsBdzflrl = PpcInsBdztlrl
  pred PpcInsEnding = PpcInsBdzflrl
  pred PpcInsInvalid = error "PpcInsn.pred: PpcInsInvalid has no predecessor"

  enumFromTo from to = go from
    where
      end = fromEnum to
      go v = case compare (fromEnum v) end of
                 LT -> v : go (succ v)
                 EQ -> [v]
                 GT -> []

  enumFrom from = enumFromTo from PpcInsEnding

  fromEnum PpcInsInvalid = 0
  fromEnum PpcInsAdd = 1
  fromEnum PpcInsAddc = 2
  fromEnum PpcInsAdde = 3
  fromEnum PpcInsAddi = 4
  fromEnum PpcInsAddic = 5
  fromEnum PpcInsAddis = 6
  fromEnum PpcInsAddme = 7
  fromEnum PpcInsAddze = 8
  fromEnum PpcInsAnd = 9
  fromEnum PpcInsAndc = 10
  fromEnum PpcInsAndis = 11
  fromEnum PpcInsAndi = 12
  fromEnum PpcInsB = 13
  fromEnum PpcInsBa = 14
  fromEnum PpcInsBc = 15
  fromEnum PpcInsBcctr = 16
  fromEnum PpcInsBcctrl = 17
  fromEnum PpcInsBcl = 18
  fromEnum PpcInsBclr = 19
  fromEnum PpcInsBclrl = 20
  fromEnum PpcInsBctr = 21
  fromEnum PpcInsBctrl = 22
  fromEnum PpcInsBdnz = 23
  fromEnum PpcInsBdnza = 24
  fromEnum PpcInsBdnzl = 25
  fromEnum PpcInsBdnzla = 26
  fromEnum PpcInsBdnzlr = 27
  fromEnum PpcInsBdnzlrl = 28
  fromEnum PpcInsBdz = 29
  fromEnum PpcInsBdza = 30
  fromEnum PpcInsBdzl = 31
  fromEnum PpcInsBdzla = 32
  fromEnum PpcInsBdzlr = 33
  fromEnum PpcInsBdzlrl = 34
  fromEnum PpcInsBl = 35
  fromEnum PpcInsBla = 36
  fromEnum PpcInsBlr = 37
  fromEnum PpcInsBlrl = 38
  fromEnum PpcInsBrinc = 39
  fromEnum PpcInsCmpd = 40
  fromEnum PpcInsCmpdi = 41
  fromEnum PpcInsCmpld = 42
  fromEnum PpcInsCmpldi = 43
  fromEnum PpcInsCmplw = 44
  fromEnum PpcInsCmplwi = 45
  fromEnum PpcInsCmpw = 46
  fromEnum PpcInsCmpwi = 47
  fromEnum PpcInsCntlzd = 48
  fromEnum PpcInsCntlzw = 49
  fromEnum PpcInsCreqv = 50
  fromEnum PpcInsCrxor = 51
  fromEnum PpcInsCrand = 52
  fromEnum PpcInsCrandc = 53
  fromEnum PpcInsCrnand = 54
  fromEnum PpcInsCrnor = 55
  fromEnum PpcInsCror = 56
  fromEnum PpcInsCrorc = 57
  fromEnum PpcInsDcba = 58
  fromEnum PpcInsDcbf = 59
  fromEnum PpcInsDcbi = 60
  fromEnum PpcInsDcbst = 61
  fromEnum PpcInsDcbt = 62
  fromEnum PpcInsDcbtst = 63
  fromEnum PpcInsDcbz = 64
  fromEnum PpcInsDcbzl = 65
  fromEnum PpcInsDccci = 66
  fromEnum PpcInsDivd = 67
  fromEnum PpcInsDivdu = 68
  fromEnum PpcInsDivw = 69
  fromEnum PpcInsDivwu = 70
  fromEnum PpcInsDss = 71
  fromEnum PpcInsDssall = 72
  fromEnum PpcInsDst = 73
  fromEnum PpcInsDstst = 74
  fromEnum PpcInsDststt = 75
  fromEnum PpcInsDstt = 76
  fromEnum PpcInsEieio = 77
  fromEnum PpcInsEqv = 78
  fromEnum PpcInsEvabs = 79
  fromEnum PpcInsEvaddiw = 80
  fromEnum PpcInsEvaddsmiaaw = 81
  fromEnum PpcInsEvaddssiaaw = 82
  fromEnum PpcInsEvaddumiaaw = 83
  fromEnum PpcInsEvaddusiaaw = 84
  fromEnum PpcInsEvaddw = 85
  fromEnum PpcInsEvand = 86
  fromEnum PpcInsEvandc = 87
  fromEnum PpcInsEvcmpeq = 88
  fromEnum PpcInsEvcmpgts = 89
  fromEnum PpcInsEvcmpgtu = 90
  fromEnum PpcInsEvcmplts = 91
  fromEnum PpcInsEvcmpltu = 92
  fromEnum PpcInsEvcntlsw = 93
  fromEnum PpcInsEvcntlzw = 94
  fromEnum PpcInsEvdivws = 95
  fromEnum PpcInsEvdivwu = 96
  fromEnum PpcInsEveqv = 97
  fromEnum PpcInsEvextsb = 98
  fromEnum PpcInsEvextsh = 99
  fromEnum PpcInsEvldd = 100
  fromEnum PpcInsEvlddx = 101
  fromEnum PpcInsEvldh = 102
  fromEnum PpcInsEvldhx = 103
  fromEnum PpcInsEvldw = 104
  fromEnum PpcInsEvldwx = 105
  fromEnum PpcInsEvlhhesplat = 106
  fromEnum PpcInsEvlhhesplatx = 107
  fromEnum PpcInsEvlhhossplat = 108
  fromEnum PpcInsEvlhhossplatx = 109
  fromEnum PpcInsEvlhhousplat = 110
  fromEnum PpcInsEvlhhousplatx = 111
  fromEnum PpcInsEvlwhe = 112
  fromEnum PpcInsEvlwhex = 113
  fromEnum PpcInsEvlwhos = 114
  fromEnum PpcInsEvlwhosx = 115
  fromEnum PpcInsEvlwhou = 116
  fromEnum PpcInsEvlwhoux = 117
  fromEnum PpcInsEvlwhsplat = 118
  fromEnum PpcInsEvlwhsplatx = 119
  fromEnum PpcInsEvlwwsplat = 120
  fromEnum PpcInsEvlwwsplatx = 121
  fromEnum PpcInsEvmergehi = 122
  fromEnum PpcInsEvmergehilo = 123
  fromEnum PpcInsEvmergelo = 124
  fromEnum PpcInsEvmergelohi = 125
  fromEnum PpcInsEvmhegsmfaa = 126
  fromEnum PpcInsEvmhegsmfan = 127
  fromEnum PpcInsEvmhegsmiaa = 128
  fromEnum PpcInsEvmhegsmian = 129
  fromEnum PpcInsEvmhegumiaa = 130
  fromEnum PpcInsEvmhegumian = 131
  fromEnum PpcInsEvmhesmf = 132
  fromEnum PpcInsEvmhesmfa = 133
  fromEnum PpcInsEvmhesmfaaw = 134
  fromEnum PpcInsEvmhesmfanw = 135
  fromEnum PpcInsEvmhesmi = 136
  fromEnum PpcInsEvmhesmia = 137
  fromEnum PpcInsEvmhesmiaaw = 138
  fromEnum PpcInsEvmhesmianw = 139
  fromEnum PpcInsEvmhessf = 140
  fromEnum PpcInsEvmhessfa = 141
  fromEnum PpcInsEvmhessfaaw = 142
  fromEnum PpcInsEvmhessfanw = 143
  fromEnum PpcInsEvmhessiaaw = 144
  fromEnum PpcInsEvmhessianw = 145
  fromEnum PpcInsEvmheumi = 146
  fromEnum PpcInsEvmheumia = 147
  fromEnum PpcInsEvmheumiaaw = 148
  fromEnum PpcInsEvmheumianw = 149
  fromEnum PpcInsEvmheusiaaw = 150
  fromEnum PpcInsEvmheusianw = 151
  fromEnum PpcInsEvmhogsmfaa = 152
  fromEnum PpcInsEvmhogsmfan = 153
  fromEnum PpcInsEvmhogsmiaa = 154
  fromEnum PpcInsEvmhogsmian = 155
  fromEnum PpcInsEvmhogumiaa = 156
  fromEnum PpcInsEvmhogumian = 157
  fromEnum PpcInsEvmhosmf = 158
  fromEnum PpcInsEvmhosmfa = 159
  fromEnum PpcInsEvmhosmfaaw = 160
  fromEnum PpcInsEvmhosmfanw = 161
  fromEnum PpcInsEvmhosmi = 162
  fromEnum PpcInsEvmhosmia = 163
  fromEnum PpcInsEvmhosmiaaw = 164
  fromEnum PpcInsEvmhosmianw = 165
  fromEnum PpcInsEvmhossf = 166
  fromEnum PpcInsEvmhossfa = 167
  fromEnum PpcInsEvmhossfaaw = 168
  fromEnum PpcInsEvmhossfanw = 169
  fromEnum PpcInsEvmhossiaaw = 170
  fromEnum PpcInsEvmhossianw = 171
  fromEnum PpcInsEvmhoumi = 172
  fromEnum PpcInsEvmhoumia = 173
  fromEnum PpcInsEvmhoumiaaw = 174
  fromEnum PpcInsEvmhoumianw = 175
  fromEnum PpcInsEvmhousiaaw = 176
  fromEnum PpcInsEvmhousianw = 177
  fromEnum PpcInsEvmra = 178
  fromEnum PpcInsEvmwhsmf = 179
  fromEnum PpcInsEvmwhsmfa = 180
  fromEnum PpcInsEvmwhsmi = 181
  fromEnum PpcInsEvmwhsmia = 182
  fromEnum PpcInsEvmwhssf = 183
  fromEnum PpcInsEvmwhssfa = 184
  fromEnum PpcInsEvmwhumi = 185
  fromEnum PpcInsEvmwhumia = 186
  fromEnum PpcInsEvmwlsmiaaw = 187
  fromEnum PpcInsEvmwlsmianw = 188
  fromEnum PpcInsEvmwlssiaaw = 189
  fromEnum PpcInsEvmwlssianw = 190
  fromEnum PpcInsEvmwlumi = 191
  fromEnum PpcInsEvmwlumia = 192
  fromEnum PpcInsEvmwlumiaaw = 193
  fromEnum PpcInsEvmwlumianw = 194
  fromEnum PpcInsEvmwlusiaaw = 195
  fromEnum PpcInsEvmwlusianw = 196
  fromEnum PpcInsEvmwsmf = 197
  fromEnum PpcInsEvmwsmfa = 198
  fromEnum PpcInsEvmwsmfaa = 199
  fromEnum PpcInsEvmwsmfan = 200
  fromEnum PpcInsEvmwsmi = 201
  fromEnum PpcInsEvmwsmia = 202
  fromEnum PpcInsEvmwsmiaa = 203
  fromEnum PpcInsEvmwsmian = 204
  fromEnum PpcInsEvmwssf = 205
  fromEnum PpcInsEvmwssfa = 206
  fromEnum PpcInsEvmwssfaa = 207
  fromEnum PpcInsEvmwssfan = 208
  fromEnum PpcInsEvmwumi = 209
  fromEnum PpcInsEvmwumia = 210
  fromEnum PpcInsEvmwumiaa = 211
  fromEnum PpcInsEvmwumian = 212
  fromEnum PpcInsEvnand = 213
  fromEnum PpcInsEvneg = 214
  fromEnum PpcInsEvnor = 215
  fromEnum PpcInsEvor = 216
  fromEnum PpcInsEvorc = 217
  fromEnum PpcInsEvrlw = 218
  fromEnum PpcInsEvrlwi = 219
  fromEnum PpcInsEvrndw = 220
  fromEnum PpcInsEvslw = 221
  fromEnum PpcInsEvslwi = 222
  fromEnum PpcInsEvsplatfi = 223
  fromEnum PpcInsEvsplati = 224
  fromEnum PpcInsEvsrwis = 225
  fromEnum PpcInsEvsrwiu = 226
  fromEnum PpcInsEvsrws = 227
  fromEnum PpcInsEvsrwu = 228
  fromEnum PpcInsEvstdd = 229
  fromEnum PpcInsEvstddx = 230
  fromEnum PpcInsEvstdh = 231
  fromEnum PpcInsEvstdhx = 232
  fromEnum PpcInsEvstdw = 233
  fromEnum PpcInsEvstdwx = 234
  fromEnum PpcInsEvstwhe = 235
  fromEnum PpcInsEvstwhex = 236
  fromEnum PpcInsEvstwho = 237
  fromEnum PpcInsEvstwhox = 238
  fromEnum PpcInsEvstwwe = 239
  fromEnum PpcInsEvstwwex = 240
  fromEnum PpcInsEvstwwo = 241
  fromEnum PpcInsEvstwwox = 242
  fromEnum PpcInsEvsubfsmiaaw = 243
  fromEnum PpcInsEvsubfssiaaw = 244
  fromEnum PpcInsEvsubfumiaaw = 245
  fromEnum PpcInsEvsubfusiaaw = 246
  fromEnum PpcInsEvsubfw = 247
  fromEnum PpcInsEvsubifw = 248
  fromEnum PpcInsEvxor = 249
  fromEnum PpcInsExtsb = 250
  fromEnum PpcInsExtsh = 251
  fromEnum PpcInsExtsw = 252
  fromEnum PpcInsFabs = 253
  fromEnum PpcInsFadd = 254
  fromEnum PpcInsFadds = 255
  fromEnum PpcInsFcfid = 256
  fromEnum PpcInsFcfids = 257
  fromEnum PpcInsFcfidu = 258
  fromEnum PpcInsFcfidus = 259
  fromEnum PpcInsFcmpu = 260
  fromEnum PpcInsFcpsgn = 261
  fromEnum PpcInsFctid = 262
  fromEnum PpcInsFctiduz = 263
  fromEnum PpcInsFctidz = 264
  fromEnum PpcInsFctiw = 265
  fromEnum PpcInsFctiwuz = 266
  fromEnum PpcInsFctiwz = 267
  fromEnum PpcInsFdiv = 268
  fromEnum PpcInsFdivs = 269
  fromEnum PpcInsFmadd = 270
  fromEnum PpcInsFmadds = 271
  fromEnum PpcInsFmr = 272
  fromEnum PpcInsFmsub = 273
  fromEnum PpcInsFmsubs = 274
  fromEnum PpcInsFmul = 275
  fromEnum PpcInsFmuls = 276
  fromEnum PpcInsFnabs = 277
  fromEnum PpcInsFneg = 278
  fromEnum PpcInsFnmadd = 279
  fromEnum PpcInsFnmadds = 280
  fromEnum PpcInsFnmsub = 281
  fromEnum PpcInsFnmsubs = 282
  fromEnum PpcInsFre = 283
  fromEnum PpcInsFres = 284
  fromEnum PpcInsFrim = 285
  fromEnum PpcInsFrin = 286
  fromEnum PpcInsFrip = 287
  fromEnum PpcInsFriz = 288
  fromEnum PpcInsFrsp = 289
  fromEnum PpcInsFrsqrte = 290
  fromEnum PpcInsFrsqrtes = 291
  fromEnum PpcInsFsel = 292
  fromEnum PpcInsFsqrt = 293
  fromEnum PpcInsFsqrts = 294
  fromEnum PpcInsFsub = 295
  fromEnum PpcInsFsubs = 296
  fromEnum PpcInsIcbi = 297
  fromEnum PpcInsIccci = 298
  fromEnum PpcInsIsel = 299
  fromEnum PpcInsIsync = 300
  fromEnum PpcInsLa = 301
  fromEnum PpcInsLbz = 302
  fromEnum PpcInsLbzu = 303
  fromEnum PpcInsLbzux = 304
  fromEnum PpcInsLbzx = 305
  fromEnum PpcInsLd = 306
  fromEnum PpcInsLdarx = 307
  fromEnum PpcInsLdbrx = 308
  fromEnum PpcInsLdu = 309
  fromEnum PpcInsLdux = 310
  fromEnum PpcInsLdx = 311
  fromEnum PpcInsLfd = 312
  fromEnum PpcInsLfdu = 313
  fromEnum PpcInsLfdux = 314
  fromEnum PpcInsLfdx = 315
  fromEnum PpcInsLfiwax = 316
  fromEnum PpcInsLfiwzx = 317
  fromEnum PpcInsLfs = 318
  fromEnum PpcInsLfsu = 319
  fromEnum PpcInsLfsux = 320
  fromEnum PpcInsLfsx = 321
  fromEnum PpcInsLha = 322
  fromEnum PpcInsLhau = 323
  fromEnum PpcInsLhaux = 324
  fromEnum PpcInsLhax = 325
  fromEnum PpcInsLhbrx = 326
  fromEnum PpcInsLhz = 327
  fromEnum PpcInsLhzu = 328
  fromEnum PpcInsLhzux = 329
  fromEnum PpcInsLhzx = 330
  fromEnum PpcInsLi = 331
  fromEnum PpcInsLis = 332
  fromEnum PpcInsLmw = 333
  fromEnum PpcInsLswi = 334
  fromEnum PpcInsLvebx = 335
  fromEnum PpcInsLvehx = 336
  fromEnum PpcInsLvewx = 337
  fromEnum PpcInsLvsl = 338
  fromEnum PpcInsLvsr = 339
  fromEnum PpcInsLvx = 340
  fromEnum PpcInsLvxl = 341
  fromEnum PpcInsLwa = 342
  fromEnum PpcInsLwarx = 343
  fromEnum PpcInsLwaux = 344
  fromEnum PpcInsLwax = 345
  fromEnum PpcInsLwbrx = 346
  fromEnum PpcInsLwz = 347
  fromEnum PpcInsLwzu = 348
  fromEnum PpcInsLwzux = 349
  fromEnum PpcInsLwzx = 350
  fromEnum PpcInsLxsdx = 351
  fromEnum PpcInsLxvd2x = 352
  fromEnum PpcInsLxvdsx = 353
  fromEnum PpcInsLxvw4x = 354
  fromEnum PpcInsMbar = 355
  fromEnum PpcInsMcrf = 356
  fromEnum PpcInsMfcr = 357
  fromEnum PpcInsMfctr = 358
  fromEnum PpcInsMfdcr = 359
  fromEnum PpcInsMffs = 360
  fromEnum PpcInsMflr = 361
  fromEnum PpcInsMfmsr = 362
  fromEnum PpcInsMfocrf = 363
  fromEnum PpcInsMfspr = 364
  fromEnum PpcInsMfsr = 365
  fromEnum PpcInsMfsrin = 366
  fromEnum PpcInsMftb = 367
  fromEnum PpcInsMfvscr = 368
  fromEnum PpcInsMsync = 369
  fromEnum PpcInsMtcrf = 370
  fromEnum PpcInsMtctr = 371
  fromEnum PpcInsMtdcr = 372
  fromEnum PpcInsMtfsb0 = 373
  fromEnum PpcInsMtfsb1 = 374
  fromEnum PpcInsMtfsf = 375
  fromEnum PpcInsMtlr = 376
  fromEnum PpcInsMtmsr = 377
  fromEnum PpcInsMtmsrd = 378
  fromEnum PpcInsMtocrf = 379
  fromEnum PpcInsMtspr = 380
  fromEnum PpcInsMtsr = 381
  fromEnum PpcInsMtsrin = 382
  fromEnum PpcInsMtvscr = 383
  fromEnum PpcInsMulhd = 384
  fromEnum PpcInsMulhdu = 385
  fromEnum PpcInsMulhw = 386
  fromEnum PpcInsMulhwu = 387
  fromEnum PpcInsMulld = 388
  fromEnum PpcInsMulli = 389
  fromEnum PpcInsMullw = 390
  fromEnum PpcInsNand = 391
  fromEnum PpcInsNeg = 392
  fromEnum PpcInsNop = 393
  fromEnum PpcInsOri = 394
  fromEnum PpcInsNor = 395
  fromEnum PpcInsOr = 396
  fromEnum PpcInsOrc = 397
  fromEnum PpcInsOris = 398
  fromEnum PpcInsPopcntd = 399
  fromEnum PpcInsPopcntw = 400
  fromEnum PpcInsRfci = 401
  fromEnum PpcInsRfdi = 402
  fromEnum PpcInsRfi = 403
  fromEnum PpcInsRfid = 404
  fromEnum PpcInsRfmci = 405
  fromEnum PpcInsRldcl = 406
  fromEnum PpcInsRldcr = 407
  fromEnum PpcInsRldic = 408
  fromEnum PpcInsRldicl = 409
  fromEnum PpcInsRldicr = 410
  fromEnum PpcInsRldimi = 411
  fromEnum PpcInsRlwimi = 412
  fromEnum PpcInsRlwinm = 413
  fromEnum PpcInsRlwnm = 414
  fromEnum PpcInsSc = 415
  fromEnum PpcInsSlbia = 416
  fromEnum PpcInsSlbie = 417
  fromEnum PpcInsSlbmfee = 418
  fromEnum PpcInsSlbmte = 419
  fromEnum PpcInsSld = 420
  fromEnum PpcInsSlw = 421
  fromEnum PpcInsSrad = 422
  fromEnum PpcInsSradi = 423
  fromEnum PpcInsSraw = 424
  fromEnum PpcInsSrawi = 425
  fromEnum PpcInsSrd = 426
  fromEnum PpcInsSrw = 427
  fromEnum PpcInsStb = 428
  fromEnum PpcInsStbu = 429
  fromEnum PpcInsStbux = 430
  fromEnum PpcInsStbx = 431
  fromEnum PpcInsStd = 432
  fromEnum PpcInsStdbrx = 433
  fromEnum PpcInsStdcx = 434
  fromEnum PpcInsStdu = 435
  fromEnum PpcInsStdux = 436
  fromEnum PpcInsStdx = 437
  fromEnum PpcInsStfd = 438
  fromEnum PpcInsStfdu = 439
  fromEnum PpcInsStfdux = 440
  fromEnum PpcInsStfdx = 441
  fromEnum PpcInsStfiwx = 442
  fromEnum PpcInsStfs = 443
  fromEnum PpcInsStfsu = 444
  fromEnum PpcInsStfsux = 445
  fromEnum PpcInsStfsx = 446
  fromEnum PpcInsSth = 447
  fromEnum PpcInsSthbrx = 448
  fromEnum PpcInsSthu = 449
  fromEnum PpcInsSthux = 450
  fromEnum PpcInsSthx = 451
  fromEnum PpcInsStmw = 452
  fromEnum PpcInsStswi = 453
  fromEnum PpcInsStvebx = 454
  fromEnum PpcInsStvehx = 455
  fromEnum PpcInsStvewx = 456
  fromEnum PpcInsStvx = 457
  fromEnum PpcInsStvxl = 458
  fromEnum PpcInsStw = 459
  fromEnum PpcInsStwbrx = 460
  fromEnum PpcInsStwcx = 461
  fromEnum PpcInsStwu = 462
  fromEnum PpcInsStwux = 463
  fromEnum PpcInsStwx = 464
  fromEnum PpcInsStxsdx = 465
  fromEnum PpcInsStxvd2x = 466
  fromEnum PpcInsStxvw4x = 467
  fromEnum PpcInsSubf = 468
  fromEnum PpcInsSubfc = 469
  fromEnum PpcInsSubfe = 470
  fromEnum PpcInsSubfic = 471
  fromEnum PpcInsSubfme = 472
  fromEnum PpcInsSubfze = 473
  fromEnum PpcInsSync = 474
  fromEnum PpcInsTd = 475
  fromEnum PpcInsTdi = 476
  fromEnum PpcInsTlbia = 477
  fromEnum PpcInsTlbie = 478
  fromEnum PpcInsTlbiel = 479
  fromEnum PpcInsTlbivax = 480
  fromEnum PpcInsTlbld = 481
  fromEnum PpcInsTlbli = 482
  fromEnum PpcInsTlbre = 483
  fromEnum PpcInsTlbsx = 484
  fromEnum PpcInsTlbsync = 485
  fromEnum PpcInsTlbwe = 486
  fromEnum PpcInsTrap = 487
  fromEnum PpcInsTw = 488
  fromEnum PpcInsTwi = 489
  fromEnum PpcInsVaddcuw = 490
  fromEnum PpcInsVaddfp = 491
  fromEnum PpcInsVaddsbs = 492
  fromEnum PpcInsVaddshs = 493
  fromEnum PpcInsVaddsws = 494
  fromEnum PpcInsVaddubm = 495
  fromEnum PpcInsVaddubs = 496
  fromEnum PpcInsVadduhm = 497
  fromEnum PpcInsVadduhs = 498
  fromEnum PpcInsVadduwm = 499
  fromEnum PpcInsVadduws = 500
  fromEnum PpcInsVand = 501
  fromEnum PpcInsVandc = 502
  fromEnum PpcInsVavgsb = 503
  fromEnum PpcInsVavgsh = 504
  fromEnum PpcInsVavgsw = 505
  fromEnum PpcInsVavgub = 506
  fromEnum PpcInsVavguh = 507
  fromEnum PpcInsVavguw = 508
  fromEnum PpcInsVcfsx = 509
  fromEnum PpcInsVcfux = 510
  fromEnum PpcInsVcmpbfp = 511
  fromEnum PpcInsVcmpeqfp = 512
  fromEnum PpcInsVcmpequb = 513
  fromEnum PpcInsVcmpequh = 514
  fromEnum PpcInsVcmpequw = 515
  fromEnum PpcInsVcmpgefp = 516
  fromEnum PpcInsVcmpgtfp = 517
  fromEnum PpcInsVcmpgtsb = 518
  fromEnum PpcInsVcmpgtsh = 519
  fromEnum PpcInsVcmpgtsw = 520
  fromEnum PpcInsVcmpgtub = 521
  fromEnum PpcInsVcmpgtuh = 522
  fromEnum PpcInsVcmpgtuw = 523
  fromEnum PpcInsVctsxs = 524
  fromEnum PpcInsVctuxs = 525
  fromEnum PpcInsVexptefp = 526
  fromEnum PpcInsVlogefp = 527
  fromEnum PpcInsVmaddfp = 528
  fromEnum PpcInsVmaxfp = 529
  fromEnum PpcInsVmaxsb = 530
  fromEnum PpcInsVmaxsh = 531
  fromEnum PpcInsVmaxsw = 532
  fromEnum PpcInsVmaxub = 533
  fromEnum PpcInsVmaxuh = 534
  fromEnum PpcInsVmaxuw = 535
  fromEnum PpcInsVmhaddshs = 536
  fromEnum PpcInsVmhraddshs = 537
  fromEnum PpcInsVminfp = 538
  fromEnum PpcInsVminsb = 539
  fromEnum PpcInsVminsh = 540
  fromEnum PpcInsVminsw = 541
  fromEnum PpcInsVminub = 542
  fromEnum PpcInsVminuh = 543
  fromEnum PpcInsVminuw = 544
  fromEnum PpcInsVmladduhm = 545
  fromEnum PpcInsVmrghb = 546
  fromEnum PpcInsVmrghh = 547
  fromEnum PpcInsVmrghw = 548
  fromEnum PpcInsVmrglb = 549
  fromEnum PpcInsVmrglh = 550
  fromEnum PpcInsVmrglw = 551
  fromEnum PpcInsVmsummbm = 552
  fromEnum PpcInsVmsumshm = 553
  fromEnum PpcInsVmsumshs = 554
  fromEnum PpcInsVmsumubm = 555
  fromEnum PpcInsVmsumuhm = 556
  fromEnum PpcInsVmsumuhs = 557
  fromEnum PpcInsVmulesb = 558
  fromEnum PpcInsVmulesh = 559
  fromEnum PpcInsVmuleub = 560
  fromEnum PpcInsVmuleuh = 561
  fromEnum PpcInsVmulosb = 562
  fromEnum PpcInsVmulosh = 563
  fromEnum PpcInsVmuloub = 564
  fromEnum PpcInsVmulouh = 565
  fromEnum PpcInsVnmsubfp = 566
  fromEnum PpcInsVnor = 567
  fromEnum PpcInsVor = 568
  fromEnum PpcInsVperm = 569
  fromEnum PpcInsVpkpx = 570
  fromEnum PpcInsVpkshss = 571
  fromEnum PpcInsVpkshus = 572
  fromEnum PpcInsVpkswss = 573
  fromEnum PpcInsVpkswus = 574
  fromEnum PpcInsVpkuhum = 575
  fromEnum PpcInsVpkuhus = 576
  fromEnum PpcInsVpkuwum = 577
  fromEnum PpcInsVpkuwus = 578
  fromEnum PpcInsVrefp = 579
  fromEnum PpcInsVrfim = 580
  fromEnum PpcInsVrfin = 581
  fromEnum PpcInsVrfip = 582
  fromEnum PpcInsVrfiz = 583
  fromEnum PpcInsVrlb = 584
  fromEnum PpcInsVrlh = 585
  fromEnum PpcInsVrlw = 586
  fromEnum PpcInsVrsqrtefp = 587
  fromEnum PpcInsVsel = 588
  fromEnum PpcInsVsl = 589
  fromEnum PpcInsVslb = 590
  fromEnum PpcInsVsldoi = 591
  fromEnum PpcInsVslh = 592
  fromEnum PpcInsVslo = 593
  fromEnum PpcInsVslw = 594
  fromEnum PpcInsVspltb = 595
  fromEnum PpcInsVsplth = 596
  fromEnum PpcInsVspltisb = 597
  fromEnum PpcInsVspltish = 598
  fromEnum PpcInsVspltisw = 599
  fromEnum PpcInsVspltw = 600
  fromEnum PpcInsVsr = 601
  fromEnum PpcInsVsrab = 602
  fromEnum PpcInsVsrah = 603
  fromEnum PpcInsVsraw = 604
  fromEnum PpcInsVsrb = 605
  fromEnum PpcInsVsrh = 606
  fromEnum PpcInsVsro = 607
  fromEnum PpcInsVsrw = 608
  fromEnum PpcInsVsubcuw = 609
  fromEnum PpcInsVsubfp = 610
  fromEnum PpcInsVsubsbs = 611
  fromEnum PpcInsVsubshs = 612
  fromEnum PpcInsVsubsws = 613
  fromEnum PpcInsVsububm = 614
  fromEnum PpcInsVsububs = 615
  fromEnum PpcInsVsubuhm = 616
  fromEnum PpcInsVsubuhs = 617
  fromEnum PpcInsVsubuwm = 618
  fromEnum PpcInsVsubuws = 619
  fromEnum PpcInsVsum2sws = 620
  fromEnum PpcInsVsum4sbs = 621
  fromEnum PpcInsVsum4shs = 622
  fromEnum PpcInsVsum4ubs = 623
  fromEnum PpcInsVsumsws = 624
  fromEnum PpcInsVupkhpx = 625
  fromEnum PpcInsVupkhsb = 626
  fromEnum PpcInsVupkhsh = 627
  fromEnum PpcInsVupklpx = 628
  fromEnum PpcInsVupklsb = 629
  fromEnum PpcInsVupklsh = 630
  fromEnum PpcInsVxor = 631
  fromEnum PpcInsWait = 632
  fromEnum PpcInsWrtee = 633
  fromEnum PpcInsWrteei = 634
  fromEnum PpcInsXor = 635
  fromEnum PpcInsXori = 636
  fromEnum PpcInsXoris = 637
  fromEnum PpcInsXsabsdp = 638
  fromEnum PpcInsXsadddp = 639
  fromEnum PpcInsXscmpodp = 640
  fromEnum PpcInsXscmpudp = 641
  fromEnum PpcInsXscpsgndp = 642
  fromEnum PpcInsXscvdpsp = 643
  fromEnum PpcInsXscvdpsxds = 644
  fromEnum PpcInsXscvdpsxws = 645
  fromEnum PpcInsXscvdpuxds = 646
  fromEnum PpcInsXscvdpuxws = 647
  fromEnum PpcInsXscvspdp = 648
  fromEnum PpcInsXscvsxddp = 649
  fromEnum PpcInsXscvuxddp = 650
  fromEnum PpcInsXsdivdp = 651
  fromEnum PpcInsXsmaddadp = 652
  fromEnum PpcInsXsmaddmdp = 653
  fromEnum PpcInsXsmaxdp = 654
  fromEnum PpcInsXsmindp = 655
  fromEnum PpcInsXsmsubadp = 656
  fromEnum PpcInsXsmsubmdp = 657
  fromEnum PpcInsXsmuldp = 658
  fromEnum PpcInsXsnabsdp = 659
  fromEnum PpcInsXsnegdp = 660
  fromEnum PpcInsXsnmaddadp = 661
  fromEnum PpcInsXsnmaddmdp = 662
  fromEnum PpcInsXsnmsubadp = 663
  fromEnum PpcInsXsnmsubmdp = 664
  fromEnum PpcInsXsrdpi = 665
  fromEnum PpcInsXsrdpic = 666
  fromEnum PpcInsXsrdpim = 667
  fromEnum PpcInsXsrdpip = 668
  fromEnum PpcInsXsrdpiz = 669
  fromEnum PpcInsXsredp = 670
  fromEnum PpcInsXsrsqrtedp = 671
  fromEnum PpcInsXssqrtdp = 672
  fromEnum PpcInsXssubdp = 673
  fromEnum PpcInsXstdivdp = 674
  fromEnum PpcInsXstsqrtdp = 675
  fromEnum PpcInsXvabsdp = 676
  fromEnum PpcInsXvabssp = 677
  fromEnum PpcInsXvadddp = 678
  fromEnum PpcInsXvaddsp = 679
  fromEnum PpcInsXvcmpeqdp = 680
  fromEnum PpcInsXvcmpeqsp = 681
  fromEnum PpcInsXvcmpgedp = 682
  fromEnum PpcInsXvcmpgesp = 683
  fromEnum PpcInsXvcmpgtdp = 684
  fromEnum PpcInsXvcmpgtsp = 685
  fromEnum PpcInsXvcpsgndp = 686
  fromEnum PpcInsXvcpsgnsp = 687
  fromEnum PpcInsXvcvdpsp = 688
  fromEnum PpcInsXvcvdpsxds = 689
  fromEnum PpcInsXvcvdpsxws = 690
  fromEnum PpcInsXvcvdpuxds = 691
  fromEnum PpcInsXvcvdpuxws = 692
  fromEnum PpcInsXvcvspdp = 693
  fromEnum PpcInsXvcvspsxds = 694
  fromEnum PpcInsXvcvspsxws = 695
  fromEnum PpcInsXvcvspuxds = 696
  fromEnum PpcInsXvcvspuxws = 697
  fromEnum PpcInsXvcvsxddp = 698
  fromEnum PpcInsXvcvsxdsp = 699
  fromEnum PpcInsXvcvsxwdp = 700
  fromEnum PpcInsXvcvsxwsp = 701
  fromEnum PpcInsXvcvuxddp = 702
  fromEnum PpcInsXvcvuxdsp = 703
  fromEnum PpcInsXvcvuxwdp = 704
  fromEnum PpcInsXvcvuxwsp = 705
  fromEnum PpcInsXvdivdp = 706
  fromEnum PpcInsXvdivsp = 707
  fromEnum PpcInsXvmaddadp = 708
  fromEnum PpcInsXvmaddasp = 709
  fromEnum PpcInsXvmaddmdp = 710
  fromEnum PpcInsXvmaddmsp = 711
  fromEnum PpcInsXvmaxdp = 712
  fromEnum PpcInsXvmaxsp = 713
  fromEnum PpcInsXvmindp = 714
  fromEnum PpcInsXvminsp = 715
  fromEnum PpcInsXvmsubadp = 716
  fromEnum PpcInsXvmsubasp = 717
  fromEnum PpcInsXvmsubmdp = 718
  fromEnum PpcInsXvmsubmsp = 719
  fromEnum PpcInsXvmuldp = 720
  fromEnum PpcInsXvmulsp = 721
  fromEnum PpcInsXvnabsdp = 722
  fromEnum PpcInsXvnabssp = 723
  fromEnum PpcInsXvnegdp = 724
  fromEnum PpcInsXvnegsp = 725
  fromEnum PpcInsXvnmaddadp = 726
  fromEnum PpcInsXvnmaddasp = 727
  fromEnum PpcInsXvnmaddmdp = 728
  fromEnum PpcInsXvnmaddmsp = 729
  fromEnum PpcInsXvnmsubadp = 730
  fromEnum PpcInsXvnmsubasp = 731
  fromEnum PpcInsXvnmsubmdp = 732
  fromEnum PpcInsXvnmsubmsp = 733
  fromEnum PpcInsXvrdpi = 734
  fromEnum PpcInsXvrdpic = 735
  fromEnum PpcInsXvrdpim = 736
  fromEnum PpcInsXvrdpip = 737
  fromEnum PpcInsXvrdpiz = 738
  fromEnum PpcInsXvredp = 739
  fromEnum PpcInsXvresp = 740
  fromEnum PpcInsXvrspi = 741
  fromEnum PpcInsXvrspic = 742
  fromEnum PpcInsXvrspim = 743
  fromEnum PpcInsXvrspip = 744
  fromEnum PpcInsXvrspiz = 745
  fromEnum PpcInsXvrsqrtedp = 746
  fromEnum PpcInsXvrsqrtesp = 747
  fromEnum PpcInsXvsqrtdp = 748
  fromEnum PpcInsXvsqrtsp = 749
  fromEnum PpcInsXvsubdp = 750
  fromEnum PpcInsXvsubsp = 751
  fromEnum PpcInsXvtdivdp = 752
  fromEnum PpcInsXvtdivsp = 753
  fromEnum PpcInsXvtsqrtdp = 754
  fromEnum PpcInsXvtsqrtsp = 755
  fromEnum PpcInsXxland = 756
  fromEnum PpcInsXxlandc = 757
  fromEnum PpcInsXxlnor = 758
  fromEnum PpcInsXxlor = 759
  fromEnum PpcInsXxlxor = 760
  fromEnum PpcInsXxmrghw = 761
  fromEnum PpcInsXxmrglw = 762
  fromEnum PpcInsXxpermdi = 763
  fromEnum PpcInsXxsel = 764
  fromEnum PpcInsXxsldwi = 765
  fromEnum PpcInsXxspltw = 766
  fromEnum PpcInsBca = 767
  fromEnum PpcInsBcla = 768
  fromEnum PpcInsSlwi = 769
  fromEnum PpcInsSrwi = 770
  fromEnum PpcInsSldi = 771
  fromEnum PpcInsBta = 772
  fromEnum PpcInsCrset = 773
  fromEnum PpcInsCrnot = 774
  fromEnum PpcInsCrmove = 775
  fromEnum PpcInsCrclr = 776
  fromEnum PpcInsMfbr0 = 777
  fromEnum PpcInsMfbr1 = 778
  fromEnum PpcInsMfbr2 = 779
  fromEnum PpcInsMfbr3 = 780
  fromEnum PpcInsMfbr4 = 781
  fromEnum PpcInsMfbr5 = 782
  fromEnum PpcInsMfbr6 = 783
  fromEnum PpcInsMfbr7 = 784
  fromEnum PpcInsMfxer = 785
  fromEnum PpcInsMfrtcu = 786
  fromEnum PpcInsMfrtcl = 787
  fromEnum PpcInsMfdscr = 788
  fromEnum PpcInsMfdsisr = 789
  fromEnum PpcInsMfdar = 790
  fromEnum PpcInsMfsrr2 = 791
  fromEnum PpcInsMfsrr3 = 792
  fromEnum PpcInsMfcfar = 793
  fromEnum PpcInsMfamr = 794
  fromEnum PpcInsMfpid = 795
  fromEnum PpcInsMftblo = 796
  fromEnum PpcInsMftbhi = 797
  fromEnum PpcInsMfdbatu = 798
  fromEnum PpcInsMfdbatl = 799
  fromEnum PpcInsMfibatu = 800
  fromEnum PpcInsMfibatl = 801
  fromEnum PpcInsMfdccr = 802
  fromEnum PpcInsMficcr = 803
  fromEnum PpcInsMfdear = 804
  fromEnum PpcInsMfesr = 805
  fromEnum PpcInsMfspefscr = 806
  fromEnum PpcInsMftcr = 807
  fromEnum PpcInsMfasr = 808
  fromEnum PpcInsMfpvr = 809
  fromEnum PpcInsMftbu = 810
  fromEnum PpcInsMtcr = 811
  fromEnum PpcInsMtbr0 = 812
  fromEnum PpcInsMtbr1 = 813
  fromEnum PpcInsMtbr2 = 814
  fromEnum PpcInsMtbr3 = 815
  fromEnum PpcInsMtbr4 = 816
  fromEnum PpcInsMtbr5 = 817
  fromEnum PpcInsMtbr6 = 818
  fromEnum PpcInsMtbr7 = 819
  fromEnum PpcInsMtxer = 820
  fromEnum PpcInsMtdscr = 821
  fromEnum PpcInsMtdsisr = 822
  fromEnum PpcInsMtdar = 823
  fromEnum PpcInsMtsrr2 = 824
  fromEnum PpcInsMtsrr3 = 825
  fromEnum PpcInsMtcfar = 826
  fromEnum PpcInsMtamr = 827
  fromEnum PpcInsMtpid = 828
  fromEnum PpcInsMttbl = 829
  fromEnum PpcInsMttbu = 830
  fromEnum PpcInsMttblo = 831
  fromEnum PpcInsMttbhi = 832
  fromEnum PpcInsMtdbatu = 833
  fromEnum PpcInsMtdbatl = 834
  fromEnum PpcInsMtibatu = 835
  fromEnum PpcInsMtibatl = 836
  fromEnum PpcInsMtdccr = 837
  fromEnum PpcInsMticcr = 838
  fromEnum PpcInsMtdear = 839
  fromEnum PpcInsMtesr = 840
  fromEnum PpcInsMtspefscr = 841
  fromEnum PpcInsMttcr = 842
  fromEnum PpcInsNot = 843
  fromEnum PpcInsMr = 844
  fromEnum PpcInsRotld = 845
  fromEnum PpcInsRotldi = 846
  fromEnum PpcInsClrldi = 847
  fromEnum PpcInsRotlwi = 848
  fromEnum PpcInsClrlwi = 849
  fromEnum PpcInsRotlw = 850
  fromEnum PpcInsSub = 851
  fromEnum PpcInsSubc = 852
  fromEnum PpcInsLwsync = 853
  fromEnum PpcInsPtesync = 854
  fromEnum PpcInsTdlt = 855
  fromEnum PpcInsTdeq = 856
  fromEnum PpcInsTdgt = 857
  fromEnum PpcInsTdne = 858
  fromEnum PpcInsTdllt = 859
  fromEnum PpcInsTdlgt = 860
  fromEnum PpcInsTdu = 861
  fromEnum PpcInsTdlti = 862
  fromEnum PpcInsTdeqi = 863
  fromEnum PpcInsTdgti = 864
  fromEnum PpcInsTdnei = 865
  fromEnum PpcInsTdllti = 866
  fromEnum PpcInsTdlgti = 867
  fromEnum PpcInsTdui = 868
  fromEnum PpcInsTlbrehi = 869
  fromEnum PpcInsTlbrelo = 870
  fromEnum PpcInsTlbwehi = 871
  fromEnum PpcInsTlbwelo = 872
  fromEnum PpcInsTwlt = 873
  fromEnum PpcInsTweq = 874
  fromEnum PpcInsTwgt = 875
  fromEnum PpcInsTwne = 876
  fromEnum PpcInsTwllt = 877
  fromEnum PpcInsTwlgt = 878
  fromEnum PpcInsTwu = 879
  fromEnum PpcInsTwlti = 880
  fromEnum PpcInsTweqi = 881
  fromEnum PpcInsTwgti = 882
  fromEnum PpcInsTwnei = 883
  fromEnum PpcInsTwllti = 884
  fromEnum PpcInsTwlgti = 885
  fromEnum PpcInsTwui = 886
  fromEnum PpcInsWaitrsv = 887
  fromEnum PpcInsWaitimpl = 888
  fromEnum PpcInsXnop = 889
  fromEnum PpcInsXvmovdp = 890
  fromEnum PpcInsXvmovsp = 891
  fromEnum PpcInsXxspltd = 892
  fromEnum PpcInsXxmrghd = 893
  fromEnum PpcInsXxmrgld = 894
  fromEnum PpcInsXxswapd = 895
  fromEnum PpcInsBt = 896
  fromEnum PpcInsBf = 897
  fromEnum PpcInsBdnzt = 898
  fromEnum PpcInsBdnzf = 899
  fromEnum PpcInsBdzf = 900
  fromEnum PpcInsBdzt = 901
  fromEnum PpcInsBfa = 902
  fromEnum PpcInsBdnzta = 903
  fromEnum PpcInsBdnzfa = 904
  fromEnum PpcInsBdzta = 905
  fromEnum PpcInsBdzfa = 906
  fromEnum PpcInsBtctr = 907
  fromEnum PpcInsBfctr = 908
  fromEnum PpcInsBtctrl = 909
  fromEnum PpcInsBfctrl = 910
  fromEnum PpcInsBtl = 911
  fromEnum PpcInsBfl = 912
  fromEnum PpcInsBdnztl = 913
  fromEnum PpcInsBdnzfl = 914
  fromEnum PpcInsBdztl = 915
  fromEnum PpcInsBdzfl = 916
  fromEnum PpcInsBtla = 917
  fromEnum PpcInsBfla = 918
  fromEnum PpcInsBdnztla = 919
  fromEnum PpcInsBdnzfla = 920
  fromEnum PpcInsBdztla = 921
  fromEnum PpcInsBdzfla = 922
  fromEnum PpcInsBtlr = 923
  fromEnum PpcInsBflr = 924
  fromEnum PpcInsBdnztlr = 925
  fromEnum PpcInsBdztlr = 926
  fromEnum PpcInsBdzflr = 927
  fromEnum PpcInsBtlrl = 928
  fromEnum PpcInsBflrl = 929
  fromEnum PpcInsBdnztlrl = 930
  fromEnum PpcInsBdnzflrl = 931
  fromEnum PpcInsBdztlrl = 932
  fromEnum PpcInsBdzflrl = 933
  fromEnum PpcInsEnding = 934

  toEnum 0 = PpcInsInvalid
  toEnum 1 = PpcInsAdd
  toEnum 2 = PpcInsAddc
  toEnum 3 = PpcInsAdde
  toEnum 4 = PpcInsAddi
  toEnum 5 = PpcInsAddic
  toEnum 6 = PpcInsAddis
  toEnum 7 = PpcInsAddme
  toEnum 8 = PpcInsAddze
  toEnum 9 = PpcInsAnd
  toEnum 10 = PpcInsAndc
  toEnum 11 = PpcInsAndis
  toEnum 12 = PpcInsAndi
  toEnum 13 = PpcInsB
  toEnum 14 = PpcInsBa
  toEnum 15 = PpcInsBc
  toEnum 16 = PpcInsBcctr
  toEnum 17 = PpcInsBcctrl
  toEnum 18 = PpcInsBcl
  toEnum 19 = PpcInsBclr
  toEnum 20 = PpcInsBclrl
  toEnum 21 = PpcInsBctr
  toEnum 22 = PpcInsBctrl
  toEnum 23 = PpcInsBdnz
  toEnum 24 = PpcInsBdnza
  toEnum 25 = PpcInsBdnzl
  toEnum 26 = PpcInsBdnzla
  toEnum 27 = PpcInsBdnzlr
  toEnum 28 = PpcInsBdnzlrl
  toEnum 29 = PpcInsBdz
  toEnum 30 = PpcInsBdza
  toEnum 31 = PpcInsBdzl
  toEnum 32 = PpcInsBdzla
  toEnum 33 = PpcInsBdzlr
  toEnum 34 = PpcInsBdzlrl
  toEnum 35 = PpcInsBl
  toEnum 36 = PpcInsBla
  toEnum 37 = PpcInsBlr
  toEnum 38 = PpcInsBlrl
  toEnum 39 = PpcInsBrinc
  toEnum 40 = PpcInsCmpd
  toEnum 41 = PpcInsCmpdi
  toEnum 42 = PpcInsCmpld
  toEnum 43 = PpcInsCmpldi
  toEnum 44 = PpcInsCmplw
  toEnum 45 = PpcInsCmplwi
  toEnum 46 = PpcInsCmpw
  toEnum 47 = PpcInsCmpwi
  toEnum 48 = PpcInsCntlzd
  toEnum 49 = PpcInsCntlzw
  toEnum 50 = PpcInsCreqv
  toEnum 51 = PpcInsCrxor
  toEnum 52 = PpcInsCrand
  toEnum 53 = PpcInsCrandc
  toEnum 54 = PpcInsCrnand
  toEnum 55 = PpcInsCrnor
  toEnum 56 = PpcInsCror
  toEnum 57 = PpcInsCrorc
  toEnum 58 = PpcInsDcba
  toEnum 59 = PpcInsDcbf
  toEnum 60 = PpcInsDcbi
  toEnum 61 = PpcInsDcbst
  toEnum 62 = PpcInsDcbt
  toEnum 63 = PpcInsDcbtst
  toEnum 64 = PpcInsDcbz
  toEnum 65 = PpcInsDcbzl
  toEnum 66 = PpcInsDccci
  toEnum 67 = PpcInsDivd
  toEnum 68 = PpcInsDivdu
  toEnum 69 = PpcInsDivw
  toEnum 70 = PpcInsDivwu
  toEnum 71 = PpcInsDss
  toEnum 72 = PpcInsDssall
  toEnum 73 = PpcInsDst
  toEnum 74 = PpcInsDstst
  toEnum 75 = PpcInsDststt
  toEnum 76 = PpcInsDstt
  toEnum 77 = PpcInsEieio
  toEnum 78 = PpcInsEqv
  toEnum 79 = PpcInsEvabs
  toEnum 80 = PpcInsEvaddiw
  toEnum 81 = PpcInsEvaddsmiaaw
  toEnum 82 = PpcInsEvaddssiaaw
  toEnum 83 = PpcInsEvaddumiaaw
  toEnum 84 = PpcInsEvaddusiaaw
  toEnum 85 = PpcInsEvaddw
  toEnum 86 = PpcInsEvand
  toEnum 87 = PpcInsEvandc
  toEnum 88 = PpcInsEvcmpeq
  toEnum 89 = PpcInsEvcmpgts
  toEnum 90 = PpcInsEvcmpgtu
  toEnum 91 = PpcInsEvcmplts
  toEnum 92 = PpcInsEvcmpltu
  toEnum 93 = PpcInsEvcntlsw
  toEnum 94 = PpcInsEvcntlzw
  toEnum 95 = PpcInsEvdivws
  toEnum 96 = PpcInsEvdivwu
  toEnum 97 = PpcInsEveqv
  toEnum 98 = PpcInsEvextsb
  toEnum 99 = PpcInsEvextsh
  toEnum 100 = PpcInsEvldd
  toEnum 101 = PpcInsEvlddx
  toEnum 102 = PpcInsEvldh
  toEnum 103 = PpcInsEvldhx
  toEnum 104 = PpcInsEvldw
  toEnum 105 = PpcInsEvldwx
  toEnum 106 = PpcInsEvlhhesplat
  toEnum 107 = PpcInsEvlhhesplatx
  toEnum 108 = PpcInsEvlhhossplat
  toEnum 109 = PpcInsEvlhhossplatx
  toEnum 110 = PpcInsEvlhhousplat
  toEnum 111 = PpcInsEvlhhousplatx
  toEnum 112 = PpcInsEvlwhe
  toEnum 113 = PpcInsEvlwhex
  toEnum 114 = PpcInsEvlwhos
  toEnum 115 = PpcInsEvlwhosx
  toEnum 116 = PpcInsEvlwhou
  toEnum 117 = PpcInsEvlwhoux
  toEnum 118 = PpcInsEvlwhsplat
  toEnum 119 = PpcInsEvlwhsplatx
  toEnum 120 = PpcInsEvlwwsplat
  toEnum 121 = PpcInsEvlwwsplatx
  toEnum 122 = PpcInsEvmergehi
  toEnum 123 = PpcInsEvmergehilo
  toEnum 124 = PpcInsEvmergelo
  toEnum 125 = PpcInsEvmergelohi
  toEnum 126 = PpcInsEvmhegsmfaa
  toEnum 127 = PpcInsEvmhegsmfan
  toEnum 128 = PpcInsEvmhegsmiaa
  toEnum 129 = PpcInsEvmhegsmian
  toEnum 130 = PpcInsEvmhegumiaa
  toEnum 131 = PpcInsEvmhegumian
  toEnum 132 = PpcInsEvmhesmf
  toEnum 133 = PpcInsEvmhesmfa
  toEnum 134 = PpcInsEvmhesmfaaw
  toEnum 135 = PpcInsEvmhesmfanw
  toEnum 136 = PpcInsEvmhesmi
  toEnum 137 = PpcInsEvmhesmia
  toEnum 138 = PpcInsEvmhesmiaaw
  toEnum 139 = PpcInsEvmhesmianw
  toEnum 140 = PpcInsEvmhessf
  toEnum 141 = PpcInsEvmhessfa
  toEnum 142 = PpcInsEvmhessfaaw
  toEnum 143 = PpcInsEvmhessfanw
  toEnum 144 = PpcInsEvmhessiaaw
  toEnum 145 = PpcInsEvmhessianw
  toEnum 146 = PpcInsEvmheumi
  toEnum 147 = PpcInsEvmheumia
  toEnum 148 = PpcInsEvmheumiaaw
  toEnum 149 = PpcInsEvmheumianw
  toEnum 150 = PpcInsEvmheusiaaw
  toEnum 151 = PpcInsEvmheusianw
  toEnum 152 = PpcInsEvmhogsmfaa
  toEnum 153 = PpcInsEvmhogsmfan
  toEnum 154 = PpcInsEvmhogsmiaa
  toEnum 155 = PpcInsEvmhogsmian
  toEnum 156 = PpcInsEvmhogumiaa
  toEnum 157 = PpcInsEvmhogumian
  toEnum 158 = PpcInsEvmhosmf
  toEnum 159 = PpcInsEvmhosmfa
  toEnum 160 = PpcInsEvmhosmfaaw
  toEnum 161 = PpcInsEvmhosmfanw
  toEnum 162 = PpcInsEvmhosmi
  toEnum 163 = PpcInsEvmhosmia
  toEnum 164 = PpcInsEvmhosmiaaw
  toEnum 165 = PpcInsEvmhosmianw
  toEnum 166 = PpcInsEvmhossf
  toEnum 167 = PpcInsEvmhossfa
  toEnum 168 = PpcInsEvmhossfaaw
  toEnum 169 = PpcInsEvmhossfanw
  toEnum 170 = PpcInsEvmhossiaaw
  toEnum 171 = PpcInsEvmhossianw
  toEnum 172 = PpcInsEvmhoumi
  toEnum 173 = PpcInsEvmhoumia
  toEnum 174 = PpcInsEvmhoumiaaw
  toEnum 175 = PpcInsEvmhoumianw
  toEnum 176 = PpcInsEvmhousiaaw
  toEnum 177 = PpcInsEvmhousianw
  toEnum 178 = PpcInsEvmra
  toEnum 179 = PpcInsEvmwhsmf
  toEnum 180 = PpcInsEvmwhsmfa
  toEnum 181 = PpcInsEvmwhsmi
  toEnum 182 = PpcInsEvmwhsmia
  toEnum 183 = PpcInsEvmwhssf
  toEnum 184 = PpcInsEvmwhssfa
  toEnum 185 = PpcInsEvmwhumi
  toEnum 186 = PpcInsEvmwhumia
  toEnum 187 = PpcInsEvmwlsmiaaw
  toEnum 188 = PpcInsEvmwlsmianw
  toEnum 189 = PpcInsEvmwlssiaaw
  toEnum 190 = PpcInsEvmwlssianw
  toEnum 191 = PpcInsEvmwlumi
  toEnum 192 = PpcInsEvmwlumia
  toEnum 193 = PpcInsEvmwlumiaaw
  toEnum 194 = PpcInsEvmwlumianw
  toEnum 195 = PpcInsEvmwlusiaaw
  toEnum 196 = PpcInsEvmwlusianw
  toEnum 197 = PpcInsEvmwsmf
  toEnum 198 = PpcInsEvmwsmfa
  toEnum 199 = PpcInsEvmwsmfaa
  toEnum 200 = PpcInsEvmwsmfan
  toEnum 201 = PpcInsEvmwsmi
  toEnum 202 = PpcInsEvmwsmia
  toEnum 203 = PpcInsEvmwsmiaa
  toEnum 204 = PpcInsEvmwsmian
  toEnum 205 = PpcInsEvmwssf
  toEnum 206 = PpcInsEvmwssfa
  toEnum 207 = PpcInsEvmwssfaa
  toEnum 208 = PpcInsEvmwssfan
  toEnum 209 = PpcInsEvmwumi
  toEnum 210 = PpcInsEvmwumia
  toEnum 211 = PpcInsEvmwumiaa
  toEnum 212 = PpcInsEvmwumian
  toEnum 213 = PpcInsEvnand
  toEnum 214 = PpcInsEvneg
  toEnum 215 = PpcInsEvnor
  toEnum 216 = PpcInsEvor
  toEnum 217 = PpcInsEvorc
  toEnum 218 = PpcInsEvrlw
  toEnum 219 = PpcInsEvrlwi
  toEnum 220 = PpcInsEvrndw
  toEnum 221 = PpcInsEvslw
  toEnum 222 = PpcInsEvslwi
  toEnum 223 = PpcInsEvsplatfi
  toEnum 224 = PpcInsEvsplati
  toEnum 225 = PpcInsEvsrwis
  toEnum 226 = PpcInsEvsrwiu
  toEnum 227 = PpcInsEvsrws
  toEnum 228 = PpcInsEvsrwu
  toEnum 229 = PpcInsEvstdd
  toEnum 230 = PpcInsEvstddx
  toEnum 231 = PpcInsEvstdh
  toEnum 232 = PpcInsEvstdhx
  toEnum 233 = PpcInsEvstdw
  toEnum 234 = PpcInsEvstdwx
  toEnum 235 = PpcInsEvstwhe
  toEnum 236 = PpcInsEvstwhex
  toEnum 237 = PpcInsEvstwho
  toEnum 238 = PpcInsEvstwhox
  toEnum 239 = PpcInsEvstwwe
  toEnum 240 = PpcInsEvstwwex
  toEnum 241 = PpcInsEvstwwo
  toEnum 242 = PpcInsEvstwwox
  toEnum 243 = PpcInsEvsubfsmiaaw
  toEnum 244 = PpcInsEvsubfssiaaw
  toEnum 245 = PpcInsEvsubfumiaaw
  toEnum 246 = PpcInsEvsubfusiaaw
  toEnum 247 = PpcInsEvsubfw
  toEnum 248 = PpcInsEvsubifw
  toEnum 249 = PpcInsEvxor
  toEnum 250 = PpcInsExtsb
  toEnum 251 = PpcInsExtsh
  toEnum 252 = PpcInsExtsw
  toEnum 253 = PpcInsFabs
  toEnum 254 = PpcInsFadd
  toEnum 255 = PpcInsFadds
  toEnum 256 = PpcInsFcfid
  toEnum 257 = PpcInsFcfids
  toEnum 258 = PpcInsFcfidu
  toEnum 259 = PpcInsFcfidus
  toEnum 260 = PpcInsFcmpu
  toEnum 261 = PpcInsFcpsgn
  toEnum 262 = PpcInsFctid
  toEnum 263 = PpcInsFctiduz
  toEnum 264 = PpcInsFctidz
  toEnum 265 = PpcInsFctiw
  toEnum 266 = PpcInsFctiwuz
  toEnum 267 = PpcInsFctiwz
  toEnum 268 = PpcInsFdiv
  toEnum 269 = PpcInsFdivs
  toEnum 270 = PpcInsFmadd
  toEnum 271 = PpcInsFmadds
  toEnum 272 = PpcInsFmr
  toEnum 273 = PpcInsFmsub
  toEnum 274 = PpcInsFmsubs
  toEnum 275 = PpcInsFmul
  toEnum 276 = PpcInsFmuls
  toEnum 277 = PpcInsFnabs
  toEnum 278 = PpcInsFneg
  toEnum 279 = PpcInsFnmadd
  toEnum 280 = PpcInsFnmadds
  toEnum 281 = PpcInsFnmsub
  toEnum 282 = PpcInsFnmsubs
  toEnum 283 = PpcInsFre
  toEnum 284 = PpcInsFres
  toEnum 285 = PpcInsFrim
  toEnum 286 = PpcInsFrin
  toEnum 287 = PpcInsFrip
  toEnum 288 = PpcInsFriz
  toEnum 289 = PpcInsFrsp
  toEnum 290 = PpcInsFrsqrte
  toEnum 291 = PpcInsFrsqrtes
  toEnum 292 = PpcInsFsel
  toEnum 293 = PpcInsFsqrt
  toEnum 294 = PpcInsFsqrts
  toEnum 295 = PpcInsFsub
  toEnum 296 = PpcInsFsubs
  toEnum 297 = PpcInsIcbi
  toEnum 298 = PpcInsIccci
  toEnum 299 = PpcInsIsel
  toEnum 300 = PpcInsIsync
  toEnum 301 = PpcInsLa
  toEnum 302 = PpcInsLbz
  toEnum 303 = PpcInsLbzu
  toEnum 304 = PpcInsLbzux
  toEnum 305 = PpcInsLbzx
  toEnum 306 = PpcInsLd
  toEnum 307 = PpcInsLdarx
  toEnum 308 = PpcInsLdbrx
  toEnum 309 = PpcInsLdu
  toEnum 310 = PpcInsLdux
  toEnum 311 = PpcInsLdx
  toEnum 312 = PpcInsLfd
  toEnum 313 = PpcInsLfdu
  toEnum 314 = PpcInsLfdux
  toEnum 315 = PpcInsLfdx
  toEnum 316 = PpcInsLfiwax
  toEnum 317 = PpcInsLfiwzx
  toEnum 318 = PpcInsLfs
  toEnum 319 = PpcInsLfsu
  toEnum 320 = PpcInsLfsux
  toEnum 321 = PpcInsLfsx
  toEnum 322 = PpcInsLha
  toEnum 323 = PpcInsLhau
  toEnum 324 = PpcInsLhaux
  toEnum 325 = PpcInsLhax
  toEnum 326 = PpcInsLhbrx
  toEnum 327 = PpcInsLhz
  toEnum 328 = PpcInsLhzu
  toEnum 329 = PpcInsLhzux
  toEnum 330 = PpcInsLhzx
  toEnum 331 = PpcInsLi
  toEnum 332 = PpcInsLis
  toEnum 333 = PpcInsLmw
  toEnum 334 = PpcInsLswi
  toEnum 335 = PpcInsLvebx
  toEnum 336 = PpcInsLvehx
  toEnum 337 = PpcInsLvewx
  toEnum 338 = PpcInsLvsl
  toEnum 339 = PpcInsLvsr
  toEnum 340 = PpcInsLvx
  toEnum 341 = PpcInsLvxl
  toEnum 342 = PpcInsLwa
  toEnum 343 = PpcInsLwarx
  toEnum 344 = PpcInsLwaux
  toEnum 345 = PpcInsLwax
  toEnum 346 = PpcInsLwbrx
  toEnum 347 = PpcInsLwz
  toEnum 348 = PpcInsLwzu
  toEnum 349 = PpcInsLwzux
  toEnum 350 = PpcInsLwzx
  toEnum 351 = PpcInsLxsdx
  toEnum 352 = PpcInsLxvd2x
  toEnum 353 = PpcInsLxvdsx
  toEnum 354 = PpcInsLxvw4x
  toEnum 355 = PpcInsMbar
  toEnum 356 = PpcInsMcrf
  toEnum 357 = PpcInsMfcr
  toEnum 358 = PpcInsMfctr
  toEnum 359 = PpcInsMfdcr
  toEnum 360 = PpcInsMffs
  toEnum 361 = PpcInsMflr
  toEnum 362 = PpcInsMfmsr
  toEnum 363 = PpcInsMfocrf
  toEnum 364 = PpcInsMfspr
  toEnum 365 = PpcInsMfsr
  toEnum 366 = PpcInsMfsrin
  toEnum 367 = PpcInsMftb
  toEnum 368 = PpcInsMfvscr
  toEnum 369 = PpcInsMsync
  toEnum 370 = PpcInsMtcrf
  toEnum 371 = PpcInsMtctr
  toEnum 372 = PpcInsMtdcr
  toEnum 373 = PpcInsMtfsb0
  toEnum 374 = PpcInsMtfsb1
  toEnum 375 = PpcInsMtfsf
  toEnum 376 = PpcInsMtlr
  toEnum 377 = PpcInsMtmsr
  toEnum 378 = PpcInsMtmsrd
  toEnum 379 = PpcInsMtocrf
  toEnum 380 = PpcInsMtspr
  toEnum 381 = PpcInsMtsr
  toEnum 382 = PpcInsMtsrin
  toEnum 383 = PpcInsMtvscr
  toEnum 384 = PpcInsMulhd
  toEnum 385 = PpcInsMulhdu
  toEnum 386 = PpcInsMulhw
  toEnum 387 = PpcInsMulhwu
  toEnum 388 = PpcInsMulld
  toEnum 389 = PpcInsMulli
  toEnum 390 = PpcInsMullw
  toEnum 391 = PpcInsNand
  toEnum 392 = PpcInsNeg
  toEnum 393 = PpcInsNop
  toEnum 394 = PpcInsOri
  toEnum 395 = PpcInsNor
  toEnum 396 = PpcInsOr
  toEnum 397 = PpcInsOrc
  toEnum 398 = PpcInsOris
  toEnum 399 = PpcInsPopcntd
  toEnum 400 = PpcInsPopcntw
  toEnum 401 = PpcInsRfci
  toEnum 402 = PpcInsRfdi
  toEnum 403 = PpcInsRfi
  toEnum 404 = PpcInsRfid
  toEnum 405 = PpcInsRfmci
  toEnum 406 = PpcInsRldcl
  toEnum 407 = PpcInsRldcr
  toEnum 408 = PpcInsRldic
  toEnum 409 = PpcInsRldicl
  toEnum 410 = PpcInsRldicr
  toEnum 411 = PpcInsRldimi
  toEnum 412 = PpcInsRlwimi
  toEnum 413 = PpcInsRlwinm
  toEnum 414 = PpcInsRlwnm
  toEnum 415 = PpcInsSc
  toEnum 416 = PpcInsSlbia
  toEnum 417 = PpcInsSlbie
  toEnum 418 = PpcInsSlbmfee
  toEnum 419 = PpcInsSlbmte
  toEnum 420 = PpcInsSld
  toEnum 421 = PpcInsSlw
  toEnum 422 = PpcInsSrad
  toEnum 423 = PpcInsSradi
  toEnum 424 = PpcInsSraw
  toEnum 425 = PpcInsSrawi
  toEnum 426 = PpcInsSrd
  toEnum 427 = PpcInsSrw
  toEnum 428 = PpcInsStb
  toEnum 429 = PpcInsStbu
  toEnum 430 = PpcInsStbux
  toEnum 431 = PpcInsStbx
  toEnum 432 = PpcInsStd
  toEnum 433 = PpcInsStdbrx
  toEnum 434 = PpcInsStdcx
  toEnum 435 = PpcInsStdu
  toEnum 436 = PpcInsStdux
  toEnum 437 = PpcInsStdx
  toEnum 438 = PpcInsStfd
  toEnum 439 = PpcInsStfdu
  toEnum 440 = PpcInsStfdux
  toEnum 441 = PpcInsStfdx
  toEnum 442 = PpcInsStfiwx
  toEnum 443 = PpcInsStfs
  toEnum 444 = PpcInsStfsu
  toEnum 445 = PpcInsStfsux
  toEnum 446 = PpcInsStfsx
  toEnum 447 = PpcInsSth
  toEnum 448 = PpcInsSthbrx
  toEnum 449 = PpcInsSthu
  toEnum 450 = PpcInsSthux
  toEnum 451 = PpcInsSthx
  toEnum 452 = PpcInsStmw
  toEnum 453 = PpcInsStswi
  toEnum 454 = PpcInsStvebx
  toEnum 455 = PpcInsStvehx
  toEnum 456 = PpcInsStvewx
  toEnum 457 = PpcInsStvx
  toEnum 458 = PpcInsStvxl
  toEnum 459 = PpcInsStw
  toEnum 460 = PpcInsStwbrx
  toEnum 461 = PpcInsStwcx
  toEnum 462 = PpcInsStwu
  toEnum 463 = PpcInsStwux
  toEnum 464 = PpcInsStwx
  toEnum 465 = PpcInsStxsdx
  toEnum 466 = PpcInsStxvd2x
  toEnum 467 = PpcInsStxvw4x
  toEnum 468 = PpcInsSubf
  toEnum 469 = PpcInsSubfc
  toEnum 470 = PpcInsSubfe
  toEnum 471 = PpcInsSubfic
  toEnum 472 = PpcInsSubfme
  toEnum 473 = PpcInsSubfze
  toEnum 474 = PpcInsSync
  toEnum 475 = PpcInsTd
  toEnum 476 = PpcInsTdi
  toEnum 477 = PpcInsTlbia
  toEnum 478 = PpcInsTlbie
  toEnum 479 = PpcInsTlbiel
  toEnum 480 = PpcInsTlbivax
  toEnum 481 = PpcInsTlbld
  toEnum 482 = PpcInsTlbli
  toEnum 483 = PpcInsTlbre
  toEnum 484 = PpcInsTlbsx
  toEnum 485 = PpcInsTlbsync
  toEnum 486 = PpcInsTlbwe
  toEnum 487 = PpcInsTrap
  toEnum 488 = PpcInsTw
  toEnum 489 = PpcInsTwi
  toEnum 490 = PpcInsVaddcuw
  toEnum 491 = PpcInsVaddfp
  toEnum 492 = PpcInsVaddsbs
  toEnum 493 = PpcInsVaddshs
  toEnum 494 = PpcInsVaddsws
  toEnum 495 = PpcInsVaddubm
  toEnum 496 = PpcInsVaddubs
  toEnum 497 = PpcInsVadduhm
  toEnum 498 = PpcInsVadduhs
  toEnum 499 = PpcInsVadduwm
  toEnum 500 = PpcInsVadduws
  toEnum 501 = PpcInsVand
  toEnum 502 = PpcInsVandc
  toEnum 503 = PpcInsVavgsb
  toEnum 504 = PpcInsVavgsh
  toEnum 505 = PpcInsVavgsw
  toEnum 506 = PpcInsVavgub
  toEnum 507 = PpcInsVavguh
  toEnum 508 = PpcInsVavguw
  toEnum 509 = PpcInsVcfsx
  toEnum 510 = PpcInsVcfux
  toEnum 511 = PpcInsVcmpbfp
  toEnum 512 = PpcInsVcmpeqfp
  toEnum 513 = PpcInsVcmpequb
  toEnum 514 = PpcInsVcmpequh
  toEnum 515 = PpcInsVcmpequw
  toEnum 516 = PpcInsVcmpgefp
  toEnum 517 = PpcInsVcmpgtfp
  toEnum 518 = PpcInsVcmpgtsb
  toEnum 519 = PpcInsVcmpgtsh
  toEnum 520 = PpcInsVcmpgtsw
  toEnum 521 = PpcInsVcmpgtub
  toEnum 522 = PpcInsVcmpgtuh
  toEnum 523 = PpcInsVcmpgtuw
  toEnum 524 = PpcInsVctsxs
  toEnum 525 = PpcInsVctuxs
  toEnum 526 = PpcInsVexptefp
  toEnum 527 = PpcInsVlogefp
  toEnum 528 = PpcInsVmaddfp
  toEnum 529 = PpcInsVmaxfp
  toEnum 530 = PpcInsVmaxsb
  toEnum 531 = PpcInsVmaxsh
  toEnum 532 = PpcInsVmaxsw
  toEnum 533 = PpcInsVmaxub
  toEnum 534 = PpcInsVmaxuh
  toEnum 535 = PpcInsVmaxuw
  toEnum 536 = PpcInsVmhaddshs
  toEnum 537 = PpcInsVmhraddshs
  toEnum 538 = PpcInsVminfp
  toEnum 539 = PpcInsVminsb
  toEnum 540 = PpcInsVminsh
  toEnum 541 = PpcInsVminsw
  toEnum 542 = PpcInsVminub
  toEnum 543 = PpcInsVminuh
  toEnum 544 = PpcInsVminuw
  toEnum 545 = PpcInsVmladduhm
  toEnum 546 = PpcInsVmrghb
  toEnum 547 = PpcInsVmrghh
  toEnum 548 = PpcInsVmrghw
  toEnum 549 = PpcInsVmrglb
  toEnum 550 = PpcInsVmrglh
  toEnum 551 = PpcInsVmrglw
  toEnum 552 = PpcInsVmsummbm
  toEnum 553 = PpcInsVmsumshm
  toEnum 554 = PpcInsVmsumshs
  toEnum 555 = PpcInsVmsumubm
  toEnum 556 = PpcInsVmsumuhm
  toEnum 557 = PpcInsVmsumuhs
  toEnum 558 = PpcInsVmulesb
  toEnum 559 = PpcInsVmulesh
  toEnum 560 = PpcInsVmuleub
  toEnum 561 = PpcInsVmuleuh
  toEnum 562 = PpcInsVmulosb
  toEnum 563 = PpcInsVmulosh
  toEnum 564 = PpcInsVmuloub
  toEnum 565 = PpcInsVmulouh
  toEnum 566 = PpcInsVnmsubfp
  toEnum 567 = PpcInsVnor
  toEnum 568 = PpcInsVor
  toEnum 569 = PpcInsVperm
  toEnum 570 = PpcInsVpkpx
  toEnum 571 = PpcInsVpkshss
  toEnum 572 = PpcInsVpkshus
  toEnum 573 = PpcInsVpkswss
  toEnum 574 = PpcInsVpkswus
  toEnum 575 = PpcInsVpkuhum
  toEnum 576 = PpcInsVpkuhus
  toEnum 577 = PpcInsVpkuwum
  toEnum 578 = PpcInsVpkuwus
  toEnum 579 = PpcInsVrefp
  toEnum 580 = PpcInsVrfim
  toEnum 581 = PpcInsVrfin
  toEnum 582 = PpcInsVrfip
  toEnum 583 = PpcInsVrfiz
  toEnum 584 = PpcInsVrlb
  toEnum 585 = PpcInsVrlh
  toEnum 586 = PpcInsVrlw
  toEnum 587 = PpcInsVrsqrtefp
  toEnum 588 = PpcInsVsel
  toEnum 589 = PpcInsVsl
  toEnum 590 = PpcInsVslb
  toEnum 591 = PpcInsVsldoi
  toEnum 592 = PpcInsVslh
  toEnum 593 = PpcInsVslo
  toEnum 594 = PpcInsVslw
  toEnum 595 = PpcInsVspltb
  toEnum 596 = PpcInsVsplth
  toEnum 597 = PpcInsVspltisb
  toEnum 598 = PpcInsVspltish
  toEnum 599 = PpcInsVspltisw
  toEnum 600 = PpcInsVspltw
  toEnum 601 = PpcInsVsr
  toEnum 602 = PpcInsVsrab
  toEnum 603 = PpcInsVsrah
  toEnum 604 = PpcInsVsraw
  toEnum 605 = PpcInsVsrb
  toEnum 606 = PpcInsVsrh
  toEnum 607 = PpcInsVsro
  toEnum 608 = PpcInsVsrw
  toEnum 609 = PpcInsVsubcuw
  toEnum 610 = PpcInsVsubfp
  toEnum 611 = PpcInsVsubsbs
  toEnum 612 = PpcInsVsubshs
  toEnum 613 = PpcInsVsubsws
  toEnum 614 = PpcInsVsububm
  toEnum 615 = PpcInsVsububs
  toEnum 616 = PpcInsVsubuhm
  toEnum 617 = PpcInsVsubuhs
  toEnum 618 = PpcInsVsubuwm
  toEnum 619 = PpcInsVsubuws
  toEnum 620 = PpcInsVsum2sws
  toEnum 621 = PpcInsVsum4sbs
  toEnum 622 = PpcInsVsum4shs
  toEnum 623 = PpcInsVsum4ubs
  toEnum 624 = PpcInsVsumsws
  toEnum 625 = PpcInsVupkhpx
  toEnum 626 = PpcInsVupkhsb
  toEnum 627 = PpcInsVupkhsh
  toEnum 628 = PpcInsVupklpx
  toEnum 629 = PpcInsVupklsb
  toEnum 630 = PpcInsVupklsh
  toEnum 631 = PpcInsVxor
  toEnum 632 = PpcInsWait
  toEnum 633 = PpcInsWrtee
  toEnum 634 = PpcInsWrteei
  toEnum 635 = PpcInsXor
  toEnum 636 = PpcInsXori
  toEnum 637 = PpcInsXoris
  toEnum 638 = PpcInsXsabsdp
  toEnum 639 = PpcInsXsadddp
  toEnum 640 = PpcInsXscmpodp
  toEnum 641 = PpcInsXscmpudp
  toEnum 642 = PpcInsXscpsgndp
  toEnum 643 = PpcInsXscvdpsp
  toEnum 644 = PpcInsXscvdpsxds
  toEnum 645 = PpcInsXscvdpsxws
  toEnum 646 = PpcInsXscvdpuxds
  toEnum 647 = PpcInsXscvdpuxws
  toEnum 648 = PpcInsXscvspdp
  toEnum 649 = PpcInsXscvsxddp
  toEnum 650 = PpcInsXscvuxddp
  toEnum 651 = PpcInsXsdivdp
  toEnum 652 = PpcInsXsmaddadp
  toEnum 653 = PpcInsXsmaddmdp
  toEnum 654 = PpcInsXsmaxdp
  toEnum 655 = PpcInsXsmindp
  toEnum 656 = PpcInsXsmsubadp
  toEnum 657 = PpcInsXsmsubmdp
  toEnum 658 = PpcInsXsmuldp
  toEnum 659 = PpcInsXsnabsdp
  toEnum 660 = PpcInsXsnegdp
  toEnum 661 = PpcInsXsnmaddadp
  toEnum 662 = PpcInsXsnmaddmdp
  toEnum 663 = PpcInsXsnmsubadp
  toEnum 664 = PpcInsXsnmsubmdp
  toEnum 665 = PpcInsXsrdpi
  toEnum 666 = PpcInsXsrdpic
  toEnum 667 = PpcInsXsrdpim
  toEnum 668 = PpcInsXsrdpip
  toEnum 669 = PpcInsXsrdpiz
  toEnum 670 = PpcInsXsredp
  toEnum 671 = PpcInsXsrsqrtedp
  toEnum 672 = PpcInsXssqrtdp
  toEnum 673 = PpcInsXssubdp
  toEnum 674 = PpcInsXstdivdp
  toEnum 675 = PpcInsXstsqrtdp
  toEnum 676 = PpcInsXvabsdp
  toEnum 677 = PpcInsXvabssp
  toEnum 678 = PpcInsXvadddp
  toEnum 679 = PpcInsXvaddsp
  toEnum 680 = PpcInsXvcmpeqdp
  toEnum 681 = PpcInsXvcmpeqsp
  toEnum 682 = PpcInsXvcmpgedp
  toEnum 683 = PpcInsXvcmpgesp
  toEnum 684 = PpcInsXvcmpgtdp
  toEnum 685 = PpcInsXvcmpgtsp
  toEnum 686 = PpcInsXvcpsgndp
  toEnum 687 = PpcInsXvcpsgnsp
  toEnum 688 = PpcInsXvcvdpsp
  toEnum 689 = PpcInsXvcvdpsxds
  toEnum 690 = PpcInsXvcvdpsxws
  toEnum 691 = PpcInsXvcvdpuxds
  toEnum 692 = PpcInsXvcvdpuxws
  toEnum 693 = PpcInsXvcvspdp
  toEnum 694 = PpcInsXvcvspsxds
  toEnum 695 = PpcInsXvcvspsxws
  toEnum 696 = PpcInsXvcvspuxds
  toEnum 697 = PpcInsXvcvspuxws
  toEnum 698 = PpcInsXvcvsxddp
  toEnum 699 = PpcInsXvcvsxdsp
  toEnum 700 = PpcInsXvcvsxwdp
  toEnum 701 = PpcInsXvcvsxwsp
  toEnum 702 = PpcInsXvcvuxddp
  toEnum 703 = PpcInsXvcvuxdsp
  toEnum 704 = PpcInsXvcvuxwdp
  toEnum 705 = PpcInsXvcvuxwsp
  toEnum 706 = PpcInsXvdivdp
  toEnum 707 = PpcInsXvdivsp
  toEnum 708 = PpcInsXvmaddadp
  toEnum 709 = PpcInsXvmaddasp
  toEnum 710 = PpcInsXvmaddmdp
  toEnum 711 = PpcInsXvmaddmsp
  toEnum 712 = PpcInsXvmaxdp
  toEnum 713 = PpcInsXvmaxsp
  toEnum 714 = PpcInsXvmindp
  toEnum 715 = PpcInsXvminsp
  toEnum 716 = PpcInsXvmsubadp
  toEnum 717 = PpcInsXvmsubasp
  toEnum 718 = PpcInsXvmsubmdp
  toEnum 719 = PpcInsXvmsubmsp
  toEnum 720 = PpcInsXvmuldp
  toEnum 721 = PpcInsXvmulsp
  toEnum 722 = PpcInsXvnabsdp
  toEnum 723 = PpcInsXvnabssp
  toEnum 724 = PpcInsXvnegdp
  toEnum 725 = PpcInsXvnegsp
  toEnum 726 = PpcInsXvnmaddadp
  toEnum 727 = PpcInsXvnmaddasp
  toEnum 728 = PpcInsXvnmaddmdp
  toEnum 729 = PpcInsXvnmaddmsp
  toEnum 730 = PpcInsXvnmsubadp
  toEnum 731 = PpcInsXvnmsubasp
  toEnum 732 = PpcInsXvnmsubmdp
  toEnum 733 = PpcInsXvnmsubmsp
  toEnum 734 = PpcInsXvrdpi
  toEnum 735 = PpcInsXvrdpic
  toEnum 736 = PpcInsXvrdpim
  toEnum 737 = PpcInsXvrdpip
  toEnum 738 = PpcInsXvrdpiz
  toEnum 739 = PpcInsXvredp
  toEnum 740 = PpcInsXvresp
  toEnum 741 = PpcInsXvrspi
  toEnum 742 = PpcInsXvrspic
  toEnum 743 = PpcInsXvrspim
  toEnum 744 = PpcInsXvrspip
  toEnum 745 = PpcInsXvrspiz
  toEnum 746 = PpcInsXvrsqrtedp
  toEnum 747 = PpcInsXvrsqrtesp
  toEnum 748 = PpcInsXvsqrtdp
  toEnum 749 = PpcInsXvsqrtsp
  toEnum 750 = PpcInsXvsubdp
  toEnum 751 = PpcInsXvsubsp
  toEnum 752 = PpcInsXvtdivdp
  toEnum 753 = PpcInsXvtdivsp
  toEnum 754 = PpcInsXvtsqrtdp
  toEnum 755 = PpcInsXvtsqrtsp
  toEnum 756 = PpcInsXxland
  toEnum 757 = PpcInsXxlandc
  toEnum 758 = PpcInsXxlnor
  toEnum 759 = PpcInsXxlor
  toEnum 760 = PpcInsXxlxor
  toEnum 761 = PpcInsXxmrghw
  toEnum 762 = PpcInsXxmrglw
  toEnum 763 = PpcInsXxpermdi
  toEnum 764 = PpcInsXxsel
  toEnum 765 = PpcInsXxsldwi
  toEnum 766 = PpcInsXxspltw
  toEnum 767 = PpcInsBca
  toEnum 768 = PpcInsBcla
  toEnum 769 = PpcInsSlwi
  toEnum 770 = PpcInsSrwi
  toEnum 771 = PpcInsSldi
  toEnum 772 = PpcInsBta
  toEnum 773 = PpcInsCrset
  toEnum 774 = PpcInsCrnot
  toEnum 775 = PpcInsCrmove
  toEnum 776 = PpcInsCrclr
  toEnum 777 = PpcInsMfbr0
  toEnum 778 = PpcInsMfbr1
  toEnum 779 = PpcInsMfbr2
  toEnum 780 = PpcInsMfbr3
  toEnum 781 = PpcInsMfbr4
  toEnum 782 = PpcInsMfbr5
  toEnum 783 = PpcInsMfbr6
  toEnum 784 = PpcInsMfbr7
  toEnum 785 = PpcInsMfxer
  toEnum 786 = PpcInsMfrtcu
  toEnum 787 = PpcInsMfrtcl
  toEnum 788 = PpcInsMfdscr
  toEnum 789 = PpcInsMfdsisr
  toEnum 790 = PpcInsMfdar
  toEnum 791 = PpcInsMfsrr2
  toEnum 792 = PpcInsMfsrr3
  toEnum 793 = PpcInsMfcfar
  toEnum 794 = PpcInsMfamr
  toEnum 795 = PpcInsMfpid
  toEnum 796 = PpcInsMftblo
  toEnum 797 = PpcInsMftbhi
  toEnum 798 = PpcInsMfdbatu
  toEnum 799 = PpcInsMfdbatl
  toEnum 800 = PpcInsMfibatu
  toEnum 801 = PpcInsMfibatl
  toEnum 802 = PpcInsMfdccr
  toEnum 803 = PpcInsMficcr
  toEnum 804 = PpcInsMfdear
  toEnum 805 = PpcInsMfesr
  toEnum 806 = PpcInsMfspefscr
  toEnum 807 = PpcInsMftcr
  toEnum 808 = PpcInsMfasr
  toEnum 809 = PpcInsMfpvr
  toEnum 810 = PpcInsMftbu
  toEnum 811 = PpcInsMtcr
  toEnum 812 = PpcInsMtbr0
  toEnum 813 = PpcInsMtbr1
  toEnum 814 = PpcInsMtbr2
  toEnum 815 = PpcInsMtbr3
  toEnum 816 = PpcInsMtbr4
  toEnum 817 = PpcInsMtbr5
  toEnum 818 = PpcInsMtbr6
  toEnum 819 = PpcInsMtbr7
  toEnum 820 = PpcInsMtxer
  toEnum 821 = PpcInsMtdscr
  toEnum 822 = PpcInsMtdsisr
  toEnum 823 = PpcInsMtdar
  toEnum 824 = PpcInsMtsrr2
  toEnum 825 = PpcInsMtsrr3
  toEnum 826 = PpcInsMtcfar
  toEnum 827 = PpcInsMtamr
  toEnum 828 = PpcInsMtpid
  toEnum 829 = PpcInsMttbl
  toEnum 830 = PpcInsMttbu
  toEnum 831 = PpcInsMttblo
  toEnum 832 = PpcInsMttbhi
  toEnum 833 = PpcInsMtdbatu
  toEnum 834 = PpcInsMtdbatl
  toEnum 835 = PpcInsMtibatu
  toEnum 836 = PpcInsMtibatl
  toEnum 837 = PpcInsMtdccr
  toEnum 838 = PpcInsMticcr
  toEnum 839 = PpcInsMtdear
  toEnum 840 = PpcInsMtesr
  toEnum 841 = PpcInsMtspefscr
  toEnum 842 = PpcInsMttcr
  toEnum 843 = PpcInsNot
  toEnum 844 = PpcInsMr
  toEnum 845 = PpcInsRotld
  toEnum 846 = PpcInsRotldi
  toEnum 847 = PpcInsClrldi
  toEnum 848 = PpcInsRotlwi
  toEnum 849 = PpcInsClrlwi
  toEnum 850 = PpcInsRotlw
  toEnum 851 = PpcInsSub
  toEnum 852 = PpcInsSubc
  toEnum 853 = PpcInsLwsync
  toEnum 854 = PpcInsPtesync
  toEnum 855 = PpcInsTdlt
  toEnum 856 = PpcInsTdeq
  toEnum 857 = PpcInsTdgt
  toEnum 858 = PpcInsTdne
  toEnum 859 = PpcInsTdllt
  toEnum 860 = PpcInsTdlgt
  toEnum 861 = PpcInsTdu
  toEnum 862 = PpcInsTdlti
  toEnum 863 = PpcInsTdeqi
  toEnum 864 = PpcInsTdgti
  toEnum 865 = PpcInsTdnei
  toEnum 866 = PpcInsTdllti
  toEnum 867 = PpcInsTdlgti
  toEnum 868 = PpcInsTdui
  toEnum 869 = PpcInsTlbrehi
  toEnum 870 = PpcInsTlbrelo
  toEnum 871 = PpcInsTlbwehi
  toEnum 872 = PpcInsTlbwelo
  toEnum 873 = PpcInsTwlt
  toEnum 874 = PpcInsTweq
  toEnum 875 = PpcInsTwgt
  toEnum 876 = PpcInsTwne
  toEnum 877 = PpcInsTwllt
  toEnum 878 = PpcInsTwlgt
  toEnum 879 = PpcInsTwu
  toEnum 880 = PpcInsTwlti
  toEnum 881 = PpcInsTweqi
  toEnum 882 = PpcInsTwgti
  toEnum 883 = PpcInsTwnei
  toEnum 884 = PpcInsTwllti
  toEnum 885 = PpcInsTwlgti
  toEnum 886 = PpcInsTwui
  toEnum 887 = PpcInsWaitrsv
  toEnum 888 = PpcInsWaitimpl
  toEnum 889 = PpcInsXnop
  toEnum 890 = PpcInsXvmovdp
  toEnum 891 = PpcInsXvmovsp
  toEnum 892 = PpcInsXxspltd
  toEnum 893 = PpcInsXxmrghd
  toEnum 894 = PpcInsXxmrgld
  toEnum 895 = PpcInsXxswapd
  toEnum 896 = PpcInsBt
  toEnum 897 = PpcInsBf
  toEnum 898 = PpcInsBdnzt
  toEnum 899 = PpcInsBdnzf
  toEnum 900 = PpcInsBdzf
  toEnum 901 = PpcInsBdzt
  toEnum 902 = PpcInsBfa
  toEnum 903 = PpcInsBdnzta
  toEnum 904 = PpcInsBdnzfa
  toEnum 905 = PpcInsBdzta
  toEnum 906 = PpcInsBdzfa
  toEnum 907 = PpcInsBtctr
  toEnum 908 = PpcInsBfctr
  toEnum 909 = PpcInsBtctrl
  toEnum 910 = PpcInsBfctrl
  toEnum 911 = PpcInsBtl
  toEnum 912 = PpcInsBfl
  toEnum 913 = PpcInsBdnztl
  toEnum 914 = PpcInsBdnzfl
  toEnum 915 = PpcInsBdztl
  toEnum 916 = PpcInsBdzfl
  toEnum 917 = PpcInsBtla
  toEnum 918 = PpcInsBfla
  toEnum 919 = PpcInsBdnztla
  toEnum 920 = PpcInsBdnzfla
  toEnum 921 = PpcInsBdztla
  toEnum 922 = PpcInsBdzfla
  toEnum 923 = PpcInsBtlr
  toEnum 924 = PpcInsBflr
  toEnum 925 = PpcInsBdnztlr
  toEnum 926 = PpcInsBdztlr
  toEnum 927 = PpcInsBdzflr
  toEnum 928 = PpcInsBtlrl
  toEnum 929 = PpcInsBflrl
  toEnum 930 = PpcInsBdnztlrl
  toEnum 931 = PpcInsBdnzflrl
  toEnum 932 = PpcInsBdztlrl
  toEnum 933 = PpcInsBdzflrl
  toEnum 934 = PpcInsEnding
  toEnum unmatched = error ("PpcInsn.toEnum: Cannot match " ++ show unmatched)

{-# LINE 153 "src/Hapstone/Internal/Ppc.chs" #-}

-- | PPC instruction groups
data PpcInsnGroup = PpcGrpInvalid
                  | PpcGrpJump
                  | PpcGrpAltivec
                  | PpcGrpMode32
                  | PpcGrpMode64
                  | PpcGrpBooke
                  | PpcGrpNotbooke
                  | PpcGrpSpe
                  | PpcGrpVsx
                  | PpcGrpE500
                  | PpcGrpPpc4xx
                  | PpcGrpPpc6xx
                  | PpcGrpEnding
  deriving (Show,Eq,Bounded)
instance Enum PpcInsnGroup where
  succ PpcGrpInvalid = PpcGrpJump
  succ PpcGrpJump = PpcGrpAltivec
  succ PpcGrpAltivec = PpcGrpMode32
  succ PpcGrpMode32 = PpcGrpMode64
  succ PpcGrpMode64 = PpcGrpBooke
  succ PpcGrpBooke = PpcGrpNotbooke
  succ PpcGrpNotbooke = PpcGrpSpe
  succ PpcGrpSpe = PpcGrpVsx
  succ PpcGrpVsx = PpcGrpE500
  succ PpcGrpE500 = PpcGrpPpc4xx
  succ PpcGrpPpc4xx = PpcGrpPpc6xx
  succ PpcGrpPpc6xx = PpcGrpEnding
  succ PpcGrpEnding = error "PpcInsnGroup.succ: PpcGrpEnding has no successor"

  pred PpcGrpJump = PpcGrpInvalid
  pred PpcGrpAltivec = PpcGrpJump
  pred PpcGrpMode32 = PpcGrpAltivec
  pred PpcGrpMode64 = PpcGrpMode32
  pred PpcGrpBooke = PpcGrpMode64
  pred PpcGrpNotbooke = PpcGrpBooke
  pred PpcGrpSpe = PpcGrpNotbooke
  pred PpcGrpVsx = PpcGrpSpe
  pred PpcGrpE500 = PpcGrpVsx
  pred PpcGrpPpc4xx = PpcGrpE500
  pred PpcGrpPpc6xx = PpcGrpPpc4xx
  pred PpcGrpEnding = PpcGrpPpc6xx
  pred PpcGrpInvalid = error "PpcInsnGroup.pred: PpcGrpInvalid has no predecessor"

  enumFromTo from to = go from
    where
      end = fromEnum to
      go v = case compare (fromEnum v) end of
                 LT -> v : go (succ v)
                 EQ -> [v]
                 GT -> []

  enumFrom from = enumFromTo from PpcGrpEnding

  fromEnum PpcGrpInvalid = 0
  fromEnum PpcGrpJump = 1
  fromEnum PpcGrpAltivec = 128
  fromEnum PpcGrpMode32 = 129
  fromEnum PpcGrpMode64 = 130
  fromEnum PpcGrpBooke = 131
  fromEnum PpcGrpNotbooke = 132
  fromEnum PpcGrpSpe = 133
  fromEnum PpcGrpVsx = 134
  fromEnum PpcGrpE500 = 135
  fromEnum PpcGrpPpc4xx = 136
  fromEnum PpcGrpPpc6xx = 137
  fromEnum PpcGrpEnding = 138

  toEnum 0 = PpcGrpInvalid
  toEnum 1 = PpcGrpJump
  toEnum 128 = PpcGrpAltivec
  toEnum 129 = PpcGrpMode32
  toEnum 130 = PpcGrpMode64
  toEnum 131 = PpcGrpBooke
  toEnum 132 = PpcGrpNotbooke
  toEnum 133 = PpcGrpSpe
  toEnum 134 = PpcGrpVsx
  toEnum 135 = PpcGrpE500
  toEnum 136 = PpcGrpPpc4xx
  toEnum 137 = PpcGrpPpc6xx
  toEnum 138 = PpcGrpEnding
  toEnum unmatched = error ("PpcInsnGroup.toEnum: Cannot match " ++ show unmatched)

{-# LINE 156 "src/Hapstone/Internal/Ppc.chs" #-}