In #157045 I didn't realize that IRMover object is one for entire LTO, but IRLinker is created per module. We need one chache for combined module. I timed "IRLinker::linkNamedMDNodes" code on one of our internal binaries, not very large, but above average. Before #146020: 0.4859s After #146020: 624.4686s After #157045: 322.3493s After this patch: 0.5574s