Threadsafe exception cleanup on ARM with GLIBC 2.1.

Scott Bambrough scottb@corelcomputer.com
Wed Feb 24 05:58:00 GMT 1999


Good day,

The following patch includes the changes I feel are necessary to get correct
threadsafe exception cleanup in multithreaded programs using the posix threading
model implemented in GLIBC 2.1.

Scott

1999-02-16  Scott Bambrough <scottb@corelcomputer.com>

        * configure.in:  Modified arm*-*-linux-gnu* target to set thread_file to
        'posix' if --enable-threads, --enable-threads=[yes,pthreads,posix] is 
        passed as a command line parameter to configure.

        * gcc/config/arm/t-linux: Modified TARGET_LIBGCC2_CFLAGS to include
-fPIC.
        If not included libgcc2 is not compiled with PIC flag, as it should be.
Index: gcc/configure.in
===================================================================
RCS file: /egcs/carton/cvsfiles/egcs/gcc/configure.in,v
retrieving revision 1.208
diff -u -p -r1.208 configure.in
--- configure.in	1999/02/10 11:08:04	1.208
+++ configure.in	1999/02/16 15:53:18
@@ -715,6 +715,11 @@ changequote([,])dnl
 		extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
 		fixincludes=Makefile.in		# Nothing to fix
 		gnu_ld=yes
+		case x${enable_threads} in
+		x | xyes | xpthreads | xposix)
+			thread_file='posix'
+			;;
+		esac
 		;;
 	arm*-*-aout)
 		tm_file=arm/aout.h
Index: gcc/config/arm/t-linux
===================================================================
RCS file: /egcs/carton/cvsfiles/egcs/gcc/config/arm/t-linux,v
retrieving revision 1.3
diff -u -p -r1.3 t-linux
--- t-linux	1999/02/03 06:30:52	1.3
+++ t-linux	1999/02/16 15:53:42
@@ -1,6 +1,6 @@
 # Just for these, we omit the frame pointer since it makes such a big
 # difference.  It is then pointless adding debugging.
-TARGET_LIBGCC2_CFLAGS = -fomit-frame-pointer
+TARGET_LIBGCC2_CFLAGS = -fomit-frame-pointer -fPIC
 LIBGCC2_DEBUG_CFLAGS = -g0
 
 # Don't build enquire


More information about the Gcc-patches mailing list