I tried to incorporate all your comments in the attached patch.
Nice. It looks now very good to me. One final and last detail:
+/* TREE_FROM_ISL_ID maps ISL's scattering and parameter identifiers
+ to corresponding trees. */
+
+typedef struct ivs_params {
+ std::map<isl_id *, tree> tree_from_isl_id;
+} *ivs_params_p;
The struct now contains only a single element such that there seems to
be no need for it anymore. Should we remove it? (We could still use a
typedef if you believe the datatype is too long).
Cheers,
Tobias