Lines Matching refs:instword
1112 static int emulate_string_inst(struct pt_regs *regs, u32 instword) in emulate_string_inst() argument
1114 u8 rT = (instword >> 21) & 0x1f; in emulate_string_inst()
1115 u8 rA = (instword >> 16) & 0x1f; in emulate_string_inst()
1116 u8 NB_RB = (instword >> 11) & 0x1f; in emulate_string_inst()
1122 if ((instword & PPC_INST_STRING_MASK) == PPC_INST_LSWX) in emulate_string_inst()
1128 switch (instword & PPC_INST_STRING_MASK) { in emulate_string_inst()
1151 switch ((instword & PPC_INST_STRING_MASK)) { in emulate_string_inst()
1184 static int emulate_popcntb_inst(struct pt_regs *regs, u32 instword) in emulate_popcntb_inst() argument
1189 ra = (instword >> 16) & 0x1f; in emulate_popcntb_inst()
1190 rs = (instword >> 21) & 0x1f; in emulate_popcntb_inst()
1201 static int emulate_isel(struct pt_regs *regs, u32 instword) in emulate_isel() argument
1203 u8 rT = (instword >> 21) & 0x1f; in emulate_isel()
1204 u8 rA = (instword >> 16) & 0x1f; in emulate_isel()
1205 u8 rB = (instword >> 11) & 0x1f; in emulate_isel()
1206 u8 BC = (instword >> 6) & 0x1f; in emulate_isel()
1242 u32 instword; in emulate_instruction() local
1249 if (get_user(instword, (u32 __user *)(regs->nip))) in emulate_instruction()
1253 if ((instword & PPC_INST_MFSPR_PVR_MASK) == PPC_INST_MFSPR_PVR) { in emulate_instruction()
1255 rd = (instword >> 21) & 0x1f; in emulate_instruction()
1261 if ((instword & PPC_INST_DCBA_MASK) == PPC_INST_DCBA) { in emulate_instruction()
1267 if ((instword & PPC_INST_MCRXR_MASK) == PPC_INST_MCRXR) { in emulate_instruction()
1268 int shift = (instword >> 21) & 0x1c; in emulate_instruction()
1278 if ((instword & PPC_INST_STRING_GEN_MASK) == PPC_INST_STRING) { in emulate_instruction()
1283 return emulate_string_inst(regs, instword); in emulate_instruction()
1287 if ((instword & PPC_INST_POPCNTB_MASK) == PPC_INST_POPCNTB) { in emulate_instruction()
1289 return emulate_popcntb_inst(regs, instword); in emulate_instruction()
1293 if ((instword & PPC_INST_ISEL_MASK) == PPC_INST_ISEL) { in emulate_instruction()
1295 return emulate_isel(regs, instword); in emulate_instruction()
1299 if ((instword & PPC_INST_SYNC_MASK) == PPC_INST_SYNC) { in emulate_instruction()
1307 if ((((instword & PPC_INST_MFSPR_DSCR_USER_MASK) == in emulate_instruction()
1309 ((instword & PPC_INST_MFSPR_DSCR_MASK) == in emulate_instruction()
1313 rd = (instword >> 21) & 0x1f; in emulate_instruction()
1318 if ((((instword & PPC_INST_MTSPR_DSCR_USER_MASK) == in emulate_instruction()
1320 ((instword & PPC_INST_MTSPR_DSCR_MASK) == in emulate_instruction()
1324 rd = (instword >> 21) & 0x1f; in emulate_instruction()
1635 u32 instword, rd; in facility_unavailable_exception() local
1679 if (get_user(instword, (u32 __user *)(regs->nip))) { in facility_unavailable_exception()
1685 if ((instword & PPC_INST_MTSPR_DSCR_USER_MASK) in facility_unavailable_exception()
1687 rd = (instword >> 21) & 0x1f; in facility_unavailable_exception()
1695 if ((instword & PPC_INST_MFSPR_DSCR_USER_MASK) in facility_unavailable_exception()