From 2b9b50379be172913d238212ee342dd3c8068371 Mon Sep 17 00:00:00 2001 From: Adam Nemet Date: Wed, 6 Aug 2014 07:13:12 +0000 Subject: [PATCH] [X86] Fixes commit r214890 to match the posted patch This was another fallout from my local rebase where something went wrong :( git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@214951 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/X86/X86InstrAVX512.td | 6 +++--- test/CodeGen/X86/avx512-intrinsics.ll | 2 +- test/MC/X86/avx512-encodings.s | 6 +++++- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/lib/Target/X86/X86InstrAVX512.td b/lib/Target/X86/X86InstrAVX512.td index 5284c3f6510..122f629c8ce 100644 --- a/lib/Target/X86/X86InstrAVX512.td +++ b/lib/Target/X86/X86InstrAVX512.td @@ -4473,12 +4473,12 @@ multiclass avx512_valign, EVEX_4V; - let Constraints = "$src0 = $dst", AddedComplexity=30 in + let Constraints = "$src0 = $dst" in def rrik : AVX512AIi8<0x03, MRMSrcReg, (outs RC:$dst), (ins RC:$src0, KRC:$mask, RC:$src1, RC:$src2, i8imm:$src3), !strconcat("valign"##Suffix, - " \t{$src3, $src2, $src1, $mask, $dst|" - "$dst, $mask, $src1, $src2, $src3}"), + " \t{$src3, $src2, $src1, $dst {${mask}}|" + "$dst {${mask}}, $src1, $src2, $src3}"), [(set RC:$dst, (IntVT (vselect KRC:$mask, (X86VAlign RC:$src2, RC:$src1, diff --git a/test/CodeGen/X86/avx512-intrinsics.ll b/test/CodeGen/X86/avx512-intrinsics.ll index eaaf915b0cb..48ec3c00229 100644 --- a/test/CodeGen/X86/avx512-intrinsics.ll +++ b/test/CodeGen/X86/avx512-intrinsics.ll @@ -621,7 +621,7 @@ define <8 x i64> @test_valign_q(<8 x i64> %a, <8 x i64> %b) { define <8 x i64> @test_mask_valign_q(<8 x i64> %a, <8 x i64> %b, <8 x i64> %src, i8 %mask) { ; CHECK-LABEL: test_mask_valign_q: -; CHECK: valignq $2, %zmm1, %zmm0, %k1, %zmm2 +; CHECK: valignq $2, %zmm1, %zmm0, %zmm2 {%k1} %res = call <8 x i64> @llvm.x86.avx512.mask.valign.q.512(<8 x i64> %a, <8 x i64> %b, i8 2, <8 x i64> %src, i8 %mask) ret <8 x i64> %res } diff --git a/test/MC/X86/avx512-encodings.s b/test/MC/X86/avx512-encodings.s index e96056d7973..a1a94fbaa54 100644 --- a/test/MC/X86/avx512-encodings.s +++ b/test/MC/X86/avx512-encodings.s @@ -3800,6 +3800,10 @@ vpermi2q 0x80(%rax,%rbx,2), %zmm2, %zmm26 {%k3} // CHECK: encoding: [0x62,0x32,0x4d,0xc2,0x7e,0x24,0xad,0x05,0x00,0x00,0x00] vpermt2d 5(,%r13,4), %zmm22, %zmm12 {%k2} {z} -// CHECK: valignq +// CHECK: valignq $2 // CHECK: encoding: [0x62,0xf3,0xfd,0x48,0x03,0x4c,0x24,0x04,0x02] valignq $2, 0x100(%rsp), %zmm0, %zmm1 + +// CHECK: valignq $3 +// CHECK: encoding: [0x62,0xf3,0xfd,0x49,0x03,0xcb,0x03] +valignq $3, %zmm3, %zmm0, %zmm1 {%k1} -- 2.34.1