Fix an over aggressive assumption that struct decls will have a pointer to
an array that is empty. Instead of requiring this array, allow a null pointer.
This shrinks all forward references of structs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58959 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/MachineModuleInfo.cpp b/lib/CodeGen/MachineModuleInfo.cpp
index 4b64901..9e0e902 100644
--- a/lib/CodeGen/MachineModuleInfo.cpp
+++ b/lib/CodeGen/MachineModuleInfo.cpp
@@ -363,7 +363,7 @@
Field.resize(0);
Constant *C = CI->getOperand(I++);
GlobalVariable *GV = getGlobalVariable(C);
- if (GV->hasInitializer()) {
+ if (GV && GV->hasInitializer()) {
if (ConstantArray *CA = dyn_cast<ConstantArray>(GV->getInitializer())) {
for (unsigned i = 0, N = CA->getNumOperands(); i < N; ++i) {
GlobalVariable *GVE = getGlobalVariable(CA->getOperand(i));