int3.platform

class int3.platform.platform.Platform(*values)

Supported platform types.

static from_host() Platform

Derive the host’s platform.

static from_str(platform_str: str) Platform

Derive a platform from its string name.

>>> from int3 import Platform
>>> Platform.from_str("linux").name
'Linux'
class int3.platform.triple.Triple(arch: Architecture, platform: Platform)

Encapsulation of an LLVM target machine triple.

Triple strings have the form:

<arch><sub>-<vendor>-<sys>-<env>

See:
insns(raw: str | bytes) tuple[Instruction, ...]

Transform assembly or machine code into a sequence of instructions.

one_insn_or_raise(raw: str | bytes) Instruction

Transform assembly or machine code into exactly one instruction.

class int3.platform.syscall_convention.SyscallConvention(arch: Architecture, sys_num: RegisterDef, result: RegisterDef, args: tuple[RegisterDef, ...])

Architecture/platform-specific syscall convention.

llvm_constraint_str(num_args: int) str

Generate the LLVM inline asm constraint string for a syscall.

property max_args: int

Max number of syscall arguments supported.