Re: [PATCH] D15524: [GCC] Attribute ifunc support in clang

2016-04-11 Thread Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL265917: [GCC] Attribute ifunc support in clang (authored by dpolukhin). Changed prior to commit: http://reviews.llvm.org/D15524?vs=52906&id=53200#toc Repository: rL LLVM http://reviews.llvm.org/D155

Re: [PATCH] D15524: [GCC] Attribute ifunc support in clang

2016-04-11 Thread Dmitry Polukhin via cfe-commits
DmitryPolukhin added a comment. Sorry, I was out for couple days. It seems that there are no real objections so I'm committing this patch and I'm going to keep working on this topic to support target attribute with dynamic dispatching on x86 so if you think that something is missing, please let

Re: [PATCH] D15524: [GCC] Attribute ifunc support in clang

2016-04-08 Thread Eric Christopher via cfe-commits
echristo added inline comments. Comment at: include/clang/Basic/AttrDocs.td:2371 @@ +2370,3 @@ + +Not all targets support this attribute. ELF targets support this attribute when using binutils v2.20.1 or higher and glibc v2.11.1 or higher. Non-ELF targets currently do not supp

Re: [PATCH] D15524: [GCC] Attribute ifunc support in clang

2016-04-08 Thread Paul Robinson via cfe-commits
probinson added inline comments. Comment at: include/clang/Basic/AttrDocs.td:2371 @@ +2370,3 @@ + +Not all targets support this attribute. ELF targets support this attribute when using binutils v2.20.1 or higher and glibc v2.11.1 or higher. Non-ELF targets currently do not sup

Re: [PATCH] D15524: [GCC] Attribute ifunc support in clang

2016-04-08 Thread Eric Christopher via cfe-commits
echristo added inline comments. Comment at: include/clang/Basic/AttrDocs.td:2371 @@ +2370,3 @@ + +Not all targets support this attribute. ELF targets support this attribute when using binutils v2.20.1 or higher and glibc v2.11.1 or higher. Non-ELF targets currently do not supp

Re: [PATCH] D15524: [GCC] Attribute ifunc support in clang

2016-04-08 Thread Eric Christopher via cfe-commits
On Fri, Apr 8, 2016, 10:45 AM Paul Robinson < paul_robin...@playstation.sony.com> wrote: > probinson added inline comments. > > > Comment at: include/clang/Basic/AttrDocs.td:2371 > @@ +2370,3 @@ > + > +Not all targets support this attribute. ELF targets support this > attribute w

Re: [PATCH] D15524: [GCC] Attribute ifunc support in clang

2016-04-08 Thread Paul Robinson via cfe-commits
probinson added inline comments. Comment at: include/clang/Basic/AttrDocs.td:2371 @@ +2370,3 @@ + +Not all targets support this attribute. ELF targets support this attribute when using binutils v2.20.1 or higher and glibc v2.11.1 or higher. Non-ELF targets currently do not sup

Re: [PATCH] D15524: [GCC] Attribute ifunc support in clang

