similar to: [LLVMdev] Fwd: Re: MAJOR API CHANGE: Pass initialization without static constructors

Displaying 20 results from an estimated 3000 matches similar to: "[LLVMdev] Fwd: Re: MAJOR API CHANGE: Pass initialization without static constructors"

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: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
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 11
0
[LLVMdev] MAJOR API CHANGE: Pass initialization without static constructors
John, On Oct 8, 2010, at 1:05 PM, John Criswell wrote: >> These initialization routines must be invoked before the PassManager will be able to resolve pipelines involving your pass. For convenience, LLVM now exposes per-library batch initialization routines, i.e. initializeScalarOpts(), which initialize all the passes within a given library in a single go. > > From an ease of
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.
2011 Jul 27
0
[LLVMdev] Analysis Groups in Mainline LLVM
Dear All, What is the appropriate way to create analysis groups when using mainline LLVM? Following the directions in the "Writing an LLVM Pass" doesn't appear to work, and the INITIALIZE_ANALYSIS_GROUP() and INITIALIZE_AG_PASS() macros seem to each call a function defined by the other. -- John T.
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
2012 Mar 29
1
[LLVMdev] What is the right way to register an alias analysis pass
Hi everyone, I am wondering what is the right way to register an alias analysis pass. My alias analysis pass is implemented in a dynamic load module. As I can see, a general way to register a pass looks like: llvm::RegisterPass<Analyzer> X("rci", "RCI Pass"); However, registering a type-based analysis uses: INITIALIZE_AG_PASS(...) I think, registering an
2013 Jan 24
1
[LLVMdev] llvm pass INITIALIZE
Hello everyone, Till now I have succesfully running passes using RegisterPass template. I have encountered a segfault in my pass. Assertion `AA && "AA didn't call InitializeAliasAnalysis in its run method!"' failed. Then, I tried to use INITIALIZE_PASS_XXXX or INITIALIZE_AG_PASS template, together with `*llvm::createMyMemDepPrinter()` and
2014 Apr 29
4
[LLVMdev] writing an alias analysis pass?
Hi Matthew, Did you add your alias analysis pass initializeEverythingMustAliasPass() into llvm::initializeAnalysis(PassRegistry &Registry) {} ? This will initialize it linked into the Analysis library. thanks, chen On Apr 28, 2014, at 8:43 PM, Jingyue Wu <jingyue at google.com> wrote: > > > > On Thu, Apr 24, 2014 at 4:38 PM, Matthew O'Connor <thegreendragon at
2015 Apr 21
2
[LLVMdev] Using an alias analysis pass
Hello LLVMdev, I’m using LLVM to do static analysis exclusively (without any code generation). To implement this analysis, I’m using multiple address spaces to disambiguate the purpose of the pointed memory. Since address spaces never alias in my model, I set on to implement an alias analysis pass that would exactly provide this information, as I’m seeing a couple of otherwise dead store that
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 &registry = *llvm::PassRegistry::getPassRegistry(); initializeScalarOpts(registry); functionPassManager->add( new llvm::TargetLibraryInfoWrapperPass(llvm::TargetLibraryInfoImpl(targetMachine->getTargetTriple())) );
2014 Apr 24
4
[LLVMdev] writing an alias analysis pass?
Hi, I'm attempting to do some alias analysis & other memory inspection. I've written a pointless AliasAnalysis pass (that says everything must alias) to attempt to verify that my pass is getting picked up & run by opt. I run opt with: opt -load ~/Applications/llvm/lib/MustAA.so -must-aa -aa-eval -debug < trace0.ll I see my pass being initialized, but never being called (I see
2012 Mar 29
0
[LLVMdev] What is the right way to register an alias analysis pass
Hi everyone, I am wondering what is the right way to register an alias analysis pass. My alias analysis pass is implemented in a dynamic load module. As I can see, a general way to register a pass looks like: llvm::RegisterPass<Analyzer> X("rci", "RCI Pass"); However, registering a type-based analysis uses: INITIALIZE_AG_PASS(...) I think, registering an
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 Jul 08
1
[LLVMdev] MAJOR API CHANGE: LLVMContext
On Jul 8, 2009, at 7:57 AM, John Criswell wrote: > Owen Anderson wrote: > Can you give a brief example of where to find the LLVMContext within a > ModulePass or FunctionPass? Is this just the context stored within > the > Module or Function passed to runOnModule/runOnFunction? Passes have a protected Context member, which is set for them by the PassManager, if you don't
2008 Dec 11
2
[LLVMdev] C++ Constructors
Dear All, Are global static constructors called before main() in LLVM these days using some behind-the-scenes magic that is not explicit in the LLVM bitcode? In older versions of LLVM, llvm-gcc added an explicit function call to __main() as the first instruction in main(); __main() would call all global static constructors. It seems __main() is now gone. I've got a transform that
2019 Mar 14
2
Static constructors with ORC JIT?
Hi all, Is there way to tell the ORC JIT infrastructure to run the static constructors in a module that has just been compiled? I see that the ExecutionEngine class has a runStaticConstructorsDestructors function, is that relevant with ORC and if so, how should it be accessed? Thanks, Daniele -------------- next part -------------- An HTML attachment was scrubbed... URL:
2008 Dec 11
0
[LLVMdev] C++ Constructors
On Dec 11, 2008, at 2:35 PM, John Criswell wrote: > Dear All, > > Are global static constructors called before main() in LLVM these days > using some behind-the-scenes magic that is not explicit in the LLVM > bitcode? It is explicit in the bitcode. You should see an llvm.globalctors global array that has function pointers for each initializer to run. > In older versions of