Displaying 20 results from an estimated 3000 matches similar to: "[LLVMdev] how to let memory dependency analysis use globalsmodref"
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
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
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
2015 Jan 17
3
[LLVMdev] loop multiversioning
Does LLVM have loop multiversioning ? it seems it does not with clang++ -O3
-mllvm -debug-pass=Arguments program.c -c
bash-4.1$ clang++ -O3 -mllvm -debug-pass=Arguments fast_algorithms.c -c
clang-3.6: warning: treating 'c' input as 'c++' when in C++ mode, this
behavior is deprecated
Pass Arguments: -datalayout -notti -basictti -x86tti -targetlibinfo -no-aa
-tbaa -scoped-noalias
2013 Sep 05
1
[LLVMdev] why functionattrs doesn't add dependency of AliasAnalysis
Hi, List,
As you may know, BCC of android makes use of LLVM's major components. Its
LTO actually selects some optimizations of LLVM.
I found it can not only use "-functionattrs". I must first use
-argpromotion first, or I end up this error:
Pass 'Deduce function attributes' is not initialized.
Verify if there is a pass dependency cycle.
Required Passes:
bcc:
2012 Jun 08
2
[LLVMdev] How to use LLVM optimizations with clang
Hi,
> If I compile the program using the following command line i.e.
>
> $ clang -O3 -lm *.c
this may be doing link time optimization.
>
> then
>
> $ time ./a.out
>
> real 0m2.606s
> user 0m2.584s
> sys 0m0.012s
>
> BUT, if I use all the optimizations enabled with -O3 but specify them
> explicity i.e.
you can just use "opt -O3"
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
2012 Jun 12
2
[LLVMdev] How to use LLVM optimizations with clang
Hello
I need some help here please.
If we compile source files directly in to native code:
$ clang -O3 -lm *.c
then the runtime is like following
real 0m2.807s
user 0m2.784s
sys 0m0.012s
and If we emit LLVM bytcode and apply optimizations
$ clang -O3 -c -emit-llvm *.c
$ llvm-link *.o -o comb.ll
$ time lli ./comb.ll
then the runtime is
real 0m2.671s
user 0m2.640s
sys 0m0.020s
But, if I
2012 Jun 08
2
[LLVMdev] How to use LLVM optimizations with clang
Hi,
> I tried it with -o - but its producing an error
>
> gcc: fatal error: cannot specify -o with -c, -S or -E with multiple files
>
> What you suggest?
what I wrote:
>> for F in *.c ; do B=`basename $F .c` ; gcc -fplugin=/path/to/dragonegg.so
>> -S -o - $F -fplugin-arg-dragonegg-emit-ir | opt -adce -o $B.ll ; done
>> clang *.ll
Thanks to the for loop and
2015 Jan 05
2
[LLVMdev] LTO v. opt
On Jan 3, 2015, at 11:52 PM, Bill Wendling <isanbard at gmail.com> wrote:
> On Jan 2, 2015, at 8:32 PM, David Callahan <dcallahan at fb.com> wrote:
>
>> Hi,
>>
>> I am new to the LLVM dev community so forgive a perhaps obvious question. I am looking at bug 17623 which is an LTO/optimizer interaction bug. I am working on a Mac with Xcode installed but have
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.
>
2012 Jun 12
2
[LLVMdev] How to use LLVM optimizations with clang
Hi
Yes, they both are exactly the same.
Regards
Shahzad
On Tue, Jun 12, 2012 at 9:38 AM, Duncan Sands <baldrick at free.fr> wrote:
> Hi, is the comb.ll used here:
>
>
>> $ time lli ./comb.ll
>>
>> then the runtime is
>>
>> real 0m2.671s
>> user 0m2.640s
>> sys 0m0.020s
>>
>> But, if I convert this same file comb,ll
2012 Jun 08
0
[LLVMdev] How to use LLVM optimizations with clang
Hello Duncan
Sorry for the mistake. Actually that error occurred when I was
compiling all the files at once, NOT in for loop.
The for loop is working perfectly as it is dealing with individual
files. I have now one new issue. Let me specify it briefly.
If I compile the program using the following command line i.e.
$ clang -O3 -lm *.c
then
$ time ./a.out
real 0m2.606s
user 0m2.584s
sys
2010 Feb 03
1
[LLVMdev] Compiling Linux Kernel
Does anyone have experience to compile Linux kernel in LLVM-2.6?
I am working on a C/C++ race detection framework and want to test in
large applications. But I do have a lot of errors while compiling
Linux kernel 2.6.3 using LLVM-2.6. Actually, I only need to get the
.bc bitcode file.
Anyboy does similar work before? Which Linux kernel version is used
and any skills?
Thanks.
Lei
/******
* Lei
2012 Jun 08
0
[LLVMdev] How to use LLVM optimizations with clang
Thanks Duncan
It was really helpful.
Regards
Abdul
On Fri, Jun 8, 2012 at 7:23 PM, Duncan Sands <baldrick at free.fr> wrote:
> Hi,
>
>
>> If I compile the program using the following command line i.e.
>>
>> $ clang -O3 -lm *.c
>
>
> this may be doing link time optimization.
>
>
>>
>> then
>>
>> $ time ./a.out
>>
2011 Nov 18
2
[LLVMdev] GlobalsModRef
Hi all,
I'm implementing an intra-procedural analysis. For correctness, during
the analysis of each function I need to know which global variables
may be modified by other functions in order to avoid wrong assumptions
about those variables.
I looked at lib/Analysis/IPA/GlobalsModRef.cpp and it seems that it
does what I want. My problem is that I don't know how to use it ;-(
I wrote a
2011 Nov 19
0
[LLVMdev] GlobalsModRef
Hi Jorge,
> I'm implementing an intra-procedural analysis. For correctness, during
> the analysis of each function I need to know which global variables
> may be modified by other functions in order to avoid wrong assumptions
> about those variables.
>
> I looked at lib/Analysis/IPA/GlobalsModRef.cpp and it seems that it
> does what I want. My problem is that I don't
2015 May 09
2
[LLVMdev] about MemoryDependenceAnalysis usage
Hi,
I try to use MemoryDependenceAnalysis in a pass to analyse a simple function:
void fct (int *restrict*restrict M, int *restrict*restrict L) {
S1: M[1][1] = 1;
S2: L[2][2] = 2;
}
When I iterate over MemoryDependenceAnalysis on the S2 statement, I get the load instruction for the first depth of the array, that’s ok. But I get also the load and store for the S1 statement.
I assume the
2012 Jun 12
0
[LLVMdev] How to use LLVM optimizations with clang
Hi, is the comb.ll used here:
> $ time lli ./comb.ll
>
> then the runtime is
>
> real 0m2.671s
> user 0m2.640s
> sys 0m0.020s
>
> But, if I convert this same file comb,ll in to native binary
the same as the comb.ll used here:
> $ clang comb.ll
?
Ciao, Duncan.
>
> and execute it, then the runtime increases alot
>
> $ time ./a.out
>
> real
2015 Jul 13
2
[LLVMdev] enable globalsmodref-aa by default
Hello
I am trying to enable globalsmodref-aa by default. globalmodref-aa is a
ModulePass and therefore can be invalidated and need to be rerun.
I see globalsmodref-aa is enabled in LTO passmanager by adding the analysis
pass explicitly. I wonder whether globalsmodref-aa can be enabled/run based
on pass dependencies, i.e. those indicated in getAnalysisUsage().
Thanks,
Xin
-------------- next