2016-04-08 Thread Joerg Sonnenberger via cfe-commits
joerg added a subscriber: joerg. Comment at: include/clang/Basic/AttrDocs.td:2066 @@ -2065,3 +2065,3 @@ let Content = [{ Clang supports the GNU style ``__attribute__((interrupt))`` attribute on x86/x86-64 targets.The compiler generates function entry and exit sequences --

Re: [PATCH] D15524: [GCC] Attribute ifunc support in clang

2016-04-07 Thread Paul Robinson via cfe-commits
probinson added a subscriber: probinson. Comment at: include/clang/Basic/AttrDocs.td:2371 @@ +2370,3 @@ + +Not all targets support this attribute. ELF targets support this attribute when using binutils v2.20.1 or higher and glibc v2.11.1 or higher. Non-ELF targets currently do

Re: [PATCH] D15524: [GCC] Attribute ifunc support in clang

2016-04-07 Thread Eric Christopher via cfe-commits
echristo added inline comments. Comment at: include/clang/Basic/AttrDocs.td:2371 @@ +2370,3 @@ + +Not all targets support this attribute. ELF targets support this attribute when using binutils v2.20.1 or higher and glibc v2.11.1 or higher. Non-ELF targets currently do not supp

Re: [PATCH] D15524: [GCC] Attribute ifunc support in clang

2016-04-07 Thread John McCall via cfe-commits
rjmccall added inline comments. Comment at: include/clang/Basic/AttrDocs.td:2371 @@ +2370,3 @@ + +Not all targets support this attribute. ELF targets support this attribute when using binutils v2.20.1 or higher and glibc v2.11.1 or higher. Non-ELF targets currently do not supp

Re: [PATCH] D15524: [GCC] Attribute ifunc support in clang

2016-04-07 Thread Eric Christopher via cfe-commits
echristo accepted this revision. echristo added a comment. This all seems reasonable to me, one inline rewording comment, and check with rjmccall before committing. Thanks! Comment at: include/clang/Basic/AttrDocs.td:2371 @@ +2370,3 @@ + +Not all targets support this attribute

Re: [PATCH] D15524: [GCC] Attribute ifunc support in clang

2016-04-07 Thread Dmitry Polukhin via cfe-commits
DmitryPolukhin updated this revision to Diff 52906. DmitryPolukhin added a comment. - rebase after committing llvm patch http://reviews.llvm.org/D15524 Files: include/clang/AST/DeclBase.h include/clang/Basic/Attr.td include/clang/Basic/AttrDocs.td include/clang/Basic/DiagnosticSemaKinds

Re: [PATCH] D15524: [GCC] Attribute ifunc support in clang

2015-12-30 Thread Dmitry Polukhin via cfe-commits
DmitryPolukhin added a comment. Thank you for the review! I'm waiting for llvm part of ifunc support because it has to be committed first. http://reviews.llvm.org/D15524 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/

Re: [PATCH] D15524: [GCC] Attribute ifunc support in clang

2015-12-30 Thread Aaron Ballman via cfe-commits
aaron.ballman accepted this revision. aaron.ballman added a comment. This revision is now accepted and ready to land. LGTM, thank you! http://reviews.llvm.org/D15524 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-b

Re: [PATCH] D15524: [GCC] Attribute ifunc support in clang

2015-12-29 Thread Dmitry Polukhin via cfe-commits
DmitryPolukhin updated this revision to Diff 43775. DmitryPolukhin marked 8 inline comments as done. DmitryPolukhin added a comment. Fixed comments. http://reviews.llvm.org/D15524 Files: include/clang/AST/DeclBase.h include/clang/Basic/Attr.td include/clang/Basic/AttrDocs.td include/cla

Re: [PATCH] D15524: [GCC] Attribute ifunc support in clang

2015-12-29 Thread Aaron Ballman via cfe-commits
aaron.ballman added inline comments. Comment at: include/clang/AST/DeclBase.h:563 @@ +562,3 @@ + /// \brief Return true if this declaration is a definition of alias or ifunc. + bool hasDefiningAttr() const; + rjmccall wrote: > aaron.ballman wrote: > > I think th

Re: [PATCH] D15524: [GCC] Attribute ifunc support in clang

2015-12-29 Thread John McCall via cfe-commits
rjmccall added inline comments. Comment at: include/clang/AST/DeclBase.h:563 @@ +562,3 @@ + /// \brief Return true if this declaration is a definition of alias or ifunc. + bool hasDefiningAttr() const; + aaron.ballman wrote: > I think this function and getDefini

Re: [PATCH] D15524: [GCC] Attribute ifunc support in clang

2015-12-29 Thread Aaron Ballman via cfe-commits
aaron.ballman added inline comments. Comment at: include/clang/AST/DeclBase.h:563 @@ +562,3 @@ + /// \brief Return true if this declaration is a definition of alias or ifunc. + bool hasDefiningAttr() const; + I think this function and getDefiningAttr() can be de

Re: [PATCH] D15524: [GCC] Attribute ifunc support in clang

2015-12-29 Thread John McCall via cfe-commits
rjmccall added a comment. This looks great, thanks. A few minor comment tweaks and this will be ready to commit. Comment at: include/clang/AST/DeclBase.h:562 @@ -561,1 +561,3 @@ + /// \brief Return true if this declaration is a definition of alias or ifunc. + bool hasDefin

Re: [PATCH] D15524: [GCC] Attribute ifunc support in clang

2015-12-29 Thread Dmitry Polukhin via cfe-commits
DmitryPolukhin updated this revision to Diff 43721. DmitryPolukhin marked 17 inline comments as done. DmitryPolukhin added a comment. Comments resolved + this patch uses new GlobalIFunc representation in llvm. http://reviews.llvm.org/D15524 Files: include/clang/AST/DeclBase.h include/clang/

Re: [PATCH] D15524: [GCC] Attribute ifunc support in clang

2015-12-29 Thread Dmitry Polukhin via cfe-commits
DmitryPolukhin added inline comments. Comment at: lib/CodeGen/CodeGenModule.cpp:2700 @@ -2685,3 +2699,3 @@ return; Aliases.push_back(GD); rjmccall wrote: > Please diagnose that the resolver function has the appropriate type here. > Given the constraint

Re: [PATCH] D15524: [GCC] Attribute ifunc support in clang

2015-12-17 Thread Eric Christopher via cfe-commits
echristo added inline comments. Comment at: lib/CodeGen/CodeGenModule.cpp:2758 @@ +2757,3 @@ +GA->setIFunc(true); +GA->setLinkage(llvm::GlobalValue::LinkOnceAnyLinkage); + } rjmccall wrote: > DmitryPolukhin wrote: > > rjmccall wrote: > > > Can you explain

Re: [PATCH] D15524: [GCC] Attribute ifunc support in clang

2015-12-17 Thread John McCall via cfe-commits
rjmccall added inline comments. Comment at: include/clang/Basic/AttrDocs.td:1866 @@ +1865,3 @@ + let Content = [{ +The attribute ``__attribute__((ifunc("resolver")))`` is used to mark a function as an indirect function using the STT_GNU_IFUNC symbol type extension to the ELF st

Re: [PATCH] D15524: [GCC] Attribute ifunc support in clang

2015-12-17 Thread Dmitry Polukhin via cfe-commits
DmitryPolukhin added a comment. John, I'm still working on new patch but meanwhile I would like to clarify few things in your comments. Comment at: include/clang/Basic/AttrDocs.td:1866 @@ +1865,3 @@ + let Content = [{ +The attribute ``__attribute__((ifunc("resolver")))`` is us

Re: [PATCH] D15524: [GCC] Attribute ifunc support in clang

2015-12-16 Thread John McCall via cfe-commits
rjmccall added inline comments. Comment at: include/clang/Basic/AttrDocs.td:1866 @@ +1865,3 @@ + let Content = [{ +The attribute ``__attribute__((ifunc("resolver")))`` is used to mark a function as an indirect function using the STT_GNU_IFUNC symbol type extension to the ELF st

Re: [PATCH] D15524: [GCC] Attribute ifunc support in clang

2015-12-15 Thread Aaron Ballman via cfe-commits
aaron.ballman added a comment. Attribute implementation LGTM, but I do not know the semantics of ifunc well enough to comment on whether this implementation is correct or not. From what I can tell of GCC's documentation, it looks reasonable, but it would be good for Eric or John to take a look