/home/richard/patches/freescale/head-submission/uclinux-oldabi.clog
From-SVN: r120909
This commit is contained in:
parent
150524cd45
commit
4529dbf15f
|
@ -1,3 +1,10 @@
|
||||||
|
2007-01-18 Richard Sandiford <richard@codesourcery.com>
|
||||||
|
|
||||||
|
* doc/install.texi: Document m68k-uclinuxoldabi.
|
||||||
|
* config.gcc (m68k-*-uclinuxoldabi): New configuration.
|
||||||
|
* config/m68k/uclinux-oldabi.h: New file, copied from
|
||||||
|
config/m68k/uclinux.h.
|
||||||
|
|
||||||
2007-01-18 Kaz Kojima <kkojima@rr.iij4u.or.jp>
|
2007-01-18 Kaz Kojima <kkojima@rr.iij4u.or.jp>
|
||||||
|
|
||||||
* config/m32r/m32r-protos.h (m32r_expand_epilogue): Declare it.
|
* config/m32r/m32r-protos.h (m32r_expand_epilogue): Declare it.
|
||||||
|
|
|
@ -1510,7 +1510,18 @@ m68k*-*-openbsd*)
|
||||||
# we need collect2 until our bug is fixed...
|
# we need collect2 until our bug is fixed...
|
||||||
use_collect2=yes
|
use_collect2=yes
|
||||||
;;
|
;;
|
||||||
m68k-*-uclinux*) # Motorola m68k/ColdFire running uClinux with uClibc
|
m68k-*-uclinuxoldabi*) # Motorola m68k/ColdFire running uClinux
|
||||||
|
# with uClibc, using the original
|
||||||
|
# m68k-elf-based ABI
|
||||||
|
default_m68k_cpu=68020
|
||||||
|
tm_file="m68k/m68k.h m68k/m68k-none.h m68k/m68kelf.h dbxelf.h elfos.h m68k/uclinux-oldabi.h"
|
||||||
|
tm_defines="${tm_defines} MOTOROLA USE_GAS"
|
||||||
|
tmake_file=m68k/t-uclinux
|
||||||
|
use_fixproto=no
|
||||||
|
;;
|
||||||
|
m68k-*-uclinux*) # Motorola m68k/ColdFire running uClinux
|
||||||
|
# with uClibc, using the new GNU/Linux-style
|
||||||
|
# ABI.
|
||||||
default_m68k_cpu=68020
|
default_m68k_cpu=68020
|
||||||
tm_file="m68k/m68k.h m68k/m68k-none.h m68k/m68kelf.h dbxelf.h elfos.h m68k/uclinux.h"
|
tm_file="m68k/m68k.h m68k/m68k-none.h m68k/m68kelf.h dbxelf.h elfos.h m68k/uclinux.h"
|
||||||
tm_defines="${tm_defines} MOTOROLA USE_GAS"
|
tm_defines="${tm_defines} MOTOROLA USE_GAS"
|
||||||
|
|
|
@ -0,0 +1,65 @@
|
||||||
|
/* Definitions of target machine for GCC. m68k/ColdFire based uClinux system
|
||||||
|
using ELF objects with special linker post-processing to produce FLAT
|
||||||
|
executables.
|
||||||
|
|
||||||
|
Copyright (C) 2003 Free Software Foundation, Inc.
|
||||||
|
|
||||||
|
This file is part of GCC.
|
||||||
|
|
||||||
|
GCC is free software; you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation; either version 2, or (at your option)
|
||||||
|
any later version.
|
||||||
|
|
||||||
|
GCC is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with GCC; see the file COPYING. If not, write to
|
||||||
|
the Free Software Foundation, 51 Franklin Street, Fifth Floor,
|
||||||
|
Boston, MA 02110-1301, USA. */
|
||||||
|
|
||||||
|
|
||||||
|
/* Undo the definition of STARTFILE_SPEC from m68kelf.h so we'll
|
||||||
|
pick the default from gcc.c (just link crt0.o from multilib dir). */
|
||||||
|
#undef STARTFILE_SPEC
|
||||||
|
|
||||||
|
/* Override the default LIB_SPEC from gcc.c. We don't currently support
|
||||||
|
profiling, or libg.a. */
|
||||||
|
#undef LIB_SPEC
|
||||||
|
#define LIB_SPEC "\
|
||||||
|
%{mid-shared-library:-R libc.gdb%s -elf2flt -shared-lib-id 0} -lc \
|
||||||
|
"
|
||||||
|
|
||||||
|
/* we don't want a .eh_frame section. */
|
||||||
|
#define EH_FRAME_IN_DATA_SECTION
|
||||||
|
|
||||||
|
/* ??? Quick hack to get constructors working. Make this look more like a
|
||||||
|
COFF target, so the existing dejagnu/libgloss support works. A better
|
||||||
|
solution would be to make the necessary dejagnu and libgloss changes so
|
||||||
|
that we can use normal the ELF constructor mechanism. */
|
||||||
|
#undef INIT_SECTION_ASM_OP
|
||||||
|
#undef FINI_SECTION_ASM_OP
|
||||||
|
#undef ENDFILE_SPEC
|
||||||
|
#define ENDFILE_SPEC ""
|
||||||
|
|
||||||
|
/* Bring in standard linux defines */
|
||||||
|
#undef TARGET_OS_CPP_BUILTINS
|
||||||
|
#define TARGET_OS_CPP_BUILTINS() \
|
||||||
|
do \
|
||||||
|
{ \
|
||||||
|
builtin_define_std ("mc68000"); \
|
||||||
|
builtin_define ("__uClinux__"); \
|
||||||
|
builtin_define_std ("linux"); \
|
||||||
|
builtin_define_std ("unix"); \
|
||||||
|
builtin_define ("__gnu_linux__"); \
|
||||||
|
builtin_assert ("system=linux"); \
|
||||||
|
builtin_assert ("system=unix"); \
|
||||||
|
builtin_assert ("system=posix"); \
|
||||||
|
if (TARGET_ID_SHARED_LIBRARY) \
|
||||||
|
builtin_define ("__ID_SHARED_LIBRARY__"); \
|
||||||
|
} \
|
||||||
|
while (0)
|
||||||
|
|
|
@ -2429,6 +2429,8 @@ information are.
|
||||||
@item
|
@item
|
||||||
@uref{#m68k-hp-hpux,,m68k-hp-hpux}
|
@uref{#m68k-hp-hpux,,m68k-hp-hpux}
|
||||||
@item
|
@item
|
||||||
|
@uref{#m68k-uclinux,,m68k-uclinux}
|
||||||
|
@item
|
||||||
@uref{#mips-x-x,,mips-*-*}
|
@uref{#mips-x-x,,mips-*-*}
|
||||||
@item
|
@item
|
||||||
@uref{#mips-sgi-irix5,,mips-sgi-irix5}
|
@uref{#mips-sgi-irix5,,mips-sgi-irix5}
|
||||||
|
@ -3429,6 +3431,9 @@ This @var{target} can either be a @option{-mcpu} argument or one of the
|
||||||
following values: @samp{m68000}, @samp{m68010}, @samp{m68020}, @samp{m68030},
|
following values: @samp{m68000}, @samp{m68010}, @samp{m68020}, @samp{m68030},
|
||||||
@samp{m68040}, @samp{m68060}, @samp{m68020-40} and @samp{m68020-60}.
|
@samp{m68040}, @samp{m68060}, @samp{m68020-40} and @samp{m68020-60}.
|
||||||
|
|
||||||
|
@html
|
||||||
|
<hr />
|
||||||
|
@end html
|
||||||
@heading @anchor{m68k-hp-hpux}m68k-hp-hpux
|
@heading @anchor{m68k-hp-hpux}m68k-hp-hpux
|
||||||
HP 9000 series 300 or 400 running HP-UX@. HP-UX version 8.0 has a bug in
|
HP 9000 series 300 or 400 running HP-UX@. HP-UX version 8.0 has a bug in
|
||||||
the assembler that prevents compilation of GCC@. This
|
the assembler that prevents compilation of GCC@. This
|
||||||
|
@ -3479,6 +3484,17 @@ to look like:
|
||||||
#!/bin/ksh
|
#!/bin/ksh
|
||||||
@end smallexample
|
@end smallexample
|
||||||
|
|
||||||
|
@html
|
||||||
|
<hr />
|
||||||
|
@end html
|
||||||
|
@heading @anchor{m68k-x-uclinux}m68k-*-uclinux
|
||||||
|
GCC 4.3 changed the uClinux configuration so that it uses the
|
||||||
|
@samp{m68k-linux-gnu} ABI rather than the @samp{m68k-elf} ABI.
|
||||||
|
It also added improved support for C++ and flat shared libraries,
|
||||||
|
both of which were ABI changes. However, you can still use the
|
||||||
|
original ABI by configuring for @samp{m68k-uclinuxoldabi} or
|
||||||
|
@samp{m68k-@var{vendor}-uclinuxoldabi}.
|
||||||
|
|
||||||
@html
|
@html
|
||||||
<hr />
|
<hr />
|
||||||
@end html
|
@end html
|
||||||
|
|
Loading…
Reference in New Issue