1999-05-03 07:29:11 +00:00
|
|
|
dnl Process this file with autoconf to produce a configure script.
|
|
|
|
dnl
|
|
|
|
|
|
|
|
AC_PREREQ(2.13)
|
|
|
|
AC_INIT(z8k-dis.c)
|
|
|
|
|
|
|
|
AC_CANONICAL_SYSTEM
|
|
|
|
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 06:43:56 +00:00
|
|
|
BFD_VERSION=`sed -n -e 's/^.._INIT_AUTOMAKE.*,[ ]*\([^ ]*\)[ ]*).*/\1/p' < ${srcdir}/../bfd/configure.in`
|
1999-05-03 07:29:11 +00:00
|
|
|
changequote([,])dnl
|
|
|
|
|
|
|
|
AM_INIT_AUTOMAKE(opcodes, ${BFD_VERSION})
|
|
|
|
|
|
|
|
dnl These must be called before AM_PROG_LIBTOOL, because it may want
|
|
|
|
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.
|
|
|
|
AM_DISABLE_SHARED
|
|
|
|
|
|
|
|
AM_PROG_LIBTOOL
|
|
|
|
|
|
|
|
AC_ARG_ENABLE(targets,
|
|
|
|
[ --enable-targets alternative target configurations],
|
|
|
|
[case "${enableval}" in
|
|
|
|
yes | "") AC_ERROR(enable-targets option must specify target names or 'all')
|
|
|
|
;;
|
|
|
|
no) enable_targets= ;;
|
|
|
|
*) enable_targets=$enableval ;;
|
|
|
|
esac])dnl
|
|
|
|
AC_ARG_ENABLE(commonbfdlib,
|
|
|
|
[ --enable-commonbfdlib build shared BFD/opcodes/libiberty library],
|
|
|
|
[case "${enableval}" in
|
|
|
|
yes) commonbfdlib=true ;;
|
|
|
|
no) commonbfdlib=false ;;
|
|
|
|
*) AC_MSG_ERROR([bad value ${enableval} for opcodes commonbfdlib option]) ;;
|
|
|
|
esac])dnl
|
|
|
|
|
2001-08-10 10:56:47 +00:00
|
|
|
build_warnings="-W -Wall -Wstrict-prototypes -Wmissing-prototypes"
|
2000-04-09 12:17:43 +00:00
|
|
|
AC_ARG_ENABLE(build-warnings,
|
|
|
|
[ --enable-build-warnings Enable build-time compiler warnings if gcc is used],
|
|
|
|
[case "${enableval}" in
|
|
|
|
yes) ;;
|
|
|
|
no) build_warnings="-w";;
|
|
|
|
,*) t=`echo "${enableval}" | sed -e "s/,/ /g"`
|
|
|
|
build_warnings="${build_warnings} ${t}";;
|
|
|
|
*,) t=`echo "${enableval}" | sed -e "s/,/ /g"`
|
|
|
|
build_warnings="${t} ${build_warnings}";;
|
|
|
|
*) build_warnings=`echo "${enableval}" | sed -e "s/,/ /g"`;;
|
|
|
|
esac
|
|
|
|
if test x"$silent" != x"yes" && test x"$build_warnings" != x""; then
|
|
|
|
echo "Setting warning flags = $build_warnings" 6>&1
|
|
|
|
fi])dnl
|
|
|
|
WARN_CFLAGS=""
|
|
|
|
if test "x${build_warnings}" != x -a "x$GCC" = xyes ; then
|
|
|
|
WARN_CFLAGS="${build_warnings}"
|
|
|
|
fi
|
|
|
|
AC_SUBST(WARN_CFLAGS)
|
|
|
|
|
1999-05-03 07:29:11 +00:00
|
|
|
AM_CONFIG_HEADER(config.h:config.in)
|
|
|
|
|
|
|
|
if test -z "$target" ; then
|
|
|
|
AC_MSG_ERROR(Unrecognized target system type; please check config.sub.)
|
|
|
|
fi
|
|
|
|
|
|
|
|
AM_MAINTAINER_MODE
|
2002-05-17 10:34:29 +00:00
|
|
|
AM_INSTALL_LIBBFD
|
1999-05-03 07:29:11 +00:00
|
|
|
AC_EXEEXT
|
|
|
|
|
|
|
|
# host-specific stuff:
|
|
|
|
|
|
|
|
AC_PROG_CC
|
|
|
|
|
2002-07-23 09:58:05 +00:00
|
|
|
ALL_LINGUAS="fr sv tr es da de id pt_BR"
|
1999-05-03 07:29:11 +00:00
|
|
|
CY_GNU_GETTEXT
|
|
|
|
|
|
|
|
. ${srcdir}/../bfd/configure.host
|
|
|
|
|
2001-09-18 15:41:33 +00:00
|
|
|
BFD_CC_FOR_BUILD
|
|
|
|
|
1999-05-03 07:29:11 +00:00
|
|
|
AC_SUBST(HDEFINES)
|
|
|
|
AC_PROG_INSTALL
|
|
|
|
|
|
|
|
AC_CHECK_HEADERS(string.h strings.h stdlib.h)
|
|
|
|
|
2000-07-29 00:33:34 +00: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 07:29:11 +00:00
|
|
|
|
|
|
|
using_cgen=no
|
|
|
|
|
|
|
|
# Horrible hacks to build DLLs on Windows.
|
|
|
|
WIN32LDFLAGS=
|
|
|
|
WIN32LIBADD=
|
|
|
|
case "${host}" in
|
|
|
|
*-*-cygwin*)
|
|
|
|
if test "$enable_shared" = "yes"; then
|
|
|
|
WIN32LDFLAGS="-no-undefined"
|
|
|
|
WIN32LIBADD="-L`pwd`/../bfd -lbfd -L`pwd`/../libiberty -liberty -L`pwd`/../intl -lintl -lcygwin"
|
|
|
|
fi
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
AC_SUBST(WIN32LDFLAGS)
|
|
|
|
AC_SUBST(WIN32LIBADD)
|
|
|
|
|
|
|
|
# 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-14 23:29:35 +00:00
|
|
|
result=`$ac_config_sub $targ 2>/dev/null`
|
1999-05-03 07:29:11 +00: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.
|
|
|
|
|
|
|
|
cgen_files="cgen-opc.lo cgen-asm.lo cgen-dis.lo"
|
|
|
|
|
|
|
|
# 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_a29k_arch) ta="$ta a29k-dis.lo" ;;
|
|
|
|
bfd_alliant_arch) ;;
|
|
|
|
bfd_alpha_arch) ta="$ta alpha-dis.lo alpha-opc.lo" ;;
|
2001-01-11 21:20:20 +00:00
|
|
|
bfd_arc_arch) ta="$ta arc-dis.lo arc-opc.lo arc-ext.lo" ;;
|
1999-05-03 07:29:11 +00:00
|
|
|
bfd_arm_arch) ta="$ta arm-dis.lo" ;;
|
2000-03-27 08:39:14 +00:00
|
|
|
bfd_avr_arch) ta="$ta avr-dis.lo" ;;
|
1999-05-03 07:29:11 +00:00
|
|
|
bfd_convex_arch) ;;
|
2000-07-20 16:46:28 +00:00
|
|
|
bfd_cris_arch) ta="$ta cris-dis.lo cris-opc.lo" ;;
|
1999-05-03 07:29:11 +00: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 14:08:47 +00:00
|
|
|
bfd_dlx_arch) ta="$ta dlx-dis.lo" ;;
|
1999-05-03 07:29:11 +00:00
|
|
|
bfd_fr30_arch) ta="$ta fr30-asm.lo fr30-desc.lo fr30-dis.lo fr30-ibld.lo fr30-opc.lo" using_cgen=yes ;;
|
|
|
|
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 13:52:23 +00:00
|
|
|
bfd_i370_arch) ta="$ta i370-dis.lo i370-opc.lo" ;;
|
1999-05-03 07:29:11 +00:00
|
|
|
bfd_i386_arch) ta="$ta i386-dis.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 21:10:20 +00:00
|
|
|
bfd_i860_arch) ta="$ta i860-dis.lo" ;;
|
1999-05-03 07:29:11 +00:00
|
|
|
bfd_i960_arch) ta="$ta i960-dis.lo" ;;
|
2000-04-21 20:22:24 +00:00
|
|
|
bfd_ia64_arch) ta="$ta ia64-dis.lo ia64-opc.lo" ;;
|
2002-07-19 07:52:40 +00:00
|
|
|
bfd_ip2k_arch) ta="$ta ip2k-asm.lo ip2k-desc.lo ip2k-dis.lo ip2k-ibld.lo ip2k-opc.lo" using_cgen=yes ;;
|
1999-05-03 07:29:11 +00: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 01:22:44 +00: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 07:29:11 +00: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" ;;
|
|
|
|
bfd_mips_arch) ta="$ta mips-dis.lo mips-opc.lo mips16-opc.lo" ;;
|
2001-10-30 15:20:14 +00:00
|
|
|
bfd_mmix_arch) ta="$ta mmix-dis.lo mmix-opc.lo" ;;
|
1999-05-03 07:29:11 +00:00
|
|
|
bfd_mn10200_arch) ta="$ta m10200-dis.lo m10200-opc.lo" ;;
|
|
|
|
bfd_mn10300_arch) ta="$ta m10300-dis.lo m10300-opc.lo" ;;
|
2002-12-30 19:25:13 +00:00
|
|
|
bfd_msp430_arch) ta="$ta msp430-dis.lo" ;;
|
1999-05-03 07:29:11 +00:00
|
|
|
bfd_ns32k_arch) ta="$ta ns32k-dis.lo" ;;
|
2001-04-27 13:34:20 +00: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 17:33:08 +00:00
|
|
|
bfd_or32_arch) ta="$ta or32-dis.lo or32-opc.lo" using_cgen=yes ;;
|
2001-02-18 23:33:11 +00:00
|
|
|
bfd_pdp11_arch) ta="$ta pdp11-dis.lo pdp11-opc.lo" ;;
|
1999-09-04 17:14:37 +00:00
|
|
|
bfd_pj_arch) ta="$ta pj-dis.lo pj-opc.lo" ;;
|
1999-05-03 07:29:11 +00:00
|
|
|
bfd_powerpc_arch) ta="$ta ppc-dis.lo ppc-opc.lo" ;;
|
2001-02-10 00:58:38 +00:00
|
|
|
bfd_powerpc_64_arch) ta="$ta ppc-dis.lo ppc-opc.lo" ;;
|
2001-06-10 14:07:12 +00:00
|
|
|
bfd_pyramid_arch) ;;
|
1999-05-03 07:29:11 +00:00
|
|
|
bfd_romp_arch) ;;
|
|
|
|
bfd_rs6000_arch) ta="$ta ppc-dis.lo ppc-opc.lo" ;;
|
2001-02-10 00:58:38 +00:00
|
|
|
bfd_s390_arch) ta="$ta s390-dis.lo s390-opc.lo" ;;
|
2000-12-16 22:01:44 +00: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 05:51:04 +00:00
|
|
|
# We can't decide what we want just from the CPU family.
|
2002-02-09 03:25:25 +00:00
|
|
|
# We want SH5 support unless a specific version of sh is
|
|
|
|
# specified, as in sh3-elf, sh3b-linux-gnu, etc.
|
2002-02-10 20:40:56 +00: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 02:57:44 +00:00
|
|
|
all | sh5*-* | sh64*-* | sh-*-*elf* | shl*-*-*elf* | \
|
2002-05-13 15:39:44 +00: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 05:51:04 +00:00
|
|
|
ta="$ta sh64-dis.lo sh64-opc.lo"
|
2002-02-10 20:40:56 +00:00
|
|
|
archdefs="$archdefs -DINCLUDE_SHMEDIA"
|
|
|
|
break;;
|
|
|
|
esac;
|
|
|
|
done
|
2000-12-16 22:01:44 +00:00
|
|
|
ta="$ta sh-dis.lo" ;;
|
1999-05-03 07:29:11 +00:00
|
|
|
bfd_sparc_arch) ta="$ta sparc-dis.lo sparc-opc.lo" ;;
|
|
|
|
bfd_tahoe_arch) ;;
|
|
|
|
bfd_tic30_arch) ta="$ta tic30-dis.lo" ;;
|
2002-08-28 10:38:51 +00:00
|
|
|
bfd_tic4x_arch) ta="$ta tic4x-dis.lo" ;;
|
2000-05-06 17:14:34 +00:00
|
|
|
bfd_tic54x_arch) ta="$ta tic54x-dis.lo tic54x-opc.lo" ;;
|
1999-05-03 07:29:11 +00: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) ;;
|
2001-12-08 03:46:03 +00:00
|
|
|
bfd_xstormy16_arch) ta="$ta xstormy16-asm.lo xstormy16-desc.lo xstormy16-dis.lo xstormy16-ibld.lo xstormy16-opc.lo" using_cgen=yes ;;
|
1999-05-03 07:29:11 +00:00
|
|
|
bfd_z8k_arch) ta="$ta z8k-dis.lo" ;;
|
2002-06-18 21:21:05 +00:00
|
|
|
bfd_frv_arch) ta="$ta frv-asm.lo frv-desc.lo frv-dis.lo frv-ibld.lo frv-opc.lo" using_cgen=yes ;;
|
1999-05-03 07:29:11 +00:00
|
|
|
|
|
|
|
"") ;;
|
|
|
|
*) 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)
|
|
|
|
|
|
|
|
AC_OUTPUT(Makefile po/Makefile.in:po/Make-in,
|
|
|
|
[sed -e '/POTFILES =/r po/POTFILES' po/Makefile.in > po/Makefile])
|