search for: funcattr

Displaying 7 results from an estimated 7 matches for "funcattr".

Did you mean: funcattrs
2015 Mar 24
2
[LLVMdev] Propagate clang attribute to IR
...your answer... I tried that without any luck: static void handleOBF(Sema &S, Decl *D, const AttributeList &Attr) { D->addAttr(::new (S.Context)NoFLAAttr(Attr.getRange(), S.Context, Attr.getAttributeSpellingListIndex())); // ??????????? llvm::AttrBuilder FuncAttrs; FuncAttrs.addAttribute(); } In CodeGenModule::ConstructAttributeList it uses a AttrBuilder, I tried there to add a random attribute and it works. But I’m not understanding how to do that in SemaDeclAttr.cpp. Cheers
2013 Apr 08
0
[LLVMdev] Inaccurate comment in LLParser: "align 2" is a synonym for "alignstack 2"?
...// 2". in "lib/AsmParser/LLParser.cpp" appears inaccurate, the "alignment" is later parsed as the alignment of the function itself, both when directly placed on the function: 02975 // If the alignment was parsed as an attribute, move to the alignment field. 02976 if (FuncAttrs.hasAlignmentAttr()) { 02977 Alignment = FuncAttrs.getAlignment(); 02978 FuncAttrs.removeAttribute(Attribute::Alignment); 02979 } and through an attribute group: 00088 // If the alignment was parsed as an attribute, move to the alignment 00089 // field. 00090 if (FnAtt...
2019 Jan 04
2
[RFC] Adding a -memeq-lib-function flag to allow the user to specify a memeq function.
Thanks for the suggestions Hal, So if I understand correctly, you're recommending we add a module flag <https://llvm.org/docs/LangRef.html#module-flags-metadata> to LLVM, something like: !llvm.module.flags = !{..., !123} !123 = !{i32 1, !"memeq_lib_function", !"user_memeq"} I've given it a try in the following patch: https://reviews.llvm.org/D56311 If this
2015 Mar 24
2
[LLVMdev] Propagate clang attribute to IR
Hi, I want to *tag* some functions with some *flags*. I was using annotate((“myFlag”)) and everything was working fine until I tried on ObjC method. It seems that clang just ignore it. So, to be able to *flag* my functions I’m trying to add a *real* attribute to clang. I’ve added a new attribute to clang in tools/clang/include/clang/Basic/Attr.td: def NoFLA : Attr { let Spellings =
2016 Mar 11
3
RFC: A new ABI for virtual calls, and a change to the virtual call representation in the IR
> On Mar 7, 2016, at 4:22 PM, Peter Collingbourne <peter at pcc.me.uk> wrote: > On Mon, Mar 7, 2016 at 4:09 PM, John McCall <rjmccall at apple.com <mailto:rjmccall at apple.com>> wrote: >> On Mar 4, 2016, at 2:48 PM, Peter Collingbourne via llvm-dev <llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>> wrote: >> On Mon, Feb 29, 2016 at
2016 Mar 11
4
RFC: A new ABI for virtual calls, and a change to the virtual call representation in the IR
...org <mailto:llvm-dev at lists.llvm.org>> wrote: > I mean, I’ve never really liked ELF’s stance on symbol interposition, but taking it as given, I’m not sure I agree that it’s reasonable to carve out virtual functions as a general exception. > > Given that LLVM does IPO (inlining, funcattrs) on symbols that can be interposed on ELF, we already don't support interposability very well: > https://llvm.org/bugs/show_bug.cgi?id=23501 <https://llvm.org/bugs/show_bug.cgi?id=23501> > > Adding another exception for virtual functions, especially under an off-by-default flag...
2015 Jan 27
7
[LLVMdev] Embedding cpu and feature strings into IR and enabling switching subtarget on a per function basis
I've been investigating what is needed to ensure command line options are passed to the backend codegen passes during LTO and enable compiling different functions in a module with different command line options (see the links below for previous discussions). http://thread.gmane.org/gmane.comp.compilers.llvm.devel/78855 http://thread.gmane.org/gmane.comp.compilers.llvm.devel/80456 The command