[LLVMdev] Does the gcc frontend do inlining or deadcode elimination	?
    Long Fei 
    lfei at ecn.purdue.edu
       
    Thu Jul  7 13:52:42 PDT 2005
    
    
  
I am investigating some inlining issue, so I did
llvm-gcc aaa.c bbb.c ... nnn.c -o output
opt -inline -inline-threshold=xxx < output.bc | llc -march=c > 
output_inline.c
1)
I noticed that even if I set xxx to 0 or even a very small negative 
number, many functions are eliminated. I am wondering if these functions 
are inlined by the frontend, or identified as deadcode.
For instance, SPEC2k bzip2 has 79 functions, after these two steps, only 
61 functions are left. no other optimizations are used.
2)
I noticed that the inlining condition (in 
Transforms/IPO/InlineSimple.cpp) is tested during llvm-gcc but not 
during the opt phase ? Can anybody explain what happens during llvm-gcc 
and opt respectively ?
thanks,
--Long
    
    
More information about the llvm-dev
mailing list