diff options
-rw-r--r-- | lib/Target/TargetTransformImpl.cpp | 1 | ||||
-rw-r--r-- | lib/Transforms/Vectorize/BBVectorize.cpp | 4 |
2 files changed, 3 insertions, 2 deletions
diff --git a/lib/Target/TargetTransformImpl.cpp b/lib/Target/TargetTransformImpl.cpp index 7f9fdfc938..4320437020 100644 --- a/lib/Target/TargetTransformImpl.cpp +++ b/lib/Target/TargetTransformImpl.cpp @@ -340,6 +340,7 @@ unsigned VectorTargetTransformImpl::getMemoryOpCost(unsigned Opcode, Type *Src, unsigned Alignment, unsigned AddressSpace) const { + assert(!Src->isVoidTy() && "Invalid type"); std::pair<unsigned, MVT> LT = getTypeLegalizationCost(Src); // Assume that all loads of legal types cost 1. diff --git a/lib/Transforms/Vectorize/BBVectorize.cpp b/lib/Transforms/Vectorize/BBVectorize.cpp index a48229132b..ee3202a362 100644 --- a/lib/Transforms/Vectorize/BBVectorize.cpp +++ b/lib/Transforms/Vectorize/BBVectorize.cpp @@ -968,9 +968,9 @@ namespace { } if (VTTI) { - unsigned ICost = VTTI->getMemoryOpCost(I->getOpcode(), I->getType(), + unsigned ICost = VTTI->getMemoryOpCost(I->getOpcode(), aTypeI, IAlignment, IAddressSpace); - unsigned JCost = VTTI->getMemoryOpCost(J->getOpcode(), J->getType(), + unsigned JCost = VTTI->getMemoryOpCost(J->getOpcode(), aTypeJ, JAlignment, JAddressSpace); unsigned VCost = VTTI->getMemoryOpCost(I->getOpcode(), VType, BottomAlignment, |