Displaying 20 results from an estimated 27 matches for "irunitts".
Did you mean:
irunitt
2019 Jul 22
2
Run llvm pass from standalone project
Hi all,
I am trying to use LLVM's AliasAnalysis pass, but from a standalone tool
that uses llvm libraries.
The following is the code snippet I am currently using.
PassBuilder PB;
auto mod_manager = ModuleAnalysisManager { };
PB.registerModuleAnalyses(mod_manager);
AAResults& AAR = mod_manager.getResult<AAManager>(*M);
But the code fails at .getResult with the following error:
2018 Aug 21
2
Function optimization pass
Hi Philip,
Thanks for the response. Under llvm-5.0.2 and llvm-6.0.1 in Debug mode, the
crash hit at the same assertion:
/usr/local/include/llvm/IR/PassManager.h:689: typename PassT::Result&
llvm::AnalysisManager<IRUnitT, ExtraArgTs>::getResult(IRUnitT&, ExtraArgTs
...) [with PassT =
llvm::InnerAnalysisManagerProxy<llvm::AnalysisManager<llvm::Loop,
2016 Jul 27
0
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
Okay, did the big renaming and de-templating today (and removing the
proxies).
check-llvm worked fine, except that this test caught a bug (yay!):
unittests/IR/PassManagerTest.cpp:326
After removing the proxies, the module pass is not invalidating the
function passes (since the invalidation is on the module IRUnit). we now
don't have a method for delegating the invalidation from outer
2016 Jul 26
3
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
I'm not quite sure what post to respond to for a status update, but I guess
this one will do (and you can check my log for more info of course).
My current working branch for the analysis manager stuff is at
https://github.com/chisophugis/llvm/commits/analysis-manager
(4ecf6115890bd01caa52c0b99424974e3469291e)
I described in my log a bit more my thought process and how to do this
without
2016 Jul 29
1
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
I have the unified analysis manager implemented now and passing all tests
at: https://github.com/chisophugis/llvm/commits/analysis-manager
One caveat:
It would be a layering violation for the analysis manager to know about
Loop and SCC since those live in libAnalysis. So currently I have some
stuff commented out for imitating the proxy downward invalidation for them.
(and generally the proxy
2016 Jun 05
2
Migration help required for 3.3 to 3.8
I'm migrating from 3.3 to 3.8 and am having a few problems.
`CreateStructGEP` requires a type parameter now. I'm not sure what type it's expecting, so I converted `CreateStructGEP( valuePtr, index )` to `CreateStructGEP( valuePtr->getType(), valuePtr, index )`... would that be correct?
`arg_iterator` no longer converst to Value*, I have a lot of this now:
&*(args++)
This
2016 Jul 13
2
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
...use we could make the analysis reacquire the
>> pointer at the start of every query. Holding SCEV* is the problem.
>>
>
> Looks like SCEV* at least is held only by LoopAccessInfo. (Looks like LAA
> holds Loop* too)
>
Note that Loop (and SCC) are somewhat special as they are IRUnitTs and
might as a consequence be more reasonable to hold on to and expect
definitive invalidation to occur. But I say "might". I think this will be
case-by-case depending on how they're being used.
> New updated rendering at http://reviews.llvm.org/F2161258
> (DependenceAnalysis...
2016 Jul 13
3
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
...ntal problem because we could make the analysis reacquire the pointer at the start of every query. Holding SCEV* is the problem.
>
> Looks like SCEV* at least is held only by LoopAccessInfo. (Looks like LAA holds Loop* too)
>
> Note that Loop (and SCC) are somewhat special as they are IRUnitTs and might as a consequence be more reasonable to hold on to and expect definitive invalidation to occur. But I say "might". I think this will be case-by-case depending on how they're being used.
>
> New updated rendering at http://reviews.llvm.org/F2161258 <http://reviews.l...
2016 Jul 22
4
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
The more closely I look at this, the more it seems like there may be a
useful incremental step in the transition to the new PM: use the new PM
analysis machinery in the old PM. If this is possible, it will simplify the
old PM and (hopefully) allow an incremental transition to the new PM
instead of a flag day transition for the switch.
I.e., AFAICT, the new PM transition is essentially about 2
2016 Jul 25
3
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
Sent from my Verizon Wireless 4G LTE DROID
On Jul 25, 2016 6:16 PM, Sean Silva <chisophugis at gmail.com<mailto:chisophugis at gmail.com>> wrote:
>
>
>
> On Mon, Jul 25, 2016 at 9:27 AM, Hal Finkel <hfinkel at anl.gov<mailto:hfinkel at anl.gov>> wrote:
>>
>>
>> ________________________________
>>>
>>> From: "Sean
2018 Aug 20
2
Function optimization pass
This question has been submitted to stackoverflow
(https://stackoverflow.com/questions/51934964/function-optimization-pass)
but someone suggested me that it should be submitted to llvm-dev mailing
list instead. I'm sorry for the duplication.
I am trying to use PassBulider and FunctionPassManager || to optimize a
function in a module, what I have done is:
mod = ...load module from LLVM
2016 Jul 14
4
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
On Wed, Jul 13, 2016 at 1:48 AM, Sean Silva <chisophugis at gmail.com> wrote:
>
>
> On Wed, Jul 13, 2016 at 12:34 AM, Chandler Carruth <chandlerc at gmail.com>
> wrote:
>
>> On Wed, Jul 13, 2016 at 12:25 AM Sean Silva <chisophugis at gmail.com>
>> wrote:
>>
>>> On Tue, Jul 12, 2016 at 11:39 PM, Chandler Carruth <chandlerc at
2016 Jul 16
3
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
On Fri, Jul 15, 2016 at 8:39 PM, Sean Silva <chisophugis at gmail.com> wrote:
> It looks like there is really no sane fix within the current
> infrastructure. I've had to essentially trigger invalidation (except in the
> PreservedAnalyses::all() case) in the function pass manager and function to
> loop adapters.
>
invalidation of *everything* I mean.
-- Sean Silva
2016 Jul 26
2
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
On Mon, Jul 25, 2016 at 3:48 PM, Chandler Carruth <chandlerc at google.com>
wrote:
> On Mon, Jul 25, 2016 at 3:40 PM Finkel, Hal J. via llvm-dev <
> llvm-dev at lists.llvm.org> wrote:
>
>> *Sent from my Verizon Wireless 4G LTE DROID*
>>
>> On Jul 25, 2016 6:16 PM, Sean Silva <chisophugis at gmail.com> wrote:
>> >
>> >
>> >
2016 Jul 25
2
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
----- Original Message -----
> From: "Sean Silva" <chisophugis at gmail.com>
> To: "Chandler Carruth" <chandlerc at gmail.com>
> Cc: "Xinliang David Li" <davidxl at google.com>, "llvm-dev"
> <llvm-dev at lists.llvm.org>, "Davide Italiano"
> <dccitaliano at gmail.com>, "Tim Amini Golling"
>
2016 Jul 15
2
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
----- Original Message -----
> From: "Sean Silva" <chisophugis at gmail.com>
> To: "Hal Finkel" <hfinkel at anl.gov>
> Cc: "Xinliang David Li" <davidxl at google.com>, "llvm-dev"
> <llvm-dev at lists.llvm.org>, "Davide Italiano"
> <dccitaliano at gmail.com>, "Tim Amini Golling"
>
2016 Jul 15
5
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
Hi Sean,
Thanks for writing all of this up. I'll go back to my previous position: we need a general dependency graph built as the analysis cache is used. It should have the following properties:
1. When we call getResult or getCachedResult on an analysis manager, we record a dependency of the current pass on the returned result.
2. This dependency needs to be stored such that it can be
2016 Jul 15
4
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
We need better terminology to talk about this. I propose:
analysis-dependencies: analysis A uses result of analysis B when *running*
an analysis and not used by the result
query-dependencies: result of analysis A uses result of analysis B when
evaluating a query
data-structure-depnedencies: result of analysis A uses data structures from
the result of analysis B inside its own data structures
I
2016 Aug 08
2
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
On Sun, Aug 7, 2016 at 4:55 PM, Philip Reames <listmail at philipreames.com>
wrote:
> Skimming the thread, this post is the clearest path forward I've seen.
> Minor comments inline, but I generally like this framing.
>
> On 07/14/2016 08:04 PM, Chandler Carruth via llvm-dev wrote:
>
> We need better terminology to talk about this. I propose:
>
>
2016 Jul 15
2
[PM] I think that the new PM needs to learn about inter-analysis dependencies...
----- Original Message -----
> From: "Mehdi Amini" <mehdi.amini at apple.com>
> To: "Hal Finkel" <hfinkel at anl.gov>
> Cc: "Sean Silva" <chisophugis at gmail.com>, "Xinliang David Li"
> <davidxl at google.com>, "llvm-dev" <llvm-dev at lists.llvm.org>, "Davide
> Italiano" <dccitaliano at