Go to file
Andrew Trick cbc845f9cf 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.

llvm-svn: 149480
2012-02-01 07:16:20 +00:00
clang Revert r149363 which was part a series of commits that were reverted in llvm 2012-02-01 06:36:49 +00:00
compiler-rt [asan] fix the wrong __WORDSIZE definition on Win x64, add ASAN_INTERFACE_FUNCTION_ATTRIBUTE. Patch by timurrrr@google.com 2012-01-31 18:13:50 +00:00
debuginfo-tests Revert previous patch as the corresponding clang patch was reverted. 2012-01-26 07:01:33 +00:00
libclc Update repository paths. 2012-01-08 22:31:18 +00:00
libcxx Fix .PHONY target to match new installheaders target. 2012-01-21 06:16:39 +00:00
libcxxabi Here's a test for catching pointers. 2012-02-01 00:22:38 +00:00
lld Cleanup system_error extensions. 2012-01-31 21:47:13 +00:00
lldb Added a new convenience property on lldb.SBThread names "frames" which always returns a complete list of all lldb.SBFrame objects: 2012-02-01 02:30:27 +00:00
llvm Add pass printer passes in the right place. 2012-02-01 07:16:20 +00:00
polly www: More typos 2012-02-01 00:08:10 +00:00