emit_x64: Use movdqa instead of movaps in EmitPackedSubU8
While movaps and movdqa are behaviourly equivalent, using movaps may incur a domain crossing penalty on some microarchitectures. This is because movaps is an instruction in the floating-point domain while the following instructions are in the integer domain.
This commit is contained in:
parent
52e1445f43
commit
54d051977f
1 changed files with 1 additions and 1 deletions
|
@ -1314,7 +1314,7 @@ void EmitX64::EmitPackedSubU8(IR::Block& block, IR::Inst* inst) {
|
|||
code->movd(xmm_a, reg_a);
|
||||
code->movd(xmm_b, reg_b);
|
||||
if (ge_inst) {
|
||||
code->movaps(xmm_ge, xmm_a);
|
||||
code->movdqa(xmm_ge, xmm_a);
|
||||
code->pmaxub(xmm_ge, xmm_b);
|
||||
code->pcmpeqb(xmm_ge, xmm_a);
|
||||
code->movd(reg_ge, xmm_ge);
|
||||
|
|
Loading…
Reference in a new issue