[PATCH] NetWare adjustments
Jan Beulich
JBeulich@novell.com
Fri Jan 6 12:46:00 GMT 2006
Several collected adjustments for the NetWare target. I'd like to ask at
once
for approval to apply the same patch to the 4.1 tree, and ideally also
a
similar patch to the 4.0 one.
Built and tested for i686-novell-netware on i686-pc-linux-gnu.
gcc/
2006-01-06 Jan Beulich <jbeulich@novell.com>
* config/i386/netware.h (TARGET_SUBTARGET_DEFAULT): Include
MASK_ALIGN_DOUBLE.
* config/i386/nwld.h (LINK_SPEC): Add --extensions:GNU option.
* config/i386/t-nwld (SHLIB_LINK): Insert spaces between expr
arguments.
gcc/testsuite/
2006-01-06 Jan Beulich <jbeulich@novell.com>
* lib/target-supports.exp (check_visibility_available): Simplify
test
for *-*-netware*.
(check_profiling_available): Fail for *-*-netware*.
* g++.old-deja/g++.law/profile1.C: Remove dg-bogus for
*-*-netware*.
* gcc.dg/20021014-1.c: Likewise.
* gcc.dg/nest.c: Likewise.
---
/home/jbeulich/src/gcc/trunk/2006-01-04/gcc/config/i386/netware.h 2005-12-01
10:48:33.000000000 +0100
+++ 2006-01-04/gcc/config/i386/netware.h 2005-12-02
15:41:33.000000000 +0100
@@ -71,7 +71,7 @@ Boston, MA 02110-1301, USA. */
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_MS_BITFIELD_LAYOUT)
+ MASK_FLOAT_RETURNS | MASK_ALIGN_DOUBLE |
MASK_MS_BITFIELD_LAYOUT)
#undef MATH_LIBRARY
#define MATH_LIBRARY ""
---
/home/jbeulich/src/gcc/trunk/2006-01-04/gcc/config/i386/nwld.h 2005-12-01
10:48:34.000000000 +0100
+++ 2006-01-04/gcc/config/i386/nwld.h 2005-12-02 15:41:33.000000000
+0100
@@ -31,7 +31,8 @@ Boston, MA 02110-1301, USA. */
#define LINKER_NAME "nwld"
#undef LINK_SPEC
-#define LINK_SPEC "--format nlm
%{static:%{!nostdlib:%{!nodefaultlib:%eStatic linking is not
supported.\n}}}"
+#define LINK_SPEC "--format:NLM --extensions:GNU" \
+ " %{static:%{!nostdlib:%{!nodefaultlib:%eStatic linking is not
supported.\n}}}"
#undef LINK_GCC_C_SEQUENCE_SPEC
#define LINK_GCC_C_SEQUENCE_SPEC "%L %G"
---
/home/jbeulich/src/gcc/trunk/2006-01-04/gcc/config/i386/t-nwld 2005-12-01
10:48:34.000000000 +0100
+++ 2006-01-04/gcc/config/i386/t-nwld 2005-12-02 15:41:33.000000000
+0100
@@ -40,7 +40,7 @@ SHLIB_LINK = set -e; \
echo "name $(SHLIB_NAME)" >>@shlib_base_name@.def; \
echo "version $(version)" | sed "s!\.!,!g"
>>@shlib_base_name@.def; \
touch libgcc/build; \
- echo "build $$$$(expr $$$$(<libgcc/build)+0)"
>>@shlib_base_name@.def; \
+ echo "build $$$$(expr $$$$(<libgcc/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; \
@@ -51,7 +51,7 @@ SHLIB_LINK = set -e; \
-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 $$$$(<libgcc/build)+1 >libgcc/build
+ expr $$$$(<libgcc/build) + 1 >libgcc/build
# $(slibdir) double quoted to protect it from expansion while
building
# libgcc.mk. We want this delayed until actual install time.
---
/home/jbeulich/src/gcc/trunk/2006-01-04/gcc/testsuite/g++.old-deja/g++.law/profile1.C 2005-12-01
10:45:41.000000000 +0100
+++
2006-01-04/gcc/testsuite/g++.old-deja/g++.law/profile1.C 2005-12-06
09:14:20.000000000 +0100
@@ -2,7 +2,6 @@
// { dg-require-profiling "-pg" }
// { dg-options "-pg" }
// { dg-options "-pg -static" { target hppa*-*-hpux* } }
-// { dg-bogus "\[Uu\]nresolved symbol ._mcount" "Profiling
unsupported" { xfail *-*-netware* } 0 }
// GROUPS passed profiling
#include <stdio.h>
main()
---
/home/jbeulich/src/gcc/trunk/2006-01-04/gcc/testsuite/gcc.dg/20021014-1.c 2005-12-01
10:44:36.000000000 +0100
+++ 2006-01-04/gcc/testsuite/gcc.dg/20021014-1.c 2005-12-06
09:11:39.000000000 +0100
@@ -4,7 +4,6 @@
/* { dg-options "-O2 -p -static" { target hppa*-*-hpux* } } */
/* { dg-error "profiler" "No profiler support" { target xstormy16-*-*
} 0 } */
/* { dg-error "" "consider using `-pg' instead of `-p' with gprof(1)"
{ target *-*-freebsd* } 0 } */
-/* { dg-bogus "\[Uu\]nresolved symbol ._mcount" "Profiling
unsupported" { xfail *-*-netware* } 0 } */
extern void abort (void);
extern void exit (int);
---
/home/jbeulich/src/gcc/trunk/2006-01-04/gcc/testsuite/gcc.dg/nest.c 2005-12-01
10:44:36.000000000 +0100
+++ 2006-01-04/gcc/testsuite/gcc.dg/nest.c 2005-12-06
09:12:12.000000000 +0100
@@ -4,7 +4,6 @@
/* { dg-options "-O2 -pg" } */
/* { dg-options "-O2 -pg -static" { target hppa*-*-hpux* } } */
/* { dg-error "profiler" "No profiler support" { target xstormy16-*-*
} 0 } */
-/* { dg-bogus "\[Uu\]nresolved symbol ._mcount" "Profiling
unsupported" { xfail *-*-netware* } 0 } */
extern void abort (void);
---
/home/jbeulich/src/gcc/trunk/2006-01-04/gcc/testsuite/lib/target-supports.exp 2006-01-04
18:25:41.000000000 +0100
+++ 2006-01-04/gcc/testsuite/lib/target-supports.exp 2006-01-05
08:04:41.110880320 +0100
@@ -131,7 +131,7 @@ proc check_visibility_available { what_k
global target_triplet
# On NetWare, support makes no sense.
- if { [string match "*-*-netware*" $target_triplet] } {
+ if { [istarget *-*-netware*] } {
return 0
}
@@ -279,6 +279,11 @@ proc check_profiling_available { test_wh
return 0
}
+ # At present, there is no profiling support on NetWare.
+ if { [istarget *-*-netware*] } {
+ return 0
+ }
+
# Now examine the cache variable.
if {![info exists profiling_available_saved]} {
# Some targets don't have any implementation of __bb_init_func
or are
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: gcc-trunk-netware.patch
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20060106/1af63a65/attachment.ksh>
More information about the Gcc-patches
mailing list