summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/Utils/ValueMapper.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Revert this because we can't clone cyclic MDNodes which are creating during aNick Lewycky2010-07-241-3/+4
| | | | | | build of llvm-gcc. llvm-svn: 109355
* Whether function-local or not, a MDNode may reference a Function in which caseNick Lewycky2010-07-241-4/+3
| | | | | | | it needs to be mapped to refer to the function in the new module, not the old one. Fixes PR7700. llvm-svn: 109353
* Speculatively revert 109117Devang Patel2010-07-221-27/+6
| | | | llvm-svn: 109132
* Map MDNode correctly. Devang Patel2010-07-221-6/+27
| | | | | | A non function local MDNode can have an operand which is cloned by MapValue(). llvm-svn: 109117
* MDString is already checked earlier.Devang Patel2010-07-021-1/+1
| | | | llvm-svn: 107516
* Cosmetic change.Devang Patel2010-06-231-4/+4
| | | | | | Do not use "ValueMap" as a name for a local variable or an argument. llvm-svn: 106698
* Revert 106592 for now. It causes clang-selfhost build failure.Devang Patel2010-06-221-34/+13
| | | | llvm-svn: 106598
* If a metadata operand is seeded in value map and the metadata should also be ↵Devang Patel2010-06-221-13/+34
| | | | | | | | | | | seeded in value map. This is not limited to function local metadata. Failure to seed metdata in such cases causes troubles when in a cloned module, metadata from a new module refers to values in old module. Usually this results in mysterious bugpoint crashes. For example, Checking to see if we can delete global inits: Unknown constant! UNREACHABLE executed at /d/g/llvm/lib/Bitcode/Writer/BitcodeWriter.cpp:904! llvm-svn: 106592
* Revert 106528. It is causing self host failures.Devang Patel2010-06-221-5/+7
| | | | llvm-svn: 106529
* Do not rely on DenseMap slot which can be easily invalidated when DenseMap ↵Devang Patel2010-06-221-7/+5
| | | | | | grows. llvm-svn: 106528
* Rename ValueMapTy as ValueToValueMapTy to clearly indicate that this has no ↵Devang Patel2010-04-201-2/+2
| | | | | | replationship with ADT/ValueMap. llvm-svn: 101950
* There is no need to install ValueMapper.h header. Devang Patel2010-04-201-1/+1
| | | | llvm-svn: 101949
* Avoid extra calls to MD->getNumOperands()Victor Hernandez2010-01-261-1/+1
| | | | llvm-svn: 94618
* It turns out that this #include is needed because otherwiseChris Lattner2010-01-211-1/+1
| | | | | | | | | ValueMapper.cpp ends up calling an out of line __ZNK4llvm12PATypeHolder3getEv, which is a template and llvm-config determines arbitrarily to use the one in libipo. This sucks, but keeping the #include is a reasonable workaround. llvm-svn: 94103
* unbreak the build, apparently without this transformutils starts depending ↵Chris Lattner2010-01-211-0/+1
| | | | | | on libipa? llvm-svn: 94102
* tidy upChris Lattner2010-01-211-14/+7
| | | | llvm-svn: 94101
* Don't need to include IntrinsicInst.h any moreVictor Hernandez2010-01-211-1/+0
| | | | llvm-svn: 94092
* No need to map NULL operands of metadataVictor Hernandez2010-01-211-1/+1
| | | | llvm-svn: 94091
* Switch Elts from vector to SmallVectorVictor Hernandez2010-01-201-2/+1
| | | | llvm-svn: 93989
* Map operands of all function-local metadata, not just metadata passed to ↵Victor Hernandez2010-01-201-19/+13
| | | | | | llvm.dbg.declare intrinsics llvm-svn: 93979
* While mapping llvm.dbg.declare intrinsic manually map its operand, if possible,Devang Patel2010-01-181-0/+18
| | | | | | because it points to an alloca instruction through metadata. llvm-svn: 93757
* Revert 85678/85680. The decision is to stay with the current form of Chris Lattner2009-11-011-7/+2
| | | | | | | indirectbr, thus we don't need "blockaddr(@func, null)". Eliminate it for simplicity. llvm-svn: 85699
* adjust a couple xforms to work with null bb's in BlockAddress.Chris Lattner2009-10-311-2/+7
| | | | llvm-svn: 85680
* teach various passes about blockaddress. We no longerChris Lattner2009-10-291-2/+2
| | | | | | crash on any clang tests. llvm-svn: 85465
* teach ValueMapper about BlockAddress', making bugpoint a lot more useful.Chris Lattner2009-10-291-7/+10
| | | | llvm-svn: 85458
* unindent massive blocks, no functionality change.Chris Lattner2009-10-291-69/+75
| | | | llvm-svn: 85457
* MapValue doesn't needs its LLVMContext argument.Dan Gohman2009-10-241-10/+9
| | | | llvm-svn: 85020
* Rename MDNode.h header. It defines MDnode and other metadata classes.Devang Patel2009-07-281-1/+1
| | | | | | New name is Metadata.h. llvm-svn: 77370
* Return ConstantVector to 2.5 API.Owen Anderson2009-07-281-1/+1
| | | | llvm-svn: 77366
* Change ConstantArray to 2.5 API.Owen Anderson2009-07-281-1/+1
| | | | llvm-svn: 77347
* Move ConstantStruct back to 2.5 API.Owen Anderson2009-07-271-1/+1
| | | | llvm-svn: 77266
* Do not seed mstadata into the value map.Devang Patel2009-07-271-25/+4
| | | | llvm-svn: 77208
* Get rid of the Pass+Context magic.Owen Anderson2009-07-221-5/+5
| | | | llvm-svn: 76702
* llvm_unreachable->llvm_unreachable(0), LLVM_UNREACHABLE->llvm_unreachable.Torok Edwin2009-07-141-1/+1
| | | | | | | | | This adds location info for all llvm_unreachable calls (which is a macro now) in !NDEBUG builds. In NDEBUG builds location info and the message is off (it only prints "UREACHABLE executed"). llvm-svn: 75640
* assert(0) -> LLVM_UNREACHABLE.Torok Edwin2009-07-111-1/+2
| | | | | | | | | Make llvm_unreachable take an optional string, thus moving the cerr<< out of line. LLVM_UNREACHABLE is now a simple wrapper that makes the message go away for NDEBUG builds. llvm-svn: 75379
* "LLVMContext* " --> "LLVMContext *"Owen Anderson2009-07-061-1/+1
| | | | llvm-svn: 74878
* More LLVMContext-ification.Owen Anderson2009-07-051-15/+17
| | | | llvm-svn: 74807
* Give embedded metadata its own type instead of relying on EmptyStructTy.Nick Lewycky2009-05-301-1/+24
| | | | llvm-svn: 72610
* rewrite operand loops to use iteratorsGabor Greif2008-05-301-24/+26
| | | | llvm-svn: 51789
* Remove attribution from file headers, per discussion on llvmdev.Chris Lattner2007-12-291-2/+2
| | | | llvm-svn: 45418
* Forget to commit users part of value mapper interfaceAnton Korobeynikov2007-11-091-1/+1
| | | | llvm-svn: 43940
* Fix comments about vectors to use the current wording.Dan Gohman2007-07-161-2/+2
| | | | llvm-svn: 39921
* fix an obscure and tricky bug the inliner can hit sometimes.Chris Lattner2007-02-231-1/+1
| | | | llvm-svn: 34531
* For PR1195:Reid Spencer2007-02-151-2/+2
| | | | | | | Rename PackedType -> VectorType, ConstantPacked -> ConstantVector, and PackedTyID -> VectorTyID. No functional changes. llvm-svn: 34293
* Switch inliner over to use DenseMap instead of std::map for ValueMap. ThisChris Lattner2007-02-031-9/+11
| | | | | | speeds up the inliner 16%. llvm-svn: 33801
* For PR1043:Zhou Sheng2007-01-111-1/+1
| | | | | | | Merge ConstantIntegral and ConstantBool into ConstantInt. Remove ConstantIntegral and ConstantBool from LLVM. llvm-svn: 33073
* eliminate some ugly code, using ConstantExpr::getWithOperands instead.Chris Lattner2006-07-141-35/+4
| | | | llvm-svn: 29149
* Implement a new method, CloneAndPruneFunctionInto, as documented.Chris Lattner2006-05-271-3/+1
| | | | llvm-svn: 28519
* Add supprot for shufflevectorChris Lattner2006-04-081-0/+5
| | | | llvm-svn: 27513
* Fix inlining of insert/extract element constantexprsChris Lattner2006-04-071-0/+9
| | | | llvm-svn: 27478
OpenPOWER on IntegriCloud