From e5ce4771220d67c38e87cbefc87f12e83b74c930 Mon Sep 17 00:00:00 2001
From: rsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Tue, 21 Feb 2006 08:51:26 +0000
Subject: [PATCH] 	* doc/tm.texi (ASM_OUTPUT_SHARED_COMMON,
 ASM_OUTPUT_SHARED_BSS) 	(ASM_OUTPUT_SHARED_LOCAL): Delete. 	*
 doc/invoke.texi (-fshared-data): Delete. 	* common.opt (fshared-data):
 Delete. 	* varasm.c (asm_emit_uninitialised): Remove flag_shared_data
 handling. 	(assemble_static_space): Remove #if 0 code. 	* system.h
 (ASM_OUTPUT_SHARED_COMMON, ASM_OUTPUT_SHARED_BSS) 
 (ASM_OUTPUT_SHARED_LOCAL): Poison. 	* config/cris/cris.h: Remove FIXME.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@111330 138bc75d-0d04-0410-961f-82ee72b054a4
---
 gcc/ChangeLog          | 12 ++++++++++++
 gcc/common.opt         |  4 ----
 gcc/config/cris/cris.h |  3 ---
 gcc/doc/invoke.texi    | 10 +---------
 gcc/doc/tm.texi        | 18 ------------------
 gcc/system.h           |  3 ++-
 gcc/varasm.c           | 29 -----------------------------
 7 files changed, 15 insertions(+), 64 deletions(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 955e41a0e304..68a099656f10 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,15 @@
+2006-02-21  Richard Sandiford  <richard@codesourcery.com>
+
+	* doc/tm.texi (ASM_OUTPUT_SHARED_COMMON, ASM_OUTPUT_SHARED_BSS)
+	(ASM_OUTPUT_SHARED_LOCAL): Delete.
+	* doc/invoke.texi (-fshared-data): Delete.
+	* common.opt (fshared-data): Delete.
+	* varasm.c (asm_emit_uninitialised): Remove flag_shared_data handling.
+	(assemble_static_space): Remove #if 0 code.
+	* system.h (ASM_OUTPUT_SHARED_COMMON, ASM_OUTPUT_SHARED_BSS)
+	(ASM_OUTPUT_SHARED_LOCAL): Poison.
+	* config/cris/cris.h: Remove FIXME.
+
 2006-02-21  Paolo Bonzini  <bonzini@gnu.org>
 
 	* doc/sourcebuild.texi (Front End Directory): No more double-colon
diff --git a/gcc/common.opt b/gcc/common.opt
index 448c6bccc7ce..36e52fcaefcc 100644
--- a/gcc/common.opt
+++ b/gcc/common.opt
@@ -799,10 +799,6 @@ frtl-abstract-sequences
 Common Report Var(flag_rtl_seqabstr)
 Perform sequence abstraction optimization on RTL
 
-fshared-data
-Common Report Var(flag_shared_data)
-Mark data as shared rather than private
-
 fshow-column
 Common C ObjC C++ ObjC++ Report Var(flag_show_column) Init(1)
 Show column numbers in diagnostics, when available.  Default on
diff --git a/gcc/config/cris/cris.h b/gcc/config/cris/cris.h
index 0d1d8af4e268..10a17dc4be1c 100644
--- a/gcc/config/cris/cris.h
+++ b/gcc/config/cris/cris.h
@@ -1243,9 +1243,6 @@ enum cris_pic_symbol_type
 #define ASM_OUTPUT_ALIGNED_DECL_LOCAL(FILE, DECL, NAME, SIZE, ALIGN) \
  CRIS_ASM_OUTPUT_ALIGNED_DECL_COMMON(FILE, DECL, NAME, SIZE, ALIGN, 1)
 
-/* FIXME: define ASM_OUTPUT_SHARED_COMMON and emit an error when it is
-   used with -melinux and a.out.  */
-
 /* Node: Label Output */
 
 /* Globalizing directive for a label.  */
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 740ac9b8f439..029b43cde5a9 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -761,7 +761,7 @@ See S/390 and zSeries Options.
 -fno-common  -fno-ident @gol
 -fpcc-struct-return  -fpic  -fPIC -fpie -fPIE @gol
 -fno-jump-tables @gol
--freg-struct-return  -fshared-data  -fshort-enums @gol
+-freg-struct-return  -fshort-enums @gol
 -fshort-double  -fshort-wchar @gol
 -fverbose-asm  -fpack-struct[=@var{n}]  -fstack-check @gol
 -fstack-limit-register=@var{reg}  -fstack-limit-symbol=@var{sym} @gol
@@ -13001,14 +13001,6 @@ useful for building programs to run under WINE@.
 code that is not binary compatible with code generated without that switch.
 Use it to conform to a non-default application binary interface.
 
-@item -fshared-data
-@opindex fshared-data
-Requests that the data and non-@code{const} variables of this
-compilation be shared data rather than private data.  The distinction
-makes sense only on certain operating systems, where shared data is
-shared between processes running the same program, while private data
-exists in one copy per process.
-
 @item -fno-common
 @opindex fno-common
 In C, allocate even uninitialized global variables in the data section of the
diff --git a/gcc/doc/tm.texi b/gcc/doc/tm.texi
index 4c32cf623809..604ccd62e1dd 100644
--- a/gcc/doc/tm.texi
+++ b/gcc/doc/tm.texi
@@ -6671,12 +6671,6 @@ in place of both @code{ASM_OUTPUT_COMMON} and
 the variable's decl in order to chose what to output.
 @end defmac
 
-@defmac ASM_OUTPUT_SHARED_COMMON (@var{stream}, @var{name}, @var{size}, @var{rounded})
-If defined, it is similar to @code{ASM_OUTPUT_COMMON}, except that it
-is used when @var{name} is shared.  If not defined, @code{ASM_OUTPUT_COMMON}
-will be used.
-@end defmac
-
 @defmac ASM_OUTPUT_BSS (@var{stream}, @var{decl}, @var{name}, @var{size}, @var{rounded})
 A C statement (sans semicolon) to output to the stdio stream
 @var{stream} the assembler definition of uninitialized global @var{decl} named
@@ -6709,12 +6703,6 @@ Try to use function @code{asm_output_aligned_bss} defined in file
 @file{varasm.c} when defining this macro.
 @end defmac
 
-@defmac ASM_OUTPUT_SHARED_BSS (@var{stream}, @var{decl}, @var{name}, @var{size}, @var{rounded})
-If defined, it is similar to @code{ASM_OUTPUT_BSS}, except that it
-is used when @var{name} is shared.  If not defined, @code{ASM_OUTPUT_BSS}
-will be used.
-@end defmac
-
 @defmac ASM_OUTPUT_LOCAL (@var{stream}, @var{name}, @var{size}, @var{rounded})
 A C statement (sans semicolon) to output to the stdio stream
 @var{stream} the assembler definition of a local-common-label named
@@ -6746,12 +6734,6 @@ in place of both @code{ASM_OUTPUT_DECL} and
 the variable's decl in order to chose what to output.
 @end defmac
 
-@defmac ASM_OUTPUT_SHARED_LOCAL (@var{stream}, @var{name}, @var{size}, @var{rounded})
-If defined, it is similar to @code{ASM_OUTPUT_LOCAL}, except that it
-is used when @var{name} is shared.  If not defined, @code{ASM_OUTPUT_LOCAL}
-will be used.
-@end defmac
-
 @node Label Output
 @subsection Output and Generation of Labels
 
diff --git a/gcc/system.h b/gcc/system.h
index ca9c8b4ce5ea..0769cdeccf03 100644
--- a/gcc/system.h
+++ b/gcc/system.h
@@ -731,7 +731,8 @@ extern void fancy_abort (const char *, int, const char *) ATTRIBUTE_NORETURN;
 	PREDICATE_CODES SPECIAL_MODE_PREDICATES HOST_PTR_PRINTF		   \
 	EXTRA_SECTIONS EXTRA_SECTION_FUNCTIONS READONLY_DATA_SECTION	   \
 	TARGET_ASM_EXCEPTION_SECTION TARGET_ASM_EH_FRAME_SECTION	   \
-	SMALL_ARG_MAX
+	SMALL_ARG_MAX ASM_OUTPUT_SHARED_BSS ASM_OUTPUT_SHARED_COMMON	   \
+	ASM_OUTPUT_SHARED_LOCAL
 
 /* Hooks that are no longer used.  */
  #pragma GCC poison LANG_HOOKS_FUNCTION_MARK LANG_HOOKS_FUNCTION_FREE	\
diff --git a/gcc/varasm.c b/gcc/varasm.c
index ed7bbb661906..4c957ba42fd6 100644
--- a/gcc/varasm.c
+++ b/gcc/varasm.c
@@ -1547,30 +1547,6 @@ asm_emit_uninitialised (tree decl, const char *name,
   if (destination == asm_dest_bss)
     globalize_decl (decl);
 
-  if (flag_shared_data)
-    {
-      switch (destination)
-	{
-#ifdef ASM_OUTPUT_SHARED_BSS
-	case asm_dest_bss:
-	  ASM_OUTPUT_SHARED_BSS (asm_out_file, decl, name, size, rounded);
-	  return;
-#endif
-#ifdef ASM_OUTPUT_SHARED_COMMON
-	case asm_dest_common:
-	  ASM_OUTPUT_SHARED_COMMON (asm_out_file, name, size, rounded);
-	  return;
-#endif
-#ifdef ASM_OUTPUT_SHARED_LOCAL
-	case asm_dest_local:
-	  ASM_OUTPUT_SHARED_LOCAL (asm_out_file, name, size, rounded);
-	  return;
-#endif
-	default:
-	  break;
-	}
-    }
-
   switch (destination)
     {
 #ifdef ASM_EMIT_BSS
@@ -2104,11 +2080,6 @@ assemble_static_space (unsigned HOST_WIDE_INT size)
   const char *namestring;
   rtx x;
 
-#if 0
-  if (flag_shared_data)
-    switch_to_section (data_section);
-#endif
-
   ASM_GENERATE_INTERNAL_LABEL (name, "LF", const_labelno);
   ++const_labelno;
   namestring = ggc_strdup (name);
-- 
GitLab