Skip to content
Permalink
Browse files

ARM64 vmmul experiment: Disable if S and T matrices overlap.

If this fixes anything in #12082, we have a regalloc bug I guess...
  • Loading branch information...
hrydgard committed Jun 4, 2019
1 parent 3769e8b commit c4d26dcb103a38602fc6d3732213b1efeea88e5b
Showing with 4 additions and 3 deletions.
  1. +4 −3 Core/MIPS/ARM64/Arm64CompVFPU.cpp
@@ -1227,10 +1227,11 @@ namespace MIPSComp {
GetMatrixRegs(tregs, sz, _VT);
GetMatrixRegs(dregs, sz, _VD);

MatrixOverlapType soverlap = GetMatrixOverlap(_VS, _VD, sz);
MatrixOverlapType toverlap = GetMatrixOverlap(_VT, _VD, sz);
MatrixOverlapType sdoverlap = GetMatrixOverlap(_VS, _VD, sz);
MatrixOverlapType tdoverlap = GetMatrixOverlap(_VT, _VD, sz);
MatrixOverlapType stoverlap = GetMatrixOverlap(_VS, _VT, sz);

if (soverlap || toverlap) {
if (sdoverlap != OVERLAP_NONE || tdoverlap != OVERLAP_NONE || stoverlap != OVERLAP_NONE) {
DISABLE;
} else {
for (int a = 0; a < n; a++) {

1 comment on commit c4d26dc

@unknownbrackets

This comment has been minimized.

Copy link
Collaborator

commented on c4d26dc Jun 5, 2019

Looks like maybe we can revert this.

-[Unknown]

Please sign in to comment.
You can’t perform that action at this time.