# RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux-gnu %s | llvm-readelf -hs - | FileCheck %s --check-prefixes=CHECK,GNU # RUN: llvm-mc -filetype=obj -triple=x86_64-pc-freebsd %s | llvm-readelf -hs - | FileCheck %s --check-prefixes=CHECK,FREEBSD .text .type foo_impl,@function foo_impl: ret .type foo_resolver,@function foo_resolver: mov $foo_impl, %rax ret .type foo,@gnu_indirect_function .set foo,foo_resolver ## ELFOSABI_NONE is changed to ELFOSABI_GNU. Other OSABI values are unchanged. # GNU: OS/ABI: UNIX - GNU # FREEBSD: OS/ABI: UNIX - FreeBSD # CHECK: FUNC LOCAL DEFAULT 2 foo_impl # CHECK-NEXT: FUNC LOCAL DEFAULT 2 foo_resolver # CHECK-NEXT: IFUNC LOCAL DEFAULT 2 foo