re PR debug/23205 ([C++/unit-at-a-time] stabs debug info omitted for global const variables)

toplevel:
	* configure: Regenerate.

	config:
	* elf.m4 (target_elf): Remove *-netware*.

	contrib:
	* config-list.mk (i586-netware): Remove.
	(.PHONY): Remove make-script-dir dependency.
	(make-script-dir): Remove.
	($(LIST)): Remove make-script-dir dependency.

	gcc:
	* config.gcc (i[3456x]86-*-netware*): Remove.

	* gthr-nks.h: Remove.
	* configure.ac (enable_threads): Remove nks.
	* configure: Regenerate.

	* config/i386/i386.c (ix86_encode_section_info): Remove netware
	reference.
	* config/i386/i386.h (KEEP_AGGREGATE_RETURN_POINTER): Remove
	<netware.h> reference.

	* config/i386/netware-libgcc.c,
	gcc/config/i386/netware-libgcc.def,
	gcc/config/i386/netware-libgcc.exp, gcc/config/i386/netware.c,
	gcc/config/i386/netware.h, gcc/config/i386/netware.opt,
	gcc/config/i386/nwld.c, gcc/config/i386/nwld.h,
	gcc/config/i386/t-netware, gcc/config/i386/t-nwld: Remove

	* doc/extend.texi (Function Attributes,
	callee_pop_aggregate_return): Remove i?86-netware reference.
	* doc/install.texi (Configuration, --enable-threads): Remove nks.

	gcc/testsuite:
	* g++.dg/ext/bitfield2.C: Remove i?86-*-netware support.
	* g++.dg/ext/bitfield3.C: Likewise.
	* g++.dg/ext/bitfield4.C: Likewise.
	* g++.dg/ext/bitfield5.C: Likewise.
	* g++.dg/other/PR23205.C: Remove *-*-netware* support.
	* g++.dg/other/pr23205-2.C: Likewise.
	* gcc.c-torture/compile/20001109-1.c: Remove dg-xfail-if.
	* gcc.c-torture/compile/20001109-2.c: Likewise.
	* gcc.dg/20040813-1.c: Remove *-*-netware* support.
	* gcc.dg/bitfld-15.c: Remove i?86-*-netware support.
	* gcc.dg/bitfld-16.c: Likewise.
	* gcc.dg/bitfld-17.c: Likewise.
	* gcc.dg/bitfld-18.c: Likewise.
	* gcc.dg/builtins-config.h: Remove Netware support.
	* gcc.dg/cdce1.c: Remove *-*-netware* support.  Update line number.
	* gcc.dg/cdce2.c: Likewise.
	* gcc.dg/cpp/assert4.c: Remove netware support.
	* gcc.dg/debug/pr35154.c: Remove *-*-netware* support.
	* gfortran.dg/debug/pr35154-stabs.f: Remove *-*-netware* support.

	* lib/target-supports.exp (check_visibility_available): Remove
	NetWare support.
	(check_profiling_available): Likewise.

	libgcc:
	* config.host (i[3456x]86-*-netware*): Remove.
	* config/i386/netware-crt0.c, config/i386/t-nwld,
	config/i386/t-slibgcc-nwld: Remove.

	libstdc++-v3:
	* crossconfig.m4 (*-netware): Remove.
	* configure: Regenerate.

From-SVN: r176391
This commit is contained in:
Rainer Orth 2011-07-18 11:04:18 +00:00 committed by Rainer Orth
parent c27e3f60a6
commit e44dbbe18b
54 changed files with 98 additions and 1554 deletions

View File

@ -1,3 +1,7 @@
2011-07-18 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* configure: Regenerate.
2011-07-18 Richard Guenther <rguenther@suse.de>
* MAINTAINERS (Global Reviewers): Add myself.

View File

@ -1,3 +1,7 @@
2011-07-18 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* elf.m4 (target_elf): Remove *-netware*.
2011-07-06 Uros Bizjak <ubizjak@gmail.com>
* mt-alphaieee (GOCFLAGS_FOR_TARGET): Add -mieee.

View File

@ -1,4 +1,4 @@
dnl Copyright (C) 2010 Free Software Foundation, Inc.
dnl Copyright (C) 2010, 2011 Free Software Foundation, Inc.
dnl This file is free software, distributed under the terms of the GNU
dnl General Public License. As a special exception to the GNU General
dnl Public License, this file may be distributed as part of a program
@ -14,7 +14,7 @@ AC_REQUIRE([AC_CANONICAL_TARGET])
target_elf=no
case $target in
*-darwin* | *-aix* | *-cygwin* | *-mingw* | *-aout* | *-*coff* | \
*-msdosdjgpp* | *-netware* | *-vms* | *-wince* | *-*-pe* | \
*-msdosdjgpp* | *-vms* | *-wince* | *-*-pe* | \
alpha*-dec-osf* | *-interix* | hppa[[12]]*-*-hpux*)
target_elf=no
;;

2
configure vendored
View File

@ -6009,7 +6009,7 @@ fi
target_elf=no
case $target in
*-darwin* | *-aix* | *-cygwin* | *-mingw* | *-aout* | *-*coff* | \
*-msdosdjgpp* | *-netware* | *-vms* | *-wince* | *-*-pe* | \
*-msdosdjgpp* | *-vms* | *-wince* | *-*-pe* | \
alpha*-dec-osf* | *-interix* | hppa[12]*-*-hpux*)
target_elf=no
;;

View File

@ -1,3 +1,10 @@
2011-07-18 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* config-list.mk (i586-netware): Remove.
(.PHONY): Remove make-script-dir dependency.
(make-script-dir): Remove.
($(LIST)): Remove make-script-dir dependency.
2011-07-15 Bernd Schmidt <bernds@codesourcery.com>
* gcc_update: Add C6X generated files.

View File

@ -27,7 +27,7 @@ LIST = alpha-linux-gnu alpha-freebsd6 alpha-netbsd alpha-openbsd \
i486-freebsd4 i686-freebsd6 i686-kfreebsd-gnu \
i686-netbsdelf9 i686-knetbsd-gnu i686-openbsd i686-openbsd3.0 \
i686-elf i686-kopensolaris-gnu i686-symbolics-gnu i686-pc-msdosdjgpp \
i686-lynxos i586-netwareOPT-with-ld=SCRIPTSnwld i686-nto-qnx \
i686-lynxos i686-nto-qnx \
i686-rtems i686-solaris2.10 i686-wrs-vxworks \
i686-wrs-vxworksae \
i686-cygwinOPT-enable-threads=yes i686-mingw32crt ia64-elf \
@ -72,7 +72,7 @@ LOGFILES = $(patsubst %,log/%-make.out,$(LIST))
all: $(LOGFILES)
config: $(LIST)
.PHONY: make-log-dir make-script-dir all config
.PHONY: make-log-dir all config
empty=
@ -81,14 +81,7 @@ empty=
make-log-dir: ../gcc/MAINTAINERS
mkdir log
# The 'ix86-netware --with-ld=nwld' configuration needs a nwld executable to
# configure. See PR47104.
make-script-dir:
mkdir scripts
echo ld $* > scripts/nwld
chmod u+x scripts/nwld
$(LIST): make-log-dir make-script-dir
$(LIST): make-log-dir
-mkdir $@
(cd $@ && \
../../gcc/configure \

View File

@ -1,3 +1,27 @@
2011-07-18 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* config.gcc (i[3456x]86-*-netware*): Remove.
* gthr-nks.h: Remove.
* configure.ac (enable_threads): Remove nks.
* configure: Regenerate.
* config/i386/i386.c (ix86_encode_section_info): Remove netware
reference.
* config/i386/i386.h (KEEP_AGGREGATE_RETURN_POINTER): Remove
<netware.h> reference.
* config/i386/netware-libgcc.c,
gcc/config/i386/netware-libgcc.def,
gcc/config/i386/netware-libgcc.exp, gcc/config/i386/netware.c,
gcc/config/i386/netware.h, gcc/config/i386/netware.opt,
gcc/config/i386/nwld.c, gcc/config/i386/nwld.h,
gcc/config/i386/t-netware, gcc/config/i386/t-nwld: Remove
* doc/extend.texi (Function Attributes,
callee_pop_aggregate_return): Remove i?86-netware reference.
* doc/install.texi (Configuration, --enable-threads): Remove nks.
2011-07-17 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
PR target/49746

View File

@ -1368,25 +1368,6 @@ i[34567]86-*-lynxos*)
gnu_ld=yes
gas=yes
;;
i[3456x]86-*-netware*)
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h tm-dwarf2.h i386/netware.h"
tmake_file="${tmake_file} i386/t-netware"
extra_objs=netware.o
extra_options="${extra_options} i386/netware.opt"
case /${with_ld} in
*/nwld)
extra_objs="$extra_objs nwld.o"
tm_file="${tm_file} i386/nwld.h"
tmake_file="${tmake_file} i386/t-nwld t-slibgcc-dummy"
;;
esac
case x${enable_threads} in
x | xyes | xposix) thread_file='posix';;
xnks) thread_file='nks';;
xno) ;;
*) echo 'Unknown thread configuration for NetWare' >&2; exit 1;;
esac
;;
i[34567]86-*-nto-qnx*)
tm_file="${tm_file} i386/att.h dbxelf.h tm-dwarf2.h elfos.h i386/unix.h i386/nto.h"
extra_options="${extra_options} i386/nto.opt"

