Sun Feb 14 23:05:34 1999 Jeffrey A Law (law@cygnus.com)
+ Mon Aug 17 02:03:55 1998 Richard Henderson <rth@cygnus.com>
+ * regclass.c (allocate_reg_info): Respect MIN when clearing data.
+
* loop.c (scan_loop): Fix typo in last change.
Sat Feb 13 11:53:12 1999 Jeffrey A Law (law@cygnus.com)
size_t max_index = reg_data->max_index;
reg_next = reg_data->next;
- if (min_index <= regno_allocated)
+ if (min <= max_index)
{
size_t max = max_index;
- if (max > regno_allocated)
- max = regno_allocated;
+ size_t local_min = min - min_index;
+ if (min < min_index)
+ local_min = 0;
if (!reg_data->used_p) /* page just allocated with calloc */
reg_data->used_p = 1; /* no need to zero */
else
- bzero ((char *) ®_data->data,
- sizeof (reg_info) * (max - min_index + 1));
+ bzero ((char *) ®_data->data[local_min],
+ sizeof (reg_info) * (max - min_index - local_min + 1));
- for (i = min_index; i <= max; i++)
+ for (i = min_index+local_min; i <= max; i++)
{
VARRAY_REG (reg_n_info, i) = ®_data->data[i-min_index];
REG_BASIC_BLOCK (i) = REG_BLOCK_UNKNOWN;