brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.5 KiB · 86c1474 Raw
44 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 22; RUN: llc < %s -mtriple=aarch64-none-linux-gnu -mattr=+neon | FileCheck %s --check-prefix=CHECK3 4declare <4 x half> @llvm.maximum.v4f16(<4 x half>, <4 x half>)5 6declare <2 x fp128> @llvm.maximum.v2f128(<2 x fp128>, <2 x fp128>)7 8; Fixes PR632679define <4 x half> @fmaximum_v4f16(<4 x half> %x, <4 x half> %y) {10; CHECK-LABEL: fmaximum_v4f16:11; CHECK:       // %bb.0:12; CHECK-NEXT:    // kill: def $d1 killed $d1 def $q113; CHECK-NEXT:    // kill: def $d0 killed $d0 def $q014; CHECK-NEXT:    mov h2, v1.h[1]15; CHECK-NEXT:    mov h3, v0.h[1]16; CHECK-NEXT:    mov h4, v1.h[2]17; CHECK-NEXT:    mov h5, v0.h[2]18; CHECK-NEXT:    fcvt s6, h119; CHECK-NEXT:    fcvt s7, h020; CHECK-NEXT:    mov h1, v1.h[3]21; CHECK-NEXT:    fcvt s2, h222; CHECK-NEXT:    fcvt s3, h323; CHECK-NEXT:    fcvt s1, h124; CHECK-NEXT:    fmax s2, s3, s225; CHECK-NEXT:    fcvt s3, h426; CHECK-NEXT:    fcvt s4, h527; CHECK-NEXT:    fmax s5, s7, s628; CHECK-NEXT:    mov h6, v0.h[3]29; CHECK-NEXT:    fmax s3, s4, s330; CHECK-NEXT:    fcvt h2, s231; CHECK-NEXT:    fcvt h0, s532; CHECK-NEXT:    fcvt s4, h633; CHECK-NEXT:    mov v0.h[1], v2.h[0]34; CHECK-NEXT:    fcvt h2, s335; CHECK-NEXT:    fmax s1, s4, s136; CHECK-NEXT:    mov v0.h[2], v2.h[0]37; CHECK-NEXT:    fcvt h1, s138; CHECK-NEXT:    mov v0.h[3], v1.h[0]39; CHECK-NEXT:    // kill: def $d0 killed $d0 killed $q040; CHECK-NEXT:    ret41  %r = call <4 x half> @llvm.maximum.v4f16(<4 x half> %x, <4 x half> %y)42  ret <4 x half> %r43}44