target-i386: SSE4.2: fix pcmpXstrX instructions in "Ranges" mode
Fix the order of the of the comparisons to match the "Intel 64 and IA-32 Architectures Software Developer's Manual". Reviewed-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
This commit is contained in:
parent
2b8d7e9d72
commit
649ad05ed4
@ -2019,8 +2019,8 @@ static inline unsigned pcmpxstrx(CPUX86State *env, Reg *d, Reg *s,
|
||||
res <<= 1;
|
||||
v = pcmp_val(s, ctrl, j);
|
||||
for (i = ((validd - 1) | 1); i >= 0; i -= 2) {
|
||||
res |= (pcmp_val(d, ctrl, i - 0) <= v &&
|
||||
pcmp_val(d, ctrl, i - 1) >= v);
|
||||
res |= (pcmp_val(d, ctrl, i - 0) >= v &&
|
||||
pcmp_val(d, ctrl, i - 1) <= v);
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
Loading…
Reference in New Issue
Block a user