brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.4 KiB · 8049b9d Raw
68 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 22; RUN: llc < %s -mtriple=arm -o - | FileCheck %s3 4define void @foo(i32 %i) nounwind {5; CHECK-LABEL: foo:6; CHECK:       @ %bb.0: @ %entry7; CHECK-NEXT:    push {r11, lr}8; CHECK-NEXT:    cmp r0, #79; CHECK-NEXT:    beq .LBB0_310; CHECK-NEXT:  @ %bb.1: @ %entry11; CHECK-NEXT:    cmp r0, #512; CHECK-NEXT:    bne .LBB0_413; CHECK-NEXT:  @ %bb.2: @ %if.then14; CHECK-NEXT:    bl bar15; CHECK-NEXT:    pop {r11, lr}16; CHECK-NEXT:    b bar17; CHECK-NEXT:  .LBB0_3: @ %if.then218; CHECK-NEXT:    bl bar19; CHECK-NEXT:  .LBB0_4: @ %if.end320; CHECK-NEXT:    pop {r11, lr}21; CHECK-NEXT:    b bar22entry:23  switch i32 %i, label %if.end3 [24    i32 5, label %if.then25    i32 7, label %if.then226  ]27 28if.then:29  tail call void @bar() #030  br label %if.end331 32if.then2:33  tail call void @bar() #034  br label %if.end335 36if.end3:37  tail call void @bar() #038  ret void39}40 41define void @foo_tail(i1 %i) nounwind {42; CHECK-LABEL: foo_tail:43; CHECK:       @ %bb.0: @ %entry44; CHECK-NEXT:    tst r0, #145; CHECK-NEXT:    beq .LBB1_246; CHECK-NEXT:  @ %bb.1: @ %if.then47; CHECK-NEXT:    b bar48; CHECK-NEXT:  .LBB1_2: @ %if.else49; CHECK-NEXT:    b bar50entry:51  br i1 %i, label %if.then, label %if.else52 53if.then:54  tail call void @bar() #055  br label %if.end56 57if.else:58  tail call void @bar() #059  br label %if.end60 61if.end:62  ret void63}64 65declare void @bar()66 67attributes #0 = { nomerge }68