Home | History | Annotate | Download | only in bfd

Lines Matching refs:flaginfo

1970   struct coff_final_link_info flaginfo;
1990 flaginfo.info = info;
1991 flaginfo.output_bfd = abfd;
1992 flaginfo.strtab = NULL;
1993 flaginfo.section_info = NULL;
1994 flaginfo.last_file_index = -1;
1995 flaginfo.last_bf_index = -1;
1996 flaginfo.internal_syms = NULL;
1997 flaginfo.sec_ptrs = NULL;
1998 flaginfo.sym_indices = NULL;
1999 flaginfo.outsyms = NULL;
2000 flaginfo.linenos = NULL;
2001 flaginfo.contents = NULL;
2002 flaginfo.external_relocs = NULL;
2003 flaginfo.internal_relocs = NULL;
2008 flaginfo.strtab = _bfd_stringtab_init ();
2009 if (flaginfo.strtab == NULL)
2012 if (! coff_debug_merge_hash_table_init (&flaginfo.debug_merge))
2091 flaginfo.section_info = (struct coff_link_section_info *) bfd_malloc (amt);
2093 if (flaginfo.section_info == NULL)
2098 flaginfo.section_info[i].relocs = NULL;
2099 flaginfo.section_info[i].rel_hashes = NULL;
2137 flaginfo.section_info[o->target_index].relocs =
2141 flaginfo.section_info[o->target_index].rel_hashes =
2143 if (flaginfo.section_info[o->target_index].relocs == NULL
2144 flaginfo.section_info[o->target_index].rel_hashes == NULL)
2175 flaginfo.internal_syms = (struct internal_syment *) bfd_malloc (amt);
2177 flaginfo.sec_ptrs = (asection **) bfd_malloc (amt);
2179 flaginfo.sym_indices = (long *) bfd_malloc (amt);
2181 flaginfo.outsyms = (bfd_byte *) bfd_malloc (amt);
2183 flaginfo.linenos = (bfd_byte *) bfd_malloc (amt);
2184 flaginfo.contents = (bfd_byte *) bfd_malloc (max_contents_size);
2185 flaginfo.external_relocs = (bfd_byte *) bfd_malloc (max_reloc_count * relsz);
2189 flaginfo.internal_relocs = (struct internal_reloc *) bfd_malloc (amt);
2191 if ((flaginfo.internal_syms == NULL && max_sym_count > 0)
2192 || (flaginfo.sec_ptrs == NULL && max_sym_count > 0)
2193 || (flaginfo.sym_indices == NULL && max_sym_count > 0)
2194 || flaginfo.outsyms == NULL
2195 || (flaginfo.linenos == NULL && max_lineno_count > 0)
2196 || (flaginfo.contents == NULL && max_contents_size > 0)
2197 || (flaginfo.external_relocs == NULL && max_reloc_count > 0)
2199 && flaginfo.internal_relocs == NULL
2231 if (! _bfd_coff_link_input_bfd (&flaginfo, sub))
2239 if (! _bfd_coff_reloc_link_order (abfd, &flaginfo, o, p))
2255 if (! _bfd_coff_link_input_bfd (&flaginfo, last_one))
2263 coff_debug_merge_hash_table_free (&flaginfo.debug_merge);
2266 if (flaginfo.internal_syms != NULL)
2268 free (flaginfo.internal_syms);
2269 flaginfo.internal_syms = NULL;
2271 if (flaginfo.sec_ptrs != NULL)
2273 free (flaginfo.sec_ptrs);
2274 flaginfo.sec_ptrs = NULL;
2276 if (flaginfo.sym_indices != NULL)
2278 free (flaginfo.sym_indices);
2279 flaginfo.sym_indices = NULL;
2281 if (flaginfo.linenos != NULL)
2283 free (flaginfo.linenos);
2284 flaginfo.linenos = NULL;
2286 if (flaginfo.contents != NULL)
2288 free (flaginfo.contents);
2289 flaginfo.contents = NULL;
2291 if (flaginfo.external_relocs != NULL)
2293 free (flaginfo.external_relocs);
2294 flaginfo.external_relocs = NULL;
2296 if (flaginfo.internal_relocs != NULL)
2298 free (flaginfo.internal_relocs);
2299 flaginfo.internal_relocs = NULL;
2305 if (flaginfo.last_file_index != -1
2306 && (unsigned int) flaginfo.last_file.n_value != obj_raw_syment_count (abfd))
2310 flaginfo.last_file.n_value = obj_raw_syment_count (abfd);
2311 bfd_coff_swap_sym_out (abfd, &flaginfo.last_file,
2312 flaginfo.outsyms);
2313 pos = obj_sym_filepos (abfd) + flaginfo.last_file_index * symesz;
2315 || bfd_bwrite (flaginfo.outsyms, symesz, abfd) != symesz)
2320 flaginfo.failed = FALSE;
2321 bfd_hash_traverse (&info->hash->table, _bfd_coff_write_global_sym, &flaginfo);
2322 if (flaginfo.failed)
2326 if (flaginfo.outsyms != NULL)
2328 free (flaginfo.outsyms);
2329 flaginfo.outsyms = NULL;
2352 irel = flaginfo.section_info[o->target_index].relocs;
2354 rel_hash = flaginfo.section_info[o->target_index].rel_hashes;
2377 if (flaginfo.section_info != NULL)
2383 if (flaginfo.section_info[i].relocs != NULL)
2384 free (flaginfo.section_info[i].relocs);
2385 if (flaginfo.section_info[i].rel_hashes != NULL)
2386 free (flaginfo.section_info[i].rel_hashes);
2388 free (flaginfo.section_info);
2389 flaginfo.section_info = NULL;
2410 _bfd_stringtab_size (flaginfo.strtab) + STRING_SIZE_SIZE,
2420 if (! _bfd_stringtab_emit (abfd, flaginfo.strtab))
2424 _bfd_stringtab_free (flaginfo.strtab);
2434 coff_debug_merge_hash_table_free (&flaginfo.debug_merge);
2435 if (flaginfo.strtab != NULL)
2436 _bfd_stringtab_free (flaginfo.strtab);
2437 if (flaginfo.section_info != NULL)
2443 if (flaginfo.section_info[i].relocs != NULL)
2444 free (flaginfo.section_info[i].relocs);
2445 if (flaginfo.section_info[i].rel_hashes != NULL)
2446 free (flaginfo.section_info[i].rel_hashes);
2448 free (flaginfo.section_info);
2450 if (flaginfo.internal_syms != NULL)
2451 free (flaginfo.internal_syms);
2452 if (flaginfo.sec_ptrs != NULL)
2453 free (flaginfo.sec_ptrs);
2454 if (flaginfo.sym_indices != NULL)
2455 free (flaginfo.sym_indices);
2456 if (flaginfo.outsyms != NULL)
2457 free (flaginfo.outsyms);
2458 if (flaginfo.linenos != NULL)
2459 free (flaginfo.linenos);
2460 if (flaginfo.contents != NULL)
2461 free (flaginfo.contents);
2462 if (flaginfo.external_relocs != NULL)
2463 free (flaginfo.external_relocs);
2464 if (flaginfo.internal_relocs != NULL)
2465 free (flaginfo.internal_relocs);