• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1; RUN: opt -basic-aa -hexagon-loop-idiom -mtriple hexagon-unknown-elf < %s
2; REQUIRES: asserts
3
4target triple = "hexagon"
5
6; Function Attrs: nounwind
7define void @fred(i8 zeroext %L) #0 {
8entry:
9  br i1 undef, label %if.end53, label %while.body37
10
11while.body37:                                     ; preds = %while.body37, %entry
12  %i.121 = phi i32 [ %inc46, %while.body37 ], [ 0, %entry ]
13  %shl = shl i32 1, %i.121
14  %and39 = and i32 %shl, undef
15  %tobool40 = icmp eq i32 %and39, 0
16  %inc46 = add nuw nsw i32 %i.121, 1
17  %storemerge = select i1 %tobool40, i8 %L, i8 0
18  br i1 undef, label %while.body37, label %if.end53
19
20if.end53:                                         ; preds = %while.body37, %entry
21  ret void
22}
23
24attributes #0 = { nounwind }
25