[mudflap] gimple grammar question

Frank Ch. Eigler fche@redhat.com
Fri Oct 15 21:32:00 GMT 2004


Hi -

I found another case where the 2003-December conversion of mudflap
instrumentation from tree-walking to gimple statement iteration is
missing stuff.  It relates to complex compound expressions like
those in libmudflap's pass50-frag.c test case: (e.g. "k->a2[i1].b1[i2]").
Before this conversion, the code used to instrument each relevant
subexpression (the "->", and the two array index ops).  Now it only
protects the outermost or innermost access.

While investigating how to resuscitate some of the previous working code,
I started looking at tree-ssa documentation for a formal definition of
how rich expressions we may have to deal with.  In tree-ssa.texi, I
find the productions for "inner-compref", "min-lval", "val" which are
relevant (but mysteriously inner-compref includes min-lval recursively,
which seems to make nested INDIRECT_REFs possible).  However, the
text misses the definition for "ID" as used as rvalues and presumably
meant to include compound expressions.  Can this text be clarified to
spell out what's intended?

- FChE



More information about the Gcc mailing list