Function report |
Source Code:arch\x86\lib\insn.c |
Create Date:2022-07-28 07:25:04 |
| 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_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).
Proto:void insn_get_opcode(struct insn *insn)
Type:void
Parameter:
| Type | Parameter | Name |
|---|---|---|
| struct insn * | insn |
| 239 | If !0 if we've run insn_get_xxx() for this field Then Return |
| 245 | op = get_next(insn_byte_t, insn) |
| 247 | nbytes = 1 |
| 250 | If insn_is_avx(insn) Then |
| 252 | m = insn_vex_m_bits(insn) |
| 253 | p = insn_vex_p_bits(insn) |
| 254 | attr = inat_get_avx_attribute(op, m, p) |
| 255 | If inat_must_evex(attr) && Not insn_is_evex(insn) || Not inat_accept_vex(attr) && Not inat_is_group(attr) Then attr = 0 |
| 259 | Go to end |
| 262 | attr = Attribute search APIs |
| 263 | When inat_is_escape(attr) cycle |
| 265 | op = get_next(insn_byte_t, insn) |
| 268 | attr = inat_get_escape_attribute(op, pfx_id, attr) |
| 270 | If inat_must_vex(attr) Then attr = 0 |
| 272 | end : |
| 275 | err_out : |
| 276 | Return |
| Name | Describe |
|---|---|
| insn_get_modrm | 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)) |
| is_string_insn | s_string_insn() - Determine if instruction is a string instruction*@insn: Instruction containing the opcode to inspect* Returns:* true if the instruction, determined by the opcode, is any of the |
| 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 |