RTL generation patterns
Jan Hubicka
jh@suse.cz
Wed Feb 27 07:04:00 GMT 2002
>
> I fail to understand how the second rtl
> (store)instrucion is generated from this pattern. how
> does
> (match_operand:SI 0 "general_operand" "") produce
> (mem/f:SI (plus:SI (reg:SI 28)
> (const_int -16 [0xfffffff0])) 0)
> shouldnt it only produce a single rtl instruction like
> only a mem? please comment
When optimizing, gcc forces all nontrivial operands to be load to
registers first in order to asist CSE to do more optimizations.
Also may be that ARM is simply refusing constant 1 as general_operand
making gcc code generator to do the move in order to make expander
math.
Honza
>
> regards,
> danish
>
>
> __________________________________________________
> Do You Yahoo!?
> Yahoo! Greetings - Send FREE e-cards for every occasion!
> http://greetings.yahoo.com
More information about the Gcc
mailing list