]> granicus.if.org Git - clang/commit
[GCC] Attribute ifunc support in clang
authorDmitry Polukhin <dmitry.polukhin@gmail.com>
Mon, 11 Apr 2016 07:48:59 +0000 (07:48 +0000)
committerDmitry Polukhin <dmitry.polukhin@gmail.com>
Mon, 11 Apr 2016 07:48:59 +0000 (07:48 +0000)
commit1903a4e0802cdd84b97e7ebaac3c4ee134d58b8c
tree3126a40b23acd4917d863d4d94016a5e618c028e
parent4eb43f368b84bccd8bd41da2b91804dcd3d25591
[GCC] Attribute ifunc support in clang

This patch add support for GCC attribute((ifunc("resolver"))) for
targets that use ELF as object file format. In general ifunc is a
special kind of function alias with type @gnu_indirect_function. LLVM
patch http://reviews.llvm.org/D15525

Differential Revision: http://reviews.llvm.org/D15524

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@265917 91177308-0d34-0410-b5e6-96231b3b80d8
13 files changed:
include/clang/AST/DeclBase.h
include/clang/Basic/Attr.td
include/clang/Basic/AttrDocs.td
include/clang/Basic/DiagnosticSemaKinds.td
lib/AST/Decl.cpp
lib/AST/DeclBase.cpp
lib/CodeGen/CodeGenModule.cpp
lib/CodeGen/CodeGenModule.h
lib/Sema/SemaDecl.cpp
lib/Sema/SemaDeclAttr.cpp
test/CodeGen/ifunc.c [new file with mode: 0644]
test/Sema/attr-alias-elf.c
test/Sema/attr-ifunc.c [new file with mode: 0644]