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: [tree-ssa] RFC: Never gimplify ASM_EXPRs


On Thu, Jun 05, 2003 at 01:30:53PM -0400, Diego Novillo wrote:
> Ignoring the ASM_EXPRs is simple, fool-proof and won't block any
> significant optimization opportunities.  At the level that we are
> operating, we should not be concerning ourselves with such low level
> details.  The same thing happens with machine-dependent builtins.  I
> don't think we should even try to understand them.

I don't think we should go that far.  If the *address* being
manipulated is too complex, then we're definitely losing out.

In particular, I would *strongly* disagree that we should not
gimplify an expression like

	*(int *)foo(bar() + baz(boff()))

What we need is some mechanism to handle the difference between
those asm arguments that need lvalues and those that don't.
This recognition is already present in the existing expand_asm_operands,
we just need to re-format it into some form handy for the gimplifier.


r~


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