Lines Matching refs:rex

711 /*40*/	{ "rex",   FALSE, NONE,  0,          0 },
712 /*41*/ { "rex.b", FALSE, NONE, 0, 0 },
713 /*42*/ { "rex.x", FALSE, NONE, 0, 0 },
714 /*43*/ { "rex.xb", FALSE, NONE, 0, 0 },
715 /*44*/ { "rex.r", FALSE, NONE, 0, 0 },
716 /*45*/ { "rex.rb", FALSE, NONE, 0, 0 },
717 /*46*/ { "rex.rx", FALSE, NONE, 0, 0 },
718 /*47*/ { "rex.rxb", FALSE, NONE, 0, 0 },
720 /*48*/ { "rex.w", FALSE, NONE, 0, 0 },
721 /*49*/ { "rex.wb", FALSE, NONE, 0, 0 },
722 /*4a*/ { "rex.wx", FALSE, NONE, 0, 0 },
723 /*4b*/ { "rex.wxb", FALSE, NONE, 0, 0 },
724 /*4c*/ { "rex.wr", FALSE, NONE, 0, 0 },
725 /*4d*/ { "rex.wrb", FALSE, NONE, 0, 0 },
726 /*4e*/ { "rex.wrx", FALSE, NONE, 0, 0 },
727 /*4f*/ { "rex.wrxb", FALSE, NONE, 0, 0 },
933 #define f_mod(rex, byte) ((byte)>>6)
934 #define f_reg(rex, byte) ((((byte)>>3)&0x7) | (rex & REX_R ? 0x8 : 0x0))
935 #define f_rm(rex, byte) (((byte)&0x7) | (rex & REX_B ? 0x8 : 0x0))
937 #define sib_ss(rex, byte) ((byte)>>6)
938 #define sib_index(rex, byte) ((((byte)>>3)&0x7) | (rex & REX_X ? 0x8 : 0x0))
939 #define sib_base(rex, byte) (((byte)&0x7) | (rex & REX_B ? 0x8 : 0x0))
992 db_disasm_esc(uintptr_t loc, int inst, int rex, int short_addr,
994 static void db_print_address(const char *seg, int size, int rex,
997 db_read_address(uintptr_t loc, int short_addr, int rex, int regmodrm,
1004 db_read_address(uintptr_t loc, int short_addr, int rex, int regmodrm, struct i_addr *addrp)
1008 mod = f_mod(rex, regmodrm);
1009 rm = f_rm(rex, regmodrm);
1026 rm = sib_base(rex, sib);
1027 index = sib_index(rex, sib);
1030 addrp->ss = sib_ss(rex, sib);
1067 db_print_address(const char *seg, int size, int rex, struct i_addr *addrp)
1070 kprintf("%s", db_reg[rex != 0 ? 1 : 0][(size == LONG && (rex & REX_W)) ? QUAD : size][addrp->disp]);
1095 db_disasm_esc(uintptr_t loc, int inst, int rex, int short_addr, int size, const char *seg)
1104 fp = &db_Esc_inst[inst - 0xd8][f_reg(rex, regmodrm)];
1105 mod = f_mod(rex, regmodrm);
1114 loc = db_read_address(loc, short_addr, rex, regmodrm, &address);
1139 db_print_address(seg, BYTE, rex, &address);
1148 kprintf("%s\t%%st,%%st(%d)",name,f_rm(rex, regmodrm));
1152 kprintf("%s\t%%st(%d),%%st",name, f_rm(rex, regmodrm));
1156 kprintf("%s\t%%st(%d)",name, f_rm(rex, regmodrm));
1159 name = ((const char * const *)fp->f_rrname)[f_rm(rex, regmodrm)];
1165 name = ((const char * const *)fp->f_rrname)[f_rm(rex, regmodrm)];
1196 int rex = 0;
1258 rex = inst;
1267 loc = db_disasm_esc(loc, inst, rex, short_addr, size, seg);
1286 loc = db_read_address(loc, short_addr, rex, regmodrm, &address);
1297 i_name = ((const char * const *)ip->i_extra)[f_reg(rex, regmodrm)];
1301 ip = &ip[f_reg(rex, regmodrm)];
1307 ip = &ip[f_reg(rex, regmodrm)];
1314 if (ip->i_extra == db_Grp7 && f_mod(rex, regmodrm) == 3) {
1368 if (ip->i_extra == db_Grp15 && f_mod(rex, regmodrm) == 3) {
1369 i_name = db_Grp15b[f_reg(rex, regmodrm)];
1381 } else if (ip->i_extra == db_Grp9 && f_mod(rex, regmodrm) != 3 &&
1382 f_reg(rex, regmodrm) == 0x6) {
1388 if (ip->i_extra == db_Grp9 && f_mod(rex, regmodrm) != 3 &&
1389 f_reg(rex, regmodrm) == 0x6) {
1393 if (rex & REX_W) {
1432 if (rex & REX_W)
1450 db_print_address(seg, size, rex, &address);
1455 db_print_address(seg, size, rex, &address);
1459 db_print_address(seg, (rex & REX_W) ? QUAD : LONG, rex, &address);
1467 db_print_address(seg, WORD, rex, &address);
1471 db_print_address(seg, BYTE, rex, &address);
1475 kprintf("%s", db_reg[rex != 0 ? 1 : 0][(size == LONG && (rex & REX_W)) ? QUAD : size][f_reg(rex, regmodrm)]);
1479 kprintf("%s", db_reg[rex != 0 ? 1 : 0][WORD][f_reg(rex, regmodrm)]);
1483 kprintf("%s", db_reg[rex != 0 ? 1 : 0][QUAD][f_reg(rex, regmodrm)]);
1487 kprintf("%s", db_reg[0][QUAD][f_rm(rex, inst)]);
1491 kprintf("%s", db_reg[rex != 0 ? 1 : 0][(rex & REX_R) ? QUAD : LONG][f_rm(rex, inst)]);
1495 kprintf("%s", db_seg_reg[f_reg(rex, regmodrm)]);
1499 kprintf("%s", db_seg_reg[f_reg(rex, inst)]);
1503 kprintf("%s", db_reg[rex != 0 ? 1 : 0][size][0]); /* acc */
1531 kprintf("%%cr%d", f_reg(rex, regmodrm));
1535 kprintf("%%dr%d", f_reg(rex, regmodrm));
1539 kprintf("%%tr%d", f_reg(rex, regmodrm));
1549 len = db_lengths[(size == LONG && (rex & REX_W)) ? QUAD : size];
1578 len = db_lengths[rex & REX_W ? QUAD : LONG];
1601 len = db_lengths[(size == LONG && (rex & REX_W)) ? QUAD : size];