Commit 74fe26b2 by Jim Wilson Committed by Jim Wilson

Fix ia64 C++ gprel link errors.

	* config/ia64/ia64.c (ia64_encode_section_info): Disallow decls with
	DECL_EXTERNAL set.

From-SVN: r37505
parent e24fa9da
2000-11-16 Jim Wilson <wilson@redhat.com>
* config/ia64/ia64.c (ia64_encode_section_info): Disallow decls with
DECL_EXTERNAL set.
2000-11-16 Nick Clifton <nickc@redhat.com> 2000-11-16 Nick Clifton <nickc@redhat.com>
* config/arm/arm.c (output_arm_prologue): Note nested functions. * config/arm/arm.c (output_arm_prologue): Note nested functions.
......
...@@ -4764,8 +4764,12 @@ ia64_encode_section_info (decl) ...@@ -4764,8 +4764,12 @@ ia64_encode_section_info (decl)
/* ??? Actually, we can put globals in sdata, as long as we don't use gprel /* ??? Actually, we can put globals in sdata, as long as we don't use gprel
to access them. The linker may then be able to do linker relaxation to to access them. The linker may then be able to do linker relaxation to
optimize references to them. Currently sdata implies use of gprel. */ optimize references to them. Currently sdata implies use of gprel. */
/* We need the DECL_EXTERNAL check for C++. static class data members get
both TREE_STATIC and DECL_EXTERNAL set, to indicate that they are
statically allocated, but the space is allocated somewhere else. Such
decls can not be own data. */
if (! TARGET_NO_SDATA if (! TARGET_NO_SDATA
&& TREE_STATIC (decl) && TREE_STATIC (decl) && ! DECL_EXTERNAL (decl)
&& ! (DECL_ONE_ONLY (decl) || DECL_WEAK (decl)) && ! (DECL_ONE_ONLY (decl) || DECL_WEAK (decl))
&& ! (TREE_PUBLIC (decl) && ! (TREE_PUBLIC (decl)
&& (flag_pic && (flag_pic
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment