函数逻辑报告 |
Source Code:arch\x86\lib\insn.c |
Create Date:2022-07-27 08:24:06 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称: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).
函数原型:void insn_get_opcode(struct insn *insn)
返回类型:void
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| struct insn * | insn |
| 245 | op等于get_next(insn_byte_t, insn) |
| 247 | nbytes等于1 |
| 250 | 如果insn_is_avx(insn)则 |
| 252 | m等于insn_vex_m_bits(insn) |
| 253 | p等于insn_vex_p_bits(insn) |
| 254 | attr等于inat_get_avx_attribute(op, m, p) |
| 255 | 如果inat_must_evex(attr)且非insn_is_evex(insn)或非inat_accept_vex(attr)且非inat_is_group(attr)则attr等于0 |
| 259 | 转到:end |
| 263 | 当inat_is_escape(attr)循环 |
| 265 | op等于get_next(insn_byte_t, insn) |
| 268 | attr等于inat_get_escape_attribute(op, pfx_id, attr) |
| 270 | 如果inat_must_vex(attr)则attr等于0 |
| 272 | end : |
| 275 | err_out : |
| 276 | 返回 |
| 名称 | 描述 |
|---|---|
| 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 |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |