; RUN: llc < %s -march=avr | FileCheck %s ; CHECK-LABEL: relax_breq ; CHECK: cpi r{{[0-9]+}}, 0 ; CHECK: brne .LBB0_1 ; CHECK: rjmp .LBB0_2 ; .LBB0_1: define i8 @relax_breq(i1 %a) { entry-block: br i1 %a, label %hello, label %finished hello: call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() br label %finished finished: ret i8 3 } ; CHECK-LABEL: no_relax_breq ; CHECK: cpi r{{[0-9]+}}, 0 ; CHECK: breq [[END_BB:.LBB[0-9]+_[0-9]+]] ; CHECK: nop ; ... ; .LBB0_1: define i8 @no_relax_breq(i1 %a) { entry-block: br i1 %a, label %hello, label %finished hello: ; There are not enough NOPs to require relaxation. call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() call void asm sideeffect "nop", ""() br label %finished finished: ret i8 3 }