brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.2 KiB · 6c8b494 Raw
77 lines · plain
1; RUN:  llvm-dis < %s.bc| FileCheck %s2 3; TerminatorOperations.3.2.ll.bc was generated by passing this file to llvm-as-3.2.4; The test checks that LLVM does not misread terminator instructions from5; older bitcode files.6 7define i32 @condbr(i1 %cond){8entry:9; CHECK: br i1 %cond, label %TrueLabel, label %FalseLabel10  br i1 %cond, label %TrueLabel, label %FalseLabel11  12  TrueLabel:13  ret i32 114  15  FalseLabel:16  ret i32 017}18 19define i32 @uncondbr(){20entry:21; CHECK: br label %uncondLabel22  br label %uncondLabel23  24  uncondLabel:25  ret i32 126}27 28define i32 @indirectbr(i8* %Addr){29entry:30; CHECK: indirectbr ptr %Addr, [label %bb1, label %bb2]31  indirectbr i8* %Addr, [ label %bb1, label %bb2 ]32  33  bb1:34  ret i32 135  36  bb2:37  ret i32 038}39 40define void @unreachable(){41entry:42; CHECK: unreachable43  unreachable44  45  ret void46}47 48define i32 @retInstr(){49entry:50; CHECK: ret i32 1 51  ret i32 1 52}53 54define void @retInstr2(){55entry:56; CHECK: ret void 57  ret void58}59 60define i32 @switchInstr(i32 %x){61entry:62; CHECK: switch i32 %x, label %label3 [63  switch i32 %x, label %label3 [64; CHECK-NEXT: i32 1, label %label1   65  i32 1, label %label166; CHECK-NEXT: i32 2, label %label2  67  i32 2, label %label268  ]69label1:70  ret i32 171label2:72  ret i32 273label3:74  ret i32 075}76 77