Skip to content
Commit 0cc8cc5e authored by Alan Modra's avatar Alan Modra
Browse files

Re: Add section caches to coff_data_type

Commit 0e759f23 regressed these tests:
rs6000-aix7.2  +FAIL: Garbage collection test 1 (32-bit)
rs6000-aix7.2  +FAIL: Garbage collection test 1 (64-bit)
rs6000-aix7.2  +FAIL: Glink test 1 (32-bit)
rs6000-aix7.2  +FAIL: Glink test 1 (64-bit)

Investigation showed segfaults in coff_section_from_bfd_index called
by xcoff_write_global_symbol due to the hash table pointer being
NULL.  Well, yes, the hash table isn't initialised for the output bfd.
mkobject_hook is the wrong place to do that.

	* coffcode.h: Revert 0e759f23 changes.
	* peicode.h: Likewise.
	* coff-x86_64.c (htab_hash_section_index, htab_eq_section_index):
	Moved here from coffcode.h.
	(coff_amd64_rtype_to_howto): Create section_by_index htab.
	* coffgen.c (htab_hash_section_target_index),
	(htab_eq_section_target_index): Moved here from coffcode.h.
	(coff_section_from_bfd_index): Create section_by_target_index
	htab.  Stash newly created sections in htab.
parent 4cb88cfa
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment