similar to: Inliner in legacy pass manager

Displaying 20 results from an estimated 2000 matches similar to: "Inliner in legacy pass manager"

2020 Nov 10
1
Inliner in legacy pass manager
Hi, So, does this mean that in legacy pass manager, when I run: PM.add( someFunctionPass() ) // PM is modulePassManager it creates FunctionPassManager, runs the function pass,destroys the functionPassManager and returns control to modulePassManager? Also, you have said that this wasn't the primary reason for the introduction of the new pass manager. But then is this one of the reasons?
2020 Nov 09
0
Inliner in legacy pass manager
In the old pass manager a coarser-grain pass cannot depend on a fine-grain pass (or analysis). In this case, the coarser-grain is the Inliner (CallGraphSCCPass) and the finer a FunctionPass. The reason is that the finer-grain pass has its own "pass manager", i.e. it runs all the passes and analysis (in that pass manager) on one function, frees them, and continues with the next function
2006 Jan 10
3
[LLVMdev] passmanager, significant rework idea...
The patch below basically hammers out some ideas as to where I'd like to take the passmanager in LLVM. I've tried thinking things through, but I'm still a n00b, so some criticism would be more than welcome. =) Starting from line 191 down. If you're wondering why I created a patch, well that's because I found thinking in passmanagert.h the most productive. -- Regards.
2018 Jul 21
2
Registering passes on a module
Hi all, I'm trying to build passes with the PassBuilder to optimize the result of MCJIT (I assume, this is a requirement for performance). So I do this: llvm::PassBuilder passBuilder; llvm::ModulePassManager modulePassManager = passBuilder.buildPerModuleDefaultPipeline(llvm::PassBuilder::OptimizationLevel::O3); llvm::ModuleAnalysisManager moduleAnalysisManager;
2006 Mar 22
3
Something wrong with content_columns
I have a database with a couple of tables. One table called spares has foreign keys in another called equipment. When I create a new record, it is added to the spares table however the list action does not show all the columns in the table. It only shows those columns that are not foreign keys. I am using the default action generated by scaffold for list. Why is that so? Do i need to re-write my
2016 May 10
2
Some questions about phase ordering in OPT and LLC
> >> You can look at AddOptimizationPasses() in opt.cpp. > > > > As far as I understand, the two passmanager do not interleave their > > passes. It first runs all the function passes and below. Then all the > > module passes. So if you specify: > > > > opt -mymodulepass0 -myfunctionpass -mymodulepass1 > > > > What you actually get is:
2015 Jan 17
3
[LLVMdev] loop multiversioning
Does LLVM have loop multiversioning ? it seems it does not with clang++ -O3 -mllvm -debug-pass=Arguments program.c -c bash-4.1$ clang++ -O3 -mllvm -debug-pass=Arguments fast_algorithms.c -c clang-3.6: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated Pass Arguments: -datalayout -notti -basictti -x86tti -targetlibinfo -no-aa -tbaa -scoped-noalias
2015 May 11
2
[LLVMdev] about MemoryDependenceAnalysis usage
add -basicaa to your command line :) On Mon, May 11, 2015 at 7:15 AM, Willy WOLFF <willy.mh.wolff at gmail.com> wrote: > I play a bit more with MemoryDependenceAnalysis by wrapping my pass, and > call explicitely BasicAliasAnalysis. Its still using No Alias Analysis. > > How can I let MemoryDependenceAnalysis use BasicAliasAnalysis? > > Please, find attached my pass. >
2016 May 09
4
Some questions about phase ordering in OPT and LLC
Hi, I'm a PhD student doing phase ordering as part of my PhD topic and I would like to ask some questions about LLVM. Executing the following command to see what passes does OPT execute when targeting a SPARC V8 processor: /opt/clang+llvm-3.7.1-x86_64-linux-gnu-ubuntu-15.10/bin/llvm-as < /dev/null | /opt/clang+llvm-3.7.1-x86_64-linux-gnu-ubuntu-15.10/bin/opt -O3 -march=sparc -mcpu=v8
2007 Dec 08
0
[LLVMdev] Reproducing output of llvm-gcc using opt tool
On Dec 7, 2007, at 1:43 AM, Wojciech Matyjewicz wrote: > Recently, I was looking into the bug #1227. I wanted to check if > reordering optimization passes could solve it. To start with, I > tried to > reproduce the output of llvm-g++ -O3 using the combination of llvm-g++ > -O0 and opt with the appropriate passes. However, I was unable to. I > use > SVN versions of llvm and
2015 May 09
2
[LLVMdev] about MemoryDependenceAnalysis usage
Hi, I try to use MemoryDependenceAnalysis in a pass to analyse a simple function: void fct (int *restrict*restrict M, int *restrict*restrict L) { S1: M[1][1] = 1; S2: L[2][2] = 2; } When I iterate over MemoryDependenceAnalysis on the S2 statement, I get the load instruction for the first depth of the array, that’s ok. But I get also the load and store for the S1 statement. I assume the
2017 Jun 13
9
RFC: Dynamic dominators
Hi folks, This summer I'm working on improving dominators during my internship at Google. Below is an RFC on switching to dynamic dominators, which you can also read as a Google Doc <https://docs.google.com/document/d/1wPYeWykeO51YDPLYQEg4KNTlDIGIdyF65OTfhSMaNHQ/edit?usp=sharing> if you prefer so. Please let us know what you think. ~Kuba
2016 May 09
2
Some questions about phase ordering in OPT and LLC
On Mon, May 09, 2016 at 01:07:07PM -0700, Mehdi Amini via llvm-dev wrote: > > > On May 9, 2016, at 10:43 AM, Ricardo Nobre via llvm-dev <llvm-dev at lists.llvm.org> wrote: > > > > Hi, > > > > I'm a PhD student doing phase ordering as part of my PhD topic and I would like to ask some questions about LLVM. > > > > Executing the following
2007 Dec 07
3
[LLVMdev] Reproducing output of llvm-gcc using opt tool
Hi, Recently, I was looking into the bug #1227. I wanted to check if reordering optimization passes could solve it. To start with, I tried to reproduce the output of llvm-g++ -O3 using the combination of llvm-g++ -O0 and opt with the appropriate passes. However, I was unable to. I use SVN versions of llvm and llvm-gcc-4.2. First, I compile example.cpp (attached; taken from the bug #1227) with: $
2018 Mar 12
2
[GSOC 2018] Implement a single updater class for Dominators
Hi Kuba, Thanks for your advice in your previous letter. During last week, I have read the documents on Doxygen and the source code of the DomTreeBase/DomTree/PostDomTree/DeferredDominance class, I believe now I have a much better understanding on the relationship between these classes and how DeferredDominance class performs lazy updates. I have also learnt the current usage and drawbacks of
2018 Mar 21
2
[GSOC 2018] Implement a single updater class for Dominators
Hi Kuba, Thanks for your clarification on the project in the previous letter. I have submitted a proposal draft at the GSoC website, the draft has been shared with the LLVM organization. I will appreciate it if you can give me some advice on the proposal. This draft can be viewed by the organization. (If you do not have access, please mail me, and I will give you the link.) I am looking forward
2015 Mar 12
3
[LLVMdev] Question about shouldMergeGEPs in InstructionCombining
I think it would make sense for (1) and (2). I am not sure if (3) is feasible in instcombine. (I am not too familiar with LoopInfo) For the Octasic's Opus platform, I modified shouldMergeGEPs in our fork to: if (GEP.hasAllZeroIndices() && !Src.hasAllZeroIndices() && !Src.hasOneUse()) return false; return Src.hasAllConstantIndices(); // was return false;
2013 Aug 19
1
[LLVMdev] How to disbale loop-rotate in opt -O3 ?
Hello, I am trying to simplify the CFG of a given code and eliminate the conditionals, even though I will obtain codes that are not semantically equivalent. For example, given a simple loop: for(i=0; i<N; i++){    a[i] = i;     if (i%2==0)       a[i] += 12; } I would keep only the loop, without the if statement: for(i=0; i<N; i++){    a[i] = i; } I can eliminate such conditionals on
2006 Apr 13
1
[LLVMdev] standalone llvm
On Wed, 12 Apr 2006 22:48:16 -0500 Patrick Meredith <pmeredit at uiuc.edu> wrote: > > On Apr 12, 2006, at 10:23 PM, Simon Burton wrote: > > > > > Is it possible to get llvm to generate native machine code > > without using gcc and friends ? Do I use lli ? > > llc. llc --help lists all the options. it compiles llvm bytecode > files. It seems this
2015 May 02
5
[LLVMdev] Modifying LoopUnrollingPass
Hi Zhoulai, I am trying to modify "LoopUnrollPass" in llvm which produces multiple copies of loop equal to the loop unroll factor.Currently, using multicore architecture, say 3 for example and the execution goes like: for 3 cores if there are 9 iterations of loop core instruction 1 0,3,6 2 1,4,7 3 2,5,8 But I want to to