1058f7449SMin-Yih Hsu; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py 2058f7449SMin-Yih Hsu; RUN: llc -mtriple=m68k < %s | FileCheck %s 3058f7449SMin-Yih Hsu 4058f7449SMin-Yih Hsu; (Copied from test/CodeGen/X86/gcc_except_table.ll) 5058f7449SMin-Yih Hsu; Testing whether exception pointer register (d0) and exception selector 6058f7449SMin-Yih Hsu; register (d1) are correctly used by landing and EH pad, respectively. 7058f7449SMin-Yih Hsu@_ZTIi = external constant ptr 8058f7449SMin-Yih Hsu 9058f7449SMin-Yih Hsudefine i32 @foo() uwtable ssp personality ptr @__gxx_personality_v0 { 10058f7449SMin-Yih Hsu; CHECK-LABEL: foo: 11058f7449SMin-Yih Hsu; CHECK: .Lfunc_begin0: 12058f7449SMin-Yih Hsu; CHECK-NEXT: .cfi_startproc 13058f7449SMin-Yih Hsu; CHECK-NEXT: .cfi_personality 0, __gxx_personality_v0 14058f7449SMin-Yih Hsu; CHECK-NEXT: .cfi_lsda 0, .Lexception0 15058f7449SMin-Yih Hsu; CHECK-NEXT: ; %bb.0: ; %entry 16058f7449SMin-Yih Hsu; CHECK-NEXT: suba.l #4, %sp 17058f7449SMin-Yih Hsu; CHECK-NEXT: .cfi_def_cfa_offset -8 18058f7449SMin-Yih Hsu; CHECK-NEXT: .Ltmp0: 19*ebbc5de7SPeter Lafreniere; CHECK-NEXT: jsr _Z1fv 20058f7449SMin-Yih Hsu; CHECK-NEXT: .Ltmp1: 21058f7449SMin-Yih Hsu; CHECK-NEXT: ; %bb.1: ; %try.cont 22c4c9d4f3SPeter Lafreniere; CHECK-NEXT: moveq #0, %d0 23058f7449SMin-Yih Hsu; CHECK-NEXT: adda.l #4, %sp 24058f7449SMin-Yih Hsu; CHECK-NEXT: rts 25058f7449SMin-Yih Hsu; CHECK-NEXT: .LBB0_2: ; %lpad 26058f7449SMin-Yih Hsu; CHECK-NEXT: .Ltmp2: 27058f7449SMin-Yih Hsu; CHECK-NEXT: move.l %d0, (%sp) 28*ebbc5de7SPeter Lafreniere; CHECK-NEXT: jsr _Unwind_Resume 29058f7449SMin-Yih Hsuentry: 30058f7449SMin-Yih Hsu invoke void @_Z1fv() optsize 31058f7449SMin-Yih Hsu to label %try.cont unwind label %lpad 32058f7449SMin-Yih Hsu 33058f7449SMin-Yih Hsulpad: 34058f7449SMin-Yih Hsu %0 = landingpad { ptr, i32 } 35058f7449SMin-Yih Hsu cleanup 36058f7449SMin-Yih Hsu catch ptr @_ZTIi 37058f7449SMin-Yih Hsu br label %eh.resume 38058f7449SMin-Yih Hsu 39058f7449SMin-Yih Hsutry.cont: 40058f7449SMin-Yih Hsu ret i32 0 41058f7449SMin-Yih Hsu 42058f7449SMin-Yih Hsueh.resume: 43058f7449SMin-Yih Hsu resume { ptr, i32 } %0 44058f7449SMin-Yih Hsu} 45058f7449SMin-Yih Hsu 46058f7449SMin-Yih Hsudeclare void @_Z1fv() optsize 47058f7449SMin-Yih Hsu 48058f7449SMin-Yih Hsudeclare i32 @__gxx_personality_v0(...) 49