Displaying 20 results from an estimated 3000 matches similar to: "[LLVMdev] LoopPass doFinalization() called multiple times per program?"
2012 Dec 17
3
[LLVMdev] LoopPass doFinalization() called multiple times per program?
On Sun, Dec 16, 2012 at 7:23 AM, Duncan Sands <baldrick at free.fr> wrote:
> Hi Stephen,
>
>
> On 13/12/12 18:58, Stephen McGruer wrote:
>
>> I'm wondering if the documentation for LoopPass
>> (http://llvm.org/docs/**WritingAnLLVMPass.html#**LoopPass<http://llvm.org/docs/WritingAnLLVMPass.html#LoopPass>)
>> is misleading or
>> incorrect (or
2012 Dec 16
0
[LLVMdev] LoopPass doFinalization() called multiple times per program?
Hi Stephen,
On 13/12/12 18:58, Stephen McGruer wrote:
> I'm wondering if the documentation for LoopPass
> (http://llvm.org/docs/WritingAnLLVMPass.html#LoopPass) is misleading or
> incorrect (or if I'm just missing something.) The documentation states:
>
> "The doFinalization method ... is called when the pass framework has finished
> calling runOnLoop
2012 Dec 17
0
[LLVMdev] LoopPass doFinalization() called multiple times per program?
Hi Chandler,
On 17/12/12 13:47, Chandler Carruth wrote:
> On Sun, Dec 16, 2012 at 7:23 AM, Duncan Sands <baldrick at free.fr
> <mailto:baldrick at free.fr>> wrote:
>
> Hi Stephen,
>
>
> On 13/12/12 18:58, Stephen McGruer wrote:
>
> I'm wondering if the documentation for LoopPass
>
2008 Aug 19
0
[LLVMdev] LoopPass Question
On Aug 19, 2008, at 12:32 PM, David Greene wrote:
> Are LoopPasses allowed to maintain state between runOnLoop
> invocations?
What kind of information are you looking to maintain between runOnLoop
invocations ?
>
> The documentation is not clear on this point.
doInitialization() and doFinalization() will be run for each pass
before and after runOnLoop().
For each pass
2008 Aug 19
2
[LLVMdev] LoopPass Question
Are LoopPasses allowed to maintain state between runOnLoop invocations?
The documentation is not clear on this point.
-Dave
2012 Jul 23
1
[LLVMdev] llvm::LoopPass
Hi Edvard, _ZTIN4llvm8LoopPassE is "typeinfo for llvm::LoopPass". LLVM is
built without typeinfo, so you will need to build your pass with -fno-rtti.
Ciao, Duncan.
> I'm trying to implement LoopPass.
> Here is simple code :
>
> class LoopParser: public llvm::LoopPass
> {
> public:
> static char ID;
>
> public:
> virtual
2012 Jul 23
0
[LLVMdev] llvm::LoopPass
Hello .
I'm trying to implement LoopPass.
Here is simple code :
class LoopParser: public llvm::LoopPass
{
public:
static char ID;
public:
virtual void getAnalysisUsage(llvm::AnalysisUsage &AU) const
{
AU.addRequiredID(llvm::LoopSimplifyID);
AU.addPreservedID(llvm::LoopSimplifyID);
AU.addRequired<llvm::LoopInfo>();
}
2008 Aug 19
1
[LLVMdev] LoopPass Question
On Tuesday 19 August 2008 15:15, Devang Patel wrote:
> On Aug 19, 2008, at 12:32 PM, David Greene wrote:
> > Are LoopPasses allowed to maintain state between runOnLoop
> > invocations?
>
> What kind of information are you looking to maintain between runOnLoop
> invocations ?
Cached analysis answers.
> > The documentation is not clear on this point.
>
>
2011 Sep 12
1
[LLVMdev] IVUsers (LoopPass) analysis in a ModulePass?
Hi Tim,
> From: Tim Creech <tcreech at umd.edu>
> Subject: [LLVMdev] IVUsers (LoopPass) analysis in a ModulePass?
> Date: September 1, 2011 11:46:28 AM PDT
> To: llvmdev at cs.uiuc.edu
>
> Hi all,
> I have a loadable ModulePass which does transformations, and I would like to
> use IVUsers analysis within it. I noticed when I try to do this (via
> the usual
2014 Aug 12
2
[LLVMdev] All the passes (even the LLVMHello.so) fail at doFinalization()
Hi all,
I find all my passes are all broken with LLVM 3.4. Then I tried out the
LLVMHello.so specified in the LLVM doc,
http://llvm.org/docs/WritingAnLLVMPass.html
and it also crashes.
It seems all the functions in the pass do work, but LLVM crashes in the
doFinalization() step.
Does anyone know this problem?
Thanks!
Tianyin
2014 Aug 12
2
[LLVMdev] All the passes (even the LLVMHello.so) fail at doFinalization()
no... I guess verifier runs by default and it points to the
doFinailization() function :-(
~t
On Tue, Aug 12, 2014 at 12:53 AM, Eric Christopher <echristo at gmail.com>
wrote:
> No idea, I was suggesting to just run the verifier to see if it would
> pinpoint what's broken about the module.
>
> -eric
>
> On Tue, Aug 12, 2014 at 12:52 AM, Tianyin Xu <tixu at
2014 Aug 12
2
[LLVMdev] All the passes (even the LLVMHello.so) fail at doFinalization()
Oh, you mean opt -disable-verify?
Yes, it does eliminate the crashing...
Do you know what's the problem, Eric?
Thanks a lot!
~t
On Tue, Aug 12, 2014 at 12:42 AM, Eric Christopher <echristo at gmail.com>
wrote:
> Tried opt -verify on your module?
>
> -eric
>
> On Tue, Aug 12, 2014 at 12:28 AM, Tianyin Xu <tixu at cs.ucsd.edu> wrote:
> > Hi all,
> >
2012 Jul 05
3
[LLVMdev] "symbol lookup error" while running a Simple Loop Pass
Hello;
I wrote this simple loop pass to collect the number of instructions in each
loop of the program. The code is as follows-
#define DEBUG_TYPE "loopinst"
#include "llvm/Pass.h"
#include "llvm/Analysis/LoopPass.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/Instructions.h"
#include
2014 Aug 12
2
[LLVMdev] All the passes (even the LLVMHello.so) fail at doFinalization()
I just follow the tutorial: http://llvm.org/docs/WritingAnLLVMPass.html
Actually it's not only my module, I used the LLVMHello.so (a sample module
in the source tree) and get the crash (I didn't do anything :-P).
~t
On Tue, Aug 12, 2014 at 12:57 AM, Eric Christopher <echristo at gmail.com>
wrote:
> Weird, it definitely shouldn't be crashing. How did you create your
2009 May 08
3
[LLVMdev] problem with analysis required
Hello,
I was trying to get the loop info in a module pass to be able to
iterate over the loops int the module itself. Since my pass requires
to make module level changes including adding new types to module
hence a looppass cannot be used here.
I am getting the following error on running opt.
opt: /root/llvm-2.4/include/llvm/PassAnalysisSupport.h:199:
AnalysisType&
2014 Aug 12
2
[LLVMdev] All the passes (even the LLVMHello.so) fail at doFinalization()
The module is shipped with the source code, so it's from the developers
(not me).
The path in the source tree is:
llvm-3.4.2.src/lib/Transforms/Hello
After compiled LLVM
*#./configure --prefix=XXX
--with-binutils-include=/path-to-binutils-2.24/include
--enable-debug-symbols --enable-debug-runtime --enable-assertions
--disable-optimized; make; make install*
LLVMHello.so is generated at
2011 May 09
2
[LLVMdev] get LPPassManager to use it in llvm::CloneLoop
Hi,
I try to write a FunctionPass that, among other tasks, has to clone some loops
from the current function.
How can I obtain the LPPassManager in order to use the CloneLoop function.
In a LoopPass this is a parameter for the runOnLoop, but how can I obtain it in
a FunctionPass?
I tried simply by creating a new instance :
ValueMap<const Value *, Value* > VMap;
2013 May 01
1
[LLVMdev] undefined symbol for LoopPass
Hello,
I am building a loop pass following these instructions:
http://llvm.org/docs/WritingAnLLVMPass.html
Everything works fine, I did it many times for Function Passes, but in the
runOnPass method, whenever I call a method of the loop L passed as
argument, for example L->begin(), I get the following error:
opt: symbol lookup error: /home/giacomo/llvmcsfv/Debug+Asserts/lib/Acsl.so:
>
2010 Aug 12
1
[LLVMdev] Optimization pass questions
On Aug 11, 2010, at 5:57 PM, Tanya Lattner wrote:
> Have you read this document?
> http://llvm.org/docs/WritingAnLLVMPass.html#passtype
Yes, but I didn't find it as instructive as I'd hoped. The only two examples of pass sets I can find are the Kaleidoscope tutorial and StandardPasses.h (corresponding, I assume, to what llvm-gcc does). Just looking at the two of these, some
2012 Jul 05
0
[LLVMdev] "symbol lookup error" while running a Simple Loop Pass
Problem solved. I was building llvm in a separate llvm-build directory. I
built it within the llvm-src directory (which kept all the llvm .so and my
pass' .so in the llvm-src/Release+Asserts/lib directory) to solve the
problem.
Can anyone tell me what's the difference between writing a pass as a
"struct" (as in the tutorial) and as a "class" (as most developers do)?