This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: RFA: Adding a location_t (or pointer) to tree_exp for 3.4 only.
- From: Daniel Jacobowitz <drow at mvista dot com>
- To: gcc at gcc dot gnu dot org
- Cc: Richard Henderson <rth at redhat dot com>
- Date: Mon, 6 Oct 2003 13:51:29 -0400
- Subject: Re: RFA: Adding a location_t (or pointer) to tree_exp for 3.4 only.
- References: <20030922001710.GA24248@alinoe.com> <20030927124920.GA16447@alinoe.com> <20031006174054.GC17794@redhat.com>
On Mon, Oct 06, 2003 at 10:40:54AM -0700, Richard Henderson wrote:
> On Sat, Sep 27, 2003 at 02:49:20PM +0200, Carlo Wood wrote:
> > But tree-ssa (3.5) even adds a location_t to tree_common!
>
> Not anymore.
>
> > A suggestion was to use expr wfl, but that is impractical:
> > there are too many places where an expressions type is directly
> > compared with CALL_EXPR (if (TREE_CODE (call) != CALL_EXPR)) -
> > all of those places would have to be changed to also check for
> > a EXPR_WITH_FILE_LOCATION that wraps a CALL_EXPR and then
> > unwrap the call expr in order to subsequentially be able to
> > process it.
>
> What leads you to believe that this is true? Why would not the
> WFL expr just go through expand_expr, and thence to expand_call?
Well, wouldn't e.g. operand_equal_p need to handle
EXPR_WITH_FILE_LOCATION? I see lots of other places in the optimizers
with the same issue. Right now EXPR_WITH_FILE_LOCATION is only used to
wrap inline calls, as far as I can see. Even there I suspect it hurts
optimization because of this issue.
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer