1 ; RUN: llc -march=hexagon < %s | FileCheck %s
3 ; Check that we are emitting a regular call instead of a tail call for a
4 ; noreturn call in a function with a non-empty frame (to save instructions).
7 ; CHECK-NOT: deallocframe
9 target triple = "hexagon"
11 ; Function Attrs: noreturn
12 declare void @f0(i32, i32*) #0
14 declare void @f1(i32*)
16 define i64 @f2(i32 %a0, i32 %a1) {
19 call void @f1(i32* %v0)
20 %v1 = icmp ugt i32 %a0, 3
21 br i1 %v1, label %b1, label %b2
24 tail call void @f0(i32 %a0, i32* %v0) #0
29 %v3 = zext i32 %v2 to i64
33 attributes #0 = { noreturn }