35 lines · plain
1;; Check that we emit a $local alias for a dso_local function definition2; RUN: llc -mtriple=armv7-linux-gnueabi -relocation-model=static < %s \3; RUN: | FileCheck %s --check-prefixes=CHECK,STATIC4; RUN: llc -mtriple=armv7-linux-gnueabi -relocation-model=pic < %s \5; RUN: | FileCheck %s --check-prefixes=CHECK,PIC6 7define dso_local ptr @dsolocal_func() nounwind {8; CHECK-LABEL: .globl dsolocal_func9; CHECK-NEXT: .p2align 210; CHECK-NEXT: .type dsolocal_func,%function11; CHECK-NEXT: .code 3212; CHECK-NEXT: dsolocal_func:13; PIC-NEXT: .Ldsolocal_func$local:14; PIC-NEXT: .type .Ldsolocal_func$local,%function15; CHECK-NEXT: .fnstart16; CHECK-NEXT: @ %bb.0:17; STATIC-NEXT: movw r0, :lower16:dsolocal_func18; STATIC-NEXT: movt r0, :upper16:dsolocal_func19; STATIC-NEXT: bx lr20; PIC-NEXT: ldr r0, .LCPI0_021; PIC-NEXT: .LPC0_0:22; PIC-NEXT: add r0, pc, r023; PIC-NEXT: bx lr24; PIC-NEXT: .p2align 225; PIC-NEXT: @ %bb.1:26; PIC-NEXT: .LCPI0_0:27; PIC-NEXT: .long .Ldsolocal_func$local-(.LPC0_0+8)28; CHECK-NEXT: .Lfunc_end0:29; CHECK-NEXT: .size dsolocal_func, .Lfunc_end0-dsolocal_func30; PIC-NEXT: .size .Ldsolocal_func$local, .Lfunc_end0-dsolocal_func31; CHECK-NEXT: .cantunwind32; CHECK-NEXT: .fnend33 ret ptr @dsolocal_func34}35