From e11eab53ee2bed488f8950998c079bdcf36363e2 Mon Sep 17 00:00:00 2001 From: Michael Zuckerman Date: Mon, 4 Sep 2017 14:15:34 +0000 Subject: [PATCH] Update test for testing avx512 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@312487 91177308-0d34-0410-b5e6-96231b3b80d8 --- .../InterleavedAccess/X86/interleavedLoad.ll | 52 +++++++++---------- 1 file changed, 26 insertions(+), 26 deletions(-) diff --git a/test/Transforms/InterleavedAccess/X86/interleavedLoad.ll b/test/Transforms/InterleavedAccess/X86/interleavedLoad.ll index 816c949c76f..4cf3fab9d68 100644 --- a/test/Transforms/InterleavedAccess/X86/interleavedLoad.ll +++ b/test/Transforms/InterleavedAccess/X86/interleavedLoad.ll @@ -1,16 +1,16 @@ ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py -; RUN: opt < %s -mtriple=x86_64-pc-linux -mattr=+avx2 -interleaved-access -S | FileCheck %s - +; RUN: opt < %s -mtriple=x86_64-pc-linux -mattr=+avx2 -interleaved-access -S | FileCheck %s --check-prefix=AVX2 +; RUN: opt < %s -mtriple=x86_64-pc-linux -mattr=+avx2 -interleaved-access -S | FileCheck %s --check-prefix=AVX2 --check-prefix=AVX512 define <32 x i8> @interleaved_load_vf32_i8_stride3(<96 x i8>* %ptr){ -; CHECK-LABEL: @interleaved_load_vf32_i8_stride3( -; CHECK-NEXT: [[WIDE_VEC:%.*]] = load <96 x i8>, <96 x i8>* [[PTR:%.*]] -; CHECK-NEXT: [[V1:%.*]] = shufflevector <96 x i8> [[WIDE_VEC]], <96 x i8> undef, <32 x i32> -; CHECK-NEXT: [[V2:%.*]] = shufflevector <96 x i8> [[WIDE_VEC]], <96 x i8> undef, <32 x i32> -; CHECK-NEXT: [[V3:%.*]] = shufflevector <96 x i8> [[WIDE_VEC]], <96 x i8> undef, <32 x i32> -; CHECK-NEXT: [[ADD1:%.*]] = add <32 x i8> [[V1]], [[V2]] -; CHECK-NEXT: [[ADD2:%.*]] = add <32 x i8> [[V3]], [[ADD1]] -; CHECK-NEXT: ret <32 x i8> [[ADD2]] +; AVX2-LABEL: @interleaved_load_vf32_i8_stride3( +; AVX2-NEXT: [[WIDE_VEC:%.*]] = load <96 x i8>, <96 x i8>* [[PTR:%.*]] +; AVX2-NEXT: [[V1:%.*]] = shufflevector <96 x i8> [[WIDE_VEC]], <96 x i8> undef, <32 x i32> +; AVX2-NEXT: [[V2:%.*]] = shufflevector <96 x i8> [[WIDE_VEC]], <96 x i8> undef, <32 x i32> +; AVX2-NEXT: [[V3:%.*]] = shufflevector <96 x i8> [[WIDE_VEC]], <96 x i8> undef, <32 x i32> +; AVX2-NEXT: [[ADD1:%.*]] = add <32 x i8> [[V1]], [[V2]] +; AVX2-NEXT: [[ADD2:%.*]] = add <32 x i8> [[V3]], [[ADD1]] +; AVX2-NEXT: ret <32 x i8> [[ADD2]] ; %wide.vec = load <96 x i8>, <96 x i8>* %ptr %v1 = shufflevector <96 x i8> %wide.vec, <96 x i8> undef,<32 x i32> @@ -22,14 +22,14 @@ define <32 x i8> @interleaved_load_vf32_i8_stride3(<96 x i8>* %ptr){ } define <16 x i8> @interleaved_load_vf16_i8_stride3(<48 x i8>* %ptr){ -; CHECK-LABEL: @interleaved_load_vf16_i8_stride3( -; CHECK-NEXT: [[WIDE_VEC:%.*]] = load <48 x i8>, <48 x i8>* [[PTR:%.*]] -; CHECK-NEXT: [[V1:%.*]] = shufflevector <48 x i8> [[WIDE_VEC]], <48 x i8> undef, <16 x i32> -; CHECK-NEXT: [[V2:%.*]] = shufflevector <48 x i8> [[WIDE_VEC]], <48 x i8> undef, <16 x i32> -; CHECK-NEXT: [[V3:%.*]] = shufflevector <48 x i8> [[WIDE_VEC]], <48 x i8> undef, <16 x i32> -; CHECK-NEXT: [[ADD1:%.*]] = add <16 x i8> [[V1]], [[V2]] -; CHECK-NEXT: [[ADD2:%.*]] = add <16 x i8> [[V3]], [[ADD1]] -; CHECK-NEXT: ret <16 x i8> [[ADD2]] +; AVX2-LABEL: @interleaved_load_vf16_i8_stride3( +; AVX2-NEXT: [[WIDE_VEC:%.*]] = load <48 x i8>, <48 x i8>* [[PTR:%.*]] +; AVX2-NEXT: [[V1:%.*]] = shufflevector <48 x i8> [[WIDE_VEC]], <48 x i8> undef, <16 x i32> +; AVX2-NEXT: [[V2:%.*]] = shufflevector <48 x i8> [[WIDE_VEC]], <48 x i8> undef, <16 x i32> +; AVX2-NEXT: [[V3:%.*]] = shufflevector <48 x i8> [[WIDE_VEC]], <48 x i8> undef, <16 x i32> +; AVX2-NEXT: [[ADD1:%.*]] = add <16 x i8> [[V1]], [[V2]] +; AVX2-NEXT: [[ADD2:%.*]] = add <16 x i8> [[V3]], [[ADD1]] +; AVX2-NEXT: ret <16 x i8> [[ADD2]] ; %wide.vec = load <48 x i8>, <48 x i8>* %ptr %v1 = shufflevector <48 x i8> %wide.vec, <48 x i8> undef,<16 x i32> @@ -41,14 +41,14 @@ define <16 x i8> @interleaved_load_vf16_i8_stride3(<48 x i8>* %ptr){ } define <8 x i8> @interleaved_load_vf8_i8_stride3(<24 x i8>* %ptr){ -; CHECK-LABEL: @interleaved_load_vf8_i8_stride3( -; CHECK-NEXT: [[WIDE_VEC:%.*]] = load <24 x i8>, <24 x i8>* [[PTR:%.*]] -; CHECK-NEXT: [[V1:%.*]] = shufflevector <24 x i8> [[WIDE_VEC]], <24 x i8> undef, <8 x i32> -; CHECK-NEXT: [[V2:%.*]] = shufflevector <24 x i8> [[WIDE_VEC]], <24 x i8> undef, <8 x i32> -; CHECK-NEXT: [[V3:%.*]] = shufflevector <24 x i8> [[WIDE_VEC]], <24 x i8> undef, <8 x i32> -; CHECK-NEXT: [[ADD1:%.*]] = add <8 x i8> [[V1]], [[V2]] -; CHECK-NEXT: [[ADD2:%.*]] = add <8 x i8> [[V3]], [[ADD1]] -; CHECK-NEXT: ret <8 x i8> [[ADD2]] +; AVX2-LABEL: @interleaved_load_vf8_i8_stride3( +; AVX2-NEXT: [[WIDE_VEC:%.*]] = load <24 x i8>, <24 x i8>* [[PTR:%.*]] +; AVX2-NEXT: [[V1:%.*]] = shufflevector <24 x i8> [[WIDE_VEC]], <24 x i8> undef, <8 x i32> +; AVX2-NEXT: [[V2:%.*]] = shufflevector <24 x i8> [[WIDE_VEC]], <24 x i8> undef, <8 x i32> +; AVX2-NEXT: [[V3:%.*]] = shufflevector <24 x i8> [[WIDE_VEC]], <24 x i8> undef, <8 x i32> +; AVX2-NEXT: [[ADD1:%.*]] = add <8 x i8> [[V1]], [[V2]] +; AVX2-NEXT: [[ADD2:%.*]] = add <8 x i8> [[V3]], [[ADD1]] +; AVX2-NEXT: ret <8 x i8> [[ADD2]] ; %wide.vec = load <24 x i8>, <24 x i8>* %ptr %v1 = shufflevector <24 x i8> %wide.vec, <24 x i8> undef,<8 x i32> -- 2.50.1