{-# LANGUAGE TemplateHaskell #-}
{-# OPTIONS_GHC -Wno-missing-signatures #-}
module LibRISCV.Internal.Decoder.Opcodes where
import LibRISCV.Internal.Decoder.Generator
Word32
Int -> InstructionType -> ShowS
Int -> RV_M -> ShowS
Int -> RV_I -> ShowS
Int -> RV32_I -> ShowS
[InstructionType] -> ShowS
[RV_M] -> ShowS
[RV_I] -> ShowS
[RV32_I] -> ShowS
Word32 -> Maybe RV_M
Word32 -> Maybe RV_I
Word32 -> Maybe RV32_I
Word32 -> InstructionType
InstructionType -> String
InstructionType -> InstructionType -> Bool
RV_M -> String
RV_M -> RV_M -> Bool
RV_I -> String
RV_I -> RV_I -> Bool
RV32_I -> String
RV32_I -> RV32_I -> Bool
(Int -> InstructionType -> ShowS)
-> (InstructionType -> String)
-> ([InstructionType] -> ShowS)
-> Show InstructionType
(Int -> RV_M -> ShowS)
-> (RV_M -> String) -> ([RV_M] -> ShowS) -> Show RV_M
(Int -> RV_I -> ShowS)
-> (RV_I -> String) -> ([RV_I] -> ShowS) -> Show RV_I
(Int -> RV32_I -> ShowS)
-> (RV32_I -> String) -> ([RV32_I] -> ShowS) -> Show RV32_I
(InstructionType -> InstructionType -> Bool)
-> (InstructionType -> InstructionType -> Bool)
-> Eq InstructionType
(RV_M -> RV_M -> Bool) -> (RV_M -> RV_M -> Bool) -> Eq RV_M
(RV_I -> RV_I -> Bool) -> (RV_I -> RV_I -> Bool) -> Eq RV_I
(RV32_I -> RV32_I -> Bool)
-> (RV32_I -> RV32_I -> Bool) -> Eq RV32_I
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$c== :: InstructionType -> InstructionType -> Bool
== :: InstructionType -> InstructionType -> Bool
$c/= :: InstructionType -> InstructionType -> Bool
/= :: InstructionType -> InstructionType -> Bool
$cshowsPrec :: Int -> InstructionType -> ShowS
showsPrec :: Int -> InstructionType -> ShowS
$cshow :: InstructionType -> String
show :: InstructionType -> String
$cshowList :: [InstructionType] -> ShowS
showList :: [InstructionType] -> ShowS
$c== :: RV_M -> RV_M -> Bool
== :: RV_M -> RV_M -> Bool
$c/= :: RV_M -> RV_M -> Bool
/= :: RV_M -> RV_M -> Bool
$cshowsPrec :: Int -> RV_M -> ShowS
showsPrec :: Int -> RV_M -> ShowS
$cshow :: RV_M -> String
show :: RV_M -> String
$cshowList :: [RV_M] -> ShowS
showList :: [RV_M] -> ShowS
$c== :: RV_I -> RV_I -> Bool
== :: RV_I -> RV_I -> Bool
$c/= :: RV_I -> RV_I -> Bool
/= :: RV_I -> RV_I -> Bool
$cshowsPrec :: Int -> RV_I -> ShowS
showsPrec :: Int -> RV_I -> ShowS
$cshow :: RV_I -> String
show :: RV_I -> String
$cshowList :: [RV_I] -> ShowS
showList :: [RV_I] -> ShowS
$c== :: RV32_I -> RV32_I -> Bool
== :: RV32_I -> RV32_I -> Bool
$c/= :: RV32_I -> RV32_I -> Bool
/= :: RV32_I -> RV32_I -> Bool
$cshowsPrec :: Int -> RV32_I -> ShowS
showsPrec :: Int -> RV32_I -> ShowS
$cshow :: RV32_I -> String
show :: RV32_I -> String
$cshowList :: [RV32_I] -> ShowS
showList :: [RV32_I] -> ShowS
add_mask :: Word32
addi_mask :: Word32
and_mask :: Word32
andi_mask :: Word32
auipc_mask :: Word32
beq_mask :: Word32
bge_mask :: Word32
bgeu_mask :: Word32
blt_mask :: Word32
bltu_mask :: Word32
bne_mask :: Word32
div_mask :: Word32
divu_mask :: Word32
ebreak_mask :: Word32
ecall_mask :: Word32
fence_mask :: Word32
jal_mask :: Word32
jalr_mask :: Word32
lb_mask :: Word32
lbu_mask :: Word32
lh_mask :: Word32
lhu_mask :: Word32
lui_mask :: Word32
lw_mask :: Word32
mul_mask :: Word32
mulh_mask :: Word32
mulhsu_mask :: Word32
mulhu_mask :: Word32
or_mask :: Word32
ori_mask :: Word32
rem_mask :: Word32
remu_mask :: Word32
sb_mask :: Word32
sh_mask :: Word32
sll_mask :: Word32
slli_mask :: Word32
slt_mask :: Word32
slti_mask :: Word32
sltiu_mask :: Word32
sltu_mask :: Word32
sra_mask :: Word32
srai_mask :: Word32
srl_mask :: Word32
srli_mask :: Word32
sub_mask :: Word32
sw_mask :: Word32
xor_mask :: Word32
xori_mask :: Word32
add_match :: Word32
addi_match :: Word32
and_match :: Word32
andi_match :: Word32
auipc_match :: Word32
beq_match :: Word32
bge_match :: Word32
bgeu_match :: Word32
blt_match :: Word32
bltu_match :: Word32
bne_match :: Word32
div_match :: Word32
divu_match :: Word32
ebreak_match :: Word32
ecall_match :: Word32
fence_match :: Word32
jal_match :: Word32
jalr_match :: Word32
lb_match :: Word32
lbu_match :: Word32
lh_match :: Word32
lhu_match :: Word32
lui_match :: Word32
lw_match :: Word32
mul_match :: Word32
mulh_match :: Word32
mulhsu_match :: Word32
mulhu_match :: Word32
or_match :: Word32
ori_match :: Word32
rem_match :: Word32
remu_match :: Word32
sb_match :: Word32
sh_match :: Word32
sll_match :: Word32
slli_match :: Word32
slt_match :: Word32
slti_match :: Word32
sltiu_match :: Word32
sltu_match :: Word32
sra_match :: Word32
srai_match :: Word32
srl_match :: Word32
srli_match :: Word32
sub_match :: Word32
sw_match :: Word32
xor_match :: Word32
xori_match :: Word32
decode_RV32_I :: Word32 -> Maybe RV32_I
decode_RV_I :: Word32 -> Maybe RV_I
decode_RV_M :: Word32 -> Maybe RV_M
decode :: Word32 -> InstructionType
generateDefaultDecoder