Lines Matching refs:ra

82                                    int wordsize, uintptr_t ra)
85 tcg_s390_program_interrupt(env, PGM_SPECIFICATION, ra);
91 int wordsize, uintptr_t ra)
95 return cpu_ldub_data_ra(env, addr, ra);
97 return cpu_lduw_data_ra(env, addr, ra);
106 uintptr_t ra)
110 cpu_stb_data_ra(env, addr, value, ra);
113 cpu_stw_data_ra(env, addr, value, ra);
147 void **phost, uintptr_t ra)
150 nonfault, phost, ra);
169 ? BP_MEM_WRITE : BP_MEM_READ), ra);
179 int mmu_idx, uintptr_t ra)
195 &access->haddr1, ra);
205 nonfault, &access->haddr2, ra);
216 uintptr_t ra)
219 access_type, mmu_idx, ra);
226 uintptr_t ra)
233 cpu_stb_mmu(env, vaddr + i, byte, oi, ra);
239 uint8_t byte, uintptr_t ra)
241 set_helper_retaddr(ra);
243 desta->mmu_idx, ra);
246 desta->size2, desta->mmu_idx, ra);
252 int offset, uintptr_t ra)
267 return cpu_ldb_mmu(env, vaddr + offset, oi, ra);
272 int offset, uint8_t byte, uintptr_t ra)
287 cpu_stb_mmu(env, vaddr + offset, byte, oi, ra);
296 S390Access *srca, uintptr_t ra)
330 uint8_t byte = access_get_byte(env, srca, i, ra);
331 access_set_byte(env, desta, i, byte, ra);
353 uint64_t src, uintptr_t ra)
366 access_prepare(&srca1, env, src, l, MMU_DATA_LOAD, mmu_idx, ra);
367 access_prepare(&srca2, env, dest, l, MMU_DATA_LOAD, mmu_idx, ra);
368 access_prepare(&desta, env, dest, l, MMU_DATA_STORE, mmu_idx, ra);
369 set_helper_retaddr(ra);
372 const uint8_t x = access_get_byte(env, &srca1, i, ra) &
373 access_get_byte(env, &srca2, i, ra);
376 access_set_byte(env, &desta, i, x, ra);
391 uint64_t src, uintptr_t ra)
404 access_prepare(&srca1, env, src, l, MMU_DATA_LOAD, mmu_idx, ra);
405 access_prepare(&srca2, env, dest, l, MMU_DATA_LOAD, mmu_idx, ra);
406 access_prepare(&desta, env, dest, l, MMU_DATA_STORE, mmu_idx, ra);
410 access_memset(env, &desta, 0, ra);
414 set_helper_retaddr(ra);
416 const uint8_t x = access_get_byte(env, &srca1, i, ra) ^
417 access_get_byte(env, &srca2, i, ra);
420 access_set_byte(env, &desta, i, x, ra);
434 uint64_t src, uintptr_t ra)
447 access_prepare(&srca1, env, src, l, MMU_DATA_LOAD, mmu_idx, ra);
448 access_prepare(&srca2, env, dest, l, MMU_DATA_LOAD, mmu_idx, ra);
449 access_prepare(&desta, env, dest, l, MMU_DATA_STORE, mmu_idx, ra);
450 set_helper_retaddr(ra);
453 const uint8_t x = access_get_byte(env, &srca1, i, ra) |
454 access_get_byte(env, &srca2, i, ra);
457 access_set_byte(env, &desta, i, x, ra);
472 uint64_t src, uintptr_t ra)
484 access_prepare(&srca, env, src, l, MMU_DATA_LOAD, mmu_idx, ra);
485 access_prepare(&desta, env, dest, l, MMU_DATA_STORE, mmu_idx, ra);
493 access_memset(env, &desta, access_get_byte(env, &srca, 0, ra), ra);
495 access_memmove(env, &desta, &srca, ra);
497 set_helper_retaddr(ra);
499 uint8_t byte = access_get_byte(env, &srca, i, ra);
501 access_set_byte(env, &desta, i, byte, ra);
518 const uint64_t ra = GETPC();
526 access_prepare(&srca, env, src, l, MMU_DATA_LOAD, mmu_idx, ra);
527 access_prepare(&desta, env, dest, l, MMU_DATA_STORE, mmu_idx, ra);
529 set_helper_retaddr(ra);
531 uint8_t byte = access_get_byte(env, &srca, i, ra);
532 access_set_byte(env, &desta, i, byte, ra);
542 uintptr_t ra = GETPC();
549 access_prepare(&srca, env, src, l, MMU_DATA_LOAD, mmu_idx, ra);
550 access_prepare(&desta, env, dest, l, MMU_DATA_STORE, mmu_idx, ra);
552 set_helper_retaddr(ra);
554 const uint8_t x = access_get_byte(env, &srca, l - i - 1, ra);
555 access_set_byte(env, &desta, i, x, ra);
565 uintptr_t ra = GETPC();
571 access_prepare(&srca1, env, src, l, MMU_DATA_LOAD, mmu_idx, ra);
572 access_prepare(&srca2, env, dest, l, MMU_DATA_LOAD, mmu_idx, ra);
573 access_prepare(&desta, env, dest, l, MMU_DATA_STORE, mmu_idx, ra);
575 set_helper_retaddr(ra);
577 const uint8_t x = (access_get_byte(env, &srca1, i, ra) & 0x0f) |
578 (access_get_byte(env, &srca2, i, ra) & 0xf0);
580 access_set_byte(env, &desta, i, x, ra);
592 uintptr_t ra = GETPC();
597 access_prepare(&srca, env, src, len_src, MMU_DATA_LOAD, mmu_idx, ra);
598 access_prepare(&desta, env, dest, len_dest, MMU_DATA_STORE, mmu_idx, ra);
601 byte_dest = cpu_ldub_data_ra(env, dest + len_dest - 1, ra);
603 set_helper_retaddr(ra);
604 byte_src = access_get_byte(env, &srca, len_src - 1, ra);
606 access_set_byte(env, &desta, len_dest - 1, byte_dest, ra);
612 byte_src = access_get_byte(env, &srca, j, ra);
617 access_set_byte(env, &desta, i, byte_dest, ra);
627 uintptr_t ra = GETPC();
633 access_prepare(&srca1, env, src, l, MMU_DATA_LOAD, mmu_idx, ra);
634 access_prepare(&srca2, env, dest, l, MMU_DATA_LOAD, mmu_idx, ra);
635 access_prepare(&desta, env, dest, l, MMU_DATA_STORE, mmu_idx, ra);
637 set_helper_retaddr(ra);
639 const uint8_t x = (access_get_byte(env, &srca1, i, ra) & 0xf0) |
640 (access_get_byte(env, &srca2, i, ra) & 0x0f);
642 access_set_byte(env, &desta, i, x, ra);
649 uint64_t s2, uintptr_t ra)
658 uint8_t x = cpu_ldub_data_ra(env, s1 + i, ra);
659 uint8_t y = cpu_ldub_data_ra(env, s2 + i, ra);
683 uintptr_t ra = GETPC();
691 probe_read(env, addr, 1, s390x_env_mmu_index(env, false), ra);
696 uint8_t d = cpu_ldub_data_ra(env, addr, ra);
800 uintptr_t ra = GETPC();
807 tcg_s390_program_interrupt(env, PGM_SPECIFICATION, ra);
821 v = cpu_ldub_data_ra(env, str + len, ra);
837 uintptr_t ra = GETPC();
844 tcg_s390_program_interrupt(env, PGM_SPECIFICATION, ra);
861 v = cpu_lduw_data_ra(env, str + len, ra);
878 uintptr_t ra = GETPC();
888 uint8_t v1 = cpu_ldub_data_ra(env, s1 + len, ra);
889 uint8_t v2 = cpu_ldub_data_ra(env, s2 + len, ra);
919 uintptr_t ra = GETPC();
934 MMU_DATA_LOAD, mmu_idx, ra);
942 MMU_DATA_STORE, mmu_idx, ra);
949 access_memmove(env, &desta, &srca, ra);
962 tcg_s390_program_interrupt(env, exc, ra);
974 uintptr_t ra = GETPC();
978 tcg_s390_program_interrupt(env, PGM_SPECIFICATION, ra);
987 access_prepare(&srca, env, s, len, MMU_DATA_LOAD, mmu_idx, ra);
988 access_prepare(&desta, env, d, len, MMU_DATA_STORE, mmu_idx, ra);
990 set_helper_retaddr(ra);
992 const uint8_t v = access_get_byte(env, &srca, i, ra);
994 access_set_byte(env, &desta, i, v, ra);
1010 uintptr_t ra = GETPC();
1014 tcg_s390_program_interrupt(env, PGM_SPECIFICATION, ra);
1018 env->aregs[i] = cpu_ldl_data_ra(env, a2, ra);
1030 uintptr_t ra = GETPC();
1034 tcg_s390_program_interrupt(env, PGM_SPECIFICATION, ra);
1038 cpu_stl_data_ra(env, a2, env->aregs[i], ra);
1051 uint16_t pad, int wordsize, uintptr_t ra)
1079 access_prepare(&srca, env, *src, len, MMU_DATA_LOAD, mmu_idx, ra);
1080 access_prepare(&desta, env, *dest, len, MMU_DATA_STORE, mmu_idx, ra);
1081 access_memmove(env, &desta, &srca, ra);
1087 access_prepare(&desta, env, *dest, len, MMU_DATA_STORE, mmu_idx, ra);
1088 access_memset(env, &desta, pad, ra);
1091 access_prepare(&desta, env, *dest, len, MMU_DATA_STORE, mmu_idx, ra);
1092 set_helper_retaddr(ra);
1097 access_set_byte(env, &desta, i, pad, ra);
1099 access_set_byte(env, &desta, i, pad >> 8, ra);
1113 uintptr_t ra = GETPC();
1150 MMU_DATA_STORE, mmu_idx, ra);
1151 access_memset(env, &desta, pad, ra);
1156 MMU_DATA_LOAD, mmu_idx, ra);
1158 MMU_DATA_STORE, mmu_idx, ra);
1159 access_memmove(env, &desta, &srca, ra);
1177 cpu_loop_exit_restore(cs, ra);
1187 uintptr_t ra = GETPC();
1195 cc = do_mvcl(env, &dest, &destlen, &src, &srclen, pad, 1, ra);
1209 uintptr_t ra = GETPC();
1217 cc = do_mvcl(env, &dest, &destlen, &src, &srclen, pad, 2, ra);
1232 int wordsize, uintptr_t ra)
1237 check_alignment(env, *src1len | *src3len, wordsize, ra);
1255 v1 = cpu_ldusize_data_ra(env, *src1, wordsize, ra);
1258 v3 = cpu_ldusize_data_ra(env, *src3, wordsize, ra);
1283 uintptr_t ra = GETPC();
1291 cc = do_clcl(env, &src1, &src1len, &src3, &src3len, pad, -1, 1, ra);
1305 uintptr_t ra = GETPC();
1313 cc = do_clcl(env, &src1, &src1len, &src3, &src3len, pad, 0x2000, 1, ra);
1327 uintptr_t ra = GETPC();
1335 cc = do_clcl(env, &src1, &src1len, &src3, &src3len, pad, 0x1000, 2, ra);
1349 uintptr_t ra = GETPC();
1359 cksm += (uint32_t)cpu_ldl_data_ra(env, src, ra);
1364 cksm += cpu_ldub_data_ra(env, src, ra) << 24;
1368 cksm += cpu_lduw_data_ra(env, src, ra) << 16;
1372 cksm += cpu_lduw_data_ra(env, src, ra) << 16;
1373 cksm += cpu_ldub_data_ra(env, src + 2, ra) << 8;
1393 uintptr_t ra = GETPC();
1402 b = cpu_ldub_data_ra(env, src, ra);
1403 cpu_stb_data_ra(env, dest, (b << 4) | (b >> 4), ra);
1412 b = cpu_ldub_data_ra(env, src, ra) & 0x0f;
1417 b |= cpu_ldub_data_ra(env, src, ra) << 4;
1424 cpu_stb_data_ra(env, dest, b, ra);
1429 uint32_t srclen, int ssize, uintptr_t ra)
1446 b = cpu_ldub_data_ra(env, src, ra) & 0x0f;
1452 b |= cpu_ldub_data_ra(env, src, ra) << 4;
1457 cpu_stb_data_ra(env, dest, b, ra);
1478 uintptr_t ra = GETPC();
1488 b = cpu_ldub_data_ra(env, src, ra);
1489 cpu_stb_data_ra(env, dest, (b << 4) | (b >> 4), ra);
1499 cur_byte = cpu_ldub_data_ra(env, src, ra);
1518 cpu_stb_data_ra(env, dest, cur_byte, ra);
1524 uintptr_t ra)
1537 b = cpu_ldub_data_ra(env, src, ra);
1561 b = cpu_ldub_data_ra(env, src, ra);
1566 cpu_stsize_data_ra(env, dest, 0x30 + (b & 0xf), dsize, ra);
1587 uintptr_t ra = GETPC();
1592 uint8_t b = cpu_ldub_data_ra(env, dest + i, ra);
1609 uint64_t trans, uintptr_t ra)
1614 uint8_t byte = cpu_ldub_data_ra(env, array + i, ra);
1615 uint8_t new_byte = cpu_ldub_data_ra(env, trans + byte, ra);
1616 cpu_stb_data_ra(env, array + i, new_byte, ra);
1631 uintptr_t ra = GETPC();
1652 byte = cpu_ldub_data_ra(env, array + i, ra);
1659 new_byte = cpu_ldub_data_ra(env, trans + byte, ra);
1660 cpu_stb_data_ra(env, array + i, new_byte, ra);
1669 int inc, uintptr_t ra)
1674 uint8_t byte = cpu_ldub_data_ra(env, array + i * inc, ra);
1675 uint8_t sbyte = cpu_ldub_data_ra(env, trans + byte, ra);
1689 uintptr_t ra)
1691 return do_helper_trt(env, len, array, trans, 1, ra);
1702 uintptr_t ra)
1704 return do_helper_trt(env, len, array, trans, -1, ra);
1717 uintptr_t ra = GETPC();
1736 check_alignment(env, len, ssize, ra);
1741 uint16_t sval = cpu_ldusize_data_ra(env, src, ssize, ra);
1743 uint16_t dval = cpu_ldusize_data_ra(env, tble, dsize, ra);
1748 cpu_stsize_data_ra(env, dst, dval, dsize, ra);
1776 uintptr_t ra = GETPC();
1799 probe_write(env, a2, 1 << sc, mem_idx, ra);
1815 cpu_loop_exit_atomic(env_cpu(env), ra);
1823 svh = cpu_ldq_mmu(env, pl + 16, oi8, ra);
1824 svl = cpu_ldq_mmu(env, pl + 24, oi8, ra);
1829 uint32_t nv = cpu_ldl_mmu(env, pl, oi4, ra);
1834 ov = cpu_atomic_cmpxchgl_be_mmu(env, a1, cv, nv, oi4, ra);
1836 ov = cpu_ldl_mmu(env, a1, oi4, ra);
1837 cpu_stl_mmu(env, a1, (ov == cv ? nv : ov), oi4, ra);
1846 uint64_t nv = cpu_ldq_mmu(env, pl, oi8, ra);
1852 ov = cpu_atomic_cmpxchgq_be_mmu(env, a1, cv, nv, oi8, ra);
1858 ov = cpu_ldq_mmu(env, a1, oi8, ra);
1859 cpu_stq_mmu(env, a1, (ov == cv ? nv : ov), oi8, ra);
1868 Int128 nv = cpu_ld16_mmu(env, pl, oi16, ra);
1873 ov = cpu_ld16_mmu(env, a1, oi16, ra);
1878 cpu_st16_mmu(env, a1, nv, oi16, ra);
1880 ov = cpu_atomic_cmpxchgo_be_mmu(env, a1, cv, nv, oi16, ra);
1902 cpu_stb_mmu(env, a2, svh >> 56, oi1, ra);
1905 cpu_stw_mmu(env, a2, svh >> 48, oi2, ra);
1908 cpu_stl_mmu(env, a2, svh >> 32, oi4, ra);
1911 cpu_stq_mmu(env, a2, svh, oi8, ra);
1914 cpu_st16_mmu(env, a2, int128_make128(svl, svh), oi16, ra);
1924 tcg_s390_program_interrupt(env, PGM_SPECIFICATION, ra);
1941 uintptr_t ra = GETPC();
1947 tcg_s390_program_interrupt(env, PGM_SPECIFICATION, ra);
1951 uint64_t val = cpu_ldq_data_ra(env, src, ra);
1974 uintptr_t ra = GETPC();
1980 tcg_s390_program_interrupt(env, PGM_SPECIFICATION, ra);
1984 uint32_t val = cpu_ldl_data_ra(env, src, ra);
2006 uintptr_t ra = GETPC();
2011 tcg_s390_program_interrupt(env, PGM_SPECIFICATION, ra);
2015 cpu_stq_data_ra(env, dest, env->cregs[i], ra);
2026 uintptr_t ra = GETPC();
2031 tcg_s390_program_interrupt(env, PGM_SPECIFICATION, ra);
2035 cpu_stl_data_ra(env, dest, env->cregs[i], ra);
2046 uintptr_t ra = GETPC();
2052 cpu_stq_mmuidx_ra(env, real_addr + i, 0, MMU_REAL_IDX, ra);
2214 uintptr_t ra = GETPC();
2222 s390_program_interrupt(env, PGM_SPECIAL_OP, ra);
2226 s390_program_interrupt(env, PGM_PRIVILEGED, ra);
2238 access_prepare(&srca, env, a2, l, MMU_DATA_LOAD, MMU_PRIMARY_IDX, ra);
2239 access_prepare(&desta, env, a1, l, MMU_DATA_STORE, MMU_SECONDARY_IDX, ra);
2240 access_memmove(env, &desta, &srca, ra);
2249 uintptr_t ra = GETPC();
2257 s390_program_interrupt(env, PGM_SPECIAL_OP, ra);
2261 s390_program_interrupt(env, PGM_PRIVILEGED, ra);
2272 access_prepare(&srca, env, a2, l, MMU_DATA_LOAD, MMU_SECONDARY_IDX, ra);
2273 access_prepare(&desta, env, a1, l, MMU_DATA_STORE, MMU_PRIMARY_IDX, ra);
2274 access_memmove(env, &desta, &srca, ra);
2281 const uintptr_t ra = GETPC();
2286 tcg_s390_program_interrupt(env, PGM_SPECIFICATION, ra);
2311 entry = cpu_ldq_mmuidx_ra(env, raddr, MMU_REAL_IDX, ra);
2315 cpu_stq_mmuidx_ra(env, raddr, entry, MMU_REAL_IDX, ra);
2333 const uintptr_t ra = GETPC();
2342 pte = cpu_ldq_mmuidx_ra(env, pte_addr, MMU_REAL_IDX, ra);
2344 cpu_stq_mmuidx_ra(env, pte_addr, pte, MMU_REAL_IDX, ra);
2495 const uintptr_t ra = GETPC();
2505 tcg_s390_program_interrupt(env, PGM_SPECIAL_OP, ra);
2536 tcg_s390_program_interrupt(env, PGM_SPECIAL_OP, ra);
2540 tcg_s390_program_interrupt(env, PGM_SPECIAL_OP, ra);
2543 tcg_s390_program_interrupt(env, PGM_PRIVILEGED, ra);
2557 tcg_s390_program_interrupt(env, PGM_ADDRESSING, ra);
2565 mmu_idx_from_as(src_as), ra);
2567 mmu_idx_from_as(dest_as), ra);
2569 access_memmove(env, &desta, &srca, ra);
2579 uint64_t ilen, bool enh_check, uintptr_t ra,
2586 uint64_t ilen, uintptr_t ra, uint32_t c,
2590 bool enh_check, uintptr_t ra,
2599 s0 = cpu_ldub_data_ra(env, addr, ra);
2613 s1 = cpu_ldub_data_ra(env, addr + 1, ra);
2625 s1 = cpu_ldub_data_ra(env, addr + 1, ra);
2626 s2 = cpu_ldub_data_ra(env, addr + 2, ra);
2646 s1 = cpu_ldub_data_ra(env, addr + 1, ra);
2647 s2 = cpu_ldub_data_ra(env, addr + 2, ra);
2648 s3 = cpu_ldub_data_ra(env, addr + 3, ra);
2673 bool enh_check, uintptr_t ra,
2682 s0 = cpu_lduw_data_ra(env, addr, ra);
2693 s1 = cpu_lduw_data_ra(env, addr + 2, ra);
2709 bool enh_check, uintptr_t ra,
2717 c = cpu_ldl_data_ra(env, addr, ra);
2729 uintptr_t ra, uint32_t c, uint32_t *olen)
2762 cpu_stb_data_ra(env, addr + i, d[i], ra);
2770 uintptr_t ra, uint32_t c, uint32_t *olen)
2779 cpu_stw_data_ra(env, addr, c, ra);
2789 cpu_stw_data_ra(env, addr + 0, d0, ra);
2790 cpu_stw_data_ra(env, addr + 2, d1, ra);
2798 uintptr_t ra, uint32_t c, uint32_t *olen)
2803 cpu_stl_data_ra(env, addr, c, ra);
2809 uint32_t r2, uint32_t m3, uintptr_t ra,
2825 cc = decode(env, src, slen, enh_check, ra, &c, &ilen);
2829 cc = encode(env, dst, dlen, ra, c, &olen);
2886 uintptr_t ra)
2895 probe_write(env, addr, curlen, mmu_idx, ra);