- struct call_site_record *data = cfun->eh->call_site_data;
- int used = cfun->eh->call_site_data_used;
- int size = cfun->eh->call_site_data_size;
-
- if (used >= size)
- {
- size = (size ? size * 2 : 64);
- data = ggc_realloc (data, sizeof (*data) * size);
- cfun->eh->call_site_data = data;
- cfun->eh->call_site_data_size = size;
- }
-
- data[used].landing_pad = landing_pad;
- data[used].action = action;
+ call_site_record record;
+
+ record = ggc_alloc (sizeof (struct call_site_record));
+ record->landing_pad = landing_pad;
+ record->action = action;