Bump version to 19.1.0-rc3
[llvm-project.git] / llvm / test / CodeGen / Hexagon / call-v4.ll
blob67548c81fd9b9d1bfdb7fa9005d15a088ab86796
1 ; RUN: llc -march=hexagon -print-after=finalize-isel -o /dev/null 2>&1 < %s | FileCheck %s
2 ; REQUIRES: asserts
4 ; CHECK: J2_call @f1
5 ; CHECK: PS_call_nr @f2
7 target triple = "hexagon"
9 @g0 = external global i32
11 ; Function Attrs: nounwind
12 define i32 @f0() #0 {
13 b0:
14   %v0 = load i32, ptr @g0, align 4
15   %v1 = tail call i32 @f1(i32 %v0) #0
16   %v2 = icmp eq i32 %v1, 0
17   br i1 %v2, label %b1, label %b2
19 b1:                                               ; preds = %b0
20   tail call void @f2() #2
21   unreachable
23 b2:                                               ; preds = %b0
24   ret i32 0
27 declare i32 @f1(i32)
29 ; Function Attrs: noreturn
30 declare void @f2() #1
32 attributes #0 = { nounwind "disable-tail-calls"="true" }
33 attributes #1 = { noreturn }
34 attributes #2 = { noreturn nounwind }