llvm-6502/include/llvm/Support
Chris Lattner a266197489 Switch from using an ilist for uses to using a custom doubly linked list.
This list does not provide the ability to go backwards in the list (its
more of an unordered collection, stored in the shape of a list).

This change means that use iterators are now only forward iterators, not
bidirectional.

This improves the memory usage of use lists from '5 + 4*#use' per value to
'1 + 4*#use'.  While it would be better to reduce the multiplied factor,
I'm not smart enough to do so.  This list also has slightly more efficient
operators for manipulating list nodes (a few less loads/stores), due to not
needing to be able to iterate backwards through the list.

This change reduces the memory footprint required to hold 176.gcc from
66.025M -> 57.687M, a 14% reduction.  It also speeds up the compiler,
7.73% in the case of bytecode loading alone (release build loading 176.gcc).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19956 91177308-0d34-0410-b5e6-96231b3b80d8
2005-02-01 01:22:06 +00:00
..
.cvsignore Ignore generated files 2004-11-21 00:00:04 +00:00
AIXDataTypesFix.h Fix header 2004-10-26 16:19:57 +00:00
Annotation.h Convert 'struct' to 'class' in various places to adhere to the coding standards 2004-10-27 16:14:51 +00:00
CallSite.h Update comments, now that CPR's are gone, inline the methods 2004-11-18 17:46:57 +00:00
Casting.h Changes For Bug 352 2004-09-01 22:55:40 +00:00
CFG.h Switch from using an ilist for uses to using a custom doubly linked list. 2005-02-01 01:22:06 +00:00
CommandLine.h Added a size_type typedef to LLVM containers to make Visual Studio shut up 2004-12-13 16:28:53 +00:00
Compressor.h There is no reason to include ostream here, include iosfwd instead. 2005-01-29 17:16:07 +00:00
ConstantRange.h Changes For Bug 352 2004-09-01 22:55:40 +00:00
DataTypes.h.in Add missing data types for VC++ 2005-01-19 05:08:31 +00:00
Debug.h Changes For Bug 352 2004-09-01 22:55:40 +00:00
DOTGraphTraits.h Add support for bottom-up graphs. 2005-01-11 00:24:59 +00:00
DynamicLinker.h Changes For Bug 352 2004-09-01 22:55:40 +00:00
ELF.h Changes For Bug 352 2004-09-01 22:55:40 +00:00
FileUtilities.h Remove two dead methods and improve the comments for DiffFilesWithTolerance. 2005-01-23 03:30:39 +00:00
GetElementPtrTypeIterator.h Add a method 2005-01-13 23:26:28 +00:00
GraphWriter.h Add support for bottom-up graphs. 2005-01-11 00:24:59 +00:00
InstIterator.h
InstVisitor.h Standardize on 'class' instead of 'struct'. Gets rid of warnings in VC++ 2004-11-16 06:58:55 +00:00
LeakDetector.h Changes For Bug 352 2004-09-01 22:55:40 +00:00
Mangler.h Changes For Bug 352 2004-09-01 22:55:40 +00:00
MathExtras.h Changes For Bug 352 2004-09-01 22:55:40 +00:00
MutexGuard.h Updated the last two header files so that they are configured with 2004-09-24 21:19:06 +00:00
PassNameParser.h Changes For Bug 352 2004-09-01 22:55:40 +00:00
PatternMatch.h Add support for shifts 2004-11-13 19:32:45 +00:00
PluginLoader.h Changes For Bug 352 2004-09-01 22:55:40 +00:00
SlowOperationInformer.h Changes For Bug 352 2004-09-01 22:55:40 +00:00
StableBasicBlockNumbering.h
SystemUtils.h Make printing a warning message optional in CheckBytecodeOutputToConsole. 2005-01-02 00:10:03 +00:00
ThreadSupport-NoSupport.h Changes For Bug 352 2004-09-01 22:55:40 +00:00
ThreadSupport-PThreads.h Changes For Bug 352 2004-09-01 22:55:40 +00:00
ThreadSupport.h.in Updated the last two header files so that they are configured with 2004-09-24 21:19:06 +00:00
Timer.h Fix quotes. 2005-01-29 06:29:45 +00:00
ToolRunner.h Fix VC++ complaint 2005-01-22 16:30:58 +00:00
type_traits.h Changes For Bug 352 2004-09-01 22:55:40 +00:00
TypeInfo.h Changes For Bug 352 2004-09-01 22:55:40 +00:00