similar to: [LLVMdev] BasicBlock Cloning

Displaying 20 results from an estimated 4000 matches similar to: "[LLVMdev] BasicBlock Cloning"

2011 May 04
0
[LLVMdev] BasicBlock Cloning
On 5/3/11 4:14 PM, tarun agrawal wrote: > Hi > > I have clone a basic block using CloneBasicBlock function but it does > not clone the predecessor with it. I am not able to figure out, how to > set the predecessor of the cloned basic block. LLVM's CFG is explicitly maintained by the terminator instructions within each basic block. In order to change the CFG, you have to
2011 Apr 17
4
[LLVMdev] Regarding BasicBlock Cloning
The clone llvm:CloneBasicBlock copies the phi function in the replicated basic block from the original basic block. I don't want the copy of phi in relplicated block. For now I am creating .bc file with -O0 option so that it doesn't generate phi function in first place. Is this a good approach or there are some other function available for it. Tarun On Sun, Apr 17, 2011 at 5:22 AM, Eli
2011 Apr 17
0
[LLVMdev] Regarding BasicBlock Cloning
On 4/16/11 7:01 PM, tarun agrawal wrote: > The clone llvm:CloneBasicBlock copies the phi function in the > replicated basic block from the original basic block. After you clone the basic block, you can probably replace the phi instruction with another value of your choice. If you're adding variables, you'll probably want to create them as allocas and use loads and stores to
2011 Apr 17
0
[LLVMdev] Regarding BasicBlock Cloning
On Sat, Apr 16, 2011 at 5:01 PM, tarun agrawal <tarun at cse.iitb.ac.in> wrote: > The clone llvm:CloneBasicBlock copies the phi function in the replicated > basic block from the original basic block. > I don't want the copy of phi in relplicated block. For now I am creating .bc > file with -O0 option so that it doesn't generate phi function in first > place. Is this a
2011 Apr 16
0
[LLVMdev] Regarding BasicBlock Cloning
On Sat, Apr 16, 2011 at 4:32 PM, tarun agrawal <tarun at cse.iitb.ac.in> wrote: > Hi, > > I am writing a pass for constant propagation using graph restructuring ( > code duplication). I am facing following difficulties.. > > 1) I need to replicate the basic block but without phi function in the > replicated block. How can I do this. > > 2) I need to insert that
2011 Apr 16
3
[LLVMdev] Regarding BasicBlock Cloning
Hi, I am writing a pass for constant propagation using graph restructuring ( code duplication). I am facing following difficulties.. 1) I need to replicate the basic block but without phi function in the replicated block. How can I do this. 2) I need to insert that basic block after and before some particular basic block. Regards Tarun Agrawal -------------- next part -------------- An HTML
2011 May 03
2
[LLVMdev] Trace Use-Def chain
Hi, I need to get all the basic blocks that are there, in the path from definition of an instruction to use of that instruction. Regards Tarun -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20110503/4d3852b7/attachment.html>
2011 May 03
0
[LLVMdev] Trace Use-Def chain
HI I know it is a very simple question not worth asking here but I am really struggling pls help me out.. On Tue, May 3, 2011 at 10:10 PM, tarun agrawal <tarun at cse.iitb.ac.in> wrote: > Hi, > > I need to get all the basic blocks that are there, in the path from > definition of an instruction to use of that instruction. > > > Regards > Tarun > --------------
2011 May 04
2
[LLVMdev] Trace Use-Def chain
Thanks John, I know how to iterate through def-use chains and I also have realized the need for an algorithm to do the work. But the algorithm I am able to figure out is not linear in time. It wold be a great help if someone suggest me a way to get all basic-block along all path between two instruction. On Wed, May 4, 2011 at 7:00 AM, John Criswell <criswell at illinois.edu> wrote: >
2011 May 04
2
[LLVMdev] Trace Use-Def chain
On 5/3/11 4:08 PM, tarun agrawal wrote: > HI > > I know it is a very simple question not worth asking here but I am > really struggling pls help me out.. This is a question worth asking; it's just that not everyone can answer all the time. :) If all you want to do is to follow the SSA def-use chain within a single function, then this is very easy. All you have to do is use
2011 May 04
0
[LLVMdev] Trace Use-Def chain
Dear Tarun, It just occurred to me that this may or may not be what you are asking about. This only finds basic blocks along the def-use chain of an instruction; it does not find all basic blocks along all paths between two instructions. I don't know of an algorithm off-hand for the latter, but if you understand how to iterate over def-use chains and the control-flow graph, then
2011 May 03
1
[LLVMdev] Error compiling ConstantProp.cpp
Hi While compiling the ConstantProp.cpp I am getting the following error. error: too few arguments to function ‘llvm::Constant* llvm::ConstantFoldInstruction( llvm::Instruction*, llvm::LLVMContext&, const llvm::TargetData*) I am using llvm-2.6 and the ConstProp.cpp file is http://llvm.org/docs/doxygen/html/ConstantProp_8cpp_source.html and the exact error message is: llvm[0]: Compiling
2012 Feb 25
2
[LLVMdev] Algorithm used for doing alias analysis.
Hi, I am using alias analysis to determine whether two values are alias or not. But I am not able to figure out the algorithm that is being used to determine May , Must and No Alias. Thanks and Regards Tarun Agrawal -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20120225/e06daae7/attachment.html>
2012 Feb 08
2
[LLVMdev] Instruction for print
Hi, I am trying to insert a instruction for printf or cout. My aim is to print a integer and a string value using that instruction, which are already there in the code. but I am not able to understand how to do it. Any help would be great help. Thanks and Regards, Tarun Agrawal -------------- next part -------------- An HTML attachment was scrubbed... URL:
2011 Apr 17
2
[LLVMdev] Error compiling ConstantProp.cpp
I am using llvm-2.6 and the ConstProp.cpp file is http://llvm.org/docs/doxygen/html/ConstantProp_8cpp_source.html and the exact error message is: llvm[0]: Compiling ConstantProp.cpp for Release build (PIC) /home/tarun/Desktop/compiler/LLVM/llvm-2.6/include/llvm/Analysis/ConstantFolding.h: In member function ‘virtual bool<unnamed>::ConstantPropagation::runOnFunction(llvm::Function&)’:
2012 Feb 08
1
[LLVMdev] Instruction for print
Just to be clear, I have to add a function name printf in the module with no body. And I can call the function. This will automatically call the printf function which is defined in the library. Tarun Agrawal On Wed, Feb 8, 2012 at 11:34 PM, John Criswell <criswell at illinois.edu>wrote: > On 2/8/12 11:55 AM, tarun agrawal wrote: > > Hi, > > I am trying to insert a
2012 Feb 27
0
[LLVMdev] Algorithm used for doing alias analysis.
On Sat, Feb 25, 2012 at 8:44 AM, tarun agrawal <tarun at cse.iitb.ac.in> wrote: > Hi, > > I am using alias analysis to determine whether two values are alias or not. > But I am not able to figure out the algorithm that is being used to > determine > May , Must and No Alias. Here is the algorithm in high-level: http://llvm.org/docs/AliasAnalysis.html#exist > > >
2012 Feb 08
0
[LLVMdev] Instruction for print
On 2/8/12 11:55 AM, tarun agrawal wrote: > Hi, > > I am trying to insert a instruction for printf or cout. My aim is to > print a integer and a string value using that instruction, which are > already there in the code. > but I am not able to understand how to do it. Any help would be great > help. You want to insert a call instruction that calls the printf function.
2012 Jun 21
3
[LLVMdev] Cloning block for newbie
Hello everybody. I'm quite new to LLVM and I'm encontering problems with cloning basic blocks. My two basic blocks are in the same function and it doesn't really matter how the cloned one behave for the moment. Of course, to do so, I used the cloning.h 's method "CloneBasicBlock" but I have the "Instruction does not dominate all uses!" error. I know what it
2012 Jun 21
0
[LLVMdev] Cloning block for newbie
Please reply-all so that the thread is kept on llvmdev. The LLVM Programmer's Manual has examples of how to iterate over many common structures, such as instructions in a basic block[1]. Other than that, you can check the source code or doxygen[2]. Basically, you loop over the instructions as detailed in the programmer's manual[1], and loop over the operands using User's