mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-07-02 21:11:25 +12:00
simd_builder: fixups
Fix resetting vmask in reduce() step. Fix AVX-512 loads in vec_load_unaligned(). Fix bzhi reg size in build_look().
This commit is contained in:
parent
5d91caebe9
commit
a9437d69ab
2 changed files with 21 additions and 9 deletions
|
@ -323,11 +323,20 @@ namespace asmjit
|
|||
// Build single last iteration (masked)
|
||||
this->test(reg_cnt, reg_cnt);
|
||||
this->jz(exit);
|
||||
this->bzhi(reg_cnt, x86::Mem(consts[~u128()], 0), reg_cnt);
|
||||
this->kmovq(x86::k7, reg_cnt);
|
||||
|
||||
if (esize == 1 && vsize == 64)
|
||||
{
|
||||
this->bzhi(reg_cnt.r64(), x86::Mem(consts[~u128()], 0), reg_cnt.r64());
|
||||
this->kmovq(x86::k7, reg_cnt.r64());
|
||||
}
|
||||
else
|
||||
{
|
||||
this->bzhi(reg_cnt.r32(), x86::Mem(consts[~u128()], 0), reg_cnt.r32());
|
||||
this->kmovd(x86::k7, reg_cnt.r32());
|
||||
}
|
||||
|
||||
vmask = 7;
|
||||
build();
|
||||
vmask = -1;
|
||||
|
||||
// Rollout reduction step
|
||||
this->bind(exit);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue