[LLVMdev] Using basicaa alias analysis pass
Roel Jordans
r.jordans at tue.nl
Wed Jan 21 08:51:17 PST 2015
Hi,
I think you're looking for the -print-alias-sets option in opt
http://llvm.org/docs/AliasAnalysis.html#the-print-alias-sets-pass
Also two other small remarks:
1)
The alias analysis is a pass provided by LLVM itself so you won't have
to load it as a library
2)
Alias analysis only does analysis and this information gets used by
other passes. Only running the alias analysis won't change the program.
Opt has an option -disable-output, which disables the bitcode output
(it will still print the debug output though).
That would make your opt command:
> opt -load lib/AliasAnalysis.so -basicaa < hello.bc > result.bc
More like this:
opt -basicaa -print-alias-sets -disable-output hello.bc
Cheers,
Roel
On 21/01/15 17:09, Sheng-Hsiu Lin wrote:
> Hi
>
> I am completely new to LLVM, and I am trying to explore the alias
> analysis part of it. It seems to me that -basicaa is the most simple
> alias analysis pass in LLVM. So I would like to try and make it work
> (to see some alias analysis results of some sample bit code).
>
> What I have done is that I
>
> ---make lib/Analysis/BasicAliasAnalysis.cpp into a .so file
> ---write a sample c program, hello.c, with the following code
>
> #include<stdio.h>
>
> int main()
> {
> int a;
> int *p;
> p = &a;
> a = 10;
> printf("Hello World");
> return 0;
> }
>
> ---compile the c program into bit code by doing
> clang -c -emit-llvm hello.c -o hello.bc
>
> ---run the bit code through basicaa pass
> opt -load lib/AliasAnalysis.so -basicaa < hello.bc > result.bc
>
> ---display the resulted bit code
> llvm-dis result.bc -o -
>
> However, the resulted bit code result.bc is exactly the same as the
> original bit code hello.bc. That is no alias analysis information is
> printed on the screen or recorded in the resulting result.bc file.
>
> Could someone explain what I should do to get some results from basicaa
> alias analysis pass?
>
> Thank you very much. Your help is much appreciated!
>
> Sheng-Hsiu
>
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
More information about the llvm-dev
mailing list