Revision 2b8d7e9d
b/target-i386/ops_sse.h | ||
---|---|---|
2116 | 2116 |
if ((ctrl >> 6) & 1) { |
2117 | 2117 |
if (ctrl & 1) { |
2118 | 2118 |
for (i = 0; i < 8; i++, res >>= 1) { |
2119 |
d->W(i) = (res & 1) ? ~0 : 0;
|
|
2119 |
env->xmm_regs[0].W(i) = (res & 1) ? ~0 : 0;
|
|
2120 | 2120 |
} |
2121 | 2121 |
} else { |
2122 | 2122 |
for (i = 0; i < 16; i++, res >>= 1) { |
2123 |
d->B(i) = (res & 1) ? ~0 : 0;
|
|
2123 |
env->xmm_regs[0].B(i) = (res & 1) ? ~0 : 0;
|
|
2124 | 2124 |
} |
2125 | 2125 |
} |
2126 | 2126 |
} else { |
2127 |
d->Q(1) = 0;
|
|
2128 |
d->Q(0) = res;
|
|
2127 |
env->xmm_regs[0].Q(1) = 0;
|
|
2128 |
env->xmm_regs[0].Q(0) = res;
|
|
2129 | 2129 |
} |
2130 | 2130 |
} |
2131 | 2131 |
|
... | ... | |
2154 | 2154 |
if ((ctrl >> 6) & 1) { |
2155 | 2155 |
if (ctrl & 1) { |
2156 | 2156 |
for (i = 0; i < 8; i++, res >>= 1) { |
2157 |
d->W(i) = (res & 1) ? ~0 : 0;
|
|
2157 |
env->xmm_regs[0].W(i) = (res & 1) ? ~0 : 0;
|
|
2158 | 2158 |
} |
2159 | 2159 |
} else { |
2160 | 2160 |
for (i = 0; i < 16; i++, res >>= 1) { |
2161 |
d->B(i) = (res & 1) ? ~0 : 0;
|
|
2161 |
env->xmm_regs[0].B(i) = (res & 1) ? ~0 : 0;
|
|
2162 | 2162 |
} |
2163 | 2163 |
} |
2164 | 2164 |
} else { |
2165 |
d->Q(1) = 0;
|
|
2166 |
d->Q(0) = res;
|
|
2165 |
env->xmm_regs[0].Q(1) = 0;
|
|
2166 |
env->xmm_regs[0].Q(0) = res;
|
|
2167 | 2167 |
} |
2168 | 2168 |
} |
2169 | 2169 |
|
Also available in: Unified diff