X-Git-Url: http://plrg.eecs.uci.edu/git/?a=blobdiff_plain;f=test%2FCodeGen%2FX86%2Fvec_uint_to_fp-fastmath.ll;h=dfc186bef052af566f9c05bb53b9df3422e17659;hb=6e961aa243f223ddb704ce708056238d7c1d7e24;hp=0d67ac4bc25a7b71f5517eb6829158004e9a01ab;hpb=c97ac423205ec29d4beff0001d630838d8db2e79;p=oota-llvm.git diff --git a/test/CodeGen/X86/vec_uint_to_fp-fastmath.ll b/test/CodeGen/X86/vec_uint_to_fp-fastmath.ll index 0d67ac4bc25..dfc186bef05 100644 --- a/test/CodeGen/X86/vec_uint_to_fp-fastmath.ll +++ b/test/CodeGen/X86/vec_uint_to_fp-fastmath.ll @@ -6,6 +6,10 @@ ; RUN: | FileCheck %s --check-prefix=CHECK --check-prefix=AVX --check-prefix=CST ; RUN: llc < %s -mtriple=x86_64 -enable-unsafe-fp-math -mattr=+avx2 \ ; RUN: | FileCheck %s --check-prefix=CHECK --check-prefix=AVX2 +; RUN: llc < %s -mtriple=x86_64 -enable-unsafe-fp-math -mattr=+avx512f \ +; RUN: | FileCheck %s --check-prefix=CHECK --check-prefix=AVX512F +; RUN: llc < %s -mtriple=x86_64 -enable-unsafe-fp-math -mattr=+avx512vl \ +; RUN: | FileCheck %s --check-prefix=CHECK --check-prefix=AVX512VL ; CST: [[MASKCSTADDR:.LCPI[0-9_]+]]: ; CST-NEXT: .long 65535 # 0xffff @@ -14,10 +18,10 @@ ; CST-NEXT: .long 65535 # 0xffff ; CST: [[FPMASKCSTADDR:.LCPI[0-9_]+]]: -; CST-NEXT: .long 1199570944 # float 6.553600e+04 -; CST-NEXT: .long 1199570944 # float 6.553600e+04 -; CST-NEXT: .long 1199570944 # float 6.553600e+04 -; CST-NEXT: .long 1199570944 # float 6.553600e+04 +; CST-NEXT: .long 1199570944 # float 65536 +; CST-NEXT: .long 1199570944 # float 65536 +; CST-NEXT: .long 1199570944 # float 65536 +; CST-NEXT: .long 1199570944 # float 65536 ; AVX2: [[FPMASKCSTADDR:.LCPI[0-9_]+]]: ; AVX2-NEXT: .long 1199570944 # float 65536 @@ -58,6 +62,16 @@ define <4 x float> @test_uitofp_v4i32_to_v4f32(<4 x i32> %arg) { ; AVX2-NEXT: vcvtdq2ps %xmm0, %xmm0 ; AVX2-NEXT: vaddps %xmm0, %xmm1, %xmm0 ; AVX2-NEXT: retq +; +; AVX512F-LABEL: test_uitofp_v4i32_to_v4f32: +; AVX512F: # BB#0: +; AVX512F-NEXT: vcvtudq2ps %zmm0, %zmm0 +; AVX512F-NEXT: retq +; +; AVX512VL-LABEL: test_uitofp_v4i32_to_v4f32: +; AVX512VL: # BB#0: +; AVX512VL-NEXT: vcvtudq2ps %xmm0, %xmm0 +; AVX512VL-NEXT: retq %tmp = uitofp <4 x i32> %arg to <4 x float> ret <4 x float> %tmp } @@ -69,10 +83,10 @@ define <4 x float> @test_uitofp_v4i32_to_v4f32(<4 x i32> %arg) { ; AVX-NEXT: .long 65535 # 0xffff ; AVX: [[FPMASKCSTADDR_v8:.LCPI[0-9_]+]]: -; AVX-NEXT: .long 1199570944 # float 6.553600e+04 -; AVX-NEXT: .long 1199570944 # float 6.553600e+04 -; AVX-NEXT: .long 1199570944 # float 6.553600e+04 -; AVX-NEXT: .long 1199570944 # float 6.553600e+04 +; AVX-NEXT: .long 1199570944 # float 65536 +; AVX-NEXT: .long 1199570944 # float 65536 +; AVX-NEXT: .long 1199570944 # float 65536 +; AVX-NEXT: .long 1199570944 # float 65536 ; AVX2: [[FPMASKCSTADDR_v8:.LCPI[0-9_]+]]: ; AVX2-NEXT: .long 1199570944 # float 65536 @@ -125,6 +139,16 @@ define <8 x float> @test_uitofp_v8i32_to_v8f32(<8 x i32> %arg) { ; AVX2-NEXT: vcvtdq2ps %ymm0, %ymm0 ; AVX2-NEXT: vaddps %ymm0, %ymm1, %ymm0 ; AVX2-NEXT: retq +; +; AVX512F-LABEL: test_uitofp_v8i32_to_v8f32: +; AVX512F: # BB#0: +; AVX512F-NEXT: vcvtudq2ps %zmm0, %zmm0 +; AVX512F-NEXT: retq +; +; AVX512VL-LABEL: test_uitofp_v8i32_to_v8f32: +; AVX512VL: # BB#0: +; AVX512VL-NEXT: vcvtudq2ps %ymm0, %ymm0 +; AVX512VL-NEXT: retq %tmp = uitofp <8 x i32> %arg to <8 x float> ret <8 x float> %tmp }