search for: __builtin_compute

Displaying 4 results from an estimated 4 matches for "__builtin_compute".

2018 Apr 23
2
Conditional analysis before inliner
Thanks for the answer Eli. I think I was a little too vague in my question. The program has the following structure: void foo() { bar(); } void bar() { for (..) { __builtin_compute() } } We would like to use scalar evolution + loopinfowrapperpass inside instcombine only if __builtin_compute is present. instcombine can convert the loop into a single builtin ie. void bar() { __builtin_wide_compute(); } When the inliner runs on foo(), we want bar() to already have the tra...
2018 Apr 20
0
Conditional analysis before inliner
On 4/19/2018 1:57 PM, Anom LLVM via llvm-dev wrote: > Hi, > > I have pass phase ordering question. > > I am interested in performing a transformation that matches several > LLVM IR instructions and converts them to a single builtin. This sort > of transformation must occur prior to inlining because inlining needs > to analyze cost of the builtin. However, the LLVM IR
2018 Apr 23
0
Conditional analysis before inliner
...ike LoopIdiomRecognize. -Eli On 4/23/2018 3:37 PM, Anom LLVM wrote: > Thanks for the answer Eli. > > I think I was a little too vague in my question. The program has the > following structure: > void foo() { >   bar(); > } > > void bar() { >   for (..) { >        __builtin_compute() >   } > } > > We would like to use scalar evolution + loopinfowrapperpass inside > instcombine only if __builtin_compute is present. instcombine can > convert the loop into a single builtin ie. > > void bar() { >   __builtin_wide_compute(); > } > > When the i...
2018 Apr 19
2
Conditional analysis before inliner
Hi, I have pass phase ordering question. I am interested in performing a transformation that matches several LLVM IR instructions and converts them to a single builtin. This sort of transformation must occur prior to inlining because inlining needs to analyze cost of the builtin. However, the LLVM IR -> builtin transformation requires scalar evolution which typically doesn't run until