[tree-ssa] RFC: Never gimplify ASM_EXPRs

Richard Henderson rth@redhat.com
Thu Jun 5 18:48:00 GMT 2003


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~



More information about the Gcc mailing list