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 2/4] NetWare: config adjustments to take advantage of TFmode soft float support


The slightly different 4.4 patch is attached for reference.

Jan

gcc/
2009-07-23  Jan Beulich  <jbeulich@novell.com>

	* config.gcc: Add i386/t-fprules-softfp and soft-fp/t-softfp
	to i[3456x]86-*-netware*'s tmake_file.
	* gcc/config/i386/netware-libgcc.exp: Add/enable TFmode exports.
	* gcc/config/i386/netware.h (LIBGCC2_HAS_TF_MODE): Define to 1.
	(LIBGCC2_TF_CEXT, TF_SIZE 113): Define.

libgcc/
2009-07-23  Jan Beulich  <jbeulich@novell.com>

	* config.host: Add i[3456x]86-*-netware* to the set of hosts
	using t-softfp and i386/${host_address}/t-fprules-softfp.

--- trunk/gcc/config.gcc
+++ trunk/gcc/config.gcc
@@ -1170,7 +1170,7 @@ i[34567]86-*-lynxos*)
 	;;
 i[3456x]86-*-netware*)
 	tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h svr4.h tm-dwarf2.h i386/netware.h"
- 	tmake_file="${tmake_file} i386/t-netware"
+ 	tmake_file="${tmake_file} i386/t-fprules-softfp soft-fp/t-softfp i386/t-netware"
 	extra_objs=netware.o
 	case /${with_ld} in
 	*/nwld)
--- trunk/gcc/config/i386/netware-libgcc.exp
+++ trunk/gcc/config/i386/netware-libgcc.exp
@@ -2,6 +2,7 @@
 	(libgcc2),
 	__absvdi2,
 	__absvsi2,
+	__addtf3,
 	__addvdi3,
 	__addvsi3,
 #	__ashldi3,
@@ -18,31 +19,49 @@
 	__divdc3,
 #	__divdi3,
 	__divsc3,
-#	__divtc3,
+	__divtc3,
+	__divtf3,
 	__divxc3,
 	__emutls_get_address,
 	__emutls_register_common,
+	__eqtf2,
+	__extenddftf2,
+	__extendsftf2,
+	__extendxftf2,
 	__ffsdi2,
 	__ffssi2,
+	__fixtfdi,
+	__fixtfsi,
 	__fixunsdfdi,
 	__fixunssfdi,
-#	__fixunstfdi,
+	__fixunstfdi,
+	__fixunstfsi,
 	__fixunsxfdi,
+	__floatditf,
+	__floatsitf,
 	__floatundisf,
 	__floatundidf,
-#	__floatunditf,
+	__floatunditf,
 	__floatundixf,
+	__floatunsitf,
 	__gcc_bcmp,
 	__gcc_personality_v0,
+	__getf2,
+	__gttf2,
+	__letf2,
 #	__lshrdi3,
+	__lttf2,
 #	__moddi3,
 	__muldc3,
 #	__muldi3,
 	__mulsc3,
-#	__multc3,
+	__multc3,
+	__multf3,
 	__mulvdi3,
 	__mulvsi3,
 	__mulxc3,
+	__negtf2,
+	__netf2,
 	__negvdi2,
 	__negvsi2,
 	__paritydi2,
@@ -51,7 +70,7 @@
 	__popcountsi2,
 	__powidf2
 	__powisf2
-#	__powitf2
+	__powitf2
 	__powixf2
 	__register_frame,
 	__register_frame_info,
@@ -59,8 +78,12 @@
 	__register_frame_info_table,
 	__register_frame_info_table_bases,
 	__register_frame_table,
+	__subtf3,
 	__subvdi3,
 	__subvsi3,
+	__trunctfdf2,
+	__trunctfsf2,
+	__trunctfxf2,
 #	__umoddi3,
 #	__udivdi3,
 	_Unwind_Backtrace,
--- trunk/gcc/config/i386/netware.h
+++ trunk/gcc/config/i386/netware.h
@@ -166,3 +168,9 @@ const char *i386_nlm_strip_name_encoding
 #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
+
+/* Put all *tf routines in libgcc.  */
+#undef LIBGCC2_HAS_TF_MODE
+#define LIBGCC2_HAS_TF_MODE 1
+#define LIBGCC2_TF_CEXT q
+#define TF_SIZE 113
--- trunk/libgcc/config.host
+++ trunk/libgcc/config.host
@@ -575,7 +575,8 @@ esac
 i[34567]86-*-darwin* | x86_64-*-darwin* | \
   i[34567]86-*-kfreebsd*-gnu | x86_64-*-kfreebsd*-gnu | \
   i[34567]86-*-linux* | x86_64-*-linux* | \
-  i[34567]86-*-cygwin* | i[34567]86-*-mingw* | x86_64-*-mingw*)
+  i[34567]86-*-cygwin* | i[34567]86-*-mingw* | x86_64-*-mingw* | \
+  i[3456x]86-*-netware*)
 	if test "${host_address}" = 32; then
 		tmake_file="${tmake_file} t-softfp i386/${host_address}/t-fprules-softfp"
 	fi



Attachment: gcc-4.4-netware-config.patch
Description: Text document


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