llvm-6502/lib/IR
Duncan P. N. Exon Smith 1cfbb6358c IR: Reduce RAUW traffic in ConstantExpr
Avoid RAUW-ing `ConstantExpr` when an operand changes unless the new
`ConstantExpr` already has users.  This prevents the RAUW from rippling
up the expression tree unnecessarily.

This commit indirectly adds test coverage for r215953 (this is how I
came across the bug).

This is part of PR20515.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@215960 91177308-0d34-0410-b5e6-96231b3b80d8
2014-08-19 01:12:53 +00:00
..
AsmWriter.cpp IR: Print a newline when dumping Types 2014-08-12 03:24:59 +00:00
AsmWriter.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
AttributeImpl.h
Attributes.cpp Add a dereferenceable attribute 2014-07-18 15:51:28 +00:00
AutoUpgrade.cpp Don't upgrade global constructors when reading bitcode 2014-08-12 16:46:37 +00:00
BasicBlock.cpp
CMakeLists.txt IPO: Add use-list-order verifier 2014-07-25 14:49:26 +00:00
Comdat.cpp
ConstantFold.cpp IR: Don't add inbounds to GEPs of extern_weak variables 2014-08-16 01:54:32 +00:00
ConstantFold.h
ConstantRange.cpp [Modules] Move the ConstantRange class into the IR library. This is 2014-03-04 12:24:34 +00:00
Constants.cpp IR: Reduce RAUW traffic in ConstantExpr 2014-08-19 01:12:53 +00:00
ConstantsContext.h
Core.cpp
DataLayout.cpp Revert "Introduce a string_ostream string builder facilty" 2014-06-26 22:52:05 +00:00
DebugInfo.cpp Revert "Reapply "DebugInfo: Ensure that all debug location scope chains from instructions within a function, lead to the function itself."" 2014-08-06 22:30:12 +00:00
DebugLoc.cpp
DiagnosticInfo.cpp Rename DiagnosticInfoOptimizationWarning to DiagnosticInfoOptimizationFailure 2014-07-18 19:36:04 +00:00
DiagnosticPrinter.cpp
DIBuilder.cpp
Dominators.cpp Revert "[C++11] Add predecessors(BasicBlock *) / successors(BasicBlock *) iterator ranges." 2014-07-21 17:06:51 +00:00
Function.cpp Provide convenient access to the zext/sext attributes of function arguments. NFC. 2014-08-05 05:43:41 +00:00
GCOV.cpp
Globals.cpp
GVMaterializer.cpp [Layering] Move GVMaterializer.h into the IR library where its 2014-03-06 03:50:29 +00:00
InlineAsm.cpp [C++11] More 'nullptr' conversion or in some cases just using a boolean check instead of comparing to nullptr. 2014-04-09 06:08:46 +00:00
Instruction.cpp
Instructions.cpp Add CreatePointerBitCastOrAddrSpaceCast to IRBuilder and co. 2014-07-14 17:24:35 +00:00
IntrinsicInst.cpp [C++11] More 'nullptr' conversion or in some cases just using a boolean check instead of comparing to nullptr. 2014-04-09 06:08:46 +00:00
IRBuilder.cpp Add scoped-noalias metadata 2014-07-24 14:25:39 +00:00
IRPrintingPasses.cpp
LeakDetector.cpp [Modules] Move the LeakDetector header into the IR library where the 2014-03-04 12:46:06 +00:00
LeaksContext.h
LegacyPassManager.cpp
LLVMBuild.txt Rename VMCore directory to IR. 2013-01-02 09:10:48 +00:00
LLVMContext.cpp Add scoped-noalias metadata 2014-07-24 14:25:39 +00:00
LLVMContextImpl.cpp
LLVMContextImpl.h IR: Replace uses of ConstantAggrUniqueMap with ConstantUniqueMap 2014-08-19 01:02:18 +00:00
Makefile
Mangler.cpp
MDBuilder.cpp
Metadata.cpp
Module.cpp
module.modulemap [modules] Add module maps for LLVM. These are not quite ready for prime-time 2014-05-21 02:46:14 +00:00
Pass.cpp Remove pimpl class from PassRegistry. 2014-06-12 16:06:51 +00:00
PassManager.cpp Remove unnecessary/redundant std::move 2014-07-16 17:09:21 +00:00
PassRegistry.cpp Remove pimpl class from PassRegistry. 2014-06-12 16:06:51 +00:00
SymbolTableListTraitsImpl.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
Type.cpp Revert "Repace SmallPtrSet with SmallPtrSetImpl in function arguments to avoid needing to mention the size." 2014-08-18 00:24:38 +00:00
TypeFinder.cpp TypeFinder: prefer iterative algorithm to keep stack usage low. 2013-10-16 04:10:06 +00:00
Use.cpp
UseListOrder.cpp verify-uselistorder: Move shuffleUseLists() out of lib/IR 2014-08-01 23:03:36 +00:00
User.cpp
Value.cpp Revert "Repace SmallPtrSet with SmallPtrSetImpl in function arguments to avoid needing to mention the size." 2014-08-18 00:24:38 +00:00
ValueSymbolTable.cpp
ValueTypes.cpp Add v4f16 to supported value types. 2013-10-03 03:29:21 +00:00
Verifier.cpp Revert "Repace SmallPtrSet with SmallPtrSetImpl in function arguments to avoid needing to mention the size." 2014-08-18 00:24:38 +00:00