Marking variable as addressable from within SSA pass
Richard Henderson
rth@redhat.com
Fri Mar 19 21:57:00 GMT 2004
On Fri, Mar 19, 2004 at 11:06:36AM -0500, Bonzini wrote:
> The pass takes, for example,
>
> V4QI T_1;
> V4QI T_2;
> V4QI T_3;
> T_3 = T_1 & T_2;
>
> and converts it into
>
> V4QI T_1;
> V4QI T_2;
> V4QI T_3;
> unsigned int *T_4;
> unsigned int *T_5;
> unsigned int *T_6;
> unsigned int T_7;
> unsigned int T_8;
> T_4 = (unsigned int *) &T_1;
> T_5 = (unsigned int *) &T_2;
> T_6 = (unsigned int *) &T_3;
> T_7 = *T_4;
> T_8 = *T_5;
> T_9 = T_4 & T_5;
> *T_6 = T_9;
You do not want to do this. Addressing variables SEVERELY pessimizes
the code. Use a VIEW_CONVERT_EXPR to change the type instead.
r~
More information about the Gcc
mailing list