On Thu, Apr 28, 2016 at 10:02 AM, Richard Biener <richard.guent...@gmail.com> wrote: > On Thu, Apr 28, 2016 at 3:50 PM, Patrick Palka <patr...@parcs.ath.cx> wrote: >> The predicate functions emitted by genmatch are expected to only be used >> locally within {gimple,generic}-match.c, so this patch marks them as >> static. Does this look OK to commit after bootstrap and regtest? > > Actually the idea was to for example generate predicates in match.pd > format for things like vectorizer pattern recog (I've done this for a few, > need to search for (partial) patches on my disk), so they are supposed > to be externally visible. > > Of course we might want to make that explicit in some way with > a (extern_match ...) [or by prefixing local ones with a '*' ...].
Oh, I see. That sounds useful. > > Richard. > >> gcc/ChangeLog: >> >> * genmatch.c (write_predicate): Mark the emitted function as >> static. >> --- >> gcc/genmatch.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/gcc/genmatch.c b/gcc/genmatch.c >> index ce964fa..2f5147f 100644 >> --- a/gcc/genmatch.c >> +++ b/gcc/genmatch.c >> @@ -3552,7 +3552,7 @@ decision_tree::gen (FILE *f, bool gimple) >> void >> write_predicate (FILE *f, predicate_id *p, decision_tree &dt, bool gimple) >> { >> - fprintf (f, "\nbool\n" >> + fprintf (f, "\nstatic bool\n" >> "%s%s (tree t%s%s)\n" >> "{\n", gimple ? "gimple_" : "tree_", p->id, >> p->nargs > 0 ? ", tree *res_ops" : "", >> -- >> 2.8.1.361.g2fbef4c >>