summaryrefslogtreecommitdiff
path: root/tools/llvm-diff
diff options
context:
space:
mode:
authorAndrew Trick <atrick@apple.com>2012-02-01 07:16:20 +0000
committerAndrew Trick <atrick@apple.com>2012-02-01 07:16:20 +0000
commit11e43291540db9d885b736cbd652558faab80955 (patch)
tree62c700cac3ae347b14f9ccdfed317193fcf0711d /tools/llvm-diff
parent19c51a9b3e544fc3bd34488f0c9c0c8a3df73a58 (diff)
downloadllvm-11e43291540db9d885b736cbd652558faab80955.tar.gz
llvm-11e43291540db9d885b736cbd652558faab80955.tar.bz2
llvm-11e43291540db9d885b736cbd652558faab80955.tar.xz
Add pass printer passes in the right place.
The pass pointer should never be referenced after sending it to schedulePass(), which may delete the pass. To fix this bug I had to clean up the design leading to more goodness. You may notice now that any non-analysis pass is printed. So things like loop-simplify and lcssa show up, while target lib, target data, alias analysis do not show up. Normally, analysis don't mutate the IR, but you can now check this by using both -print-after and -print-before. The effects of analysis will now show up in between the two. The llc path is still in bad shape. But I'll be improving it in my next checkin. Meanwhile, print-machineinstrs still works the same way. With print-before/after, many llc passes that were not printed before now are, some of these should be converted to analysis. A few very important passes, isel and scheduler, are not properly initialized, so not printed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149480 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/llvm-diff')
0 files changed, 0 insertions, 0 deletions