| ; RUN: llc -mtriple=aarch64-win32 %s -o - | FileCheck %s | |
| declare void @callee() noreturn | |
| ; Make sure the call isn't the last instruction in the function; if it is, | |
| ; unwinding may break. | |
| ; | |
| ; (The instruction after the call doesn't have to be anything in particular, | |
| ; but trapping has the nice side-effect of catching bugs.) | |
| define void @test_unreachable() { | |
| ; CHECK-LABEL: test_unreachable: | |
| ; CHECK: bl callee | |
| ; CHECK-NEXT: brk #0x1 | |
| call void @callee() noreturn | |
| unreachable | |
| } |