[PATCH] D43708: [DAE] don't remove args of musttail target/caller

Reid Kleckner via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 26 17:33:36 PST 2018


rnk added inline comments.


================
Comment at: test/Transforms/DeadArgElim/musttail-caller.ll:6
+
+; CHECK-LABEL: define internal void @test(i32 %a, i32 %b)
+define internal void @test(i32 %a, i32 %b) {
----------------
indutny wrote:
> rnk wrote:
> > Do we pass `undef` to the call? That would be correct. It doesn't matter what we pass, so long as we match the prototype.
> I'm not sure I got your comment. Do you want me to pass `undef` below?
No. Can you add CHECKs for the musttail call to show what arguments are passed here? I'm wondering if we get or miss that optimization. It is invalid to change the prototype of the foo, but it is valid to pass undef because the args are dead.


https://reviews.llvm.org/D43708





More information about the llvm-commits mailing list