Displaying 20 results from an estimated 60000 matches similar to: "[LLVMdev] ModulePass not run"
2006 Jan 10
1
[LLVMdev] Re: passmanager, significant rework idea...
On 1/10/06, Chris Lattner <sabre at nondot.org> wrote:
> Interesting approach. :)
Thanks.
> Comments below, with ***'s before the notes:
> +class LoopPass : public Pass {}; // Temporary.
>
> *** I wouldn't worry about loop passes yet.
Sure.
> +class PassUnit {
> + Pass *pass;
> +
> + enum Traversal {
> + LINEAR, // Standard top down
2004 Sep 20
0
[LLVMdev] Minor change to Pass API: use ModulePass now
Hi all,
I just checked in a minor change to the PassManager API that will affect
you if you have Pass classes that are not in LLVM CVS. Basically if you
have a class that derives from the Pass class, change it to derive from
'ModulePass'. Also, instead of implementing 'Pass::run', implement
'ModulePass::runOnModule'.
This change does not affect FunctionPass's or any
2006 Jan 10
0
[LLVMdev] passmanager, significant rework idea...
On Mon, 9 Jan 2006, Saem Ghani wrote:
> 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
2013 Jun 21
0
[LLVMdev] About writing a modulePass in addPreEmitPass() for NVPTX
Are you sure you are initializing your pass properly? Can you show a
stripped down version of your pass?
On Fri, Jun 21, 2013 at 7:27 AM, Anthony Yu <swpenim at gmail.com> wrote:
> Hello,
>
> I want to write a modulePass in addPreEmitPass() for NVPTX, but I
> encounter an assertion failed when executing clang.
>
> Here is my error message.
> ====
> Pass 'NVPTX
2013 Jun 21
2
[LLVMdev] About writing a modulePass in addPreEmitPass() for NVPTX
Hello,
I want to write a modulePass in addPreEmitPass() for NVPTX, but I encounter
an assertion failed when executing clang.
Here is my error message.
====
Pass 'NVPTX Assembly Printer' is not initialized.
Verify if there is a pass dependency cycle.
Required Passes:
llc: /home/pyyu/local/llvm/lib/IR/PassManager.cpp:637: void
llvm::PMTopLevelManager::schedulePass(llvm::Pass*): Assertion
2010 Jun 29
1
[LLVMdev] Queries of an invalidated AA ModulePass
On Tue, Jun 29, 2010 at 1:41 PM, Dan Gohman <gohman at apple.com> wrote:
> My best guess is that the problem is that loopsimplify (Canonicalize
> natural loops) doesn't preserve DSAA. It preserves AliasAnalysis, but as
> docs/AliasAnalysis.html now mentions, this doesn't actually do anything.
> And DSAA clobbers loopsimplify, because the pass manager can't
> keep a
2009 Aug 10
2
[LLVMdev] How to use a FunctionPass in a ModulePass?
Hi, all:
I wanted to use a FunctionPass (e.g. *MemoryDependenceAnalysis*) in a
ModulePass, and then I used the method "getAnalysis<*
MemoryDependenceAnalysis*>(llvm::Function *)" described at
http://llvm.org/docs/WritingAnLLVMPass.html#ModulePass to get the
FunctionPass. But , it still crashed when I invoked this pass in tool 'opt'.
However, if I change my pass to
2009 Sep 16
1
[LLVMdev] FunctionPass Analysis is not saved after ModulePasses run?
Hi,
I have a problem with the following scenario:
I use the ProfileEstimatorPass to get ProfileInfo and verifiy this info with the ProfileVerifierPass. (Please bear with me, its not about the profiling but about the Pass interaction.) Then the LowerSetJumpPass is executed and I want to verify that the esimtated ProfileInfo survives this pass by calling again the ProfileVerifierPass. This is what
2009 Sep 16
0
[LLVMdev] FunctionPass Analysis is not saved after ModulePasses run?
Hi,
I have a problem with the following scenario:
I use the ProfileEstimatorPass to get ProfileInfo and verifiy this info with the ProfileVerifierPass. (Please bear with me, its not about the profiling but about the Pass interaction.) Then the LowerSetJumpPass is executed and I want to verify that the esimtated ProfileInfo survives this pass by calling again the ProfileVerifierPass. This is what
2007 Jun 21
0
[LLVMdev] PassManager vs FunctionPassManager
On Jun 21, 2007, at 4:13 PM, Dan Gohman wrote:
> Right now, addPassesToEmitFile requires a FunctionPassManager. If I'm
> working with code that uses a plain PassManager and want it to
> generate
> code, are there any options better than doing this:
That's what FPPassManager does (include/llvm/PassManagers.h) .
Function pass manager itself is a module level pass.
2007 Apr 25
2
[LLVMdev] ModulePass that requires FunctionPass
Hi Devang,
You recently mentioned that the pass manager now allows a ModulePass
to require a FunctionPass. I just tried it but ran into errors. Could
you please take a look to see if I did anything wrong? Thanks!
Basically I changed the HelloWorld sample pass to be a ModulePass and
tried to use the LoopInfo pass inside the runOnModule routine.
See below for the source code and error messages.
2008 Dec 10
0
[LLVMdev] AliasAnalysis tutorial 2
Well, now i added the creation of my AA just before the
creation of DSE, (in the former case it was done at top of all passes list)
and it's working (alias and getModRefInfo are called)...
Maybe a particular pass destroyed the AliasAnalysGroup ??
However he solution is not very clean, since i don't know which
pass need an AA (i guess this should be automatic whith the
method
2010 Jun 29
0
[LLVMdev] Queries of an invalidated AA ModulePass
On Jun 29, 2010, at 9:59 AM, Will Dietz wrote:
> Hi all,
>
> While working on a loadable Alias Analysis module pass, I'm running
> into the following issue:
>
> I'm finding my pass queried for results after it has had
> 'releaseMemory' called on it and its dependencies, but before
> runOnModule is called again (on my pass or its deps). As you might
>
2007 Jun 21
2
[LLVMdev] PassManager vs FunctionPassManager
Right now, addPassesToEmitFile requires a FunctionPassManager. If I'm
working with code that uses a plain PassManager and want it to generate
code, are there any options better than doing this:
/**
* Wrapper class to run a FunctionPassManager as a ModulePass so that it
* can be added to a plain PassManager.
*/
class FunctionPassManagerModulePass : public ModulePass {
FunctionPassManager
2009 Jul 16
3
[LLVMdev] Handling of built-in functions
Hi,
I'm trying to add support in my back end for certain functions that are
seen as built-in by the target. Some of these functions can be
implemented in a) LLVM, and some in b) the native target language.
My approach to case a) is to write the built-in function implementation
in C, compile it to LLVM using Clang, link it to the module that uses it
and finally add a pass to inline it.
2009 Jul 20
0
[LLVMdev] Handling of built-in functions
Hi Javier,
I'm not the right person to answer your question, but since no one
else took it: I believe this is a situation where the backend would
typically emit a call the the compiler's runtime library (e.g.,
libgcc).
While it isn't currently completely wired up, we do have our own
compiler runtime library available under the compiler-rt project in
the LLVM repo.
- Daniel
On Thu,
2010 Aug 12
0
[LLVMdev] Optimization pass questions
Larry,
On Wed, Aug 11, 2010 at 4:55 PM, Larry Gritz <lg at larrygritz.com> wrote:
> I have a whole slew of questions about optimization passes. Answers to any
> or all would be extremely helpful:
>
> How important are doInitialization/doFinalization?
Most of the passes do not use them.
> I can't detect any difference if I use them or not.
Say, if you are writing
2011 May 17
0
[LLVMdev] 2.9 segfault when requesting for both LoopInfo and DominatorTree analyses.
Hi,
I am running into the same issue with a module pass, that calls
LoopInfo.(does not call DominatorTree)
I am using RegisterPass, since it is a dynamically loaded module(as per
lib/Transforms/Hello)
It does seem possible from the discussion, to use LoopInfo inside a
ModulePass.
I am wondering what the fix to this problem was.
Also, the code works in 2.7.(I did not try 2.8)
Thanks,
Arushi
2008 Dec 09
0
[LLVMdev] AliasAnalysis tutorial 2
Julien Schmitt wrote:
> Hi !
> In my quest of implementing my own AA, i understood that it doesn't work
> because i don't use the 'opt' tool but i create my own PassManager (this
> for other reasons).
> The problem is the same with other existing AA (AndersensPass or
> globalModRefPass) :
> these AApasses are not chained with the basicAA when they are
2009 Apr 10
0
[LLVMdev] Pass Manager Restriction?
"A module pass can use function level passes (e.g. dominators) using
getAnalysis interfacegetAnalysis<DominatorTree>(Function), if the
function pass does not require any module passes."
http://llvm.org/docs/WritingAnLLVMPass.html
In your case, A module pass (ModPass2) is trying tu use function level
pass (FunPass1) which uses module level pass (ModPass1). This is not