mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-07-28 04:29:44 +00:00
Reimplement r194843 in a slightly less broken way.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194848 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
c160efc28b
commit
0cbdb81de7
@ -871,9 +871,7 @@ DIE *CompileUnit::getOrCreateContextDIE(DIScope Context) {
|
|||||||
return getOrCreateNameSpace(DINameSpace(Context));
|
return getOrCreateNameSpace(DINameSpace(Context));
|
||||||
if (Context.isSubprogram())
|
if (Context.isSubprogram())
|
||||||
return getOrCreateSubprogramDIE(DISubprogram(Context));
|
return getOrCreateSubprogramDIE(DISubprogram(Context));
|
||||||
if (DIE *ContextDIE = getDIE(Context))
|
return getDIE(Context);
|
||||||
return ContextDIE;
|
|
||||||
return getCUDie();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// getOrCreateTypeDIE - Find existing DIE or create new DIE for the
|
/// getOrCreateTypeDIE - Find existing DIE or create new DIE for the
|
||||||
@ -888,6 +886,10 @@ DIE *CompileUnit::getOrCreateTypeDIE(const MDNode *TyNode) {
|
|||||||
// Construct the context before querying for the existence of the DIE in case
|
// Construct the context before querying for the existence of the DIE in case
|
||||||
// such construction creates the DIE.
|
// such construction creates the DIE.
|
||||||
DIE *ContextDIE = getOrCreateContextDIE(resolve(Ty.getContext()));
|
DIE *ContextDIE = getOrCreateContextDIE(resolve(Ty.getContext()));
|
||||||
|
// TODO: Investigate if this beavior is intentional and possibly
|
||||||
|
// replace it with an assert.
|
||||||
|
if (!ContextDIE)
|
||||||
|
ContextDIE = getCUDie();
|
||||||
|
|
||||||
DIE *TyDIE = getDIE(Ty);
|
DIE *TyDIE = getDIE(Ty);
|
||||||
if (TyDIE)
|
if (TyDIE)
|
||||||
|
Loading…
Reference in New Issue
Block a user