mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-02-23 20:29:30 +00:00
AsmPrinter: Return added DIE from DIE::addChild()
Change `DIE::addChild()` to return a reference to the just-added node, and update consumers to use it directly. An upcoming commit will abstract away (and eventually change) the underlying storage of `DIE::Children`. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@238372 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
49e9f44cb1
commit
59be554de4
@ -543,10 +543,11 @@ public:
|
||||
|
||||
/// addChild - Add a child to the DIE.
|
||||
///
|
||||
void addChild(std::unique_ptr<DIE> Child) {
|
||||
DIE &addChild(std::unique_ptr<DIE> Child) {
|
||||
assert(!Child->getParent());
|
||||
Child->Parent = this;
|
||||
Children.push_back(std::move(Child));
|
||||
return *Children.back();
|
||||
}
|
||||
|
||||
/// Find a value in the DIE with the attribute given.
|
||||
|
@ -290,8 +290,7 @@ void DwarfUnit::addDIEEntry(DIE &Die, dwarf::Attribute Attribute,
|
||||
DIE &DwarfUnit::createAndAddDIE(unsigned Tag, DIE &Parent, const DINode *N) {
|
||||
assert(Tag != dwarf::DW_TAG_auto_variable &&
|
||||
Tag != dwarf::DW_TAG_arg_variable);
|
||||
Parent.addChild(make_unique<DIE>((dwarf::Tag)Tag));
|
||||
DIE &Die = *Parent.getChildren().back();
|
||||
DIE &Die = Parent.addChild(make_unique<DIE>((dwarf::Tag)Tag));
|
||||
if (N)
|
||||
insertDIE(N, &Die);
|
||||
return Die;
|
||||
|
Loading…
x
Reference in New Issue
Block a user