m68k.c (m68k_output_pic_call): Don't use bsr.l for !TARGET_68020.

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.

From-SVN: r109141
This commit is contained in:
Paul Brook 2005-12-29 15:08:43 +00:00
parent 486fd3c90c
commit 338276300e
6 changed files with 21 additions and 6 deletions

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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=

View File

@ -130,6 +130,10 @@
* gcc.target/i386/sse-17.c: New.
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.

View File

@ -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" } }