Documented in 2 files:
Defined in 2 files as a prototype:
- arch/x86/include/asm/insn.h, line 155 (as a prototype)
- tools/arch/x86/include/asm/insn.h, line 155 (as a prototype)
Defined in 2 files as a function:
Referenced in 4 files:
- arch/x86/events/utils.c, line 12
- arch/x86/lib/insn-eval.c
- arch/x86/lib/insn.c, line 391
- tools/arch/x86/lib/insn.c, line 391
Smatch caller information:
arch/x86/lib/insn.c insn_get_modrm() -> insn_get_opcode()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | insn | 4096-ptr_max |
| PARAM_VALUE | 0 | insn->modrm.got | 0 |
| DATA_SOURCE | 0 | insn | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 0 | insn->displacement.value | (-128)-255 |
| USER_DATA | 0 | insn->immediate.value | (-128)-255 |
| USER_DATA | 0 | insn->immediate1.value | (-128)-255 |
| USER_DATA | 0 | insn->immediate2.value | (-128)-255 |
| USER_DATA | 0 | insn->modrm.value | 0-255 |
| USER_DATA | 0 | insn->moffset1.value | (-128)-255 |
| USER_DATA | 0 | insn->moffset2.value | (-128)-255 |
| USER_DATA | 0 | insn->rex_prefix.value | 0-255 |
| USER_DATA | 0 | insn->sib.value | 0-255 |
| USER_DATA | 0 | *insn->end_kaddr | 0-255 |
| USER_DATA | 0 | *insn->kaddr | 0-255[u] |
| USER_DATA | 0 | *insn->next_byte | 0-255 |
arch/x86/lib/insn-eval.c insn_decode_mmio() -> insn_get_opcode()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | insn | 3929561995604525064,6747283956112052232,8874595658658983936 |
| PARAM_VALUE | 0 | insn->immediate.got | 0-1 |
| PARAM_VALUE | 0 | insn->immediate.nbytes | 0-2,4 |
| PARAM_VALUE | 0 | insn->immediate1.got | 0-1 |
| PARAM_VALUE | 0 | insn->immediate1.nbytes | 0-2,4 |
| PARAM_VALUE | 0 | insn->immediate2.got | 0-1 |
| PARAM_VALUE | 0 | insn->immediate2.nbytes | 0-2,4 |
| PARAM_VALUE | 0 | insn->modrm.got | 0-1 |
| PARAM_VALUE | 0 | insn->moffset1.got | 0-1 |
| PARAM_VALUE | 0 | insn->moffset1.nbytes | 0-2,4 |
| PARAM_VALUE | 0 | insn->moffset2.got | 0-1 |
| PARAM_VALUE | 0 | insn->moffset2.nbytes | 0-2,4 |
| PARAM_VALUE | 0 | insn->opcode.value | 0 |
| PARAM_VALUE | 0 | insn->opnd_bytes | 0,2,4,8 |
| PARAM_VALUE | 0 | insn->sib.got | 0-1 |
| PARAM_VALUE | 0 | insn->sib.value | 0-255 |
| PARAM_VALUE | 0 | insn->vex_prefix.value | 0 |
| PARAM_VALUE | 0 | insn->x86_64 | 0-1 |
| PARAM_VALUE | 0 | insn->xop_prefix.nbytes | 0 |
| BUF_SIZE | 0 | insn | (-1),112 |
| BUF_SIZE | 0 | insn | (-1),112 |
| DATA_SOURCE | 0 | insn | $0 |
| PREEMPT_ADD |
arch/x86/lib/insn-eval.c insn_get_addr_ref() -> insn_get_opcode()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | insn | 3280860769348898816,3929561995604525064,4671128583144820736,6127367958537531392,6747283956112052232,7961320843205591040,8874595658658983936 |
| PARAM_VALUE | 0 | insn->vex_prefix.value | 0 |
| PARAM_VALUE | 0 | insn->x86_64 | 0-1 |
| DATA_SOURCE | 0 | insn | $0 |
| STR_LEN | 0 | insn | (-1),8,24 |
| STR_LEN | 0 | insn | (-1),8,24 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 0 | insn->immediate.value | (-128)-255 |
| USER_DATA | 0 | insn->immediate1.value | (-128)-255 |
| USER_DATA | 0 | insn->immediate2.value | (-128)-255 |
| USER_DATA | 0 | insn->modrm.value | 0-255 |
| USER_DATA | 0 | insn->moffset1.value | (-128)-255 |
| USER_DATA | 0 | insn->moffset2.value | (-128)-255 |
| USER_DATA | 0 | insn->sib.value | 0-255 |
arch/x86/events/utils.c decode_branch_type() -> insn_get_opcode()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | insn | 5918861713348698112 |
| PARAM_VALUE | 0 | insn->addr_bytes | 4,8 |
| PARAM_VALUE | 0 | insn->attr | 0 |
| PARAM_VALUE | 0 | insn->displacement.got | 0 |
| PARAM_VALUE | 0 | insn->displacement.nbytes | 0 |
| PARAM_VALUE | 0 | insn->displacement.value | 0 |
| PARAM_VALUE | 0 | insn->emulate_prefix_size | 0 |
| PARAM_VALUE | 0 | insn->end_kaddr | 4096-ptr_max |
| PARAM_VALUE | 0 | insn->immediate.got | 0 |
| PARAM_VALUE | 0 | insn->immediate.nbytes | 0 |
| PARAM_VALUE | 0 | insn->immediate.value | 0 |
| PARAM_VALUE | 0 | insn->immediate1.got | 0 |
| PARAM_VALUE | 0 | insn->immediate1.nbytes | 0 |
| PARAM_VALUE | 0 | insn->immediate1.value | 0 |
| PARAM_VALUE | 0 | insn->immediate2.got | 0 |
| PARAM_VALUE | 0 | insn->immediate2.nbytes | 0 |
| PARAM_VALUE | 0 | insn->immediate2.value | 0 |
| PARAM_VALUE | 0 | insn->length | 0 |
| PARAM_VALUE | 0 | insn->modrm.got | 0 |
| PARAM_VALUE | 0 | insn->modrm.nbytes | 0 |
| PARAM_VALUE | 0 | insn->modrm.value | 0 |
| PARAM_VALUE | 0 | insn->moffset1.got | 0 |
| PARAM_VALUE | 0 | insn->moffset1.nbytes | 0 |
| PARAM_VALUE | 0 | insn->moffset1.value | 0 |
| PARAM_VALUE | 0 | insn->moffset2.got | 0 |
| PARAM_VALUE | 0 | insn->moffset2.nbytes | 0 |
| PARAM_VALUE | 0 | insn->moffset2.value | 0 |
| PARAM_VALUE | 0 | insn->opcode.got | 0 |
| PARAM_VALUE | 0 | insn->opcode.nbytes | 0 |
| PARAM_VALUE | 0 | insn->opnd_bytes | 4 |
| PARAM_VALUE | 0 | insn->prefixes.got | 0 |
| PARAM_VALUE | 0 | insn->prefixes.nbytes | 0 |
| PARAM_VALUE | 0 | insn->rex_prefix.got | 0 |
| PARAM_VALUE | 0 | insn->rex_prefix.nbytes | 0 |
| PARAM_VALUE | 0 | insn->rex_prefix.value | 0 |
| PARAM_VALUE | 0 | insn->sib.got | 0 |
| PARAM_VALUE | 0 | insn->sib.nbytes | 0 |
| PARAM_VALUE | 0 | insn->sib.value | 0 |
| PARAM_VALUE | 0 | insn->vex_prefix.got | 0 |
| PARAM_VALUE | 0 | insn->vex_prefix.nbytes | 0 |
| PARAM_VALUE | 0 | insn->vex_prefix.value | 0 |
| PARAM_VALUE | 0 | insn->x86_64 | 0-1 |
| PARAM_VALUE | 0 | insn->xop_prefix.nbytes | 0 |
| DATA_SOURCE | 0 | insn | $0 |
| MEM_ZERO | 0 | insn | |
| RX_PATH | |||
| TASK_NOT_RUNNING |