movhlps/movlhps only take xmm registers.

Handle spilling of SSE registers.

git-svn-id: trunk@44272 -
This commit is contained in:
Jeppe Johansen 2020-03-06 17:19:51 +00:00
parent 6cac8cc77b
commit 135a88c888
2 changed files with 9 additions and 0 deletions

View File

@ -4777,6 +4777,8 @@ implementation
R_SUBQ,
R_SUBMMWHOLE:
result:=taicpu.op_ref_reg(A_VMOVQ,S_NO,tmpref,r);
R_SUBMMX:
result:=taicpu.op_ref_reg(A_VMOVDQU,S_NO,tmpref,r);
else
internalerror(200506043);
end
@ -4789,6 +4791,8 @@ implementation
R_SUBQ,
R_SUBMMWHOLE:
result:=taicpu.op_ref_reg(A_MOVQ,S_NO,tmpref,r);
R_SUBMMX:
result:=taicpu.op_ref_reg(A_MOVDQA,S_NO,tmpref,r);
else
internalerror(200506043);
end;

View File

@ -274,6 +274,11 @@ implementation
A_UNPCKLPD,
A_UNPCKLPS :
replaceoper:=-1;
{ movlhps/movhlps requires the second parameter to be XMM registers }
A_MOVHLPS,
A_MOVLHPS:
replaceoper:=-1;
else
;
end;