modrm 957 arch/x86/events/intel/lbr.c ext = (insn.modrm.bytes[0] >> 3) & 0x7; modrm 102 arch/x86/include/asm/inat.h extern insn_attr_t inat_get_group_attribute(insn_byte_t modrm, modrm 35 arch/x86/include/asm/insn.h struct insn_field modrm; modrm 61 arch/x86/include/asm/insn.h #define X86_MODRM_MOD(modrm) (((modrm) & 0xc0) >> 6) modrm 62 arch/x86/include/asm/insn.h #define X86_MODRM_REG(modrm) (((modrm) & 0x38) >> 3) modrm 63 arch/x86/include/asm/insn.h #define X86_MODRM_RM(modrm) ((modrm) & 0x07) modrm 134 arch/x86/include/asm/insn.h return insn->opcode.got && insn->modrm.got && insn->sib.got && modrm 187 arch/x86/include/asm/insn.h return insn_offset_modrm(insn) + insn->modrm.nbytes; modrm 213 arch/x86/include/asm/insn.h X86_MODRM_REG(insn->modrm.bytes[0]) == 2); modrm 339 arch/x86/include/asm/kvm_emulate.h u8 modrm; modrm 201 arch/x86/kernel/kprobes/opt.c (X86_MODRM_REG(insn->modrm.value) & 6) == 4) || /* Jump */ modrm 155 arch/x86/kernel/umip.c if (!insn->modrm.nbytes) modrm 163 arch/x86/kernel/umip.c switch (X86_MODRM_REG(insn->modrm.value)) { modrm 174 arch/x86/kernel/umip.c if (X86_MODRM_REG(insn->modrm.value) == 0) modrm 176 arch/x86/kernel/umip.c else if (X86_MODRM_REG(insn->modrm.value) == 1) modrm 223 arch/x86/kernel/umip.c if (X86_MODRM_MOD(insn->modrm.value) == 3) modrm 258 arch/x86/kernel/umip.c if (X86_MODRM_MOD(insn->modrm.value) == 3) modrm 402 arch/x86/kernel/umip.c if (X86_MODRM_MOD(insn.modrm.value) == 3) { modrm 44 arch/x86/kernel/uprobes.c #define MODRM_REG(insn) X86_MODRM_REG((insn)->modrm.value) modrm 1274 arch/x86/kvm/emulate.c ctxt->modrm_mod = (ctxt->modrm & 0xc0) >> 6; modrm 1275 arch/x86/kvm/emulate.c ctxt->modrm_reg |= (ctxt->modrm & 0x38) >> 3; modrm 1276 arch/x86/kvm/emulate.c ctxt->modrm_rm = base_reg | (ctxt->modrm & 0x07); modrm 5321 arch/x86/kvm/emulate.c ctxt->modrm = insn_fetch(u8, ctxt); modrm 5325 arch/x86/kvm/emulate.c (mode == X86EMUL_MODE_PROT64 || (ctxt->modrm & 0xc0) == 0xc0)) { modrm 5332 arch/x86/kvm/emulate.c goffset = (ctxt->modrm >> 3) & 7; modrm 5336 arch/x86/kvm/emulate.c goffset = (ctxt->modrm >> 3) & 7; modrm 5337 arch/x86/kvm/emulate.c if ((ctxt->modrm >> 6) == 3) modrm 5343 arch/x86/kvm/emulate.c goffset = ctxt->modrm & 7; modrm 5358 arch/x86/kvm/emulate.c if (ctxt->modrm > 0xbf) { modrm 5361 arch/x86/kvm/emulate.c ctxt->modrm - 0xc0, size); modrm 5365 arch/x86/kvm/emulate.c opcode = opcode.u.esc->op[(ctxt->modrm >> 3) & 7]; modrm 5369 arch/x86/kvm/emulate.c if ((ctxt->modrm >> 6) == 3) modrm 5546 arch/x86/kvm/emulate.c (void *)&ctxt->modrm - (void *)&ctxt->rip_relative); modrm 45 arch/x86/lib/inat.c insn_attr_t inat_get_group_attribute(insn_byte_t modrm, int lpfx_id, modrm 56 arch/x86/lib/inat.c if (inat_has_variant(table[X86_MODRM_REG(modrm)]) && lpfx_id) { modrm 61 arch/x86/lib/inat.c return table[X86_MODRM_REG(modrm)] | modrm 431 arch/x86/lib/insn-eval.c regno = X86_MODRM_RM(insn->modrm.value); modrm 437 arch/x86/lib/insn-eval.c if (!X86_MODRM_MOD(insn->modrm.value) && regno == 5) modrm 455 arch/x86/lib/insn-eval.c if (X86_MODRM_MOD(insn->modrm.value) != 3 && regno == 4) modrm 466 arch/x86/lib/insn-eval.c if (!X86_MODRM_MOD(insn->modrm.value) && regno == 5) modrm 536 arch/x86/lib/insn-eval.c if (X86_MODRM_MOD(insn->modrm.value) == 3) { modrm 542 arch/x86/lib/insn-eval.c *offs1 = regoff1[X86_MODRM_RM(insn->modrm.value)]; modrm 543 arch/x86/lib/insn-eval.c *offs2 = regoff2[X86_MODRM_RM(insn->modrm.value)]; modrm 552 arch/x86/lib/insn-eval.c if ((X86_MODRM_MOD(insn->modrm.value) == 0) && modrm 553 arch/x86/lib/insn-eval.c (X86_MODRM_RM(insn->modrm.value) == 6)) modrm 884 arch/x86/lib/insn-eval.c if (!insn->modrm.nbytes) modrm 887 arch/x86/lib/insn-eval.c if (X86_MODRM_MOD(insn->modrm.value) != 3) modrm 937 arch/x86/lib/insn-eval.c if (!insn->modrm.nbytes) modrm 940 arch/x86/lib/insn-eval.c if (X86_MODRM_MOD(insn->modrm.value) > 2) modrm 1005 arch/x86/lib/insn-eval.c if (!insn->modrm.nbytes) modrm 1008 arch/x86/lib/insn-eval.c if (X86_MODRM_MOD(insn->modrm.value) > 2) modrm 1073 arch/x86/lib/insn-eval.c if (!insn->modrm.nbytes) modrm 1076 arch/x86/lib/insn-eval.c if (X86_MODRM_MOD(insn->modrm.value) > 2) modrm 1154 arch/x86/lib/insn-eval.c if (X86_MODRM_MOD(insn->modrm.value) == 3) { modrm 1215 arch/x86/lib/insn-eval.c if (X86_MODRM_MOD(insn->modrm.value) == 3) { modrm 1308 arch/x86/lib/insn-eval.c if (X86_MODRM_MOD(insn->modrm.value) == 3) { modrm 255 arch/x86/lib/insn.c struct insn_field *modrm = &insn->modrm; modrm 257 arch/x86/lib/insn.c if (modrm->got) modrm 264 arch/x86/lib/insn.c modrm->value = mod; modrm 265 arch/x86/lib/insn.c modrm->nbytes = 1; modrm 277 arch/x86/lib/insn.c modrm->got = 1; modrm 293 arch/x86/lib/insn.c struct insn_field *modrm = &insn->modrm; modrm 297 arch/x86/lib/insn.c if (!modrm->got) modrm 303 arch/x86/lib/insn.c return (modrm->nbytes && (modrm->value & 0xc7) == 0x5); modrm 315 arch/x86/lib/insn.c insn_byte_t modrm; modrm 319 arch/x86/lib/insn.c if (!insn->modrm.got) modrm 321 arch/x86/lib/insn.c if (insn->modrm.nbytes) { modrm 322 arch/x86/lib/insn.c modrm = (insn_byte_t)insn->modrm.value; modrm 324 arch/x86/lib/insn.c X86_MODRM_MOD(modrm) != 3 && X86_MODRM_RM(modrm) == 4) { modrm 352 arch/x86/lib/insn.c if (insn->modrm.nbytes) { modrm 370 arch/x86/lib/insn.c mod = X86_MODRM_MOD(insn->modrm.value); modrm 371 arch/x86/lib/insn.c rm = X86_MODRM_RM(insn->modrm.value); modrm 139 arch/x86/mm/mpx.c bndregno = X86_MODRM_REG(insn.modrm.value); modrm 77 arch/x86/tools/insn_decoder_test.c dump_field(fp, "modrm", "\t", &insn->modrm); modrm 74 arch/x86/tools/insn_sanity.c dump_field(fp, "modrm", "\t", &insn->modrm); modrm 102 tools/arch/x86/include/asm/inat.h extern insn_attr_t inat_get_group_attribute(insn_byte_t modrm, modrm 35 tools/arch/x86/include/asm/insn.h struct insn_field modrm; modrm 61 tools/arch/x86/include/asm/insn.h #define X86_MODRM_MOD(modrm) (((modrm) & 0xc0) >> 6) modrm 62 tools/arch/x86/include/asm/insn.h #define X86_MODRM_REG(modrm) (((modrm) & 0x38) >> 3) modrm 63 tools/arch/x86/include/asm/insn.h #define X86_MODRM_RM(modrm) ((modrm) & 0x07) modrm 134 tools/arch/x86/include/asm/insn.h return insn->opcode.got && insn->modrm.got && insn->sib.got && modrm 187 tools/arch/x86/include/asm/insn.h return insn_offset_modrm(insn) + insn->modrm.nbytes; modrm 213 tools/arch/x86/include/asm/insn.h X86_MODRM_REG(insn->modrm.bytes[0]) == 2); modrm 45 tools/arch/x86/lib/inat.c insn_attr_t inat_get_group_attribute(insn_byte_t modrm, int lpfx_id, modrm 56 tools/arch/x86/lib/inat.c if (inat_has_variant(table[X86_MODRM_REG(modrm)]) && lpfx_id) { modrm 61 tools/arch/x86/lib/inat.c return table[X86_MODRM_REG(modrm)] | modrm 255 tools/arch/x86/lib/insn.c struct insn_field *modrm = &insn->modrm; modrm 257 tools/arch/x86/lib/insn.c if (modrm->got) modrm 264 tools/arch/x86/lib/insn.c modrm->value = mod; modrm 265 tools/arch/x86/lib/insn.c modrm->nbytes = 1; modrm 277 tools/arch/x86/lib/insn.c modrm->got = 1; modrm 293 tools/arch/x86/lib/insn.c struct insn_field *modrm = &insn->modrm; modrm 297 tools/arch/x86/lib/insn.c if (!modrm->got) modrm 303 tools/arch/x86/lib/insn.c return (modrm->nbytes && (modrm->value & 0xc7) == 0x5); modrm 315 tools/arch/x86/lib/insn.c insn_byte_t modrm; modrm 319 tools/arch/x86/lib/insn.c if (!insn->modrm.got) modrm 321 tools/arch/x86/lib/insn.c if (insn->modrm.nbytes) { modrm 322 tools/arch/x86/lib/insn.c modrm = (insn_byte_t)insn->modrm.value; modrm 324 tools/arch/x86/lib/insn.c X86_MODRM_MOD(modrm) != 3 && X86_MODRM_RM(modrm) == 4) { modrm 352 tools/arch/x86/lib/insn.c if (insn->modrm.nbytes) { modrm 370 tools/arch/x86/lib/insn.c mod = X86_MODRM_MOD(insn->modrm.value); modrm 371 tools/arch/x86/lib/insn.c rm = X86_MODRM_RM(insn->modrm.value); modrm 77 tools/objtool/arch/x86/decode.c rex_x = 0, modrm = 0, modrm_mod = 0, modrm_rm = 0, modrm 109 tools/objtool/arch/x86/decode.c if (insn.modrm.nbytes) { modrm 110 tools/objtool/arch/x86/decode.c modrm = insn.modrm.bytes[0]; modrm 111 tools/objtool/arch/x86/decode.c modrm_mod = X86_MODRM_MOD(modrm); modrm 112 tools/objtool/arch/x86/decode.c modrm_reg = X86_MODRM_REG(modrm); modrm 113 tools/objtool/arch/x86/decode.c modrm_rm = X86_MODRM_RM(modrm); modrm 171 tools/objtool/arch/x86/decode.c if (modrm == 0xe4) { modrm 182 tools/objtool/arch/x86/decode.c if (modrm == 0xc4) modrm 184 tools/objtool/arch/x86/decode.c else if (modrm == 0xec) modrm 288 tools/objtool/arch/x86/decode.c } else if (rex == 0x48 && modrm == 0x65) { modrm 298 tools/objtool/arch/x86/decode.c } else if (rex == 0x49 && modrm == 0x62 && modrm 314 tools/objtool/arch/x86/decode.c } else if (rex == 0x49 && modrm == 0x65 && modrm 362 tools/objtool/arch/x86/decode.c if (modrm == 0xca) modrm 364 tools/objtool/arch/x86/decode.c else if (modrm == 0xcb) modrm 109 tools/perf/util/intel-pt-decoder/intel-pt-insn-decoder.c ext = (insn->modrm.bytes[0] >> 3) & 0x7;