Duncan P. N. Exon Smith ea614a5025 IR: Fix memory corruption in MDNode new/delete
There were two major problems with `MDNode` memory management.

 1. `MDNode::operator new()` called a placement array constructor for
    `MDOperand`.  What?  Each operand needs to be placed individually.

 2. `MDNode::operator delete()` failed to destruct the `MDOperand`s at
    all.

Frankly it's hard to understand how this worked locally, how this
survived an LTO bootstrap, or how it worked on most of the bots.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@223858 91177308-0d34-0410-b5e6-96231b3b80d8
2014-12-09 23:56:39 +00:00
..
2014-12-09 18:38:53 +00:00
2014-12-09 18:38:53 +00:00
2014-12-09 18:38:53 +00:00
2014-12-09 18:38:53 +00:00
2014-12-09 18:38:53 +00:00
2014-12-09 18:38:53 +00:00
2014-12-09 18:38:53 +00:00
2014-12-09 18:38:53 +00:00
2014-12-09 18:38:53 +00:00
2014-12-09 18:38:53 +00:00
2014-12-09 18:38:53 +00:00
2014-12-09 18:38:53 +00:00