; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
; RUN: llc < %s -O0 -mtriple=m68k -verify-machineinstrs \
; RUN:              -code-model=large -relocation-model=pic \
; RUN:   | FileCheck %s

define weak void @weak_foo() {
; CHECK-LABEL: weak_foo:
; CHECK:         .cfi_startproc
; CHECK-NEXT:  ; %bb.0:
; CHECK-NEXT:    rts
  ret void
}

define weak_odr void @weak_odr_foo() {
; CHECK-LABEL: weak_odr_foo:
; CHECK:         .cfi_startproc
; CHECK-NEXT:  ; %bb.0:
; CHECK-NEXT:    rts
  ret void
}

define internal void @internal_foo() {
; CHECK-LABEL: internal_foo:
; CHECK:         .cfi_startproc
; CHECK-NEXT:  ; %bb.0:
; CHECK-NEXT:    rts
  ret void
}

declare i32 @ext_baz()

define void @foo() {
; CHECK-LABEL: foo:
; CHECK:         .cfi_startproc
; CHECK-NEXT:  ; %bb.0:
; CHECK-NEXT:    rts
  ret void
}

define void @bar() {
; CHECK-LABEL: bar:
; CHECK:         .cfi_startproc
; CHECK-NEXT:  ; %bb.0: ; %entry
; CHECK-NEXT:    suba.l #4, %sp
; CHECK-NEXT:    .cfi_def_cfa_offset -8
; CHECK-NEXT:    jsr (foo@PLT,%pc)
; CHECK-NEXT:    jsr (weak_odr_foo@PLT,%pc)
; CHECK-NEXT:    jsr (weak_foo@PLT,%pc)
; CHECK-NEXT:    jsr (internal_foo,%pc)
; CHECK-NEXT:    jsr (ext_baz@PLT,%pc)
; CHECK-NEXT:    adda.l #4, %sp
; CHECK-NEXT:    rts
entry:
  call void @foo()
  call void @weak_odr_foo()
  call void @weak_foo()
  call void @internal_foo()
  call i32 @ext_baz()
  ret void
}

; -fpie for local global data tests should be added here

!llvm.module.flags = !{!0, !1}
!0 = !{i32 1, !"PIC Level", i32 1}
!1 = !{i32 1, !"PIE Level", i32 1}
