Lines Matching refs:modrm
122 /* modrm.mode = REGMEM_FIELD_HAS_REG when a register is in there */
131 /* High extension to reg field of modrm byte. */
135 /* High extension to base field of modrm or SIB, or reg field of opcode. */
1583 modrm;
3807 modrm.mod = (*codep >> 6) & 3;
3808 modrm.reg = (*codep >> 3) & 7;
3809 modrm.rm = *codep & 7;
3814 modrm.mod = (*codep >> 6) & 3;
3815 modrm.reg = (*codep >> 3) & 7;
3816 modrm.rm = *codep & 7;
3831 dp = &grps[dp->op[1].bytemode][modrm.reg];
4281 if (modrm
4283 int fp_indx = (floatop - 0xd8) * 8 + modrm.reg;
4295 dp = &float_reg[floatop - 0xd8][modrm.reg];
4298 putop (fgrps[dp->op[0].bytemode][modrm.rm], sizeflag);
4329 snprintf (scratchbuf, sizeof(scratchbuf), "%%st(%d)", modrm.rm);
4385 if (modrm.mod != 3 || (sizeflag & SUFFIX_ALWAYS))
4410 if (modrm.mod == 3)
4551 if (modrm.mod != 3 || (sizeflag & SUFFIX_ALWAYS))
4560 if (modrm.mod != 3 || (sizeflag & SUFFIX_ALWAYS))
4899 if (modrm.mod == 3)
4906 oappend (names8rex[modrm.rm + add]);
4908 oappend (names8[modrm.rm + add]);
4911 oappend (names16[modrm.rm + add]);
4914 oappend (names32[modrm.rm + add]);
4917 oappend (names64[modrm.rm + add]);
4921 oappend (names64[modrm.rm + add]);
4923 oappend (names32[modrm.rm + add]);
4928 oappend (names64[modrm.rm + add]);
4941 oappend (names64[modrm.rm + add]);
4943 oappend (names32[modrm.rm + add]);
4945 oappend (names16[modrm.rm + add]);
4974 base = modrm.rm;
4992 switch (modrm.mod)
5017 if (modrm.mod != 0 || (base & 7) == 5)
5064 && (disp || modrm.mod != 0 || (base & 7) == 5))
5071 else if (modrm.mod != 1)
5087 if (modrm
5104 switch (modrm.mod)
5107 if (modrm.rm == 6)
5128 if (modrm.mod != 0 || modrm.rm == 6)
5134 if (modrm.mod != 0 || modrm.rm != 6)
5138 oappend (index16[modrm.rm]);
5140 && (disp || modrm.mod != 0 || modrm.rm == 6))
5147 else if (modrm.mod != 1)
5190 oappend (names8rex[modrm.reg + add]);
5192 oappend (names8[modrm.reg + add]);
5195 oappend (names16[modrm.reg + add]);
5198 oappend (names32[modrm.reg + add]);
5201 oappend (names64[modrm.reg + add]);
5210 oappend (names64[modrm.reg + add]);
5212 oappend (names32[modrm.reg + add]);
5214 oappend (names16[modrm.reg + add]);
5219 oappend (names64[modrm.reg + add]);
5221 oappend (names32[modrm.reg + add]);
5619 oappend (names_seg[modrm.reg]);
5621 OP_E (modrm.mod == 3 ? bytemode : w_mode, sizeflag);
5797 snprintf (scratchbuf, sizeof(scratchbuf), "%%cr%d", modrm.reg + add);
5809 snprintf (scratchbuf, sizeof(scratchbuf), "db%d", modrm.reg + add);
5811 snprintf (scratchbuf, sizeof(scratchbuf), "%%db%d", modrm.reg + add);
5818 snprintf (scratchbuf, sizeof(scratchbuf), "%%tr%d", modrm.reg);
5825 if (modrm.mod == 3)
5841 snprintf (scratchbuf, sizeof(scratchbuf), "%%xmm%d", modrm.reg + add);
5844 snprintf (scratchbuf, sizeof(scratchbuf), "%%mm%d", modrm.reg);
5855 snprintf (scratchbuf, sizeof(scratchbuf), "%%xmm%d", modrm.reg + add);
5862 if (modrm.mod != 3)
5884 snprintf (scratchbuf, sizeof(scratchbuf), "%%xmm%d", modrm.rm + add);
5887 snprintf (scratchbuf, sizeof(scratchbuf), "%%mm%d", modrm.rm);
5899 if (modrm.mod != 3)
5914 snprintf (scratchbuf, sizeof(scratchbuf), "%%mm%d", modrm.rm);
5922 snprintf (scratchbuf, sizeof(scratchbuf), "%%mm%d", modrm.reg);
5930 if (modrm.mod != 3)
5942 snprintf (scratchbuf, sizeof(scratchbuf), "%%xmm%d", modrm.rm + add);
5949 if (modrm.mod == 3)
5958 if (modrm.mod == 3)
5967 if (modrm.mod == 3)
5968 /* bad bound,lea,lds,les,lfs,lgs,lss,cmpxchg8b,vmptrst modrm */
5977 if (modrm.mod != 3 || modrm.rm != 0)
5986 if (modrm.mod == 3)
5988 if (modrm.reg == 7)
5991 if (modrm.reg < 5 || modrm.rm != 0)
5997 else if (modrm.reg != 7)
6113 /* Since a variable sized modrm/sib chunk is between the start
6115 all the modrm processing first, and don't know until now that
6179 if (modrm.mod == 3)
6193 if (modrm.mod == 3 && modrm.reg == 1 && modrm.rm <= 1)
6215 if (modrm.rm)
6357 if (modrm.mod == 3
6358 && modrm.reg == 0
6359 && modrm.rm >=1
6360 && modrm.rm <= 4)
6369 switch (modrm.rm)
6531 if (modrm.mod == 3)
6545 oappend (names8rex[modrm.rm + add]);
6547 oappend (names8[modrm.rm + add]);
6553 oappend (names64[modrm.rm + add]);
6555 oappend (names16[modrm.rm + add]);
6557 oappend (names32[modrm.rm + add]);