xref: /llvm-project/llvm/test/CodeGen/ARM/call-noret.ll (revision d24ab20e9b11d2076d8b9d5cd96f41a6b9c399fb)
1e8a549cdSBob Wilson; RUN: llc < %s -mtriple=armv7-apple-ios -mcpu=cortex-a8   | FileCheck %s -check-prefix=ARM
2e8a549cdSBob Wilson; RUN: llc < %s -mtriple=armv7-apple-ios -mcpu=swift       | FileCheck %s -check-prefix=SWIFT
3e8a549cdSBob Wilson; rdar://8979299
4e8a549cdSBob Wilson
5e8a549cdSBob Wilsondefine void @t1() noreturn nounwind ssp {
6e8a549cdSBob Wilsonentry:
7*d24ab20eSStephen Lin; ARM-LABEL: t1:
8e8a549cdSBob Wilson; ARM: mov lr, pc
9e8a549cdSBob Wilson; ARM: b _bar
10e8a549cdSBob Wilson
11*d24ab20eSStephen Lin; SWIFT-LABEL: t1:
12e8a549cdSBob Wilson; SWIFT: mov lr, pc
13e8a549cdSBob Wilson; SWIFT: b _bar
14e8a549cdSBob Wilson  tail call void @bar() noreturn nounwind
15e8a549cdSBob Wilson  unreachable
16e8a549cdSBob Wilson}
17e8a549cdSBob Wilson
18e8a549cdSBob Wilsondefine void @t2() noreturn nounwind ssp {
19e8a549cdSBob Wilsonentry:
20*d24ab20eSStephen Lin; ARM-LABEL: t2:
21e8a549cdSBob Wilson; ARM: mov lr, pc
22e8a549cdSBob Wilson; ARM: b _t1
23e8a549cdSBob Wilson
24*d24ab20eSStephen Lin; SWIFT-LABEL: t2:
25e8a549cdSBob Wilson; SWIFT: mov lr, pc
26e8a549cdSBob Wilson; SWIFT: b _t1
27e8a549cdSBob Wilson  tail call void @t1() noreturn nounwind
28e8a549cdSBob Wilson  unreachable
29e8a549cdSBob Wilson}
30e8a549cdSBob Wilson
31e8a549cdSBob Wilsondeclare void @bar() noreturn
32