函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:arch\x86\lib\insn.c Create Date:2022-07-27 08:24:07
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:sn_get_modrm - collect ModRM byte, if any*@insn: &struct insn containing instruction* Populates @insn->modrm and updates @insn->next_byte to point past the* ModRM byte, if any. If necessary, first collects the preceding bytes* (prefixes and opcode(s))

函数原型:void insn_get_modrm(struct insn *insn)

返回类型:void

参数:

类型参数名称
struct insn *insn
289  modrm等于modrm
291  如果 !0 if we've run insn_get_xxx() for this field 则返回
293  如果非 !0 if we've run insn_get_xxx() for this field sn_get_opcode - collect opcode(s)*@insn: &struct insn containing instruction* Populates @insn->opcode, updates @insn->next_byte to point past the* opcode byte(s), and set @insn->attr (except for groups).
296  如果inat_has_modrm(attr)则
297  mod等于get_next(insn_byte_t, insn)
298  value等于mod
299  nbytes等于1
300  如果inat_is_group(attr)则
304  如果insn_is_avx(insn)且非inat_accept_vex(attr)则attr等于0
309  如果x86_64inat_is_force64(attr)则opnd_bytes等于8
311  !0 if we've run insn_get_xxx() for this field 等于1
313  err_out :
314  返回
调用者
名称描述
insn_rip_relativesn_rip_relative() - Does instruction use RIP-relative addressing mode?*@insn: &struct insn containing instruction* If necessary, first collects the instruction up to and including the* ModRM byte. No effect if @insn->x86_64 is 0.
insn_get_sibsn_get_sib() - Get the SIB byte of instruction*@insn: &struct insn containing instruction* If necessary, first collects the instruction up to and including the* ModRM byte.
get_eff_addr_regget_eff_addr_reg() - Obtain effective address from register operand*@insn: Instruction
get_eff_addr_modrmget_eff_addr_modrm() - Obtain referenced effective address via ModRM*@insn: Instruction
get_eff_addr_modrm_16get_eff_addr_modrm_16() - Obtain referenced effective address via ModRM*@insn: Instruction
get_eff_addr_sibget_eff_addr_sib() - Obtain referenced effective address via SIB*@insn: Instruction
get_addr_ref_16get_addr_ref_16() - Obtain the 16-bit address referred by instruction*@insn: Instruction containing ModRM byte and displacement*@regs: Register values as seen when entering kernel mode* This function is to be used with 16-bit address encodings
identify_insndentify_insn() - Identify a UMIP-protected instruction*@insn: Instruction structure with opcode and ModRM byte
insn_get_attributeAttribute will be determined after getting ModRM (for opcode groups)