コード例 #1
0
 class MulDivInst(Enum):
     MUL = Enum.Auto()
     MULH = Enum.Auto()
     MULHU = Enum.Auto()
     MULHSU = Enum.Auto()
     DIV = Enum.Auto()
     DIVU = Enum.Auto()
     REM = Enum.Auto()
     REMU = Enum.Auto()
コード例 #2
0
 class ArithInst(Enum):
     ADD = Enum.Auto()
     SUB = Enum.Auto()
     SLT = Enum.Auto()
     SLTU = Enum.Auto()
     AND = Enum.Auto()
     OR = Enum.Auto()
     XOR = Enum.Auto()
コード例 #3
0
 class LoadInst(Enum):
     LB = Enum.Auto()
     LBU = Enum.Auto()
     LH = Enum.Auto()
     LHU = Enum.Auto()
     LW = Enum.Auto()
     LWU = Enum.Auto()
     LD = Enum.Auto()
コード例 #4
0
 class BranchInst(Enum):
     BEQ = Enum.Auto()
     BNE = Enum.Auto()
     BLT = Enum.Auto()
     BLTU = Enum.Auto()
     BGE = Enum.Auto()
     BGEU = Enum.Auto()
コード例 #5
0
ファイル: isa.py プロジェクト: cdonovick/peak-examples
 class RM(Enum):
     RNE = Enum.Auto()
     RTZ = Enum.Auto()
     RDN = Enum.Auto()
     RUP = Enum.Auto()
     RMM = Enum.Auto()
     DYN = Enum.Auto()
コード例 #6
0
    class I2Inst(Enum):
        # Arith
        # ADDI - Traps
        ADDIU = Enum.Auto()

        # Logical
        ANDI = Enum.Auto()
        ORI = Enum.Auto()
        XORI = Enum.Auto()

        # Conditions
        SLTI = Enum.Auto()
        SLTIU = Enum.Auto()
コード例 #7
0
    class R2Inst(Enum):
        # Arith
        CLO = Enum.Auto()
        CLZ = Enum.Auto()
        SEB = Enum.Auto()
        SEH = Enum.Auto()

        #Logic
        WSBH = Enum.Auto()

        # Mul / Div
        DIV = Enum.Auto()
        DIVU = Enum.Auto()
        MADD = Enum.Auto()
        MADDU = Enum.Auto()
        MSUB = Enum.Auto()
        MSUBU = Enum.Auto()
        MULT = Enum.Auto()
        MULTU = Enum.Auto()
コード例 #8
0
 class RsInst(Enum):
     ROTR = Enum.Auto()
     SLL = Enum.Auto()
     SRA = Enum.Auto()
     SRL = Enum.Auto()
コード例 #9
0
 class RlmInst(Enum):
     EXT = Enum.Auto()
     INS = Enum.Auto()
コード例 #10
0
ファイル: isa.py プロジェクト: cdonovick/peak-examples
 class FPMinMaxInst(Enum):
     MIN = Enum.Auto()
     MAX = Enum.Auto()
コード例 #11
0
 class Opcode(Enum):
     ADD = Enum.Auto()
     SUB = Enum.Auto()
     AND = Enum.Auto()
     OR = Enum.Auto()
コード例 #12
0
 class StoreInst(Enum):
     SB = Enum.Auto()
     SH = Enum.Auto()
     SW = Enum.Auto()
     SD = Enum.Auto()
コード例 #13
0
ファイル: isa.py プロジェクト: cdonovick/peak-examples
 class FPFusedInst(Enum):
     FMA = Enum.Auto()
     FNMA = Enum.Auto()
     FMS = Enum.Auto()
     FNMS = Enum.Auto()
コード例 #14
0
 class TF(Enum):
     T = Enum.Auto()
     F = Enum.Auto()
コード例 #15
0
ファイル: isa.py プロジェクト: cdonovick/peak-examples
 class FPComputeInst(Enum):
     FADD = Enum.Auto()
     FSUB = Enum.Auto()
     FMUL = Enum.Auto()
     FDIV = Enum.Auto()
コード例 #16
0
ファイル: isa.py プロジェクト: cdonovick/peak-examples
 class Opcode(Enum):
     NOR = Enum.Auto()
     JMP = Enum.Auto()
コード例 #17
0
ファイル: micro.py プロジェクト: cdonovick/peak-examples
 class ALUOp(Enum):
     AND = Enum.Auto()
     OR = Enum.Auto()
     XOR = Enum.Auto()
     ADD = Enum.Auto()
     MUL = Enum.Auto()
     DIV = Enum.Auto()
     # could definitely do this by resuing the other instructions
     # putting flags in the second output.  I am lazy and it doesn't
     # matter
     LT = Enum.Auto()
     # Should put shifts in the own unit but whatever
     SHL = Enum.Auto()
     SHR = Enum.Auto()
     ROT = Enum.Auto()
     MOV = Enum.Auto()
     # Same for the bit twiddling ops
     CLO = Enum.Auto()
コード例 #18
0
 class BitInst(Enum):
     POPCNT = Enum.Auto()
     CNTLZ = Enum.Auto()
     CNTTZ = Enum.Auto()
コード例 #19
0
ファイル: isa.py プロジェクト: cdonovick/peak-examples
 class FPOther(Enum):
     FSQRT = Enum.Auto()
     FCLASS = Enum.Auto()
コード例 #20
0
ファイル: isa.py プロジェクト: cdonovick/peak-examples
 class FPCompareInst(Enum):
     EQ = Enum.Auto()
     LT = Enum.Auto()
     LE = Enum.Auto()
コード例 #21
0
 class LOHI(Enum):
     LO = Enum.Auto()
     HI = Enum.Auto()
コード例 #22
0
ファイル: test_adt_visitor.py プロジェクト: leonardt/hwtypes
 class Tag(Enum):
     tag_a = Enum.Auto()
     tag_i = 1
コード例 #23
0
    class R3Inst(Enum):
        # Arith
        # ADD - Traps
        ADDU = Enum.Auto()
        # SUB - Traps
        SUBU = Enum.Auto()

        # Shifts
        ROTRV = Enum.Auto()
        SLLV = Enum.Auto()
        SRAV = Enum.Auto()
        SRLV = Enum.Auto()

        # Logic
        AND = Enum.Auto()
        NOR = Enum.Auto()
        OR = Enum.Auto()
        XOR = Enum.Auto()

        # Conditions
        MOVN = Enum.Auto()
        MOVZ = Enum.Auto()
        SLT = Enum.Auto()
        SLTU = Enum.Auto()

        # Mul / Div
        MUL = Enum.Auto()
コード例 #24
0
 class ShiftInst(Enum):
     SLL = Enum.Auto()
     SRL = Enum.Auto()
     SRA = Enum.Auto()