< prev index next >
src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.lir.amd64/src/org/graalvm/compiler/lir/amd64/AMD64ArrayIndexOfOp.java
Print this page
rev 56282 : [mq]: graal
*** 562,572 ****
}
private void emitArrayLoad(AMD64MacroAssembler asm, AVXKind.AVXSize vectorSize, Register vecDst, Register arrayPtr, Register index, int offset, boolean alignedLoad) {
AMD64Address src = new AMD64Address(arrayPtr, index, arrayIndexScale, offset);
if (asm.supports(CPUFeature.AVX)) {
! VexMoveOp loadOp = alignedLoad ? VexMoveOp.VMOVDQA : VexMoveOp.VMOVDQU;
loadOp.emit(asm, vectorSize, vecDst, src);
} else {
// SSE
asm.movdqu(vecDst, src);
}
--- 562,572 ----
}
private void emitArrayLoad(AMD64MacroAssembler asm, AVXKind.AVXSize vectorSize, Register vecDst, Register arrayPtr, Register index, int offset, boolean alignedLoad) {
AMD64Address src = new AMD64Address(arrayPtr, index, arrayIndexScale, offset);
if (asm.supports(CPUFeature.AVX)) {
! VexMoveOp loadOp = alignedLoad ? VexMoveOp.VMOVDQA32 : VexMoveOp.VMOVDQU32;
loadOp.emit(asm, vectorSize, vecDst, src);
} else {
// SSE
asm.movdqu(vecDst, src);
}
< prev index next >