When finding call-site argument locations, don't consider registers to be location candidates if they will be clobbered between the copy to/from them and call site. Doing so would present overwritten register values as entry values in called functions. This patch adds a collection of register units defined as we walk back from the call site, and prevents the acceptance of a call-site parameter location if it will be clobbered on that path. Fixes https://github.com/llvm/llvm-project/issues/57444 Differential Revision: https://reviews.llvm.org/D141279
137 KiB
137 KiB