mirror of
https://github.com/RPCS3/llvm.git
synced 2024-12-03 17:32:59 +00:00
void* is represented as pointer to empty struct {}.
Thus we need to check whether the struct is empty before trying to index into it. This fixes PR3381. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62918 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
32ca8657b8
commit
629e92b63b
@ -11170,6 +11170,8 @@ static Instruction *InstCombineStoreToCast(InstCombiner &IC, StoreInst &SI) {
|
||||
|
||||
while (1) {
|
||||
if (const StructType *STy = dyn_cast<StructType>(SrcPTy)) {
|
||||
if (!STy->getNumElements()) /* Void is represented as {} */
|
||||
break;
|
||||
NewGEPIndices.push_back(Zero);
|
||||
SrcPTy = STy->getElementType(0);
|
||||
} else if (const ArrayType *ATy = dyn_cast<ArrayType>(SrcPTy)) {
|
||||
|
Loading…
Reference in New Issue
Block a user