From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 26669 invoked by alias); 21 Oct 2013 08:34:34 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 26481 invoked by uid 48); 21 Oct 2013 08:34:31 -0000 From: "rguenth at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug tree-optimization/58806] New attribute for functions that access memory only through their arguments Date: Mon, 21 Oct 2013 08:34:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: tree-optimization X-Bugzilla-Version: 4.9.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: enhancement X-Bugzilla-Who: rguenth at gcc dot gnu.org X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2013-10/txt/msg01450.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58806 --- Comment #2 from Richard Biener --- You cannot find the PR because it's already implemented via the "fn spec" attribute (conveniently not user-accessible because bike-shedding about whether separate attributes are required). The documentation resides in gimple.c:gimple_call_arg_flags, and I _think_ it doesn't quite provide what you want as it was designed to help the context and flow-insensitive points-to analysis which doesn't benefit from "this call does not clobber or read from escaped memory". But what it provides is "the argument to this function does not escape" which is important.