blob: 4ab71604db5b6622ab535e416d63cdc1eb12c883 [file] [log] [blame] [edit]
; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 6
; RUN: llc --fast-isel -mcpu=znver5 < %s -mtriple=x86_64-unknown-unknown | FileCheck %s
define fastcc i16 @test() nounwind {
; CHECK-LABEL: test:
; CHECK: # %bb.0: # %entry
; CHECK-NEXT: pushq %rax
; CHECK-NEXT: vpxor %xmm0, %xmm0, %xmm0
; CHECK-NEXT: xorl %edi, %edi
; CHECK-NEXT: callq foo@PLT
; CHECK-NEXT: vpslld $31, %xmm0, %xmm0
; CHECK-NEXT: xorl %edi, %edi
; CHECK-NEXT: vpmovd2m %xmm0, %k0
; CHECK-NEXT: vpxor %xmm0, %xmm0, %xmm0
; CHECK-NEXT: vpmovm2d %k0, %xmm1
; CHECK-NEXT: callq bar@PLT
; CHECK-NEXT: popq %rcx
; CHECK-NEXT: retq
entry:
%0 = call fastcc <4 x i1> @foo(ptr null, <4 x i1> zeroinitializer)
%1 = call fastcc i16 @bar(ptr null, <4 x i1> zeroinitializer, <4 x i1> %0)
ret i16 %1
}
declare fastcc <4 x i1> @foo(ptr, <4 x i1>)
declare fastcc i16 @bar(ptr, <4 x i1>, <4 x i1>)