View File

@ -31431,8 +31431,7 @@ ix86_md_asm_clobbers (tree outputs ATTRIBUTE_UNUSED,
return clobbers;
}
/* Implements target vector targetm.asm.encode_section_info. This
is not used by netware. */
/* Implements target vector targetm.asm.encode_section_info. */
static void ATTRIBUTE_UNUSED
ix86_encode_section_info (tree decl, rtx rtl, int first)

View File

@ -1131,7 +1131,6 @@ enum target_cpu_default
/* This is overridden by <cygwin.h>. */
#define MS_AGGREGATE_RETURN 0
/* This is overridden by <netware.h>. */
#define KEEP_AGGREGATE_RETURN_POINTER 0
/* Define the classes of registers for register constraints in the

View File

@ -1,58 +0,0 @@
/* Startup code for libgcc_s.nlm, necessary because we can't allow
libgcc_s to use libc's malloc & Co., which associate allocations
with the NLM owning the current (application) thread.
Contributed by Jan Beulich (jbeulich@novell.com)
Copyright (C) 2004, 2007 Free Software Foundation, Inc.
This file is part of GCC.
GCC is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3, or (at your option)
any later version.
GCC is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
#include <netware.h>
#include <stddef.h>
#include <stdlib.h>
#include <windows.h>
static rtag_t allocRTag;
BOOL
DllMain (HINSTANCE libraryId __attribute__ ((__unused__)),
DWORD reason, void *hModule)
{
switch (reason)
{
case DLL_NLM_STARTUP:
allocRTag = AllocateResourceTag (hModule,
"libgcc memory", AllocSignature);
return allocRTag != NULL;
case DLL_NLM_SHUTDOWN:
/* This does not recover resources associated with the tag...
ReturnResourceTag (allocRTag, 0); */
break;
}
return 1;
}
void *
malloc (size_t size)
{
return AllocSleepOK (size, allocRTag, NULL);
}
void
free (void *ptr)
{
Free (ptr);
}

View File

@ -1,2 +0,0 @@
description "gcc runtime and intrinsics support"
copyright "Copyright (C) 1989-2005 Free Software Foundation, Inc."

View File

@ -1,83 +0,0 @@
# libgcc_s.nlm exports
(libgcc2),
__absvdi2,
__absvsi2,
__addvdi3,
__addvsi3,
# __ashldi3,
# __ashrdi3,
__bswapdi2,
__bswapsi2,
__clzdi2,
__clzsi2,
__ctzdi2,
__ctzsi2,
__deregister_frame,
__deregister_frame_info,
__deregister_frame_info_bases,
__divdc3,
# __divdi3,
__divsc3,
# __divtc3,
__divxc3,
__emutls_get_address,
__emutls_register_common,
__ffsdi2,
__ffssi2,
__fixunsdfdi,
__fixunssfdi,
# __fixunstfdi,
__fixunsxfdi,
__floatundisf,
__floatundidf,
# __floatunditf,
__floatundixf,
__gcc_bcmp,
__gcc_personality_v0,
# __lshrdi3,
# __moddi3,
__muldc3,
# __muldi3,
__mulsc3,
# __multc3,
__mulvdi3,
__mulvsi3,
__mulxc3,
__negvdi2,
__negvsi2,
__paritydi2,
__paritysi2,
__popcountdi2,
__popcountsi2,
__powidf2
__powisf2
# __powitf2
__powixf2
__register_frame,
__register_frame_info,
__register_frame_info_bases,
__register_frame_info_table,
__register_frame_info_table_bases,
__register_frame_table,
__subvdi3,
__subvsi3,
# __umoddi3,
# __udivdi3,
_Unwind_Backtrace,
_Unwind_DeleteException,
_Unwind_FindEnclosingFunction,
_Unwind_Find_FDE,
_Unwind_ForcedUnwind,
_Unwind_GetCFA,
_Unwind_GetDataRelBase,
_Unwind_GetGR,
_Unwind_GetIP,
_Unwind_GetIPInfo,
_Unwind_GetLanguageSpecificData,
_Unwind_GetRegionStart,
_Unwind_GetTextRelBase,
_Unwind_RaiseException,
_Unwind_Resume,
_Unwind_Resume_or_Rethrow,
_Unwind_SetGR,
_Unwind_SetIP

View File

@ -1,237 +0,0 @@
/* Subroutines for insn-output.c for NetWare.
Contributed by Jan Beulich (jbeulich@novell.com)
Copyright (C) 2004, 2005, 2007, 2008, 2009, 2010
Free Software Foundation, Inc.
This file is part of GCC.
GCC is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3, or (at your option)
any later version.
GCC is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
#include "config.h"
#include "system.h"
#include "coretypes.h"
#include "tm.h"
#include "rtl.h"
#include "regs.h"
#include "hard-reg-set.h"
#include "output.h"
#include "tree.h"
#include "flags.h"
#include "tm_p.h"
#include "diagnostic-core.h"
#include "langhooks.h"
#include "ggc.h"
/* Return string which is the function name, identified by ID, modified
with PREFIX and a suffix consisting of an atsign (@) followed by the
number of bytes of arguments. If ID is NULL use the DECL_NAME as base.
Return NULL if no change required. */
static tree
gen_stdcall_or_fastcall_decoration (tree decl, tree id, char prefix)
{
unsigned HOST_WIDE_INT total = 0;
const char *old_str = IDENTIFIER_POINTER (id != NULL_TREE ? id : DECL_NAME (decl));
char *new_str;
tree type = TREE_TYPE (decl);
if (prototype_p (type))
{
tree arg;
function_args_iterator args_iter;
/* This attribute is ignored for variadic functions. */
if (stdarg_p (type))
return NULL_TREE;
/* Quit if we hit an incomplete type. Error is reported
by convert_arguments in c-typeck.c or cp/typeck.c. */
FOREACH_FUNCTION_ARGS(type, arg, args_iter)
{
HOST_WIDE_INT parm_size;
unsigned HOST_WIDE_INT parm_boundary_bytes;
if (! COMPLETE_TYPE_P (arg))
break;
parm_size = int_size_in_bytes (arg);
if (parm_size < 0)
break;
parm_boundary_bytes = PARM_BOUNDARY / BITS_PER_UNIT;
/* Must round up to include padding. This is done the same
way as in store_one_arg. */
total += (parm_size + parm_boundary_bytes - 1)
/ parm_boundary_bytes * parm_boundary_bytes;
}
}
new_str = XALLOCAVEC (char, 1 + strlen (old_str) + 1 + 10 + 1);
sprintf (new_str, "%c%s@" HOST_WIDE_INT_PRINT_UNSIGNED,
prefix, old_str, total);
return get_identifier (new_str);
}
/* Return string which is the function name, identified by ID, modified
with an _n@ prefix (where n represents the number of arguments passed in
registers). If ID is NULL use the DECL_NAME as base.
Return NULL if no change required. */
static tree
gen_regparm_prefix (tree decl, tree id, unsigned int nregs)
{
unsigned HOST_WIDE_INT total = 0;
const char *old_str = IDENTIFIER_POINTER (id != NULL_TREE ? id : DECL_NAME (decl));
char *new_str;
tree type = TREE_TYPE (decl);
if (prototype_p (type))
{
tree arg;
function_args_iterator args_iter;
/* This attribute is ignored for variadic functions. */
if (stdarg_p (type))
return NULL_TREE;
/* Quit if we hit an incomplete type. Error is reported
by convert_arguments in c-typeck.c or cp/typeck.c. */
FOREACH_FUNCTION_ARGS(type, arg, args_iter)
{
HOST_WIDE_INT parm_size;
unsigned HOST_WIDE_INT parm_boundary_bytes;
if (! COMPLETE_TYPE_P (arg))
break;
parm_size = int_size_in_bytes (arg);
if (parm_size < 0)
break;
parm_boundary_bytes = PARM_BOUNDARY / BITS_PER_UNIT;
/* Must round up to include padding. This is done the same
way as in store_one_arg. */
total += (parm_size + parm_boundary_bytes - 1)
/ parm_boundary_bytes * parm_boundary_bytes;
}
}
if (nregs > total / UNITS_PER_WORD)
nregs = total / UNITS_PER_WORD;
gcc_assert (nregs <= 9);
new_str = XALLOCAVEC (char, 3 + strlen (old_str) + 1);
sprintf (new_str, "_%u@%s", nregs, old_str);
return get_identifier (new_str);
}
/* Maybe decorate and get a new identifier for the DECL of a stdcall or
fastcall function. The original identifier is supplied in ID. */
static tree
i386_nlm_maybe_mangle_decl_assembler_name (tree decl, tree id)
{
tree type_attributes = TYPE_ATTRIBUTES (TREE_TYPE (decl));
tree new_id;
unsigned int ccvt = ix86_get_callcvt (TREE_TYPE (decl));
if ((ccvt & IX86_CALLCVT_STDCALL) != 0)
{
if (TARGET_RTD)
/* If we are using -mrtd emit undecorated symbol and let linker
do the proper resolving. */
return NULL_TREE;
new_id = gen_stdcall_or_fastcall_decoration (decl, id, '_');
}
else if ((ccvt & IX86_CALLCVT_FASTCALL) != 0)
new_id = gen_stdcall_or_fastcall_decoration (decl, id, FASTCALL_PREFIX);
else if ((ccvt & IX86_CALLCVT_REGPARM) != 0
&& (new_id = lookup_attribute ("regparm", type_attributes)))
new_id = gen_regparm_prefix (decl, id,
TREE_INT_CST_LOW (TREE_VALUE (TREE_VALUE (new_id))));
else
new_id = NULL_TREE;
return new_id;
}
/* This is used as a target hook to modify the DECL_ASSEMBLER_NAME
in the language-independent default hook
langhooks.c:lhd_set_decl_assembler_name ()
and in cp/mangle.c:mangle_decl (). */
tree
i386_nlm_mangle_decl_assembler_name (tree decl, tree id)
{
tree new_id = TREE_CODE (decl) == FUNCTION_DECL
? i386_nlm_maybe_mangle_decl_assembler_name (decl, id)
: NULL_TREE;
return (new_id ? new_id : id);
}
void
i386_nlm_encode_section_info (tree decl, rtx rtl, int first)
{
default_encode_section_info (decl, rtl, first);
if (TREE_CODE (decl) == FUNCTION_DECL
/* Do not change the identifier if a verbatim asmspec
or if stdcall suffix already added. */
&& *IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (decl)) != '*'
&& !strchr (IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (decl)), '@')
/* FIXME: Imported stdcall names are not modified by the Ada frontend.
Check and decorate the RTL name now. */
&& strcmp (lang_hooks.name, "GNU Ada") == 0)
{
rtx symbol = XEXP (rtl, 0);
tree new_id;
tree old_id = DECL_ASSEMBLER_NAME (decl);
gcc_assert (GET_CODE (symbol) == SYMBOL_REF);
if ((new_id = i386_nlm_maybe_mangle_decl_assembler_name (decl, old_id)))
XSTR (symbol, 0) = IDENTIFIER_POINTER (new_id);
}
}
/* Strip the stdcall/fastcall/regparm pre-/suffix. */
const char *
i386_nlm_strip_name_encoding (const char *str)
{
const char *name = default_strip_name_encoding (str);
if (*str != '*' && (*name == '_' || *name == '@'))
{
const char *p = strchr (name + 1, '@');
if (p)
{
++name;
if (ISDIGIT (p[1]))
name = ggc_alloc_string (name, p - name);
else
{
gcc_assert (ISDIGIT (*name));
name++;
gcc_assert (name == p);
}
}
}
return name;
}

