This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] NetWare adjustments


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

Attachment: gcc-trunk-netware.patch
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]