projects
/
oota-llvm.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
a9a9e07
)
fix Analysis/BasicAA/2004-12-08-BasicAACrash.ll by allowing opaque types.
author
Chris Lattner
<sabre@nondot.org>
Mon, 9 Mar 2009 04:56:22 +0000
(
04:56
+0000)
committer
Chris Lattner
<sabre@nondot.org>
Mon, 9 Mar 2009 04:56:22 +0000
(
04:56
+0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66395
91177308
-0d34-0410-b5e6-
96231b3b80d8
lib/VMCore/Instructions.cpp
patch
|
blob
|
history
diff --git
a/lib/VMCore/Instructions.cpp
b/lib/VMCore/Instructions.cpp
index 90af9f1ea74536f1d5e77dda08c6795471c7fbdf..7f5d4615d187a4de8f8dc108354868d4a6c9cc4b 100644
(file)
--- a/
lib/VMCore/Instructions.cpp
+++ b/
lib/VMCore/Instructions.cpp
@@
-1058,8
+1058,10
@@
static const Type* getIndexedTypeInternal(const Type *Ptr, IndexTy const *Idxs,
return Agg;
// If there is at least one index, the top level type must be sized, otherwise
- // it cannot be 'stepped over'.
- if (!Agg->isSized())
+ // it cannot be 'stepped over'. We explicitly allow abstract types (those
+ // that contain opaque types) under the assumption that it will be resolved to
+ // a sane type later.
+ if (!Agg->isSized() && !Agg->isAbstract())
return 0;
unsigned CurIdx = 1;