Revision 06057e6f
b/target-sparc/op_helper.c | ||
---|---|---|
234 | 234 |
uint64_t tmp; |
235 | 235 |
|
236 | 236 |
tmp = (*((uint64_t *)&DT0)) << ((env->gsr & 7) * 8); |
237 |
tmp |= (*((uint64_t *)&DT1)) >> (64 - (env->gsr & 7) * 8); |
|
237 |
/* on many architectures a shift of 64 does nothing */ |
|
238 |
if ((env->gsr & 7) != 0) { |
|
239 |
tmp |= (*((uint64_t *)&DT1)) >> (64 - (env->gsr & 7) * 8); |
|
240 |
} |
|
238 | 241 |
*((uint64_t *)&DT0) = tmp; |
239 | 242 |
} |
240 | 243 |
|
Also available in: Unified diff