; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py ; RUN: llc -mtriple=hexagon-- < %s | FileCheck %s define half @freeze_half_undef() nounwind { ; CHECK-LABEL: freeze_half_undef: ; CHECK: // %bb.0: ; CHECK-NEXT: { ; CHECK-NEXT: call __truncsfhf2 ; CHECK-NEXT: r0 = #0 ; CHECK-NEXT: allocframe(#0) ; CHECK-NEXT: } ; CHECK-NEXT: { ; CHECK-NEXT: call __extendhfsf2 ; CHECK-NEXT: } ; CHECK-NEXT: { ; CHECK-NEXT: call __truncsfhf2 ; CHECK-NEXT: r0 = sfadd(r0,r0) ; CHECK-NEXT: } ; CHECK-NEXT: { ; CHECK-NEXT: r31:30 = dealloc_return(r30):raw ; CHECK-NEXT: } %y1 = freeze half undef %t1 = fadd half %y1, %y1 ret half %t1 } define half @freeze_half_poison(half %maybe.poison) { ; CHECK-LABEL: freeze_half_poison: ; CHECK: // %bb.0: ; CHECK: { ; CHECK-NEXT: call __extendhfsf2 ; CHECK-NEXT: allocframe(r29,#0):raw ; CHECK-NEXT: } ; CHECK-NEXT: { ; CHECK-NEXT: call __truncsfhf2 ; CHECK-NEXT: r0 = sfadd(r0,r0) ; CHECK-NEXT: } ; CHECK-NEXT: { ; CHECK-NEXT: r31:30 = dealloc_return(r30):raw ; CHECK-NEXT: } %y1 = freeze half %maybe.poison %t1 = fadd half %y1, %y1 ret half %t1 }