xref: /llvm-project/llvm/test/MC/PowerPC/ppc64-localentry-symbols.s (revision 962b29d7162c8b470ea70540c48d11c2f35d7561)
1# RUN: llvm-mc -filetype=obj -triple=powerpc64-unknown-freebsd13.0 %s -o %t
2# RUN: llvm-readelf -s %t | FileCheck %s
3
4# CHECK:      Type Bind   Vis                     Ndx Name
5# CHECK:      FUNC GLOBAL DEFAULT [<other: 0x60>]   2 foo
6# CHECK-NEXT: FUNC WEAK   DEFAULT [<other: 0x60>]   2 __impl_foo
7# CHECK-NEXT: FUNC GLOBAL DEFAULT [<other: 0x60>]   2 func
8# CHECK-NEXT: FUNC WEAK   DEFAULT [<other: 0x60>]   2 weak_func
9# CHECK:      FUNC WEAK   DEFAULT [<other: 0x60>]   2 foo@FBSD_1.1
10
11.text
12.abiversion 2
13
14.globl foo
15.type foo,@function
16foo:
17  nop
18  nop
19  .localentry foo, 8
20
21.symver __impl_foo, foo@FBSD_1.1
22.weak   __impl_foo
23.set    __impl_foo, foo
24
25.globl  func
26# Mimick FreeBSD weak function/reference
27.weak   weak_func
28.equ    weak_func, func
29
30.p2align 2
31.type    func,@function
32func:
33  nop
34  nop
35  .localentry func, 8
36
37## PR44284 Don't crash if err is redefined after .set
38.set err, _err
39.globl err
40err:
41