similar to: [LLVMdev] How to change successor of a regular Basic block

Displaying 20 results from an estimated 1300 matches similar to: "[LLVMdev] How to change successor of a regular Basic block"

2013 Jul 31
1
[LLVMdev] Problem to remove successors
Hi All, I need to remove successors from every basic block to insert new ones I tried this code, but it doesn't work void RemoveSuccessor(TerminatorInst *TI, unsigned SuccNum) { assert(SuccNum < TI->getNumSuccessors() && "Trying to remove a nonexistant successor!"); // If our old successor block contains any PHI nodes, remove the entry in the //
2009 Dec 04
0
[LLVMdev] hi, Hi, (Preccessors' Number) < MachineBasicBlock's Number < (Successors's Number), Is it really?
On Dec 3, 2009, at 9:52 PM, 任坤 wrote: > I am travelling CFG with MachineFunction. So I want to sure it. > (Preccessors' Number) < MachineBasicBlock's Number < (Successors's Number), Is it really? If the CFG contains loops, how could this be possible? Anyway, no you can't use MBB numbers for that. Perhaps you need the MachineDominatorTree analysis? Regards, /jakob
2010 Jan 25
2
[LLVMdev] Find all backedges of CFG by MachineDominatorTree. please look at my jpg.
Hi: I hope to cut all backedges of MachineFunction CFG, then topological sort MachineBasicBlocks. 1. MachineDominatorTree *domintree = new MachineDominatorTree(); domintree->runOnMachineFunction(mf); 2. Then travel mf one by one. When domintree->dominates(next,current) is true, there is a backedge from current node to next node. move this backedge form CFG. But I find A LOOP in
2010 Jan 25
0
[LLVMdev] Find all backedges of CFG by MachineDominatorTree. please look at my jpg.
2010/1/25 任坤 <hbrenkun at yahoo.cn>: > Hi: > > I hope to cut all backedges of MachineFunction CFG, then topological sort MachineBasicBlocks. > > 1. MachineDominatorTree *domintree = new MachineDominatorTree(); > domintree->runOnMachineFunction(mf); > > 2. Then travel mf one by one. > When domintree->dominates(next,current) is true, there is a backedge
2010 Apr 12
1
[LLVMdev] [Fwd: Can someone help me with error while i make my own pass]
Tried that but still no success Chris Lattner wrote: > Try doing a clean build, then doing 'make ENABLE_PIC=1' > > -Chris > > On Apr 11, 2010, at 9:13 AM, ambika wrote: > >> >> >> *From: *ambika <ambika at cse.iitb.ac.in <mailto:ambika at cse.iitb.ac.in>> >> *Date: *April 8, 2010 9:10:25 AM PDT >> *To: *llvmdev at cs.uiuc.edu
2010 Apr 11
0
[LLVMdev] [Fwd: Can someone help me with error while i make my own pass]
Try doing a clean build, then doing 'make ENABLE_PIC=1' -Chris On Apr 11, 2010, at 9:13 AM, ambika wrote: > > > From: ambika <ambika at cse.iitb.ac.in> > Date: April 8, 2010 9:10:25 AM PDT > To: llvmdev at cs.uiuc.edu > Subject: [LLVMdev] Can someone help me with error while i make my own pass > > > Hi, > > I have added LoaderInterface pass in
2010 Feb 15
0
[LLVMdev] A very basic doubt about LLVM Alias Analysis
Hi Ambika, > Using this option I do get all the vars as may alias ie > > MayAlias: i32* %j.0, i32* %k > MayAlias: i32* %i.0, i32* %k > MayAlias: i32* %i.0, i32* %j.0 > > Is there any other analysis which will give them as must aliases. at -O1 these variables are entirely eliminated here. I'm surprised they aren't eliminated for you. Ciao, Duncan. PS:
2010 Feb 02
3
[LLVMdev] Problem in Adding a pass to LLVM
Hi, I am trying to add alias analysis in llvm. I created a file ProfileAlias.cpp in llvm source at the place where Andersens.cpp is there. ProfileAlias.cpp does nothing at present just empty definitions of required functions. When I build llvm I get the following error: /home/ambika/llvm1/llvm-obj/Release/lib/libLLVMipa.a(ProfileAlias.o): In function `llvm::createProfileAliasPass()':
2010 Feb 23
1
[LLVMdev] Regarding a pass in LLVM
I have done that. I have defined createMyAnaPass() in Passes.h and it is defined in MyAna.cpp and used in LinkAllPasses.h But still the error : /home/ambika/llvm/llvm-obj/tools/opt/Release/opt.o: In function `global constructors keyed to opt.cpp': opt.cpp:(.text+0x1e89): undefined reference to `llvm::createMyAnaPass()' I dont understand whats the problem. Jianzhou Zhao wrote: >
2010 Feb 23
0
[LLVMdev] Regarding a pass in LLVM
On Tue, Feb 23, 2010 at 7:17 AM, ambika <ambika at cse.iitb.ac.in> wrote: > Thanks that helped me out. > But now I am facing one more problem. It says : > > ‘llvm::ModulePass* llvm::createMyAnaPass()’ should have been declared > inside ‘llvm’ > > but I can find no place to declare it. > Where should I do it. We can do what scalar optimizations do. All scalar passes
2010 Mar 09
1
[LLVMdev] Find all backedges of CFG by MachineDominatorTree. please look at my jpg.
Hi:    I want to do some optimization on MachineLoop. So I want to get MachineLoopInfo from MachineFunction. I reference MachineLICM.cpp. So I try to write a pass in Target/mytarget directory. I find there is Error. llvm/include/llvm/PassAnalysisSupport.h:198: AnalysisType& llvm::Pass::getAnalysisID(const llvm::PassInfo*) const [with AnalysisType = llvm::MachineLoopInfo]: Assertion
2013 Apr 10
0
[LLVMdev] If Conversion and predicated returns
On 4/10/2013 12:45 PM, Hal Finkel wrote: > > Should AnalyzeBranch be enhanced to somehow indicate conditional returns? I don't think that returns can ever be analyzable (since LLVM's CFG does not have a designated exit block). > Alternatively, the diamond conversion routine contains this: > > // RemoveExtraEdges won't work if the block has an unanalyzable branch,
2010 Apr 11
2
[LLVMdev] [Fwd: Can someone help me with error while i make my own pass]
-------------- next part -------------- An embedded message was scrubbed... From: ambika <ambika at cse.iitb.ac.in> Subject: [LLVMdev] Can someone help me with error while i make my own pass Date: Thu, 08 Apr 2010 21:40:25 +0530 Size: 4901 URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20100411/33876147/attachment.eml>
2010 Feb 23
2
[LLVMdev] Regarding a pass in LLVM
Thanks that helped me out. But now I am facing one more problem. It says : ‘llvm::ModulePass* llvm::createMyAnaPass()’ should have been declared inside ‘llvm’ but I can find no place to declare it. Where should I do it. John Criswell wrote: > ambika at cse.iitb.ac.in wrote: >> Hi, >> >> I am trying to add a pass inn LLVM, and I actually want to add it in >> source
2013 Apr 10
3
[LLVMdev] If Conversion and predicated returns
Evan, et al., I've come across a small issue when using the if conversion pass in PPC to generate conditional returns. Here's a small example: ** Before if conversion ** BB#0: derived from LLVM BB %entry %R3<def> = LI 0 %CR0<def> = CMPLWI %R3, 0 BCC 68, %CR0, <BB#3> Successors according to CFG: BB#3(16) BB#1(16) BB#1: derived from LLVM BB
2010 Jun 04
0
[LLVMdev] Duplicating a Basic Block
On Fri, Jun 4, 2010 at 2:15 AM, Ambika Agarwal <agarwal.ambika at gmail.com> wrote: > Hi, > > I had asked earlier from my another ID about duplicating a basic block, but > that server is down for moment. > I was given suggestion to use CloneBasicBlock, but when I used it I get an > error : > > While deleting: i32* %a > Use still stuck around after Def is
2010 Feb 03
0
[LLVMdev] Problem in Adding a pass to LLVM
Hi! On 02.02.2010, at 20:16, ambika wrote: > /home/ambika/llvm1/llvm-obj/Release/lib/ > libLLVMipa.a(ProfileAlias.o): In > function `llvm::createProfileAliasPass()': > ProfileAlias.cpp:(.text+0x46): undefined reference to `vtable for > ProfileAlias' http://gcc.gnu.org/faq.html#vtables Does that help? Andi
2010 Jun 04
4
[LLVMdev] Duplicating a Basic Block
Hi, I had asked earlier from my another ID about duplicating a basic block, but that server is down for moment. I was given suggestion to use CloneBasicBlock, but when I used it I get an error : While deleting: i32* %a Use still stuck around after Def is destroyed: store i32* %a, i32** %p, align 4 opt: /home/ambika/llvm_3/llvm-2.6/lib/VMCore/Value.cpp:81: virtual llvm::Value::~Value():
2010 Feb 10
0
[LLVMdev] Help regarding Flow of function calls in llvm
llvm itself is a plain C++ program, so you can use gdb on it. gdb doesn't know how to step through compiled IR, yet. On Tue, Feb 9, 2010 at 12:13 PM, ambika <ambika at cse.iitb.ac.in> wrote: > No, this is not what I am looking for. I am looking for something like > may be a debugger so that I can trace the function calls in source of llvm. > llvm-db dosent work it says
2010 May 28
2
[LLVMdev] Basic doubt related to Module::iterator
Hi, Yeah I found that it is running LLVM's functions. The functions that are running are: main llvm.dbg.func.start llvm.dbg.stoppoint scanf llvm.dbg.region.end But I dont want all the functions to be called as I am using Dominator Trees and whenever I the statement DominatorTree &DT = getAnalysis<DominatorTree>(F); is encountered by functions other than main, it gives error.