Displaying 20 results from an estimated 3000 matches similar to: "[LLVMdev] Dependency graphs supported by the pass manager"
2009 Jan 16
1
[LLVMdev] poolallocation error
Hi all,
I too am getting this error for x86_64 when I am trying to use the
Data Structure Analysis ...I svn upped both the llvm main branch and
the poolalloc today in the morning and recompiled everything from
scratch :
$ opt -load /home/pprabhu/llvm/llvm-install-x86-64/lib/libpoolalloc.so
-ds-aa < o.bc
opt: /home/pprabhu/llvm/llvm/lib/VMCore/PassManager.cpp:1418: virtual
void
2009 Mar 09
1
[LLVMdev] Patch: PassManager should call add() instead of addLowerLevelRequiredPass()
Hello,
LLVM asserts in the following scenario. Say there are three passes:
A, B, C. C requires A and B; B requires A; and B does not preserve A.
A valid pass ordering would be A B A C. However, opt gives the
following assertion:
$ opt -load libPassTest.so foo.bc -f -o /dev/null -c -debug-pass=Structure
opt: /u/loc/kevin/llvm/llvm/lib/VMCore/PassManager.cpp:1424: virtual
void
2008 Jun 02
2
[LLVMdev] want to use CallGraph Pass in llc
Hi all,
the CallGraph pass is only available in opt. Is there any substantial reason
for that? Or is it only because it seems not to be useful for llc?
I want to use it in an backend that is derived from the CBackend. I need the
information what functions are called in every other function to build
communication struktures between the functions. The backend is generating
VHDL from C code.
2008 Nov 19
2
[LLVMdev] poolallocation error
Hi,
I am trying to use the poolallocator. More specific, I am trying to
play around with the pointer compression pass. Though, I get assertion
failures for the pass dependencies.
This is when it in PointerCompress::getAnalysisUsage tries to register
the the BU pass as required. I.e. when
AU.addRequired<CompleteBUDataStructures>(); is called.
$ opt -f -load
2009 Jan 19
0
[LLVMdev] poolallocation error
Dear Prakash,
Yes, DSA is still in active use, although nobody else uses the -ds-aa pass as far as I know.
I tried the below sample (although ds-aa should be in libLLVMDataStructure.so and not libpoolalloc.so), and I get the same error. I've seen similar problems with other passes in our work here. My guess is that -ds-aa is requiring two passes that claim to invalidate each other; this
2009 Jan 21
1
[LLVMdev] poolallocation error
Dear Prakash,
I believe I've fixed the problem you were having with ds-aa. Please
update your poolalloc tree, recompile, and let me know if it works.
-- John T.
Criswell, John T wrote:
> [snip]
>
> ________________________________________
> From: llvmdev-bounces at cs.uiuc.edu [llvmdev-bounces at cs.uiuc.edu] On Behalf Of Prakash Prabhu [prakash.prabhu at gmail.com]
> Sent:
2020 Jan 07
2
Let CallGraphSCCPass Use Function-Level Analysis
Dear all,
I would like to use the PostDominatorTree in ArgPromotion. I did not find an example of how to use function level analysis inside CallGraphSCCPass. I tried to follow an example of how to use function-level pass in a module pass, but I hit "llvm_unreachable" in PMDataManager::addLowerLevelRequiredPass.
What would be a proper way to make PostDominatorTree available in
2016 Mar 21
2
[Inliner] Loop info in the inliner
Hi,It seems inliner does not take into account if a call is inside a loop. I'm trying to figure out if loop-info can be made available to the inliner.
When I try to add LoopInfoWrapperPass to Inliner.cpp,
diff --git a/llvm/lib/Transforms/IPO/Inliner.cpp b/llvm/lib/Transforms/IPO/Inliner.cppindex 568707d..cb51ea8 100644--- a/llvm/lib/Transforms/IPO/Inliner.cpp+++
2007 Jul 25
2
[LLVMdev] PassManager Error
Can anyone explain what this means?
llvm/include/llvm/PassManagers.h:232: virtual void
llvm::PMDataManager::addLowerLevelRequiredPass(llvm::Pass*, llvm::Pass*):
Assertion `0 && "Unable to handle Pass that requires lower level Analysis
pass"' failed.
-Dave
2008 Jan 29
3
[LLVMdev] PassManager Mysteries
I've never been able to figure this one out:
llvm/lib/VMCore/PassManager.cpp:938: virtual void
llvm::PMDataManager::addLowerLevelRequiredPass(llvm::Pass*, llvm::Pass*):
Assertion `0 && "Unable to handle Pass that requires lower level Analysis
pass"' failed.
In the past, I've resolved this by disabling random addRequired calls in the
offending Pass, even when
2016 Mar 22
0
[Inliner] Loop info in the inliner
FYI - There is currently an architectural issue which prevents the SCC
pass manager (which runs the inliner) from relying on Function or Loop
analysis passes. This is the primary motivation of the pass manager
rewrite that Chandler Carruth has been working on for the last two
years. He's getting relatively close to that project being done, but
until then you are going to be effectively
2010 Apr 13
2
[LLVMdev] The "scope" of passes
hi again :)
On Tue, Apr 13, 2010 at 8:57 AM, ether zhhb <etherzhhb at gmail.com> wrote:
> hi john,
>
> thanks very much, i will try it out.
>
> --best regards
> ether
>
>
> On Mon, Apr 12, 2010 at 10:03 PM, John Criswell <criswell at uiuc.edu> wrote:
>
>> ether zhhb wrote:
>>
>>> hi all,
>>>
>>> i have some thing
2011 May 03
4
[LLVMdev] 2.9 segfault when requesting for both LoopInfo and DominatorTree analyses.
When migrating my project to 2.9, I've encountered a strange segfault
where if a ModulePass's getAnalysisUsage adds LoopInfo and
DominatorTree, then llvm::PMTopLevelManager::findAnalysisUsage will
segfault. What's odd is that if I rearrange this (add required for
DominatorTree before LoopInfo), it does not segfault. I realize that
LoopInfo requires and preserves DominatorTree, but this
2010 Apr 13
0
[LLVMdev] The "scope" of passes
On Mon, Apr 12, 2010 at 6:41 PM, ether zhhb <etherzhhb at gmail.com> wrote:
> that's because FunctionPass implement the "addLowerLevelRequiredPass"
> function, but others not.
>
> so, is there any special reason that only "addLowerLevelRequiredPass" is
> allow?
>
There is no reason to not allow it. It is not done because there was
not any use. If
2010 Apr 13
2
[LLVMdev] The "scope" of passes
Devang Patel wrote:
> On Mon, Apr 12, 2010 at 6:41 PM, ether zhhb <etherzhhb at gmail.com> wrote:
>
>
>> that's because FunctionPass implement the "addLowerLevelRequiredPass"
>> function, but others not.
>>
>> so, is there any special reason that only "addLowerLevelRequiredPass" is
>> allow?
>>
>>
>
>
2020 Jan 07
2
Let CallGraphSCCPass Use Function-Level Analysis
Hi Mikhail,
As Brian noted, stuff like this works better in the new pass manager.
Even in the old pass manager I thought it should work though.
Did you initialize the pass, via
`INITIALIZE_PASS_DEPENDENCY(PostDominatorTreeWrapperPass)`?
Did you require it, via
` AU.addRequired<PostDominatorTreeWrapperPass>();`?
Btw. May I ask what you are planning to do?
Cheers,
Johannes
On 01/07,
2011 May 04
0
[LLVMdev] 2.9 segfault when requesting for both LoopInfo and DominatorTree analyses.
Hi Michael,
> When migrating my project to 2.9, I've encountered a strange segfault
> where if a ModulePass's getAnalysisUsage adds LoopInfo and
> DominatorTree, then llvm::PMTopLevelManager::findAnalysisUsage will
> segfault.
I suggest you build LLVM with assertions enabled - then you should get a
helpful error message rather than a segfault. I think you are not allowed
to
2012 Mar 23
3
[LLVMdev] Function Pass Manager
Hi,
I'm writing a function pass which is dynamically loaded by opt and I
need some analysis and passes to be run before my pass:
virtual void getAnalysisUsage(AnalysisUsage &AU) const {
AU.addRequired<LoopInfo>();
AU.addPreserved<LoopInfo>();
AU.addRequiredID(LoopSimplifyID);
AU.addPreservedID(LoopSimplifyID);
2010 Apr 17
0
[LLVMdev] The "scope" of passes
hi John,
sorry for reply so late.
On Tue, Apr 13, 2010 at 10:38 PM, John Criswell <criswell at uiuc.edu> wrote:
> Devang Patel wrote:
>
>> On Mon, Apr 12, 2010 at 6:41 PM, ether zhhb <etherzhhb at gmail.com> wrote:
>>
>>
>>
>>> that's because FunctionPass implement the "addLowerLevelRequiredPass"
>>> function, but others
2011 May 04
2
[LLVMdev] 2.9 segfault when requesting for both LoopInfo and DominatorTree analyses.
Thanks for the response. I do have assertions enabled, and none of
them are getting hit. I did do a search of the mailing list for the
past year (approximately) before writing my email, and what I found
was that you should be allowed to use LoopInfo and other analysis
function passes from a module pass, with the only difference being
that getAnalysis is passed the function. The example code I