Displaying 20 results from an estimated 1000 matches similar to: "[LLVMdev] why functionattrs doesn't add dependency of AliasAnalysis"
2011 Dec 06
2
[LLVMdev] Assertion `PI && "Expected required passes to be initialized"' failed for AliasAnalysis.
Dear lazydev,
I'm writing an instrumentation pass that depends on AliasAnalysis. My
getAnalysisUsage() looks as follows:
2453 void ThreadSanitizer::getAnalysisUsage(AnalysisUsage &AU) const {
2454 AU.addRequired<TargetData>();
2455 AU.addRequired<AliasAnalysis>();
2456 }
and the pass initialization:
2668 char ThreadSanitizer::ID = 0;
2669
2011 Dec 06
0
[LLVMdev] Assertion `PI && "Expected required passes to be initialized"' failed for AliasAnalysis.
Hi Alexander,
I had the same error:
sincos: /home/marcusmae/rpmbuild/BUILD/llvm/lib/VMCore/PassManager.cpp:635:
void llvm::PMTopLevelManager::schedulePass(llvm::Pass*): Assertion `PI
&& "Expected required passes to be initialized"' failed.
The solution was to add:
PassRegistry &Registry = *PassRegistry::getPassRegistry();
initializeCore(Registry);
2011 Aug 22
1
[LLVMdev] Infinite loop when adding a new analysis pass
I am trying to add an analysis pass as a FunctionPass, and let LICM
(LoopPass) depends upon it. So in LICM.cpp, I have the following:
virtual void getAnalysisUsage(AnalysisUsage &AU) const {
AU.setPreservesCFG();
AU.addRequired<DominatorTree>();
AU.addRequired<LoopInfo>();
AU.addRequiredID(LoopSimplifyID);
AU.addRequired<AliasAnalysis>();
2012 Oct 30
1
[LLVMdev] Error when trying to chain two llvm transform passes
On Oct 30, 2012, at 3:15 PM, Krzysztof Parzyszek <kparzysz at codeaurora.org> wrote:
> On 10/30/2012 4:10 PM, Ashwin kumar wrote:
>>
>> Assertion failed: (PI && "Expected required passes to be initialized"),
>> function schedulePass, file PassManager.cpp, line 597.
>>
>>
>> I register the passes using RegisterPass function call.
2011 Dec 14
2
[LLVMdev] Adding dependency on MemoryDependenceAnalysis pass to LICM causes opt to get stuck in addPass
I'm attempting to add some support for hoisting/sinking of memory-using
intrinsics in loops, and so I want to use MemoryDependenceAnalysis in
LICM, but when I modify getAnalysisUsge to include this :
virtual void getAnalysisUsage(AnalysisUsage &AU) const {
AU.setPreservesCFG();
AU.addRequired<DominatorTree>();
AU.addRequired<LoopInfo>();
2013 Oct 30
0
[LLVMdev] Is there pass to break down <4 x float> to scalars
Liu Xin <navy.xliu at gmail.com> writes:
> Your decompose vector patch works perfect on my site. Unfortunately, I
> still get stupid code because llvm '-dse' fails followed by
> 'decompose-vector' .
> I read the DSE code and it is definitely capable of eliminating unused
> memory stores if its AA works. I don't think basic AA works for me. I
> found
2013 Oct 30
2
[LLVMdev] Is there pass to break down <4 x float> to scalars
Hi, Richard,
Your decompose vector patch works perfect on my site. Unfortunately, I
still get stupid code because llvm '-dse' fails followed by
'decompose-vector' .
I read the DSE code and it is definitely capable of eliminating unused
memory stores if its AA works. I don't think basic AA works for me. I
found my program have complex memory accesses, such as bi-dimentional
2013 Aug 19
1
[LLVMdev] How to disbale loop-rotate in opt -O3 ?
Hello,
I am trying to simplify the CFG of a given code and eliminate the conditionals, even though I will obtain codes that are not semantically equivalent.
For example, given a simple loop:
for(i=0; i<N; i++){
a[i] = i;
if (i%2==0)
a[i] += 12;
}
I would keep only the loop, without the if statement:
for(i=0; i<N; i++){
a[i] = i;
}
I can eliminate such conditionals on
2017 Jul 10
2
[ThinLTO] Making ThinLTO functions not fail hasExactDefinition (specifically preventing it from being derefined)
Hey all,
I'm working on adding interprocedural FunctionAttrs optimization (
http://llvm-cs.pcc.me.uk/lib/Transforms/IPO/FunctionAttrs.cpp) to ThinLTO
so it does something similar to what LTO is doing (
https://bugs.llvm.org/show_bug.cgi?id=33648). I've hit a problem with how
the FunctionAttrs optimization expects linkage types.
In ThinLTO since the linkage type is set to External or
2017 Jul 11
2
[ThinLTO] Making ThinLTO functions not fail hasExactDefinition (specifically preventing it from being derefined)
Hi Charles,
On Tue, Jul 11, 2017 at 12:27 PM, Davide Italiano <davide at freebsd.org> wrote:
>> I'm working on adding interprocedural FunctionAttrs optimization
>> (http://llvm-cs.pcc.me.uk/lib/Transforms/IPO/FunctionAttrs.cpp) to ThinLTO
>> so it does something similar to what LTO is doing
>> (https://bugs.llvm.org/show_bug.cgi?id=33648). I've hit a problem
2011 Nov 15
1
[LLVMdev] opt -O2 optimization passes
Hi all,
I would like to know which optimization passes are performed at -O2 by opt.
So I used following command:
llvm-as < /dev/null | opt -O2 -std-compile-opts -disable-output
-debug-pass=Arguments
I've got following output for LLVM opt 2.9:
Pass Arguments: -no-aa -tbaa -basicaa -simplifycfg -domtree -scalarrepl
-early-cse
Pass Arguments: -targetlibinfo -no-aa -tbaa -basicaa
2015 Dec 02
5
Is there a way to pass Optimization passes to clang?
0 down vote favorite
<http://stackoverflow.com/questions/34049511/how-to-pass-optimization-passes-to-clang#>
I'm trying to debug an issue for a new target where a testcase fails with
-O1 optimization and passes with -O0 optimization.
I got a list of optimization passes being performed when 'clang -O1' is
called like this:
llvm-as < /dev/null | opt -O1 -disable-output
2011 Sep 10
2
[LLVMdev] readnone
Nick Lewycky wrote:
> I was sure that I remember "opt -functionattrs" being taught to do this,
> but I just tried it out and it doesn't. This is a missed optz'n
> opportunity, testcase:
>
> @x = constant i32 0
> define void @foo() {
> load i32* @x
> ret void
> }
>
> is only marked readonly when it should be readnone. Could
2011 Sep 10
0
[LLVMdev] readnone
Thanks for the answer Nick. Now you got me on a chase through FunctionAttrs.cpp
trying to find out what analysis passes "... which answers no to everything", means. :-)
Garrison
On Sep 10, 2011, at 13:52, Nick Lewycky wrote:
> Nick Lewycky wrote:
>> I was sure that I remember "opt -functionattrs" being taught to do this,
>> but I just tried it out and it
2011 Dec 14
0
[LLVMdev] Adding dependency on MemoryDependenceAnalysis pass to LICM causes opt to get stuck in addPass
On Dec 14, 2011, at 7:09 AM, David Gardner wrote:
> I'm attempting to add some support for hoisting/sinking of memory-using
> intrinsics in loops, and so I want to use MemoryDependenceAnalysis in
> LICM, but when I modify getAnalysisUsge to include this :
>
> virtual void getAnalysisUsage(AnalysisUsage &AU) const {
> AU.setPreservesCFG();
>
2012 Oct 30
2
[LLVMdev] Error when trying to chain two llvm transform passes
Hi,
I am trying to chain two transform passes.
** The first pass is a function pass which requires the 'memory dependence pass' .
** The second pass is a function pass which requires the first pass above.
The passes run fine when executed alone.
I get the following error when I try to run my second pass with the following code added
>
> void
2015 Jan 05
2
[LLVMdev] LTO v. opt
Thanks to you both.
On my Linux (centos6) system, I have reproduce a variant of the bug and learned about
-plugin-opt=-debug-pass=Arguments
which I infer from comments is intended to built arguments to “opt” however I found that some of the arguments don’t seem to be quite correct. I assume this just minor bit rot.
bin/opt -o pass1.bc -datalayout -notti -basictti -x86tti -targetlibinfo
2013 Sep 23
0
[LLVMdev] Cannot get Alias Analysis?
Hi,
I am trying to write my own command-line tool which would use alias
analysis in a CallGraphSCCPass.
Firstly, I inherit a class AnalysisDriver from CallGraphSCCPass.
Then, I implement my own runOnFunction method which tries to get alias
analysis from each function.
The code is shown as follows:
*class AnalysisDriver : public CallGraphSCCPass {*
* static char Pid;*
* PassManager
2009 Jun 29
0
[LLVMdev] Limitations of Alias Analysis?
On 2009-06-29 11:16, Wenzhi Tao wrote:
> Hi, all
>
> According to the document "LLVM Alias Analysis Infrastructure", I
> evaluated the AA performance by using the paramenters '-basicaa -ds-aa
> -anders-aa'. The source code 'test.c' is listed as follow:
> [...]
> The whole process:
>
> llvm-gcc -emit-llvm -O0 -c test.c -o test.bc
>
> opt
2015 May 11
2
[LLVMdev] about MemoryDependenceAnalysis usage
add -basicaa to your command line :)
On Mon, May 11, 2015 at 7:15 AM, Willy WOLFF <willy.mh.wolff at gmail.com> wrote:
> I play a bit more with MemoryDependenceAnalysis by wrapping my pass, and
> call explicitely BasicAliasAnalysis. Its still using No Alias Analysis.
>
> How can I let MemoryDependenceAnalysis use BasicAliasAnalysis?
>
> Please, find attached my pass.
>