Duncan P. N. Exon Smith
003346177c
IR: Update references to temporaries before deleting
...
During `MDNode::deleteTemporary()`, call `replaceAllUsesWith(nullptr)`
to update all tracking references to `nullptr`.
This fixes PR22280, where inverted destruction order between tracking
references and the temporaries themselves caused a use-after-free in
`LLParser`.
An alternative fix would be to add an assertion that there are no users,
and continue to fix inverted destruction order in clients (like
`LLParser`), but instead I decided to make getting-teardown-right easy.
(If someone disagrees let me know.)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@226866 91177308-0d34-0410-b5e6-96231b3b80d8
2015-01-22 21:36:45 +00:00
..
2014-11-06 15:05:51 +00:00
2014-11-06 15:05:51 +00:00
2014-11-06 15:05:51 +00:00
2014-11-06 15:05:51 +00:00
2014-11-06 15:05:51 +00:00
2014-11-06 15:05:51 +00:00
2014-11-06 15:05:51 +00:00
2014-12-16 07:08:19 +00:00
2014-08-19 21:30:15 +00:00
2014-12-08 19:35:31 +00:00
2015-01-08 22:38:29 +00:00
2015-01-14 22:27:36 +00:00
2014-12-15 19:07:53 +00:00
2014-09-05 22:30:32 +00:00
2014-12-09 18:33:57 +00:00
2015-01-06 22:55:16 +00:00
2014-12-10 01:17:08 +00:00
2014-12-10 01:17:08 +00:00
2014-12-10 01:17:08 +00:00
2014-12-10 01:17:08 +00:00
2014-12-10 01:17:08 +00:00
2014-12-10 01:38:28 +00:00
2014-12-10 01:38:28 +00:00
2014-12-10 01:38:28 +00:00
2014-12-10 01:38:28 +00:00
2014-12-10 02:36:41 +00:00
2014-12-10 02:36:41 +00:00
2014-12-10 02:36:41 +00:00
2014-12-10 02:36:41 +00:00
2014-12-09 05:56:09 +00:00
2014-12-09 23:51:14 +00:00
2015-01-13 21:10:44 +00:00
2015-01-13 21:10:44 +00:00
2015-01-19 23:32:36 +00:00
2015-01-19 23:32:36 +00:00
2015-01-16 17:33:08 +00:00
2015-01-13 21:10:44 +00:00
2015-01-22 21:36:45 +00:00
2014-12-15 19:07:53 +00:00
2014-12-15 19:07:53 +00:00
2014-12-15 19:07:53 +00:00
2014-12-11 01:34:46 +00:00
2014-12-15 19:07:53 +00:00
2014-12-15 19:07:53 +00:00
2014-12-15 19:07:53 +00:00
2014-12-15 19:07:53 +00:00
2014-12-10 02:10:35 +00:00
2014-12-10 00:43:17 +00:00
2015-01-13 21:10:44 +00:00
2014-08-19 21:30:15 +00:00
2014-08-19 21:30:15 +00:00
2014-08-19 21:30:15 +00:00
2014-08-19 21:30:15 +00:00
2014-08-19 21:30:15 +00:00
2014-08-19 21:30:15 +00:00
2014-08-19 21:30:15 +00:00
2014-08-19 21:30:15 +00:00
2014-08-19 21:30:15 +00:00
2014-08-19 21:30:15 +00:00
2014-08-19 21:30:15 +00:00
2014-08-19 21:30:15 +00:00
2014-08-19 21:30:15 +00:00
2014-08-19 21:30:15 +00:00
2014-08-19 21:30:15 +00:00
2014-08-19 21:30:15 +00:00
2014-08-19 21:30:15 +00:00
2014-08-19 21:30:15 +00:00
2015-01-14 18:25:45 +00:00
2015-01-16 17:33:08 +00:00
2015-01-14 22:27:36 +00:00
2014-08-26 00:33:28 +00:00
2014-08-26 00:33:28 +00:00
2014-08-26 00:33:28 +00:00
2014-12-15 19:07:53 +00:00
2014-12-09 19:10:03 +00:00
2015-01-06 22:55:16 +00:00
2014-12-15 19:07:53 +00:00
2014-08-19 21:30:15 +00:00
2014-08-19 21:30:15 +00:00