[tree-ssa-branch] Optimizing non-SIMPLE trees

Jason Merrill jason@redhat.com
Fri Aug 23 03:24:00 GMT 2002


The problem seems to come down to this: the builtin expanders want args
like '(char*)"foo"', and that's not a valid SIMPLE value, so we copy it
into a temporary pointer.  Doing the reverse substitution in CCP isn't a
solution, as it would produce something not SIMPLE.

Possible solutions are
 1) Change SIMPLE so that 'val' allows ADDR_EXPR->STRING_CST (and whatever
    other tree patterns various builtins want).
 2) Enhance the builtin expanders to use dataflow information.

I prefer #2.

Jason



More information about the Gcc mailing list