Home | History | Annotate | Download | only in reader_tests
      1 ; Test parsing unreachable instruction.
      2 
      3 ; RUN: %p2i -i %s --insts | FileCheck %s
      4 ; RUN:   %p2i -i %s --args -notranslate -timing | \
      5 ; RUN:   FileCheck --check-prefix=NOIR %s
      6 
      7 define internal i32 @divide(i32 %num, i32 %den) {
      8 entry:
      9   %cmp = icmp ne i32 %den, 0
     10   br i1 %cmp, label %return, label %abort
     11 
     12 abort:                                            ; preds = %entry
     13   unreachable
     14 
     15 return:                                           ; preds = %entry
     16   %div = sdiv i32 %num, %den
     17   ret i32 %div
     18 }
     19 
     20 ; CHECK:      define internal i32 @divide(i32 %num, i32 %den) {
     21 ; CHECK-NEXT: entry:
     22 ; CHECK-NEXT:   %cmp = icmp ne i32 %den, 0
     23 ; CHECK-NEXT:   br i1 %cmp, label %return, label %abort
     24 ; CHECK-NEXT: abort:
     25 ; CHECK-NEXT:   unreachable
     26 ; CHECK-NEXT: return:
     27 ; CHECK-NEXT:   %div = sdiv i32 %num, %den
     28 ; CHECK-NEXT:   ret i32 %div
     29 ; CHECK-NEXT: }
     30 
     31 ; NOIR: Total across all functions
     32