1999-05-03 09:29:11 +02:00
|
|
|
dnl Process this file with autoconf to produce a configure script.
|
|
|
|
dnl
|
|
|
|
|
2004-08-30 20:59:50 +02:00
|
|
|
AC_PREREQ(2.59)
|
|
|
|
AC_INIT
|
|
|
|
AC_CONFIG_SRCDIR([z8k-dis.c])
|
1999-05-03 09:29:11 +02:00
|
|
|
|
2004-08-30 20:59:50 +02:00
|
|
|
AC_CANONICAL_TARGET
|
1999-05-03 09:29:11 +02:00
|
|
|
AC_ISC_POSIX
|
|
|
|
|
|
|
|
# We currently only use the version number for the name of any shared
|
|
|
|
# library. For user convenience, we always use the same version
|
|
|
|
# number that BFD is using.
|
|
|
|
changequote(,)dnl
|
2001-02-27 07:43:56 +01:00
|
|
|
BFD_VERSION=`sed -n -e 's/^.._INIT_AUTOMAKE.*,[ ]*\([^ ]*\)[ ]*).*/\1/p' < ${srcdir}/../bfd/configure.in`
|
1999-05-03 09:29:11 +02:00
|
|
|
changequote([,])dnl
|
|
|
|
|
|
|
|
AM_INIT_AUTOMAKE(opcodes, ${BFD_VERSION})
|
|
|
|
|
2007-08-31 16:55:10 +02:00
|
|
|
AC_PROG_CC
|
|
|
|
AC_GNU_SOURCE
|
2008-08-15 10:31:52 +02:00
|
|
|
AC_USE_SYSTEM_EXTENSIONS
|
2007-08-31 16:55:10 +02:00
|
|
|
|
2008-08-24 05:13:05 +02:00
|
|
|
dnl These must be called before LT_INIT, because it may want
|
1999-05-03 09:29:11 +02:00
|
|
|
dnl to call AC_CHECK_PROG.
|
|
|
|
AC_CHECK_TOOL(AR, ar)
|
|
|
|
AC_CHECK_TOOL(RANLIB, ranlib, :)
|
|
|
|
|
|
|
|
dnl Default to a non shared library. This may be overridden by the
|
|
|
|
dnl configure option --enable-shared.
|
2008-08-24 05:13:05 +02:00
|
|
|
AC_DISABLE_SHARED
|
1999-05-03 09:29:11 +02:00
|
|
|
|
2008-08-24 05:13:05 +02:00
|
|
|
LT_INIT
|
1999-05-03 09:29:11 +02:00
|
|
|
|
|
|
|
AC_ARG_ENABLE(targets,
|
|
|
|
[ --enable-targets alternative target configurations],
|
|
|
|
[case "${enableval}" in
|
2004-08-30 20:59:50 +02:00
|
|
|
yes | "") AC_MSG_ERROR([enable-targets option must specify target names or 'all'])
|
1999-05-03 09:29:11 +02:00
|
|
|
;;
|
|
|
|
no) enable_targets= ;;
|
|
|
|
*) enable_targets=$enableval ;;
|
|
|
|
esac])dnl
|
|
|
|
|
2005-04-14 07:26:44 +02:00
|
|
|
AM_BINUTILS_WARNINGS
|
2000-04-09 14:17:43 +02:00
|
|
|
|
2008-08-24 05:13:05 +02:00
|
|
|
AC_CONFIG_HEADERS(config.h:config.in)
|
1999-05-03 09:29:11 +02:00
|
|
|
|
|
|
|
if test -z "$target" ; then
|
|
|
|
AC_MSG_ERROR(Unrecognized target system type; please check config.sub.)
|
|
|
|
fi
|
|
|
|
|
|
|
|
AM_MAINTAINER_MODE
|
2002-05-17 12:34:29 +02:00
|
|
|
AM_INSTALL_LIBBFD
|
1999-05-03 09:29:11 +02:00
|
|
|
AC_EXEEXT
|
|
|
|
|
|
|
|
# host-specific stuff:
|
|
|
|
|
2006-01-16 17:15:17 +01:00
|
|
|
ALL_LINGUAS="fr sv tr es da de id pt_BR ro nl fi vi ga zh_CN"
|
2006-05-31 17:14:46 +02:00
|
|
|
ZW_GNU_GETTEXT_SISTER_DIR
|
|
|
|
AM_PO_SUBDIRS
|
1999-05-03 09:29:11 +02:00
|
|
|
|
|
|
|
. ${srcdir}/../bfd/configure.host
|
|
|
|
|
2001-09-18 17:41:33 +02:00
|
|
|
BFD_CC_FOR_BUILD
|
|
|
|
|
1999-05-03 09:29:11 +02:00
|
|
|
AC_SUBST(HDEFINES)
|
|
|
|
AC_PROG_INSTALL
|
|
|
|
|
2007-09-09 03:22:57 +02:00
|
|
|
AC_CHECK_HEADERS(string.h strings.h stdlib.h limits.h)
|
1999-05-03 09:29:11 +02:00
|
|
|
|
2007-08-31 16:55:10 +02:00
|
|
|
AC_CHECK_DECLS([basename, stpcpy])
|
2005-03-31 18:52:54 +02:00
|
|
|
|
2000-07-29 02:33:34 +02:00
|
|
|
cgen_maint=no
|
|
|
|
cgendir='$(srcdir)/../cgen'
|
|
|
|
|
|
|
|
AC_ARG_ENABLE(cgen-maint,
|
|
|
|
[ --enable-cgen-maint[=dir] build cgen generated files],
|
|
|
|
[case "${enableval}" in
|
|
|
|
yes) cgen_maint=yes ;;
|
|
|
|
no) cgen_maint=no ;;
|
|
|
|
*)
|
|
|
|
# argument is cgen install directory (not implemented yet).
|
|
|
|
# Having a `share' directory might be more appropriate for the .scm,
|
|
|
|
# .cpu, etc. files.
|
|
|
|
cgen_maint=yes
|
|
|
|
cgendir=${cgen_maint}/lib/cgen
|
|
|
|
;;
|
|
|
|
esac])dnl
|
|
|
|
AM_CONDITIONAL(CGEN_MAINT, test x${cgen_maint} = xyes)
|
|
|
|
AC_SUBST(cgendir)
|
1999-05-03 09:29:11 +02:00
|
|
|
|
|
|
|
using_cgen=no
|
|
|
|
|
2009-03-04 03:10:34 +01:00
|
|
|
# Check if linker supports --as-needed and --no-as-needed options
|
|
|
|
AC_CACHE_CHECK(linker --as-needed support, bfd_cv_ld_as_needed,
|
|
|
|
[bfd_cv_ld_as_needed=no
|
|
|
|
if $LD --help 2>/dev/null | grep as-needed > /dev/null; then
|
|
|
|
bfd_cv_ld_as_needed=yes
|
|
|
|
fi
|
|
|
|
])
|
|
|
|
|
|
|
|
LT_LIB_M
|
|
|
|
|
2009-09-07 12:54:25 +02:00
|
|
|
#Libs for generator progs
|
|
|
|
if test "x$cross_compiling" = "xno"; then
|
|
|
|
BUILD_LIBS=../libiberty/libiberty.a
|
|
|
|
BUILD_LIB_DEPS=$BUILD_LIBS
|
|
|
|
else
|
|
|
|
# if cross-compiling, assume that the system provides -liberty
|
|
|
|
# and that the version is compatible with new headers.
|
|
|
|
BUILD_LIBS=-liberty
|
|
|
|
BUILD_LIB_DEPS=
|
|
|
|
fi
|
|
|
|
BUILD_LIBS="$BUILD_LIBS $LIBINTL"
|
|
|
|
BUILD_LIB_DEPS="$BUILD_LIB_DEPS $LIBINTL_DEP"
|
|
|
|
|
|
|
|
AC_SUBST(BUILD_LIBS)
|
|
|
|
AC_SUBST(BUILD_LIB_DEPS)
|
|
|
|
|
2007-10-04 16:06:40 +02:00
|
|
|
# Horrible hacks to build DLLs on Windows and a shared library elsewhere.
|
|
|
|
SHARED_LDFLAGS=
|
|
|
|
SHARED_LIBADD=
|
|
|
|
SHARED_DEPENDENCIES=
|
|
|
|
if test "$enable_shared" = "yes"; then
|
2009-01-16 09:02:29 +01:00
|
|
|
# When building a shared libopcodes, link against the pic version of libiberty
|
|
|
|
# so that apps that use libopcodes won't need libiberty just to satisfy any
|
|
|
|
# libopcodes references.
|
|
|
|
# We can't do that if a pic libiberty is unavailable since including non-pic
|
|
|
|
# code would insert text relocations into libopcodes.
|
|
|
|
# Note that linking against libbfd as we do here, which is itself linked
|
|
|
|
# against libiberty, may not satisfy all the libopcodes libiberty references
|
|
|
|
# since libbfd may not pull in the entirety of libiberty.
|
|
|
|
changequote(,)dnl
|
|
|
|
x=`sed -n -e 's/^[ ]*PICFLAG[ ]*=[ ]*//p' < ../libiberty/Makefile | sed -n '$p'`
|
|
|
|
changequote([,])dnl
|
|
|
|
if test -n "$x"; then
|
|
|
|
SHARED_LIBADD="-L`pwd`/../libiberty/pic -liberty"
|
|
|
|
fi
|
|
|
|
|
2007-10-04 16:06:40 +02:00
|
|
|
case "${host}" in
|
|
|
|
*-*-cygwin*)
|
|
|
|
SHARED_LDFLAGS="-no-undefined"
|
|
|
|
SHARED_LIBADD="-L`pwd`/../bfd -lbfd -L`pwd`/../libiberty -liberty -L`pwd`/../intl -lintl -lcygwin"
|
|
|
|
;;
|
2008-02-14 13:33:17 +01:00
|
|
|
*-*-darwin*)
|
2009-01-16 09:02:29 +01:00
|
|
|
SHARED_LIBADD="-Wl,`pwd`/../bfd/.libs/libbfd.dylib ${SHARED_LIBADD}"
|
2008-02-14 13:33:17 +01:00
|
|
|
SHARED_DEPENDENCIES="../bfd/libbfd.la"
|
|
|
|
;;
|
2007-10-04 16:06:40 +02:00
|
|
|
*)
|
2008-02-14 13:33:17 +01:00
|
|
|
case "$host_vendor" in
|
|
|
|
hp)
|
2009-01-16 09:02:29 +01:00
|
|
|
SHARED_LIBADD="-Wl,`pwd`/../bfd/.libs/libbfd.sl ${SHARED_LIBADD}"
|
2008-02-14 13:33:17 +01:00
|
|
|
;;
|
|
|
|
*)
|
2009-01-16 09:02:29 +01:00
|
|
|
SHARED_LIBADD="-Wl,`pwd`/../bfd/.libs/libbfd.so ${SHARED_LIBADD}"
|
2008-02-14 13:33:17 +01:00
|
|
|
;;
|
|
|
|
esac
|
2008-10-22 16:45:34 +02:00
|
|
|
SHARED_DEPENDENCIES="../bfd/libbfd.la"
|
2007-10-04 16:06:40 +02:00
|
|
|
;;
|
|
|
|
esac
|
2009-03-04 03:10:34 +01:00
|
|
|
|
|
|
|
if test -n "$SHARED_LIBADD"; then
|
|
|
|
if test -n "$LIBM"; then
|
|
|
|
if test x"$bfd_cv_ld_as_needed" = xyes; then
|
|
|
|
# Link against libm only when needed. Put -lc, -lm inside -Wl
|
|
|
|
# to stop libtool reordering these options.
|
|
|
|
SHARED_LIBADD="$SHARED_LIBADD -Wl,-lc,--as-needed,`echo $LIBM | sed 's/ /,/g'`,--no-as-needed"
|
|
|
|
else
|
|
|
|
SHARED_LIBADD="$SHARED_LIBADD $LIBM"
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
fi
|
2007-10-04 16:06:40 +02:00
|
|
|
fi
|
|
|
|
AC_SUBST(SHARED_LDFLAGS)
|
|
|
|
AC_SUBST(SHARED_LIBADD)
|
|
|
|
AC_SUBST(SHARED_DEPENDENCIES)
|
1999-05-03 09:29:11 +02:00
|
|
|
|
|
|
|
# target-specific stuff:
|
|
|
|
|
|
|
|
# Canonicalize the secondary target names.
|
|
|
|
if test -n "$enable_targets" ; then
|
|
|
|
for targ in `echo $enable_targets | sed 's/,/ /g'`
|
|
|
|
do
|
1999-09-15 01:29:35 +02:00
|
|
|
result=`$ac_config_sub $targ 2>/dev/null`
|
1999-05-03 09:29:11 +02:00
|
|
|
if test -n "$result" ; then
|
|
|
|
canon_targets="$canon_targets $result"
|
|
|
|
else
|
|
|
|
# Allow targets that config.sub doesn't recognize, like "all".
|
|
|
|
canon_targets="$canon_targets $targ"
|
|
|
|
fi
|
|
|
|
done
|
|
|
|
fi
|
|
|
|
|
|
|
|
all_targets=false
|
|
|
|
selarchs=
|
|
|
|
for targ in $target $canon_targets
|
|
|
|
do
|
|
|
|
if test "x$targ" = "xall" ; then
|
|
|
|
all_targets=true
|
|
|
|
else
|
|
|
|
. $srcdir/../bfd/config.bfd
|
|
|
|
selarchs="$selarchs $targ_archs"
|
|
|
|
fi
|
|
|
|
done
|
|
|
|
|
|
|
|
# Utility var, documents generic cgen support files.
|
|
|
|
|
2005-12-02 21:09:42 +01:00
|
|
|
cgen_files="cgen-opc.lo cgen-asm.lo cgen-dis.lo cgen-bitset.lo"
|
1999-05-03 09:29:11 +02:00
|
|
|
|
|
|
|
# We don't do any links based on the target system, just makefile config.
|
|
|
|
|
|
|
|
if test x${all_targets} = xfalse ; then
|
|
|
|
|
|
|
|
# Target architecture .o files.
|
|
|
|
ta=
|
|
|
|
|
|
|
|
for arch in $selarchs
|
|
|
|
do
|
|
|
|
ad=`echo $arch | sed -e s/bfd_//g -e s/_arch//g`
|
|
|
|
archdefs="$archdefs -DARCH_$ad"
|
|
|
|
case "$arch" in
|
|
|
|
bfd_alpha_arch) ta="$ta alpha-dis.lo alpha-opc.lo" ;;
|
2001-01-11 22:20:20 +01:00
|
|
|
bfd_arc_arch) ta="$ta arc-dis.lo arc-opc.lo arc-ext.lo" ;;
|
1999-05-03 09:29:11 +02:00
|
|
|
bfd_arm_arch) ta="$ta arm-dis.lo" ;;
|
2000-03-27 10:39:14 +02:00
|
|
|
bfd_avr_arch) ta="$ta avr-dis.lo" ;;
|
2005-09-30 17:28:52 +02:00
|
|
|
bfd_bfin_arch) ta="$ta bfin-dis.lo" ;;
|
2007-06-29 16:09:34 +02:00
|
|
|
bfd_cr16_arch) ta="$ta cr16-dis.lo cr16-opc.lo" ;;
|
2005-12-02 21:09:42 +01:00
|
|
|
bfd_cris_arch) ta="$ta cris-dis.lo cris-opc.lo cgen-bitset.lo" ;;
|
2004-07-07 19:28:53 +02:00
|
|
|
bfd_crx_arch) ta="$ta crx-dis.lo crx-opc.lo" ;;
|
1999-05-03 09:29:11 +02:00
|
|
|
bfd_d10v_arch) ta="$ta d10v-dis.lo d10v-opc.lo" ;;
|
|
|
|
bfd_d30v_arch) ta="$ta d30v-dis.lo d30v-opc.lo" ;;
|
2002-05-28 16:08:47 +02:00
|
|
|
bfd_dlx_arch) ta="$ta dlx-dis.lo" ;;
|
1999-05-03 09:29:11 +02:00
|
|
|
bfd_fr30_arch) ta="$ta fr30-asm.lo fr30-desc.lo fr30-dis.lo fr30-ibld.lo fr30-opc.lo" using_cgen=yes ;;
|
2005-07-18 16:13:36 +02:00
|
|
|
bfd_frv_arch) ta="$ta frv-asm.lo frv-desc.lo frv-dis.lo frv-ibld.lo frv-opc.lo" using_cgen=yes ;;
|
2009-04-16 17:39:48 +02:00
|
|
|
bfd_moxie_arch) ta="$ta moxie-dis.lo moxie-opc.lo" ;;
|
1999-05-03 09:29:11 +02:00
|
|
|
bfd_h8300_arch) ta="$ta h8300-dis.lo" ;;
|
|
|
|
bfd_h8500_arch) ta="$ta h8500-dis.lo" ;;
|
|
|
|
bfd_hppa_arch) ta="$ta hppa-dis.lo" ;;
|
2000-02-23 14:52:23 +01:00
|
|
|
bfd_i370_arch) ta="$ta i370-dis.lo i370-opc.lo" ;;
|
2009-07-25 16:58:58 +02:00
|
|
|
bfd_i386_arch|bfd_l1om_arch)
|
|
|
|
ta="$ta i386-dis.lo i386-opc.lo" ;;
|
2000-07-22 Jason Eckhardt <jle@cygnus.com>
* include/opcode/i860.h (btne, bte, bla): Changed these opcodes
to use sbroff ('r') instead of split16 ('s').
(J, K, L, M): New operand types for 16-bit aligned fields.
(ld.x, {p}fld.x, fst.x, pst.d): Changed these opcodes to
use I, J, K, L, M instead of just I.
(T, U): New operand types for split 16-bit aligned fields.
(st.x): Changed these opcodes to use S, T, U instead of just S.
(andh, andnoth, orh, xorh): Deleted 3-register forms as they do not
exist on the i860.
(pfgt.sd, pfle.sd): Deleted these as they do not exist on the i860.
(pfeq.ss, pfeq.dd): New opcodes.
(st.s): Fixed incorrect mask bits.
(fmlow): Fixed incorrect mask bits.
(fzchkl, pfzchkl): Fixed incorrect mask bits.
(faddz, pfaddz): Fixed incorrect mask bits.
(form, pform): Fixed incorrect mask bits.
(pfld.l): Fixed incorrect mask bits.
(fst.q): Fixed incorrect mask bits.
(all floating point opcodes): Fixed incorrect mask bits for
handling of dual bit.
* include/elf/i860.h: New file.
(elf_i860_reloc_type): Defined ELF32 i860 relocations.
* bfd/cpu-i860.c: Added comments.
* bfd/elf32-i860.c (TARGET_LITTLE_SYM): Defined to
bfd_elf32_i860_little_vec.
(TARGET_LITTLE_NAME): Defined to "elf32-i860-little".
(ELF_MAXPAGESIZE): Changed to 4096.
* bfd/targets.c (bfd_elf32_i860_little_vec): Declaration of
new target.
(bfd_target_vector): Added bfd_elf32_i860_little_vec.
* bfd/config.bfd (i860-stardent-sysv4*, i860-stardent-elf*): Added
config for little endian elf32 i860.
(targ_defvec): Define for the new config above
as "bfd_elf32_i860_little_vec".
(targ_selvecs): Define for the new config above
as "bfd_elf32_i860_vec bfd_elf32_i860_little_vec"
* bfd/configure.in (bfd_elf32_i860_little_vec): Added recognition
of new target vec.
* bfd/configure: Regenerated.
* opcodes/i860-dis.c: New file.
(print_insn_i860): New function.
(print_br_address): New function.
(sign_extend): New function.
(BITWISE_OP): New macro.
(I860_REG_PREFIX): New macro.
(grnames, frnames, crnames): New structures.
* opcodes/disassemble.c (ARCH_i860): Define.
(disassembler): Add check for bfd_arch_i860 to set disassemble
function to print_insn_i860.
* include/dis-asm.h (print_insn_i860): Add prototype.
* opcodes/Makefile.in (CFILES): Added i860-dis.c.
(ALL_MACHINES): Added i860-dis.lo.
(i860-dis.lo): New dependences.
* opcodes/configure.in: New bits for bfd_i860_arch.
* opcodes/configure: Regenerated.
2000-07-28 23:10:20 +02:00
|
|
|
bfd_i860_arch) ta="$ta i860-dis.lo" ;;
|
1999-05-03 09:29:11 +02:00
|
|
|
bfd_i960_arch) ta="$ta i960-dis.lo" ;;
|
2000-04-21 22:22:24 +02:00
|
|
|
bfd_ia64_arch) ta="$ta ia64-dis.lo ia64-opc.lo" ;;
|
2002-07-19 09:52:40 +02:00
|
|
|
bfd_ip2k_arch) ta="$ta ip2k-asm.lo ip2k-desc.lo ip2k-dis.lo ip2k-ibld.lo ip2k-opc.lo" using_cgen=yes ;;
|
2003-01-03 20:52:23 +01:00
|
|
|
bfd_iq2000_arch) ta="$ta iq2000-asm.lo iq2000-desc.lo iq2000-dis.lo iq2000-ibld.lo iq2000-opc.lo" using_cgen=yes ;;
|
2008-12-23 20:10:25 +01:00
|
|
|
bfd_lm32_arch) ta="$ta lm32-asm.lo lm32-desc.lo lm32-dis.lo lm32-ibld.lo lm32-opc.lo lm32-opinst.lo" using_cgen=yes ;;
|
2005-07-18 16:13:36 +02:00
|
|
|
bfd_m32c_arch) ta="$ta m32c-asm.lo m32c-desc.lo m32c-dis.lo m32c-ibld.lo m32c-opc.lo" using_cgen=yes ;;
|
1999-05-03 09:29:11 +02:00
|
|
|
bfd_m32r_arch) ta="$ta m32r-asm.lo m32r-desc.lo m32r-dis.lo m32r-ibld.lo m32r-opc.lo m32r-opinst.lo" using_cgen=yes ;;
|
2000-06-19 03:22:44 +02:00
|
|
|
bfd_m68hc11_arch) ta="$ta m68hc11-dis.lo m68hc11-opc.lo" ;;
|
|
|
|
bfd_m68hc12_arch) ta="$ta m68hc11-dis.lo m68hc11-opc.lo" ;;
|
1999-05-03 09:29:11 +02:00
|
|
|
bfd_m68k_arch) ta="$ta m68k-dis.lo m68k-opc.lo" ;;
|
|
|
|
bfd_m88k_arch) ta="$ta m88k-dis.lo" ;;
|
|
|
|
bfd_mcore_arch) ta="$ta mcore-dis.lo" ;;
|
2007-02-05 21:04:22 +01:00
|
|
|
bfd_mep_arch) ta="$ta mep-asm.lo mep-desc.lo mep-dis.lo mep-ibld.lo mep-opc.lo" using_cgen=yes ;;
|
Add support for Xilinx MicroBlaze processor.
* bfd/Makefile.am: Add cpu-microblaze.{lo,c}, elf32-microblaze.{lo,c}.
* bfd/Makefile.in: Same.
* bfd/archures.c: Add bfd_arch_microblaze.
* bfd/bfd-in2.h: Regenerate.
* bfd/config.bfd: Add microblaze target.
* bfd/configure: Add bfd_elf32_microblaze_vec target.
* bfd/configure.in: Same.
* bfd/cpu-microblaze.c: New.
* bfd/elf32-microblaze.c: New.
* bfd/libbfd-in.h: Add prototype _bfd_dwarf2_fixup_section_debug_loc().
* bfd/libbfd.h: Regenerate.
* bfd/reloc.c: Add MICROBLAZE relocations.
* bfd/section.c: Add struct relax_table and relax_count to section.
* bfd/targets.c: Add bfd_elf32_microblaze_vec.
* binutils/MAINTAINERS: Add self as maintainer.
* binutils/readelf.c: Include elf/microblaze.h, add EM_MICROBLAZE &
EM_MICROBLAZE_OLD to guess_is_rela(), dump_relocations(),
get_machine_name().
* config.sub: Add microblaze target.
* configure: Same.
* configure.ac: Same.
* gas/Makefile.am: add microblaze to CPU_TYPES, config/tc-microblaze.c to
TARGET_CPU_CFILES, config/tc-microblaze.h to TARGET_CPU_HFILES, add
DEP_microblaze_elf target.
* gas/Makefile.in: Same.
* gas/config/tc-microblaze.c: Add MicroBlaze assembler.
* gas/config/tc-microblaze.h: Add header for tc-microblaze.c.
* gas/configure: Add microblaze target.
* gas/configure.in: Same.
* gas/configure.tgt: Same.
* gas/doc/Makefile.am: Add c-microblaze.texi to CPU_DOCS.
* gas/doc/Makefile.in: Same.
* gas/doc/all.texi: Set MICROBLAZE.
* gas/doc/as.texinfo: Add MicroBlaze doc links.
* gas/doc/c-microblaze.texi: New MicroBlaze docs.
* include/dis-asm.h: Decl print_insn_microblaze().
* include/elf/common.h: Define EM_MICROBLAZE & EM_MICROBLAZE_OLD.
* include/elf/microblaze.h: New reloc definitions.
* ld/Makefile.am: Add eelf32mb_linux.o, eelf32microblaze.o to
ALL_EMULATIONS, targets.
* ld/Makefile.in: Same.
* ld/configure.tgt: Add microblaze*-linux*, microblaze* targets.
* ld/emulparams/elf32mb_linux.sh: New.
* ld/emulparams/elf32microblaze.sh. New.
* ld/scripttempl/elfmicroblaze.sc: New.
* opcodes/Makefile.am: Add microblaze-opc.h to HFILES, microblaze-dis.c to
CFILES, microblaze-dis.lo to ALL_MACHINES, targets.
* opcodes/Makefile.in: Same.
* opcodes/configure: Add bfd_microblaze_arch target.
* opcodes/configure.in: Same.
* opcodes/disassemble.c: Define ARCH_microblaze, return
print_insn_microblaze().
* opcodes/microblaze-dis.c: New MicroBlaze disassembler.
* opcodes/microblaze-opc.h: New MicroBlaze opcode definitions.
* opcodes/microblaze-opcm.h: New MicroBlaze opcode types.
2009-08-06 19:38:04 +02:00
|
|
|
bfd_microblaze_arch) ta="$ta microblaze-dis.lo" ;;
|
1999-05-03 09:29:11 +02:00
|
|
|
bfd_mips_arch) ta="$ta mips-dis.lo mips-opc.lo mips16-opc.lo" ;;
|
2001-10-30 16:20:14 +01:00
|
|
|
bfd_mmix_arch) ta="$ta mmix-dis.lo mmix-opc.lo" ;;
|
1999-05-03 09:29:11 +02:00
|
|
|
bfd_mn10200_arch) ta="$ta m10200-dis.lo m10200-opc.lo" ;;
|
|
|
|
bfd_mn10300_arch) ta="$ta m10300-dis.lo m10300-opc.lo" ;;
|
Second part of ms1 to mt renaming.
* bfd/archures.c (bfd_arch_mt): Renamed.
(bfd_mt_arch): Renamed.
(bfd_archures_list): Adjusted.
* bfd/bfd-in2.h: Rebuilt.
* bfd/config.bfd (mt): Remove special case targ_archs.
(mt-*-elf): Rename bfd_elf32_mt_vec.
* bfd/configure: Rebuilt.
* bfd/configure.in (bfd_elf32_mt_vec): Renamed.
(selarchs) Remove mt special case.
* bfd/cpu-mt.c (arch_info_struct): Adjust.
(bfd_mt_arch): Renamed, adjust.
* bfd/elf32-mt.c (mt_reloc_type_lookup, mt_info_to_howto_rela,
mt_elf_relocate_hi16, mt_final_link_relocate, mt_relocate_section,
mt_elf_howto_table): Renamed, adjusted.
(mt_elf_gc_mark_hook, mt_elf_gc_sweep_hook, mt_elf_check_relocs,
elf32_mt_machine, mt_elf_object_p, mt_elf_set_private_flags,
mt_elf_copy_private_bfd_data, mt_elf_merge_private_bfd_data,
mt_elf_print_private_bfd_data): Renamed, adjusted.
(TARGET_BIG_SYM, TARGET_BIG_NAME, ELF_ARCH, ELF_MACHINE_CODE,
ELF_MAXPAGESIZE, elf_info_to_howto, elf_backend_relocate_section,
bfd_elf32_bfd_reloc_type_lookup, elf_backend_gc_mark_hook,
elf_backend_gc_sweep_hook, elf_backend_check_relocs,
eld_backend_object_p, bfd_elf32_bfd_set_private_flags,
bfd_elf32_bfd_copy_private_bfd_data,
bfd_elf32_bfd_merge_private_bfd_data,
bfd_elf32_bfd_print_private_bfd_data): Adjusted.
* bfd/libbfd.h: Regenerated.
* bfd/reloc.c (BFD_RELOC_MT_PC16, BFD_RELOC_MT_HI16,
BFD_RELOC_MT_LO16, BFD_RELOC_MT_GNU_VTINHERIT,
BFD_RELOC_MT_GNU_VTENTRY, BFD_RELOC_MT_PCINSN8): Renamed.
* bfd/targets.c (bfd_elf32_mt_vec): Renamed.
(_bfd_target_vector): Adjusted.
* binutils/readelf.c (guess_is_rela): Use EM_MT.
(dump_relocations, get_machine_name): Adjust.
* cpu/mt.cpu (define-arch, define-isa): Set name to mt.
(define-mach): Adjust.
* cpu/mt.opc (CGEN_ASM_HASH): Update.
(mt_asm_hash, mt_cgen_insn_supported): Renamed.
(parse_loopsize, parse_imm16): Adjust.
* gas/configure: Rebuilt.
* gas/configure.in (mt): Remove special case.
* gas/config/tc-mt.c (opcodes/mt-desc.h, opcodes/mt-opc.h): Change
#includes.
(mt_insn, mt_mach, mt_mach_bitmask, mt_flags, mt_architectures):
Rename, adjust.
(md_parse_option, md_show_usage, md_begin, md_assemble,
md_cgen_lookup_reloc, md_atof): Adjust.
(mt_force_relocation, mt_apply_fix, mt_fix_adjustable): Rename, adjust.
* gas/config/tc-mt.h (TC_MT): Rename.
(LISTING_HEADER, TARGET_ARCH, TARGET_FORMAT): Adjust.
(md_apply_fix): Adjust.
(mt_apply_fix, mt_fix_adjustable, mt_force_relocation): Rename.
(TC_FORCE_RELOCATION, tc_fix_adjustable): Adjust.
* gdb/mt-tdep.c (mt_arch_constants, mt_gdb_regnums): Rename, adjust.
(mt_register_name, mt_register_type, mt_register_reggroup_p,
mt_return_value, mt_skip_prologue, mt_breapoint_from_pc,
mt_pseudo_register_read, mt_pseudo_register_write, mt_frame_align,
mt_registers_info, mt_push_dummy_call, mt_unwind_cache,
mt_frame_unwind_cache, mt_unwind_pc, mt_unwind_dummy_id,
mt_frame_this_id, mt_frame_prev_register, mt_frame_base_address,
mt_frame_unwind, mt_frame_sniffer, mt_frame_base, mt_gdbarch_init,
_initialize_mt_tdep): Rename & adjust.
* include/dis-asm.h (print_insn_mt): Renamed.
* include/elf/common.h (EM_MT): Renamed.
* include/elf/mt.h: Rename relocs, cpu & other defines.
* ld/emulparams/elf32mt.sh (ARCH, OUTPUT_FORMAT): Adjust.
* opcodes/Makefile.am (HFILES, CFILES, ALL_MACHINES): Adjust.
(stamp-mt): Adjust rule.
(mt-asm.lo, mt-desc.lo, mt-dis.lo, mt-ibld.lo, mt-opc.lo): Rename &
adjust.
* opcodes/Makefile.in: Rebuilt.
* opcodes/configure: Rebuilt.
* opcodes/configure.in (bfd_mt_arch): Rename & adjust.
* opcodes/disassemble.c (ARCH_mt): Renamed.
(disassembler): Adjust.
* opcodes/mt-asm.c: Renamed, rebuilt.
* opcodes/mt-desc.c: Renamed, rebuilt.
* opcodes/mt-desc.h: Renamed, rebuilt.
* opcodes/mt-dis.c: Renamed, rebuilt.
* opcodes/mt-ibld.c: Renamed, rebuilt.
* opcodes/mt-opc.c: Renamed, rebuilt.
* opcodes/mt-opc.h: Renamed, rebuilt.
* sid/Makefile.in: Rebuilt.
* sid/aclocal.m4: Rebuilt.
* sid/configure: Rebuilt.
* sid/sid.spec: Adjust.
* sid/bsp/Makefile.am: Adjust.
* sid/bsp/Makefile.in: Rebuilt.
* sid/bsp/aclocal.m4: Rebuilt.
* sid/bsp/configrun-sid.in: Adjust.
* sid/bsp/pregen/Makefile.in: Rebuilt.
* sid/bsp/pregen/mt-gdb.conf: Renamed & rebuilt.
* sid/bsp/pregen/mt-gloss.conf: Renamed & rebuilt.
* sid/bsp/pregen/pregen-configs.in: Adjust.
* sid/component/aclocal.m4: Rebuilt.
* sid/component/configure: Rebuilt.
* sid/component/tconfig.in: Adjust.
* sid/component/bochs/aclocal.m4: Rebuilt.
* sid/component/cache/Makefile.in: Rebuilt.
* sid/component/cgen-cpu/Makefile.in: Rebuilt.
* sid/component/cgen-cpu/aclocal.m4: Rebuilt.
* sid/component/cgen-cpu/compCGEN.cxx: Adjust.
* sid/component/cgen-cpu/configure: Rebuilt.
* sid/component/cgen-cpu/configure.in: Rebult.
* sid/component/cgen-cpu/mt/Makefile.am: Adjust.
* sid/component/cgen-cpu/mt/Makefile.in: Rebuilt.
* sid/component/cgen-cpu/mt/hw-cpu-mt.txt: Adjust.
* sid/component/cgen-cpu/mt/mt-cpu.h: Rebuilt.
* sid/component/cgen-cpu/mt/mt-decode.cxx: Rebuilt.
* sid/component/cgen-cpu/mt/mt-decode.h: Rebuilt.
* sid/component/cgen-cpu/mt/mt-defs.h: Rebuilt.
* sid/component/cgen-cpu/mt/mt-desc.h: Rebuilt.
* sid/component/cgen-cpu/mt/mt-sem.cxx: Rebuilt.
* sid/component/cgen-cpu/mt/mt-write.cxx: Rebuilt.
* sid/component/cgen-cpu/mt/mt.cxx: Adjust.
* sid/component/cgen-cpu/mt/mt.h: Adjust.
* sid/component/consoles/Makefile.in: Rebuilt.
* sid/component/families/aclocal.m4: Rebuilt.
* sid/component/families/configure: Rebuilt.
* sid/component/gdb/Makefile.in: Rebuilt.
* sid/component/gloss/Makefile.in: Rebuilt.
* sid/component/glue/Makefile.in: Rebuilt.
* sid/component/ide/Makefile.in: Rebuilt.
* sid/component/interrupt/Makefile.in: Rebuilt.
* sid/component/lcd/Makefile.in: Rebuilt.
* sid/component/lcd/testsuite/Makefile.in: Rebuilt.
* sid/component/loader/Makefile.am: Rebuilt.
* sid/component/loader/Makefile.in: Rebuilt.
* sid/component/mapper/Makefile.in: Rebuilt.
* sid/component/mapper/testsuite/Makefile.in: Rebuilt.
* sid/component/memory/Makefile.in: Rebuilt.
* sid/component/mmu/Makefile.in: Rebuilt.
* sid/component/parport/Makefile.in: Rebuilt.
* sid/component/profiling/Makefile.in: Rebuilt.
* sid/component/rtc/Makefile.in: Rebuilt.
* sid/component/sched/Makefile.in: Rebuilt.
* sid/component/testsuite/Makefile.in: Rebuilt.
* sid/component/timers/aclocal.m4: Rebuilt.
* sid/component/timers/configure: Rebuilt.
* sid/component/uart/Makefile.in: Rebuilt.
* sid/component/uart/testsuite/Makefile.in: Rebuilt.
* sid/config/config.sub: Adjust.
* sid/config/info.tcl.in: Adjust.
* sid/config/sidtargets.m4: Adjust.
* sid/doc/Makefile.in: Rebuilt.
* sid/main/dynamic/Makefile.am: Rebuilt.
* sid/main/dynamic/Makefile.in: Rebuilt.
* sid/main/dynamic/aclocal.m4: Rebuilt.
* sid/main/dynamic/configure: Rebuilt.
2005-12-16 11:23:12 +01:00
|
|
|
bfd_mt_arch) ta="$ta mt-asm.lo mt-desc.lo mt-dis.lo mt-ibld.lo mt-opc.lo" using_cgen=yes ;;
|
2002-12-30 20:25:13 +01:00
|
|
|
bfd_msp430_arch) ta="$ta msp430-dis.lo" ;;
|
1999-05-03 09:29:11 +02:00
|
|
|
bfd_ns32k_arch) ta="$ta ns32k-dis.lo" ;;
|
2001-04-27 15:34:20 +02:00
|
|
|
bfd_openrisc_arch) ta="$ta openrisc-asm.lo openrisc-desc.lo openrisc-dis.lo openrisc-ibld.lo openrisc-opc.lo" using_cgen=yes ;;
|
2002-01-31 18:33:08 +01:00
|
|
|
bfd_or32_arch) ta="$ta or32-dis.lo or32-opc.lo" using_cgen=yes ;;
|
2001-02-19 00:33:11 +01:00
|
|
|
bfd_pdp11_arch) ta="$ta pdp11-dis.lo pdp11-opc.lo" ;;
|
1999-09-04 19:14:37 +02:00
|
|
|
bfd_pj_arch) ta="$ta pj-dis.lo pj-opc.lo" ;;
|
1999-05-03 09:29:11 +02:00
|
|
|
bfd_powerpc_arch) ta="$ta ppc-dis.lo ppc-opc.lo" ;;
|
2001-02-10 01:58:38 +01:00
|
|
|
bfd_powerpc_64_arch) ta="$ta ppc-dis.lo ppc-opc.lo" ;;
|
2001-06-10 16:07:12 +02:00
|
|
|
bfd_pyramid_arch) ;;
|
1999-05-03 09:29:11 +02:00
|
|
|
bfd_romp_arch) ;;
|
|
|
|
bfd_rs6000_arch) ta="$ta ppc-dis.lo ppc-opc.lo" ;;
|
2009-09-29 16:17:19 +02:00
|
|
|
bfd_rx_arch) ta="$ta rx-dis.lo rx-decode.lo";;
|
2001-02-10 01:58:38 +01:00
|
|
|
bfd_s390_arch) ta="$ta s390-dis.lo s390-opc.lo" ;;
|
2009-03-02 11:33:08 +01:00
|
|
|
bfd_score_arch) ta="$ta score-dis.lo score7-dis.lo" ;;
|
2000-12-16 23:01:44 +01:00
|
|
|
bfd_sh_arch)
|
Contribute sh64-elf.
2001-10-08 Nick Clifton <nickc@cambridge.redhat.com>
* sh64-opc.c: Regenerate.
2001-03-13 DJ Delorie <dj@redhat.com>
* sh64-opc.h: Rename A_RESV_Fx to A_REUSE_PREV so that its
purpose is more obvious.
* sh64-opc.c (shmedia_table): Ditto.
* sh64-dis.c (initialize_shmedia_opcode_mask_table): Ditto.
(print_insn_shmedia): Ditto.
2001-03-12 DJ Delorie <dj@redhat.com>
* sh64-opc.c: Adjust comments to reflect reality: replace bits
3:0 with zeros (not "reserved"), replace "rrrrrr" with
"gggggg" for two-operand floating point opcodes. Remove
"fsina".
2001-01-08 Hans-Peter Nilsson <hpn@cygnus.com>
* sh64-dis.c (print_insn_shmedia) <failing read_memory_func>:
Correct printing of .byte:s. Return number of printed bytes or
-1; never 0.
(print_insn_sh64x) <not CRT_SH5_ISA16>: Ditto. Print as .byte:s
to next four-byte-alignment if insn or data is not aligned.
2001-01-06 Hans-Peter Nilsson <hpn@cygnus.com>
* sh64-dis.c: Update comments and fix comment formatting.
(initialize_shmedia_opcode_mask_table) <case A_IMMM>:
Abort instead of setting length to 0.
(crange_qsort_cmpb, crange_qsort_cmpl, crange_bsearch_cmpb,
crange_bsearch_cmpl, sh64_get_contents_type,
sh64_address_in_cranges): Move to bfd/elf32-sh64.c.
2001-01-05 Hans-Peter Nilsson <hpn@cygnus.com>
* sh64-opc.c: Remove #if 0:d entries for instructions not found in
SH-5/ST50-023-04: fcosa.s, fsrra.s and prefo.
2000-12-30 Hans-Peter Nilsson <hpn@cygnus.com>
* sh64-dis.c (print_insn_shmedia): Display MOVI/SHORI-formed
address with same prefix as SHcompact.
In the disassembler, use a .cranges section for linked executables.
* sh64-dis.c (SAVED_MOVI_R, SAVED_MOVI_IMM): Move to head of file
and update for using structure in info->private_data.
(struct sh64_disassemble_info): New.
(is_shmedia_p): Delete.
(crange_qsort_cmpb): New function.
(crange_qsort_cmpl, crange_bsearch_cmpb): New functions.
(crange_bsearch_cmpl, sh64_address_in_cranges): New functions.
(init_sh64_disasm_info, sh64_get_contents_type_disasm): New functions.
(sh64_get_contents_type, sh64_address_is_shmedia): New functions.
(print_insn_shmedia): Correct displaying of address after MOVI/SHORI
pair. Display addresses for linked executables only.
(print_insn_sh64x_media): Initialize info->private_data by calling
init_sh64_disasm_info.
(print_insn_sh64x): Ditto. Find out type of contents by calling
sh64_contents_type_disasm. Display data regions using ".long" and
".byte" similar to unrecognized opcodes.
2000-12-19 Hans-Peter Nilsson <hpn@cygnus.com>
* sh64-dis.c (is_shmedia_p): Check info->section and look for ISA
information in section flags before considering symbols. Don't
assume an info->mach setting of bfd_mach_sh5 means SHmedia code.
* configure.in (bfd_sh_arch): Check presence of sh64 insns by
matching $target $canon_targets instead of looking at the
now-removed -DINCLUDE_SHMEDIA in $targ_cflags.
* configure: Regenerate.
2000-11-25 Hans-Peter Nilsson <hpn@cygnus.com>
* sh64-opc.c (shmedia_creg_table): New.
* sh64-opc.h (shmedia_creg_info): New type.
(shmedia_creg_table): Declare.
* sh64-dis.c (creg_name): New function.
(print_insn_shmedia): Use it.
* disassemble.c (disassembler) [ARCH_sh, INCLUDE_SHMEDIA]: Map
bfd_mach_sh5 to print_insn_sh64 if big-endian and to
print_insn_sh64l if little-endian.
* sh64-dis.c (print_insn_shmedia): Make r unsigned.
(print_insn_sh64l): New.
(print_insn_sh64x): New.
(print_insn_sh64x_media): New.
(print_insn_sh64): Break out code to print_insn_sh64x and
print_insn_sh64x_media.
2000-11-24 Hans-Peter Nilsson <hpn@cygnus.com>
* sh64-opc.h: New file
* sh64-opc.c: New file
* sh64-dis.c: New file
* Makefile.am: Add sh64 targets.
(HFILES): Add sh64-opc.h.
(CFILES): Add sh64-opc.c and sh64-dis.c.
(ALL_MACHINES): Add sh64 files.
* Makefile.in: Regenerate.
* configure.in: Add support for sh64 to bfd_sh_arch.
* configure: Regenerate.
* disassemble.c [ARCH_all] (INCLUDE_SHMEDIA): Define.
(disassembler) [ARCH_sh, INCLUDE_SHMEDIA]: Map bfd_mach_sh5 to
print_insn_sh64.
* sh-dis.c (print_insn_shx): Handle bfd_mach_sh5 as arch_sh4.
* po/POTFILES.in: Regenerate.
* po/opcodes.pot: Regenerate.
2002-02-08 06:51:04 +01:00
|
|
|
# We can't decide what we want just from the CPU family.
|
2002-02-09 04:25:25 +01:00
|
|
|
# We want SH5 support unless a specific version of sh is
|
|
|
|
# specified, as in sh3-elf, sh3b-linux-gnu, etc.
|
2002-02-10 21:40:56 +01:00
|
|
|
# Include it just for ELF targets, since the SH5 bfd:s are ELF only.
|
|
|
|
for t in $target $canon_targets; do
|
|
|
|
case $t in
|
bfd:
* Makefile.am (BFD32_BACKENDS): Add elf32-sh64-nbsd.lo.
(BFD32_BACKENDS_CFILES): Add elf32-sh64-nbsd.c.
(BFD64_BACKENDS): Add elf64-sh64-nbsd.lo.
(BFD64_BACKENDS_CFILES): Add elf64-sh64-nbsd.c.
(elf32-sh64-nbsd.lo, elf64-sh64-nbsd.lo): New rules.
* Makefile.in: Regenerate.
* config.bfd (sh5le-*-netbsd*, sh5-*-netbsd*, sh64le-*-netbsd*)
(sh64-*-netbsd*): New targets.
* configure.in: Add bfd_elf32_sh64nbsd_vec, bfd_elf32_sh64lnbsd_vec,
bfd_elf64_sh64nbsd_vec, and bfd_elf64_sh64lnbsd_vec.
* configure: Regenerate.
* elf32-sh64-nbsd.c: New file.
* elf64-sh64-nbsd.c: New file.
* targets.c: Add extern decls for bfd_elf32_sh64nbsd_vec,
bfd_elf32_sh64lnbsd_vec, bfd_elf64_sh64nbsd_vec, and
bfd_elf64_sh64lnbsd_vec.
gas:
* configure.in (sh5*): Set cpu_type to sh64 and endian to big.
(sh5le*, sh64le*): Set cpu_type to sh64 and endian to little.
(sh5*-*-netbsd*, sh64*-*-netbsd*): New targets.
* configure: Regenerate.
* config/tc-sh64.c (sh64_target_format): Add support for NetBSD
environment.
ld:
* Makefile.am (ALL_EMULATIONS): Add eshelf32_nbsd.o,
eshlelf32_nbsd.o, eshelf64_nbsd.o, and eshlelf64_nbsd.o.
(eshelf32_nbsd.c, eshelf64_nbsd.c, eshlelf32_nbsd.c)
(eshlelf64_nbsd.c): New rules.
* Makefile.in: Regenerate.
* configure.tgt (sh5le-*-netbsd*, sh5-*-netbsd*, sh64le-*-netbsd*)
(sh64-*-netbsd*): New targets.
* emulparams/shelf32_nbsd.sh: New file.
* emulparams/shelf64_nbsd.sh: New file.
* emulparams/shlelf32_nbsd.sh: New file.
* emulparams/shlelf64_nbsd.sh: New file.
opcodes:
* configure.in: Add "sh5*-*" to list of targets which include
sh64 support.
* configure: Regenerate.
2002-06-04 04:57:44 +02:00
|
|
|
all | sh5*-* | sh64*-* | sh-*-*elf* | shl*-*-*elf* | \
|
2002-05-13 17:39:44 +02:00
|
|
|
sh-*-linux* | shl-*-linux*)
|
Contribute sh64-elf.
2001-10-08 Nick Clifton <nickc@cambridge.redhat.com>
* sh64-opc.c: Regenerate.
2001-03-13 DJ Delorie <dj@redhat.com>
* sh64-opc.h: Rename A_RESV_Fx to A_REUSE_PREV so that its
purpose is more obvious.
* sh64-opc.c (shmedia_table): Ditto.
* sh64-dis.c (initialize_shmedia_opcode_mask_table): Ditto.
(print_insn_shmedia): Ditto.
2001-03-12 DJ Delorie <dj@redhat.com>
* sh64-opc.c: Adjust comments to reflect reality: replace bits
3:0 with zeros (not "reserved"), replace "rrrrrr" with
"gggggg" for two-operand floating point opcodes. Remove
"fsina".
2001-01-08 Hans-Peter Nilsson <hpn@cygnus.com>
* sh64-dis.c (print_insn_shmedia) <failing read_memory_func>:
Correct printing of .byte:s. Return number of printed bytes or
-1; never 0.
(print_insn_sh64x) <not CRT_SH5_ISA16>: Ditto. Print as .byte:s
to next four-byte-alignment if insn or data is not aligned.
2001-01-06 Hans-Peter Nilsson <hpn@cygnus.com>
* sh64-dis.c: Update comments and fix comment formatting.
(initialize_shmedia_opcode_mask_table) <case A_IMMM>:
Abort instead of setting length to 0.
(crange_qsort_cmpb, crange_qsort_cmpl, crange_bsearch_cmpb,
crange_bsearch_cmpl, sh64_get_contents_type,
sh64_address_in_cranges): Move to bfd/elf32-sh64.c.
2001-01-05 Hans-Peter Nilsson <hpn@cygnus.com>
* sh64-opc.c: Remove #if 0:d entries for instructions not found in
SH-5/ST50-023-04: fcosa.s, fsrra.s and prefo.
2000-12-30 Hans-Peter Nilsson <hpn@cygnus.com>
* sh64-dis.c (print_insn_shmedia): Display MOVI/SHORI-formed
address with same prefix as SHcompact.
In the disassembler, use a .cranges section for linked executables.
* sh64-dis.c (SAVED_MOVI_R, SAVED_MOVI_IMM): Move to head of file
and update for using structure in info->private_data.
(struct sh64_disassemble_info): New.
(is_shmedia_p): Delete.
(crange_qsort_cmpb): New function.
(crange_qsort_cmpl, crange_bsearch_cmpb): New functions.
(crange_bsearch_cmpl, sh64_address_in_cranges): New functions.
(init_sh64_disasm_info, sh64_get_contents_type_disasm): New functions.
(sh64_get_contents_type, sh64_address_is_shmedia): New functions.
(print_insn_shmedia): Correct displaying of address after MOVI/SHORI
pair. Display addresses for linked executables only.
(print_insn_sh64x_media): Initialize info->private_data by calling
init_sh64_disasm_info.
(print_insn_sh64x): Ditto. Find out type of contents by calling
sh64_contents_type_disasm. Display data regions using ".long" and
".byte" similar to unrecognized opcodes.
2000-12-19 Hans-Peter Nilsson <hpn@cygnus.com>
* sh64-dis.c (is_shmedia_p): Check info->section and look for ISA
information in section flags before considering symbols. Don't
assume an info->mach setting of bfd_mach_sh5 means SHmedia code.
* configure.in (bfd_sh_arch): Check presence of sh64 insns by
matching $target $canon_targets instead of looking at the
now-removed -DINCLUDE_SHMEDIA in $targ_cflags.
* configure: Regenerate.
2000-11-25 Hans-Peter Nilsson <hpn@cygnus.com>
* sh64-opc.c (shmedia_creg_table): New.
* sh64-opc.h (shmedia_creg_info): New type.
(shmedia_creg_table): Declare.
* sh64-dis.c (creg_name): New function.
(print_insn_shmedia): Use it.
* disassemble.c (disassembler) [ARCH_sh, INCLUDE_SHMEDIA]: Map
bfd_mach_sh5 to print_insn_sh64 if big-endian and to
print_insn_sh64l if little-endian.
* sh64-dis.c (print_insn_shmedia): Make r unsigned.
(print_insn_sh64l): New.
(print_insn_sh64x): New.
(print_insn_sh64x_media): New.
(print_insn_sh64): Break out code to print_insn_sh64x and
print_insn_sh64x_media.
2000-11-24 Hans-Peter Nilsson <hpn@cygnus.com>
* sh64-opc.h: New file
* sh64-opc.c: New file
* sh64-dis.c: New file
* Makefile.am: Add sh64 targets.
(HFILES): Add sh64-opc.h.
(CFILES): Add sh64-opc.c and sh64-dis.c.
(ALL_MACHINES): Add sh64 files.
* Makefile.in: Regenerate.
* configure.in: Add support for sh64 to bfd_sh_arch.
* configure: Regenerate.
* disassemble.c [ARCH_all] (INCLUDE_SHMEDIA): Define.
(disassembler) [ARCH_sh, INCLUDE_SHMEDIA]: Map bfd_mach_sh5 to
print_insn_sh64.
* sh-dis.c (print_insn_shx): Handle bfd_mach_sh5 as arch_sh4.
* po/POTFILES.in: Regenerate.
* po/opcodes.pot: Regenerate.
2002-02-08 06:51:04 +01:00
|
|
|
ta="$ta sh64-dis.lo sh64-opc.lo"
|
2002-02-10 21:40:56 +01:00
|
|
|
archdefs="$archdefs -DINCLUDE_SHMEDIA"
|
|
|
|
break;;
|
|
|
|
esac;
|
|
|
|
done
|
2006-10-18 20:18:26 +02:00
|
|
|
ta="$ta sh-dis.lo cgen-bitset.lo" ;;
|
1999-05-03 09:29:11 +02:00
|
|
|
bfd_sparc_arch) ta="$ta sparc-dis.lo sparc-opc.lo" ;;
|
2006-10-25 08:49:21 +02:00
|
|
|
bfd_spu_arch) ta="$ta spu-dis.lo spu-opc.lo" ;;
|
1999-05-03 09:29:11 +02:00
|
|
|
bfd_tahoe_arch) ;;
|
|
|
|
bfd_tic30_arch) ta="$ta tic30-dis.lo" ;;
|
2002-08-28 12:38:51 +02:00
|
|
|
bfd_tic4x_arch) ta="$ta tic4x-dis.lo" ;;
|
2000-05-06 19:14:34 +02:00
|
|
|
bfd_tic54x_arch) ta="$ta tic54x-dis.lo tic54x-opc.lo" ;;
|
bfd:
* Makefile.am (ALL_MACHINES): Add cpu-tic6x.lo.
(ALL_MACHINES_CFILES): Add cpu-tic6x.c.
(BFD32_BACKENDS): Add elf32-tic6x.lo.
(BFD32_BACKENDS_CFILES): Add elf32-tic6x.c.
* Makefile.in: Regenerate.
* archures.c (bfd_arch_tic6x, bfd_tic6x_arch): New.
(bfd_archures_list): Update.
* config.bfd (tic6x-*-elf): New.
* configure.in (bfd_elf32_tic6x_be_vec, bfd_elf32_tic6x_le_vec):
New.
* configure: Regenerate.
* cpu-tic6x.c, elf32-tic6x.c: New.
* reloc.c (BFD_RELOC_C6000_PCR_S21, BFD_RELOC_C6000_PCR_S12,
BFD_RELOC_C6000_PCR_S10, BFD_RELOC_C6000_PCR_S7,
BFD_RELOC_C6000_ABS_S16, BFD_RELOC_C6000_ABS_L16,
BFD_RELOC_C6000_ABS_H16, BFD_RELOC_C6000_SBR_U15_B,
BFD_RELOC_C6000_SBR_U15_H, BFD_RELOC_C6000_SBR_U15_W,
BFD_RELOC_C6000_SBR_S16, BFD_RELOC_C6000_SBR_L16_B,
BFD_RELOC_C6000_SBR_L16_H, BFD_RELOC_C6000_SBR_L16_W,
BFD_RELOC_C6000_SBR_H16_B, BFD_RELOC_C6000_SBR_H16_H,
BFD_RELOC_C6000_SBR_H16_W, BFD_RELOC_C6000_SBR_GOT_U15_W,
BFD_RELOC_C6000_SBR_GOT_L16_W, BFD_RELOC_C6000_SBR_GOT_H16_W,
BFD_RELOC_C6000_DSBT_INDEX, BFD_RELOC_C6000_PREL31,
BFD_RELOC_C6000_COPY, BFD_RELOC_C6000_ALIGN,
BFD_RELOC_C6000_FPHEAD, BFD_RELOC_C6000_NOCMP): New.
* targets.c (bfd_elf32_tic6x_be_vec, bfd_elf32_tic6x_le_vec): New.
(_bfd_target_vector): Update.
* bfd-in2.h, libbfd.h: Regenerate.
binutils:
* MAINTAINERS: Add self as TI C6X maintainer.
* NEWS: Add news entry for TI C6X support.
* readelf.c: Include elf/tic6x.h.
(guess_is_rela): Handle EM_TI_C6000.
(dump_relocations): Likewise.
(get_tic6x_dynamic_type): New.
(get_dynamic_type): Call it.
(get_machine_flags): Handle EF_C6000_REL.
(get_osabi_name): Handle machine-specific values only for relevant
machines. Handle C6X values.
(get_tic6x_segment_type): New.
(get_segment_type): Call it.
(get_tic6x_section_type_name): New.
(get_section_type_name): Call it.
(is_32bit_abs_reloc, is_16bit_abs_reloc, is_none_reloc): Handle
EM_TI_C6000.
gas:
* Makefile.am (TARGET_CPU_CFILES): Add config/tc-tic6x.c.
(TARGET_CPU_HFILES): Add config/tc-tic6x.h.
* Makefile.in: Regenerate.
* NEWS: Add news entry for TI C6X support.
* app.c (do_scrub_chars): Handle "||^" for TI C6X. Handle
TC_PREDICATE_START_CHAR and TC_PREDICATE_END_CHAR. Keep spaces in
operands if TC_KEEP_OPERAND_SPACES.
* configure.tgt (tic6x-*-*): New.
* config/tc-ia64.h (TC_PREDICATE_START_CHAR,
TC_PREDICATE_END_CHAR): Define.
* config/tc-tic6x.c, config/tc-tic6x.h: New.
* doc/Makefile.am (CPU_DOCS): Add c-tic6x.texi.
* doc/Makefile.in: Regenerate.
* doc/all.texi (TIC6X): Define.
* doc/as.texinfo: Add TI C6X documentation. Include c-tic6x.texi.
* doc/c-tic6x.texi: New.
gas/testsuite:
* gas/tic6x: New directory and testcases.
include:
* dis-asm.h (print_insn_tic6x): Declare.
include/elf:
* common.h (ELFOSABI_C6000_ELFABI, ELFOSABI_C6000_LINUX): Define.
* tic6x.h: New.
include/opcode:
* tic6x-control-registers.h, tic6x-insn-formats.h,
tic6x-opcode-table.h, tic6x.h: New.
ld:
* Makefile.am (ALL_EMULATIONS): Add eelf32_tic6x_be.o and
eelf32_tic6x_le.o.
(eelf32_tic6x_be.c, eelf32_tic6x_le.c): New.
* NEWS: Add news entry for TI C6X support.
* configure.tgt (tic6x-*-*): New.
* emulparams/elf32_tic6x_be.sh, emulparams/elf32_tic6x_le.sh: New.
ld/testsuite:
* ld-elf/flags1.d, ld-elf/merge.d: XFAIL for tic6x-*-*.
* ld-elf/sec-to-seg.exp: Set B_test_same_seg to 0 for tic6x-*-*.
* ld-tic6x: New directory and testcases.
opcodes:
* Makefile.am (TARGET_LIBOPCODES_CFILES): Add tic6x-dis.c.
* Makefile.in: Regenerate.
* configure.in (bfd_tic6x_arch): New.
* configure: Regenerate.
* disassemble.c (ARCH_tic6x): Define if ARCH_all.
(disassembler): Handle TI C6X.
* tic6x-dis.c: New.
2010-03-25 22:12:36 +01:00
|
|
|
bfd_tic6x_arch) ta="$ta tic6x-dis.lo" ;;
|
1999-05-03 09:29:11 +02:00
|
|
|
bfd_tic80_arch) ta="$ta tic80-dis.lo tic80-opc.lo" ;;
|
|
|
|
bfd_v850_arch) ta="$ta v850-opc.lo v850-dis.lo" ;;
|
|
|
|
bfd_v850e_arch) ta="$ta v850-opc.lo v850-dis.lo" ;;
|
|
|
|
bfd_v850ea_arch) ta="$ta v850-opc.lo v850-dis.lo" ;;
|
|
|
|
bfd_vax_arch) ta="$ta vax-dis.lo" ;;
|
|
|
|
bfd_w65_arch) ta="$ta w65-dis.lo" ;;
|
|
|
|
bfd_we32k_arch) ;;
|
2006-02-17 15:36:28 +01:00
|
|
|
bfd_xc16x_arch) ta="$ta xc16x-asm.lo xc16x-desc.lo xc16x-dis.lo xc16x-ibld.lo xc16x-opc.lo" using_cgen=yes ;;
|
2001-12-08 04:46:03 +01:00
|
|
|
bfd_xstormy16_arch) ta="$ta xstormy16-asm.lo xstormy16-desc.lo xstormy16-dis.lo xstormy16-ibld.lo xstormy16-opc.lo" using_cgen=yes ;;
|
2003-04-01 17:50:31 +02:00
|
|
|
bfd_xtensa_arch) ta="$ta xtensa-dis.lo" ;;
|
2005-10-25 19:40:19 +02:00
|
|
|
bfd_z80_arch) ta="$ta z80-dis.lo" ;;
|
1999-05-03 09:29:11 +02:00
|
|
|
bfd_z8k_arch) ta="$ta z8k-dis.lo" ;;
|
|
|
|
|
|
|
|
"") ;;
|
|
|
|
*) AC_MSG_ERROR(*** unknown target architecture $arch) ;;
|
|
|
|
esac
|
|
|
|
done
|
|
|
|
|
|
|
|
if test $using_cgen = yes ; then
|
|
|
|
ta="$ta $cgen_files"
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Weed out duplicate .o files.
|
|
|
|
f=""
|
|
|
|
for i in $ta ; do
|
|
|
|
case " $f " in
|
|
|
|
*" $i "*) ;;
|
|
|
|
*) f="$f $i" ;;
|
|
|
|
esac
|
|
|
|
done
|
|
|
|
ta="$f"
|
|
|
|
|
|
|
|
# And duplicate -D flags.
|
|
|
|
f=""
|
|
|
|
for i in $archdefs ; do
|
|
|
|
case " $f " in
|
|
|
|
*" $i "*) ;;
|
|
|
|
*) f="$f $i" ;;
|
|
|
|
esac
|
|
|
|
done
|
|
|
|
archdefs="$f"
|
|
|
|
|
|
|
|
BFD_MACHINES="$ta"
|
|
|
|
|
|
|
|
else # all_targets is true
|
|
|
|
archdefs=-DARCH_all
|
|
|
|
BFD_MACHINES='$(ALL_MACHINES)'
|
|
|
|
fi
|
|
|
|
|
|
|
|
AC_SUBST(archdefs)
|
|
|
|
AC_SUBST(BFD_MACHINES)
|
|
|
|
|
2004-08-30 20:59:50 +02:00
|
|
|
AC_CONFIG_FILES([Makefile po/Makefile.in:po/Make-in])
|
|
|
|
AC_OUTPUT
|