Displaying 20 results from an estimated 500 matches similar to: "[LLVMdev] Problem in Adding a pass to LLVM"
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 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 15
3
[LLVMdev] A very basic doubt about LLVM Alias Analysis
Hi,
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.
Actually what I want to do is implement a flow sensitive points-to(not
alias) analysis and then use that information for some optimizations
like PRE.
Will that be
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
2009 May 23
0
[LLVMdev] why RegisterPass<TargetData> initialize itself twice in my system
HI, Developers:
I linked libLTO.so in $LLVMROOT/Debug/lib
however, my program crashes in assertion at 149line [Pass.cpp]
void RegisterPass(const PassInfo &PI) {
bool Inserted =
PassInfoMap.insert(std::make_pair(PI.getTypeInfo(),&PI)).second;
assert(Inserted && "Pass registered multiple times!");
}
i confirm that there is only one static variable
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 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
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 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 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 Apr 15
3
[LLVMdev] How to extract Left Hand side of Instruction
Hi,
Suppose I have llvm Instruction as :
%9 = load i32* %b, align 4
and I want to extract the name of temporary value used here ie 9.
Can any body tell that how can I do that?
thanks and regards,
Ambika
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 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.
2010 Feb 22
2
[LLVMdev] Regarding a pass in LLVM
Hi,
I am trying to add a pass inn LLVM, and I actually want to add it in
source code, not just directly into object code.
For that I included the lines in my file MyAna.cpp
(llvm-2.6/lib/ana/MyAna.cpp)
char MyAna::ID = 0;
static RegisterPass<MyAna> X("my-aa","My Analysis");
static RegisterAnalysisGroup<AliasAnalysis> Y(X);
ModulePass *llvm::createMyAnaPass() {
2010 Feb 09
2
[LLVMdev] Help regarding Flow of function calls in llvm
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 "debugger not implemented" when i try to use
it. Can I use gdb or something like that with llvm.
What I basically want is to know that when I run some Alias Analysis
then from where the functions of file
2010 May 08
3
[LLVMdev] [Fwd: Error while running my pass with opt]
Hi,
you need something like this in your pass:
void YourPass::getAnalysisUsage(AnalysisUsage &AU) const {
AU.addRequired<DominatorTree>();
}
because you need to specify which analysis you are using.
Tobi
2010 May 08
0
[LLVMdev] [Fwd: Error while running my pass with opt]
But this is already present in my pass.
And I am not able to understand the cause for the error:
opt: /home/ambika/llvm_3/llvm-2.6/include/llvm/PassAnalysisSupport.h:203:
AnalysisType& llvm::Pass::getAnalysisID(const llvm::PassInfo*) const
[with AnalysisType = llvm::DominatorTree]: Assertion `ResultPass &&
"getAnalysis*() called on an analysis that was not "
2010 May 10
2
[LLVMdev] [Fwd: Error while running my pass with opt]
ambika wrote:
> Here is getAnalysisUsage() i am using,
>
> void getAnalysisUsage(AnalysisUsage &AU) const {
> AU.setPreservesAll();
> AU.addRequired<DominatorTree>();
> }
>
> and then I use it as,
>
>
> bool ptrTest::runOnModule(Module &M) {
>
> DominatorTree &DT = getAnalysis<DominatorTree>();
> ......
>
2010 May 31
2
[LLVMdev] Finding Merge nodes in CFG
Actually I have collected some pointer information in the form [ p -> a,c
]. Now suppose at some node I have information as [p->a,c]. Now i want to
find a merge node above this node where this information is actually
geting merged.
So if I get a merge node above this, I can check in its predecessors if
their out has only [p->a] or [p->c] and if not so then I will look for the
next