View File

@ -1,175 +0,0 @@
/* Core target definitions for GCC for Intel 80x86 running Netware.
and using dwarf for the debugging format.
Copyright (C) 1993, 1994, 2004, 2007, 2008, 2009, 2010, 2011
Free Software Foundation, Inc.
Written by David V. Henkel-Wallace (gumby@cygnus.com)
This file is part of GCC.
GCC is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3, or (at your option)
any later version.
GCC is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
#undef CPP_SPEC
#define CPP_SPEC "%{posix:-D_POSIX_SOURCE} %{pthread:-D_REENTRANT}"
#undef ASM_SPEC
#define ASM_SPEC ""
#undef LIB_SPEC
#define LIB_SPEC ""
/* Kinda useless, but what the hell */
#undef LINK_SPEC
#define LINK_SPEC "%{h*} %{v:-V}"
#undef STARTFILE_SPEC
#define STARTFILE_SPEC ""
#undef ENDFILE_SPEC
#define ENDFILE_SPEC ""
#undef RELATIVE_PREFIX_NOT_LINKDIR
#undef LIBGCC_SPEC
#define TARGET_OS_CPP_BUILTINS() \
do \
{ \
builtin_define_std ("IAPX386"); \
builtin_define ("_M_IX86=300"); \
builtin_define ("__netware__"); \
builtin_assert ("system=netware"); \
builtin_define ("__ELF__"); \
builtin_define ("__cdecl=__attribute__((__cdecl__))"); \
builtin_define ("__stdcall=__attribute__((__stdcall__))"); \
builtin_define ("__fastcall=__attribute__((__fastcall__))"); \
if (!flag_iso) \
{ \
builtin_define ("_cdecl=__attribute__((__cdecl__))"); \
builtin_define ("_stdcall=__attribute__((__stdcall__))"); \
builtin_define ("_fastcall=__attribute__((__fastcall__))"); \
} \
} \
while (0)
#undef TARGET_CPU_DEFAULT
#define TARGET_CPU_DEFAULT TARGET_CPU_DEFAULT_pentium4
/* By default, target has a 80387, uses IEEE compatible arithmetic,
returns float values in the 387, and uses MSVC bit field layout. */
#undef TARGET_SUBTARGET_DEFAULT
#define TARGET_SUBTARGET_DEFAULT (MASK_80387 | MASK_IEEE_FP | \
MASK_FLOAT_RETURNS | MASK_ALIGN_DOUBLE | MASK_MS_BITFIELD_LAYOUT)
/* Don't allow flag_pic to propagate since invalid relocations will
result otherwise. */
#define SUBTARGET_OVERRIDE_OPTIONS \
do { \
if (flag_pic) \
{ \
error ("-fPIC and -fpic are not supported for this target"); \
flag_pic = 0; \
} \
} while (0)
#undef MATH_LIBRARY
#define MATH_LIBRARY ""
/* Align doubles and long-longs in structures on qword boundaries. */
#undef BIGGEST_FIELD_ALIGNMENT
#define BIGGEST_FIELD_ALIGNMENT 64
#undef DEFAULT_PCC_STRUCT_RETURN
#define DEFAULT_PCC_STRUCT_RETURN 0
/* Implicit arguments pointing to aggregate return values are to be
removed by the caller. */
#undef KEEP_AGGREGATE_RETURN_POINTER
#define KEEP_AGGREGATE_RETURN_POINTER 1
#undef ASM_COMMENT_START
#define ASM_COMMENT_START "#"
#undef DBX_REGISTER_NUMBER
#define DBX_REGISTER_NUMBER(n) (svr4_dbx_register_map[n])
/* Default structure packing is 1-byte. */
#define TARGET_DEFAULT_PACK_STRUCT 1
#undef SIZE_TYPE
#define SIZE_TYPE "unsigned int"
#undef PTRDIFF_TYPE
#define PTRDIFF_TYPE "int"
#undef WCHAR_TYPE
#define WCHAR_TYPE "short unsigned int"
#undef WCHAR_TYPE_SIZE
#define WCHAR_TYPE_SIZE 16
#undef WINT_TYPE
#define WINT_TYPE "int"
/* A C statement (sans semicolon) to output to the stdio stream
FILE the assembler definition of uninitialized global DECL named
NAME whose size is SIZE bytes and alignment is ALIGN bytes.
Try to use asm_output_aligned_bss to implement this macro. */
#define ASM_OUTPUT_ALIGNED_BSS(FILE, DECL, NAME, SIZE, ALIGN) \
asm_output_aligned_bss (FILE, DECL, NAME, SIZE, ALIGN)
/* Handle special EH pointer encodings. Absolute, pc-relative, and
indirect are handled automatically. */
#define ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX(FILE, ENCODING, SIZE, ADDR, DONE) \
do { \
if ((SIZE) == 4 && ((ENCODING) & 0x70) == DW_EH_PE_datarel) \
{ \
fputs (ASM_LONG, FILE); \
assemble_name (FILE, XSTR (ADDR, 0)); \
fputs (((ENCODING) & DW_EH_PE_indirect ? "@GOT" : "@GOTOFF"), FILE); \
goto DONE; \
} \
} while (0)
/* there is no TLS support in NLMs/on NetWare */
#undef HAVE_AS_TLS
#define HAS_INIT_SECTION
#undef INIT_SECTION_ASM_OP
#define CTOR_LISTS_DEFINED_EXTERNALLY
#undef READONLY_DATA_SECTION_ASM_OP
#define READONLY_DATA_SECTION_ASM_OP ".section\t.rodata"
/* Define this macro if references to a symbol must be treated
differently depending on something about the variable or
function named by the symbol (such as what section it is in).
On i386 running NetWare, modify the assembler name with an underscore (_)
or atsign (@) prefix and a suffix consisting of an atsign (@) followed by
a string of digits that represents the number of bytes of arguments passed
to the function, if it has the attribute STDCALL. Alternatively, if it has
the REGPARM attribute, prefix it with an underscore (_), a digit
representing the number of registers used, and an atsign (@). */
void i386_nlm_encode_section_info (tree, rtx, int);
extern tree i386_nlm_mangle_decl_assembler_name (tree, tree);
const char *i386_nlm_strip_name_encoding (const char *);
#define SUBTARGET_ENCODE_SECTION_INFO i386_nlm_encode_section_info
#define TARGET_MANGLE_DECL_ASSEMBLER_NAME i386_nlm_mangle_decl_assembler_name
#undef TARGET_STRIP_NAME_ENCODING
#define TARGET_STRIP_NAME_ENCODING i386_nlm_strip_name_encoding
#define TARGET_POSIX_IO

