CCP and Ada testsuite failure c330001
Andrew Pinski
pinskia@physics.uc.edu
Mon Nov 22 07:27:00 GMT 2004
I decided to look a little into the Ada testsuite failure, c330001.
And I noticed that we are propagating a constant across a
VIEW_CONVERT_EXPR.
Aka before CCP:
VIEW_CONVERT_EXPR<character[1 .. 2]>(var_1.F.s) = "Hi";
D.3531_12 = system__secondary_stack__ss_allocate (24);
D.3530_13 = (struct c330001_0__fullviewdefinite_unknown_disc *)
D.3531_12;
VIEW_CONVERT_EXPR<struct
c330001_0__indef_func_1__var_1___PAD>(*D.3530_13) = var_1;
But afterwards:
VIEW_CONVERT_EXPR<character[1 .. 2]>(var_1.F.s) = "Hi";
D.3531_12 = system__secondary_stack__ss_allocate (24);
D.3530_13 = (struct c330001_0__fullviewdefinite_unknown_disc *)
D.3531_12;
VIEW_CONVERT_EXPR<struct
c330001_0__indef_func_1__var_1___PAD>(*D.3530_13) = "Hi";
return D.3530_13;
Which seems wrong. (note the variable is named var_1 and not an
SSA_NAME.
Could someone look into how to fix this?
Thanks,
Andrew Pinski
More information about the Gcc
mailing list