[PATCH] D73426: [Attributor] Derive memory location attributes (argmemonly, ...)

Cox, Robert via llvm-commits llvm-commits at lists.llvm.org
Mon Aug 16 09:28:25 PDT 2021


Thanks, Johannes, for providing a fix to get around this problem.

-- Robert 

-----Original Message-----
From: Johannes Doerfert via Phabricator <reviews at reviews.llvm.org> 
Sent: Monday, August 16, 2021 9:06 AM
To: jdoerfert at anl.gov; uenoku.tokotoko at gmail.com; stefomeister at gmail.com; sdi1600105 at di.uoa.gr; homerdin at gmail.com
Cc: kuterdinel at gmail.com; okuraofvegetable at gmail.com; Cox, Robert <robert.cox at intel.com>; matthew.voss at sony.com; siddu.druid at gmail.com; llvm-commits at lists.llvm.org; bhuvanendra.kumarn at amd.com; Mu, Yanliang <yanliang.mu at intel.com>; dougpuob at gmail.com; david.green at arm.com; yuanfang.chen at sony.com
Subject: [PATCH] D73426: [Attributor] Derive memory location attributes (argmemonly, ...)

jdoerfert added a comment.

> With a loss of the store in the caller. So, is this a bug in the attributor, because it is marking the callee "readnone"? Or is it a bug in dse, because it thinks that 'readnone' with a byval arg menas it can eleiminate the store in the caller?

This is a good point. Initially, I was hoping byval arguments would be owned by the callee, however, as of right now they are not. Even if we conceptually let them be owned by the callee, we would need some changes in various places to account for the explicit copy while retaining the `readnone` the attributor adds. Long story short, this is (right now) a bug and should be fixed. I made D108140 <https://reviews.llvm.org/D108140> which also contains a TODO.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D73426/new/

https://reviews.llvm.org/D73426



More information about the llvm-commits mailing list