[LLVMdev] opt -O2/-O3 does not Initialize pass?

Nick Lewycky nicholas at mxc.ca
Wed Mar 11 19:41:32 PDT 2009


Anthony Danalis wrote:
> Hello,
> 
> I'm writing a pass that adds a function prototype to the module during  
> doInitialization() and stores the pointer in a global variable.  If I  
> run opt with "-O1" or less, everything works fine.  However, If I call  
> opt with "-O2" or "-O3" then as soon as runOnFunction() is called, the  
> pointer seems to be NULL.  Here is a code that shows the problem:

That sounds like the same bug as llvm.org/PR3520 , which was fixed after 
the 2.5 release. Can you confirm which version of LLVM you're seeing 
this in, and if it is 2.5, could you update to SVN head and see whether 
it still happens for you?

Nick



More information about the llvm-dev mailing list