[CORE] Fixed VEX/NonVEX performance penalty inside Convert evalute impl (#15355)

This commit is contained in:
Gorokhov Dmitriy 2023-01-27 12:54:48 +04:00 committed by GitHub
parent 3c8ec29423
commit 5770daf303
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 2 additions and 2 deletions

View File

@ -28,7 +28,7 @@ void jit_convert_vec<uint8_t, float16>(jit::Generator& gen, const Xbyak::RegExp&
gen.vcvtdq2ps(fvec, i32vec);
gen.vcvtps2ph(f16vec, fvec, 0);
gen.vzeroupper();
gen.movdqu(gen.xword[dst], f16vec);
gen.vmovdqu(gen.xword[dst], f16vec);
}
template <>
@ -36,7 +36,7 @@ void jit_convert_vec<float16, float>(jit::Generator& gen, const Xbyak::RegExp& s
auto f16vec = gen.xmm3;
auto f32vec = gen.ymm4;
gen.movdqu(f16vec, gen.xword[src]);
gen.vmovdqu(f16vec, gen.xword[src]);
gen.vcvtph2ps(f32vec, f16vec);
gen.vmovups(gen.yword[dst], f32vec);
}