[PM] Don't require analysis results to be const in the new pass manager.
authorChandler Carruth <chandlerc@gmail.com>
Wed, 5 Feb 2014 21:41:42 +0000 (21:41 +0000)
committerChandler Carruth <chandlerc@gmail.com>
Wed, 5 Feb 2014 21:41:42 +0000 (21:41 +0000)
commiteedf9fca28c050e9e15d990657c24e2292e01175
tree43166834c8da381dba798f4a1a317229e99d5735
parent215893317b73ec20b83c7c590ec3f3662e2007cb
[PM] Don't require analysis results to be const in the new pass manager.

I think this was just over-eagerness on my part. The analysis results
need to often be non-const because they need to (in some cases at least)
be updated by the transformation pass in order to remain correct. It
also makes lazy analyses (a common case) needlessly annoying to write in
order to make their entire state mutable.

llvm-svn: 200881
llvm/include/llvm/IR/PassManager.h
llvm/lib/IR/PassManager.cpp
llvm/unittests/IR/PassManagerTest.cpp