xref: /llvm-project/llvm/test/CodeGen/ARM/machine-outliner-no-candidates-without-stack-fixup.ll (revision db08b0999d1b42391e34ac0c469b92de98e9f550)
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 5
2; RUN: llc -mtriple=thumbv8.1m.main-unknown-unknown < %s | FileCheck %s
3
4; Make sure this does not assert during machine outlining.
5
6declare void @a(...)
7
8define void @b(i32 %a, i32 %b, i32 %c, ptr %d, ptr %e) minsize {
9; CHECK-LABEL: b:
10; CHECK:       @ %bb.0:
11; CHECK-NEXT:    ldr r3, [sp]
12; CHECK-NEXT:    mov r2, r1
13; CHECK-NEXT:    mov r1, r0
14; CHECK-NEXT:    movs r0, #2
15; CHECK-NEXT:    b a
16  tail call void @a(i32 2, i32 %a, i32 %b, ptr %e)
17  ret void
18}
19
20define void @c(i32 %a, i32 %b, i32 %c, ptr %d, ptr %e) minsize {
21; CHECK-LABEL: c:
22; CHECK:       @ %bb.0:
23; CHECK-NEXT:    ldr r3, [sp]
24; CHECK-NEXT:    mov r2, r1
25; CHECK-NEXT:    mov r1, r0
26; CHECK-NEXT:    movs r0, #4
27; CHECK-NEXT:    b a
28  tail call void @a(i32 4, i32 %a, i32 %b, ptr %e)
29  ret void
30}
31