Displaying 20 results from an estimated 3000 matches similar to: "[LLVMdev] MAJOR API CHANGE: Pass initialization without static constructors"
2010 Oct 08
0
[LLVMdev] Fwd: Re: MAJOR API CHANGE: Pass initialization without static constructors
Forgot to reply to the list.
-- John T.
-------- Original Message --------
Subject: Re: [LLVMdev] MAJOR API CHANGE: Pass initialization without
static constructors
Date: Fri, 8 Oct 2010 15:05:21 -0500
From: John Criswell <criswell at illinois.edu>
To: Owen Anderson <resistor at mac.com>
On 10/8/10 1:29 PM, Owen Anderson wrote:
> Hello fellow LLVM-ers,
>
> As
2010 Oct 08
0
[LLVMdev] MAJOR API CHANGE: Pass initialization without static constructors
On 10/8/10 3:15 PM, Owen Anderson wrote:
>
> On Oct 8, 2010, at 1:05 PM, John Criswell wrote:
>
>> On 10/8/10 1:29 PM, Owen Anderson wrote:
>>> Hello fellow LLVM-ers,
>>>
>>> As those of you who follow llvm-commits have probably noticed, I've
>>> been hard at work reworking our pass infrastructure to perform pass
>>>
2010 Oct 08
2
[LLVMdev] MAJOR API CHANGE: Pass initialization without static constructors
On Oct 8, 2010, at 1:05 PM, John Criswell wrote:
> On 10/8/10 1:29 PM, Owen Anderson wrote:
>> Hello fellow LLVM-ers,
>>
>> As those of you who follow llvm-commits have probably noticed, I've been hard at work reworking our pass infrastructure to perform pass initialization/registration without static constructors. This is a boon for clients of the LLVM libraries, as
2010 Oct 08
1
[LLVMdev] MAJOR API CHANGE: Pass initialization without static constructors
Hello fellow LLVM-ers,
As those of you who follow llvm-commits have probably noticed, I've been hard at work reworking our pass infrastructure to perform pass initialization/registration without static constructors. This is a boon for clients of the LLVM libraries, as they can now control when and if initialization occurs, as opposed to being forced to incur the initialization cost at
2010 Oct 08
2
[LLVMdev] MAJOR API CHANGE: Pass initialization without static constructors
On Oct 8, 2010, at 1:37 PM, John Criswell wrote:
> On 10/8/10 3:15 PM, Owen Anderson wrote:
>>
>> On Oct 8, 2010, at 1:05 PM, John Criswell wrote:
>>
>>> On 10/8/10 1:29 PM, Owen Anderson wrote:
>>>> Hello fellow LLVM-ers,
>>>>
>>>> As those of you who follow llvm-commits have probably noticed, I've been hard at work
2010 Oct 08
0
[LLVMdev] MAJOR API CHANGE: Pass initialization without static constructors
On 10/8/10 3:44 PM, Owen Anderson wrote:
> [snip]
>
>> Hrm. I see.
>>
>> I still don't like the idea of having every statically-linked tool explicitly initializing every library that gets linked in. Just dumping the library into the Makefile and being done with it was much nicer.
>>
>> If you can find a reasonable way to support that, it would be nice.
2009 Sep 03
0
[LLVMdev] Problem with generating Machine function analysis pass
Hi,
I've been encountering a problem with function pass manager with
llvm-2.6. Somehow system does not know how to create analysis pass if
it's required by some other pass.
I got following after adding various debug prints to PassManager.cpp I
got following results for my reduced test program which just loads
module and then tries to make a function pass manager.
elhigu at
2011 May 04
1
[LLVMdev] 2.9 segfault when requesting for both LoopInfo and DominatorTree analyses.
Your constructor is not calling initializeTestMPPass(), and you're
using RegisterPass which I think was deprecated in favor of
INITIALIZE_PASS. You can look at, for example,
lib/Transforms/Scalar/IndVarSimplify.cpp for examples of how to
initialize, e.g. having "INITIALIZE_PASS_DEPENDENCY(LoopInfo)"
sandwiched between BEGIN and END. Note that you'll want a forward
declaration of
2010 Oct 27
0
[LLVMdev] dump cfg after each pass
Hi David,
> A dumb question -- is there a way to dump cfg after each pass, something like:
> --print-cfg-after=sccp, or is there a standard post-processing script that
> builds the cfg vcg/dot file from the ir dump?
if your IR is dumped to ir.ll, you can do this to see the cfg:
opt -disable-output -view-cfg ir.ll
You may want to use -view-cfg-only rather than -view-cfg if you are
not
2013 Dec 03
0
[LLVMdev] Segmentation fault when traverse call graph
I recall having a similar problem while coding my own special-purpose
"opt". My guess: try adding the following lines before your pass is
inserted into the PassManager:
PassRegistry &Registry = *PassRegistry::getPassRegistry();
initializeIPA(Registry);
You might require other library initializations. Have a look at the
"opt" source code.
On 02/12/13 10:36,
2016 Feb 19
3
target triple in 3.8
I added your suggestion and am using this now
llvm::legacy::FunctionPassManager *functionPassManager = new
llvm::legacy::FunctionPassManager(Mod);
llvm::PassRegistry ®istry = *llvm::PassRegistry::getPassRegistry();
initializeScalarOpts(registry);
functionPassManager->add( new
llvm::TargetLibraryInfoWrapperPass(llvm::TargetLibraryInfoImpl(targetMachine->getTargetTriple()))
);
2011 May 04
0
[LLVMdev] 2.9 segfault when requesting for both LoopInfo and DominatorTree analyses.
Hi Michael, hi Duncan,
yesterday I stumbled over something that might be related.
At least I could also just be doing some initialization wrong or
something in this direction...
In my case, I hit a segfault in PassInfo::isAnalysisGroup() after
PassManager.add(myModulePass) is called.
My setup seems fairly simple, the attached code should reproduce the error.
Compile with
g++ test.cpp
2013 Dec 02
2
[LLVMdev] Segmentation fault when traverse call graph
Dear everyone,
I want to traverse call graph, but I have some trouble .
In my pass MyPass which need to traverse call graph, I firstly added the
CallGraph analysis to the pass requirements by
*AU.addRequired<CallGraph>();*
My pass MyPass then will be added to a pass manager by
*manager.add(new MyPass());*
and then I want to traverse the call graph such as:
CallGraph CG =
2010 Jul 23
1
[LLVMdev] "Cannot call createPass on PassInfo without default ctor!"
While trying to add a pass to the ARM back end I'm getting quite a lot of this assertion failure:
Pass.cpp:255: llvm::Pass* llvm::PassInfo::createPass() const: Assertion `NormalCtor && "Cannot call createPass on PassInfo without default ctor!"' failed.
A simple way to get it is to add two lines to ARMTargetMachine.cpp:
#include "llvm/Transforms/Scalar.h"
and
2009 Nov 17
2
[LLVMdev] PassManager again...
Hi,
I have trouble making my ProfileInfo-Analysis available in the backend, I have changed llc so it loads the ProfileInfo if requested, the PassManger gives this output:
> Target Data Layout
> Create Garbage Collector Module Metadata
> Basic Alias Analysis (default AA impl)
> DWARF Information Writer
> No Profile Information
> Module Information
> ModulePass
2011 Dec 06
0
[LLVMdev] Assertion `PI && "Expected required passes to be initialized"' failed for AliasAnalysis.
Hi Alexander,
I had the same error:
sincos: /home/marcusmae/rpmbuild/BUILD/llvm/lib/VMCore/PassManager.cpp:635:
void llvm::PMTopLevelManager::schedulePass(llvm::Pass*): Assertion `PI
&& "Expected required passes to be initialized"' failed.
The solution was to add:
PassRegistry &Registry = *PassRegistry::getPassRegistry();
initializeCore(Registry);
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
2016 Mar 30
1
Help with pass manager
Passes all need to be initialized before they are added into a pass manager.
Are you calling TargetLibraryInfoWrapperPass::initializePass anywhere?
-Chris
> On Mar 24, 2016, at 10:41 AM, Lorenzo Laneve via llvm-dev <llvm-dev at lists.llvm.org> wrote:
>
> The problems happens because PMTopLevelManager::findAnalysisPassInfo(AnalysisID AID) returns nullptr in
2009 Nov 26
1
[LLVMdev] Problemo: createTailDuplicationPass
Good morning!
After updating and recompiling my copy of the LLVM trunk I noticed
that the line "_passManager.add(llvm::createTailDuplicationPass());"
in my code fails with the following assertion:
Assertion failed: NormalCtor && "Cannot call createPass on PassInfo
without default ctor!", file
D:\Workspace\llvmtrunk\include\llvm/PassSupport.h, line 111
This behavior
2011 Mar 11
1
[LLVMdev] Accessing an empty machine function before instruction selection?
I'm trying to access the MachineFunctionInfo structure from a pre-ISel pass. In order to do this I have to get access to the MachineFunction and then call getInfo().
Currently in my pass I request it via:
void AMDILBarrierDetect::getAnalysisUsage(AnalysisUsage &AU) const
{
AU.addRequired<MachineFunctionAnalysis>();
FunctionPass::getAnalysisUsage(AU);
}
However, I am getting an