Lines Matching refs:pParam

67  * @param   pParam              Pointer to parameter of instruction to process.
72 bool iomGetRegImmData(PDISCPUSTATE pCpu, PCDISOPPARAM pParam, PCPUMCTXCORE pRegFrame, uint64_t *pu64Data, unsigned *pcbSize)
75 if (pParam->fUse & (DISUSE_BASE | DISUSE_INDEX | DISUSE_SCALE | DISUSE_DISPLACEMENT8 | DISUSE_DISPLACEMENT16 | DISUSE_DISPLACEMENT32))
83 if (pParam->fUse & (DISUSE_REG_GEN64 | DISUSE_REG_GEN32 | DISUSE_REG_GEN16 | DISUSE_REG_GEN8))
85 if (pParam->fUse & DISUSE_REG_GEN32)
88 DISFetchReg32(pRegFrame, pParam->Base.idxGenReg, (uint32_t *)pu64Data);
92 if (pParam->fUse & DISUSE_REG_GEN16)
95 DISFetchReg16(pRegFrame, pParam->Base.idxGenReg, (uint16_t *)pu64Data);
99 if (pParam->fUse & DISUSE_REG_GEN8)
102 DISFetchReg8(pRegFrame, pParam->Base.idxGenReg, (uint8_t *)pu64Data);
106 Assert(pParam->fUse & DISUSE_REG_GEN64);
108 DISFetchReg64(pRegFrame, pParam->Base.idxGenReg, pu64Data);
113 if (pParam->fUse & (DISUSE_IMMEDIATE64 | DISUSE_IMMEDIATE64_SX8))
116 *pu64Data = pParam->uValue;
120 if (pParam->fUse & (DISUSE_IMMEDIATE32 | DISUSE_IMMEDIATE32_SX8))
123 *pu64Data = (uint32_t)pParam->uValue;
127 if (pParam->fUse & (DISUSE_IMMEDIATE16 | DISUSE_IMMEDIATE16_SX8))
130 *pu64Data = (uint16_t)pParam->uValue;
134 if (pParam->fUse & DISUSE_IMMEDIATE8)
137 *pu64Data = (uint8_t)pParam->uValue;
141 if (pParam->fUse & DISUSE_REG_SEG)
144 DISFetchRegSeg(pRegFrame, (DISSELREG)pParam->Base.idxSegReg, (RTSEL *)pu64Data);
162 * @param pParam Pointer to parameter of instruction to process.
166 bool iomSaveDataToReg(PDISCPUSTATE pCpu, PCDISOPPARAM pParam, PCPUMCTXCORE pRegFrame, uint64_t u64Data)
169 if (pParam->fUse & (DISUSE_BASE | DISUSE_INDEX | DISUSE_SCALE | DISUSE_DISPLACEMENT8 | DISUSE_DISPLACEMENT16 | DISUSE_DISPLACEMENT32 | DISUSE_DISPLACEMENT64 | DISUSE_IMMEDIATE8 | DISUSE_IMMEDIATE16 | DISUSE_IMMEDIATE32 | DISUSE_IMMEDIATE32_SX8 | DISUSE_IMMEDIATE16_SX8))
174 if (pParam->fUse & DISUSE_REG_GEN32)
176 DISWriteReg32(pRegFrame, pParam->Base.idxGenReg, (uint32_t)u64Data);
180 if (pParam->fUse & DISUSE_REG_GEN64)
182 DISWriteReg64(pRegFrame, pParam->Base.idxGenReg, u64Data);
186 if (pParam->fUse & DISUSE_REG_GEN16)
188 DISWriteReg16(pRegFrame, pParam->Base.idxGenReg, (uint16_t)u64Data);
192 if (pParam->fUse & DISUSE_REG_GEN8)
194 DISWriteReg8(pRegFrame, pParam->Base.idxGenReg, (uint8_t)u64Data);
198 if (pParam->fUse & DISUSE_REG_SEG)
200 DISWriteRegSeg(pRegFrame, (DISSELREG)pParam->Base.idxSegReg, (RTSEL)u64Data);