forked from OSchip/llvm-project
15 lines
975 B
LLVM
15 lines
975 B
LLVM
|
; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
|
||
|
; RUN: llc < %s -mtriple=x86_64-unknown-linux-gnu -mattr=avx512vl,avx512bw | FileCheck %s
|
||
|
|
||
|
define <16 x i16> @foo(<16 x i32> %i) {
|
||
|
; CHECK-LABEL: foo:
|
||
|
; CHECK: # BB#0:
|
||
|
; CHECK-NEXT: vpminud {{.*}}(%rip){1to16}, %zmm0, %zmm0
|
||
|
; CHECK-NEXT: vpmovdw %zmm0, %ymm0
|
||
|
; CHECK-NEXT: retq
|
||
|
%x3 = icmp ult <16 x i32> %i, <i32 16843009, i32 16843009, i32 16843009, i32 16843009, i32 16843009, i32 16843009, i32 16843009, i32 16843009, i32 16843009, i32 16843009, i32 16843009, i32 16843009, i32 16843009, i32 16843009, i32 16843009, i32 16843009>
|
||
|
%x5 = select <16 x i1> %x3, <16 x i32> %i, <16 x i32> <i32 16843009, i32 16843009, i32 16843009, i32 16843009, i32 16843009, i32 16843009, i32 16843009, i32 16843009, i32 16843009, i32 16843009, i32 16843009, i32 16843009, i32 16843009, i32 16843009, i32 16843009, i32 16843009>
|
||
|
%x6 = trunc <16 x i32> %x5 to <16 x i16>
|
||
|
ret <16 x i16> %x6
|
||
|
}
|