[cfe-dev] Re-using 'dllexport' for non-Windows targets
Reid Kleckner via cfe-dev
cfe-dev at lists.llvm.org
Tue May 31 09:28:38 PDT 2016
It should just work if you remove the Windows-only restriction in Attr.td:
def DLLExport : InheritableAttr, TargetSpecificAttr<TargetWindows> {
let Spellings = [Declspec<"dllexport">, GCC<"dllexport">];
let Subjects = SubjectList<[Function, Var, CXXRecord]>;
let Documentation = [Undocumented];
}
def DLLImport : InheritableAttr, TargetSpecificAttr<TargetWindows> {
let Spellings = [Declspec<"dllimport">, GCC<"dllimport">];
let Subjects = SubjectList<[Function, Var, CXXRecord]>;
let Documentation = [Undocumented];
}
I know Sony does this, so it can't require too much patching.
On Mon, May 30, 2016 at 6:38 AM, Martin J. O'Riordan via cfe-dev <
cfe-dev at lists.llvm.org> wrote:
> For our SHAVE target I have re-used ‘__attribute__((dllexport))’ to allow
> me to create indirect address tables for symbols with this annotation.
>
>
>
> However, with almost every release of LLVM and CLang my implementation is
> broken and I have to rework my implementation. For the most part, the
> existing ‘dllexport’ attribute does everything I require and makes more
> sense for me to pass it through CLang/LLVM until it reaches our back-end
> where it emits the IAT support rather than adding my own new attribute.
>
>
>
> This got broken again with v3.8 and this time the controls are more strict
> on Windows supporting targets. I thought that before I go in an make
> another set of changes to re-enable this with our target, that I would ask
> first if there anybody has any advice or recommendation for how to “borrow”
> this attribute for non-Windows targets? The problem is principally CLang
> rather than LLVM, so I would like to find a good and future-proof way of
> adapting CLang to enable this attribute on my target.
>
>
>
> Thanks in advance,
>
>
>
> MartinO
>
>
>
> Martin J. O’Riordan Email: Martin.ORiordan at movidius.com
>
> Compiler Development Web: www.movidius.com
>
> Movidius Ltd. Skype: moviMartinO
>
> 1st Floor, O’Connell Bridge House, d’Olier Street, Dublin 2, Ireland
>
>
>
> _______________________________________________
> cfe-dev mailing list
> cfe-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20160531/f7306449/attachment.html>
More information about the cfe-dev
mailing list