| ; RUN: llc < %s -mtriple=arm-unknown-unknown | FileCheck %s -check-prefix=NOOPTION | |
| ; RUN: llc < %s -mtriple=arm-unknown-unknown -trap-func=trap_llc | FileCheck %s -check-prefix=TRAP | |
| ; NOOPTION-LABEL: {{\_?}}foo0: | |
| ; NOOPTION: trap{{$}} | |
| ; TRAP-LABEL: {{\_?}}foo0: | |
| ; TRAP: bl {{\_?}}trap_llc | |
| define void @foo0() { | |
| call void @llvm.trap() | |
| unreachable | |
| } | |
| ; NOOPTION-LABEL: {{\_?}}foo1: | |
| ; NOOPTION: bl {{\_?}}trap_func_attr0 | |
| ; TRAP-LABEL: {{\_?}}foo1: | |
| ; TRAP: bl {{\_?}}trap_llc | |
| define void @foo1() { | |
| call void @llvm.trap() #0 | |
| unreachable | |
| } | |
| ; NOOPTION-LABEL: {{\_?}}foo2: | |
| ; NOOPTION: bl {{\_?}}trap_func_attr1 | |
| ; TRAP-LABEL: {{\_?}}foo2: | |
| ; TRAP: bl {{\_?}}trap_llc | |
| define void @foo2() { | |
| call void @llvm.trap() #1 | |
| unreachable | |
| } | |
| declare void @llvm.trap() nounwind | |
| attributes #0 = { "trap-func-name"="trap_func_attr0" } | |
| attributes #1 = { "trap-func-name"="trap_func_attr1" } |