return load ? X86::VMOVSSZrm : X86::VMOVSSZmr;
if (RC->getSize() == 8 && X86::FR64XRegClass.hasSubClassEq(RC))
return load ? X86::VMOVSDZrm : X86::VMOVSDZmr;
- if (X86::VR512RegClass.hasSubClassEq(RC))
- return load ? X86::VMOVUPSZrm : X86::VMOVUPSZmr;
}
bool HasAVX = STI.hasAVX();
return load ? X86::VMOVUPSZ256rm : X86::VMOVUPSZ256mr;
case 64:
assert(X86::VR512RegClass.hasSubClassEq(RC) && "Unknown 64-byte regclass");
- assert(STI.hasVLX() && "Using 512-bit register requires AVX512");
+ assert(STI.hasAVX512() && "Using 512-bit register requires AVX512");
if (isStackAligned)
return load ? X86::VMOVAPSZrm : X86::VMOVAPSZmr;
else
; test calling conventions - prolog and epilog
; WIN64-LABEL: test_prolog_epilog
-; WIN64: vmovups %zmm21, {{.*(%rbp).*}} # 64-byte Spill
-; WIN64: vmovups %zmm6, {{.*(%rbp).*}} # 64-byte Spill
+; WIN64: vmovaps %zmm21, {{.*(%rbp).*}} # 64-byte Spill
+; WIN64: vmovaps %zmm6, {{.*(%rbp).*}} # 64-byte Spill
; WIN64: call
-; WIN64: vmovups {{.*(%rbp).*}}, %zmm6 # 64-byte Reload
-; WIN64: vmovups {{.*(%rbp).*}}, %zmm21 # 64-byte Reload
+; WIN64: vmovaps {{.*(%rbp).*}}, %zmm6 # 64-byte Reload
+; WIN64: vmovaps {{.*(%rbp).*}}, %zmm21 # 64-byte Reload
; X64-LABEL: test_prolog_epilog
; X64: kmovq %k7, {{.*}}(%rsp) ## 8-byte Spill