Fold the useful features of alist and alist_node into ilist, and

a new ilist_node class, and remove them. Unlike alist_node,
ilist_node doesn't attempt to manage storage itself, so it avoids
the associated problems, including being opaque in gdb.

Adjust the Recycler class so that it doesn't depend on alist_node.
Also, change it to use explicit Size and Align parameters, allowing
it to work when the largest-sized node doesn't have the greatest
alignment requirement.

Change MachineInstr's MachineMemOperand list from a pool-backed
alist to a std::list for now.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54146 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Dan Gohman
2008-07-28 21:51:04 +00:00
parent 80e051dfde
commit fed90b6d09
33 changed files with 340 additions and 815 deletions

View File

@ -218,8 +218,6 @@ Archive::parseMemberHeader(const char*& At, const char* End, std::string* error)
ArchiveMember* member = new ArchiveMember(this);
// Fill in fields of the ArchiveMember
member->next = 0;
member->prev = 0;
member->parent = this;
member->path.set(pathname);
member->info.fileSize = MemberSize;