1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 12:12:47 +01:00
llvm-mirror/lib/IR
Mehdi Amini 62ba5df396 Fix auto-upgrade of TBAA tags in Bitcode Reader
If TBAA is on an intrinsic and it gets upgraded, it'll delete the call
instruction that we collected in a vector. Even if we were to use
WeakVH, it'll drop the TBAA and we'll hit the assert on the upgrade
path.

r263673 gave a shot to make sure the TBAA upgrade happens before
intrinsics upgrade, but failed to account for all cases.

Instead of collecting instructions in a vector, this patch makes it
just upgrade the TBAA on the fly, because metadata are always
already loaded at this point.

Differential Revision: https://reviews.llvm.org/D24533

llvm-svn: 281549
2016-09-14 22:29:59 +00:00
..
AsmWriter.cpp DebugInfo: New metadata representation for global variables. 2016-09-13 01:12:59 +00:00
AttributeImpl.h Expose AttributeSetNode, use it to provide aggregate getter for attribute in the C API. 2016-07-21 04:25:06 +00:00
Attributes.cpp Rationalise the attribute getter/setter methods on Function and CallSite. 2016-09-09 04:50:38 +00:00
AttributesCompatFunc.td
AttributeSetNode.h Add missing import to fix the build 2016-07-21 04:31:38 +00:00
AutoUpgrade.cpp Fix auto-upgrade of TBAA tags in Bitcode Reader 2016-09-14 22:29:59 +00:00
BasicBlock.cpp Apply clang-tidy's modernize-loop-convert to most of lib/IR. 2016-06-26 14:10:56 +00:00
CMakeLists.txt Move ProfileSummary to IR. 2016-05-19 21:07:12 +00:00
Comdat.cpp [NFC] Remove some dead code: 2016-05-11 16:38:40 +00:00
ConstantFold.cpp Replace "fallthrough" comments with LLVM_FALLTHROUGH 2016-08-17 05:10:15 +00:00
ConstantFold.h
ConstantRange.cpp fix formatting, typo; NFC 2016-06-19 17:20:27 +00:00
Constants.cpp [Constant] remove fdiv and frem from canTrap() 2016-08-29 15:27:17 +00:00
ConstantsContext.h
Core.cpp IR: Don't cast the end iterator to Instruction* 2016-08-11 15:45:04 +00:00
DataLayout.cpp [IR] Introduce a non-integral pointer type 2016-07-28 23:43:38 +00:00
DebugInfo.cpp StripDebugInfo: uses isa<DbgInfoIntrinsic> instead of matching against llvm.dbg.* (NFC) 2016-05-14 04:58:35 +00:00
DebugInfoMetadata.cpp DebugInfo: New metadata representation for global variables. 2016-09-13 01:12:59 +00:00
DebugLoc.cpp
DiagnosticInfo.cpp [DiagnosticInfo] Add a diagnostic class for the fallback of ISel. 2016-08-31 18:42:55 +00:00
DiagnosticPrinter.cpp
DIBuilder.cpp DebugInfo: New metadata representation for global variables. 2016-09-13 01:12:59 +00:00
Dominators.cpp [GenericDomTree] Change GenericDomTree to use NodeRef in GraphTraits. NFC. 2016-08-17 20:01:58 +00:00
Function.cpp Add comments and an assert to follow-up on r279113. NFC. 2016-08-22 20:18:28 +00:00
GCOV.cpp
Globals.cpp [IR] [DAE] Copy comdats during DAE, and don't copy comdats in GlobalObject::copyAttributesFrom. 2016-06-15 23:20:15 +00:00
GVMaterializer.cpp
InlineAsm.cpp Replace "fallthrough" comments with LLVM_FALLTHROUGH 2016-08-17 05:10:15 +00:00
Instruction.cpp [Profile] refactor meta data copying/swapping code 2016-08-23 15:39:03 +00:00
Instructions.cpp Rationalise the attribute getter/setter methods on Function and CallSite. 2016-09-09 04:50:38 +00:00
IntrinsicInst.cpp [NFC] Remove some dead code: 2016-05-11 16:38:40 +00:00
IRBuilder.cpp Add invariant start call creation in IRBuilder.NFC 2016-07-22 20:57:23 +00:00
IRPrintingPasses.cpp Consistently use ModuleAnalysisManager 2016-08-09 00:28:38 +00:00
LegacyPassManager.cpp Use the range variant of find instead of unpacking begin/end 2016-08-11 22:21:41 +00:00
LLVMBuild.txt
LLVMContext.cpp [OptRemark,LDist] RFC: Add hotness attribute 2016-07-15 17:23:20 +00:00
LLVMContextImpl.cpp [OptRemark,LDist] RFC: Add hotness attribute 2016-07-15 17:23:20 +00:00
LLVMContextImpl.h DebugInfo: New metadata representation for global variables. 2016-09-13 01:12:59 +00:00
Mangler.cpp
MDBuilder.cpp Fix the assertion failure caused by http://reviews.llvm.org/D22118 2016-07-11 17:36:02 +00:00
Metadata.cpp DebugInfo: New metadata representation for global variables. 2016-09-13 01:12:59 +00:00
MetadataImpl.h
Module.cpp Remove interface to get/set MaxFunctionCount 2016-06-20 21:36:38 +00:00
ModuleSummaryIndex.cpp
Operator.cpp
OptBisect.cpp
Pass.cpp
PassManager.cpp [PM] Introduce an abstraction for all the analyses over a particular IR 2016-08-20 04:57:28 +00:00
PassRegistry.cpp Use the range variant of find instead of unpacking begin/end 2016-08-11 22:21:41 +00:00
ProfileSummary.cpp Reapply r271728 after adding move cobstructor for ProfileSummaryInfo 2016-06-03 22:54:26 +00:00
Statepoint.cpp
SymbolTableListTraitsImpl.h ADT: Remove external uses of ilist_iterator, NFC 2016-09-03 01:22:56 +00:00
Type.cpp fix documentation comments; NFC 2016-06-02 20:37:52 +00:00
TypeFinder.cpp Apply clang-tidy's modernize-loop-convert to most of lib/IR. 2016-06-26 14:10:56 +00:00
Use.cpp
User.cpp
Value.cpp Add an isSwiftError predicate to Value 2016-09-10 18:14:54 +00:00
ValueSymbolTable.cpp Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes. 2016-08-23 17:14:32 +00:00
ValueTypes.cpp getVectorElementType().getSizeInBits() -> getScalarSizeInBits() ; NFCI 2016-09-14 16:37:15 +00:00
Verifier.cpp Verifier: Mark orphaned DICompileUnits as a debug info failure. 2016-09-14 17:30:37 +00:00