View File

@ -1,33 +0,0 @@
; Netware options.
; Copyright (C) 2011
; Free Software Foundation, Inc.
;
; This file is part of GCC.
;
; GCC is free software; you can redistribute it and/or modify it under
; the terms of the GNU General Public License as published by the Free
; Software Foundation; either version 3, or (at your option) any later
; version.
;
; GCC is distributed in the hope that it will be useful, but WITHOUT ANY
; WARRANTY; without even the implied warranty of MERCHANTABILITY or
; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
; for more details.
;
; You should have received a copy of the GNU General Public License
; along with GCC; see the file COPYING3. If not see
; <http://www.gnu.org/licenses/>.
; See the GCC internals manual (options.texi) for a description of
; this file's format.
; Please try to keep this file in ASCII collating order.
posix
Driver
pthread
Driver
; This comment is to ensure we retain the blank line above.

View File

@ -1,73 +0,0 @@
/* Subroutines for insn-output.c for NetWare.
Contributed by Jan Beulich (jbeulich@novell.com)
Copyright (C) 2004, 2007, 2010 Free Software Foundation, Inc.
This file is part of GCC.
GCC is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3, or (at your option)
any later version.
GCC is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
#include "config.h"
#include "system.h"
#include "coretypes.h"
#include "tm.h"
#include "rtl.h"
#include "regs.h"
#include "hard-reg-set.h"
#include "output.h"
#include "tree.h"
#include "flags.h"
#include "tm_p.h"
#include "diagnostic-core.h"
void
nwld_named_section_asm_out_constructor (rtx symbol, int priority)
{
#if !SUPPORTS_INIT_PRIORITY
const char section[] = ".ctors"TARGET_SUB_SECTION_SEPARATOR;
#else
char section[20];
sprintf (section,
".ctors"TARGET_SUB_SECTION_SEPARATOR"%.5u",
/* Invert the numbering so the linker puts us in the proper
order; constructors are run from right to left, and the
linker sorts in increasing order. */
MAX_INIT_PRIORITY - priority);
#endif
switch_to_section (get_section (section, 0, NULL));
assemble_align (POINTER_SIZE);
assemble_integer (symbol, POINTER_SIZE / BITS_PER_UNIT, POINTER_SIZE, 1);
}
void
nwld_named_section_asm_out_destructor (rtx symbol, int priority)
{
#if !SUPPORTS_INIT_PRIORITY
const char section[] = ".dtors"TARGET_SUB_SECTION_SEPARATOR;
#else
char section[20];
sprintf (section, ".dtors"TARGET_SUB_SECTION_SEPARATOR"%.5u",
/* Invert the numbering so the linker puts us in the proper
order; destructors are run from left to right, and the
linker sorts in increasing order. */
MAX_INIT_PRIORITY - priority);
#endif
switch_to_section (get_section (section, 0, NULL));
assemble_align (POINTER_SIZE);
assemble_integer (symbol, POINTER_SIZE / BITS_PER_UNIT, POINTER_SIZE, 1);
}

View File

@ -1,69 +0,0 @@
/* nwld.h -- defines to be used when targeting GCC for some generic NetWare
system while using the Novell linker.
Copyright (C) 2004, 2007, 2010, 2011 Free Software Foundation, Inc.
Written by Jan Beulich (jbeulich@novell.com)
This file is part of GCC.
GCC is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3, or (at your option)
any later version.
GCC is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
#undef LIB_SPEC
#define LIB_SPEC "-lc --def-file libc.def%s"
#undef LIBGCC_SPEC
#define LIBGCC_SPEC "-lgcc %{!static-libgcc:--def-file libgcc.def%s}"
#undef LINKER_NAME
#define LINKER_NAME "nwld"
#undef LINK_SPEC
#define LINK_SPEC "--format:NLM --extensions:GNU" \
" %{static:%{!nostdlib:%{!nodefaultlibs:%estatic linking is not supported\n}}}"
#undef LINK_GCC_C_SEQUENCE_SPEC
#define LINK_GCC_C_SEQUENCE_SPEC "%L %G"
/* In order to permit the linker to derive the output filename from the first
input file, put the common startup code as the last object. */
#undef STARTFILE_SPEC
#define STARTFILE_SPEC ""
#undef ENDFILE_SPEC
#define ENDFILE_SPEC "crt0%O%s ../imports/%{!posix:libc}%{posix:posix}pre.gcc%O%s" \
" --def-file %{!posix:libc}%{posix:posix}pre.def%s"
#define DRIVER_SELF_SPECS "%{!static-libgcc:-shared-libgcc}"
#define TARGET_SUB_SECTION_SEPARATOR "$"
void nwld_named_section_asm_out_constructor (rtx, int);
void nwld_named_section_asm_out_destructor (rtx, int);
#define TARGET_ASM_CONSTRUCTOR nwld_named_section_asm_out_constructor
#define TARGET_ASM_DESTRUCTOR nwld_named_section_asm_out_destructor
#define SUBSUBTARGET_OVERRIDE_OPTIONS \
do { \
/* XXX This can be enabled once gas output meets nwld's needs. */ \
/* if (!flag_unwind_tables && !flag_exceptions) */ \
flag_dwarf2_cfi_asm = 0; \
} while (0)
#undef EH_FRAME_SECTION_NAME
#define EH_FRAME_SECTION_NAME ".eh_frame"TARGET_SUB_SECTION_SEPARATOR
/* nwld does not currently support stabs debug info */
#undef DBX_DEBUGGING_INFO

View File

@ -1,10 +0,0 @@
TARGET_LIBGCC2_CFLAGS = -mpreferred-stack-boundary=2 -fomit-frame-pointer
netware.o: $(srcdir)/config/i386/netware.c $(RTL_H) $(TREE_H) $(CONFIG_H) $(TM_P_H)
$(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \
$(srcdir)/config/i386/netware.c
# We don't need some of GCC's own include files.
USER_H = $(srcdir)/ginclude/stdarg.h \
$(srcdir)/ginclude/varargs.h \
$(EXTRA_HEADERS) $(LANG_EXTRA_HEADERS)

View File

@ -1,22 +0,0 @@
# Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2011
# Free Software Foundation, Inc.
#
# This file is part of GCC.
#
# GCC is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3, or (at your option)
# any later version.
#
# GCC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with GCC; see the file COPYING3. If not see
# <http://www.gnu.org/licenses/>.
nwld.o: $(srcdir)/config/i386/nwld.c $(RTL_H) $(TREE_H) $(CONFIG_H) $(TM_P_H)
$(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) \
$(srcdir)/config/i386/nwld.c

2
gcc/configure vendored
View File

@ -10899,7 +10899,7 @@ case ${enable_threads} in
# default
target_thread_file='single'
;;
aix | dce | lynx | mipssde | nks | posix | posix95 | rtems | \
aix | dce | lynx | mipssde | posix | posix95 | rtems | \
single | tpf | vxworks | win32)
target_thread_file=${enable_threads}
;;

View File

@ -1340,7 +1340,7 @@ case ${enable_threads} in
# default
target_thread_file='single'
;;
aix | dce | lynx | mipssde | nks | posix | posix95 | rtems | \
aix | dce | lynx | mipssde | posix | posix95 | rtems | \
single | tpf | vxworks | win32)
target_thread_file=${enable_threads}
;;

View File

@ -2836,11 +2836,8 @@ On 32-bit i?86-*-* targets, you can control by those attribute for
aggregate return in memory, if the caller is responsible to pop the hidden
pointer together with the rest of the arguments - @var{number} equal to
zero -, or if the callee is responsible to pop hidden pointer - @var{number}
equal to one.
For i?86-netware, the caller pops the stack for the hidden arguments pointing
to aggregate return value. This differs from the default i386 ABI which assumes
that the callee pops the stack for hidden pointer.
equal to one. The default i386 ABI assumes that the callee pops the
stack for hidden pointer.
@item ms_hook_prologue
@cindex @code{ms_hook_prologue} attribute

