llvm/lib/IR
Matt Arsenault 79e3fb53d6 Bug 18228 - Fix accepting bitcasts between vectors of pointers with a
different number of elements.

Bitcasts were passing with vectors of pointers with different number of
elements since the number of elements was checking
SrcTy->getVectorNumElements() == SrcTy->getVectorNumElements() which
isn't helpful. The addrspacecast was also wrong, but that case at least
is caught by the verifier. Refactor bitcast and addrspacecast handling
in castIsValid to be more readable and fix this problem.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@199821 91177308-0d34-0410-b5e6-96231b3b80d8
2014-01-22 19:21:33 +00:00
..
AsmWriter.cpp Add two new calling conventions for runtime calls 2014-01-17 19:47:03 +00:00
AsmWriter.h
AttributeImpl.h
Attributes.cpp
AutoUpgrade.cpp Report a warning when dropping outdated debug info metadata. 2014-01-16 01:51:12 +00:00
BasicBlock.cpp
CMakeLists.txt [PM] Rename this source file to something a bit more generic before 2014-01-09 02:39:45 +00:00
ConstantFold.cpp
ConstantFold.h
Constants.cpp Add a const lookup routine to get a BlockAddress constant if there is 2014-01-19 02:13:50 +00:00
ConstantsContext.h
Core.cpp [PM] Wire up the Verifier for the new pass manager and connect it to the 2014-01-20 11:34:08 +00:00
DataLayout.cpp Fix uninitialized warning in llvm/lib/IR/DataLayout.cpp. 2014-01-13 22:04:55 +00:00
DebugInfo.cpp
DebugLoc.cpp
DiagnosticInfo.cpp Report a warning when dropping outdated debug info metadata. 2014-01-16 01:51:12 +00:00
DiagnosticPrinter.cpp Report a warning when dropping outdated debug info metadata. 2014-01-16 01:51:12 +00:00
DIBuilder.cpp
Dominators.cpp [PM] Split DominatorTree into a concrete analysis result object which 2014-01-13 13:07:17 +00:00
Function.cpp Add an inalloca flag to allocas 2014-01-17 23:58:17 +00:00
GCOV.cpp Re-sort all of the includes with ./utils/sort_includes.py so that 2014-01-07 11:48:04 +00:00
Globals.cpp Allow addrspacecast in global aliases 2014-01-02 20:55:01 +00:00
GVMaterializer.cpp
InlineAsm.cpp
Instruction.cpp
Instructions.cpp Bug 18228 - Fix accepting bitcasts between vectors of pointers with a 2014-01-22 19:21:33 +00:00
IntrinsicInst.cpp
IRBuilder.cpp
IRPrintingPasses.cpp [PM] Add module and function printing passes for the new pass manager. 2014-01-12 12:15:39 +00:00
LeakDetector.cpp
LeaksContext.h
LegacyPassManager.cpp [PM] Simplify the interface exposed for IR printing passes. 2014-01-12 11:30:46 +00:00
LLVMBuild.txt
LLVMContext.cpp
LLVMContextImpl.cpp
LLVMContextImpl.h Add a const lookup routine to get a BlockAddress constant if there is 2014-01-19 02:13:50 +00:00
Makefile
Mangler.cpp Fix fastcall mangling of dllimported symbols 2014-01-14 11:53:26 +00:00
Metadata.cpp
Module.cpp Return an error_code from materializeAllPermanently. 2014-01-14 23:51:27 +00:00
Pass.cpp [PM] Simplify the interface exposed for IR printing passes. 2014-01-12 11:30:46 +00:00
PassManager.cpp [PM] Add names to passes under the new pass manager, and a debug output 2014-01-11 11:52:05 +00:00
PassRegistry.cpp [opt][PassInfo] Allow opt to run passes that need target machine. 2014-01-16 21:44:34 +00:00
SymbolTableListTraitsImpl.h
Type.cpp
TypeFinder.cpp
Use.cpp
User.cpp
Value.cpp
ValueSymbolTable.cpp
ValueTypes.cpp
Verifier.cpp [PM] Wire up the Verifier for the new pass manager and connect it to the 2014-01-20 11:34:08 +00:00