[Transforms] Preserve metadata when converting invoke to call.
authorMichael Kruse <llvm@meinersbur.de>
Fri, 14 Dec 2018 18:15:11 +0000 (18:15 +0000)
committerMichael Kruse <llvm@meinersbur.de>
Fri, 14 Dec 2018 18:15:11 +0000 (18:15 +0000)
commit5948b7f30fc4ac9c2ddc142ffb4341bd9eb2289b
treee57a864621757cf7aa7565bef65fdc49a1dcf615
parent8fb9a71dde4a2f738f4b77e990dd7ec93d87a889
[Transforms] Preserve metadata when converting invoke to call.

The `changeToCall` function did not preserve the invoke's metadata.
Currently, there is probably no metadata that depends on being applied
on a CallInst or InvokeInst. Therefore we can replace the instruction's
metadata.

This fixes http://llvm.org/PR39994

Suggested-by: Moritz Kreutzer <moritz.kreutzer@siemens.com>
Differential Revision: https://reviews.llvm.org/D55666

llvm-svn: 349170
llvm/lib/Transforms/Utils/Local.cpp
llvm/test/Transforms/PruneEH/looptest.ll [new file with mode: 0644]