28 lines · plain
1; RUN: llc -O0 < %s -mtriple=avr | FileCheck %s2 3; CHECK-LABEL: foo4define void @foo() {5entry:6 br label %save7 8; CHECK-LABEL: save9; CHECK: in [[SREG1:r[0-9]+]], 6110; CHECK-NEXT: in [[SREG2:r[0-9]+]], 6211save:12 %saved = call ptr @llvm.stacksave()13 br label %restore14 15; CHECK-LABEL: restore16; CHECK: in r0, 6317; CHECK-NEXT: cli18; CHECK-NEXT: out 62, [[SREG2]]19; CHECK-NEXT: out 63, r020; CHECK-NEXT: out 61, [[SREG1]]21restore:22 call void @llvm.stackrestore(ptr %saved)23 ret void24}25 26declare ptr @llvm.stacksave()27declare void @llvm.stackrestore(ptr %ptr)28