; This test ensures the @llvm.debugtrap() call is not removed when generating
; the 'pop' instruction to restore the callee saved registers on ARM.

; RUN: llc < %s -mtriple=armv7 -O0 -filetype=asm | FileCheck %s 

declare void @llvm.debugtrap() nounwind
declare void @foo() nounwind

define void @test() nounwind {
entry:
  ; CHECK: bl foo
  ; CHECK-NEXT: pop
  ; CHECK-NEXT: .inst 0xe7ffdefe
  call void @foo()
  call void @llvm.debugtrap()
  ret void
}