Add memoization for getSCEVAtScope results for instructions
commitda0071eaca85f992f0067e656d5e421c7827cfff
authorDan Gohman <gohman@apple.com>
Fri, 8 May 2009 20:47:27 +0000 (8 20:47 +0000)
committerDan Gohman <gohman@apple.com>
Fri, 8 May 2009 20:47:27 +0000 (8 20:47 +0000)
tree95581b83940c6bc94cca278ab8acc1062a7a3ff6
parentdd40e9a6c05ae0c9a5389b854355d700bf064cf5
Add memoization for getSCEVAtScope results for instructions
which are not analyzed with SCEV techniques, which can require
brute-forcing through a large number of instructions. This
fixes a massive compile-time issue on 400.perlbench (in
particular, the loop in MD5Transform).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@71259 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/Analysis/ScalarEvolution.h
lib/Analysis/ScalarEvolution.cpp