brintos

brintos / llvm-project-archived public Read only

0
0
Text · 855 B · cf2aa80 Raw
34 lines · plain
1; RUN: llc -mtriple=hexagon -O2 -hexagon-expand-condsets=0 -hexagon-initial-cfg-cleanup=0 < %s | FileCheck %s2 3; CHECK: mux4; CHECK: cmp{{.*\.new}}5 6target triple = "hexagon"7 8; Function Attrs: nounwind9define i32 @f0(i32 %a0, i32 %a1, i32 %a2) #0 {10b0:11  %v0 = icmp ne i32 %a0, 012  %v1 = add nsw i32 %a2, -113  %v2 = select i1 %v0, i32 10, i32 %v114  %v3 = icmp eq i32 %v2, %a215  br i1 %v3, label %b1, label %b216 17b1:                                               ; preds = %b018  %v4 = shl nsw i32 %a2, 119  %v5 = tail call i32 @f1(i32 %v4) #020  br label %b321 22b2:                                               ; preds = %b023  %v6 = tail call i32 @f1(i32 %a0) #024  br label %b325 26b3:                                               ; preds = %b2, %b127  %v7 = phi i32 [ %v5, %b1 ], [ %v6, %b2 ]28  ret i32 %v729}30 31declare i32 @f1(i32)32 33attributes #0 = { nounwind }34