similar to: [LLVMdev] Pass Schedule Error

Displaying 20 results from an estimated 7000 matches similar to: "[LLVMdev] Pass Schedule Error"

2013 Jun 14
0
[LLVMdev] Pass Schedule Error
On Jun 14, 2013, at 1:12 PM, dag at cray.com wrote: > I've been puzzling over this for a day: > > Unable to schedule 'Unnamed pass: implement Pass::getPassName()' > required by '<some pass>' > Unable to schedule pass > UNREACHABLE executed at llvm/lib/VMCore/PassManager.cpp:1213! > > First, why can't getPassName find the name? I have
2011 Jan 12
1
[LLVMdev] About adding a pass into llvm
I have seen INITIALIZE_PASS(LiveVariables, "livevars", "Live Variable Analysis", false, false); in the llvm/lib/codegen/LiveVariables.cpp, where LiveVariables is a subclass of MachineFunctionPass, and #define INITIALIZE_PASS(passName, arg, name, cfg, analysis) \ static RegisterPass<passName> passName ## _info(arg, name, cfg, analysis) in PassSupport.h Is this code used
2011 Jan 18
1
[LLVMdev] adding a codegen pass into llvm
Thanks for your last reply. Could I understand the way to adding a pass (built into the llvm rather than dynamic loadable) includes: 1. Declaring a creator function for this pass 2. Implementing the creator function for this pass 3. Instantiating this pass and get a object of it 3. Register this pass into the PassRegistry Then, for a built-into bytecode pass, task 1(declaration of the
2011 Sep 23
3
[LLVMdev] statically link pass to clang
Hi all, A question about statically linking a pass to clang instead of dynamically loading it at runtime. I am stumped on this bug for a while. I inserted a pass under lib/Transforms/mypass directory, registered it with INITIALIZE_PASS and defined createMyPass in the pass. Also I added file mypass.h in include/llvm/Transforms/ to expose the accessor functions that expose my passes. Entries are
2013 Mar 15
2
[LLVMdev] write a simple MachineFunctionPass
Hello everyone, I have written several complex passes till now, but I cannot write a MachineFunctionPass pass. It just gives me segfault. Hence I reduced the pass to the following form : using namespace llvm; namespace { class CFGexplorator : public MachineFunctionPass { public: static char ID; // Pass identification, replacement for typeid CFGexplorator() : MachineFunctionPass(ID)
2013 Mar 15
0
[LLVMdev] write a simple MachineFunctionPass
I found that : "Code generator passes are registered and initialized specially by TargetMachine::addPassesToEmitFile and similar routines, so they cannot generally be run from the *opt* or *bugpoint* commands."...So how I can run a MachineFunctionPass? In the end, I just want to apply a DFS on a CFG of a function. And I need oriented edges and wanted to use
2006 May 01
2
[LLVMdev] How to link the right libraries?
Hello, llvmers. Could someone explain me a little about the opt tool? I am having problems to load a MachineFunctionPass using opt. I have this pass: #include "llvm/Pass.h" #include "llvm/Function.h" #include "llvm/CodeGen/MachineFunctionPass.h" #include <iostream> using namespace llvm; namespace { struct MacFoo : public MachineFunctionPass { virtual
2005 Nov 02
1
[LLVMdev] Runtime optimization and other doubts
Hi , Regarding my previous help on LLVM Instrumentation , gdb helped me out. Your docs on Writing an LLVM Pass - Using gdb with dynamically loaded passes was very useful. I've done some instrumentation and collected profiles during runtime using library routines in a separate pass with opt tool. I used : In the tools/lli/Makefile , I included the following line TOOLLINKOPTS :=
2010 Mar 08
2
[LLVMdev] Machine Function pass
I am trying to write a MachineFunction pass and build it as a loadable module. I want the pass to run after prolog/epilog emmiter. So far, I have been using MachineFunctionPass, but by inserting it to lib/Codegen and hacking the LLVMTargetMachine file, and Pass.h files. I have created a directory "lib/Transforms/MyPass", and inside I have the code of the pass (which is just a
2011 Jan 12
0
[LLVMdev] About adding a pass into llvm, cont
Hi, Thanks for your last reply. Could I understand the way to adding a pass (built into the llvm rather than dynamic loadable) includes: 1. Declaring a creator function for this pass 2. Implementing the creator function for this pass 3. Instantiating this pass and get a object of it 3. Register this pass into the PassRegistry Then, for a built-into bytecode pass, task 1(declaration of
2017 Jun 08
4
DICompileUnit duplication in LLVM 4.0.0?
All, I'm seeing duplication of DICompileUnits in a pass that worked in 3.8. I assume I'm doing something wrong. Would someone be willing to point me in the right direction? The below minimized pass reproduces my issue in 4.0 with the following error: DICompileUnit not listed in llvm.dbg.cu !1707 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !1, producer: "clang
2012 Oct 31
2
[LLVMdev] problem trying to write an LLVM register-allocation pass
I'm trying to write a MachineFunctionPass to do register allocation. I have code that worked with an old version of LLVM. It does not work with llvm-3.1. (or various other versions that I've tried). The first problem is that including this line: AU.addRequiredID(TwoAddressInstructionPassID); in method getAnalysisUsage causes a runtime error: Unable to schedule 'Eliminate PHI
2014 Oct 15
2
[LLVMdev] how to choose which alias analysis used in my pass?
----- Original Message ----- > From: "Jingyue Wu" <jingyue at google.com> > To: "songlh" <songlh at cs.wisc.edu>, llvmdev at cs.uiuc.edu > Sent: Wednesday, October 15, 2014 2:50:12 PM > Subject: Re: [LLVMdev] how to choose which alias analysis used in my pass? > > > Isn't -basicaa the default alias analysis already? No, -basicaa is added
2012 Mar 29
2
[LLVMdev] VLIWPacketizerList: failing to schedule terminators
Hi, I'm trying to use the VLIWPacketizerList to schedule instructions for the R600 target, and I'm running into this assertion failure: ScheduleDAGInstrs.cpp:558: Cannot schedule terminators or labels! I think I might not be using the VLIWPacketizerList class correctly. I've attached my code to this email. Can anyone spot what I'm doing wrong? Also, I had to add a LiveIntervals
2008 Dec 14
3
[LLVMdev] How to correlate LLVA with native ISA
Thank your for reply. The reason why these information are needed is that I am trying to extract the program signature (e.g., control flow) out side of the binary. Conventional compiler technique adds extra checking code into the target source or target IR in an invasive manner. Since code generator combines the added code with the original one, they don't need to correlate these two
2015 Nov 17
2
Confused on how to do a machinefunction pass
Hi, So, I run my pass in X86 target with llc command and it printed out "hello****". Now I am trying to do the same pass for ARM target. So I did exactly what I did for X86 as mentioned in my previous posts. When I run the following command: llc -march=arm test.ll -o test nothing prints out. I did the same for MIPS target too and I got no result. Can anyone tell me what I'm doing
2015 Nov 17
2
Confused on how to do a machinefunction pass
Yes, I have done exactly the same. The wawanalyzer is the same. I changed ARM.h and ARMTargetMachine.cpp in the tager/arm folder. then I make tool/llc and lib folder. On Tue, Nov 17, 2015 at 10:55 AM, John Criswell <jtcriswel at gmail.com> wrote: > On 11/17/15 12:16 AM, fateme Hoseini via llvm-dev wrote: > > Hi, > So, I run my pass in X86 target with llc command and it printed
2017 Jun 08
2
DICompileUnit duplication in LLVM 4.0.0?
Thank you. What I need to do to address this? Open an issue on bugs.llvm.org? I'm not sure what the fix needs to be in the cloner. On Thu, Jun 8, 2017 at 4:19 PM, Peter Collingbourne <peter at pcc.me.uk> wrote: > There have in the past been bugs in the cloner involving duplicate > DICompileUnits (see e.g. https://reviews.llvm.org/D29240), this one may > need a similar fix.
2012 Oct 31
0
[LLVMdev] problem trying to write an LLVM register-allocation pass
Hi Susan, The meaning of "addRequired(X)" is that your pass needs X to be run, and for X to be preserved by all passes that run after X and before your pass. The PHIElemination and TwoAddressInstruction passes do not preserve each other, hence there's no way for the pass manager to schedule them for you if you addRequire(...) them. The trick is that CodeGen will schedule both of
2009 Aug 11
2
[LLVMdev] llc undefined symbol
Hi all I'm writing a pass for the llc tool. If I try to load my pass(llc -load ../mypass.so), this error message appears : Error opening '/nfs/wsi/ti/graumann/llvm-2.5/Release/lib/LLVMMicha.so': /nfs/wsi/ti/graumann/llvm-2.5/Release/lib/LLVMMicha.so: undefined symbol: _ZTVN12_GLOBAL__N_119MyRegisterAllocatorE -load request ignored. Is this code wrong for the pass