summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/RenderMachineFunction.h
Commit message (Collapse)AuthorAgeFilesLines
* Get rid of static constructors for pass registration. Instead, every pass ↵Owen Anderson2010-10-191-1/+3
| | | | | | | | | | | | | | | | | exposes an initializeMyPassFunction(), which must be called in the pass's constructor. This function uses static dependency declarations to recursively initialize the pass's dependencies. Clients that only create passes through the createFooPass() APIs will require no changes. Clients that want to use the CommandLine options for passes will need to manually call the appropriate initialization functions in PassInitialization.h before parsing commandline arguments. I have tested this with all standard configurations of clang and llvm-gcc on Darwin. It is possible that there are problems with the static dependencies that will only be visible with non-standard options. If you encounter any crash in pass registration/creation, please send the testcase to me directly. llvm-svn: 116820
* Added support for register allocators to record which intervals are spill ↵Lang Hames2010-09-021-72/+94
| | | | | | | | intervals, and where the uses and defs of the original intervals were in the original code. Spill intervals can be hidden using the "-rmf-intervals=virt-nospills*" option. llvm-svn: 112811
* Reapply r110396, with fixes to appease the Linux buildbot gods.Owen Anderson2010-08-061-1/+1
| | | | llvm-svn: 110460
* Revert r110396 to fix buildbots.Owen Anderson2010-08-061-1/+1
| | | | llvm-svn: 110410
* Don't use PassInfo* as a type identifier for passes. Instead, use the ↵Owen Anderson2010-08-051-1/+1
| | | | | | | | address of the static ID member as the sole unique type identifier. Clean up APIs related to this change. llvm-svn: 110396
* Changed OStream templates to functions on raw_ostream, removed the unused ↵Lang Hames2010-07-211-26/+13
| | | | | | "renderWarnings" function. llvm-svn: 109003
* Use run-length encoding to represent identical adjacent cells in the pressureLang Hames2010-07-201-1/+17
| | | | | | | | and interval table. Reduces output HTML file sizes by ~80% in my test cases. Also fix access of private member type by << operator. llvm-svn: 108823
* Added support for turning HTML indentation on and off (indentation off by ↵Lang Hames2010-07-201-6/+18
| | | | | | | | default). Reduces output file size ~20% on my test cases. llvm-svn: 108822
* Switched to rendering after allocation (but before rewriting) in PBQP.Lang Hames2010-07-201-6/+14
| | | | | | | Updated renderer to use allocation information from VirtRegMap (if available) to render spilled intervals differently. llvm-svn: 108815
* Render MachineFunctions to HTML pages, with options to render registerLang Hames2010-07-191-0/+291
pressure estimates and liveness alongside. Still experimental. llvm-svn: 108698
OpenPOWER on IntegriCloud