Revision be82ee2a
b/target-s390x/translate.c | ||
---|---|---|
2056 | 2056 |
even for very long ones... */ |
2057 | 2057 |
tmp = get_address(s, 0, b2, d2); |
2058 | 2058 |
tmp3 = tcg_const_i64(stm_len); |
2059 |
tmp4 = tcg_const_i64(32);
|
|
2059 |
tmp4 = tcg_const_i64(op == 0x26 ? 32 : 4);
|
|
2060 | 2060 |
for (i = r1;; i = (i + 1) % 16) { |
2061 | 2061 |
switch (op) { |
2062 | 2062 |
case 0x4: |
... | ... | |
2070 | 2070 |
#else |
2071 | 2071 |
tmp2 = tcg_temp_new_i64(); |
2072 | 2072 |
tcg_gen_qemu_ld32u(tmp2, tmp, get_mem_index(s)); |
2073 |
tcg_gen_shl_i64(tmp2, tmp2, 4); |
|
2073 |
tcg_gen_shl_i64(tmp2, tmp2, tmp4);
|
|
2074 | 2074 |
tcg_gen_ext32u_i64(regs[i], regs[i]); |
2075 | 2075 |
tcg_gen_or_i64(regs[i], regs[i], tmp2); |
2076 | 2076 |
#endif |
Also available in: Unified diff