search for: inlinehint

Displaying 20 results from an estimated 85 matches for "inlinehint".

2009 Aug 26
8
[LLVMdev] inlining hint
You may have noticed I added an "inlinehint" attribute to the IR yesterday, to represent user declarations that hint inlining would be a good idea ("inline" keyword). Chris and I have been discussing how to hook it up to the C++ FE. Consider: class X { int A(int x) {....} inline int B(int x); }; inline int X::...
2010 Feb 15
0
[LLVMdev] Measurements of the new inlinehint attribute
Friday I enabled the inlinehint function attribute in the inliner. It mostly affects the performance of -Os compiled code. I have made some measurements on the SPEC test suite to show what it means. I made three runs of then nightly tests. The baseline represents -Os with no inlinehint: make TEST=nightly OPTFLAGS=-Os EXTRA_LOPT...
2015 Jun 17
2
[LLVMdev] Inline hint for methods defined in-class
Clang adds the InlineHint attribute to functions that are explicitly marked inline, but not if they are defined in the class body. I tried the following patch, which I believe handles the in-class definition case: --- a/lib/CodeGen/CodeGenFunction.cpp +++ b/lib/CodeGen/CodeGenFunction.cpp @@ -630,7 +630,7 @@ void CodeGenFu...
2015 Jun 24
4
[LLVMdev] Inline hint for methods defined in-class
...t cs.uiuc.edu] > On > >> Behalf Of Easwaran Raman > >> Sent: Wednesday, June 17, 2015 6:59 PM > >> To: llvmdev at cs.uiuc.edu > >> Cc: David Li > >> Subject: [LLVMdev] Inline hint for methods defined in-class > >> > >> Clang adds the InlineHint attribute to functions that are explicitly > marked > >> inline, but not if they are defined in the class body. I tried the > following > >> patch, which I believe handles the in-class definition > >> case: > >> > >> --- a/lib/CodeGen/CodeGenFuncti...
2015 Jun 17
2
[LLVMdev] Inline hint for methods defined in-class
...> From: llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu] On > Behalf Of Easwaran Raman > Sent: Wednesday, June 17, 2015 6:59 PM > To: llvmdev at cs.uiuc.edu > Cc: David Li > Subject: [LLVMdev] Inline hint for methods defined in-class > > Clang adds the InlineHint attribute to functions that are explicitly marked > inline, but not if they are defined in the class body. I tried the following > patch, which I believe handles the in-class definition > case: > > --- a/lib/CodeGen/CodeGenFunction.cpp > +++ b/lib/CodeGen/CodeGenFunction.cpp >...
2015 Jun 24
6
[LLVMdev] Inline hint for methods defined in-class
...y the C++ standard > describes 'inline' it is effectively noise in that situation. The reason I started looking into this is that, for a suite of benchmarks we use internally, treating the in-class definitions equivalent to having an 'inline' keyword, when combined with a higher inlinehint-threshold, is a measurable win in performance. I am not making any claim that this is a universal truth, but intuitively, the description of 'inline' in C++ standard seems to influence what methods are defined in-class. - Easwaran > --paulr > >> >> Thanks, >> Easwa...
2015 Jun 24
4
[LLVMdev] Inline hint for methods defined in-class
...n Raman >> > >> Sent: Wednesday, June 17, 2015 6:59 PM >> > >> To: llvmdev at cs.uiuc.edu >> > >> Cc: David Li >> > >> Subject: [LLVMdev] Inline hint for methods defined in-class >> > >> >> > >> Clang adds the InlineHint attribute to functions that are explicitly >> > marked >> > >> inline, but not if they are defined in the class body. I tried the >> > following >> > >> patch, which I believe handles the in-class definition >> > >> case: >> >...
2009 Aug 26
0
[LLVMdev] inlining hint
On Wed, Aug 26, 2009 at 10:59 AM, Dale Johannesen<dalej at apple.com> wrote: > You may have noticed I added an "inlinehint" attribute to the IR > yesterday, to represent user declarations that hint inlining would be > a good idea ("inline" keyword).  Chris and I have been discussing how > to hook it up to the C++ FE.  Consider: > > class X { >    int A(int x) {....} >    inline int B...
2009 Aug 26
2
[LLVMdev] inlining hint
On Aug 26, 2009, at 11:54 AMPDT, Devang Patel wrote: > On Wed, Aug 26, 2009 at 10:59 AM, Dale Johannesen<dalej at apple.com> > wrote: >> You may have noticed I added an "inlinehint" attribute to the IR >> yesterday, to represent user declarations that hint inlining would be >> a good idea ("inline" keyword). Chris and I have been discussing how >> to hook it up to the C++ FE. Consider: >> >> class X { >> int A(int x) {.....
2015 Jun 24
3
[LLVMdev] Inline hint for methods defined in-class
...e' it is effectively noise in that situation. >> >> The reason I started looking into this is that, for a suite of >> benchmarks we use internally, treating the in-class definitions >> equivalent to having an 'inline' keyword, when combined with a higher >> inlinehint-threshold, is a measurable win in performance. I am not >> making any claim that this is a universal truth, but intuitively, the >> description of 'inline' in C++ standard seems to influence what >> methods are defined in-class. > > > I'm not sure that's t...
2015 Jun 24
2
[LLVMdev] Inline hint for methods defined in-class
...e' it is effectively noise in that situation. >> >> The reason I started looking into this is that, for a suite of >> benchmarks we use internally, treating the in-class definitions >> equivalent to having an 'inline' keyword, when combined with a higher >> inlinehint-threshold, is a measurable win in performance. I am not >> making any claim that this is a universal truth, but intuitively, the >> description of 'inline' in C++ standard seems to influence what >> methods are defined in-class. > > > I'm not sure that's t...
2009 Aug 26
0
[LLVMdev] inlining hint
On Wed, Aug 26, 2009 at 1:09 PM, Chris Lattner<clattner at apple.com> wrote: > I know/hope that the proposal isn't for the inlinehint to be a synonym for > "force inline", it would just raise the threshold to increase the likeliness > that it would be inlined. One alternative is to give the functions with hint first chance but not change the threshold. Inliner works in two phase. In first phase, only use function...
2015 Jul 07
6
[LLVMdev] Inline hint for methods defined in-class
...so collected numbers building chrome (from chromium, on Linux) with and without this patch as suggested by David. I've re-posted the proposed patch and performance/size numbers collected at the top to make it easily readable for those reading it through cfe-commits. The proposed patch will add InlineHint to methods defined inside a class: --- a/lib/CodeGen/CodeGenFunction.cpp +++ b/lib/CodeGen/CodeGenFunction.cpp @@ -630,7 +630,7 @@ void CodeGenFunction::StartFunction(GlobalDecl GD, if (const FunctionDecl *FD = dyn_cast_or_null<FunctionDecl>(D)) { if (!CGM.getCodeGenOpts().NoInline)...
2015 Jun 24
2
[LLVMdev] Inline hint for methods defined in-class
...y, June 17, 2015 6:59 PM >> >> > >> To: llvmdev at cs.uiuc.edu >> >> > >> Cc: David Li >> >> > >> Subject: [LLVMdev] Inline hint for methods defined in-class >> >> > >> >> >> > >> Clang adds the InlineHint attribute to functions that are >> explicitly >> >> > marked >> >> > >> inline, but not if they are defined in the class body. I tried the >> >> > following >> >> > >> patch, which I believe handles the in-class definitio...
2009 Aug 26
7
[LLVMdev] inlining hint
On Aug 26, 2009, at 12:01 PM, Devang Patel wrote: >>> I do not understand how the "inlinehint" will help. How will it >>> influence the inliner ? >> >> The hint should make it more attractive to inline. I don't know >> the details >> yet and they will require some experimenting. >> > > In that case you want to add hint to A also. AFA...
2009 Aug 26
0
[LLVMdev] inlining hint
...Aug 26, 2009 at 11:58 AM, Dale Johannesen<dalej at apple.com> wrote: > > On Aug 26, 2009, at 11:54 AMPDT, Devang Patel wrote: > >> On Wed, Aug 26, 2009 at 10:59 AM, Dale Johannesen<dalej at apple.com> wrote: >>> >>> You may have noticed I added an "inlinehint" attribute to the IR >>> yesterday, to represent user declarations that hint inlining would be >>> a good idea ("inline" keyword).  Chris and I have been discussing how >>> to hook it up to the C++ FE.  Consider: >>> >>> class X { >>...
2015 Jun 24
3
[LLVMdev] Inline hint for methods defined in-class
...t;> > >> To: llvmdev at cs.uiuc.edu >> >> >> > >> Cc: David Li >> >> >> > >> Subject: [LLVMdev] Inline hint for methods defined in-class >> >> >> > >> >> >> >> > >> Clang adds the InlineHint attribute to functions that are >> >> explicitly >> >> >> > marked >> >> >> > >> inline, but not if they are defined in the class body. I tried >> the >> >> >> > following >> >> >> > >>...
2015 May 15
2
[LLVMdev] RFC: ThinLTO Impementation Plan
...;available-externally.c' target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128" target triple = "x86_64-apple-macosx10.10.0" ; Function Attrs: nounwind readnone ssp uwtable define i32 @bar(i32 %i) #0 { %1 = tail call i32 @foo(i32 %i) ret i32 %1 } ; Function Attrs: inlinehint nounwind readnone ssp uwtable define available_externally i32 @foo(i32 %i) #1 { ret i32 %i } attributes #0 = { nounwind readnone ssp uwtable "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-inf...
2013 Jun 17
2
[LLVMdev] [cfe-dev] [RFC] add Function Attribute to disable optimization
...ith the rest of the community to > share opinions and have feedback on this. > > =================================================== > Interactions with the existing function attributes: > > LLVM allows to decorate functions with 'noinline', alwaysinline' and > 'inlinehint'. We think that it makes sense for 'optnone' to implicitly > imply 'noinline' (at least from a user's point of view) and therefore > 'optnone' should be considered incompatible with 'alwaysinline' and > 'inlinehint'. > > Example: >...
2013 Jun 17
0
[LLVMdev] [RFC] add Function Attribute to disable optimization
...ith the rest of the community to > share opinions and have feedback on this. > > =================================================== > Interactions with the existing function attributes: > > LLVM allows to decorate functions with 'noinline', alwaysinline' and > 'inlinehint'. We think that it makes sense for 'optnone' to implicitly > imply 'noinline' (at least from a user's point of view) and therefore > 'optnone' should be considered incompatible with 'alwaysinline' and > 'inlinehint'. > > Example: >...