James B. Morris

15 papers A* 2Journal 8Unranked 4
YearRankTypeTitle / Venue / Authors
2017 J jnl
Ubiquity
James B. Morris
1981 J jnl
Computer
Stephen F. Zeigler, Nicole Allegre, Robert T. Johnson, James B. Morris, Gregory Burns
1980 J jnl
Softw. Pract. Exp.
James B. Morris
1979 conf
SIGPLAN Symposium on Compiler Construction
James B. Morris
1976 conf
Conference on Data: Abstraction, Definition and Structure
Robert T. Johnson, James B. Morris
1973 conf
SIGPLAN-SIGOPS Interface Meeting
James B. Morris
1973 J jnl
ACM SIGPLAN Notices
James B. Morris, Mark B. Wells
1972 J jnl
Commun. ACM
James B. Morris
1972 ed.
Two-Dimensional Man-Machine Communication
James B. Morris, Mark B. Wells
1972 conf
ACM Annual Conference (2)
James B. Morris, Mark B. Wells
1972 J jnl
ACM SIGPLAN Notices
James B. Morris, Mark B. Wells
1972 J jnl
Int. J. Parallel Program.
Mark B. Wells, James B. Morris
1971 J jnl
ACM SIGPLAN Notices
James B. Morris, Mark B. Wells
1970 A* conf
STOC
James B. Morris
1969 A* conf
IJCAI
James B. Morris
redb/extractors/decompiler/bninja/instruction_type.py
← Index redb/extractors/decompiler/bninja/instruction_type.py python
from enum import Enum


class InstructionType(Enum):
    # Data Movement
    GENERAL_DATA_MOVEMENT = "GENERAL_DATA_MOVEMENT"  # mov, lea, xchg
    STACK_MANAGEMENT = "STACK_MANAGEMENT"  # push, pop, enter, leave
    STRING_MANIPULATION = "STRING_MANIPULATION"  # movs, lods, stos, cmps

    # Arithmetic
    BASIC_ARITHMETIC = "BASIC_ARITHMETIC"  # add, sub, inc, dec
    MULTIPLICATION_DIVISION = "MULTIPLICATION_DIVISION"  # mul, div, imul, idiv
    CARRY_ARITHMETIC = "CARRY_ARITHMETIC"  # adc, sbb

    # Logical
    BITWISE_LOGIC = "BITWISE_LOGIC"  # and, or, xor, not
    CONDITIONAL_LOGIC = "CONDITIONAL_LOGIC"  # test, cmp, setX

    # Control Flow
    UNCONDITIONAL_JUMP = "UNCONDITIONAL_JUMP"  # jmp
    CONDITIONAL_JUMP = "CONDITIONAL_JUMP"  # je, jne, jl, jg, etc
    FUNCTION_CONTROL = "FUNCTION_CONTROL"  # call, ret
    LOOPING = "LOOPING"  # loop, loopz, loopnz

    # System
    SYSTEM_CALLS = "SYSTEM_CALLS"  # syscall, int, sysenter
    PRIVILEGED_INSTRUCTIONS = "PRIVILEGED_INSTRUCTIONS"  # hlt, cli, sti
    CPU_FEATURES = "CPU_FEATURES"  # cpuid, rdtsc

    # SIMD & FPU
    SSE_SIMD = "SSE_SIMD"  # SSE instructions
    AVX_SIMD = "AVX_SIMD"  # AVX instructions
    BASIC_FPU = "BASIC_FPU"  # fld, fst, fstp
    FPU_ARITHMETIC = "FPU_ARITHMETIC"  # fadd, fsub, etc

    # Bit Operations
    SHIFT_ROTATE = "SHIFT_ROTATE"  # shl, shr, rol, ror
    BIT_TEST_MODIFY = "BIT_TEST_MODIFY"  # bt, bts, btr, btc

    # Special
    CRYPTOGRAPHIC_OPS = "CRYPTOGRAPHIC_OPS"  # aesenc, aesdec, sha1rnds4
    MISC_OPS = "MISC_OPS"