You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING. If not, write to the Free
-Software Foundation, 59 Temple Place - Suite 330, Boston, MA
-02111-1307, USA. */
+Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301, USA. */
/* This file contains common code which is used by each of the 5 operand
static inline void
FINALIZE_FUNC (tree stmt)
{
- int new_i;
+ unsigned new_i;
FINALIZE_TYPE *old_ops, *ptr, *last;
FINALIZE_BASE_TYPE old_base;
FINALIZE_TYPE new_list;
else
old_base = FINALIZE_BASE_ZERO;
- new_i = opbuild_first (&FINALIZE_OPBUILD);
- while (old_ops && new_i != OPBUILD_LAST)
+ new_i = 0;
+ while (old_ops && new_i < VEC_length (tree, FINALIZE_OPBUILD))
{
FINALIZE_BASE_TYPE new_base = FINALIZE_OPBUILD_BASE (new_i);
if (old_base == new_base)
/* if variables are the same, reuse this node. */
last->next = old_ops;
last = old_ops;
-#ifdef FINALIZE_USE_PTR
- correct_use_link (FINALIZE_USE_PTR (last), stmt);
+#ifdef FINALIZE_CORRECT_USE
+ FINALIZE_CORRECT_USE (FINALIZE_USE_PTR (last), stmt);
#endif
old_ops = old_ops->next;
- new_i = opbuild_next (&FINALIZE_OPBUILD, new_i);
+ new_i++;
}
else
if (old_base < new_base)
FINALIZE_INITIALIZE (ptr, FINALIZE_OPBUILD_ELEM (new_i), stmt);
last->next = ptr;
last = ptr;
- new_i = opbuild_next (&FINALIZE_OPBUILD, new_i);
+ new_i++;
}
if (old_ops)
old_base = FINALIZE_BASE (FINALIZE_ELEM (old_ops));
}
/* If there is anything remaining in the opbuild list, simply emit them. */
- for ( ;
- new_i != OPBUILD_LAST;
- new_i = opbuild_next (&FINALIZE_OPBUILD, new_i))
+ for ( ; new_i < VEC_length (tree, FINALIZE_OPBUILD); new_i++)
{
ptr = FINALIZE_ALLOC ();
FINALIZE_INITIALIZE (ptr, FINALIZE_OPBUILD_ELEM (new_i), stmt);
for (ptr = FINALIZE_OPS (stmt); ptr; ptr = ptr->next)
x++;
- gcc_assert (x == opbuild_num_elems (&FINALIZE_OPBUILD));
+ gcc_assert (x == VEC_length (tree, FINALIZE_OPBUILD));
}
#endif
}
#undef FINALIZE_OPBUILD_ELEM
#undef FINALIZE_OPBUILD_BASE
#undef FINALIZE_BASE_ZERO
+#undef FINALIZE_CORRECT_USE