View File

@ -1141,8 +1141,6 @@ DCE thread support.
LynxOS thread support.
@item mipssde
MIPS SDE thread support.
@item nks
Novell Kernel Services thread support.
@item no
This is an alias for @samp{single}.
@item posix

View File

@ -1,397 +0,0 @@
/* Threads compatibility routines for libgcc2 and libobjc. */
/* Compile this one with gcc. */
/* Copyright (C) 2002, 2003, 2004, 2008, 2009 Free Software Foundation, Inc.
This file is part of GCC.
GCC is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free
Software Foundation; either version 3, or (at your option) any later
version.
GCC is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.
Under Section 7 of GPL version 3, you are granted additional
permissions described in the GCC Runtime Library Exception, version
3.1, as published by the Free Software Foundation.
You should have received a copy of the GNU General Public License and
a copy of the GCC Runtime Library Exception along with this program;
see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
<http://www.gnu.org/licenses/>. */
#ifndef GCC_GTHR_NKS_H
#define GCC_GTHR_NKS_H
/* NKS threads specific definitions.
Easy, since the interface is mostly one-to-one mapping. */
#define __GTHREADS 1
#define NKS_NO_INLINE_FUNCS
#include <nksapi.h>
#include <string.h>
typedef NXKey_t __gthread_key_t;
typedef NXMutex_t *__gthread_mutex_t;
typedef NXMutex_t *__gthread_recursive_mutex_t;
#define __GTHREAD_MUTEX_INIT_FUNCTION __gthread_mutex_init_function
#define __GTHREAD_RECURSIVE_MUTEX_INIT_FUNCTION __gthread_recursive_mutex_init_function
static inline int
__gthread_active_p (void)
{
return 1;
}
#ifdef _LIBOBJC
/* This is the config.h file in libobjc/ */
#include <config.h>
#ifdef HAVE_SCHED_H
# include <sched.h>
#endif
/* Key structure for maintaining thread specific storage */
static NXKey_t _objc_thread_storage;
/* Backend initialization functions */
/* Initialize the threads subsystem. */
static inline int
__gthread_objc_init_thread_system (void)
{
/* Initialize the thread storage key. */
if (NXKeyCreate (NULL, NULL, &_objc_thread_storage) == 0)
return 0;
return -1;
}
/* Close the threads subsystem. */
static inline int
__gthread_objc_close_thread_system (void)
{
if (NXKeyDelete (_objc_thread_storage) == 0)
return 0;
return -1;
}
/* Backend thread functions */
/* Create a new thread of execution. */
static inline objc_thread_t
__gthread_objc_thread_detach (void (*func)(void *), void *arg)
{
objc_thread_t thread_id;
NXContext_t context;
NXThreadId_t new_thread_handle;
int err;
if ((context = NXContextAlloc (func, arg, NX_PRIO_MED, 0, 0, 0, &err)) == NULL)
thread_id = NULL;
else if (NXThreadCreate (context, NX_THR_DETACHED, &new_thread_handle) == 0)
thread_id = (objc_thread_t) new_thread_handle;
else {
NXContextFree (context);
thread_id = NULL;
}
return thread_id;
}
/* Set the current thread's priority. */
static inline int
__gthread_objc_thread_set_priority (int priority)
{
if (NXThreadSetPriority (NXThreadGetId (), priority) == 0)
return 0;
return -1;
}
/* Return the current thread's priority. */
static inline int
__gthread_objc_thread_get_priority (void)
{
int priority;
if (NXThreadGetPriority (NXThreadGetId (), &priority) == 0)
return priority;
return -1;
}
/* Yield our process time to another thread. */
static inline void
__gthread_objc_thread_yield (void)
{
NXThreadYield ();
}
/* Terminate the current thread. */
static inline int
__gthread_objc_thread_exit (void)
{
/* exit the thread */
NXThreadExit (&__objc_thread_exit_status);
/* Failed if we reached here */
return -1;
}
/* Returns an integer value which uniquely describes a thread. */
static inline objc_thread_t
__gthread_objc_thread_id (void)
{
(objc_thread_t) NXThreadGetId ();
}
/* Sets the thread's local storage pointer. */
static inline int
__gthread_objc_thread_set_data (void *value)
{
return NXKeySetValue (_objc_thread_storage, value);
}
/* Returns the thread's local storage pointer. */
static inline void *
__gthread_objc_thread_get_data (void)
{
void *value;
if (NXKeyGetValue (_objc_thread_storage, &value) == 0)
return value;
return NULL;
}
/* Backend mutex functions */
/* Allocate a mutex. */
static inline int
__gthread_objc_mutex_allocate (objc_mutex_t mutex)
{
static const NX_LOCK_INFO_ALLOC (info, "GNU ObjC", 0);
if ((mutex->backend = NXMutexAlloc (0, 0, &info)) == NULL)
return 0;
return -1;
}
/* Deallocate a mutex. */
static inline int
__gthread_objc_mutex_deallocate (objc_mutex_t mutex)
{
while (NXMutexIsOwned ((NXMutex_t *)mutex->backend))
NXUnlock ((NXMutex_t *)mutex->backend);
if (NXMutexFree ((NXMutex_t *)mutex->backend) != 0)
return -1;
mutex->backend = NULL;
return 0;
}
/* Grab a lock on a mutex. */
static inline int
__gthread_objc_mutex_lock (objc_mutex_t mutex)
{
return NXLock ((NXMutex_t *)mutex->backend);
}
/* Try to grab a lock on a mutex. */
static inline int
__gthread_objc_mutex_trylock (objc_mutex_t mutex)
{
if (!NXTryLock ((NXMutex_t *)mutex->backend))
return -1;
return 0;
}
/* Unlock the mutex */
static inline int
__gthread_objc_mutex_unlock (objc_mutex_t mutex)
{
return NXUnlock ((NXMutex_t *)mutex->backend);
}
/* Backend condition mutex functions */
/* Allocate a condition. */
static inline int
__gthread_objc_condition_allocate (objc_condition_t condition)
{
condition->backend = NXCondAlloc (NULL);
if (condition->backend == NULL)
return -1;
return 0;
}
/* Deallocate a condition. */
static inline int
__gthread_objc_condition_deallocate (objc_condition_t condition)
{
if (NXCondFree ((NXCond_t *)condition->backend) != 0)
return -1;
condition->backend = NULL;
return 0;
}
/* Wait on the condition */
static inline int
__gthread_objc_condition_wait (objc_condition_t condition, objc_mutex_t mutex)
{
return NXCondWait ((NXCond_t *)condition->backend, (NXMutex_t *)mutex->backend);
}
/* Wake up all threads waiting on this condition. */
static inline int
__gthread_objc_condition_broadcast (objc_condition_t condition)
{
return NXCondBroadcast ((NXCond_t *)condition->backend);
}
/* Wake up one thread waiting on this condition. */
static inline int
__gthread_objc_condition_signal (objc_condition_t condition)
{
return NXCondSignal ((NXCond_t *)condition->backend);
}
#else /* _LIBOBJC */
#if defined(__cplusplus)
# include <bits/atomicity.h>
/* The remaining conditions here are temporary until there is
an application accessible atomic operations API set... */
#elif defined(_M_IA64) || defined(__ia64__)
# include <../libstdc++-v3/config/cpu/ia64/bits/atomicity.h>
#elif defined(_M_IX86) || defined(__i486__)
# include <../libstdc++-v3/config/cpu/i486/bits/atomicity.h>
#elif defined(_M_AMD64) || defined(__x86_64__)
# include <../libstdc++-v3/config/cpu/x86-64/bits/atomicity.h>
#endif
typedef volatile long __gthread_once_t;
#define __GTHREAD_ONCE_INIT 0
static inline int
__gthread_once (__gthread_once_t *__once, void (*__func) (void))
{
if (__compare_and_swap (__once, 0, 1))
{
__func ();
*__once |= 2;
}
else
{
while (!(*__once & 2))
NXThreadYield ();
}
return 0;
}
static inline int
__gthread_key_create (__gthread_key_t *__key, void (*__dtor) (void *))
{
return NXKeyCreate (__dtor, NULL, __key);
}
static inline int
__gthread_key_dtor (__gthread_key_t __key, void *__ptr)
{
/* Just reset the key value to zero. */
if (__ptr)
return NXKeySetValue (__key, NULL);
return 0;
}
static inline int
__gthread_key_delete (__gthread_key_t __key)
{
return NXKeyDelete (__key);
}
static inline void *
__gthread_getspecific (__gthread_key_t __key)
{
void *__value;
if (NXKeyGetValue (__key, &__value) == 0)
return __value;
return NULL;
}
static inline int
__gthread_setspecific (__gthread_key_t __key, const void *__ptr)
{
return NXKeySetValue (__key, (void *)__ptr);
}
static inline void
__gthread_mutex_init_function (__gthread_mutex_t *__mutex)
{
static const NX_LOCK_INFO_ALLOC (__info, "GTHREADS", 0);
*__mutex = NXMutexAlloc (0, 0, &__info);
}
static inline int
__gthread_mutex_destroy (__gthread_mutex_t * UNUSED(__mutex))
{
return 0;
}
static inline int
__gthread_mutex_lock (__gthread_mutex_t *__mutex)
{
return NXLock (*__mutex);
}
static inline int
__gthread_mutex_trylock (__gthread_mutex_t *__mutex)
{
if (NXTryLock (*__mutex))
return 0;
return -1;
}
static inline int
__gthread_mutex_unlock (__gthread_mutex_t *__mutex)
{
return NXUnlock (*__mutex);
}
static inline void
__gthread_recursive_mutex_init_function (__gthread_recursive_mutex_t *__mutex)
{
static const NX_LOCK_INFO_ALLOC (__info, "GTHREADS", 0);
*__mutex = NXMutexAlloc (NX_MUTEX_RECURSIVE, 0, &__info);
}
static inline int
__gthread_recursive_mutex_lock (__gthread_recursive_mutex_t *__mutex)
{
return NXLock (*__mutex);
}
static inline int
__gthread_recursive_mutex_trylock (__gthread_recursive_mutex_t *__mutex)
{
if (NXTryLock (*__mutex))
return 0;
return -1;
}
static inline int
__gthread_recursive_mutex_unlock (__gthread_recursive_mutex_t *__mutex)
{
return NXUnlock (*__mutex);
}
#endif /* _LIBOBJC */
#endif /* not GCC_GTHR_NKS_H */

