similar to: [LLVMdev] Accessing an empty machine function before instruction selection?

Displaying 20 results from an estimated 500 matches similar to: "[LLVMdev] Accessing an empty machine function before instruction selection?"

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
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 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
2012 Jul 30
0
[LLVMdev] global control flow graph at machine code level
Hi Abhishek, On Sunday, July 29, 2012 18:32:11 AbhishekR wrote: > It seems like I may have to modify the way MachineFunction is instantiated in MachineFunctionAnalysis. Instead of doing it per Function, it may have to be done for the entire Module by instantiating MachineFunction objects for every Function inside the Module. This might require major changes to the PassManager framework as well.
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
2013 Oct 13
0
[LLVMdev] [RFC] CodeGen Context
On Oct 12, 2013, at 1:55 AM, Bill Wendling <isanbard at gmail.com> wrote: > Hi all, > > This is my proposal for how to solve the problem we have with function attributes that affect code generation changing between functions. (This is mostly a problem for LTO.) > > Please take a look at this proposal, and let me know if you have any questions or comments. > > Cheers!
2013 Dec 25
3
[LLVMdev] Crash in opt.cpp:739 when loading custom pass (only on system-wide debug install of llvm)
Hi, I'm trying to write custom pass. However opt started crashed in opt.cpp. After debugging it looks like PassInf->NormalCtor points to unmapped memory (rest of struct contains correct data about my pass) - it pointed high in user memory (0x756e672e006e6f69). It happens only when I tried to install debug version of llvm system-wide (I've check that it wasn't caused by stale .a
2012 Jul 29
3
[LLVMdev] global control flow graph at machine code level
Hi all, I am trying to build a global control flow graph at machine code level. Essentially, I need the handles to the MachineFunction's corresponding to every call site inside a MachineFunction in order to get the handles to MachineBasicBlock's with return statements inside the callee. Currently, the codegen module processes one MachineFunction at a time and hence I can't find a way
2013 Oct 14
2
[LLVMdev] [RFC] CodeGen Context
On Oct 13, 2013, at 2:35 PM, Bob Wilson <bob.wilson at apple.com> wrote: > On Oct 12, 2013, at 1:55 AM, Bill Wendling <isanbard at gmail.com> wrote: > >> CGContext :: >> >> A central repository for back-end objects. The back-end objects may change, so >> they should not be "cached" by individual passes. This is analogous to the >>
2009 Nov 20
0
[LLVMdev] PassManager again...
Hi. On 11/17/2009 08:16 PM, Andreas Neustifter wrote: > Hi, > > Devang Patel wrote: >> On Tue, Nov 17, 2009 at 9:03 AM, Andreas Neustifter >> <astifter-llvm at gmx.at> wrote: >> >>> Okay, so the ProfileInfoLoader is working, but when I examine the executions more closely I see that the ProfileInfo generated by the ProfileInfoLoader is immediately
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 =
2016 Mar 18
2
[GSoC 2016] Need more info on Add a MachineModulePass
*Vivek Pandya* On Fri, Mar 18, 2016 at 10:03 PM, Quentin Colombet <qcolombet at apple.com> wrote: > Hi Vivek, > > On Mar 16, 2016, at 1:00 PM, vivek pandya via llvm-dev < > llvm-dev at lists.llvm.org> wrote: > > Hello, > > Probably this may be too late to start thinking about this project but I > think this is particularly useful feature for LLVM. >
2013 Sep 11
0
[LLVMdev] Extracting libmachine from libcodegen (bug 1121)
On Sep 5, 2013, at 5:15 PM, Ken Dyck <kd at kendyck.com> wrote: > Hi, > > One of the long-standing code clean-up bugs in Bugzilla is to extract > the Machine* code from the CodeGen library into a separate one, on > which CodeGen depends ( > http://llvm.org/bugs/show_bug.cgi?id=1121). > > I'd like to start working on this. The general approach I'm planning
2016 Dec 20
2
Accessing '__attribute__((noinstrument))' during lowering
Is it possible to find whether a function has the 'noinstrument' attribute during Target lowering? I would like to check if this is present on a function quite late in the process when I am performing normal Target lowering and Target Frame lowering actions, but I can't find the appropriate query in the 'MachineFunction' or 'MachineFunctionInfo' interfaces. Thanks,
2016 Dec 20
0
Accessing '__attribute__((noinstrument))' during lowering
I imagine you can get the llvm::Function from the MachineFunction, and the attribute will be there (on the llvm::Function), but can't say I know much about it. On Tue, Dec 20, 2016 at 2:04 AM Martin J. O'Riordan via llvm-dev < llvm-dev at lists.llvm.org> wrote: > Is it possible to find whether a function has the ‘noinstrument’ > attribute during Target lowering? I would like
2013 Oct 14
0
[LLVMdev] [RFC] CodeGen Context
On Oct 13, 2013, at 8:23 PM, Bill Wendling <isanbard at gmail.com> wrote: > On Oct 13, 2013, at 2:35 PM, Bob Wilson <bob.wilson at apple.com> wrote: > >> On Oct 12, 2013, at 1:55 AM, Bill Wendling <isanbard at gmail.com> wrote: >> >>> CGContext :: >>> >>> A central repository for back-end objects. The back-end objects may change,
2013 Sep 06
5
[LLVMdev] Extracting libmachine from libcodegen (bug 1121)
Hi, One of the long-standing code clean-up bugs in Bugzilla is to extract the Machine* code from the CodeGen library into a separate one, on which CodeGen depends ( http://llvm.org/bugs/show_bug.cgi?id=1121). I'd like to start working on this. The general approach I'm planning to take is: 1. Identify which code to move. 2. Eliminate all dependencies that the Machine code has on the
2011 May 30
1
[LLVMdev] about writing a functionpass requiring a modulepass
---------- Forwarded message ---------- From: Qingan Li <ww345ww at gmail.com> Date: 2011/5/30 Subject: To: llvmdev at cs.uiuc.edu Hi, I wrote an analysis pass, myPass, inherited from both ModulePass and ProfileInfo, and this pass requires the CallGraph, i.e., * class myPass : public ModulePass, public ProfileInfo { ...};* * void myPass::getAnalysisUsage(AnalysisUsage &AU) const
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 Dec 21
1
Accessing '__attribute__((noinstrument))' during lowering
Thanks David, I have tried ‘MF.getFunction()->hasFnAttribute(Attribute::???)’, but it seems that the front-end ‘NoInstrumentFunction’ attribute is not propagated to the collection of LLVM IR attributes (no equivalent is in the ‘Attribute::AttrKind’ enum). It is not obvious that there is another mechanism, and I suspect that there is not due to the separation between FE processing and LLVM