reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
1164 dbgprintf(insn, "readSIB()"); 1166 if (insn->consumedSIB) 1169 insn->consumedSIB = true; 1171 switch (insn->addressSize) { 1173 dbgprintf(insn, "SIB-based addressing doesn't work in 16-bit mode"); 1176 insn->sibIndexBase = SIB_INDEX_EAX; 1180 insn->sibIndexBase = SIB_INDEX_RAX; 1185 if (consumeByte(insn, &insn->sib)) 1185 if (consumeByte(insn, &insn->sib)) 1188 index = indexFromSIB(insn->sib) | (xFromREX(insn->rexPrefix) << 3); 1188 index = indexFromSIB(insn->sib) | (xFromREX(insn->rexPrefix) << 3); 1191 insn->sibIndex = SIB_INDEX_NONE; 1193 insn->sibIndex = (SIBIndex)(insn->sibIndexBase + index); 1193 insn->sibIndex = (SIBIndex)(insn->sibIndexBase + index); 1196 insn->sibScale = 1 << scaleFromSIB(insn->sib); 1196 insn->sibScale = 1 << scaleFromSIB(insn->sib); 1198 base = baseFromSIB(insn->sib) | (bFromREX(insn->rexPrefix) << 3); 1198 base = baseFromSIB(insn->sib) | (bFromREX(insn->rexPrefix) << 3); 1203 switch (modFromModRM(insn->modRM)) { 1205 insn->eaDisplacement = EA_DISP_32; 1206 insn->sibBase = SIB_BASE_NONE; 1209 insn->eaDisplacement = EA_DISP_8; 1210 insn->sibBase = (SIBBase)(sibBaseBase + base); 1213 insn->eaDisplacement = EA_DISP_32; 1214 insn->sibBase = (SIBBase)(sibBaseBase + base); 1222 insn->sibBase = (SIBBase)(sibBaseBase + base);