; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py ; RUN: llc < %s -mtriple=i686-- -mattr=+avx512f | FileCheck %s ; RUN: llc < %s -mtriple=x86_64-- -mattr=+avx512f | FileCheck %s define <16 x float> @PR45443() { ; CHECK-LABEL: PR45443: ; CHECK: # %bb.0: # %bb ; CHECK-NEXT: vfmadd231ps {{.*#+}} zmm0 = (zmm0 * mem) + zmm0 ; CHECK-NEXT: ret{{[l|q]}} bb: %tmp = tail call <16 x i32> @llvm.x86.avx512.psll.d.512(<16 x i32> , <4 x i32> ) %tmp4 = tail call fast <16 x float> @llvm.fma.v16f32(<16 x float> undef, <16 x float> , <16 x float> undef) %tmp5 = icmp ult <16 x i32> %tmp, %tmp6 = and <16 x i32> %tmp, %tmp7 = icmp ne <16 x i32> %tmp6, zeroinitializer %tmp8 = and <16 x i1> %tmp7, %tmp5 %tmp9 = select fast <16 x i1> %tmp8, <16 x float> , <16 x float> %tmp4 ret <16 x float> %tmp9 } declare <16 x float> @llvm.fma.v16f32(<16 x float>, <16 x float>, <16 x float>) declare <16 x i32> @llvm.x86.avx512.psll.d.512(<16 x i32>, <4 x i32>)