View File

@ -1,3 +1,29 @@
2011-07-18 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* g++.dg/ext/bitfield2.C: Remove i?86-*-netware support.
* g++.dg/ext/bitfield3.C: Likewise.
* g++.dg/ext/bitfield4.C: Likewise.
* g++.dg/ext/bitfield5.C: Likewise.
* g++.dg/other/PR23205.C: Remove *-*-netware* support.
* g++.dg/other/pr23205-2.C: Likewise.
* gcc.c-torture/compile/20001109-1.c: Remove dg-xfail-if.
* gcc.c-torture/compile/20001109-2.c: Likewise.
* gcc.dg/20040813-1.c: Remove *-*-netware* support.
* gcc.dg/bitfld-15.c: Remove i?86-*-netware support.
* gcc.dg/bitfld-16.c: Likewise.
* gcc.dg/bitfld-17.c: Likewise.
* gcc.dg/bitfld-18.c: Likewise.
* gcc.dg/builtins-config.h: Remove Netware support.
* gcc.dg/cdce1.c: Remove *-*-netware* support. Update line number.
* gcc.dg/cdce2.c: Likewise.
* gcc.dg/cpp/assert4.c: Remove netware support.
* gcc.dg/debug/pr35154.c: Remove *-*-netware* support.
* gfortran.dg/debug/pr35154-stabs.f: Remove *-*-netware* support.
* lib/target-supports.exp (check_visibility_available): Remove
NetWare support.
(check_profiling_available): Likewise.
2011-07-18 Ira Rosen <ira.rosen@linaro.org>
* gcc.dg/vect/pr49038.c: Run only on targets that support mmap.

View File

