This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Regression for trunk on i686-pc-linux-gnu



On Jul 27, 2004, at 7:05 PM, Richard Kenner wrote:


Why not call get_base_address? That's the standard way of getting the
pointer out of an INDIRECT_REF. Assuming that the INDIRECT_REF is
already gimplified, of course.


I didn't say it was hard, just that it wasn't *trivial*, so it's not
clear you want to have the code explicitly everywhere.

I still think that it is a mistake adding ADDR_EXPR <INDIRECT_REF <>>
to GIMPLE.


I agree, but that's not what was being done here.  We're allowing it
on a transitory basis knowing that we're about to fold it away.

That's not true.
is_gimple_addr_expr_arg is not a static function only used by the gimplifier right before folding.
If you look, you'll see it's used in other files.
Some of them don't fold.
And this has nothing to do with folding.
It's not part of the grammar, it doesn't belong in "is_gimple_addr_expr_arg", which tells us whether something is a valid gimple ADDR_EXPR argument.
INDIRECT_REF is not, so given an INDIRECT_REF, the function should return false.
Period.
--Dan



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]