search for: inlinealways

Displaying 10 results from an estimated 10 matches for "inlinealways".

2012 Nov 05
0
[LLVMdev] Adding function attributes
Hi Arnaldo, > I am coding a ModulePass in which I want to add an AlwaysInline attribute to > every function so that they can be later inlined by the -always-inline pass. why not just do the inlining yourself. The always inliner code is at lib/Transforms/IPO/InlineAlways.cpp, and it's pretty short. > However, the changes to the function seem to be lost after exiting my pass > because the AlwaysInline attribute is not in the output LLVM IR. > > Maybe the function iterator passed by the module object actually points to > copies of the functions?...
2010 Jul 27
2
[LLVMdev] inline callsites whose function definitions are in different file?
LLVM (2.7 release version) provides 2 implementations for inlining function callsites: - InlineSimple.cpp (-inline): inline simple callsites according to its cost analysis - InlineAlways.cpp (-always-inline): inline all callsites that are marked with "always_inline" attribute. They are both subclasses of Inline.cpp that assumes the function's definition (body) is in the same Module (file) as its callsites (that will be inlined). I am now having a situation that...
2012 Nov 05
2
[LLVMdev] Adding function attributes
Hello everyone, I am coding a ModulePass in which I want to add an AlwaysInline attribute to every function so that they can be later inlined by the -always-inline pass. However, the changes to the function seem to be lost after exiting my pass because the AlwaysInline attribute is not in the output LLVM IR. Maybe the function iterator passed by the module object actually points to copies of
2012 Nov 05
2
[LLVMdev] Adding function attributes
Hi Duncan, thanks for the quick answer. Yes I'm sure the runOnModule is being called, and when I dump the functions before exiting the method I can see the AlwaysInline attribute. I'll check InlineAlways.cpp and will reimplement as last resource but I still wonder why this is not working. On Mon, Nov 5, 2012 at 5:03 PM, Duncan Sands <baldrick at free.fr> wrote: > Hi Arnaldo, > > > I am coding a ModulePass in which I want to add an AlwaysInline attribute >> to >> ev...
2010 Jul 27
0
[LLVMdev] inline callsites whose function definitions are in different file?
...ue, Jul 27, 2010 at 7:46 AM, Chuck Zhao <czhao at eecg.toronto.edu> wrote: >  LLVM (2.7 release version) provides 2 implementations for inlining > function callsites: > > - InlineSimple.cpp (-inline):               inline simple callsites > according to its cost analysis > - InlineAlways.cpp (-always-inline):  inline all callsites that are > marked with "always_inline" attribute. > > They are both subclasses of Inline.cpp that assumes the function's > definition (body) is in the same Module (file) as its callsites (that > will be inlined). > > &gt...
2010 Oct 24
4
[LLVMdev] Inlining in LLVM
Duncan: I am only superficially familiar with LLVM structure. What I am trying to find out is if functions that have a single invocation are still found in the code during the compilation. In Open64 and other compilers, there is an early inlining pass that inlines all procedures that have a single invocation site. The reasoning is that if there is a single call to a procedure, then there is not
2010 Jul 27
2
[LLVMdev] inline callsites whose function definitions are in different file?
...AM, Chuck Zhao<czhao at eecg.toronto.edu> wrote: >> LLVM (2.7 release version) provides 2 implementations for inlining >> function callsites: >> >> - InlineSimple.cpp (-inline): inline simple callsites >> according to its cost analysis >> - InlineAlways.cpp (-always-inline): inline all callsites that are >> marked with "always_inline" attribute. >> >> They are both subclasses of Inline.cpp that assumes the function's >> definition (body) is in the same Module (file) as its callsites (that >> will be inl...
2012 Nov 05
0
[LLVMdev] Adding function attributes
Hi Arnaldo, On 05/11/12 10:02, Arnaldo wrote: > Hi Duncan, thanks for the quick answer. > > Yes I'm sure the runOnModule is being called, and when I dump the functions > before exiting the method I can see the AlwaysInline attribute. > > I'll check InlineAlways.cpp and will reimplement as last resource but I still > wonder why this is not working. if you want more help with this please provide the complete code for your pass. Ciao, Duncan. > > > On Mon, Nov 5, 2012 at 5:03 PM, Duncan Sands <baldrick at free.fr > <mailto:baldrick at...
2008 Sep 21
3
[LLVMdev] Has anyone sucessfully compile the llvm code using visual
...Cannot open include file: 'llvm/Intrinsics.gen': No such file or directory 2>MachineModuleInfo.cpp 3>c:\Documents and Settings\Administrator\llvm\include\llvm/Intrinsics.h(39) : fatal error C1083: Cannot open include file: 'llvm/Intrinsics.gen': No such file or directory 3>InlineAlways.cpp 2>c:\Documents and Settings\Administrator\llvm\include\llvm/Support/AlignOf.h(26) : warning C4624: 'llvm::AlignmentCalcImpl<T>' : destructor could not be generated because a base class destructor is inaccessible 2> with 2> [ 2> T=llvm::MachineI...
2015 Jul 29
1
[LLVMdev] Error when i am using command make -j4 command in cygwin to compile safecode
...Pseudos.cpp for Release+Asserts build llvm[3]: Compiling LoopVectorize.cpp for Release+Asserts build llvm[3]: Compiling IPO.cpp for Release+Asserts build llvm[3]: Compiling DependencyAnalysis.cpp for Release+Asserts build llvm[2]: Compiling FaultMaps.cpp for Release+Asserts build llvm[3]: Compiling InlineAlways.cpp for Release+Asserts build llvm[3]: Compiling ObjCARC.cpp for Release+Asserts build llvm[2]: Compiling GCMetadata.cpp for Release+Asserts build llvm[3]: Compiling InlineSimple.cpp for Release+Asserts build llvm[3]: Compiling ObjCARCAPElim.cpp for Release+Asserts build llvm[2]: Compiling GCMetada...