diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 9b2a831..61470bb 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,13 @@
+2005-12-29  Daniel Jacobowitz  <dan@codesourcery.com>
+	Paul Brook  <paul@codesourcery.com>
+
+	* config/m68k/m68k.c (m68k_output_pic_call): Don't use bsr.l for
+	!TARGET_68020.
+	* config/m68k/t-m68kelf (EXTRA_PARTS): Remove.
+	(EXTRA_MULTILIB_PARTS): Set.
+	* config/m68k/t-uclinux (EXTRA_PARTS): Remove.
+	(EXTRA_MULTILIB_PARTS): Set.
+
 2005-12-29  Alan Modra  <amodra@bigpond.net.au>
 
 	PR target/25572
diff --git a/gcc/config/m68k/m68k.c b/gcc/config/m68k/m68k.c
index 09556d0..fa3f0e0 100644
--- a/gcc/config/m68k/m68k.c
+++ b/gcc/config/m68k/m68k.c
@@ -1057,15 +1057,14 @@ m68k_output_pic_call (rtx dest)
 
   if (!(GET_CODE (dest) == MEM && GET_CODE (XEXP (dest, 0)) == SYMBOL_REF))
     out = "jsr %0";
-      /* We output a BSR instruction if we're using -fpic or we're building for
-	 a target that supports long branches.  If we're building -fPIC on the
-	 68000, 68010 or ColdFire we generate one of two sequences:
+      /* We output a BSR instruction if we're building for a target that
+	 supports long branches.  Otherwise we generate one of two sequences:
 	 a shorter one that uses a GOT entry or a longer one that doesn't.
 	 We'll use the -Os command-line flag to decide which to generate.
 	 Both sequences take the same time to execute on the ColdFire.  */
   else if (TARGET_PCREL)
     out = "bsr.l %o0";
-  else if (flag_pic == 1 || TARGET_68020)
+  else if (TARGET_68020)
 #if defined(USE_GAS)
     out = "bsr.l %0@PLTPC";
 #else
diff --git a/gcc/config/m68k/t-m68kelf b/gcc/config/m68k/t-m68kelf
index 686e2d4..a1d57a0 100644
--- a/gcc/config/m68k/t-m68kelf
+++ b/gcc/config/m68k/t-m68kelf
@@ -24,6 +24,6 @@ LIBGCC = stmp-multilib
 INSTALL_LIBGCC = install-multilib
 
 # from ../t-svr4
-EXTRA_PARTS=crtbegin.o crtend.o
+EXTRA_MULTILIB_PARTS=crtbegin.o crtend.o
 # no pic for now
 #CRTSTUFF_T_CFLAGS=-fpic
diff --git a/gcc/config/m68k/t-uclinux b/gcc/config/m68k/t-uclinux
index 8d864bf..1fb7a42 100644
--- a/gcc/config/m68k/t-uclinux
+++ b/gcc/config/m68k/t-uclinux
@@ -21,4 +21,4 @@ LIBGCC = stmp-multilib
 INSTALL_LIBGCC = install-multilib
 
 # We don't use crtbegin.o and crtend.o
-EXTRA_PARTS=
+EXTRA_MULTILIB_PARTS=
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index c92d878..c95b8f8 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -132,6 +132,10 @@
 
 2005-12-22  Paul Brook  <paul@codesourcery.com>
 
+	* gcc.dg/weak/typeof-2.c: Skip assembly test on m68k.
+
+2005-12-22  Paul Brook  <paul@codesourcery.com>
+
 	* gcc.dg/tree-ssa/loop-1.c: Look for jump/branch on m68k.
 
 2005-12-22  Andrew Pinski  <pinskia@physics.uc.edu>
diff --git a/gcc/testsuite/gcc.dg/weak/typeof-2.c b/gcc/testsuite/gcc.dg/weak/typeof-2.c
index 53bb0eb..9fbfaf0 100644
--- a/gcc/testsuite/gcc.dg/weak/typeof-2.c
+++ b/gcc/testsuite/gcc.dg/weak/typeof-2.c
@@ -37,4 +37,6 @@ int bar3 (int x)
 // { dg-final { if [string match s390*-*-* $target_triplet ] {return} } }
 // Likewise for CRIS targets.
 // { dg-final { if [string match cris-*-* $target_triplet ] {return} } }
+// Likewise for m68k targets.
+// { dg-final { if [string match m68k-*-* $target_triplet ] {return} } }
 // { dg-final { scan-assembler "baz3.*baz3.*baz3.*baz3.*baz3.*baz3" } }