@ -1,7 +1,7 @@
/* { dg-do compile } */
/* Remove pedantic. Allow the GCC extension to use char for bitfields. */
/* { dg-options "" } */
/* { dg-options "-Wno-packed-bitfield-compat -mno-ms-bitfields" { target { i?86-*-netware i?86-*-mingw* x86_64-*-mingw* } } } */
/* { dg-options "-Wno-packed-bitfield-compat -mno-ms-bitfields" { target { i?86-*-mingw* x86_64-*-mingw* } } } */
struct t /* { dg-message "note: offset of packed bit-field 't::b' has changed in GCC 4.4" "" { target pcc_bitfield_type_matters } } */
{

View File

@ -1,6 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-Wno-packed-bitfield-compat" } */
/* { dg-options "-Wno-packed-bitfield-compat -mno-ms-bitfields" { target { i?86-*-netware i?86-*-mingw* x86_64-*-mingw* } } } */
/* { dg-options "-Wno-packed-bitfield-compat -mno-ms-bitfields" { target { i?86-*-mingw* x86_64-*-mingw* } } } */
struct t
{

View File

@ -1,6 +1,6 @@
/* { dg-do compile } */
/* { dg-options "" } */
/* { dg-options "-Wno-packed-bitfield-compat -mno-ms-bitfields" { target { i?86-*-netware i?86-*-mingw* x86_64-*-mingw* } } } */
/* { dg-options "-Wno-packed-bitfield-compat -mno-ms-bitfields" { target { i?86-*-mingw* x86_64-*-mingw* } } } */
struct t /* { dg-message "note: offset of packed bit-field 't::b' has changed in GCC 4.4" "" { target pcc_bitfield_type_matters } } */
{

View File

@ -1,6 +1,6 @@
/* { dg-do compile } */
/* { dg-options "-Wno-packed-bitfield-compat" } */
/* { dg-options "-Wno-packed-bitfield-compat -mno-ms-bitfields" { target { i?86-*-netware i?86-*-mingw* x86_64-*-mingw* } } } */
/* { dg-options "-Wno-packed-bitfield-compat -mno-ms-bitfields" { target { i?86-*-mingw* x86_64-*-mingw* } } } */
struct t
{

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-skip-if "No stabs" { mmix-*-* *-*-aix* *-*-netware* alpha*-*-* hppa*64*-*-* ia64-*-* *-*-vxworks } { "*" } { "" } } */
/* { dg-skip-if "No stabs" { mmix-*-* *-*-aix* alpha*-*-* hppa*64*-*-* ia64-*-* *-*-vxworks } { "*" } { "" } } */
/* { dg-options "-gstabs+ -fno-eliminate-unused-debug-types" } */
const int foobar = 4;

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-skip-if "No stabs" { mmix-*-* *-*-aix* *-*-netware* alpha*-*-* hppa*64*-*-* ia64-*-* } { "*" } { "" } } */
/* { dg-skip-if "No stabs" { mmix-*-* *-*-aix* alpha*-*-* hppa*64*-*-* ia64-*-* } { "*" } { "" } } */
/* { dg-options "-gstabs+ -fno-eliminate-unused-debug-types -ftoplevel-reorder" } */
const int foobar = 4;

View File

@ -1,5 +1,3 @@
/* This does not work on NetWare, which has a default of 1-byte alignment. */
/* { dg-xfail-if "" { "*-*-netware*" } { "*" } { "" } } */
typedef struct _foo foo;
extern foo bar;
struct _foo {

View File

@ -1,5 +1,3 @@
/* This does not work on NetWare, which has a default of 1-byte alignment. */
/* { dg-xfail-if "" { "*-*-netware*" } { "*" } { "" } } */
extern struct foo bar;
struct foo {
int a;

View File

@ -2,7 +2,7 @@
/* Contributed by Devang Patel <dpatel@apple.com> */
/* { dg-do compile } */
/* { dg-skip-if "No stabs" { mmix-*-* *-*-aix* *-*-netware* alpha*-*-* hppa*64*-*-* ia64-*-* *-*-vxworks* } { "*" } { "" } } */
/* { dg-skip-if "No stabs" { mmix-*-* *-*-aix* alpha*-*-* hppa*64*-*-* ia64-*-* *-*-vxworks* } { "*" } { "" } } */
/* { dg-options "-gstabs" } */
int

View File

@ -1,7 +1,6 @@
/* { dg-do compile } */
/* Remove pedantic. Allow the GCC extension to use char for bitfields. */
/* { dg-options "" } */
/* { dg-options "-mno-ms-bitfields" { target i?86-*-netware } } */
/* { dg-options "-mno-ms-bitfields -Wno-packed-bitfield-compat" { target { i?86-*-mingw* x86_64-*-mingw* } } } */
struct t

View File

@ -1,6 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-Wno-packed-bitfield-compat" } */
/* { dg-options "-Wno-packed-bitfield-compat -mno-ms-bitfields" { target i?86-*-netware } } */
/* { dg-options "-Wno-packed-bitfield-compat -mno-ms-bitfields" { target { i?86-*-mingw* x86_64-*-mingw* } } } */
struct t

View File

@ -1,6 +1,5 @@
/* { dg-do compile } */
/* { dg-options "" } */
/* { dg-options "-mno-ms-bitfields" { target i?86-*-netware } } */
/* { dg-options "-mno-ms-bitfields -Wno-packed-bitfield-compat" { target { i?86-*-mingw* x86_64-*-mingw* } } } */
struct t

View File

@ -1,6 +1,5 @@
/* { dg-do compile } */
/* { dg-options "-Wno-packed-bitfield-compat" } */
/* { dg-options "-Wno-packed-bitfield-compat -mno-ms-bitfields" { target i?86-*-netware } } */
/* { dg-options "-Wno-packed-bitfield-compat -mno-ms-bitfields" { target { i?86-*-mingw* x86_64-*-mingw* } } } */
struct t

View File

@ -15,8 +15,6 @@
/* AVR doesn't have the entire C99 runtime. */
#elif defined(__FreeBSD__) && (__FreeBSD__ < 9)
/* FreeBSD up to version 8 lacks support for cexp and friends. */
#elif defined(__netware__)
/* NetWare doesn't have the entire C99 runtime. */
#elif defined(__vxworks)
/* VxWorks doesn't have a full C99 time. (cabs is missing, for example.) */
#elif defined(_WIN32) && !defined(__CYGWIN__)

View File

@ -1,7 +1,6 @@
/* { dg-do run } */
/* { dg-options "-O2 -fmath-errno -fdump-tree-cdce-details -lm" } */
/* { dg-options "-O2 -fmath-errno -fdump-tree-cdce-details" { target *-*-netware* } } */
/* { dg-final { scan-tree-dump "cdce1.c:17: note: function call is shrink-wrapped into error conditions\." "cdce" } } */
/* { dg-final { scan-tree-dump "cdce1.c:16: note: function call is shrink-wrapped into error conditions\." "cdce" } } */
/* { dg-final { cleanup-tree-dump "cdce" } } */
/* { dg-require-effective-target large_double } */

View File

@ -1,8 +1,7 @@
/* { dg-do run } */
/* { dg-skip-if "doubles are floats" { "avr-*-*" } { "*" } { "" } } */
/* { dg-options "-O2 -fmath-errno -fdump-tree-cdce-details -lm" } */
/* { dg-options "-O2 -fmath-errno -fdump-tree-cdce-details" { target *-*-netware* } } */
/* { dg-final { scan-tree-dump "cdce2.c:17: note: function call is shrink-wrapped into error conditions\." "cdce" } }*/
/* { dg-final { scan-tree-dump "cdce2.c:16: note: function call is shrink-wrapped into error conditions\." "cdce" } }*/
/* { dg-final { cleanup-tree-dump "cdce" } } */
#include <stdlib.h>

View File

@ -128,14 +128,6 @@
# error
#endif
#if defined __netware__
# if !#system(netware)
# error
# endif
#elif #system(netware)
# error
#endif
/* Check for #cpu and #machine assertions. */

View File

@ -23,7 +23,7 @@ main()
optb.f2 = 'D';
i_outer = 'e';
/* { dg-do compile } */
/* { dg-skip-if "No stabs" { mmix-*-* *-*-netware* alpha*-*-* hppa*64*-*-* ia64-*-* *-*-vxworks* } { "*" } { "" } } */
/* { dg-skip-if "No stabs" { mmix-*-* alpha*-*-* hppa*64*-*-* ia64-*-* *-*-vxworks* } { "*" } { "" } } */
/* { dg-skip-if "stabs only" { *-*-* } { "*" } { "-gstabs" } } */
return 0;
}

View File

@ -1,6 +1,6 @@
C Test program for common block debugging. G. Helffrich 11 July 2004.
C { dg-do compile }
C { dg-skip-if "No stabs" { mmix-*-* *-*-netware* alpha*-*-* hppa*64*-*-* ia64-*-* *-*-vxworks* } { "*" } { "" } }
C { dg-skip-if "No stabs" { mmix-*-* alpha*-*-* hppa*64*-*-* ia64-*-* *-*-vxworks* } { "*" } { "" } }
C { dg-skip-if "No stabs" {*-*-* } { "*" } { "-gstabs" } }
common i,j
common /label/l,m

View File

@ -290,11 +290,6 @@ proc check_weak_override_available { } {
# The argument is the kind of visibility, default/protected/hidden/internal.
proc check_visibility_available { what_kind } {
# On NetWare, support makes no sense.
if { [istarget *-*-netware*] } {
return 0
}
if [string match "" $what_kind] { set what_kind "hidden" }
return [check_no_compiler_messages visibility_available_$what_kind object "
@ -571,7 +566,6 @@ proc check_profiling_available { test_what } {
|| [istarget tic6x-*-elf]
|| [istarget xstormy16-*]
|| [istarget xtensa*-*-elf]
|| [istarget *-*-netware*]
|| [istarget *-*-rtems*]
|| [istarget *-*-vxworks*] } {
set profiling_available_saved 0

View File

@ -1,3 +1,9 @@
2011-07-18 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* config.host (i[3456x]86-*-netware*): Remove.
* config/i386/netware-crt0.c, config/i386/t-nwld,
config/i386/t-slibgcc-nwld: Remove.
2011-07-15 Bernd Schmidt <bernds@codesourcery.com>
* config.host: Handle tic6x-*-*.

View File

@ -375,14 +375,6 @@ i[34567]86-pc-msdosdjgpp*)
;;
i[34567]86-*-lynxos*)
;;
i[3456x]86-*-netware*)
case /${with_ld} in
*/nwld)
tmake_file="${tmake_file} i386/t-nwld i386/t-slibgcc-nwld"
extra_parts="${extra_parts} crt0.o libgcc.def libc.def libcpre.def posixpre.def"
;;
esac
;;
i[34567]86-*-nto-qnx*)
;;
i[34567]86-*-rtems*)

View File

@ -1,79 +0,0 @@
/* Startup routines for NetWare.
Contributed by Jan Beulich (jbeulich@novell.com)
Copyright (C) 2004, 2007 Free Software Foundation, Inc.
This file is part of GCC.
GCC is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3, or (at your option)
any later version.
GCC is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
#include <stddef.h>
#include <stdint.h>
#include "unwind-dw2-fde.h"
int __init_environment (void *);
int __deinit_environment (void *);
#define SECTION_DECL(name, decl) decl __attribute__((__section__(name)))
SECTION_DECL(".ctors", void(*const __CTOR_LIST__)(void))
= (void(*)(void))(intptr_t)-1;
SECTION_DECL(".ctors$_", void(*const __CTOR_END__)(void)) = NULL;
SECTION_DECL(".dtors", void(*const __DTOR_LIST__)(void))
= (void(*)(void))(intptr_t)-1;
SECTION_DECL(".dtors$_", void(*const __DTOR_END__)(void)) = NULL;
/* No need to use the __[de]register_frame_info_bases functions since
for us the bases are NULL always anyway. */
void __register_frame_info (const void *, struct object *)
__attribute__((__weak__));
void *__deregister_frame_info (const void *) __attribute__((__weak__));
SECTION_DECL(".eh_frame", /*const*/ uint32_t __EH_FRAME_BEGIN__[]) = { };
SECTION_DECL(".eh_frame$_", /*const*/ uint32_t __EH_FRAME_END__[]) = {0};
int
__init_environment (void *unused __attribute__((__unused__)))
{
void (* const * pctor)(void);
static struct object object;
if (__register_frame_info)
__register_frame_info (__EH_FRAME_BEGIN__, &object);
for (pctor = &__CTOR_END__ - 1; pctor > &__CTOR_LIST__; --pctor)
if (*pctor != NULL)
(*pctor)();
return 0;
}
int
__deinit_environment (void *unused __attribute__((__unused__)))
{
/* This should be static to prevent calling the same destructor
twice (just in case where we get here multiple times). */
static void (* const * pdtor)(void) = &__DTOR_LIST__ + 1;
while (pdtor < &__DTOR_END__)
if (*pdtor++ != NULL)
pdtor[-1] ();
if (__deregister_frame_info)
__deregister_frame_info(__EH_FRAME_BEGIN__);
return 0;
}

View File

@ -1,39 +0,0 @@
# Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2011
# Free Software Foundation, Inc.
#
# This file is part of GCC.
#
# GCC is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3, or (at your option)
# any later version.
#
# GCC is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with GCC; see the file COPYING3. If not see
# <http://www.gnu.org/licenses/>.
crt0.o: $(srcdir)/config/i386/netware-crt0.c
$(crt_compile) $(CRTSTUFF_T_CFLAGS) -c $<
CRTSTUFF_T_CFLAGS = -mpreferred-stack-boundary=2
libgcc.def: $(srcdir)/config/i386/t-nwld
echo "module libgcc_s" >$@
libc.def: $(srcdir)/config/i386/t-nwld
echo "module libc" >$@
libcpre.def: $(srcdir)/config/i386/t-nwld
echo "start _LibCPrelude" >$@
echo "exit _LibCPostlude" >>$@
echo "check _LibCCheckUnload" >>$@
posixpre.def: $(srcdir)/config/i386/t-nwld
echo "start POSIX_Start" >$@
echo "exit POSIX_Stop" >>$@
echo "check POSIX_CheckUnload" >>$@

View File

@ -1,31 +0,0 @@
# Build a shared libgcc library for NetWare.
SHLIB_EXT = .nlm
SHLIB_NAME = @shlib_base_name@.nlm
SHLIB_SLIBDIR_QUAL = @shlib_slibdir_qual@
SHLIB_DEF = $(gcc_srcdir)/config/i386/netware-libgcc.def
SHLIB_MAP = $(gcc_srcdir)/config/i386/netware-libgcc.exp
SHLIB_SRC = $(gcc_srcdir)/config/i386/netware-libgcc.c
SHLIB_LINK = set -e; \
cat $(SHLIB_DEF) >@shlib_base_name@.def; \
echo "name $(SHLIB_NAME)" >>@shlib_base_name@.def; \
echo "version $(version)" | sed "s!\.!,!g" >>@shlib_base_name@.def; \
touch build; \
echo "build $$(expr $$(<build) + 0)" >>@shlib_base_name@.def; \
echo "export @$(SHLIB_MAP)" >>@shlib_base_name@.def; \
if mpkxdc -n -p @shlib_base_name@.xdc; \
then echo "xdcdata @shlib_base_name@.xdc" >>@shlib_base_name@.def; \
else echo "WARNING: $(SHLIB_NAME) built without XDC data will not work well." 1>&2; \
fi; \
$(CC) $(LIBGCC2_CFLAGS) -o $(SHLIB_NAME) \
$(SHLIB_SRC) -posix -static-libgcc -lnetware \
-Wl,--Map,--map-info,full,--strip-all,--def-file,@shlib_base_name@.def; \
rm -f @shlib_base_name@.imp; $(LN_S) $(SHLIB_MAP) @shlib_base_name@.imp; \
rm -f libgcc.imp; $(LN_S) @shlib_base_name@.imp libgcc.imp; \
expr $$(<build) + 1 >build
SHLIB_INSTALL = \
$(SHELL) $(srcdir)/mkinstalldirs $(slibdir)$(SHLIB_SLIBDIR_QUAL); \
$(INSTALL_DATA) $(SHLIB_NAME) $(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_NAME); \
$(INSTALL_DATA) @shlib_base_name@.imp $(DESTDIR)$(libsubdir)/

View File

@ -1,3 +1,8 @@
2011-07-18 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* crossconfig.m4 (*-netware): Remove.
* configure: Regenerate.
2011-07-15 Yufeng Zhang <yufeng.zhang@arm.com>
* config/locale/newlib/ctype_members.cc: New file.

149
libstdc++-v3/configure vendored
View File

@ -57083,155 +57083,6 @@ $as_echo "$ac_ld_relro" >&6; }
$as_echo "#define HAVE_ISNANL 1" >>confdefs.h
fi
;;
*-netware)
SECTION_FLAGS='-ffunction-sections -fdata-sections'
# If we're not using GNU ld, then there's no point in even trying these
# tests. Check for that first. We should have already tested for gld
# by now (in libtool), but require it now just to be safe...
test -z "$SECTION_LDFLAGS" && SECTION_LDFLAGS=''
test -z "$OPT_LDFLAGS" && OPT_LDFLAGS=''
# The name set by libtool depends on the version of libtool. Shame on us
# for depending on an impl detail, but c'est la vie. Older versions used
# ac_cv_prog_gnu_ld, but now it's lt_cv_prog_gnu_ld, and is copied back on
# top of with_gnu_ld (which is also set by --with-gnu-ld, so that actually
# makes sense). We'll test with_gnu_ld everywhere else, so if that isn't
# set (hence we're using an older libtool), then set it.
if test x${with_gnu_ld+set} != xset; then
if test x${ac_cv_prog_gnu_ld+set} != xset; then
# We got through "ac_require(ac_prog_ld)" and still not set? Huh?
with_gnu_ld=no
else
with_gnu_ld=$ac_cv_prog_gnu_ld
fi
fi
# Start by getting the version number. I think the libtool test already
# does some of this, but throws away the result.
glibcxx_ld_is_gold=no
if test x"$with_gnu_ld" = x"yes"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld version" >&5
$as_echo_n "checking for ld version... " >&6; }
if $LD --version 2>/dev/null | grep 'GNU gold' >/dev/null 2>&1; then
glibcxx_ld_is_gold=yes
fi
ldver=`$LD --version 2>/dev/null |
sed -e 's/GNU gold /GNU ld /;s/GNU ld version /GNU ld /;s/GNU ld ([^)]*) /GNU ld /;s/GNU ld \([0-9.][0-9.]*\).*/\1/; q'`
glibcxx_gnu_ld_version=`echo $ldver | \
$AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'`
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $glibcxx_gnu_ld_version" >&5
$as_echo "$glibcxx_gnu_ld_version" >&6; }
fi
# Set --gc-sections.
glibcxx_have_gc_sections=no
if test "$glibcxx_ld_is_gold" = "yes"; then
if $LD --help 2>/dev/null | grep gc-sections >/dev/null 2>&1; then
glibcxx_have_gc_sections=yes
fi
else
glibcxx_gcsections_min_ld=21602
if test x"$with_gnu_ld" = x"yes" &&
test $glibcxx_gnu_ld_version -gt $glibcxx_gcsections_min_ld ; then
glibcxx_have_gc_sections=yes
fi
fi
if test "$glibcxx_have_gc_sections" = "yes"; then
# Sufficiently young GNU ld it is! Joy and bunny rabbits!
# NB: This flag only works reliably after 2.16.1. Configure tests
# for this are difficult, so hard wire a value that should work.
ac_test_CFLAGS="${CFLAGS+set}"
ac_save_CFLAGS="$CFLAGS"
CFLAGS='-Wl,--gc-sections'
# Check for -Wl,--gc-sections
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld that supports -Wl,--gc-sections" >&5
$as_echo_n "checking for ld that supports -Wl,--gc-sections... " >&6; }
if test x$gcc_no_link = xyes; then
as_fn_error "Link tests are not allowed after GCC_NO_EXECUTABLES." "$LINENO" 5
fi
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int one(void) { return 1; }
int two(void) { return 2; }
int
main ()
{
two();
;
return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
ac_gcsections=yes
else
ac_gcsections=no
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
if test "$ac_gcsections" = "yes"; then
rm -f conftest.c
touch conftest.c
if $CC -c conftest.c; then
if $LD --gc-sections -o conftest conftest.o 2>&1 | \
grep "Warning: gc-sections option ignored" > /dev/null; then
ac_gcsections=no
fi
fi
rm -f conftest.c conftest.o conftest
fi
if test "$ac_gcsections" = "yes"; then
SECTION_LDFLAGS="-Wl,--gc-sections $SECTION_LDFLAGS"
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_gcsections" >&5
$as_echo "$ac_gcsections" >&6; }
if test "$ac_test_CFLAGS" = set; then
CFLAGS="$ac_save_CFLAGS"
else
# this is the suspicious part
CFLAGS=''
fi
fi
# Set -z,relro.
# Note this is only for shared objects.
ac_ld_relro=no
if test x"$with_gnu_ld" = x"yes"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld that supports -Wl,-z,relro" >&5
$as_echo_n "checking for ld that supports -Wl,-z,relro... " >&6; }
cxx_z_relo=`$LD -v --help 2>/dev/null | grep "z relro"`
if test -n "$cxx_z_relo"; then
OPT_LDFLAGS="-Wl,-z,relro"
ac_ld_relro=yes
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ld_relro" >&5
$as_echo "$ac_ld_relro" >&6; }
fi
# Set linker optimization flags.
if test x"$with_gnu_ld" = x"yes"; then
OPT_LDFLAGS="-Wl,-O1 $OPT_LDFLAGS"
fi
$as_echo "#define HAVE_HYPOT 1" >>confdefs.h
$as_echo "#define HAVE_ISINF 1" >>confdefs.h
$as_echo "#define HAVE_ISNAN 1" >>confdefs.h
;;
*-qnx6.1* | *-qnx6.2*)
SECTION_FLAGS='-ffunction-sections -fdata-sections'

View File

@ -173,14 +173,6 @@ case "${host}" in
AC_DEFINE(HAVE_ISNANL)
fi
;;
*-netware)
SECTION_FLAGS='-ffunction-sections -fdata-sections'
AC_SUBST(SECTION_FLAGS)
GLIBCXX_CHECK_LINKER_FEATURES
AC_DEFINE(HAVE_HYPOT)
AC_DEFINE(HAVE_ISINF)
AC_DEFINE(HAVE_ISNAN)
;;
*-qnx6.1* | *-qnx6.2*)
SECTION_FLAGS='-ffunction-sections -fdata-sections'
AC_SUBST(SECTION_FLAGS)