forked from OSchip/llvm-project
e0ced14449
Summary: This solves PR33641. When removing a dead argument we must also handle possibly existing calls to llvm.dbg.value that use the removed argument. Now we change the use of the otherwise dead argument to an undef for some other pass to cleanup later. If the calls are left untouched, they will later on cause errors: "function-local metadata used in wrong function" since the ArgumentPromotion rewrites the code by creating a new function with the wanted signature, but the metadata is not recreated so the new function may then erroneously use metadata from the old function. Reviewers: mstorsjo, rnk, arsenm Reviewed By: rnk Subscribers: wdng, llvm-commits Differential Revision: https://reviews.llvm.org/D34874 llvm-svn: 307521 |
||
---|---|---|
.. | ||
2008-02-01-ReturnAttrs.ll | ||
2008-07-02-array-indexing.ll | ||
2008-09-07-CGUpdate.ll | ||
2008-09-08-CGUpdateSelfEdge.ll | ||
aggregate-promote.ll | ||
attrs.ll | ||
basictest.ll | ||
byval-2.ll | ||
byval.ll | ||
chained.ll | ||
control-flow.ll | ||
control-flow2.ll | ||
crash.ll | ||
dbg.ll | ||
fp80.ll | ||
inalloca.ll | ||
pr3085.ll | ||
pr27568.ll | ||
pr32917.ll | ||
pr33641_remove_arg_dbgvalue.ll | ||
profile.ll | ||
reserve-tbaa.ll | ||
sret.ll | ||
tail.ll | ||
variadic.ll |