- memset (&td, 0, sizeof(td));
- td.method = method;
- td.rtm = rtm;
- td.is_bb_start = is_bb_start;
- td.il_code = header->code;
- td.code_size = header->code_size;
- td.header = header;
- td.max_code_size = td.code_size;
- td.new_code = (unsigned short *)g_malloc(td.max_code_size * sizeof(gushort));
- td.new_code_end = td.new_code + td.max_code_size;
- td.mempool = mono_mempool_new ();
- td.in_offsets = g_malloc0(header->code_size * sizeof(int));
- td.stack_state = g_malloc0(header->code_size * sizeof(StackInfo *));
- td.stack_height = g_malloc(header->code_size * sizeof(int));
- td.vt_stack_size = g_malloc(header->code_size * sizeof(int));
- td.n_data_items = 0;
- td.max_data_items = 0;
- td.data_items = NULL;
- td.data_hash = g_hash_table_new (NULL, NULL);
- td.clause_indexes = g_malloc (header->code_size * sizeof (int));
- td.gen_sdb_seq_points = debug_options.gen_sdb_seq_points;
- td.seq_points = g_ptr_array_new ();
- td.relocs = g_ptr_array_new ();
- td.verbose_level = mono_interp_traceopt;
- rtm->data_items = td.data_items;
+ memset (&transform_data, 0, sizeof(transform_data));
+ td = &transform_data;
+
+ td->method = method;
+ td->rtm = rtm;
+ td->is_bb_start = is_bb_start;
+ td->il_code = header->code;
+ td->code_size = header->code_size;
+ td->header = header;
+ td->max_code_size = td->code_size;
+ td->new_code = (unsigned short *)g_malloc(td->max_code_size * sizeof(gushort));
+ td->new_code_end = td->new_code + td->max_code_size;
+ td->mempool = mono_mempool_new ();
+ td->in_offsets = g_malloc0(header->code_size * sizeof(int));
+ td->stack_state = g_malloc0(header->code_size * sizeof(StackInfo *));
+ td->stack_height = g_malloc(header->code_size * sizeof(int));
+ td->vt_stack_size = g_malloc(header->code_size * sizeof(int));
+ td->n_data_items = 0;
+ td->max_data_items = 0;
+ td->data_items = NULL;
+ td->data_hash = g_hash_table_new (NULL, NULL);
+ td->clause_indexes = g_malloc (header->code_size * sizeof (int));
+ td->gen_sdb_seq_points = debug_options.gen_sdb_seq_points;
+ td->seq_points = g_ptr_array_new ();
+ td->relocs = g_ptr_array_new ();
+ td->verbose_level = mono_interp_traceopt;
+ rtm->data_items = td->data_items;