invoke.texi (fconserve-space): Remove documentation.

gcc/
	* doc/invoke.texi (fconserve-space): Remove documentation.

c-family/
	* c.opt (fconserve-space): Turn into a no-op.

cp/
	* decl.c: Do not include output.h.
	(start_decl): Remove code for flag_conserve_space.

testsuite/
	* g++.old-deja/g++.brendan/array1.C: Remove dg-options.

From-SVN: r188282
This commit is contained in:
Steven Bosscher 2012-06-06 21:38:20 +00:00
parent 43fa5db598
commit 6f07a821c4
8 changed files with 19 additions and 28 deletions

View File

@ -1,3 +1,7 @@
2012-06-06 Steven Bosscher <steven@gcc.gnu.org>
* doc/invoke.texi (fconserve-space): Remove documentation.
2012-06-06 Edmar Wienskoski <edmar@freescale.com>
* config/rs6000/rs6000-tables.opt: Regenerated.

View File

@ -1,3 +1,7 @@
2012-06-06 Steven Bosscher <steven@gcc.gnu.org>
* c.opt (fconserve-space): Turn into a no-op.
2012-06-04 Steven Bosscher <steven@gcc.gnu.org>
* c-common.c: Do not include output.h.

View File

@ -762,7 +762,7 @@ Allow the arguments of the '?' operator to have different types
fconserve-space
C++ ObjC++ Var(flag_conserve_space)
Reduce the size of object files
Does nothing. Preserved for backward compatibility.
fconstant-string-class=
ObjC ObjC++ Joined MissingArgError(no class name specified with %qs)

View File

@ -1,3 +1,8 @@
2012-06-06 Steven Bosscher <steven@gcc.gnu.org>
* decl.c: Do not include output.h.
(start_decl): Remove code for flag_conserve_space.
2012-06-06 Fabien Chêne <fabien@gcc.gnu.org>
PR c++/52841

View File

@ -39,7 +39,6 @@ along with GCC; see the file COPYING3. If not see
#include "tree-inline.h"
#include "decl.h"
#include "intl.h"
#include "output.h" /* for have_global_bss_p */
#include "toplev.h"
#include "hashtab.h"
#include "tm_p.h"
@ -4528,18 +4527,6 @@ start_decl (const cp_declarator *declarator,
if (decl == error_mark_node)
return error_mark_node;
/* Tell the back end to use or not use .common as appropriate. If we say
-fconserve-space, we want this to save .data space, at the expense of
wrong semantics. If we say -fno-conserve-space, we want this to
produce errors about redefs; to do this we force variables into the
data segment. */
if (flag_conserve_space
&& TREE_CODE (decl) == VAR_DECL
&& TREE_PUBLIC (decl)
&& !DECL_THREAD_LOCAL_P (decl)
&& !have_global_bss_p ())
DECL_COMMON (decl) = 1;
if (TREE_CODE (decl) == VAR_DECL
&& DECL_NAMESPACE_SCOPE_P (decl) && !TREE_PUBLIC (decl) && !was_public
&& !DECL_THIS_STATIC (decl) && !DECL_ARTIFICIAL (decl))

View File

@ -182,7 +182,7 @@ in the following sections.
@item C++ Language Options
@xref{C++ Dialect Options,,Options Controlling C++ Dialect}.
@gccoptlist{-fabi-version=@var{n} -fno-access-control -fcheck-new @gol
-fconserve-space -fconstexpr-depth=@var{n} -ffriend-injection @gol
-fconstexpr-depth=@var{n} -ffriend-injection @gol
-fno-elide-constructors @gol
-fno-enforce-eh-specs @gol
-ffor-scope -fno-for-scope -fno-gnu-keywords @gol
@ -1947,18 +1947,6 @@ return value even without this option. In all other cases, when
exhaustion is signalled by throwing @code{std::bad_alloc}. See also
@samp{new (nothrow)}.
@item -fconserve-space
@opindex fconserve-space
Put uninitialized or run-time-initialized global variables into the
common segment, as C does. This saves space in the executable at the
cost of not diagnosing duplicate definitions. If you compile with this
flag and your program mysteriously crashes after @code{main()} has
completed, you may have an object that is being destroyed twice because
two definitions are merged.
This option is no longer useful on most targets, now that support has
been added for putting variables into BSS without making them common.
@item -fconstexpr-depth=@var{n}
@opindex fconstexpr-depth
Set the maximum nested evaluation depth for C++11 constexpr functions

View File

@ -1,3 +1,7 @@
2012-06-06 Steven Bosscher <steven@gcc.gnu.org>
* g++.old-deja/g++.brendan/array1.C: Remove dg-options.
2012-06-06 Uros Bizjak <ubizjak@gmail.com>
* gcc.target/i386/avx-os-support.h (XCR_XFEATURE_ENABLED_MASK): New.

View File

@ -1,5 +1,4 @@
// { dg-do assemble }
// { dg-options "-fconserve-space -fcommon" }
// GROUPS passed array-bindings
extern "C" int printf (const char *, ...);