llvm-6502/lib/Transforms/IPO
Chris Lattner 3990b121cf This is a major cleanup of the instruction metadata interfaces that
I asked Devang to do back on Sep 27.  Instead of going through the
MetadataContext class with methods like getMD() and getMDs(), just
ask the instruction directly for its metadata with getMetadata()
and getAllMetadata().

This includes a variety of other fixes and improvements: previously
all Value*'s were bloated because the HasMetadata bit was thrown into
value, adding a 9th bit to a byte.  Now this is properly sunk down to
the Instruction class (the only place where it makes sense) and it
will be folded away somewhere soon.

This also fixes some confusion in getMDs and its clients about 
whether the returned list is indexed by the MDID or densely packed.
This is now returned sorted and densely packed and the comments make
this clear.

This introduces a number of fixme's which I'll follow up on.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92235 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-28 23:41:32 +00:00
..
ArgumentPromotion.cpp Remove includes of Support/Compiler.h that are no longer needed after the 2009-10-25 06:57:41 +00:00
CMakeLists.txt Auto-upgrade free instructions to calls to the builtin free function. 2009-10-24 04:23:03 +00:00
ConstantMerge.cpp Remove includes of Support/Compiler.h that are no longer needed after the 2009-10-25 06:57:41 +00:00
DeadArgumentElimination.cpp Remove includes of Support/Compiler.h that are no longer needed after the 2009-10-25 06:57:41 +00:00
DeadTypeElimination.cpp Remove includes of Support/Compiler.h that are no longer needed after the 2009-10-25 06:57:41 +00:00
ExtractGV.cpp Remove includes of Support/Compiler.h that are no longer needed after the 2009-10-25 06:57:41 +00:00
FunctionAttrs.cpp Extend CaptureTracking to indicate when a value is never stored, even 2009-11-19 21:57:48 +00:00
GlobalDCE.cpp cleanups, switch GlobalDCE to SmallPtrSet instead of std::set 2009-11-01 19:03:42 +00:00
GlobalOpt.cpp Teach GlobalOpt to delete aliases with internal linkage (after 2009-12-08 10:10:20 +00:00
InlineAlways.cpp Remove includes of Support/Compiler.h that are no longer needed after the 2009-10-25 06:57:41 +00:00
Inliner.cpp use isInstructionTriviallyDead, as pointed out by Duncan 2009-11-12 21:58:18 +00:00
InlineSimple.cpp Remove includes of Support/Compiler.h that are no longer needed after the 2009-10-25 06:57:41 +00:00
Internalize.cpp Remove includes of Support/Compiler.h that are no longer needed after the 2009-10-25 06:57:41 +00:00
IPConstantPropagation.cpp Remove unused LLVMContext. 2009-11-23 03:29:18 +00:00
IPO.cpp Reverting 85714, 85715, 85716, which are breaking the build 2009-11-01 16:42:53 +00:00
LoopExtractor.cpp Update various Loop optimization passes to cope with the possibility that 2009-11-05 21:11:53 +00:00
LowerSetJmp.cpp Eliminate some temporaries. 2009-11-03 12:52:50 +00:00
Makefile Removed trailing whitespace from Makefiles. 2009-01-09 16:44:42 +00:00
MergeFunctions.cpp Remove includes of Support/Compiler.h that are no longer needed after the 2009-10-25 06:57:41 +00:00
PartialInlining.cpp Remove includes of Support/Compiler.h that are no longer needed after the 2009-10-25 06:57:41 +00:00
PartialSpecialization.cpp Remove includes of Support/Compiler.h that are no longer needed after the 2009-10-25 06:57:41 +00:00
PruneEH.cpp Remove includes of Support/Compiler.h that are no longer needed after the 2009-10-25 06:57:41 +00:00
StripDeadPrototypes.cpp Remove includes of Support/Compiler.h that are no longer needed after the 2009-10-25 06:57:41 +00:00
StripSymbols.cpp This is a major cleanup of the instruction metadata interfaces that 2009-12-28 23:41:32 +00:00
StructRetPromotion.cpp Remove includes of Support/Compiler.h that are no longer needed after the 2009-10-25 06:57:41 +00:00