Function report | 
Source Code:arch\x86\lib\insn.c | 
Create Date:2022-07-28 07:25:05 | 
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick | 
| home page | Tree | 
| Annotation kernel can get tool activity | Download SCCT | Chinese | 
Name: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))
Proto:void insn_get_modrm(struct insn *insn)
Type:void
Parameter:
| Type | Parameter | Name | 
|---|---|---|
| struct insn * | insn | 
| 291 | If !0 if we've run insn_get_xxx() for this field Then Return | 
| 296 | If inat_has_modrm(attr) Then | 
| 297 | mod = get_next(insn_byte_t, insn) | 
| 299 | nbytes = 1 | 
| 300 | If inat_is_group(attr) Then | 
| 302 | attr = inat_get_group_attribute(mod, pfx_id, attr) | 
| 304 | If insn_is_avx(insn) && Not inat_accept_vex(attr) Then attr = 0 | 
| 309 | If x86_64 && inat_is_force64(attr) Then opnd_bytes = 8 | 
| 313 | err_out : | 
| 314 | Return | 
| Name | Describe | 
|---|---|
| insn_rip_relative | sn_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_sib | sn_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_reg | get_eff_addr_reg() - Obtain effective address from register operand*@insn: Instruction | 
| get_eff_addr_modrm | get_eff_addr_modrm() - Obtain referenced effective address via ModRM*@insn: Instruction | 
| get_eff_addr_modrm_16 | get_eff_addr_modrm_16() - Obtain referenced effective address via ModRM*@insn: Instruction | 
| get_eff_addr_sib | get_eff_addr_sib() - Obtain referenced effective address via SIB*@insn: Instruction | 
| get_addr_ref_16 | get_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 | 
| insn_get_attribute | Attribute will be determined after getting ModRM (for opcode groups) | 
| Source code conversion tool public plug-in interface  | X | 
|---|---|
| Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion  |