> > +/* A sequences of gimple statements. */ > > +#define GS_SEQP_FIRST(S) (S)->first > > +#define GS_SEQP_LAST(S) (S)->last > > +#define GS_SEQ_FIRST(S) (S).first > > +#define GS_SEQ_LAST(S) (S).last > > Why do you have both of these?
Most places in the gimplifier we will send sequences as pointers, but for saving state (see gimplify_and_add), we use local variables. I figured it'd be better than doing GS_SEQP_FIRST(&non_pointer), but I can if you prefer. > Otherwise it looks ok. I figure you'll want to build a set of > iterators and such for gs_sequences, like for tree-iterator.[ch]. Yee haw! Thanks so much for reviewing this. I'll commit to the branch and start the long haul. Aldy