This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[patch i386 windows]: Fix weak-symbol support for 64-bit windows target


Hello,

This patch fixes the handling of weak symbols for 64-bit windows
pe-coff target and providing same feature as for 32-bit pe-coff
windows targets. As this target has set
the pic-flag, but pe-coff doesn't support GOT table, some trickery was
necessary to avoid the emitting
of GOT table dereferencing for this target.

ChangeLog

2010-11-04  Kai Tietz

	* config/i386/i386.c (legitimize_pic_address): Special case
	for 64-bit windows target.
	(output_pic_addr_const): Don't output @GOTPCREL for
	64-bit windows target.
	(x86_output_mi_thunk): Use direct jump for target
	64-bit windows.
	* config/i386/winnt.c (i386_pe_binds_local_p): Enable 64-bit
	weak.

Tested for x86_64-pc-mingw32, and x86_64-pc-linux-gnu. Ok for apply?

Regards,
Kai


-- 
|? (\_/) This is Bunny. Copy and paste
| (='.'=) Bunny into your signature to help
| (")_(") him gain world domination

Attachment: x64_weak.diff
Description: Binary data


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]