Displaying 20 results from an estimated 1000 matches similar to: "[LLVMdev] Dynamic Analysis"
2011 Dec 23
1
[LLVMdev] Stop MachineCSE on certain instructions
Hi Jim.
I'm doing custom lowering but here I have a very basic issue and the situation is like this -
[Original Op]
Mul Dest, Src1, Src2
[Expanded from EmitInstrWithCustomInserter]
Step1 Dest, Src1, Src2 <=== BuildMI(..., Step1, Dest).addReg(Src1).addReg(Src2)
Step2 Dest, Src1, Src2 <=== BuildMI(..., Step2, Dest).addReg(Src1).addReg(Src2)
Step3 Dest, Src2, Src1 <===
2011 Dec 21
0
[LLVMdev] Stop MachineCSE on certain instructions
Ah, OK. I think I understand much better now. Thanks! You shouldn't need bundles for that sort of thing. A custom lowering or a fancy pattern should be sufficient, depending on the details of how your target is defined.
For patterns, looks at the various targets use of the Pat<>, Pattern<>, ComplexPattern<> and related classes in the .td files.
For examples of custom
2011 Dec 21
2
[LLVMdev] Stop MachineCSE on certain instructions
Hi, Jim.
In my case the target (Tilera) doesn't have a full 32-bit mult operation and to do so it has to accumulate results from three 16-bit mults, by retaining operands and the result across in the same registers. However the ISel DAG thinks its a CSE case. Please note this is not a MAdd/MSub triad.
How could I do this by defining such a sequence or the pattern in the .def file itself for
2012 Jan 24
0
[LLVMdev] Resolving branch instr with label "$BB0_-1"
May be you have branched to a BB which has been deleted.
On 24 January 2012 20:16, girish gulawani <girishvg at yahoo.com> wrote:
>
> Hello All.
> On a particular target the back-end generates an instruction like:
> beqz r2, "$BB0_-1"
>
> Is it a back-end specific issue? Could someone please help me figure out
> how this gets resolved? What confuses me
2012 Jan 24
2
[LLVMdev] Resolving branch instr with label "$BB0_-1"
Hi Aries.
Thanks very much!
Precisely this is the situation! There're two consecutive branches (br1cond and br2uncond). Inside of AnalyzeBranch, there's an opcode swap of br2uncond (ex. j_foward to j_backward). There I do BuildMI (newOpcode) and followed by br2uncond->eraseFromParent(). This results in br1cond loosing it's label/offset. How could I resolve this?
Best regards,
2011 Dec 20
0
[LLVMdev] Stop MachineCSE on certain instructions
Hi Girish,
Sorry, but I'm afraid I don't understand your question. Can you elaborate a bit?
-Jim
On Dec 19, 2011, at 9:12 PM, girish gulawani wrote:
>
> Hello Jim.
> Just out of curiosity, won't such mechanism work via the patterns from instructions defs?
>
> Thanks.
> Girish.
>
> From: Jim Grosbach <grosbach at apple.com>
> To: Johannes
2012 Jan 24
2
[LLVMdev] Resolving branch instr with label "$BB0_-1"
Hello All.
On a particular target the back-end generates an instruction like:
beqz r2, "$BB0_-1"
Is it a back-end specific issue? Could someone please help me figure out how this gets resolved? What confuses me is, all other branches are correctly labelled and resolved!
Thanks.
Girish.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
2011 Dec 20
2
[LLVMdev] Stop MachineCSE on certain instructions
Hello Jim.
Just out of curiosity, won't such mechanism work via the patterns from instructions defs?
Thanks.
Girish.
>________________________________
> From: Jim Grosbach <grosbach at apple.com>
>To: Johannes Birgmeier <e0902998 at student.tuwien.ac.at>
>Cc: LLVM Developers Mailing List <llvmdev at cs.uiuc.edu>
>Sent: Monday, 19 December 2011 10:33 PM
2011 Apr 17
0
[LLVMdev] Error compiling ConstantProp.cpp
On Sat, Apr 16, 2011 at 5:27 PM, tarun agrawal <tarun at cse.iitb.ac.in> wrote:
> 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)
>
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
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
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
>
>
>
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 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 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
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.
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:
>
2012 Jan 09
0
[LLVMdev] Dynamic Analysis
Dear Tarun,
Swarup Sahoo and I wrote some LLVM passes for dynamic slicing for LLVM 2.6. I believe we had planned to make the code publicly available as part of the Giri project (http://llvm.org/viewvc/llvm-project/giri/trunk), but due to other commitments, we have not moved the code into that SVN repository yet.
Let me check with Vikram and Swarup to see about getting a copy of the code to you.
2011 Apr 17
0
[LLVMdev] Error compiling ConstantProp.cpp
On Sat, Apr 16, 2011 at 5:07 PM, tarun agrawal <tarun at cse.iitb.ac.in> wrote:
> 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*)
If you're reporting a build error, please include the