This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug debug/42782] [4.5 Regression] VTA missed location: parameter via stack
- From: "jakub at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 18 Jan 2010 10:57:50 -0000
- Subject: [Bug debug/42782] [4.5 Regression] VTA missed location: parameter via stack
- References: <bug-42782-12292@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #3 from jakub at gcc dot gnu dot org 2010-01-18 10:57 -------
The problem is that dataflow_set_preserve_mem_locs and/or
dataflow_set_remove_mem_locs removes all MEMs (with the exception of those
referring to decl with 0 MEM_OFFSET in the first function) upon encountering a
CALL. For parameters (ARG_POINTER_REGNUM based, or even
HARD_FRAME_POINTER_REGNUM based ones I believe) we don't need to remove them,
as long as the decl isn't addressable and thus the call shouldn't have modified
them.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42782