diff -uprN binutils-2.15.90.0.3/ChangeLog binutils-2.15.91.0.1/ChangeLog --- binutils-2.15.90.0.3/ChangeLog 2004-04-12 12:56:32.000000000 -0700 +++ binutils-2.15.91.0.1/ChangeLog 2004-05-27 11:26:01.421587005 -0700 @@ -1,3 +1,142 @@ +2004-05-25 Daniel Jacobowitz + + * Makefile.tpl (BUILD_EXPORTS, HOST_EXPORTS, GCC_HOST_EXPORTS) + (STAGE_HOST_EXPORTS, BASE_TARGET_EXPORTS, RAW_CXX_TARGET_EXPORTS) + (NORMAL_TARGET_EXPORTS): New macros. Use them in all the recursive + targets. + * Makefile.in: Regenerate. + +2005-05-24 Paolo Bonzini + + * configure.in: Test the ability to symlink directories. + * configure: Regenerate. + + * Makefile.def (bootstrap-stage): New definitions. + * Makefile.tpl (configure-stage1-gcc, + configure-stage2-gcc, configure-stage3-gcc, + all-stage1-gcc, all-stage2-gcc, all-stage3-gcc, + new-bootstrap, new-cleanstrap, new-restage1, new-restage2, + new-restage3, compare): Autogenerate, see Makefile.in + entry for behavioral changes. + (distclean-stage1, new-stage1-start, new-stage1-end, + new-stage1-bubble, distclean-stage2, new-stage2-start, + new-stage2-end, new-stage2-bubble, distclean-stage3, + new-stage3-start, new-stage3-end): New autogenerated targets. + (objext, prebootstrap, BOOT_CFLAGS, + POSTSTAGE1_FLAGS_TO_PASS): Move above the autogenerated + targets. + + * Makefile.in: Regenerate. + (distclean-stage1, new-stage1-start, new-stage1-end, + new-stage1-bubble, distclean-stage2, new-stage2-start, + new-stage2-end, new-stage2-bubble, distclean-stage3, + new-stage3-start, new-stage3-end): New targets. + (all-stage1-gcc): Move prebootstrap dependency from here... + (configure-stage1-gcc): ...to here. + (new-bootstrap): Use bubble targets. + (new-cleanstrap, new-restage1, new-restage2, new-restage3): + Use per-stage distclean targets. + (configure-stage1-gcc, configure-stage2-gcc, + configure-stage3-gcc, all-stage1-gcc, + all-stage2-gcc, all-stage3-gcc, new-bootstrap): + Use new-stageN-start to prepare the tree. + +2004-05-23 Paolo Bonzini + + * Makefile.def (host_modules): add libcpp. + * Makefile.tpl: Add dependencies on and for libcpp. + * Makefile.in: Regenerate. + * configure.in: Add libcpp host module. + * configure: Regenerate. + +2004-05-17 Zack Weinberg + + * Makefile.def, Makefile.tpl, configure.in: Remove all mention + of libf2c. + * configure, Makefile.in: Regenerate. + +2004-05-13 Diego Novillo + + Merge from tree-ssa-20020619-branch. + + * Makefile.def: Add libbanshee, libmudflap and libgfortran. + * Makefile.tpl (BUILD_CONFIGDIRS): Add libbanshee. + (HOST_GMPLIBS): Define. + (HOST_GMPINC): Define. + (TARGET_LIB_PATH): Add libmudflap. + (GFORTRAN_FOR_TARGET): Define. + (configure-build*): Export GFORTRAN. + (configure-gcc): Export GMPLIBS and GMPINC. + (all-gcc): Add maybe-all-libbanshee. + (configure-target-libgfortran): Define. + * Makefile.in: Regenerate. + * configure.in (host_libs): Add libbanshee. + (target_libraries): Add target-libmudflap and target-libgfortran. + Add --with-libbanshee. + Handle --disable-libmudflap. + (*-*-freebsd*): Use with_gmp. + Add $(libgcj) to noconfigdirs. + * configure: Regenerate. + * depcomp: New file. + * MAINTAINERS: Add tree-ssa maintainers. + +2004-04-28 Paolo Bonzini + + * config/acx.m4: Fix fastcompare support for new-bootstrap. + * configure: Regenerate. + +2004-04-27 Paolo Bonzini + + Revert: + 2004-04-26 Paolo Bonzini + + * Makefile.def (flags_to_pass): Remove *dir variables that + are passed to the modules via TOPLEVEL_CONFIGURE_ARGUMENTS, + as well as prefix and exec_prefix. + * Makefile.in: Regenerate. + +2004-04-26 Paolo Bonzini + + * Makefile.def (host_modules): Mark with the bootstrap + flag packages on which gcc depends. + * Makefile.tpl (all-bootstrap): Use it. + * Makefile.in: Regenerate. + +2004-04-26 Paolo Bonzini + + * Makefile.def (flags_to_pass): Remove *dir variables that + are passed to the modules via TOPLEVEL_CONFIGURE_ARGUMENTS, + as well as prefix and exec_prefix. + * Makefile.in: Regenerate. + +2004-04-26 Paolo Bonzini + + * configure.in: Invoke ACX_PROG_CMP_IGNORE_INITIAL. + * configure: Regenerate. + * config/acx.m4: Mutuate ACX_PROG_CMP_IGNORE_INITIAL from gcc. + * gcc/Makefile.tpl (compare): Use the result of the test. + * gcc/Makefile.in: Regenerate. + +2004-04-23 Paolo Bonzini + + * Makefile.tpl (all-stage1-gcc, all-stage2-gcc, all-stage3-gcc): + Always relocate gcc and prev-gcc to the original names, even + if the build fails. + (new-cleanstrap, new-restage1, new-restage2, new-restage3): + New targets. + +2004-04-19 Rainer Orth + + * configure.in (mips*-*-irix5*): Enable ld. + * configure: Regenerate. + +2004-04-15 James E Wilson + + * Makefile.tpl (configure-[+module+], configure-gcc, + configure-stage1-gcc, configure-stage2-gcc, configure-stage3-gcc): + Set and export LDFLAGS. + * Makefile.in: Regenerate. + 2004-04-09 Nathanael Nerode PR bootstrap/14871 @@ -20,9 +159,9 @@ 2004-04-06 David Edelsohn - * configure.in (powerpc-*-aix*): Remove target-libada from noconfigdirs. - (rs6000-*-aix*): Same. - * configure: Regenerate. + * configure.in (powerpc-*-aix*): Remove target-libada from noconfigdirs. + (rs6000-*-aix*): Same. + * configure: Regenerate. 2004-03-25 Stan Shebs @@ -86,10 +225,10 @@ * Makefile.in: Regenerate. 2004-03-15 Paolo Bonzini - Nathanael Nerode + Nathanael Nerode * configure.in (DEFAULT_YACC, DEFAULT_M4, DEFAULT_LEX): - Set with AC_CHECK_PROGS. + Set with AC_CHECK_PROGS. * configure.in: Fix comment typo from last patch. * configure: Regenerate. @@ -101,14 +240,14 @@ * configure: Regenerate. 2004-03-12 Eric Botcazou - Paolo Bonzini + Paolo Bonzini PR bootstrap/14522 * configure.in: Cope with shells that do not support unquoted ^ * configure: Regenerate. 2004-03-11 Eric Botcazou - Paolo Bonzini + Paolo Bonzini PR bootstrap/14522 * configure.in: Cope with shell that do not support nesting @@ -183,7 +322,7 @@ Nathanael Nerode PR ada/6637, PR ada/5911 - Merge with libada-branch: + Merge with libada-branch: * configure.in, Makefile.tpl, Makefile.def: Add target-libada, with appropriate dependencies. Add --enable-libada configure switch. * configure, Makefile.in: Regenerate. @@ -196,14 +335,14 @@ 2004-02-02 Jeff Johnston * COPYING.NEWLIB: Update Red Hat license to 2004. - + 2004-01-23 DJ Delorie * Makefile.def (target_modules) [libiberty]: Don't stage. * Makefile.in: Rebuilt. 2004-01-23 Jeff Johnston - + * COPYING.NEWLIB: Update to include copyrights for new iconv code. @@ -255,7 +394,7 @@ * configure: Regenerated. 2003-12-21 Bernardo Innocenti - + * configure.in (*-*-uclinux): Exclude newlib, libgloss and rda. * configure: Regenerated. @@ -275,7 +414,7 @@ 2003-11-27 Jeff Johnston - * COPYING.NEWLIB: Add license info for long long routines added to + * COPYING.NEWLIB: Add license info for long long routines added to stdlib. 2003-11-14 Arnaud Charlet @@ -355,7 +494,7 @@ 2003-09-04 Robert Millan * configure.in: Match GNU/KFreeBSD with new kfreebsd*-gnu triplet. - + 2003-09-02 Kaveh R. Ghazi * configure.in: Ensure arguments to sed are properly spaced. @@ -386,7 +525,7 @@ * configure.in: When testing with_libs and with_headers, treat 'no' as unset. Based on a patch by Dan Kegel . * configure: Regenerate. - + * configure.in (TOPLEVEL_CONFIGURE_ARGUMENTS): Quote properly for make, shell, etc. (baseargs): Likewise. @@ -518,14 +657,14 @@ * configure.in: Update testsuite_flags to new location. * configure. Regenerate. - + 2003-06-18 Nathanael Nerode * Makefile.tpl: Remove BUILD_CC stuff. * Makefile.in: Regenerate. 2003-06-14 H.J. Lu - + * config.guess: Update to 2003-06-12 version. * config.sub: Update to 2003-06-13 version. @@ -534,7 +673,7 @@ * MAINTAINERS: Add myself as MIPS co-maintainer. 2003-06-12 H.J. Lu - + * config.guess: Update to 2003-06-06 version. * config.sub: Update to 2003-06-06 version. @@ -599,10 +738,10 @@ 2003-05-28 Jeff Johnston - * COPYING.NEWLIB: Add license info for newlib/libc/sys/linux/stdlib. + * COPYING.NEWLIB: Add license info for newlib/libc/sys/linux/stdlib. 2003-05-21 DJ Delorie - + * Makefile.tpl (configure-target-libiberty): Depend only on gcc, not newlib or libgloss. * Makefile.in: Regenerate. @@ -620,7 +759,7 @@ 2003-05-19 Nathanael Nerode * configure.in: Switch more things to use maybe dependencies. - * Makefile.tpl: Switch more things to use maybe dependencies. + * Makefile.tpl: Switch more things to use maybe dependencies. Factor out common code from autogen IF statements. * configure: Regenerate. * Makefile.in: Regenerate. @@ -666,8 +805,8 @@ 2003-05-02 Chris Demetriou - * Makefile.tpl: Require "makeinfo" from texinfo 4.2 or later. - * Makefile.in: Regenerate. + * Makefile.tpl: Require "makeinfo" from texinfo 4.2 or later. + * Makefile.in: Regenerate. 2003-04-27 Daniel Jacobowitz @@ -914,8 +1053,8 @@ 2003-01-07 Christopher Faylor - * configure.in: Add AC_PREREQ for consistency. - * configure: Regenerate. + * configure.in: Add AC_PREREQ for consistency. + * configure: Regenerate. 2003-01-06 Andrew Cagney @@ -1086,9 +1225,9 @@ 2002-12-12 Jeff Johnston - * COPYING.NEWLIB: Update list of alternate Regent of California - licenses and discuss official revoking of advertising clause. - * COPYING.LIBGLOSS: Ditto. + * COPYING.NEWLIB: Update list of alternate Regent of California + licenses and discuss official revoking of advertising clause. + * COPYING.LIBGLOSS: Ditto. 2002-12-12 Alexandre Oliva @@ -3207,7 +3346,7 @@ Thu Jul 8 12:32:23 1999 John David Ang Bad merge removed these two changes. Tue Apr 13 22:50:54 1999 Donn Terry (donn@interix.com) - Martin Heller (Ing.-Buero_Heller@t-online.de) + Martin Heller (Ing.-Buero_Heller@t-online.de) * config.guess (interix Alpha): Add. @@ -5516,8 +5655,8 @@ Mon Jun 24 15:01:12 1996 Joel Sherrill Sun Jun 23 22:41:54 1996 Geoffrey Noer * configure.in: enable dosrel for cygwin32-hosted builds, - remove diff from the list of things not buildable - via Canadian Cross + remove diff from the list of things not buildable + via Canadian Cross Sat Jun 22 11:39:01 1996 Jason Merrill diff -uprN binutils-2.15.90.0.3/Makefile.def binutils-2.15.91.0.1/Makefile.def --- binutils-2.15.90.0.3/Makefile.def 2004-03-03 12:24:33.000000000 -0800 +++ binutils-2.15.91.0.1/Makefile.def 2004-05-27 11:26:01.451583126 -0700 @@ -25,6 +25,7 @@ AutoGen definitions Makefile.tpl; // that recursive target in its Makefile. build_modules= { module= libiberty; }; +build_modules= { module= libbanshee; }; host_modules= { module= ash; }; host_modules= { module= autoconf; }; @@ -32,9 +33,9 @@ host_modules= { module= automake; }; host_modules= { module= bash; }; host_modules= { module= bfd; }; host_modules= { module= opcodes; }; -host_modules= { module= binutils; }; -host_modules= { module= bison; no_check_cross= true; }; -host_modules= { module= byacc; no_check_cross= true; }; +host_modules= { module= binutils; bootstrap=true; }; +host_modules= { module= bison; no_check_cross= true; bootstrap=true; }; +host_modules= { module= byacc; no_check_cross= true; bootstrap=true; }; host_modules= { module= bzip2; }; host_modules= { module= dejagnu; }; host_modules= { module= diff; }; @@ -45,7 +46,7 @@ host_modules= { module= fileutils; }; host_modules= { module= findutils; }; host_modules= { module= find; }; host_modules= { module= flex; no_check_cross= true; }; -host_modules= { module= gas; }; +host_modules= { module= gas; bootstrap=true; }; host_modules= { module= gawk; }; host_modules= { module= gettext; }; host_modules= { module= gnuserv; }; @@ -53,13 +54,15 @@ host_modules= { module= gprof; }; host_modules= { module= gzip; }; host_modules= { module= hello; }; host_modules= { module= indent; }; -host_modules= { module= intl; }; +host_modules= { module= intl; bootstrap=true; }; host_modules= { module= tcl; missing=mostlyclean; }; host_modules= { module= itcl; }; -host_modules= { module= ld; }; +host_modules= { module= ld; bootstrap=true; }; +host_modules= { module= libcpp; bootstrap=true; }; host_modules= { module= libgui; }; -host_modules= { module= libiberty; }; +host_modules= { module= libbanshee; bootstrap=true; no_install=true; }; +host_modules= { module= libiberty; bootstrap=true; }; host_modules= { module= libtool; }; host_modules= { module= m4; }; host_modules= { module= make; }; @@ -77,13 +80,13 @@ host_modules= { module= shellutils; }; host_modules= { module= sid; }; host_modules= { module= sim; }; host_modules= { module= tar; }; -host_modules= { module= texinfo; no_install= true; }; +host_modules= { module= texinfo; no_install= true; bootstrap=true; }; host_modules= { module= textutils; }; host_modules= { module= time; }; host_modules= { module= uudecode; }; host_modules= { module= wdiff; }; host_modules= { module= zip; no_check_cross=true; }; -host_modules= { module= zlib; no_install=true; no_check=true; }; +host_modules= { module= zlib; no_install=true; no_check=true; bootstrap=true; }; host_modules= { module= gdb; with_x=true; }; host_modules= { module= expect; with_x=true; }; host_modules= { module= guile; with_x=true; }; @@ -97,8 +100,9 @@ host_modules= { module= libtermcap; no_c host_modules= { module= utils; no_check=true; }; target_modules = { module= libstdc++-v3; raw_cxx=true; }; +target_modules = { module= libmudflap; }; target_modules = { module= newlib; }; -target_modules = { module= libf2c; }; +target_modules = { module= libgfortran; }; target_modules = { module= libobjc; }; target_modules = { module= libtermcap; no_check=true; stage=true; missing=mostlyclean; @@ -202,9 +206,28 @@ flags_to_pass = { flag= CXX_FOR_TARGET ; flags_to_pass = { flag= CXXFLAGS_FOR_TARGET ; }; flags_to_pass = { flag= DLLTOOL_FOR_TARGET ; }; flags_to_pass = { flag= GCJ_FOR_TARGET ; }; +flags_to_pass = { flag= GFORTRAN_FOR_TARGET ; }; flags_to_pass = { flag= LD_FOR_TARGET ; }; flags_to_pass = { flag= LIBCFLAGS_FOR_TARGET ; }; flags_to_pass = { flag= LIBCXXFLAGS_FOR_TARGET ; }; flags_to_pass = { flag= NM_FOR_TARGET ; }; flags_to_pass = { flag= RANLIB_FOR_TARGET ; }; flags_to_pass = { flag= WINDRES_FOR_TARGET ; }; + +// Toplevel bootstrap +bootstrap_stage = { + id=1 ; next=2 ; + extra_configure_flags='--disable-intermodule \ + --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)"' ; + extra_make_flags='CFLAGS="$(STAGE1_CFLAGS)"' ; }; +bootstrap_stage = { + id=2 ; prev=1 ; next=3 ; + extra_configure_flags="@stage2_werror_flag@" ; + extra_make_flags="$(POSTSTAGE1_FLAGS_TO_PASS)" ; }; +bootstrap_stage = { + id=3 ; prev=2 ; + compare_target=compare ; + bootstrap_target=new-bootstrap ; + cleanstrap_target=new-cleanstrap ; + extra_configure_flags="@stage2_werror_flag@" ; + extra_make_flags="$(POSTSTAGE1_FLAGS_TO_PASS)" ; }; diff -uprN binutils-2.15.90.0.3/Makefile.in binutils-2.15.91.0.1/Makefile.in --- binutils-2.15.90.0.3/Makefile.in 2004-04-12 12:56:32.000000000 -0700 +++ binutils-2.15.91.0.1/Makefile.in 2004-05-27 11:26:01.635559334 -0700 @@ -3,7 +3,7 @@ # # Makefile for directory with subdirs to build. # Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, -# 1999, 2000, 2001, 2002, 2003 Free Software Foundation +# 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation # # This file is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -102,18 +102,72 @@ REALLY_SET_LIB_PATH = \ $(RPATH_ENVVAR)=`echo "$(HOST_LIB_PATH):$(TARGET_LIB_PATH):$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR); # This is the list of directories to be built for the build system. -BUILD_CONFIGDIRS = libiberty +BUILD_CONFIGDIRS = libiberty libbanshee # Build programs are put under this directory. BUILD_SUBDIR = @build_subdir@ # This is set by the configure script to the arguments to use when configuring # directories built for the build system. BUILD_CONFIGARGS = @build_configargs@ +# This is the list of variables to export in the environment when +# configuring subdirectories for the build system. It must also be +# exported whenever recursing into a build directory in case that +# directory's Makefile re-runs configure. +BUILD_EXPORTS = \ + AR="$(AR_FOR_BUILD)"; export AR; \ + AS="$(AS_FOR_BUILD)"; export AS; \ + CC="$(CC_FOR_BUILD)"; export CC; \ + CFLAGS="$(CFLAGS_FOR_BUILD)"; export CFLAGS; \ + CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ + CXX="$(CXX_FOR_BUILD)"; export CXX; \ + CXXFLAGS="$(CXXFLAGS_FOR_BUILD)"; export CXXFLAGS; \ + GCJ="$(GCJ_FOR_BUILD)"; export GCJ; \ + GFORTRAN="$(GFORTRAN_FOR_BUILD)"; export GFORTRAN; \ + DLLTOOL="$(DLLTOOL_FOR_BUILD)"; export DLLTOOL; \ + LD="$(LD_FOR_BUILD)"; export LD; \ + LDFLAGS="$(LDFLAGS_FOR_BUILD)"; export LDFLAGS; \ + NM="$(NM_FOR_BUILD)"; export NM; \ + RANLIB="$(RANLIB_FOR_BUILD)"; export RANLIB; \ + WINDRES="$(WINDRES_FOR_BUILD)"; export WINDRES; # This is the list of directories to built for the host system. SUBDIRS = @configdirs@ # This is set by the configure script to the arguments to use when configuring # directories built for the host system. HOST_CONFIGARGS = @host_configargs@ +# This is the list of variables to export in the environment when +# configuring subdirectories for the host system. It must also be +# exported whenever recursing into a host directory in case that +# directory's Makefile re-runs configure. +HOST_EXPORTS = \ + CC="$(CC)"; export CC; \ + CFLAGS="$(CFLAGS)"; export CFLAGS; \ + CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ + CXX="$(CXX)"; export CXX; \ + CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ + AR="$(AR)"; export AR; \ + AS="$(AS)"; export AS; \ + CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ + DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ + LD="$(LD)"; export LD; \ + LDFLAGS="$(LDFLAGS)"; export LDFLAGS; \ + NM="$(NM)"; export NM; \ + RANLIB="$(RANLIB)"; export RANLIB; \ + WINDRES="$(WINDRES)"; export WINDRES; \ + OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ + OBJDUMP="$(OBJDUMP)"; export OBJDUMP; + +# Similar, for the gcc directory. +GCC_HOST_EXPORTS = \ + $(HOST_EXPORTS) \ + TOPLEVEL_CONFIGURE_ARGUMENTS="$(TOPLEVEL_CONFIGURE_ARGUMENTS)"; export TOPLEVEL_CONFIGURE_ARGUMENTS; \ + GMPLIBS="$(HOST_GMPLIBS)"; export GMPLIBS; \ + GMPINC="$(HOST_GMPINC)"; export GMPINC; + +# Similar, for later GCC stages. +STAGE_HOST_EXPORTS = \ + $(GCC_HOST_EXPORTS) \ + CC="$(STAGE_CC_WRAPPER) $$r/prev-gcc/xgcc$(exeext) -B$$r/prev-gcc/ -B$(build_tooldir)/bin/"; export CC; \ + CC_FOR_BUILD="$(STAGE_CC_WRAPPER) $$r/prev-gcc/xgcc$(exeext) -B$$r/prev-gcc/ -B$(build_tooldir)/bin/"; export CC_FOR_BUILD; # This is set by the configure script to the list of directories which # should be built using the target tools. @@ -123,6 +177,39 @@ TARGET_SUBDIR = @target_subdir@ # This is set by the configure script to the arguments to use when configuring # directories built for the target. TARGET_CONFIGARGS = @target_configargs@ +# This is the list of variables to export in the environment when +# configuring subdirectories for the host system. It must also be +# exported whenever recursing into a host directory in case that +# directory's Makefile re-runs configure. +BASE_TARGET_EXPORTS = \ + AR="$(AR_FOR_TARGET)"; export AR; \ + AS="$(AS_FOR_TARGET)"; export AS; \ + CC="$(CC_FOR_TARGET)"; export CC; \ + CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \ + CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ + CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \ + CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \ + GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \ + GFORTRAN="$(GFORTRAN_FOR_TARGET)"; export GFORTRAN; \ + DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \ + LD="$(LD_FOR_TARGET)"; export LD; \ + LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \ + NM="$(NM_FOR_TARGET)"; export NM; \ + RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \ + WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; + +RAW_CXX_TARGET_EXPORTS = \ + $(BASE_TARGET_EXPORTS) \ + CXX_FOR_TARGET="$(RAW_CXX_FOR_TARGET)"; export CXX_FOR_TARGET; \ + CXX="$(RAW_CXX_FOR_TARGET)"; export CXX; + +NORMAL_TARGET_EXPORTS = \ + $(BASE_TARGET_EXPORTS) \ + CXX="$(CXX_FOR_TARGET)"; export CXX; + +# Where to find GMP +HOST_GMPLIBS = @gmplibs@ +HOST_GMPINC = @gmpinc@ # ---------------------------------------------- # Programs producing files for the BUILD machine @@ -241,7 +328,7 @@ PICFLAG = # This is the list of directories that may be needed in RPATH_ENVVAR # so that prorgams built for the target machine work. -TARGET_LIB_PATH = $$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs: +TARGET_LIB_PATH = $$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs:$$r/$(TARGET_SUBDIR)/libmudflap/.libs FLAGS_FOR_TARGET = @FLAGS_FOR_TARGET@ @@ -308,6 +395,7 @@ USUAL_DLLTOOL_FOR_TARGET = ` \ fi` GCJ_FOR_TARGET = @GCJ_FOR_TARGET@ +GFORTRAN_FOR_TARGET = @GFORTRAN_FOR_TARGET@ LD_FOR_TARGET=@LD_FOR_TARGET@ CONFIGURED_LD_FOR_TARGET=@CONFIGURED_LD_FOR_TARGET@ @@ -446,6 +534,7 @@ BASE_FLAGS_TO_PASS = \ "CXXFLAGS_FOR_TARGET=$(CXXFLAGS_FOR_TARGET)" \ "DLLTOOL_FOR_TARGET=$(DLLTOOL_FOR_TARGET)" \ "GCJ_FOR_TARGET=$(GCJ_FOR_TARGET)" \ + "GFORTRAN_FOR_TARGET=$(GFORTRAN_FOR_TARGET)" \ "LD_FOR_TARGET=$(LD_FOR_TARGET)" \ "LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \ "LIBCXXFLAGS_FOR_TARGET=$(LIBCXXFLAGS_FOR_TARGET)" \ @@ -567,7 +656,9 @@ configure-host: maybe-configure-gcc \ maybe-configure-tcl \ maybe-configure-itcl \ maybe-configure-ld \ + maybe-configure-libcpp \ maybe-configure-libgui \ + maybe-configure-libbanshee \ maybe-configure-libiberty \ maybe-configure-libtool \ maybe-configure-m4 \ @@ -603,8 +694,9 @@ configure-host: maybe-configure-gcc \ .PHONY: configure-target configure-target: \ maybe-configure-target-libstdc++-v3 \ + maybe-configure-target-libmudflap \ maybe-configure-target-newlib \ - maybe-configure-target-libf2c \ + maybe-configure-target-libgfortran \ maybe-configure-target-libobjc \ maybe-configure-target-libtermcap \ maybe-configure-target-winsup \ @@ -657,7 +749,9 @@ all-host: maybe-all-gcc \ maybe-all-tcl \ maybe-all-itcl \ maybe-all-ld \ + maybe-all-libcpp \ maybe-all-libgui \ + maybe-all-libbanshee \ maybe-all-libiberty \ maybe-all-libtool \ maybe-all-m4 \ @@ -693,8 +787,9 @@ all-host: maybe-all-gcc \ .PHONY: all-target all-target: \ maybe-all-target-libstdc++-v3 \ + maybe-all-target-libmudflap \ maybe-all-target-newlib \ - maybe-all-target-libf2c \ + maybe-all-target-libgfortran \ maybe-all-target-libobjc \ maybe-all-target-libtermcap \ maybe-all-target-winsup \ @@ -751,7 +846,9 @@ info-host: maybe-info-gcc \ maybe-info-tcl \ maybe-info-itcl \ maybe-info-ld \ + maybe-info-libcpp \ maybe-info-libgui \ + maybe-info-libbanshee \ maybe-info-libiberty \ maybe-info-libtool \ maybe-info-m4 \ @@ -788,8 +885,9 @@ info-host: maybe-info-gcc \ .PHONY: info-target info-target: \ maybe-info-target-libstdc++-v3 \ + maybe-info-target-libmudflap \ maybe-info-target-newlib \ - maybe-info-target-libf2c \ + maybe-info-target-libgfortran \ maybe-info-target-libobjc \ maybe-info-target-libtermcap \ maybe-info-target-winsup \ @@ -841,7 +939,9 @@ dvi-host: maybe-dvi-gcc \ maybe-dvi-tcl \ maybe-dvi-itcl \ maybe-dvi-ld \ + maybe-dvi-libcpp \ maybe-dvi-libgui \ + maybe-dvi-libbanshee \ maybe-dvi-libiberty \ maybe-dvi-libtool \ maybe-dvi-m4 \ @@ -878,8 +978,9 @@ dvi-host: maybe-dvi-gcc \ .PHONY: dvi-target dvi-target: \ maybe-dvi-target-libstdc++-v3 \ + maybe-dvi-target-libmudflap \ maybe-dvi-target-newlib \ - maybe-dvi-target-libf2c \ + maybe-dvi-target-libgfortran \ maybe-dvi-target-libobjc \ maybe-dvi-target-libtermcap \ maybe-dvi-target-winsup \ @@ -931,7 +1032,9 @@ TAGS-host: maybe-TAGS-gcc \ maybe-TAGS-tcl \ maybe-TAGS-itcl \ maybe-TAGS-ld \ + maybe-TAGS-libcpp \ maybe-TAGS-libgui \ + maybe-TAGS-libbanshee \ maybe-TAGS-libiberty \ maybe-TAGS-libtool \ maybe-TAGS-m4 \ @@ -968,8 +1071,9 @@ TAGS-host: maybe-TAGS-gcc \ .PHONY: TAGS-target TAGS-target: \ maybe-TAGS-target-libstdc++-v3 \ + maybe-TAGS-target-libmudflap \ maybe-TAGS-target-newlib \ - maybe-TAGS-target-libf2c \ + maybe-TAGS-target-libgfortran \ maybe-TAGS-target-libobjc \ maybe-TAGS-target-libtermcap \ maybe-TAGS-target-winsup \ @@ -1021,7 +1125,9 @@ install-info-host: maybe-install-info-gc maybe-install-info-tcl \ maybe-install-info-itcl \ maybe-install-info-ld \ + maybe-install-info-libcpp \ maybe-install-info-libgui \ + maybe-install-info-libbanshee \ maybe-install-info-libiberty \ maybe-install-info-libtool \ maybe-install-info-m4 \ @@ -1058,8 +1164,9 @@ install-info-host: maybe-install-info-gc .PHONY: install-info-target install-info-target: \ maybe-install-info-target-libstdc++-v3 \ + maybe-install-info-target-libmudflap \ maybe-install-info-target-newlib \ - maybe-install-info-target-libf2c \ + maybe-install-info-target-libgfortran \ maybe-install-info-target-libobjc \ maybe-install-info-target-libtermcap \ maybe-install-info-target-winsup \ @@ -1111,7 +1218,9 @@ installcheck-host: maybe-installcheck-gc maybe-installcheck-tcl \ maybe-installcheck-itcl \ maybe-installcheck-ld \ + maybe-installcheck-libcpp \ maybe-installcheck-libgui \ + maybe-installcheck-libbanshee \ maybe-installcheck-libiberty \ maybe-installcheck-libtool \ maybe-installcheck-m4 \ @@ -1148,8 +1257,9 @@ installcheck-host: maybe-installcheck-gc .PHONY: installcheck-target installcheck-target: \ maybe-installcheck-target-libstdc++-v3 \ + maybe-installcheck-target-libmudflap \ maybe-installcheck-target-newlib \ - maybe-installcheck-target-libf2c \ + maybe-installcheck-target-libgfortran \ maybe-installcheck-target-libobjc \ maybe-installcheck-target-libtermcap \ maybe-installcheck-target-winsup \ @@ -1201,7 +1311,9 @@ mostlyclean-host: maybe-mostlyclean-gcc maybe-mostlyclean-tcl \ maybe-mostlyclean-itcl \ maybe-mostlyclean-ld \ + maybe-mostlyclean-libcpp \ maybe-mostlyclean-libgui \ + maybe-mostlyclean-libbanshee \ maybe-mostlyclean-libiberty \ maybe-mostlyclean-libtool \ maybe-mostlyclean-m4 \ @@ -1238,8 +1350,9 @@ mostlyclean-host: maybe-mostlyclean-gcc .PHONY: mostlyclean-target mostlyclean-target: \ maybe-mostlyclean-target-libstdc++-v3 \ + maybe-mostlyclean-target-libmudflap \ maybe-mostlyclean-target-newlib \ - maybe-mostlyclean-target-libf2c \ + maybe-mostlyclean-target-libgfortran \ maybe-mostlyclean-target-libobjc \ maybe-mostlyclean-target-libtermcap \ maybe-mostlyclean-target-winsup \ @@ -1291,7 +1404,9 @@ clean-host: maybe-clean-gcc \ maybe-clean-tcl \ maybe-clean-itcl \ maybe-clean-ld \ + maybe-clean-libcpp \ maybe-clean-libgui \ + maybe-clean-libbanshee \ maybe-clean-libiberty \ maybe-clean-libtool \ maybe-clean-m4 \ @@ -1328,8 +1443,9 @@ clean-host: maybe-clean-gcc \ .PHONY: clean-target clean-target: \ maybe-clean-target-libstdc++-v3 \ + maybe-clean-target-libmudflap \ maybe-clean-target-newlib \ - maybe-clean-target-libf2c \ + maybe-clean-target-libgfortran \ maybe-clean-target-libobjc \ maybe-clean-target-libtermcap \ maybe-clean-target-winsup \ @@ -1381,7 +1497,9 @@ distclean-host: maybe-distclean-gcc \ maybe-distclean-tcl \ maybe-distclean-itcl \ maybe-distclean-ld \ + maybe-distclean-libcpp \ maybe-distclean-libgui \ + maybe-distclean-libbanshee \ maybe-distclean-libiberty \ maybe-distclean-libtool \ maybe-distclean-m4 \ @@ -1418,8 +1536,9 @@ distclean-host: maybe-distclean-gcc \ .PHONY: distclean-target distclean-target: \ maybe-distclean-target-libstdc++-v3 \ + maybe-distclean-target-libmudflap \ maybe-distclean-target-newlib \ - maybe-distclean-target-libf2c \ + maybe-distclean-target-libgfortran \ maybe-distclean-target-libobjc \ maybe-distclean-target-libtermcap \ maybe-distclean-target-winsup \ @@ -1471,7 +1590,9 @@ maintainer-clean-host: maybe-maintainer- maybe-maintainer-clean-tcl \ maybe-maintainer-clean-itcl \ maybe-maintainer-clean-ld \ + maybe-maintainer-clean-libcpp \ maybe-maintainer-clean-libgui \ + maybe-maintainer-clean-libbanshee \ maybe-maintainer-clean-libiberty \ maybe-maintainer-clean-libtool \ maybe-maintainer-clean-m4 \ @@ -1508,8 +1629,9 @@ maintainer-clean-host: maybe-maintainer- .PHONY: maintainer-clean-target maintainer-clean-target: \ maybe-maintainer-clean-target-libstdc++-v3 \ + maybe-maintainer-clean-target-libmudflap \ maybe-maintainer-clean-target-newlib \ - maybe-maintainer-clean-target-libf2c \ + maybe-maintainer-clean-target-libgfortran \ maybe-maintainer-clean-target-libobjc \ maybe-maintainer-clean-target-libtermcap \ maybe-maintainer-clean-target-winsup \ @@ -1618,7 +1740,9 @@ do-check: maybe-check-gcc \ maybe-check-tcl \ maybe-check-itcl \ maybe-check-ld \ + maybe-check-libcpp \ maybe-check-libgui \ + maybe-check-libbanshee \ maybe-check-libiberty \ maybe-check-libtool \ maybe-check-m4 \ @@ -1652,8 +1776,9 @@ do-check: maybe-check-gcc \ maybe-check-libtermcap \ maybe-check-utils \ maybe-check-target-libstdc++-v3 \ + maybe-check-target-libmudflap \ maybe-check-target-newlib \ - maybe-check-target-libf2c \ + maybe-check-target-libgfortran \ maybe-check-target-libobjc \ maybe-check-target-libtermcap \ maybe-check-target-winsup \ @@ -1728,7 +1853,9 @@ install-host-nogcc: \ maybe-install-tcl \ maybe-install-itcl \ maybe-install-ld \ + maybe-install-libcpp \ maybe-install-libgui \ + maybe-install-libbanshee \ maybe-install-libiberty \ maybe-install-libtool \ maybe-install-m4 \ @@ -1795,7 +1922,9 @@ install-host: maybe-install-gcc \ maybe-install-tcl \ maybe-install-itcl \ maybe-install-ld \ + maybe-install-libcpp \ maybe-install-libgui \ + maybe-install-libbanshee \ maybe-install-libiberty \ maybe-install-libtool \ maybe-install-m4 \ @@ -1832,8 +1961,9 @@ install-host: maybe-install-gcc \ .PHONY: install-target install-target: \ maybe-install-target-libstdc++-v3 \ + maybe-install-target-libmudflap \ maybe-install-target-newlib \ - maybe-install-target-libf2c \ + maybe-install-target-libgfortran \ maybe-install-target-libobjc \ maybe-install-target-libtermcap \ maybe-install-target-winsup \ @@ -1857,6 +1987,7 @@ install.all: install-no-fixedincludes @if [ -f ./gcc/Makefile ] ; then \ r=`${PWD_COMMAND}` ; export r ; \ $(SET_LIB_PATH) \ + $(GCC_HOST_EXPORTS) \ (cd ./gcc && \ $(MAKE) $(FLAGS_TO_PASS) install-headers) ; \ else \ @@ -1905,25 +2036,14 @@ TAGS: do-TAGS .PHONY: configure-build-libiberty maybe-configure-build-libiberty maybe-configure-build-libiberty: +@if build-libiberty +maybe-configure-build-libiberty: configure-build-libiberty configure-build-libiberty: @test ! -f $(BUILD_SUBDIR)/libiberty/Makefile || exit 0; \ $(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/libiberty ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - AR="$(AR_FOR_BUILD)"; export AR; \ - AS="$(AS_FOR_BUILD)"; export AS; \ - CC="$(CC_FOR_BUILD)"; export CC; \ - CFLAGS="$(CFLAGS_FOR_BUILD)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX_FOR_BUILD)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS_FOR_BUILD)"; export CXXFLAGS; \ - GCJ="$(GCJ_FOR_BUILD)"; export GCJ; \ - DLLTOOL="$(DLLTOOL_FOR_BUILD)"; export DLLTOOL; \ - LD="$(LD_FOR_BUILD)"; export LD; \ - LDFLAGS="$(LDFLAGS_FOR_BUILD)"; export LDFLAGS; \ - NM="$(NM_FOR_BUILD)"; export NM; \ - RANLIB="$(RANLIB_FOR_BUILD)"; export RANLIB; \ - WINDRES="$(WINDRES_FOR_BUILD)"; export WINDRES; \ + $(BUILD_EXPORTS) \ echo Configuring in $(BUILD_SUBDIR)/libiberty; \ cd "$(BUILD_SUBDIR)/libiberty" || exit 1; \ case $(srcdir) in \ @@ -1964,13 +2084,81 @@ configure-build-libiberty: $(BUILD_CONFIGARGS) $${srcdiroption} \ --with-build-subdir="$(BUILD_SUBDIR)" \ || exit 1 +@endif build-libiberty .PHONY: all-build-libiberty maybe-all-build-libiberty maybe-all-build-libiberty: +@if build-libiberty +maybe-all-build-libiberty: all-build-libiberty all-build-libiberty: configure-build-libiberty @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(BUILD_EXPORTS) \ (cd $(BUILD_SUBDIR)/libiberty && $(MAKE) all) +@endif build-libiberty + +.PHONY: configure-build-libbanshee maybe-configure-build-libbanshee +maybe-configure-build-libbanshee: +@if build-libbanshee +maybe-configure-build-libbanshee: configure-build-libbanshee +configure-build-libbanshee: + @test ! -f $(BUILD_SUBDIR)/libbanshee/Makefile || exit 0; \ + $(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/libbanshee ; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(BUILD_EXPORTS) \ + echo Configuring in $(BUILD_SUBDIR)/libbanshee; \ + cd "$(BUILD_SUBDIR)/libbanshee" || exit 1; \ + case $(srcdir) in \ + /* | [A-Za-z]:[\\/]*) \ + topdir=$(srcdir) ;; \ + *) \ + case "$(BUILD_SUBDIR)" in \ + .) topdir="../$(srcdir)" ;; \ + *) topdir="../../$(srcdir)" ;; \ + esac ;; \ + esac; \ + if [ "$(srcdir)" = "." ] ; then \ + if [ "$(BUILD_SUBDIR)" != "." ] ; then \ + if $(SHELL) $$s/symlink-tree $${topdir}/libbanshee "no-such-file" ; then \ + if [ -f Makefile ]; then \ + if $(MAKE) distclean; then \ + true; \ + else \ + exit 1; \ + fi; \ + else \ + true; \ + fi; \ + else \ + exit 1; \ + fi; \ + else \ + true; \ + fi; \ + srcdiroption="--srcdir=."; \ + libsrcdir="."; \ + else \ + srcdiroption="--srcdir=$${topdir}/libbanshee"; \ + libsrcdir="$$s/libbanshee"; \ + fi; \ + rm -f no-such-file || : ; \ + CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \ + $(BUILD_CONFIGARGS) $${srcdiroption} \ + --with-build-subdir="$(BUILD_SUBDIR)" \ + || exit 1 +@endif build-libbanshee + +.PHONY: all-build-libbanshee maybe-all-build-libbanshee +maybe-all-build-libbanshee: +@if build-libbanshee +maybe-all-build-libbanshee: all-build-libbanshee +all-build-libbanshee: configure-build-libbanshee + @r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(BUILD_EXPORTS) \ + (cd $(BUILD_SUBDIR)/libbanshee && $(MAKE) all) +@endif build-libbanshee # -------------------------------------- @@ -1979,26 +2167,14 @@ all-build-libiberty: configure-build-lib .PHONY: configure-ash maybe-configure-ash maybe-configure-ash: +@if ash +maybe-configure-ash: configure-ash configure-ash: @test ! -f ash/Makefile || exit 0; \ [ -d ash ] || mkdir ash; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in ash; \ cd ash || exit 1; \ case $(srcdir) in \ @@ -2015,39 +2191,54 @@ configure-ash: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif ash .PHONY: all-ash maybe-all-ash maybe-all-ash: +@if ash +maybe-all-ash: all-ash all-ash: configure-ash @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd ash && $(MAKE) $(FLAGS_TO_PASS) all) +@endif ash .PHONY: check-ash maybe-check-ash maybe-check-ash: +@if ash +maybe-check-ash: check-ash check-ash: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd ash && $(MAKE) $(FLAGS_TO_PASS) check) +@endif ash .PHONY: install-ash maybe-install-ash maybe-install-ash: +@if ash +maybe-install-ash: install-ash install-ash: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd ash && $(MAKE) $(FLAGS_TO_PASS) install) +@endif ash # Other targets (info, dvi, etc.) .PHONY: maybe-info-ash info-ash maybe-info-ash: +@if ash +maybe-info-ash: info-ash info-ash: \ configure-ash @@ -2055,6 +2246,7 @@ info-ash: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2067,9 +2259,12 @@ info-ash: \ info) \ || exit 1 +@endif ash .PHONY: maybe-dvi-ash dvi-ash maybe-dvi-ash: +@if ash +maybe-dvi-ash: dvi-ash dvi-ash: \ configure-ash @@ -2077,6 +2272,7 @@ dvi-ash: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2089,9 +2285,12 @@ dvi-ash: \ dvi) \ || exit 1 +@endif ash .PHONY: maybe-TAGS-ash TAGS-ash maybe-TAGS-ash: +@if ash +maybe-TAGS-ash: TAGS-ash TAGS-ash: \ configure-ash @@ -2099,6 +2298,7 @@ TAGS-ash: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2111,9 +2311,12 @@ TAGS-ash: \ TAGS) \ || exit 1 +@endif ash .PHONY: maybe-install-info-ash install-info-ash maybe-install-info-ash: +@if ash +maybe-install-info-ash: install-info-ash install-info-ash: \ configure-ash \ @@ -2122,6 +2325,7 @@ install-info-ash: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2134,9 +2338,12 @@ install-info-ash: \ install-info) \ || exit 1 +@endif ash .PHONY: maybe-installcheck-ash installcheck-ash maybe-installcheck-ash: +@if ash +maybe-installcheck-ash: installcheck-ash installcheck-ash: \ configure-ash @@ -2144,6 +2351,7 @@ installcheck-ash: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2156,15 +2364,19 @@ installcheck-ash: \ installcheck) \ || exit 1 +@endif ash .PHONY: maybe-mostlyclean-ash mostlyclean-ash maybe-mostlyclean-ash: +@if ash +maybe-mostlyclean-ash: mostlyclean-ash mostlyclean-ash: @[ -f ./ash/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2177,15 +2389,19 @@ mostlyclean-ash: mostlyclean) \ || exit 1 +@endif ash .PHONY: maybe-clean-ash clean-ash maybe-clean-ash: +@if ash +maybe-clean-ash: clean-ash clean-ash: @[ -f ./ash/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2198,15 +2414,19 @@ clean-ash: clean) \ || exit 1 +@endif ash .PHONY: maybe-distclean-ash distclean-ash maybe-distclean-ash: +@if ash +maybe-distclean-ash: distclean-ash distclean-ash: @[ -f ./ash/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2219,15 +2439,19 @@ distclean-ash: distclean) \ || exit 1 +@endif ash .PHONY: maybe-maintainer-clean-ash maintainer-clean-ash maybe-maintainer-clean-ash: +@if ash +maybe-maintainer-clean-ash: maintainer-clean-ash maintainer-clean-ash: @[ -f ./ash/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2240,30 +2464,19 @@ maintainer-clean-ash: maintainer-clean) \ || exit 1 +@endif ash .PHONY: configure-autoconf maybe-configure-autoconf maybe-configure-autoconf: +@if autoconf +maybe-configure-autoconf: configure-autoconf configure-autoconf: @test ! -f autoconf/Makefile || exit 0; \ [ -d autoconf ] || mkdir autoconf; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in autoconf; \ cd autoconf || exit 1; \ case $(srcdir) in \ @@ -2280,39 +2493,54 @@ configure-autoconf: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif autoconf .PHONY: all-autoconf maybe-all-autoconf maybe-all-autoconf: +@if autoconf +maybe-all-autoconf: all-autoconf all-autoconf: configure-autoconf @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd autoconf && $(MAKE) $(FLAGS_TO_PASS) all) +@endif autoconf .PHONY: check-autoconf maybe-check-autoconf maybe-check-autoconf: +@if autoconf +maybe-check-autoconf: check-autoconf check-autoconf: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd autoconf && $(MAKE) $(FLAGS_TO_PASS) check) +@endif autoconf .PHONY: install-autoconf maybe-install-autoconf maybe-install-autoconf: +@if autoconf +maybe-install-autoconf: install-autoconf install-autoconf: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd autoconf && $(MAKE) $(FLAGS_TO_PASS) install) +@endif autoconf # Other targets (info, dvi, etc.) .PHONY: maybe-info-autoconf info-autoconf maybe-info-autoconf: +@if autoconf +maybe-info-autoconf: info-autoconf info-autoconf: \ configure-autoconf @@ -2320,6 +2548,7 @@ info-autoconf: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2332,9 +2561,12 @@ info-autoconf: \ info) \ || exit 1 +@endif autoconf .PHONY: maybe-dvi-autoconf dvi-autoconf maybe-dvi-autoconf: +@if autoconf +maybe-dvi-autoconf: dvi-autoconf dvi-autoconf: \ configure-autoconf @@ -2342,6 +2574,7 @@ dvi-autoconf: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2354,9 +2587,12 @@ dvi-autoconf: \ dvi) \ || exit 1 +@endif autoconf .PHONY: maybe-TAGS-autoconf TAGS-autoconf maybe-TAGS-autoconf: +@if autoconf +maybe-TAGS-autoconf: TAGS-autoconf TAGS-autoconf: \ configure-autoconf @@ -2364,6 +2600,7 @@ TAGS-autoconf: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2376,9 +2613,12 @@ TAGS-autoconf: \ TAGS) \ || exit 1 +@endif autoconf .PHONY: maybe-install-info-autoconf install-info-autoconf maybe-install-info-autoconf: +@if autoconf +maybe-install-info-autoconf: install-info-autoconf install-info-autoconf: \ configure-autoconf \ @@ -2387,6 +2627,7 @@ install-info-autoconf: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2399,9 +2640,12 @@ install-info-autoconf: \ install-info) \ || exit 1 +@endif autoconf .PHONY: maybe-installcheck-autoconf installcheck-autoconf maybe-installcheck-autoconf: +@if autoconf +maybe-installcheck-autoconf: installcheck-autoconf installcheck-autoconf: \ configure-autoconf @@ -2409,6 +2653,7 @@ installcheck-autoconf: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2421,15 +2666,19 @@ installcheck-autoconf: \ installcheck) \ || exit 1 +@endif autoconf .PHONY: maybe-mostlyclean-autoconf mostlyclean-autoconf maybe-mostlyclean-autoconf: +@if autoconf +maybe-mostlyclean-autoconf: mostlyclean-autoconf mostlyclean-autoconf: @[ -f ./autoconf/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2442,15 +2691,19 @@ mostlyclean-autoconf: mostlyclean) \ || exit 1 +@endif autoconf .PHONY: maybe-clean-autoconf clean-autoconf maybe-clean-autoconf: +@if autoconf +maybe-clean-autoconf: clean-autoconf clean-autoconf: @[ -f ./autoconf/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2463,15 +2716,19 @@ clean-autoconf: clean) \ || exit 1 +@endif autoconf .PHONY: maybe-distclean-autoconf distclean-autoconf maybe-distclean-autoconf: +@if autoconf +maybe-distclean-autoconf: distclean-autoconf distclean-autoconf: @[ -f ./autoconf/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2484,15 +2741,19 @@ distclean-autoconf: distclean) \ || exit 1 +@endif autoconf .PHONY: maybe-maintainer-clean-autoconf maintainer-clean-autoconf maybe-maintainer-clean-autoconf: +@if autoconf +maybe-maintainer-clean-autoconf: maintainer-clean-autoconf maintainer-clean-autoconf: @[ -f ./autoconf/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2505,30 +2766,19 @@ maintainer-clean-autoconf: maintainer-clean) \ || exit 1 +@endif autoconf .PHONY: configure-automake maybe-configure-automake maybe-configure-automake: +@if automake +maybe-configure-automake: configure-automake configure-automake: @test ! -f automake/Makefile || exit 0; \ [ -d automake ] || mkdir automake; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in automake; \ cd automake || exit 1; \ case $(srcdir) in \ @@ -2545,39 +2795,54 @@ configure-automake: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif automake .PHONY: all-automake maybe-all-automake maybe-all-automake: +@if automake +maybe-all-automake: all-automake all-automake: configure-automake @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd automake && $(MAKE) $(FLAGS_TO_PASS) all) +@endif automake .PHONY: check-automake maybe-check-automake maybe-check-automake: +@if automake +maybe-check-automake: check-automake check-automake: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd automake && $(MAKE) $(FLAGS_TO_PASS) check) +@endif automake .PHONY: install-automake maybe-install-automake maybe-install-automake: +@if automake +maybe-install-automake: install-automake install-automake: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd automake && $(MAKE) $(FLAGS_TO_PASS) install) +@endif automake # Other targets (info, dvi, etc.) .PHONY: maybe-info-automake info-automake maybe-info-automake: +@if automake +maybe-info-automake: info-automake info-automake: \ configure-automake @@ -2585,6 +2850,7 @@ info-automake: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2597,9 +2863,12 @@ info-automake: \ info) \ || exit 1 +@endif automake .PHONY: maybe-dvi-automake dvi-automake maybe-dvi-automake: +@if automake +maybe-dvi-automake: dvi-automake dvi-automake: \ configure-automake @@ -2607,6 +2876,7 @@ dvi-automake: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2619,9 +2889,12 @@ dvi-automake: \ dvi) \ || exit 1 +@endif automake .PHONY: maybe-TAGS-automake TAGS-automake maybe-TAGS-automake: +@if automake +maybe-TAGS-automake: TAGS-automake TAGS-automake: \ configure-automake @@ -2629,6 +2902,7 @@ TAGS-automake: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2641,9 +2915,12 @@ TAGS-automake: \ TAGS) \ || exit 1 +@endif automake .PHONY: maybe-install-info-automake install-info-automake maybe-install-info-automake: +@if automake +maybe-install-info-automake: install-info-automake install-info-automake: \ configure-automake \ @@ -2652,6 +2929,7 @@ install-info-automake: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2664,9 +2942,12 @@ install-info-automake: \ install-info) \ || exit 1 +@endif automake .PHONY: maybe-installcheck-automake installcheck-automake maybe-installcheck-automake: +@if automake +maybe-installcheck-automake: installcheck-automake installcheck-automake: \ configure-automake @@ -2674,6 +2955,7 @@ installcheck-automake: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2686,15 +2968,19 @@ installcheck-automake: \ installcheck) \ || exit 1 +@endif automake .PHONY: maybe-mostlyclean-automake mostlyclean-automake maybe-mostlyclean-automake: +@if automake +maybe-mostlyclean-automake: mostlyclean-automake mostlyclean-automake: @[ -f ./automake/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2707,15 +2993,19 @@ mostlyclean-automake: mostlyclean) \ || exit 1 +@endif automake .PHONY: maybe-clean-automake clean-automake maybe-clean-automake: +@if automake +maybe-clean-automake: clean-automake clean-automake: @[ -f ./automake/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2728,15 +3018,19 @@ clean-automake: clean) \ || exit 1 +@endif automake .PHONY: maybe-distclean-automake distclean-automake maybe-distclean-automake: +@if automake +maybe-distclean-automake: distclean-automake distclean-automake: @[ -f ./automake/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2749,15 +3043,19 @@ distclean-automake: distclean) \ || exit 1 +@endif automake .PHONY: maybe-maintainer-clean-automake maintainer-clean-automake maybe-maintainer-clean-automake: +@if automake +maybe-maintainer-clean-automake: maintainer-clean-automake maintainer-clean-automake: @[ -f ./automake/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2770,30 +3068,19 @@ maintainer-clean-automake: maintainer-clean) \ || exit 1 +@endif automake .PHONY: configure-bash maybe-configure-bash maybe-configure-bash: +@if bash +maybe-configure-bash: configure-bash configure-bash: @test ! -f bash/Makefile || exit 0; \ [ -d bash ] || mkdir bash; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in bash; \ cd bash || exit 1; \ case $(srcdir) in \ @@ -2810,39 +3097,54 @@ configure-bash: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif bash .PHONY: all-bash maybe-all-bash maybe-all-bash: +@if bash +maybe-all-bash: all-bash all-bash: configure-bash @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd bash && $(MAKE) $(FLAGS_TO_PASS) all) +@endif bash .PHONY: check-bash maybe-check-bash maybe-check-bash: +@if bash +maybe-check-bash: check-bash check-bash: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd bash && $(MAKE) $(FLAGS_TO_PASS) check) +@endif bash .PHONY: install-bash maybe-install-bash maybe-install-bash: +@if bash +maybe-install-bash: install-bash install-bash: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd bash && $(MAKE) $(FLAGS_TO_PASS) install) +@endif bash # Other targets (info, dvi, etc.) .PHONY: maybe-info-bash info-bash maybe-info-bash: +@if bash +maybe-info-bash: info-bash info-bash: \ configure-bash @@ -2850,6 +3152,7 @@ info-bash: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2862,9 +3165,12 @@ info-bash: \ info) \ || exit 1 +@endif bash .PHONY: maybe-dvi-bash dvi-bash maybe-dvi-bash: +@if bash +maybe-dvi-bash: dvi-bash dvi-bash: \ configure-bash @@ -2872,6 +3178,7 @@ dvi-bash: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2884,9 +3191,12 @@ dvi-bash: \ dvi) \ || exit 1 +@endif bash .PHONY: maybe-TAGS-bash TAGS-bash maybe-TAGS-bash: +@if bash +maybe-TAGS-bash: TAGS-bash TAGS-bash: \ configure-bash @@ -2894,6 +3204,7 @@ TAGS-bash: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2906,9 +3217,12 @@ TAGS-bash: \ TAGS) \ || exit 1 +@endif bash .PHONY: maybe-install-info-bash install-info-bash maybe-install-info-bash: +@if bash +maybe-install-info-bash: install-info-bash install-info-bash: \ configure-bash \ @@ -2917,6 +3231,7 @@ install-info-bash: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2929,9 +3244,12 @@ install-info-bash: \ install-info) \ || exit 1 +@endif bash .PHONY: maybe-installcheck-bash installcheck-bash maybe-installcheck-bash: +@if bash +maybe-installcheck-bash: installcheck-bash installcheck-bash: \ configure-bash @@ -2939,6 +3257,7 @@ installcheck-bash: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2951,15 +3270,19 @@ installcheck-bash: \ installcheck) \ || exit 1 +@endif bash .PHONY: maybe-mostlyclean-bash mostlyclean-bash maybe-mostlyclean-bash: +@if bash +maybe-mostlyclean-bash: mostlyclean-bash mostlyclean-bash: @[ -f ./bash/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2972,15 +3295,19 @@ mostlyclean-bash: mostlyclean) \ || exit 1 +@endif bash .PHONY: maybe-clean-bash clean-bash maybe-clean-bash: +@if bash +maybe-clean-bash: clean-bash clean-bash: @[ -f ./bash/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -2993,15 +3320,19 @@ clean-bash: clean) \ || exit 1 +@endif bash .PHONY: maybe-distclean-bash distclean-bash maybe-distclean-bash: +@if bash +maybe-distclean-bash: distclean-bash distclean-bash: @[ -f ./bash/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3014,15 +3345,19 @@ distclean-bash: distclean) \ || exit 1 +@endif bash .PHONY: maybe-maintainer-clean-bash maintainer-clean-bash maybe-maintainer-clean-bash: +@if bash +maybe-maintainer-clean-bash: maintainer-clean-bash maintainer-clean-bash: @[ -f ./bash/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3035,30 +3370,19 @@ maintainer-clean-bash: maintainer-clean) \ || exit 1 +@endif bash .PHONY: configure-bfd maybe-configure-bfd maybe-configure-bfd: +@if bfd +maybe-configure-bfd: configure-bfd configure-bfd: @test ! -f bfd/Makefile || exit 0; \ [ -d bfd ] || mkdir bfd; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in bfd; \ cd bfd || exit 1; \ case $(srcdir) in \ @@ -3075,39 +3399,54 @@ configure-bfd: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif bfd .PHONY: all-bfd maybe-all-bfd maybe-all-bfd: +@if bfd +maybe-all-bfd: all-bfd all-bfd: configure-bfd @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd bfd && $(MAKE) $(FLAGS_TO_PASS) all) +@endif bfd .PHONY: check-bfd maybe-check-bfd maybe-check-bfd: +@if bfd +maybe-check-bfd: check-bfd check-bfd: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd bfd && $(MAKE) $(FLAGS_TO_PASS) check) +@endif bfd .PHONY: install-bfd maybe-install-bfd maybe-install-bfd: +@if bfd +maybe-install-bfd: install-bfd install-bfd: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd bfd && $(MAKE) $(FLAGS_TO_PASS) install) +@endif bfd # Other targets (info, dvi, etc.) .PHONY: maybe-info-bfd info-bfd maybe-info-bfd: +@if bfd +maybe-info-bfd: info-bfd info-bfd: \ configure-bfd @@ -3115,6 +3454,7 @@ info-bfd: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3127,9 +3467,12 @@ info-bfd: \ info) \ || exit 1 +@endif bfd .PHONY: maybe-dvi-bfd dvi-bfd maybe-dvi-bfd: +@if bfd +maybe-dvi-bfd: dvi-bfd dvi-bfd: \ configure-bfd @@ -3137,6 +3480,7 @@ dvi-bfd: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3149,9 +3493,12 @@ dvi-bfd: \ dvi) \ || exit 1 +@endif bfd .PHONY: maybe-TAGS-bfd TAGS-bfd maybe-TAGS-bfd: +@if bfd +maybe-TAGS-bfd: TAGS-bfd TAGS-bfd: \ configure-bfd @@ -3159,6 +3506,7 @@ TAGS-bfd: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3171,9 +3519,12 @@ TAGS-bfd: \ TAGS) \ || exit 1 +@endif bfd .PHONY: maybe-install-info-bfd install-info-bfd maybe-install-info-bfd: +@if bfd +maybe-install-info-bfd: install-info-bfd install-info-bfd: \ configure-bfd \ @@ -3182,6 +3533,7 @@ install-info-bfd: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3194,9 +3546,12 @@ install-info-bfd: \ install-info) \ || exit 1 +@endif bfd .PHONY: maybe-installcheck-bfd installcheck-bfd maybe-installcheck-bfd: +@if bfd +maybe-installcheck-bfd: installcheck-bfd installcheck-bfd: \ configure-bfd @@ -3204,6 +3559,7 @@ installcheck-bfd: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3216,15 +3572,19 @@ installcheck-bfd: \ installcheck) \ || exit 1 +@endif bfd .PHONY: maybe-mostlyclean-bfd mostlyclean-bfd maybe-mostlyclean-bfd: +@if bfd +maybe-mostlyclean-bfd: mostlyclean-bfd mostlyclean-bfd: @[ -f ./bfd/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3237,15 +3597,19 @@ mostlyclean-bfd: mostlyclean) \ || exit 1 +@endif bfd .PHONY: maybe-clean-bfd clean-bfd maybe-clean-bfd: +@if bfd +maybe-clean-bfd: clean-bfd clean-bfd: @[ -f ./bfd/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3258,15 +3622,19 @@ clean-bfd: clean) \ || exit 1 +@endif bfd .PHONY: maybe-distclean-bfd distclean-bfd maybe-distclean-bfd: +@if bfd +maybe-distclean-bfd: distclean-bfd distclean-bfd: @[ -f ./bfd/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3279,15 +3647,19 @@ distclean-bfd: distclean) \ || exit 1 +@endif bfd .PHONY: maybe-maintainer-clean-bfd maintainer-clean-bfd maybe-maintainer-clean-bfd: +@if bfd +maybe-maintainer-clean-bfd: maintainer-clean-bfd maintainer-clean-bfd: @[ -f ./bfd/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3300,30 +3672,19 @@ maintainer-clean-bfd: maintainer-clean) \ || exit 1 +@endif bfd .PHONY: configure-opcodes maybe-configure-opcodes maybe-configure-opcodes: +@if opcodes +maybe-configure-opcodes: configure-opcodes configure-opcodes: @test ! -f opcodes/Makefile || exit 0; \ [ -d opcodes ] || mkdir opcodes; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in opcodes; \ cd opcodes || exit 1; \ case $(srcdir) in \ @@ -3340,39 +3701,54 @@ configure-opcodes: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif opcodes .PHONY: all-opcodes maybe-all-opcodes maybe-all-opcodes: +@if opcodes +maybe-all-opcodes: all-opcodes all-opcodes: configure-opcodes @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd opcodes && $(MAKE) $(FLAGS_TO_PASS) all) +@endif opcodes .PHONY: check-opcodes maybe-check-opcodes maybe-check-opcodes: +@if opcodes +maybe-check-opcodes: check-opcodes check-opcodes: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd opcodes && $(MAKE) $(FLAGS_TO_PASS) check) +@endif opcodes .PHONY: install-opcodes maybe-install-opcodes maybe-install-opcodes: +@if opcodes +maybe-install-opcodes: install-opcodes install-opcodes: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd opcodes && $(MAKE) $(FLAGS_TO_PASS) install) +@endif opcodes # Other targets (info, dvi, etc.) .PHONY: maybe-info-opcodes info-opcodes maybe-info-opcodes: +@if opcodes +maybe-info-opcodes: info-opcodes info-opcodes: \ configure-opcodes @@ -3380,6 +3756,7 @@ info-opcodes: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3392,9 +3769,12 @@ info-opcodes: \ info) \ || exit 1 +@endif opcodes .PHONY: maybe-dvi-opcodes dvi-opcodes maybe-dvi-opcodes: +@if opcodes +maybe-dvi-opcodes: dvi-opcodes dvi-opcodes: \ configure-opcodes @@ -3402,6 +3782,7 @@ dvi-opcodes: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3414,9 +3795,12 @@ dvi-opcodes: \ dvi) \ || exit 1 +@endif opcodes .PHONY: maybe-TAGS-opcodes TAGS-opcodes maybe-TAGS-opcodes: +@if opcodes +maybe-TAGS-opcodes: TAGS-opcodes TAGS-opcodes: \ configure-opcodes @@ -3424,6 +3808,7 @@ TAGS-opcodes: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3436,9 +3821,12 @@ TAGS-opcodes: \ TAGS) \ || exit 1 +@endif opcodes .PHONY: maybe-install-info-opcodes install-info-opcodes maybe-install-info-opcodes: +@if opcodes +maybe-install-info-opcodes: install-info-opcodes install-info-opcodes: \ configure-opcodes \ @@ -3447,6 +3835,7 @@ install-info-opcodes: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3459,9 +3848,12 @@ install-info-opcodes: \ install-info) \ || exit 1 +@endif opcodes .PHONY: maybe-installcheck-opcodes installcheck-opcodes maybe-installcheck-opcodes: +@if opcodes +maybe-installcheck-opcodes: installcheck-opcodes installcheck-opcodes: \ configure-opcodes @@ -3469,6 +3861,7 @@ installcheck-opcodes: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3481,15 +3874,19 @@ installcheck-opcodes: \ installcheck) \ || exit 1 +@endif opcodes .PHONY: maybe-mostlyclean-opcodes mostlyclean-opcodes maybe-mostlyclean-opcodes: +@if opcodes +maybe-mostlyclean-opcodes: mostlyclean-opcodes mostlyclean-opcodes: @[ -f ./opcodes/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3502,15 +3899,19 @@ mostlyclean-opcodes: mostlyclean) \ || exit 1 +@endif opcodes .PHONY: maybe-clean-opcodes clean-opcodes maybe-clean-opcodes: +@if opcodes +maybe-clean-opcodes: clean-opcodes clean-opcodes: @[ -f ./opcodes/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3523,15 +3924,19 @@ clean-opcodes: clean) \ || exit 1 +@endif opcodes .PHONY: maybe-distclean-opcodes distclean-opcodes maybe-distclean-opcodes: +@if opcodes +maybe-distclean-opcodes: distclean-opcodes distclean-opcodes: @[ -f ./opcodes/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3544,15 +3949,19 @@ distclean-opcodes: distclean) \ || exit 1 +@endif opcodes .PHONY: maybe-maintainer-clean-opcodes maintainer-clean-opcodes maybe-maintainer-clean-opcodes: +@if opcodes +maybe-maintainer-clean-opcodes: maintainer-clean-opcodes maintainer-clean-opcodes: @[ -f ./opcodes/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3565,30 +3974,19 @@ maintainer-clean-opcodes: maintainer-clean) \ || exit 1 +@endif opcodes .PHONY: configure-binutils maybe-configure-binutils maybe-configure-binutils: +@if binutils +maybe-configure-binutils: configure-binutils configure-binutils: @test ! -f binutils/Makefile || exit 0; \ [ -d binutils ] || mkdir binutils; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in binutils; \ cd binutils || exit 1; \ case $(srcdir) in \ @@ -3605,39 +4003,54 @@ configure-binutils: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif binutils .PHONY: all-binutils maybe-all-binutils maybe-all-binutils: +@if binutils +maybe-all-binutils: all-binutils all-binutils: configure-binutils @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd binutils && $(MAKE) $(FLAGS_TO_PASS) all) +@endif binutils .PHONY: check-binutils maybe-check-binutils maybe-check-binutils: +@if binutils +maybe-check-binutils: check-binutils check-binutils: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd binutils && $(MAKE) $(FLAGS_TO_PASS) check) +@endif binutils .PHONY: install-binutils maybe-install-binutils maybe-install-binutils: +@if binutils +maybe-install-binutils: install-binutils install-binutils: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd binutils && $(MAKE) $(FLAGS_TO_PASS) install) +@endif binutils # Other targets (info, dvi, etc.) .PHONY: maybe-info-binutils info-binutils maybe-info-binutils: +@if binutils +maybe-info-binutils: info-binutils info-binutils: \ configure-binutils @@ -3645,6 +4058,7 @@ info-binutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3657,9 +4071,12 @@ info-binutils: \ info) \ || exit 1 +@endif binutils .PHONY: maybe-dvi-binutils dvi-binutils maybe-dvi-binutils: +@if binutils +maybe-dvi-binutils: dvi-binutils dvi-binutils: \ configure-binutils @@ -3667,6 +4084,7 @@ dvi-binutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3679,9 +4097,12 @@ dvi-binutils: \ dvi) \ || exit 1 +@endif binutils .PHONY: maybe-TAGS-binutils TAGS-binutils maybe-TAGS-binutils: +@if binutils +maybe-TAGS-binutils: TAGS-binutils TAGS-binutils: \ configure-binutils @@ -3689,6 +4110,7 @@ TAGS-binutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3701,9 +4123,12 @@ TAGS-binutils: \ TAGS) \ || exit 1 +@endif binutils .PHONY: maybe-install-info-binutils install-info-binutils maybe-install-info-binutils: +@if binutils +maybe-install-info-binutils: install-info-binutils install-info-binutils: \ configure-binutils \ @@ -3712,6 +4137,7 @@ install-info-binutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3724,9 +4150,12 @@ install-info-binutils: \ install-info) \ || exit 1 +@endif binutils .PHONY: maybe-installcheck-binutils installcheck-binutils maybe-installcheck-binutils: +@if binutils +maybe-installcheck-binutils: installcheck-binutils installcheck-binutils: \ configure-binutils @@ -3734,6 +4163,7 @@ installcheck-binutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3746,15 +4176,19 @@ installcheck-binutils: \ installcheck) \ || exit 1 +@endif binutils .PHONY: maybe-mostlyclean-binutils mostlyclean-binutils maybe-mostlyclean-binutils: +@if binutils +maybe-mostlyclean-binutils: mostlyclean-binutils mostlyclean-binutils: @[ -f ./binutils/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3767,15 +4201,19 @@ mostlyclean-binutils: mostlyclean) \ || exit 1 +@endif binutils .PHONY: maybe-clean-binutils clean-binutils maybe-clean-binutils: +@if binutils +maybe-clean-binutils: clean-binutils clean-binutils: @[ -f ./binutils/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3788,15 +4226,19 @@ clean-binutils: clean) \ || exit 1 +@endif binutils .PHONY: maybe-distclean-binutils distclean-binutils maybe-distclean-binutils: +@if binutils +maybe-distclean-binutils: distclean-binutils distclean-binutils: @[ -f ./binutils/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3809,15 +4251,19 @@ distclean-binutils: distclean) \ || exit 1 +@endif binutils .PHONY: maybe-maintainer-clean-binutils maintainer-clean-binutils maybe-maintainer-clean-binutils: +@if binutils +maybe-maintainer-clean-binutils: maintainer-clean-binutils maintainer-clean-binutils: @[ -f ./binutils/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3830,30 +4276,19 @@ maintainer-clean-binutils: maintainer-clean) \ || exit 1 +@endif binutils .PHONY: configure-bison maybe-configure-bison maybe-configure-bison: +@if bison +maybe-configure-bison: configure-bison configure-bison: @test ! -f bison/Makefile || exit 0; \ [ -d bison ] || mkdir bison; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in bison; \ cd bison || exit 1; \ case $(srcdir) in \ @@ -3870,17 +4305,24 @@ configure-bison: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif bison .PHONY: all-bison maybe-all-bison maybe-all-bison: +@if bison +maybe-all-bison: all-bison all-bison: configure-bison @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd bison && $(MAKE) $(FLAGS_TO_PASS) all) +@endif bison .PHONY: check-bison maybe-check-bison maybe-check-bison: +@if bison +maybe-check-bison: check-bison # This module is only tested in a native toolchain. check-bison: @@ -3888,24 +4330,32 @@ check-bison: r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd bison && $(MAKE) $(FLAGS_TO_PASS) check); \ fi +@endif bison .PHONY: install-bison maybe-install-bison maybe-install-bison: +@if bison +maybe-install-bison: install-bison install-bison: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd bison && $(MAKE) $(FLAGS_TO_PASS) install) +@endif bison # Other targets (info, dvi, etc.) .PHONY: maybe-info-bison info-bison maybe-info-bison: +@if bison +maybe-info-bison: info-bison info-bison: \ configure-bison @@ -3913,6 +4363,7 @@ info-bison: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3925,9 +4376,12 @@ info-bison: \ info) \ || exit 1 +@endif bison .PHONY: maybe-dvi-bison dvi-bison maybe-dvi-bison: +@if bison +maybe-dvi-bison: dvi-bison dvi-bison: \ configure-bison @@ -3935,6 +4389,7 @@ dvi-bison: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3947,9 +4402,12 @@ dvi-bison: \ dvi) \ || exit 1 +@endif bison .PHONY: maybe-TAGS-bison TAGS-bison maybe-TAGS-bison: +@if bison +maybe-TAGS-bison: TAGS-bison TAGS-bison: \ configure-bison @@ -3957,6 +4415,7 @@ TAGS-bison: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3969,9 +4428,12 @@ TAGS-bison: \ TAGS) \ || exit 1 +@endif bison .PHONY: maybe-install-info-bison install-info-bison maybe-install-info-bison: +@if bison +maybe-install-info-bison: install-info-bison install-info-bison: \ configure-bison \ @@ -3980,6 +4442,7 @@ install-info-bison: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -3992,9 +4455,12 @@ install-info-bison: \ install-info) \ || exit 1 +@endif bison .PHONY: maybe-installcheck-bison installcheck-bison maybe-installcheck-bison: +@if bison +maybe-installcheck-bison: installcheck-bison installcheck-bison: \ configure-bison @@ -4002,6 +4468,7 @@ installcheck-bison: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4014,15 +4481,19 @@ installcheck-bison: \ installcheck) \ || exit 1 +@endif bison .PHONY: maybe-mostlyclean-bison mostlyclean-bison maybe-mostlyclean-bison: +@if bison +maybe-mostlyclean-bison: mostlyclean-bison mostlyclean-bison: @[ -f ./bison/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4035,15 +4506,19 @@ mostlyclean-bison: mostlyclean) \ || exit 1 +@endif bison .PHONY: maybe-clean-bison clean-bison maybe-clean-bison: +@if bison +maybe-clean-bison: clean-bison clean-bison: @[ -f ./bison/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4056,15 +4531,19 @@ clean-bison: clean) \ || exit 1 +@endif bison .PHONY: maybe-distclean-bison distclean-bison maybe-distclean-bison: +@if bison +maybe-distclean-bison: distclean-bison distclean-bison: @[ -f ./bison/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4077,15 +4556,19 @@ distclean-bison: distclean) \ || exit 1 +@endif bison .PHONY: maybe-maintainer-clean-bison maintainer-clean-bison maybe-maintainer-clean-bison: +@if bison +maybe-maintainer-clean-bison: maintainer-clean-bison maintainer-clean-bison: @[ -f ./bison/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4098,30 +4581,19 @@ maintainer-clean-bison: maintainer-clean) \ || exit 1 +@endif bison .PHONY: configure-byacc maybe-configure-byacc maybe-configure-byacc: +@if byacc +maybe-configure-byacc: configure-byacc configure-byacc: @test ! -f byacc/Makefile || exit 0; \ [ -d byacc ] || mkdir byacc; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in byacc; \ cd byacc || exit 1; \ case $(srcdir) in \ @@ -4138,17 +4610,24 @@ configure-byacc: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif byacc .PHONY: all-byacc maybe-all-byacc maybe-all-byacc: +@if byacc +maybe-all-byacc: all-byacc all-byacc: configure-byacc @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd byacc && $(MAKE) $(FLAGS_TO_PASS) all) +@endif byacc .PHONY: check-byacc maybe-check-byacc maybe-check-byacc: +@if byacc +maybe-check-byacc: check-byacc # This module is only tested in a native toolchain. check-byacc: @@ -4156,24 +4635,32 @@ check-byacc: r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd byacc && $(MAKE) $(FLAGS_TO_PASS) check); \ fi +@endif byacc .PHONY: install-byacc maybe-install-byacc maybe-install-byacc: +@if byacc +maybe-install-byacc: install-byacc install-byacc: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd byacc && $(MAKE) $(FLAGS_TO_PASS) install) +@endif byacc # Other targets (info, dvi, etc.) .PHONY: maybe-info-byacc info-byacc maybe-info-byacc: +@if byacc +maybe-info-byacc: info-byacc info-byacc: \ configure-byacc @@ -4181,6 +4668,7 @@ info-byacc: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4193,9 +4681,12 @@ info-byacc: \ info) \ || exit 1 +@endif byacc .PHONY: maybe-dvi-byacc dvi-byacc maybe-dvi-byacc: +@if byacc +maybe-dvi-byacc: dvi-byacc dvi-byacc: \ configure-byacc @@ -4203,6 +4694,7 @@ dvi-byacc: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4215,9 +4707,12 @@ dvi-byacc: \ dvi) \ || exit 1 +@endif byacc .PHONY: maybe-TAGS-byacc TAGS-byacc maybe-TAGS-byacc: +@if byacc +maybe-TAGS-byacc: TAGS-byacc TAGS-byacc: \ configure-byacc @@ -4225,6 +4720,7 @@ TAGS-byacc: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4237,9 +4733,12 @@ TAGS-byacc: \ TAGS) \ || exit 1 +@endif byacc .PHONY: maybe-install-info-byacc install-info-byacc maybe-install-info-byacc: +@if byacc +maybe-install-info-byacc: install-info-byacc install-info-byacc: \ configure-byacc \ @@ -4248,6 +4747,7 @@ install-info-byacc: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4260,9 +4760,12 @@ install-info-byacc: \ install-info) \ || exit 1 +@endif byacc .PHONY: maybe-installcheck-byacc installcheck-byacc maybe-installcheck-byacc: +@if byacc +maybe-installcheck-byacc: installcheck-byacc installcheck-byacc: \ configure-byacc @@ -4270,6 +4773,7 @@ installcheck-byacc: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4282,15 +4786,19 @@ installcheck-byacc: \ installcheck) \ || exit 1 +@endif byacc .PHONY: maybe-mostlyclean-byacc mostlyclean-byacc maybe-mostlyclean-byacc: +@if byacc +maybe-mostlyclean-byacc: mostlyclean-byacc mostlyclean-byacc: @[ -f ./byacc/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4303,15 +4811,19 @@ mostlyclean-byacc: mostlyclean) \ || exit 1 +@endif byacc .PHONY: maybe-clean-byacc clean-byacc maybe-clean-byacc: +@if byacc +maybe-clean-byacc: clean-byacc clean-byacc: @[ -f ./byacc/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4324,15 +4836,19 @@ clean-byacc: clean) \ || exit 1 +@endif byacc .PHONY: maybe-distclean-byacc distclean-byacc maybe-distclean-byacc: +@if byacc +maybe-distclean-byacc: distclean-byacc distclean-byacc: @[ -f ./byacc/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4345,15 +4861,19 @@ distclean-byacc: distclean) \ || exit 1 +@endif byacc .PHONY: maybe-maintainer-clean-byacc maintainer-clean-byacc maybe-maintainer-clean-byacc: +@if byacc +maybe-maintainer-clean-byacc: maintainer-clean-byacc maintainer-clean-byacc: @[ -f ./byacc/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4366,30 +4886,19 @@ maintainer-clean-byacc: maintainer-clean) \ || exit 1 +@endif byacc .PHONY: configure-bzip2 maybe-configure-bzip2 maybe-configure-bzip2: +@if bzip2 +maybe-configure-bzip2: configure-bzip2 configure-bzip2: @test ! -f bzip2/Makefile || exit 0; \ [ -d bzip2 ] || mkdir bzip2; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in bzip2; \ cd bzip2 || exit 1; \ case $(srcdir) in \ @@ -4406,39 +4915,54 @@ configure-bzip2: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif bzip2 .PHONY: all-bzip2 maybe-all-bzip2 maybe-all-bzip2: +@if bzip2 +maybe-all-bzip2: all-bzip2 all-bzip2: configure-bzip2 @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd bzip2 && $(MAKE) $(FLAGS_TO_PASS) all) +@endif bzip2 .PHONY: check-bzip2 maybe-check-bzip2 maybe-check-bzip2: +@if bzip2 +maybe-check-bzip2: check-bzip2 check-bzip2: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd bzip2 && $(MAKE) $(FLAGS_TO_PASS) check) +@endif bzip2 .PHONY: install-bzip2 maybe-install-bzip2 maybe-install-bzip2: +@if bzip2 +maybe-install-bzip2: install-bzip2 install-bzip2: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd bzip2 && $(MAKE) $(FLAGS_TO_PASS) install) +@endif bzip2 # Other targets (info, dvi, etc.) .PHONY: maybe-info-bzip2 info-bzip2 maybe-info-bzip2: +@if bzip2 +maybe-info-bzip2: info-bzip2 info-bzip2: \ configure-bzip2 @@ -4446,6 +4970,7 @@ info-bzip2: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4458,9 +4983,12 @@ info-bzip2: \ info) \ || exit 1 +@endif bzip2 .PHONY: maybe-dvi-bzip2 dvi-bzip2 maybe-dvi-bzip2: +@if bzip2 +maybe-dvi-bzip2: dvi-bzip2 dvi-bzip2: \ configure-bzip2 @@ -4468,6 +4996,7 @@ dvi-bzip2: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4480,9 +5009,12 @@ dvi-bzip2: \ dvi) \ || exit 1 +@endif bzip2 .PHONY: maybe-TAGS-bzip2 TAGS-bzip2 maybe-TAGS-bzip2: +@if bzip2 +maybe-TAGS-bzip2: TAGS-bzip2 TAGS-bzip2: \ configure-bzip2 @@ -4490,6 +5022,7 @@ TAGS-bzip2: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4502,9 +5035,12 @@ TAGS-bzip2: \ TAGS) \ || exit 1 +@endif bzip2 .PHONY: maybe-install-info-bzip2 install-info-bzip2 maybe-install-info-bzip2: +@if bzip2 +maybe-install-info-bzip2: install-info-bzip2 install-info-bzip2: \ configure-bzip2 \ @@ -4513,6 +5049,7 @@ install-info-bzip2: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4525,9 +5062,12 @@ install-info-bzip2: \ install-info) \ || exit 1 +@endif bzip2 .PHONY: maybe-installcheck-bzip2 installcheck-bzip2 maybe-installcheck-bzip2: +@if bzip2 +maybe-installcheck-bzip2: installcheck-bzip2 installcheck-bzip2: \ configure-bzip2 @@ -4535,6 +5075,7 @@ installcheck-bzip2: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4547,15 +5088,19 @@ installcheck-bzip2: \ installcheck) \ || exit 1 +@endif bzip2 .PHONY: maybe-mostlyclean-bzip2 mostlyclean-bzip2 maybe-mostlyclean-bzip2: +@if bzip2 +maybe-mostlyclean-bzip2: mostlyclean-bzip2 mostlyclean-bzip2: @[ -f ./bzip2/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4568,15 +5113,19 @@ mostlyclean-bzip2: mostlyclean) \ || exit 1 +@endif bzip2 .PHONY: maybe-clean-bzip2 clean-bzip2 maybe-clean-bzip2: +@if bzip2 +maybe-clean-bzip2: clean-bzip2 clean-bzip2: @[ -f ./bzip2/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4589,15 +5138,19 @@ clean-bzip2: clean) \ || exit 1 +@endif bzip2 .PHONY: maybe-distclean-bzip2 distclean-bzip2 maybe-distclean-bzip2: +@if bzip2 +maybe-distclean-bzip2: distclean-bzip2 distclean-bzip2: @[ -f ./bzip2/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4610,15 +5163,19 @@ distclean-bzip2: distclean) \ || exit 1 +@endif bzip2 .PHONY: maybe-maintainer-clean-bzip2 maintainer-clean-bzip2 maybe-maintainer-clean-bzip2: +@if bzip2 +maybe-maintainer-clean-bzip2: maintainer-clean-bzip2 maintainer-clean-bzip2: @[ -f ./bzip2/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4631,30 +5188,19 @@ maintainer-clean-bzip2: maintainer-clean) \ || exit 1 +@endif bzip2 .PHONY: configure-dejagnu maybe-configure-dejagnu maybe-configure-dejagnu: +@if dejagnu +maybe-configure-dejagnu: configure-dejagnu configure-dejagnu: @test ! -f dejagnu/Makefile || exit 0; \ [ -d dejagnu ] || mkdir dejagnu; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in dejagnu; \ cd dejagnu || exit 1; \ case $(srcdir) in \ @@ -4671,39 +5217,54 @@ configure-dejagnu: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif dejagnu .PHONY: all-dejagnu maybe-all-dejagnu maybe-all-dejagnu: +@if dejagnu +maybe-all-dejagnu: all-dejagnu all-dejagnu: configure-dejagnu @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd dejagnu && $(MAKE) $(FLAGS_TO_PASS) all) +@endif dejagnu .PHONY: check-dejagnu maybe-check-dejagnu maybe-check-dejagnu: +@if dejagnu +maybe-check-dejagnu: check-dejagnu check-dejagnu: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd dejagnu && $(MAKE) $(FLAGS_TO_PASS) check) +@endif dejagnu .PHONY: install-dejagnu maybe-install-dejagnu maybe-install-dejagnu: +@if dejagnu +maybe-install-dejagnu: install-dejagnu install-dejagnu: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd dejagnu && $(MAKE) $(FLAGS_TO_PASS) install) +@endif dejagnu # Other targets (info, dvi, etc.) .PHONY: maybe-info-dejagnu info-dejagnu maybe-info-dejagnu: +@if dejagnu +maybe-info-dejagnu: info-dejagnu info-dejagnu: \ configure-dejagnu @@ -4711,6 +5272,7 @@ info-dejagnu: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4723,9 +5285,12 @@ info-dejagnu: \ info) \ || exit 1 +@endif dejagnu .PHONY: maybe-dvi-dejagnu dvi-dejagnu maybe-dvi-dejagnu: +@if dejagnu +maybe-dvi-dejagnu: dvi-dejagnu dvi-dejagnu: \ configure-dejagnu @@ -4733,6 +5298,7 @@ dvi-dejagnu: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4745,9 +5311,12 @@ dvi-dejagnu: \ dvi) \ || exit 1 +@endif dejagnu .PHONY: maybe-TAGS-dejagnu TAGS-dejagnu maybe-TAGS-dejagnu: +@if dejagnu +maybe-TAGS-dejagnu: TAGS-dejagnu TAGS-dejagnu: \ configure-dejagnu @@ -4755,6 +5324,7 @@ TAGS-dejagnu: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4767,9 +5337,12 @@ TAGS-dejagnu: \ TAGS) \ || exit 1 +@endif dejagnu .PHONY: maybe-install-info-dejagnu install-info-dejagnu maybe-install-info-dejagnu: +@if dejagnu +maybe-install-info-dejagnu: install-info-dejagnu install-info-dejagnu: \ configure-dejagnu \ @@ -4778,6 +5351,7 @@ install-info-dejagnu: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4790,9 +5364,12 @@ install-info-dejagnu: \ install-info) \ || exit 1 +@endif dejagnu .PHONY: maybe-installcheck-dejagnu installcheck-dejagnu maybe-installcheck-dejagnu: +@if dejagnu +maybe-installcheck-dejagnu: installcheck-dejagnu installcheck-dejagnu: \ configure-dejagnu @@ -4800,6 +5377,7 @@ installcheck-dejagnu: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4812,15 +5390,19 @@ installcheck-dejagnu: \ installcheck) \ || exit 1 +@endif dejagnu .PHONY: maybe-mostlyclean-dejagnu mostlyclean-dejagnu maybe-mostlyclean-dejagnu: +@if dejagnu +maybe-mostlyclean-dejagnu: mostlyclean-dejagnu mostlyclean-dejagnu: @[ -f ./dejagnu/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4833,15 +5415,19 @@ mostlyclean-dejagnu: mostlyclean) \ || exit 1 +@endif dejagnu .PHONY: maybe-clean-dejagnu clean-dejagnu maybe-clean-dejagnu: +@if dejagnu +maybe-clean-dejagnu: clean-dejagnu clean-dejagnu: @[ -f ./dejagnu/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4854,15 +5440,19 @@ clean-dejagnu: clean) \ || exit 1 +@endif dejagnu .PHONY: maybe-distclean-dejagnu distclean-dejagnu maybe-distclean-dejagnu: +@if dejagnu +maybe-distclean-dejagnu: distclean-dejagnu distclean-dejagnu: @[ -f ./dejagnu/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4875,15 +5465,19 @@ distclean-dejagnu: distclean) \ || exit 1 +@endif dejagnu .PHONY: maybe-maintainer-clean-dejagnu maintainer-clean-dejagnu maybe-maintainer-clean-dejagnu: +@if dejagnu +maybe-maintainer-clean-dejagnu: maintainer-clean-dejagnu maintainer-clean-dejagnu: @[ -f ./dejagnu/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4896,30 +5490,19 @@ maintainer-clean-dejagnu: maintainer-clean) \ || exit 1 +@endif dejagnu .PHONY: configure-diff maybe-configure-diff maybe-configure-diff: +@if diff +maybe-configure-diff: configure-diff configure-diff: @test ! -f diff/Makefile || exit 0; \ [ -d diff ] || mkdir diff; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in diff; \ cd diff || exit 1; \ case $(srcdir) in \ @@ -4936,39 +5519,54 @@ configure-diff: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif diff .PHONY: all-diff maybe-all-diff maybe-all-diff: +@if diff +maybe-all-diff: all-diff all-diff: configure-diff @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd diff && $(MAKE) $(FLAGS_TO_PASS) all) +@endif diff .PHONY: check-diff maybe-check-diff maybe-check-diff: +@if diff +maybe-check-diff: check-diff check-diff: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd diff && $(MAKE) $(FLAGS_TO_PASS) check) +@endif diff .PHONY: install-diff maybe-install-diff maybe-install-diff: +@if diff +maybe-install-diff: install-diff install-diff: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd diff && $(MAKE) $(FLAGS_TO_PASS) install) +@endif diff # Other targets (info, dvi, etc.) .PHONY: maybe-info-diff info-diff maybe-info-diff: +@if diff +maybe-info-diff: info-diff info-diff: \ configure-diff @@ -4976,6 +5574,7 @@ info-diff: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -4988,9 +5587,12 @@ info-diff: \ info) \ || exit 1 +@endif diff .PHONY: maybe-dvi-diff dvi-diff maybe-dvi-diff: +@if diff +maybe-dvi-diff: dvi-diff dvi-diff: \ configure-diff @@ -4998,6 +5600,7 @@ dvi-diff: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5010,9 +5613,12 @@ dvi-diff: \ dvi) \ || exit 1 +@endif diff .PHONY: maybe-TAGS-diff TAGS-diff maybe-TAGS-diff: +@if diff +maybe-TAGS-diff: TAGS-diff TAGS-diff: \ configure-diff @@ -5020,6 +5626,7 @@ TAGS-diff: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5032,9 +5639,12 @@ TAGS-diff: \ TAGS) \ || exit 1 +@endif diff .PHONY: maybe-install-info-diff install-info-diff maybe-install-info-diff: +@if diff +maybe-install-info-diff: install-info-diff install-info-diff: \ configure-diff \ @@ -5043,6 +5653,7 @@ install-info-diff: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5055,9 +5666,12 @@ install-info-diff: \ install-info) \ || exit 1 +@endif diff .PHONY: maybe-installcheck-diff installcheck-diff maybe-installcheck-diff: +@if diff +maybe-installcheck-diff: installcheck-diff installcheck-diff: \ configure-diff @@ -5065,6 +5679,7 @@ installcheck-diff: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5077,15 +5692,19 @@ installcheck-diff: \ installcheck) \ || exit 1 +@endif diff .PHONY: maybe-mostlyclean-diff mostlyclean-diff maybe-mostlyclean-diff: +@if diff +maybe-mostlyclean-diff: mostlyclean-diff mostlyclean-diff: @[ -f ./diff/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5098,15 +5717,19 @@ mostlyclean-diff: mostlyclean) \ || exit 1 +@endif diff .PHONY: maybe-clean-diff clean-diff maybe-clean-diff: +@if diff +maybe-clean-diff: clean-diff clean-diff: @[ -f ./diff/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5119,15 +5742,19 @@ clean-diff: clean) \ || exit 1 +@endif diff .PHONY: maybe-distclean-diff distclean-diff maybe-distclean-diff: +@if diff +maybe-distclean-diff: distclean-diff distclean-diff: @[ -f ./diff/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5140,15 +5767,19 @@ distclean-diff: distclean) \ || exit 1 +@endif diff .PHONY: maybe-maintainer-clean-diff maintainer-clean-diff maybe-maintainer-clean-diff: +@if diff +maybe-maintainer-clean-diff: maintainer-clean-diff maintainer-clean-diff: @[ -f ./diff/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5161,30 +5792,19 @@ maintainer-clean-diff: maintainer-clean) \ || exit 1 +@endif diff .PHONY: configure-dosutils maybe-configure-dosutils maybe-configure-dosutils: +@if dosutils +maybe-configure-dosutils: configure-dosutils configure-dosutils: @test ! -f dosutils/Makefile || exit 0; \ [ -d dosutils ] || mkdir dosutils; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in dosutils; \ cd dosutils || exit 1; \ case $(srcdir) in \ @@ -5201,35 +5821,49 @@ configure-dosutils: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif dosutils .PHONY: all-dosutils maybe-all-dosutils maybe-all-dosutils: +@if dosutils +maybe-all-dosutils: all-dosutils all-dosutils: configure-dosutils @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd dosutils && $(MAKE) $(FLAGS_TO_PASS) all) +@endif dosutils .PHONY: check-dosutils maybe-check-dosutils maybe-check-dosutils: +@if dosutils +maybe-check-dosutils: check-dosutils check-dosutils: +@endif dosutils .PHONY: install-dosutils maybe-install-dosutils maybe-install-dosutils: +@if dosutils +maybe-install-dosutils: install-dosutils install-dosutils: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd dosutils && $(MAKE) $(FLAGS_TO_PASS) install) +@endif dosutils # Other targets (info, dvi, etc.) .PHONY: maybe-info-dosutils info-dosutils maybe-info-dosutils: +@if dosutils +maybe-info-dosutils: info-dosutils info-dosutils: \ configure-dosutils @@ -5237,6 +5871,7 @@ info-dosutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5249,9 +5884,12 @@ info-dosutils: \ info) \ || exit 1 +@endif dosutils .PHONY: maybe-dvi-dosutils dvi-dosutils maybe-dvi-dosutils: +@if dosutils +maybe-dvi-dosutils: dvi-dosutils dvi-dosutils: \ configure-dosutils @@ -5259,6 +5897,7 @@ dvi-dosutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5271,9 +5910,12 @@ dvi-dosutils: \ dvi) \ || exit 1 +@endif dosutils .PHONY: maybe-TAGS-dosutils TAGS-dosutils maybe-TAGS-dosutils: +@if dosutils +maybe-TAGS-dosutils: TAGS-dosutils TAGS-dosutils: \ configure-dosutils @@ -5281,6 +5923,7 @@ TAGS-dosutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5293,9 +5936,12 @@ TAGS-dosutils: \ TAGS) \ || exit 1 +@endif dosutils .PHONY: maybe-install-info-dosutils install-info-dosutils maybe-install-info-dosutils: +@if dosutils +maybe-install-info-dosutils: install-info-dosutils install-info-dosutils: \ configure-dosutils \ @@ -5304,6 +5950,7 @@ install-info-dosutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5316,9 +5963,12 @@ install-info-dosutils: \ install-info) \ || exit 1 +@endif dosutils .PHONY: maybe-installcheck-dosutils installcheck-dosutils maybe-installcheck-dosutils: +@if dosutils +maybe-installcheck-dosutils: installcheck-dosutils installcheck-dosutils: \ configure-dosutils @@ -5326,6 +5976,7 @@ installcheck-dosutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5338,15 +5989,19 @@ installcheck-dosutils: \ installcheck) \ || exit 1 +@endif dosutils .PHONY: maybe-mostlyclean-dosutils mostlyclean-dosutils maybe-mostlyclean-dosutils: +@if dosutils +maybe-mostlyclean-dosutils: mostlyclean-dosutils mostlyclean-dosutils: @[ -f ./dosutils/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5359,15 +6014,19 @@ mostlyclean-dosutils: mostlyclean) \ || exit 1 +@endif dosutils .PHONY: maybe-clean-dosutils clean-dosutils maybe-clean-dosutils: +@if dosutils +maybe-clean-dosutils: clean-dosutils clean-dosutils: @[ -f ./dosutils/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5380,15 +6039,19 @@ clean-dosutils: clean) \ || exit 1 +@endif dosutils .PHONY: maybe-distclean-dosutils distclean-dosutils maybe-distclean-dosutils: +@if dosutils +maybe-distclean-dosutils: distclean-dosutils distclean-dosutils: @[ -f ./dosutils/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5401,15 +6064,19 @@ distclean-dosutils: distclean) \ || exit 1 +@endif dosutils .PHONY: maybe-maintainer-clean-dosutils maintainer-clean-dosutils maybe-maintainer-clean-dosutils: +@if dosutils +maybe-maintainer-clean-dosutils: maintainer-clean-dosutils maintainer-clean-dosutils: @[ -f ./dosutils/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5422,30 +6089,19 @@ maintainer-clean-dosutils: maintainer-clean) \ || exit 1 +@endif dosutils .PHONY: configure-etc maybe-configure-etc maybe-configure-etc: +@if etc +maybe-configure-etc: configure-etc configure-etc: @test ! -f etc/Makefile || exit 0; \ [ -d etc ] || mkdir etc; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in etc; \ cd etc || exit 1; \ case $(srcdir) in \ @@ -5462,39 +6118,54 @@ configure-etc: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif etc .PHONY: all-etc maybe-all-etc maybe-all-etc: +@if etc +maybe-all-etc: all-etc all-etc: configure-etc @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd etc && $(MAKE) $(FLAGS_TO_PASS) all) +@endif etc .PHONY: check-etc maybe-check-etc maybe-check-etc: +@if etc +maybe-check-etc: check-etc check-etc: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd etc && $(MAKE) $(FLAGS_TO_PASS) check) +@endif etc .PHONY: install-etc maybe-install-etc maybe-install-etc: +@if etc +maybe-install-etc: install-etc install-etc: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd etc && $(MAKE) $(FLAGS_TO_PASS) install) +@endif etc # Other targets (info, dvi, etc.) .PHONY: maybe-info-etc info-etc maybe-info-etc: +@if etc +maybe-info-etc: info-etc info-etc: \ configure-etc @@ -5502,6 +6173,7 @@ info-etc: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5514,9 +6186,12 @@ info-etc: \ info) \ || exit 1 +@endif etc .PHONY: maybe-dvi-etc dvi-etc maybe-dvi-etc: +@if etc +maybe-dvi-etc: dvi-etc dvi-etc: \ configure-etc @@ -5524,6 +6199,7 @@ dvi-etc: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5536,9 +6212,12 @@ dvi-etc: \ dvi) \ || exit 1 +@endif etc .PHONY: maybe-TAGS-etc TAGS-etc maybe-TAGS-etc: +@if etc +maybe-TAGS-etc: TAGS-etc TAGS-etc: \ configure-etc @@ -5546,6 +6225,7 @@ TAGS-etc: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5558,9 +6238,12 @@ TAGS-etc: \ TAGS) \ || exit 1 +@endif etc .PHONY: maybe-install-info-etc install-info-etc maybe-install-info-etc: +@if etc +maybe-install-info-etc: install-info-etc install-info-etc: \ configure-etc \ @@ -5569,6 +6252,7 @@ install-info-etc: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5581,9 +6265,12 @@ install-info-etc: \ install-info) \ || exit 1 +@endif etc .PHONY: maybe-installcheck-etc installcheck-etc maybe-installcheck-etc: +@if etc +maybe-installcheck-etc: installcheck-etc installcheck-etc: \ configure-etc @@ -5591,6 +6278,7 @@ installcheck-etc: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5603,15 +6291,19 @@ installcheck-etc: \ installcheck) \ || exit 1 +@endif etc .PHONY: maybe-mostlyclean-etc mostlyclean-etc maybe-mostlyclean-etc: +@if etc +maybe-mostlyclean-etc: mostlyclean-etc mostlyclean-etc: @[ -f ./etc/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5624,15 +6316,19 @@ mostlyclean-etc: mostlyclean) \ || exit 1 +@endif etc .PHONY: maybe-clean-etc clean-etc maybe-clean-etc: +@if etc +maybe-clean-etc: clean-etc clean-etc: @[ -f ./etc/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5645,15 +6341,19 @@ clean-etc: clean) \ || exit 1 +@endif etc .PHONY: maybe-distclean-etc distclean-etc maybe-distclean-etc: +@if etc +maybe-distclean-etc: distclean-etc distclean-etc: @[ -f ./etc/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5666,15 +6366,19 @@ distclean-etc: distclean) \ || exit 1 +@endif etc .PHONY: maybe-maintainer-clean-etc maintainer-clean-etc maybe-maintainer-clean-etc: +@if etc +maybe-maintainer-clean-etc: maintainer-clean-etc maintainer-clean-etc: @[ -f ./etc/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5687,30 +6391,19 @@ maintainer-clean-etc: maintainer-clean) \ || exit 1 +@endif etc .PHONY: configure-fastjar maybe-configure-fastjar maybe-configure-fastjar: +@if fastjar +maybe-configure-fastjar: configure-fastjar configure-fastjar: @test ! -f fastjar/Makefile || exit 0; \ [ -d fastjar ] || mkdir fastjar; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in fastjar; \ cd fastjar || exit 1; \ case $(srcdir) in \ @@ -5727,17 +6420,24 @@ configure-fastjar: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif fastjar .PHONY: all-fastjar maybe-all-fastjar maybe-all-fastjar: +@if fastjar +maybe-all-fastjar: all-fastjar all-fastjar: configure-fastjar @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd fastjar && $(MAKE) $(FLAGS_TO_PASS) all) +@endif fastjar .PHONY: check-fastjar maybe-check-fastjar maybe-check-fastjar: +@if fastjar +maybe-check-fastjar: check-fastjar # This module is only tested in a native toolchain. check-fastjar: @@ -5745,24 +6445,32 @@ check-fastjar: r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd fastjar && $(MAKE) $(FLAGS_TO_PASS) check); \ fi +@endif fastjar .PHONY: install-fastjar maybe-install-fastjar maybe-install-fastjar: +@if fastjar +maybe-install-fastjar: install-fastjar install-fastjar: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd fastjar && $(MAKE) $(FLAGS_TO_PASS) install) +@endif fastjar # Other targets (info, dvi, etc.) .PHONY: maybe-info-fastjar info-fastjar maybe-info-fastjar: +@if fastjar +maybe-info-fastjar: info-fastjar info-fastjar: \ configure-fastjar @@ -5770,6 +6478,7 @@ info-fastjar: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5782,9 +6491,12 @@ info-fastjar: \ info) \ || exit 1 +@endif fastjar .PHONY: maybe-dvi-fastjar dvi-fastjar maybe-dvi-fastjar: +@if fastjar +maybe-dvi-fastjar: dvi-fastjar dvi-fastjar: \ configure-fastjar @@ -5792,6 +6504,7 @@ dvi-fastjar: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5804,9 +6517,12 @@ dvi-fastjar: \ dvi) \ || exit 1 +@endif fastjar .PHONY: maybe-TAGS-fastjar TAGS-fastjar maybe-TAGS-fastjar: +@if fastjar +maybe-TAGS-fastjar: TAGS-fastjar TAGS-fastjar: \ configure-fastjar @@ -5814,6 +6530,7 @@ TAGS-fastjar: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5826,9 +6543,12 @@ TAGS-fastjar: \ TAGS) \ || exit 1 +@endif fastjar .PHONY: maybe-install-info-fastjar install-info-fastjar maybe-install-info-fastjar: +@if fastjar +maybe-install-info-fastjar: install-info-fastjar install-info-fastjar: \ configure-fastjar \ @@ -5837,6 +6557,7 @@ install-info-fastjar: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5849,9 +6570,12 @@ install-info-fastjar: \ install-info) \ || exit 1 +@endif fastjar .PHONY: maybe-installcheck-fastjar installcheck-fastjar maybe-installcheck-fastjar: +@if fastjar +maybe-installcheck-fastjar: installcheck-fastjar installcheck-fastjar: \ configure-fastjar @@ -5859,6 +6583,7 @@ installcheck-fastjar: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5871,15 +6596,19 @@ installcheck-fastjar: \ installcheck) \ || exit 1 +@endif fastjar .PHONY: maybe-mostlyclean-fastjar mostlyclean-fastjar maybe-mostlyclean-fastjar: +@if fastjar +maybe-mostlyclean-fastjar: mostlyclean-fastjar mostlyclean-fastjar: @[ -f ./fastjar/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5892,15 +6621,19 @@ mostlyclean-fastjar: mostlyclean) \ || exit 1 +@endif fastjar .PHONY: maybe-clean-fastjar clean-fastjar maybe-clean-fastjar: +@if fastjar +maybe-clean-fastjar: clean-fastjar clean-fastjar: @[ -f ./fastjar/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5913,15 +6646,19 @@ clean-fastjar: clean) \ || exit 1 +@endif fastjar .PHONY: maybe-distclean-fastjar distclean-fastjar maybe-distclean-fastjar: +@if fastjar +maybe-distclean-fastjar: distclean-fastjar distclean-fastjar: @[ -f ./fastjar/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5934,15 +6671,19 @@ distclean-fastjar: distclean) \ || exit 1 +@endif fastjar .PHONY: maybe-maintainer-clean-fastjar maintainer-clean-fastjar maybe-maintainer-clean-fastjar: +@if fastjar +maybe-maintainer-clean-fastjar: maintainer-clean-fastjar maintainer-clean-fastjar: @[ -f ./fastjar/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -5955,30 +6696,19 @@ maintainer-clean-fastjar: maintainer-clean) \ || exit 1 +@endif fastjar .PHONY: configure-fileutils maybe-configure-fileutils maybe-configure-fileutils: +@if fileutils +maybe-configure-fileutils: configure-fileutils configure-fileutils: @test ! -f fileutils/Makefile || exit 0; \ [ -d fileutils ] || mkdir fileutils; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in fileutils; \ cd fileutils || exit 1; \ case $(srcdir) in \ @@ -5995,39 +6725,54 @@ configure-fileutils: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif fileutils .PHONY: all-fileutils maybe-all-fileutils maybe-all-fileutils: +@if fileutils +maybe-all-fileutils: all-fileutils all-fileutils: configure-fileutils @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd fileutils && $(MAKE) $(FLAGS_TO_PASS) all) +@endif fileutils .PHONY: check-fileutils maybe-check-fileutils maybe-check-fileutils: +@if fileutils +maybe-check-fileutils: check-fileutils check-fileutils: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd fileutils && $(MAKE) $(FLAGS_TO_PASS) check) +@endif fileutils .PHONY: install-fileutils maybe-install-fileutils maybe-install-fileutils: +@if fileutils +maybe-install-fileutils: install-fileutils install-fileutils: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd fileutils && $(MAKE) $(FLAGS_TO_PASS) install) +@endif fileutils # Other targets (info, dvi, etc.) .PHONY: maybe-info-fileutils info-fileutils maybe-info-fileutils: +@if fileutils +maybe-info-fileutils: info-fileutils info-fileutils: \ configure-fileutils @@ -6035,6 +6780,7 @@ info-fileutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6047,9 +6793,12 @@ info-fileutils: \ info) \ || exit 1 +@endif fileutils .PHONY: maybe-dvi-fileutils dvi-fileutils maybe-dvi-fileutils: +@if fileutils +maybe-dvi-fileutils: dvi-fileutils dvi-fileutils: \ configure-fileutils @@ -6057,6 +6806,7 @@ dvi-fileutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6069,9 +6819,12 @@ dvi-fileutils: \ dvi) \ || exit 1 +@endif fileutils .PHONY: maybe-TAGS-fileutils TAGS-fileutils maybe-TAGS-fileutils: +@if fileutils +maybe-TAGS-fileutils: TAGS-fileutils TAGS-fileutils: \ configure-fileutils @@ -6079,6 +6832,7 @@ TAGS-fileutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6091,9 +6845,12 @@ TAGS-fileutils: \ TAGS) \ || exit 1 +@endif fileutils .PHONY: maybe-install-info-fileutils install-info-fileutils maybe-install-info-fileutils: +@if fileutils +maybe-install-info-fileutils: install-info-fileutils install-info-fileutils: \ configure-fileutils \ @@ -6102,6 +6859,7 @@ install-info-fileutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6114,9 +6872,12 @@ install-info-fileutils: \ install-info) \ || exit 1 +@endif fileutils .PHONY: maybe-installcheck-fileutils installcheck-fileutils maybe-installcheck-fileutils: +@if fileutils +maybe-installcheck-fileutils: installcheck-fileutils installcheck-fileutils: \ configure-fileutils @@ -6124,6 +6885,7 @@ installcheck-fileutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6136,15 +6898,19 @@ installcheck-fileutils: \ installcheck) \ || exit 1 +@endif fileutils .PHONY: maybe-mostlyclean-fileutils mostlyclean-fileutils maybe-mostlyclean-fileutils: +@if fileutils +maybe-mostlyclean-fileutils: mostlyclean-fileutils mostlyclean-fileutils: @[ -f ./fileutils/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6157,15 +6923,19 @@ mostlyclean-fileutils: mostlyclean) \ || exit 1 +@endif fileutils .PHONY: maybe-clean-fileutils clean-fileutils maybe-clean-fileutils: +@if fileutils +maybe-clean-fileutils: clean-fileutils clean-fileutils: @[ -f ./fileutils/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6178,15 +6948,19 @@ clean-fileutils: clean) \ || exit 1 +@endif fileutils .PHONY: maybe-distclean-fileutils distclean-fileutils maybe-distclean-fileutils: +@if fileutils +maybe-distclean-fileutils: distclean-fileutils distclean-fileutils: @[ -f ./fileutils/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6199,15 +6973,19 @@ distclean-fileutils: distclean) \ || exit 1 +@endif fileutils .PHONY: maybe-maintainer-clean-fileutils maintainer-clean-fileutils maybe-maintainer-clean-fileutils: +@if fileutils +maybe-maintainer-clean-fileutils: maintainer-clean-fileutils maintainer-clean-fileutils: @[ -f ./fileutils/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6220,30 +6998,19 @@ maintainer-clean-fileutils: maintainer-clean) \ || exit 1 +@endif fileutils .PHONY: configure-findutils maybe-configure-findutils maybe-configure-findutils: +@if findutils +maybe-configure-findutils: configure-findutils configure-findutils: @test ! -f findutils/Makefile || exit 0; \ [ -d findutils ] || mkdir findutils; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in findutils; \ cd findutils || exit 1; \ case $(srcdir) in \ @@ -6260,39 +7027,54 @@ configure-findutils: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif findutils .PHONY: all-findutils maybe-all-findutils maybe-all-findutils: +@if findutils +maybe-all-findutils: all-findutils all-findutils: configure-findutils @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd findutils && $(MAKE) $(FLAGS_TO_PASS) all) +@endif findutils .PHONY: check-findutils maybe-check-findutils maybe-check-findutils: +@if findutils +maybe-check-findutils: check-findutils check-findutils: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd findutils && $(MAKE) $(FLAGS_TO_PASS) check) +@endif findutils .PHONY: install-findutils maybe-install-findutils maybe-install-findutils: +@if findutils +maybe-install-findutils: install-findutils install-findutils: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd findutils && $(MAKE) $(FLAGS_TO_PASS) install) +@endif findutils # Other targets (info, dvi, etc.) .PHONY: maybe-info-findutils info-findutils maybe-info-findutils: +@if findutils +maybe-info-findutils: info-findutils info-findutils: \ configure-findutils @@ -6300,6 +7082,7 @@ info-findutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6312,9 +7095,12 @@ info-findutils: \ info) \ || exit 1 +@endif findutils .PHONY: maybe-dvi-findutils dvi-findutils maybe-dvi-findutils: +@if findutils +maybe-dvi-findutils: dvi-findutils dvi-findutils: \ configure-findutils @@ -6322,6 +7108,7 @@ dvi-findutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6334,9 +7121,12 @@ dvi-findutils: \ dvi) \ || exit 1 +@endif findutils .PHONY: maybe-TAGS-findutils TAGS-findutils maybe-TAGS-findutils: +@if findutils +maybe-TAGS-findutils: TAGS-findutils TAGS-findutils: \ configure-findutils @@ -6344,6 +7134,7 @@ TAGS-findutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6356,9 +7147,12 @@ TAGS-findutils: \ TAGS) \ || exit 1 +@endif findutils .PHONY: maybe-install-info-findutils install-info-findutils maybe-install-info-findutils: +@if findutils +maybe-install-info-findutils: install-info-findutils install-info-findutils: \ configure-findutils \ @@ -6367,6 +7161,7 @@ install-info-findutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6379,9 +7174,12 @@ install-info-findutils: \ install-info) \ || exit 1 +@endif findutils .PHONY: maybe-installcheck-findutils installcheck-findutils maybe-installcheck-findutils: +@if findutils +maybe-installcheck-findutils: installcheck-findutils installcheck-findutils: \ configure-findutils @@ -6389,6 +7187,7 @@ installcheck-findutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6401,15 +7200,19 @@ installcheck-findutils: \ installcheck) \ || exit 1 +@endif findutils .PHONY: maybe-mostlyclean-findutils mostlyclean-findutils maybe-mostlyclean-findutils: +@if findutils +maybe-mostlyclean-findutils: mostlyclean-findutils mostlyclean-findutils: @[ -f ./findutils/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6422,15 +7225,19 @@ mostlyclean-findutils: mostlyclean) \ || exit 1 +@endif findutils .PHONY: maybe-clean-findutils clean-findutils maybe-clean-findutils: +@if findutils +maybe-clean-findutils: clean-findutils clean-findutils: @[ -f ./findutils/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6443,15 +7250,19 @@ clean-findutils: clean) \ || exit 1 +@endif findutils .PHONY: maybe-distclean-findutils distclean-findutils maybe-distclean-findutils: +@if findutils +maybe-distclean-findutils: distclean-findutils distclean-findutils: @[ -f ./findutils/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6464,15 +7275,19 @@ distclean-findutils: distclean) \ || exit 1 +@endif findutils .PHONY: maybe-maintainer-clean-findutils maintainer-clean-findutils maybe-maintainer-clean-findutils: +@if findutils +maybe-maintainer-clean-findutils: maintainer-clean-findutils maintainer-clean-findutils: @[ -f ./findutils/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6485,30 +7300,19 @@ maintainer-clean-findutils: maintainer-clean) \ || exit 1 +@endif findutils .PHONY: configure-find maybe-configure-find maybe-configure-find: +@if find +maybe-configure-find: configure-find configure-find: @test ! -f find/Makefile || exit 0; \ [ -d find ] || mkdir find; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in find; \ cd find || exit 1; \ case $(srcdir) in \ @@ -6525,39 +7329,54 @@ configure-find: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif find .PHONY: all-find maybe-all-find maybe-all-find: +@if find +maybe-all-find: all-find all-find: configure-find @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd find && $(MAKE) $(FLAGS_TO_PASS) all) +@endif find .PHONY: check-find maybe-check-find maybe-check-find: +@if find +maybe-check-find: check-find check-find: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd find && $(MAKE) $(FLAGS_TO_PASS) check) +@endif find .PHONY: install-find maybe-install-find maybe-install-find: +@if find +maybe-install-find: install-find install-find: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd find && $(MAKE) $(FLAGS_TO_PASS) install) +@endif find # Other targets (info, dvi, etc.) .PHONY: maybe-info-find info-find maybe-info-find: +@if find +maybe-info-find: info-find info-find: \ configure-find @@ -6565,6 +7384,7 @@ info-find: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6577,9 +7397,12 @@ info-find: \ info) \ || exit 1 +@endif find .PHONY: maybe-dvi-find dvi-find maybe-dvi-find: +@if find +maybe-dvi-find: dvi-find dvi-find: \ configure-find @@ -6587,6 +7410,7 @@ dvi-find: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6599,9 +7423,12 @@ dvi-find: \ dvi) \ || exit 1 +@endif find .PHONY: maybe-TAGS-find TAGS-find maybe-TAGS-find: +@if find +maybe-TAGS-find: TAGS-find TAGS-find: \ configure-find @@ -6609,6 +7436,7 @@ TAGS-find: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6621,9 +7449,12 @@ TAGS-find: \ TAGS) \ || exit 1 +@endif find .PHONY: maybe-install-info-find install-info-find maybe-install-info-find: +@if find +maybe-install-info-find: install-info-find install-info-find: \ configure-find \ @@ -6632,6 +7463,7 @@ install-info-find: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6644,9 +7476,12 @@ install-info-find: \ install-info) \ || exit 1 +@endif find .PHONY: maybe-installcheck-find installcheck-find maybe-installcheck-find: +@if find +maybe-installcheck-find: installcheck-find installcheck-find: \ configure-find @@ -6654,6 +7489,7 @@ installcheck-find: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6666,15 +7502,19 @@ installcheck-find: \ installcheck) \ || exit 1 +@endif find .PHONY: maybe-mostlyclean-find mostlyclean-find maybe-mostlyclean-find: +@if find +maybe-mostlyclean-find: mostlyclean-find mostlyclean-find: @[ -f ./find/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6687,15 +7527,19 @@ mostlyclean-find: mostlyclean) \ || exit 1 +@endif find .PHONY: maybe-clean-find clean-find maybe-clean-find: +@if find +maybe-clean-find: clean-find clean-find: @[ -f ./find/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6708,15 +7552,19 @@ clean-find: clean) \ || exit 1 +@endif find .PHONY: maybe-distclean-find distclean-find maybe-distclean-find: +@if find +maybe-distclean-find: distclean-find distclean-find: @[ -f ./find/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6729,15 +7577,19 @@ distclean-find: distclean) \ || exit 1 +@endif find .PHONY: maybe-maintainer-clean-find maintainer-clean-find maybe-maintainer-clean-find: +@if find +maybe-maintainer-clean-find: maintainer-clean-find maintainer-clean-find: @[ -f ./find/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6750,30 +7602,19 @@ maintainer-clean-find: maintainer-clean) \ || exit 1 +@endif find .PHONY: configure-flex maybe-configure-flex maybe-configure-flex: +@if flex +maybe-configure-flex: configure-flex configure-flex: @test ! -f flex/Makefile || exit 0; \ [ -d flex ] || mkdir flex; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in flex; \ cd flex || exit 1; \ case $(srcdir) in \ @@ -6790,17 +7631,24 @@ configure-flex: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif flex .PHONY: all-flex maybe-all-flex maybe-all-flex: +@if flex +maybe-all-flex: all-flex all-flex: configure-flex @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd flex && $(MAKE) $(FLAGS_TO_PASS) all) +@endif flex .PHONY: check-flex maybe-check-flex maybe-check-flex: +@if flex +maybe-check-flex: check-flex # This module is only tested in a native toolchain. check-flex: @@ -6808,24 +7656,32 @@ check-flex: r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd flex && $(MAKE) $(FLAGS_TO_PASS) check); \ fi +@endif flex .PHONY: install-flex maybe-install-flex maybe-install-flex: +@if flex +maybe-install-flex: install-flex install-flex: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd flex && $(MAKE) $(FLAGS_TO_PASS) install) +@endif flex # Other targets (info, dvi, etc.) .PHONY: maybe-info-flex info-flex maybe-info-flex: +@if flex +maybe-info-flex: info-flex info-flex: \ configure-flex @@ -6833,6 +7689,7 @@ info-flex: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6845,9 +7702,12 @@ info-flex: \ info) \ || exit 1 +@endif flex .PHONY: maybe-dvi-flex dvi-flex maybe-dvi-flex: +@if flex +maybe-dvi-flex: dvi-flex dvi-flex: \ configure-flex @@ -6855,6 +7715,7 @@ dvi-flex: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6867,9 +7728,12 @@ dvi-flex: \ dvi) \ || exit 1 +@endif flex .PHONY: maybe-TAGS-flex TAGS-flex maybe-TAGS-flex: +@if flex +maybe-TAGS-flex: TAGS-flex TAGS-flex: \ configure-flex @@ -6877,6 +7741,7 @@ TAGS-flex: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6889,9 +7754,12 @@ TAGS-flex: \ TAGS) \ || exit 1 +@endif flex .PHONY: maybe-install-info-flex install-info-flex maybe-install-info-flex: +@if flex +maybe-install-info-flex: install-info-flex install-info-flex: \ configure-flex \ @@ -6900,6 +7768,7 @@ install-info-flex: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6912,9 +7781,12 @@ install-info-flex: \ install-info) \ || exit 1 +@endif flex .PHONY: maybe-installcheck-flex installcheck-flex maybe-installcheck-flex: +@if flex +maybe-installcheck-flex: installcheck-flex installcheck-flex: \ configure-flex @@ -6922,6 +7794,7 @@ installcheck-flex: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6934,15 +7807,19 @@ installcheck-flex: \ installcheck) \ || exit 1 +@endif flex .PHONY: maybe-mostlyclean-flex mostlyclean-flex maybe-mostlyclean-flex: +@if flex +maybe-mostlyclean-flex: mostlyclean-flex mostlyclean-flex: @[ -f ./flex/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6955,15 +7832,19 @@ mostlyclean-flex: mostlyclean) \ || exit 1 +@endif flex .PHONY: maybe-clean-flex clean-flex maybe-clean-flex: +@if flex +maybe-clean-flex: clean-flex clean-flex: @[ -f ./flex/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6976,15 +7857,19 @@ clean-flex: clean) \ || exit 1 +@endif flex .PHONY: maybe-distclean-flex distclean-flex maybe-distclean-flex: +@if flex +maybe-distclean-flex: distclean-flex distclean-flex: @[ -f ./flex/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -6997,15 +7882,19 @@ distclean-flex: distclean) \ || exit 1 +@endif flex .PHONY: maybe-maintainer-clean-flex maintainer-clean-flex maybe-maintainer-clean-flex: +@if flex +maybe-maintainer-clean-flex: maintainer-clean-flex maintainer-clean-flex: @[ -f ./flex/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7018,30 +7907,19 @@ maintainer-clean-flex: maintainer-clean) \ || exit 1 +@endif flex .PHONY: configure-gas maybe-configure-gas maybe-configure-gas: +@if gas +maybe-configure-gas: configure-gas configure-gas: @test ! -f gas/Makefile || exit 0; \ [ -d gas ] || mkdir gas; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in gas; \ cd gas || exit 1; \ case $(srcdir) in \ @@ -7058,39 +7936,54 @@ configure-gas: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif gas .PHONY: all-gas maybe-all-gas maybe-all-gas: +@if gas +maybe-all-gas: all-gas all-gas: configure-gas @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd gas && $(MAKE) $(FLAGS_TO_PASS) all) +@endif gas .PHONY: check-gas maybe-check-gas maybe-check-gas: +@if gas +maybe-check-gas: check-gas check-gas: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd gas && $(MAKE) $(FLAGS_TO_PASS) check) +@endif gas .PHONY: install-gas maybe-install-gas maybe-install-gas: +@if gas +maybe-install-gas: install-gas install-gas: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd gas && $(MAKE) $(FLAGS_TO_PASS) install) +@endif gas # Other targets (info, dvi, etc.) .PHONY: maybe-info-gas info-gas maybe-info-gas: +@if gas +maybe-info-gas: info-gas info-gas: \ configure-gas @@ -7098,6 +7991,7 @@ info-gas: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7110,9 +8004,12 @@ info-gas: \ info) \ || exit 1 +@endif gas .PHONY: maybe-dvi-gas dvi-gas maybe-dvi-gas: +@if gas +maybe-dvi-gas: dvi-gas dvi-gas: \ configure-gas @@ -7120,6 +8017,7 @@ dvi-gas: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7132,9 +8030,12 @@ dvi-gas: \ dvi) \ || exit 1 +@endif gas .PHONY: maybe-TAGS-gas TAGS-gas maybe-TAGS-gas: +@if gas +maybe-TAGS-gas: TAGS-gas TAGS-gas: \ configure-gas @@ -7142,6 +8043,7 @@ TAGS-gas: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7154,9 +8056,12 @@ TAGS-gas: \ TAGS) \ || exit 1 +@endif gas .PHONY: maybe-install-info-gas install-info-gas maybe-install-info-gas: +@if gas +maybe-install-info-gas: install-info-gas install-info-gas: \ configure-gas \ @@ -7165,6 +8070,7 @@ install-info-gas: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7177,9 +8083,12 @@ install-info-gas: \ install-info) \ || exit 1 +@endif gas .PHONY: maybe-installcheck-gas installcheck-gas maybe-installcheck-gas: +@if gas +maybe-installcheck-gas: installcheck-gas installcheck-gas: \ configure-gas @@ -7187,6 +8096,7 @@ installcheck-gas: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7199,15 +8109,19 @@ installcheck-gas: \ installcheck) \ || exit 1 +@endif gas .PHONY: maybe-mostlyclean-gas mostlyclean-gas maybe-mostlyclean-gas: +@if gas +maybe-mostlyclean-gas: mostlyclean-gas mostlyclean-gas: @[ -f ./gas/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7220,15 +8134,19 @@ mostlyclean-gas: mostlyclean) \ || exit 1 +@endif gas .PHONY: maybe-clean-gas clean-gas maybe-clean-gas: +@if gas +maybe-clean-gas: clean-gas clean-gas: @[ -f ./gas/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7241,15 +8159,19 @@ clean-gas: clean) \ || exit 1 +@endif gas .PHONY: maybe-distclean-gas distclean-gas maybe-distclean-gas: +@if gas +maybe-distclean-gas: distclean-gas distclean-gas: @[ -f ./gas/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7262,15 +8184,19 @@ distclean-gas: distclean) \ || exit 1 +@endif gas .PHONY: maybe-maintainer-clean-gas maintainer-clean-gas maybe-maintainer-clean-gas: +@if gas +maybe-maintainer-clean-gas: maintainer-clean-gas maintainer-clean-gas: @[ -f ./gas/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7283,30 +8209,19 @@ maintainer-clean-gas: maintainer-clean) \ || exit 1 +@endif gas .PHONY: configure-gawk maybe-configure-gawk maybe-configure-gawk: +@if gawk +maybe-configure-gawk: configure-gawk configure-gawk: @test ! -f gawk/Makefile || exit 0; \ [ -d gawk ] || mkdir gawk; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in gawk; \ cd gawk || exit 1; \ case $(srcdir) in \ @@ -7323,39 +8238,54 @@ configure-gawk: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif gawk .PHONY: all-gawk maybe-all-gawk maybe-all-gawk: +@if gawk +maybe-all-gawk: all-gawk all-gawk: configure-gawk @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd gawk && $(MAKE) $(FLAGS_TO_PASS) all) +@endif gawk .PHONY: check-gawk maybe-check-gawk maybe-check-gawk: +@if gawk +maybe-check-gawk: check-gawk check-gawk: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd gawk && $(MAKE) $(FLAGS_TO_PASS) check) +@endif gawk .PHONY: install-gawk maybe-install-gawk maybe-install-gawk: +@if gawk +maybe-install-gawk: install-gawk install-gawk: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd gawk && $(MAKE) $(FLAGS_TO_PASS) install) +@endif gawk # Other targets (info, dvi, etc.) .PHONY: maybe-info-gawk info-gawk maybe-info-gawk: +@if gawk +maybe-info-gawk: info-gawk info-gawk: \ configure-gawk @@ -7363,6 +8293,7 @@ info-gawk: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7375,9 +8306,12 @@ info-gawk: \ info) \ || exit 1 +@endif gawk .PHONY: maybe-dvi-gawk dvi-gawk maybe-dvi-gawk: +@if gawk +maybe-dvi-gawk: dvi-gawk dvi-gawk: \ configure-gawk @@ -7385,6 +8319,7 @@ dvi-gawk: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7397,9 +8332,12 @@ dvi-gawk: \ dvi) \ || exit 1 +@endif gawk .PHONY: maybe-TAGS-gawk TAGS-gawk maybe-TAGS-gawk: +@if gawk +maybe-TAGS-gawk: TAGS-gawk TAGS-gawk: \ configure-gawk @@ -7407,6 +8345,7 @@ TAGS-gawk: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7419,9 +8358,12 @@ TAGS-gawk: \ TAGS) \ || exit 1 +@endif gawk .PHONY: maybe-install-info-gawk install-info-gawk maybe-install-info-gawk: +@if gawk +maybe-install-info-gawk: install-info-gawk install-info-gawk: \ configure-gawk \ @@ -7430,6 +8372,7 @@ install-info-gawk: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7442,9 +8385,12 @@ install-info-gawk: \ install-info) \ || exit 1 +@endif gawk .PHONY: maybe-installcheck-gawk installcheck-gawk maybe-installcheck-gawk: +@if gawk +maybe-installcheck-gawk: installcheck-gawk installcheck-gawk: \ configure-gawk @@ -7452,6 +8398,7 @@ installcheck-gawk: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7464,15 +8411,19 @@ installcheck-gawk: \ installcheck) \ || exit 1 +@endif gawk .PHONY: maybe-mostlyclean-gawk mostlyclean-gawk maybe-mostlyclean-gawk: +@if gawk +maybe-mostlyclean-gawk: mostlyclean-gawk mostlyclean-gawk: @[ -f ./gawk/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7485,15 +8436,19 @@ mostlyclean-gawk: mostlyclean) \ || exit 1 +@endif gawk .PHONY: maybe-clean-gawk clean-gawk maybe-clean-gawk: +@if gawk +maybe-clean-gawk: clean-gawk clean-gawk: @[ -f ./gawk/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7506,15 +8461,19 @@ clean-gawk: clean) \ || exit 1 +@endif gawk .PHONY: maybe-distclean-gawk distclean-gawk maybe-distclean-gawk: +@if gawk +maybe-distclean-gawk: distclean-gawk distclean-gawk: @[ -f ./gawk/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7527,15 +8486,19 @@ distclean-gawk: distclean) \ || exit 1 +@endif gawk .PHONY: maybe-maintainer-clean-gawk maintainer-clean-gawk maybe-maintainer-clean-gawk: +@if gawk +maybe-maintainer-clean-gawk: maintainer-clean-gawk maintainer-clean-gawk: @[ -f ./gawk/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7548,30 +8511,19 @@ maintainer-clean-gawk: maintainer-clean) \ || exit 1 +@endif gawk .PHONY: configure-gettext maybe-configure-gettext maybe-configure-gettext: +@if gettext +maybe-configure-gettext: configure-gettext configure-gettext: @test ! -f gettext/Makefile || exit 0; \ [ -d gettext ] || mkdir gettext; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in gettext; \ cd gettext || exit 1; \ case $(srcdir) in \ @@ -7588,39 +8540,54 @@ configure-gettext: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif gettext .PHONY: all-gettext maybe-all-gettext maybe-all-gettext: +@if gettext +maybe-all-gettext: all-gettext all-gettext: configure-gettext @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd gettext && $(MAKE) $(FLAGS_TO_PASS) all) +@endif gettext .PHONY: check-gettext maybe-check-gettext maybe-check-gettext: +@if gettext +maybe-check-gettext: check-gettext check-gettext: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd gettext && $(MAKE) $(FLAGS_TO_PASS) check) +@endif gettext .PHONY: install-gettext maybe-install-gettext maybe-install-gettext: +@if gettext +maybe-install-gettext: install-gettext install-gettext: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd gettext && $(MAKE) $(FLAGS_TO_PASS) install) +@endif gettext # Other targets (info, dvi, etc.) .PHONY: maybe-info-gettext info-gettext maybe-info-gettext: +@if gettext +maybe-info-gettext: info-gettext info-gettext: \ configure-gettext @@ -7628,6 +8595,7 @@ info-gettext: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7640,9 +8608,12 @@ info-gettext: \ info) \ || exit 1 +@endif gettext .PHONY: maybe-dvi-gettext dvi-gettext maybe-dvi-gettext: +@if gettext +maybe-dvi-gettext: dvi-gettext dvi-gettext: \ configure-gettext @@ -7650,6 +8621,7 @@ dvi-gettext: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7662,9 +8634,12 @@ dvi-gettext: \ dvi) \ || exit 1 +@endif gettext .PHONY: maybe-TAGS-gettext TAGS-gettext maybe-TAGS-gettext: +@if gettext +maybe-TAGS-gettext: TAGS-gettext TAGS-gettext: \ configure-gettext @@ -7672,6 +8647,7 @@ TAGS-gettext: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7684,9 +8660,12 @@ TAGS-gettext: \ TAGS) \ || exit 1 +@endif gettext .PHONY: maybe-install-info-gettext install-info-gettext maybe-install-info-gettext: +@if gettext +maybe-install-info-gettext: install-info-gettext install-info-gettext: \ configure-gettext \ @@ -7695,6 +8674,7 @@ install-info-gettext: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7707,9 +8687,12 @@ install-info-gettext: \ install-info) \ || exit 1 +@endif gettext .PHONY: maybe-installcheck-gettext installcheck-gettext maybe-installcheck-gettext: +@if gettext +maybe-installcheck-gettext: installcheck-gettext installcheck-gettext: \ configure-gettext @@ -7717,6 +8700,7 @@ installcheck-gettext: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7729,15 +8713,19 @@ installcheck-gettext: \ installcheck) \ || exit 1 +@endif gettext .PHONY: maybe-mostlyclean-gettext mostlyclean-gettext maybe-mostlyclean-gettext: +@if gettext +maybe-mostlyclean-gettext: mostlyclean-gettext mostlyclean-gettext: @[ -f ./gettext/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7750,15 +8738,19 @@ mostlyclean-gettext: mostlyclean) \ || exit 1 +@endif gettext .PHONY: maybe-clean-gettext clean-gettext maybe-clean-gettext: +@if gettext +maybe-clean-gettext: clean-gettext clean-gettext: @[ -f ./gettext/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7771,15 +8763,19 @@ clean-gettext: clean) \ || exit 1 +@endif gettext .PHONY: maybe-distclean-gettext distclean-gettext maybe-distclean-gettext: +@if gettext +maybe-distclean-gettext: distclean-gettext distclean-gettext: @[ -f ./gettext/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7792,15 +8788,19 @@ distclean-gettext: distclean) \ || exit 1 +@endif gettext .PHONY: maybe-maintainer-clean-gettext maintainer-clean-gettext maybe-maintainer-clean-gettext: +@if gettext +maybe-maintainer-clean-gettext: maintainer-clean-gettext maintainer-clean-gettext: @[ -f ./gettext/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7813,30 +8813,19 @@ maintainer-clean-gettext: maintainer-clean) \ || exit 1 +@endif gettext .PHONY: configure-gnuserv maybe-configure-gnuserv maybe-configure-gnuserv: +@if gnuserv +maybe-configure-gnuserv: configure-gnuserv configure-gnuserv: @test ! -f gnuserv/Makefile || exit 0; \ [ -d gnuserv ] || mkdir gnuserv; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in gnuserv; \ cd gnuserv || exit 1; \ case $(srcdir) in \ @@ -7853,39 +8842,54 @@ configure-gnuserv: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif gnuserv .PHONY: all-gnuserv maybe-all-gnuserv maybe-all-gnuserv: +@if gnuserv +maybe-all-gnuserv: all-gnuserv all-gnuserv: configure-gnuserv @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd gnuserv && $(MAKE) $(FLAGS_TO_PASS) all) +@endif gnuserv .PHONY: check-gnuserv maybe-check-gnuserv maybe-check-gnuserv: +@if gnuserv +maybe-check-gnuserv: check-gnuserv check-gnuserv: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd gnuserv && $(MAKE) $(FLAGS_TO_PASS) check) +@endif gnuserv .PHONY: install-gnuserv maybe-install-gnuserv maybe-install-gnuserv: +@if gnuserv +maybe-install-gnuserv: install-gnuserv install-gnuserv: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd gnuserv && $(MAKE) $(FLAGS_TO_PASS) install) +@endif gnuserv # Other targets (info, dvi, etc.) .PHONY: maybe-info-gnuserv info-gnuserv maybe-info-gnuserv: +@if gnuserv +maybe-info-gnuserv: info-gnuserv info-gnuserv: \ configure-gnuserv @@ -7893,6 +8897,7 @@ info-gnuserv: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7905,9 +8910,12 @@ info-gnuserv: \ info) \ || exit 1 +@endif gnuserv .PHONY: maybe-dvi-gnuserv dvi-gnuserv maybe-dvi-gnuserv: +@if gnuserv +maybe-dvi-gnuserv: dvi-gnuserv dvi-gnuserv: \ configure-gnuserv @@ -7915,6 +8923,7 @@ dvi-gnuserv: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7927,9 +8936,12 @@ dvi-gnuserv: \ dvi) \ || exit 1 +@endif gnuserv .PHONY: maybe-TAGS-gnuserv TAGS-gnuserv maybe-TAGS-gnuserv: +@if gnuserv +maybe-TAGS-gnuserv: TAGS-gnuserv TAGS-gnuserv: \ configure-gnuserv @@ -7937,6 +8949,7 @@ TAGS-gnuserv: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7949,9 +8962,12 @@ TAGS-gnuserv: \ TAGS) \ || exit 1 +@endif gnuserv .PHONY: maybe-install-info-gnuserv install-info-gnuserv maybe-install-info-gnuserv: +@if gnuserv +maybe-install-info-gnuserv: install-info-gnuserv install-info-gnuserv: \ configure-gnuserv \ @@ -7960,6 +8976,7 @@ install-info-gnuserv: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7972,9 +8989,12 @@ install-info-gnuserv: \ install-info) \ || exit 1 +@endif gnuserv .PHONY: maybe-installcheck-gnuserv installcheck-gnuserv maybe-installcheck-gnuserv: +@if gnuserv +maybe-installcheck-gnuserv: installcheck-gnuserv installcheck-gnuserv: \ configure-gnuserv @@ -7982,6 +9002,7 @@ installcheck-gnuserv: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -7994,15 +9015,19 @@ installcheck-gnuserv: \ installcheck) \ || exit 1 +@endif gnuserv .PHONY: maybe-mostlyclean-gnuserv mostlyclean-gnuserv maybe-mostlyclean-gnuserv: +@if gnuserv +maybe-mostlyclean-gnuserv: mostlyclean-gnuserv mostlyclean-gnuserv: @[ -f ./gnuserv/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8015,15 +9040,19 @@ mostlyclean-gnuserv: mostlyclean) \ || exit 1 +@endif gnuserv .PHONY: maybe-clean-gnuserv clean-gnuserv maybe-clean-gnuserv: +@if gnuserv +maybe-clean-gnuserv: clean-gnuserv clean-gnuserv: @[ -f ./gnuserv/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8036,15 +9065,19 @@ clean-gnuserv: clean) \ || exit 1 +@endif gnuserv .PHONY: maybe-distclean-gnuserv distclean-gnuserv maybe-distclean-gnuserv: +@if gnuserv +maybe-distclean-gnuserv: distclean-gnuserv distclean-gnuserv: @[ -f ./gnuserv/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8057,15 +9090,19 @@ distclean-gnuserv: distclean) \ || exit 1 +@endif gnuserv .PHONY: maybe-maintainer-clean-gnuserv maintainer-clean-gnuserv maybe-maintainer-clean-gnuserv: +@if gnuserv +maybe-maintainer-clean-gnuserv: maintainer-clean-gnuserv maintainer-clean-gnuserv: @[ -f ./gnuserv/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8078,30 +9115,19 @@ maintainer-clean-gnuserv: maintainer-clean) \ || exit 1 +@endif gnuserv .PHONY: configure-gprof maybe-configure-gprof maybe-configure-gprof: +@if gprof +maybe-configure-gprof: configure-gprof configure-gprof: @test ! -f gprof/Makefile || exit 0; \ [ -d gprof ] || mkdir gprof; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in gprof; \ cd gprof || exit 1; \ case $(srcdir) in \ @@ -8118,39 +9144,54 @@ configure-gprof: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif gprof .PHONY: all-gprof maybe-all-gprof maybe-all-gprof: +@if gprof +maybe-all-gprof: all-gprof all-gprof: configure-gprof @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd gprof && $(MAKE) $(FLAGS_TO_PASS) all) +@endif gprof .PHONY: check-gprof maybe-check-gprof maybe-check-gprof: +@if gprof +maybe-check-gprof: check-gprof check-gprof: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd gprof && $(MAKE) $(FLAGS_TO_PASS) check) +@endif gprof .PHONY: install-gprof maybe-install-gprof maybe-install-gprof: +@if gprof +maybe-install-gprof: install-gprof install-gprof: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd gprof && $(MAKE) $(FLAGS_TO_PASS) install) +@endif gprof # Other targets (info, dvi, etc.) .PHONY: maybe-info-gprof info-gprof maybe-info-gprof: +@if gprof +maybe-info-gprof: info-gprof info-gprof: \ configure-gprof @@ -8158,6 +9199,7 @@ info-gprof: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8170,9 +9212,12 @@ info-gprof: \ info) \ || exit 1 +@endif gprof .PHONY: maybe-dvi-gprof dvi-gprof maybe-dvi-gprof: +@if gprof +maybe-dvi-gprof: dvi-gprof dvi-gprof: \ configure-gprof @@ -8180,6 +9225,7 @@ dvi-gprof: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8192,9 +9238,12 @@ dvi-gprof: \ dvi) \ || exit 1 +@endif gprof .PHONY: maybe-TAGS-gprof TAGS-gprof maybe-TAGS-gprof: +@if gprof +maybe-TAGS-gprof: TAGS-gprof TAGS-gprof: \ configure-gprof @@ -8202,6 +9251,7 @@ TAGS-gprof: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8214,9 +9264,12 @@ TAGS-gprof: \ TAGS) \ || exit 1 +@endif gprof .PHONY: maybe-install-info-gprof install-info-gprof maybe-install-info-gprof: +@if gprof +maybe-install-info-gprof: install-info-gprof install-info-gprof: \ configure-gprof \ @@ -8225,6 +9278,7 @@ install-info-gprof: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8237,9 +9291,12 @@ install-info-gprof: \ install-info) \ || exit 1 +@endif gprof .PHONY: maybe-installcheck-gprof installcheck-gprof maybe-installcheck-gprof: +@if gprof +maybe-installcheck-gprof: installcheck-gprof installcheck-gprof: \ configure-gprof @@ -8247,6 +9304,7 @@ installcheck-gprof: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8259,15 +9317,19 @@ installcheck-gprof: \ installcheck) \ || exit 1 +@endif gprof .PHONY: maybe-mostlyclean-gprof mostlyclean-gprof maybe-mostlyclean-gprof: +@if gprof +maybe-mostlyclean-gprof: mostlyclean-gprof mostlyclean-gprof: @[ -f ./gprof/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8280,15 +9342,19 @@ mostlyclean-gprof: mostlyclean) \ || exit 1 +@endif gprof .PHONY: maybe-clean-gprof clean-gprof maybe-clean-gprof: +@if gprof +maybe-clean-gprof: clean-gprof clean-gprof: @[ -f ./gprof/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8301,15 +9367,19 @@ clean-gprof: clean) \ || exit 1 +@endif gprof .PHONY: maybe-distclean-gprof distclean-gprof maybe-distclean-gprof: +@if gprof +maybe-distclean-gprof: distclean-gprof distclean-gprof: @[ -f ./gprof/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8322,15 +9392,19 @@ distclean-gprof: distclean) \ || exit 1 +@endif gprof .PHONY: maybe-maintainer-clean-gprof maintainer-clean-gprof maybe-maintainer-clean-gprof: +@if gprof +maybe-maintainer-clean-gprof: maintainer-clean-gprof maintainer-clean-gprof: @[ -f ./gprof/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8343,30 +9417,19 @@ maintainer-clean-gprof: maintainer-clean) \ || exit 1 +@endif gprof .PHONY: configure-gzip maybe-configure-gzip maybe-configure-gzip: +@if gzip +maybe-configure-gzip: configure-gzip configure-gzip: @test ! -f gzip/Makefile || exit 0; \ [ -d gzip ] || mkdir gzip; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in gzip; \ cd gzip || exit 1; \ case $(srcdir) in \ @@ -8383,39 +9446,54 @@ configure-gzip: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif gzip .PHONY: all-gzip maybe-all-gzip maybe-all-gzip: +@if gzip +maybe-all-gzip: all-gzip all-gzip: configure-gzip @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd gzip && $(MAKE) $(FLAGS_TO_PASS) all) +@endif gzip .PHONY: check-gzip maybe-check-gzip maybe-check-gzip: +@if gzip +maybe-check-gzip: check-gzip check-gzip: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd gzip && $(MAKE) $(FLAGS_TO_PASS) check) +@endif gzip .PHONY: install-gzip maybe-install-gzip maybe-install-gzip: +@if gzip +maybe-install-gzip: install-gzip install-gzip: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd gzip && $(MAKE) $(FLAGS_TO_PASS) install) +@endif gzip # Other targets (info, dvi, etc.) .PHONY: maybe-info-gzip info-gzip maybe-info-gzip: +@if gzip +maybe-info-gzip: info-gzip info-gzip: \ configure-gzip @@ -8423,6 +9501,7 @@ info-gzip: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8435,9 +9514,12 @@ info-gzip: \ info) \ || exit 1 +@endif gzip .PHONY: maybe-dvi-gzip dvi-gzip maybe-dvi-gzip: +@if gzip +maybe-dvi-gzip: dvi-gzip dvi-gzip: \ configure-gzip @@ -8445,6 +9527,7 @@ dvi-gzip: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8457,9 +9540,12 @@ dvi-gzip: \ dvi) \ || exit 1 +@endif gzip .PHONY: maybe-TAGS-gzip TAGS-gzip maybe-TAGS-gzip: +@if gzip +maybe-TAGS-gzip: TAGS-gzip TAGS-gzip: \ configure-gzip @@ -8467,6 +9553,7 @@ TAGS-gzip: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8479,9 +9566,12 @@ TAGS-gzip: \ TAGS) \ || exit 1 +@endif gzip .PHONY: maybe-install-info-gzip install-info-gzip maybe-install-info-gzip: +@if gzip +maybe-install-info-gzip: install-info-gzip install-info-gzip: \ configure-gzip \ @@ -8490,6 +9580,7 @@ install-info-gzip: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8502,9 +9593,12 @@ install-info-gzip: \ install-info) \ || exit 1 +@endif gzip .PHONY: maybe-installcheck-gzip installcheck-gzip maybe-installcheck-gzip: +@if gzip +maybe-installcheck-gzip: installcheck-gzip installcheck-gzip: \ configure-gzip @@ -8512,6 +9606,7 @@ installcheck-gzip: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8524,15 +9619,19 @@ installcheck-gzip: \ installcheck) \ || exit 1 +@endif gzip .PHONY: maybe-mostlyclean-gzip mostlyclean-gzip maybe-mostlyclean-gzip: +@if gzip +maybe-mostlyclean-gzip: mostlyclean-gzip mostlyclean-gzip: @[ -f ./gzip/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8545,15 +9644,19 @@ mostlyclean-gzip: mostlyclean) \ || exit 1 +@endif gzip .PHONY: maybe-clean-gzip clean-gzip maybe-clean-gzip: +@if gzip +maybe-clean-gzip: clean-gzip clean-gzip: @[ -f ./gzip/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8566,15 +9669,19 @@ clean-gzip: clean) \ || exit 1 +@endif gzip .PHONY: maybe-distclean-gzip distclean-gzip maybe-distclean-gzip: +@if gzip +maybe-distclean-gzip: distclean-gzip distclean-gzip: @[ -f ./gzip/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8587,15 +9694,19 @@ distclean-gzip: distclean) \ || exit 1 +@endif gzip .PHONY: maybe-maintainer-clean-gzip maintainer-clean-gzip maybe-maintainer-clean-gzip: +@if gzip +maybe-maintainer-clean-gzip: maintainer-clean-gzip maintainer-clean-gzip: @[ -f ./gzip/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8608,30 +9719,19 @@ maintainer-clean-gzip: maintainer-clean) \ || exit 1 +@endif gzip .PHONY: configure-hello maybe-configure-hello maybe-configure-hello: +@if hello +maybe-configure-hello: configure-hello configure-hello: @test ! -f hello/Makefile || exit 0; \ [ -d hello ] || mkdir hello; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in hello; \ cd hello || exit 1; \ case $(srcdir) in \ @@ -8648,39 +9748,54 @@ configure-hello: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif hello .PHONY: all-hello maybe-all-hello maybe-all-hello: +@if hello +maybe-all-hello: all-hello all-hello: configure-hello @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd hello && $(MAKE) $(FLAGS_TO_PASS) all) +@endif hello .PHONY: check-hello maybe-check-hello maybe-check-hello: +@if hello +maybe-check-hello: check-hello check-hello: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd hello && $(MAKE) $(FLAGS_TO_PASS) check) +@endif hello .PHONY: install-hello maybe-install-hello maybe-install-hello: +@if hello +maybe-install-hello: install-hello install-hello: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd hello && $(MAKE) $(FLAGS_TO_PASS) install) +@endif hello # Other targets (info, dvi, etc.) .PHONY: maybe-info-hello info-hello maybe-info-hello: +@if hello +maybe-info-hello: info-hello info-hello: \ configure-hello @@ -8688,6 +9803,7 @@ info-hello: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8700,9 +9816,12 @@ info-hello: \ info) \ || exit 1 +@endif hello .PHONY: maybe-dvi-hello dvi-hello maybe-dvi-hello: +@if hello +maybe-dvi-hello: dvi-hello dvi-hello: \ configure-hello @@ -8710,6 +9829,7 @@ dvi-hello: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8722,9 +9842,12 @@ dvi-hello: \ dvi) \ || exit 1 +@endif hello .PHONY: maybe-TAGS-hello TAGS-hello maybe-TAGS-hello: +@if hello +maybe-TAGS-hello: TAGS-hello TAGS-hello: \ configure-hello @@ -8732,6 +9855,7 @@ TAGS-hello: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8744,9 +9868,12 @@ TAGS-hello: \ TAGS) \ || exit 1 +@endif hello .PHONY: maybe-install-info-hello install-info-hello maybe-install-info-hello: +@if hello +maybe-install-info-hello: install-info-hello install-info-hello: \ configure-hello \ @@ -8755,6 +9882,7 @@ install-info-hello: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8767,9 +9895,12 @@ install-info-hello: \ install-info) \ || exit 1 +@endif hello .PHONY: maybe-installcheck-hello installcheck-hello maybe-installcheck-hello: +@if hello +maybe-installcheck-hello: installcheck-hello installcheck-hello: \ configure-hello @@ -8777,6 +9908,7 @@ installcheck-hello: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8789,15 +9921,19 @@ installcheck-hello: \ installcheck) \ || exit 1 +@endif hello .PHONY: maybe-mostlyclean-hello mostlyclean-hello maybe-mostlyclean-hello: +@if hello +maybe-mostlyclean-hello: mostlyclean-hello mostlyclean-hello: @[ -f ./hello/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8810,15 +9946,19 @@ mostlyclean-hello: mostlyclean) \ || exit 1 +@endif hello .PHONY: maybe-clean-hello clean-hello maybe-clean-hello: +@if hello +maybe-clean-hello: clean-hello clean-hello: @[ -f ./hello/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8831,15 +9971,19 @@ clean-hello: clean) \ || exit 1 +@endif hello .PHONY: maybe-distclean-hello distclean-hello maybe-distclean-hello: +@if hello +maybe-distclean-hello: distclean-hello distclean-hello: @[ -f ./hello/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8852,15 +9996,19 @@ distclean-hello: distclean) \ || exit 1 +@endif hello .PHONY: maybe-maintainer-clean-hello maintainer-clean-hello maybe-maintainer-clean-hello: +@if hello +maybe-maintainer-clean-hello: maintainer-clean-hello maintainer-clean-hello: @[ -f ./hello/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8873,30 +10021,19 @@ maintainer-clean-hello: maintainer-clean) \ || exit 1 +@endif hello .PHONY: configure-indent maybe-configure-indent maybe-configure-indent: +@if indent +maybe-configure-indent: configure-indent configure-indent: @test ! -f indent/Makefile || exit 0; \ [ -d indent ] || mkdir indent; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in indent; \ cd indent || exit 1; \ case $(srcdir) in \ @@ -8913,39 +10050,54 @@ configure-indent: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif indent .PHONY: all-indent maybe-all-indent maybe-all-indent: +@if indent +maybe-all-indent: all-indent all-indent: configure-indent @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd indent && $(MAKE) $(FLAGS_TO_PASS) all) +@endif indent .PHONY: check-indent maybe-check-indent maybe-check-indent: +@if indent +maybe-check-indent: check-indent check-indent: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd indent && $(MAKE) $(FLAGS_TO_PASS) check) +@endif indent .PHONY: install-indent maybe-install-indent maybe-install-indent: +@if indent +maybe-install-indent: install-indent install-indent: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd indent && $(MAKE) $(FLAGS_TO_PASS) install) +@endif indent # Other targets (info, dvi, etc.) .PHONY: maybe-info-indent info-indent maybe-info-indent: +@if indent +maybe-info-indent: info-indent info-indent: \ configure-indent @@ -8953,6 +10105,7 @@ info-indent: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8965,9 +10118,12 @@ info-indent: \ info) \ || exit 1 +@endif indent .PHONY: maybe-dvi-indent dvi-indent maybe-dvi-indent: +@if indent +maybe-dvi-indent: dvi-indent dvi-indent: \ configure-indent @@ -8975,6 +10131,7 @@ dvi-indent: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -8987,9 +10144,12 @@ dvi-indent: \ dvi) \ || exit 1 +@endif indent .PHONY: maybe-TAGS-indent TAGS-indent maybe-TAGS-indent: +@if indent +maybe-TAGS-indent: TAGS-indent TAGS-indent: \ configure-indent @@ -8997,6 +10157,7 @@ TAGS-indent: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9009,9 +10170,12 @@ TAGS-indent: \ TAGS) \ || exit 1 +@endif indent .PHONY: maybe-install-info-indent install-info-indent maybe-install-info-indent: +@if indent +maybe-install-info-indent: install-info-indent install-info-indent: \ configure-indent \ @@ -9020,6 +10184,7 @@ install-info-indent: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9032,9 +10197,12 @@ install-info-indent: \ install-info) \ || exit 1 +@endif indent .PHONY: maybe-installcheck-indent installcheck-indent maybe-installcheck-indent: +@if indent +maybe-installcheck-indent: installcheck-indent installcheck-indent: \ configure-indent @@ -9042,6 +10210,7 @@ installcheck-indent: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9054,15 +10223,19 @@ installcheck-indent: \ installcheck) \ || exit 1 +@endif indent .PHONY: maybe-mostlyclean-indent mostlyclean-indent maybe-mostlyclean-indent: +@if indent +maybe-mostlyclean-indent: mostlyclean-indent mostlyclean-indent: @[ -f ./indent/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9075,15 +10248,19 @@ mostlyclean-indent: mostlyclean) \ || exit 1 +@endif indent .PHONY: maybe-clean-indent clean-indent maybe-clean-indent: +@if indent +maybe-clean-indent: clean-indent clean-indent: @[ -f ./indent/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9096,15 +10273,19 @@ clean-indent: clean) \ || exit 1 +@endif indent .PHONY: maybe-distclean-indent distclean-indent maybe-distclean-indent: +@if indent +maybe-distclean-indent: distclean-indent distclean-indent: @[ -f ./indent/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9117,15 +10298,19 @@ distclean-indent: distclean) \ || exit 1 +@endif indent .PHONY: maybe-maintainer-clean-indent maintainer-clean-indent maybe-maintainer-clean-indent: +@if indent +maybe-maintainer-clean-indent: maintainer-clean-indent maintainer-clean-indent: @[ -f ./indent/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9138,30 +10323,19 @@ maintainer-clean-indent: maintainer-clean) \ || exit 1 +@endif indent .PHONY: configure-intl maybe-configure-intl maybe-configure-intl: +@if intl +maybe-configure-intl: configure-intl configure-intl: @test ! -f intl/Makefile || exit 0; \ [ -d intl ] || mkdir intl; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in intl; \ cd intl || exit 1; \ case $(srcdir) in \ @@ -9178,39 +10352,54 @@ configure-intl: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif intl .PHONY: all-intl maybe-all-intl maybe-all-intl: +@if intl +maybe-all-intl: all-intl all-intl: configure-intl @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd intl && $(MAKE) $(FLAGS_TO_PASS) all) +@endif intl .PHONY: check-intl maybe-check-intl maybe-check-intl: +@if intl +maybe-check-intl: check-intl check-intl: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd intl && $(MAKE) $(FLAGS_TO_PASS) check) +@endif intl .PHONY: install-intl maybe-install-intl maybe-install-intl: +@if intl +maybe-install-intl: install-intl install-intl: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd intl && $(MAKE) $(FLAGS_TO_PASS) install) +@endif intl # Other targets (info, dvi, etc.) .PHONY: maybe-info-intl info-intl maybe-info-intl: +@if intl +maybe-info-intl: info-intl info-intl: \ configure-intl @@ -9218,6 +10407,7 @@ info-intl: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9230,9 +10420,12 @@ info-intl: \ info) \ || exit 1 +@endif intl .PHONY: maybe-dvi-intl dvi-intl maybe-dvi-intl: +@if intl +maybe-dvi-intl: dvi-intl dvi-intl: \ configure-intl @@ -9240,6 +10433,7 @@ dvi-intl: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9252,9 +10446,12 @@ dvi-intl: \ dvi) \ || exit 1 +@endif intl .PHONY: maybe-TAGS-intl TAGS-intl maybe-TAGS-intl: +@if intl +maybe-TAGS-intl: TAGS-intl TAGS-intl: \ configure-intl @@ -9262,6 +10459,7 @@ TAGS-intl: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9274,9 +10472,12 @@ TAGS-intl: \ TAGS) \ || exit 1 +@endif intl .PHONY: maybe-install-info-intl install-info-intl maybe-install-info-intl: +@if intl +maybe-install-info-intl: install-info-intl install-info-intl: \ configure-intl \ @@ -9285,6 +10486,7 @@ install-info-intl: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9297,9 +10499,12 @@ install-info-intl: \ install-info) \ || exit 1 +@endif intl .PHONY: maybe-installcheck-intl installcheck-intl maybe-installcheck-intl: +@if intl +maybe-installcheck-intl: installcheck-intl installcheck-intl: \ configure-intl @@ -9307,6 +10512,7 @@ installcheck-intl: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9319,15 +10525,19 @@ installcheck-intl: \ installcheck) \ || exit 1 +@endif intl .PHONY: maybe-mostlyclean-intl mostlyclean-intl maybe-mostlyclean-intl: +@if intl +maybe-mostlyclean-intl: mostlyclean-intl mostlyclean-intl: @[ -f ./intl/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9340,15 +10550,19 @@ mostlyclean-intl: mostlyclean) \ || exit 1 +@endif intl .PHONY: maybe-clean-intl clean-intl maybe-clean-intl: +@if intl +maybe-clean-intl: clean-intl clean-intl: @[ -f ./intl/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9361,15 +10575,19 @@ clean-intl: clean) \ || exit 1 +@endif intl .PHONY: maybe-distclean-intl distclean-intl maybe-distclean-intl: +@if intl +maybe-distclean-intl: distclean-intl distclean-intl: @[ -f ./intl/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9382,15 +10600,19 @@ distclean-intl: distclean) \ || exit 1 +@endif intl .PHONY: maybe-maintainer-clean-intl maintainer-clean-intl maybe-maintainer-clean-intl: +@if intl +maybe-maintainer-clean-intl: maintainer-clean-intl maintainer-clean-intl: @[ -f ./intl/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9403,30 +10625,19 @@ maintainer-clean-intl: maintainer-clean) \ || exit 1 +@endif intl .PHONY: configure-tcl maybe-configure-tcl maybe-configure-tcl: +@if tcl +maybe-configure-tcl: configure-tcl configure-tcl: @test ! -f tcl/Makefile || exit 0; \ [ -d tcl ] || mkdir tcl; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in tcl; \ cd tcl || exit 1; \ case $(srcdir) in \ @@ -9443,39 +10654,54 @@ configure-tcl: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif tcl .PHONY: all-tcl maybe-all-tcl maybe-all-tcl: +@if tcl +maybe-all-tcl: all-tcl all-tcl: configure-tcl @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd tcl && $(MAKE) $(FLAGS_TO_PASS) all) +@endif tcl .PHONY: check-tcl maybe-check-tcl maybe-check-tcl: +@if tcl +maybe-check-tcl: check-tcl check-tcl: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd tcl && $(MAKE) $(FLAGS_TO_PASS) check) +@endif tcl .PHONY: install-tcl maybe-install-tcl maybe-install-tcl: +@if tcl +maybe-install-tcl: install-tcl install-tcl: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd tcl && $(MAKE) $(FLAGS_TO_PASS) install) +@endif tcl # Other targets (info, dvi, etc.) .PHONY: maybe-info-tcl info-tcl maybe-info-tcl: +@if tcl +maybe-info-tcl: info-tcl info-tcl: \ configure-tcl @@ -9483,6 +10709,7 @@ info-tcl: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9495,9 +10722,12 @@ info-tcl: \ info) \ || exit 1 +@endif tcl .PHONY: maybe-dvi-tcl dvi-tcl maybe-dvi-tcl: +@if tcl +maybe-dvi-tcl: dvi-tcl dvi-tcl: \ configure-tcl @@ -9505,6 +10735,7 @@ dvi-tcl: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9517,9 +10748,12 @@ dvi-tcl: \ dvi) \ || exit 1 +@endif tcl .PHONY: maybe-TAGS-tcl TAGS-tcl maybe-TAGS-tcl: +@if tcl +maybe-TAGS-tcl: TAGS-tcl TAGS-tcl: \ configure-tcl @@ -9527,6 +10761,7 @@ TAGS-tcl: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9539,9 +10774,12 @@ TAGS-tcl: \ TAGS) \ || exit 1 +@endif tcl .PHONY: maybe-install-info-tcl install-info-tcl maybe-install-info-tcl: +@if tcl +maybe-install-info-tcl: install-info-tcl install-info-tcl: \ configure-tcl \ @@ -9550,6 +10788,7 @@ install-info-tcl: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9562,9 +10801,12 @@ install-info-tcl: \ install-info) \ || exit 1 +@endif tcl .PHONY: maybe-installcheck-tcl installcheck-tcl maybe-installcheck-tcl: +@if tcl +maybe-installcheck-tcl: installcheck-tcl installcheck-tcl: \ configure-tcl @@ -9572,6 +10814,7 @@ installcheck-tcl: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9584,22 +10827,29 @@ installcheck-tcl: \ installcheck) \ || exit 1 +@endif tcl .PHONY: maybe-mostlyclean-tcl mostlyclean-tcl maybe-mostlyclean-tcl: +@if tcl +maybe-mostlyclean-tcl: mostlyclean-tcl # tcl doesn't support mostlyclean. mostlyclean-tcl: +@endif tcl .PHONY: maybe-clean-tcl clean-tcl maybe-clean-tcl: +@if tcl +maybe-clean-tcl: clean-tcl clean-tcl: @[ -f ./tcl/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9612,15 +10862,19 @@ clean-tcl: clean) \ || exit 1 +@endif tcl .PHONY: maybe-distclean-tcl distclean-tcl maybe-distclean-tcl: +@if tcl +maybe-distclean-tcl: distclean-tcl distclean-tcl: @[ -f ./tcl/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9633,15 +10887,19 @@ distclean-tcl: distclean) \ || exit 1 +@endif tcl .PHONY: maybe-maintainer-clean-tcl maintainer-clean-tcl maybe-maintainer-clean-tcl: +@if tcl +maybe-maintainer-clean-tcl: maintainer-clean-tcl maintainer-clean-tcl: @[ -f ./tcl/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9654,30 +10912,19 @@ maintainer-clean-tcl: maintainer-clean) \ || exit 1 +@endif tcl .PHONY: configure-itcl maybe-configure-itcl maybe-configure-itcl: +@if itcl +maybe-configure-itcl: configure-itcl configure-itcl: @test ! -f itcl/Makefile || exit 0; \ [ -d itcl ] || mkdir itcl; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in itcl; \ cd itcl || exit 1; \ case $(srcdir) in \ @@ -9694,39 +10941,54 @@ configure-itcl: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif itcl .PHONY: all-itcl maybe-all-itcl maybe-all-itcl: +@if itcl +maybe-all-itcl: all-itcl all-itcl: configure-itcl @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd itcl && $(MAKE) $(FLAGS_TO_PASS) all) +@endif itcl .PHONY: check-itcl maybe-check-itcl maybe-check-itcl: +@if itcl +maybe-check-itcl: check-itcl check-itcl: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd itcl && $(MAKE) $(FLAGS_TO_PASS) check) +@endif itcl .PHONY: install-itcl maybe-install-itcl maybe-install-itcl: +@if itcl +maybe-install-itcl: install-itcl install-itcl: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd itcl && $(MAKE) $(FLAGS_TO_PASS) install) +@endif itcl # Other targets (info, dvi, etc.) .PHONY: maybe-info-itcl info-itcl maybe-info-itcl: +@if itcl +maybe-info-itcl: info-itcl info-itcl: \ configure-itcl @@ -9734,6 +10996,7 @@ info-itcl: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9746,9 +11009,12 @@ info-itcl: \ info) \ || exit 1 +@endif itcl .PHONY: maybe-dvi-itcl dvi-itcl maybe-dvi-itcl: +@if itcl +maybe-dvi-itcl: dvi-itcl dvi-itcl: \ configure-itcl @@ -9756,6 +11022,7 @@ dvi-itcl: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9768,9 +11035,12 @@ dvi-itcl: \ dvi) \ || exit 1 +@endif itcl .PHONY: maybe-TAGS-itcl TAGS-itcl maybe-TAGS-itcl: +@if itcl +maybe-TAGS-itcl: TAGS-itcl TAGS-itcl: \ configure-itcl @@ -9778,6 +11048,7 @@ TAGS-itcl: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9790,9 +11061,12 @@ TAGS-itcl: \ TAGS) \ || exit 1 +@endif itcl .PHONY: maybe-install-info-itcl install-info-itcl maybe-install-info-itcl: +@if itcl +maybe-install-info-itcl: install-info-itcl install-info-itcl: \ configure-itcl \ @@ -9801,6 +11075,7 @@ install-info-itcl: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9813,9 +11088,12 @@ install-info-itcl: \ install-info) \ || exit 1 +@endif itcl .PHONY: maybe-installcheck-itcl installcheck-itcl maybe-installcheck-itcl: +@if itcl +maybe-installcheck-itcl: installcheck-itcl installcheck-itcl: \ configure-itcl @@ -9823,6 +11101,7 @@ installcheck-itcl: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9835,15 +11114,19 @@ installcheck-itcl: \ installcheck) \ || exit 1 +@endif itcl .PHONY: maybe-mostlyclean-itcl mostlyclean-itcl maybe-mostlyclean-itcl: +@if itcl +maybe-mostlyclean-itcl: mostlyclean-itcl mostlyclean-itcl: @[ -f ./itcl/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9856,15 +11139,19 @@ mostlyclean-itcl: mostlyclean) \ || exit 1 +@endif itcl .PHONY: maybe-clean-itcl clean-itcl maybe-clean-itcl: +@if itcl +maybe-clean-itcl: clean-itcl clean-itcl: @[ -f ./itcl/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9877,15 +11164,19 @@ clean-itcl: clean) \ || exit 1 +@endif itcl .PHONY: maybe-distclean-itcl distclean-itcl maybe-distclean-itcl: +@if itcl +maybe-distclean-itcl: distclean-itcl distclean-itcl: @[ -f ./itcl/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9898,15 +11189,19 @@ distclean-itcl: distclean) \ || exit 1 +@endif itcl .PHONY: maybe-maintainer-clean-itcl maintainer-clean-itcl maybe-maintainer-clean-itcl: +@if itcl +maybe-maintainer-clean-itcl: maintainer-clean-itcl maintainer-clean-itcl: @[ -f ./itcl/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -9919,30 +11214,19 @@ maintainer-clean-itcl: maintainer-clean) \ || exit 1 +@endif itcl .PHONY: configure-ld maybe-configure-ld maybe-configure-ld: +@if ld +maybe-configure-ld: configure-ld configure-ld: @test ! -f ld/Makefile || exit 0; \ [ -d ld ] || mkdir ld; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in ld; \ cd ld || exit 1; \ case $(srcdir) in \ @@ -9959,39 +11243,54 @@ configure-ld: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif ld .PHONY: all-ld maybe-all-ld maybe-all-ld: +@if ld +maybe-all-ld: all-ld all-ld: configure-ld @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd ld && $(MAKE) $(FLAGS_TO_PASS) all) +@endif ld .PHONY: check-ld maybe-check-ld maybe-check-ld: +@if ld +maybe-check-ld: check-ld check-ld: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd ld && $(MAKE) $(FLAGS_TO_PASS) check) +@endif ld .PHONY: install-ld maybe-install-ld maybe-install-ld: +@if ld +maybe-install-ld: install-ld install-ld: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd ld && $(MAKE) $(FLAGS_TO_PASS) install) +@endif ld # Other targets (info, dvi, etc.) .PHONY: maybe-info-ld info-ld maybe-info-ld: +@if ld +maybe-info-ld: info-ld info-ld: \ configure-ld @@ -9999,6 +11298,7 @@ info-ld: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10011,9 +11311,12 @@ info-ld: \ info) \ || exit 1 +@endif ld .PHONY: maybe-dvi-ld dvi-ld maybe-dvi-ld: +@if ld +maybe-dvi-ld: dvi-ld dvi-ld: \ configure-ld @@ -10021,6 +11324,7 @@ dvi-ld: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10033,9 +11337,12 @@ dvi-ld: \ dvi) \ || exit 1 +@endif ld .PHONY: maybe-TAGS-ld TAGS-ld maybe-TAGS-ld: +@if ld +maybe-TAGS-ld: TAGS-ld TAGS-ld: \ configure-ld @@ -10043,6 +11350,7 @@ TAGS-ld: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10055,9 +11363,12 @@ TAGS-ld: \ TAGS) \ || exit 1 +@endif ld .PHONY: maybe-install-info-ld install-info-ld maybe-install-info-ld: +@if ld +maybe-install-info-ld: install-info-ld install-info-ld: \ configure-ld \ @@ -10066,6 +11377,7 @@ install-info-ld: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10078,9 +11390,12 @@ install-info-ld: \ install-info) \ || exit 1 +@endif ld .PHONY: maybe-installcheck-ld installcheck-ld maybe-installcheck-ld: +@if ld +maybe-installcheck-ld: installcheck-ld installcheck-ld: \ configure-ld @@ -10088,6 +11403,7 @@ installcheck-ld: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10100,15 +11416,19 @@ installcheck-ld: \ installcheck) \ || exit 1 +@endif ld .PHONY: maybe-mostlyclean-ld mostlyclean-ld maybe-mostlyclean-ld: +@if ld +maybe-mostlyclean-ld: mostlyclean-ld mostlyclean-ld: @[ -f ./ld/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10121,15 +11441,19 @@ mostlyclean-ld: mostlyclean) \ || exit 1 +@endif ld .PHONY: maybe-clean-ld clean-ld maybe-clean-ld: +@if ld +maybe-clean-ld: clean-ld clean-ld: @[ -f ./ld/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10142,15 +11466,19 @@ clean-ld: clean) \ || exit 1 +@endif ld .PHONY: maybe-distclean-ld distclean-ld maybe-distclean-ld: +@if ld +maybe-distclean-ld: distclean-ld distclean-ld: @[ -f ./ld/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10163,15 +11491,19 @@ distclean-ld: distclean) \ || exit 1 +@endif ld .PHONY: maybe-maintainer-clean-ld maintainer-clean-ld maybe-maintainer-clean-ld: +@if ld +maybe-maintainer-clean-ld: maintainer-clean-ld maintainer-clean-ld: @[ -f ./ld/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10184,30 +11516,321 @@ maintainer-clean-ld: maintainer-clean) \ || exit 1 +@endif ld + + +.PHONY: configure-libcpp maybe-configure-libcpp +maybe-configure-libcpp: +@if libcpp +maybe-configure-libcpp: configure-libcpp +configure-libcpp: + @test ! -f libcpp/Makefile || exit 0; \ + [ -d libcpp ] || mkdir libcpp; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(HOST_EXPORTS) \ + echo Configuring in libcpp; \ + cd libcpp || exit 1; \ + case $(srcdir) in \ + \.) \ + srcdiroption="--srcdir=."; \ + libsrcdir=".";; \ + /* | [A-Za-z]:[\\/]*) \ + srcdiroption="--srcdir=$(srcdir)/libcpp"; \ + libsrcdir="$$s/libcpp";; \ + *) \ + srcdiroption="--srcdir=../$(srcdir)/libcpp"; \ + libsrcdir="$$s/libcpp";; \ + esac; \ + $(SHELL) $${libsrcdir}/configure \ + $(HOST_CONFIGARGS) $${srcdiroption} \ + || exit 1 +@endif libcpp + +.PHONY: all-libcpp maybe-all-libcpp +maybe-all-libcpp: +@if libcpp +maybe-all-libcpp: all-libcpp +all-libcpp: configure-libcpp + @r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ + (cd libcpp && $(MAKE) $(FLAGS_TO_PASS) all) +@endif libcpp + +.PHONY: check-libcpp maybe-check-libcpp +maybe-check-libcpp: +@if libcpp +maybe-check-libcpp: check-libcpp + +check-libcpp: + @r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ + (cd libcpp && $(MAKE) $(FLAGS_TO_PASS) check) + +@endif libcpp + +.PHONY: install-libcpp maybe-install-libcpp +maybe-install-libcpp: +@if libcpp +maybe-install-libcpp: install-libcpp + +install-libcpp: installdirs + @r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ + (cd libcpp && $(MAKE) $(FLAGS_TO_PASS) install) + +@endif libcpp + +# Other targets (info, dvi, etc.) + +.PHONY: maybe-info-libcpp info-libcpp +maybe-info-libcpp: +@if libcpp +maybe-info-libcpp: info-libcpp + +info-libcpp: \ + configure-libcpp + @[ -f ./libcpp/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS); do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing info in libcpp" ; \ + (cd libcpp && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ + info) \ + || exit 1 + +@endif libcpp + +.PHONY: maybe-dvi-libcpp dvi-libcpp +maybe-dvi-libcpp: +@if libcpp +maybe-dvi-libcpp: dvi-libcpp + +dvi-libcpp: \ + configure-libcpp + @[ -f ./libcpp/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS); do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing dvi in libcpp" ; \ + (cd libcpp && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ + dvi) \ + || exit 1 + +@endif libcpp + +.PHONY: maybe-TAGS-libcpp TAGS-libcpp +maybe-TAGS-libcpp: +@if libcpp +maybe-TAGS-libcpp: TAGS-libcpp + +TAGS-libcpp: \ + configure-libcpp + @[ -f ./libcpp/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS); do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing TAGS in libcpp" ; \ + (cd libcpp && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ + TAGS) \ + || exit 1 + +@endif libcpp + +.PHONY: maybe-install-info-libcpp install-info-libcpp +maybe-install-info-libcpp: +@if libcpp +maybe-install-info-libcpp: install-info-libcpp + +install-info-libcpp: \ + configure-libcpp \ + info-libcpp + @[ -f ./libcpp/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS); do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing install-info in libcpp" ; \ + (cd libcpp && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ + install-info) \ + || exit 1 + +@endif libcpp + +.PHONY: maybe-installcheck-libcpp installcheck-libcpp +maybe-installcheck-libcpp: +@if libcpp +maybe-installcheck-libcpp: installcheck-libcpp + +installcheck-libcpp: \ + configure-libcpp + @[ -f ./libcpp/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS); do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing installcheck in libcpp" ; \ + (cd libcpp && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ + installcheck) \ + || exit 1 + +@endif libcpp + +.PHONY: maybe-mostlyclean-libcpp mostlyclean-libcpp +maybe-mostlyclean-libcpp: +@if libcpp +maybe-mostlyclean-libcpp: mostlyclean-libcpp + +mostlyclean-libcpp: + @[ -f ./libcpp/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS); do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing mostlyclean in libcpp" ; \ + (cd libcpp && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ + mostlyclean) \ + || exit 1 + +@endif libcpp + +.PHONY: maybe-clean-libcpp clean-libcpp +maybe-clean-libcpp: +@if libcpp +maybe-clean-libcpp: clean-libcpp + +clean-libcpp: + @[ -f ./libcpp/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS); do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing clean in libcpp" ; \ + (cd libcpp && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ + clean) \ + || exit 1 + +@endif libcpp + +.PHONY: maybe-distclean-libcpp distclean-libcpp +maybe-distclean-libcpp: +@if libcpp +maybe-distclean-libcpp: distclean-libcpp + +distclean-libcpp: + @[ -f ./libcpp/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS); do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing distclean in libcpp" ; \ + (cd libcpp && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ + distclean) \ + || exit 1 + +@endif libcpp + +.PHONY: maybe-maintainer-clean-libcpp maintainer-clean-libcpp +maybe-maintainer-clean-libcpp: +@if libcpp +maybe-maintainer-clean-libcpp: maintainer-clean-libcpp + +maintainer-clean-libcpp: + @[ -f ./libcpp/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS); do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing maintainer-clean in libcpp" ; \ + (cd libcpp && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ + maintainer-clean) \ + || exit 1 + +@endif libcpp .PHONY: configure-libgui maybe-configure-libgui maybe-configure-libgui: +@if libgui +maybe-configure-libgui: configure-libgui configure-libgui: @test ! -f libgui/Makefile || exit 0; \ [ -d libgui ] || mkdir libgui; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in libgui; \ cd libgui || exit 1; \ case $(srcdir) in \ @@ -10224,39 +11847,54 @@ configure-libgui: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif libgui .PHONY: all-libgui maybe-all-libgui maybe-all-libgui: +@if libgui +maybe-all-libgui: all-libgui all-libgui: configure-libgui @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd libgui && $(MAKE) $(FLAGS_TO_PASS) all) +@endif libgui .PHONY: check-libgui maybe-check-libgui maybe-check-libgui: +@if libgui +maybe-check-libgui: check-libgui check-libgui: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd libgui && $(MAKE) $(FLAGS_TO_PASS) check) +@endif libgui .PHONY: install-libgui maybe-install-libgui maybe-install-libgui: +@if libgui +maybe-install-libgui: install-libgui install-libgui: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd libgui && $(MAKE) $(FLAGS_TO_PASS) install) +@endif libgui # Other targets (info, dvi, etc.) .PHONY: maybe-info-libgui info-libgui maybe-info-libgui: +@if libgui +maybe-info-libgui: info-libgui info-libgui: \ configure-libgui @@ -10264,6 +11902,7 @@ info-libgui: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10276,9 +11915,12 @@ info-libgui: \ info) \ || exit 1 +@endif libgui .PHONY: maybe-dvi-libgui dvi-libgui maybe-dvi-libgui: +@if libgui +maybe-dvi-libgui: dvi-libgui dvi-libgui: \ configure-libgui @@ -10286,6 +11928,7 @@ dvi-libgui: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10298,9 +11941,12 @@ dvi-libgui: \ dvi) \ || exit 1 +@endif libgui .PHONY: maybe-TAGS-libgui TAGS-libgui maybe-TAGS-libgui: +@if libgui +maybe-TAGS-libgui: TAGS-libgui TAGS-libgui: \ configure-libgui @@ -10308,6 +11954,7 @@ TAGS-libgui: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10320,9 +11967,12 @@ TAGS-libgui: \ TAGS) \ || exit 1 +@endif libgui .PHONY: maybe-install-info-libgui install-info-libgui maybe-install-info-libgui: +@if libgui +maybe-install-info-libgui: install-info-libgui install-info-libgui: \ configure-libgui \ @@ -10331,6 +11981,7 @@ install-info-libgui: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10343,9 +11994,12 @@ install-info-libgui: \ install-info) \ || exit 1 +@endif libgui .PHONY: maybe-installcheck-libgui installcheck-libgui maybe-installcheck-libgui: +@if libgui +maybe-installcheck-libgui: installcheck-libgui installcheck-libgui: \ configure-libgui @@ -10353,6 +12007,7 @@ installcheck-libgui: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10365,15 +12020,19 @@ installcheck-libgui: \ installcheck) \ || exit 1 +@endif libgui .PHONY: maybe-mostlyclean-libgui mostlyclean-libgui maybe-mostlyclean-libgui: +@if libgui +maybe-mostlyclean-libgui: mostlyclean-libgui mostlyclean-libgui: @[ -f ./libgui/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10386,15 +12045,19 @@ mostlyclean-libgui: mostlyclean) \ || exit 1 +@endif libgui .PHONY: maybe-clean-libgui clean-libgui maybe-clean-libgui: +@if libgui +maybe-clean-libgui: clean-libgui clean-libgui: @[ -f ./libgui/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10407,15 +12070,19 @@ clean-libgui: clean) \ || exit 1 +@endif libgui .PHONY: maybe-distclean-libgui distclean-libgui maybe-distclean-libgui: +@if libgui +maybe-distclean-libgui: distclean-libgui distclean-libgui: @[ -f ./libgui/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10428,15 +12095,19 @@ distclean-libgui: distclean) \ || exit 1 +@endif libgui .PHONY: maybe-maintainer-clean-libgui maintainer-clean-libgui maybe-maintainer-clean-libgui: +@if libgui +maybe-maintainer-clean-libgui: maintainer-clean-libgui maintainer-clean-libgui: @[ -f ./libgui/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10449,91 +12120,91 @@ maintainer-clean-libgui: maintainer-clean) \ || exit 1 +@endif libgui -.PHONY: configure-libiberty maybe-configure-libiberty -maybe-configure-libiberty: -configure-libiberty: - @test ! -f libiberty/Makefile || exit 0; \ - [ -d libiberty ] || mkdir libiberty; \ +.PHONY: configure-libbanshee maybe-configure-libbanshee +maybe-configure-libbanshee: +@if libbanshee +maybe-configure-libbanshee: configure-libbanshee +configure-libbanshee: + @test ! -f libbanshee/Makefile || exit 0; \ + [ -d libbanshee ] || mkdir libbanshee; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ - echo Configuring in libiberty; \ - cd libiberty || exit 1; \ + $(HOST_EXPORTS) \ + echo Configuring in libbanshee; \ + cd libbanshee || exit 1; \ case $(srcdir) in \ \.) \ srcdiroption="--srcdir=."; \ libsrcdir=".";; \ /* | [A-Za-z]:[\\/]*) \ - srcdiroption="--srcdir=$(srcdir)/libiberty"; \ - libsrcdir="$$s/libiberty";; \ + srcdiroption="--srcdir=$(srcdir)/libbanshee"; \ + libsrcdir="$$s/libbanshee";; \ *) \ - srcdiroption="--srcdir=../$(srcdir)/libiberty"; \ - libsrcdir="$$s/libiberty";; \ + srcdiroption="--srcdir=../$(srcdir)/libbanshee"; \ + libsrcdir="$$s/libbanshee";; \ esac; \ $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif libbanshee -.PHONY: all-libiberty maybe-all-libiberty -maybe-all-libiberty: -all-libiberty: configure-libiberty +.PHONY: all-libbanshee maybe-all-libbanshee +maybe-all-libbanshee: +@if libbanshee +maybe-all-libbanshee: all-libbanshee +all-libbanshee: configure-libbanshee @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - (cd libiberty && $(MAKE) $(FLAGS_TO_PASS) all) + $(HOST_EXPORTS) \ + (cd libbanshee && $(MAKE) $(FLAGS_TO_PASS) all) +@endif libbanshee -.PHONY: check-libiberty maybe-check-libiberty -maybe-check-libiberty: +.PHONY: check-libbanshee maybe-check-libbanshee +maybe-check-libbanshee: +@if libbanshee +maybe-check-libbanshee: check-libbanshee -check-libiberty: +check-libbanshee: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - (cd libiberty && $(MAKE) $(FLAGS_TO_PASS) check) + $(HOST_EXPORTS) \ + (cd libbanshee && $(MAKE) $(FLAGS_TO_PASS) check) +@endif libbanshee -.PHONY: install-libiberty maybe-install-libiberty -maybe-install-libiberty: +.PHONY: install-libbanshee maybe-install-libbanshee +maybe-install-libbanshee: +@if libbanshee +maybe-install-libbanshee: install-libbanshee -install-libiberty: installdirs - @r=`${PWD_COMMAND}`; export r; \ - s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - $(SET_LIB_PATH) \ - (cd libiberty && $(MAKE) $(FLAGS_TO_PASS) install) +install-libbanshee: +@endif libbanshee # Other targets (info, dvi, etc.) -.PHONY: maybe-info-libiberty info-libiberty -maybe-info-libiberty: +.PHONY: maybe-info-libbanshee info-libbanshee +maybe-info-libbanshee: +@if libbanshee +maybe-info-libbanshee: info-libbanshee -info-libiberty: \ - configure-libiberty - @[ -f ./libiberty/Makefile ] || exit 0; \ +info-libbanshee: \ + configure-libbanshee + @[ -f ./libbanshee/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - echo "Doing info in libiberty" ; \ - (cd libiberty && \ + echo "Doing info in libbanshee" ; \ + (cd libbanshee && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ "RANLIB=$${RANLIB}" \ @@ -10541,16 +12212,322 @@ info-libiberty: \ info) \ || exit 1 +@endif libbanshee -.PHONY: maybe-dvi-libiberty dvi-libiberty -maybe-dvi-libiberty: +.PHONY: maybe-dvi-libbanshee dvi-libbanshee +maybe-dvi-libbanshee: +@if libbanshee +maybe-dvi-libbanshee: dvi-libbanshee -dvi-libiberty: \ - configure-libiberty - @[ -f ./libiberty/Makefile ] || exit 0; \ +dvi-libbanshee: \ + configure-libbanshee + @[ -f ./libbanshee/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS); do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing dvi in libbanshee" ; \ + (cd libbanshee && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ + dvi) \ + || exit 1 + +@endif libbanshee + +.PHONY: maybe-TAGS-libbanshee TAGS-libbanshee +maybe-TAGS-libbanshee: +@if libbanshee +maybe-TAGS-libbanshee: TAGS-libbanshee + +TAGS-libbanshee: \ + configure-libbanshee + @[ -f ./libbanshee/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS); do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing TAGS in libbanshee" ; \ + (cd libbanshee && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ + TAGS) \ + || exit 1 + +@endif libbanshee + +.PHONY: maybe-install-info-libbanshee install-info-libbanshee +maybe-install-info-libbanshee: +@if libbanshee +maybe-install-info-libbanshee: install-info-libbanshee + +install-info-libbanshee: \ + configure-libbanshee \ + info-libbanshee + @[ -f ./libbanshee/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS); do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing install-info in libbanshee" ; \ + (cd libbanshee && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ + install-info) \ + || exit 1 + +@endif libbanshee + +.PHONY: maybe-installcheck-libbanshee installcheck-libbanshee +maybe-installcheck-libbanshee: +@if libbanshee +maybe-installcheck-libbanshee: installcheck-libbanshee + +installcheck-libbanshee: \ + configure-libbanshee + @[ -f ./libbanshee/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS); do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing installcheck in libbanshee" ; \ + (cd libbanshee && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ + installcheck) \ + || exit 1 + +@endif libbanshee + +.PHONY: maybe-mostlyclean-libbanshee mostlyclean-libbanshee +maybe-mostlyclean-libbanshee: +@if libbanshee +maybe-mostlyclean-libbanshee: mostlyclean-libbanshee + +mostlyclean-libbanshee: + @[ -f ./libbanshee/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS); do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing mostlyclean in libbanshee" ; \ + (cd libbanshee && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ + mostlyclean) \ + || exit 1 + +@endif libbanshee + +.PHONY: maybe-clean-libbanshee clean-libbanshee +maybe-clean-libbanshee: +@if libbanshee +maybe-clean-libbanshee: clean-libbanshee + +clean-libbanshee: + @[ -f ./libbanshee/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS); do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing clean in libbanshee" ; \ + (cd libbanshee && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ + clean) \ + || exit 1 + +@endif libbanshee + +.PHONY: maybe-distclean-libbanshee distclean-libbanshee +maybe-distclean-libbanshee: +@if libbanshee +maybe-distclean-libbanshee: distclean-libbanshee + +distclean-libbanshee: + @[ -f ./libbanshee/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS); do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing distclean in libbanshee" ; \ + (cd libbanshee && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ + distclean) \ + || exit 1 + +@endif libbanshee + +.PHONY: maybe-maintainer-clean-libbanshee maintainer-clean-libbanshee +maybe-maintainer-clean-libbanshee: +@if libbanshee +maybe-maintainer-clean-libbanshee: maintainer-clean-libbanshee + +maintainer-clean-libbanshee: + @[ -f ./libbanshee/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS); do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing maintainer-clean in libbanshee" ; \ + (cd libbanshee && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ + maintainer-clean) \ + || exit 1 + +@endif libbanshee + + +.PHONY: configure-libiberty maybe-configure-libiberty +maybe-configure-libiberty: +@if libiberty +maybe-configure-libiberty: configure-libiberty +configure-libiberty: + @test ! -f libiberty/Makefile || exit 0; \ + [ -d libiberty ] || mkdir libiberty; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(HOST_EXPORTS) \ + echo Configuring in libiberty; \ + cd libiberty || exit 1; \ + case $(srcdir) in \ + \.) \ + srcdiroption="--srcdir=."; \ + libsrcdir=".";; \ + /* | [A-Za-z]:[\\/]*) \ + srcdiroption="--srcdir=$(srcdir)/libiberty"; \ + libsrcdir="$$s/libiberty";; \ + *) \ + srcdiroption="--srcdir=../$(srcdir)/libiberty"; \ + libsrcdir="$$s/libiberty";; \ + esac; \ + $(SHELL) $${libsrcdir}/configure \ + $(HOST_CONFIGARGS) $${srcdiroption} \ + || exit 1 +@endif libiberty + +.PHONY: all-libiberty maybe-all-libiberty +maybe-all-libiberty: +@if libiberty +maybe-all-libiberty: all-libiberty +all-libiberty: configure-libiberty + @r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ + (cd libiberty && $(MAKE) $(FLAGS_TO_PASS) all) +@endif libiberty + +.PHONY: check-libiberty maybe-check-libiberty +maybe-check-libiberty: +@if libiberty +maybe-check-libiberty: check-libiberty + +check-libiberty: + @r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ + (cd libiberty && $(MAKE) $(FLAGS_TO_PASS) check) + +@endif libiberty + +.PHONY: install-libiberty maybe-install-libiberty +maybe-install-libiberty: +@if libiberty +maybe-install-libiberty: install-libiberty + +install-libiberty: installdirs + @r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ + (cd libiberty && $(MAKE) $(FLAGS_TO_PASS) install) + +@endif libiberty + +# Other targets (info, dvi, etc.) + +.PHONY: maybe-info-libiberty info-libiberty +maybe-info-libiberty: +@if libiberty +maybe-info-libiberty: info-libiberty + +info-libiberty: \ + configure-libiberty + @[ -f ./libiberty/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS); do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing info in libiberty" ; \ + (cd libiberty && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ + info) \ + || exit 1 + +@endif libiberty + +.PHONY: maybe-dvi-libiberty dvi-libiberty +maybe-dvi-libiberty: +@if libiberty +maybe-dvi-libiberty: dvi-libiberty + +dvi-libiberty: \ + configure-libiberty + @[ -f ./libiberty/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10563,9 +12540,12 @@ dvi-libiberty: \ dvi) \ || exit 1 +@endif libiberty .PHONY: maybe-TAGS-libiberty TAGS-libiberty maybe-TAGS-libiberty: +@if libiberty +maybe-TAGS-libiberty: TAGS-libiberty TAGS-libiberty: \ configure-libiberty @@ -10573,6 +12553,7 @@ TAGS-libiberty: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10585,9 +12566,12 @@ TAGS-libiberty: \ TAGS) \ || exit 1 +@endif libiberty .PHONY: maybe-install-info-libiberty install-info-libiberty maybe-install-info-libiberty: +@if libiberty +maybe-install-info-libiberty: install-info-libiberty install-info-libiberty: \ configure-libiberty \ @@ -10596,6 +12580,7 @@ install-info-libiberty: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10608,9 +12593,12 @@ install-info-libiberty: \ install-info) \ || exit 1 +@endif libiberty .PHONY: maybe-installcheck-libiberty installcheck-libiberty maybe-installcheck-libiberty: +@if libiberty +maybe-installcheck-libiberty: installcheck-libiberty installcheck-libiberty: \ configure-libiberty @@ -10618,6 +12606,7 @@ installcheck-libiberty: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10630,15 +12619,19 @@ installcheck-libiberty: \ installcheck) \ || exit 1 +@endif libiberty .PHONY: maybe-mostlyclean-libiberty mostlyclean-libiberty maybe-mostlyclean-libiberty: +@if libiberty +maybe-mostlyclean-libiberty: mostlyclean-libiberty mostlyclean-libiberty: @[ -f ./libiberty/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10651,15 +12644,19 @@ mostlyclean-libiberty: mostlyclean) \ || exit 1 +@endif libiberty .PHONY: maybe-clean-libiberty clean-libiberty maybe-clean-libiberty: +@if libiberty +maybe-clean-libiberty: clean-libiberty clean-libiberty: @[ -f ./libiberty/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10672,15 +12669,19 @@ clean-libiberty: clean) \ || exit 1 +@endif libiberty .PHONY: maybe-distclean-libiberty distclean-libiberty maybe-distclean-libiberty: +@if libiberty +maybe-distclean-libiberty: distclean-libiberty distclean-libiberty: @[ -f ./libiberty/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10693,15 +12694,19 @@ distclean-libiberty: distclean) \ || exit 1 +@endif libiberty .PHONY: maybe-maintainer-clean-libiberty maintainer-clean-libiberty maybe-maintainer-clean-libiberty: +@if libiberty +maybe-maintainer-clean-libiberty: maintainer-clean-libiberty maintainer-clean-libiberty: @[ -f ./libiberty/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10714,30 +12719,19 @@ maintainer-clean-libiberty: maintainer-clean) \ || exit 1 +@endif libiberty .PHONY: configure-libtool maybe-configure-libtool maybe-configure-libtool: +@if libtool +maybe-configure-libtool: configure-libtool configure-libtool: @test ! -f libtool/Makefile || exit 0; \ [ -d libtool ] || mkdir libtool; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in libtool; \ cd libtool || exit 1; \ case $(srcdir) in \ @@ -10754,39 +12748,54 @@ configure-libtool: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif libtool .PHONY: all-libtool maybe-all-libtool maybe-all-libtool: +@if libtool +maybe-all-libtool: all-libtool all-libtool: configure-libtool @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd libtool && $(MAKE) $(FLAGS_TO_PASS) all) +@endif libtool .PHONY: check-libtool maybe-check-libtool maybe-check-libtool: +@if libtool +maybe-check-libtool: check-libtool check-libtool: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd libtool && $(MAKE) $(FLAGS_TO_PASS) check) +@endif libtool .PHONY: install-libtool maybe-install-libtool maybe-install-libtool: +@if libtool +maybe-install-libtool: install-libtool install-libtool: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd libtool && $(MAKE) $(FLAGS_TO_PASS) install) +@endif libtool # Other targets (info, dvi, etc.) .PHONY: maybe-info-libtool info-libtool maybe-info-libtool: +@if libtool +maybe-info-libtool: info-libtool info-libtool: \ configure-libtool @@ -10794,6 +12803,7 @@ info-libtool: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10806,9 +12816,12 @@ info-libtool: \ info) \ || exit 1 +@endif libtool .PHONY: maybe-dvi-libtool dvi-libtool maybe-dvi-libtool: +@if libtool +maybe-dvi-libtool: dvi-libtool dvi-libtool: \ configure-libtool @@ -10816,6 +12829,7 @@ dvi-libtool: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10828,9 +12842,12 @@ dvi-libtool: \ dvi) \ || exit 1 +@endif libtool .PHONY: maybe-TAGS-libtool TAGS-libtool maybe-TAGS-libtool: +@if libtool +maybe-TAGS-libtool: TAGS-libtool TAGS-libtool: \ configure-libtool @@ -10838,6 +12855,7 @@ TAGS-libtool: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10850,9 +12868,12 @@ TAGS-libtool: \ TAGS) \ || exit 1 +@endif libtool .PHONY: maybe-install-info-libtool install-info-libtool maybe-install-info-libtool: +@if libtool +maybe-install-info-libtool: install-info-libtool install-info-libtool: \ configure-libtool \ @@ -10861,6 +12882,7 @@ install-info-libtool: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10873,9 +12895,12 @@ install-info-libtool: \ install-info) \ || exit 1 +@endif libtool .PHONY: maybe-installcheck-libtool installcheck-libtool maybe-installcheck-libtool: +@if libtool +maybe-installcheck-libtool: installcheck-libtool installcheck-libtool: \ configure-libtool @@ -10883,6 +12908,7 @@ installcheck-libtool: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10895,15 +12921,19 @@ installcheck-libtool: \ installcheck) \ || exit 1 +@endif libtool .PHONY: maybe-mostlyclean-libtool mostlyclean-libtool maybe-mostlyclean-libtool: +@if libtool +maybe-mostlyclean-libtool: mostlyclean-libtool mostlyclean-libtool: @[ -f ./libtool/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10916,15 +12946,19 @@ mostlyclean-libtool: mostlyclean) \ || exit 1 +@endif libtool .PHONY: maybe-clean-libtool clean-libtool maybe-clean-libtool: +@if libtool +maybe-clean-libtool: clean-libtool clean-libtool: @[ -f ./libtool/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10937,15 +12971,19 @@ clean-libtool: clean) \ || exit 1 +@endif libtool .PHONY: maybe-distclean-libtool distclean-libtool maybe-distclean-libtool: +@if libtool +maybe-distclean-libtool: distclean-libtool distclean-libtool: @[ -f ./libtool/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10958,15 +12996,19 @@ distclean-libtool: distclean) \ || exit 1 +@endif libtool .PHONY: maybe-maintainer-clean-libtool maintainer-clean-libtool maybe-maintainer-clean-libtool: +@if libtool +maybe-maintainer-clean-libtool: maintainer-clean-libtool maintainer-clean-libtool: @[ -f ./libtool/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -10979,30 +13021,19 @@ maintainer-clean-libtool: maintainer-clean) \ || exit 1 +@endif libtool .PHONY: configure-m4 maybe-configure-m4 maybe-configure-m4: +@if m4 +maybe-configure-m4: configure-m4 configure-m4: @test ! -f m4/Makefile || exit 0; \ [ -d m4 ] || mkdir m4; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in m4; \ cd m4 || exit 1; \ case $(srcdir) in \ @@ -11019,39 +13050,54 @@ configure-m4: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif m4 .PHONY: all-m4 maybe-all-m4 maybe-all-m4: +@if m4 +maybe-all-m4: all-m4 all-m4: configure-m4 @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd m4 && $(MAKE) $(FLAGS_TO_PASS) all) +@endif m4 .PHONY: check-m4 maybe-check-m4 maybe-check-m4: +@if m4 +maybe-check-m4: check-m4 check-m4: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd m4 && $(MAKE) $(FLAGS_TO_PASS) check) +@endif m4 .PHONY: install-m4 maybe-install-m4 maybe-install-m4: +@if m4 +maybe-install-m4: install-m4 install-m4: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd m4 && $(MAKE) $(FLAGS_TO_PASS) install) +@endif m4 # Other targets (info, dvi, etc.) .PHONY: maybe-info-m4 info-m4 maybe-info-m4: +@if m4 +maybe-info-m4: info-m4 info-m4: \ configure-m4 @@ -11059,6 +13105,7 @@ info-m4: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11071,9 +13118,12 @@ info-m4: \ info) \ || exit 1 +@endif m4 .PHONY: maybe-dvi-m4 dvi-m4 maybe-dvi-m4: +@if m4 +maybe-dvi-m4: dvi-m4 dvi-m4: \ configure-m4 @@ -11081,6 +13131,7 @@ dvi-m4: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11093,9 +13144,12 @@ dvi-m4: \ dvi) \ || exit 1 +@endif m4 .PHONY: maybe-TAGS-m4 TAGS-m4 maybe-TAGS-m4: +@if m4 +maybe-TAGS-m4: TAGS-m4 TAGS-m4: \ configure-m4 @@ -11103,6 +13157,7 @@ TAGS-m4: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11115,9 +13170,12 @@ TAGS-m4: \ TAGS) \ || exit 1 +@endif m4 .PHONY: maybe-install-info-m4 install-info-m4 maybe-install-info-m4: +@if m4 +maybe-install-info-m4: install-info-m4 install-info-m4: \ configure-m4 \ @@ -11126,6 +13184,7 @@ install-info-m4: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11138,9 +13197,12 @@ install-info-m4: \ install-info) \ || exit 1 +@endif m4 .PHONY: maybe-installcheck-m4 installcheck-m4 maybe-installcheck-m4: +@if m4 +maybe-installcheck-m4: installcheck-m4 installcheck-m4: \ configure-m4 @@ -11148,6 +13210,7 @@ installcheck-m4: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11160,15 +13223,19 @@ installcheck-m4: \ installcheck) \ || exit 1 +@endif m4 .PHONY: maybe-mostlyclean-m4 mostlyclean-m4 maybe-mostlyclean-m4: +@if m4 +maybe-mostlyclean-m4: mostlyclean-m4 mostlyclean-m4: @[ -f ./m4/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11181,15 +13248,19 @@ mostlyclean-m4: mostlyclean) \ || exit 1 +@endif m4 .PHONY: maybe-clean-m4 clean-m4 maybe-clean-m4: +@if m4 +maybe-clean-m4: clean-m4 clean-m4: @[ -f ./m4/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11202,15 +13273,19 @@ clean-m4: clean) \ || exit 1 +@endif m4 .PHONY: maybe-distclean-m4 distclean-m4 maybe-distclean-m4: +@if m4 +maybe-distclean-m4: distclean-m4 distclean-m4: @[ -f ./m4/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11223,15 +13298,19 @@ distclean-m4: distclean) \ || exit 1 +@endif m4 .PHONY: maybe-maintainer-clean-m4 maintainer-clean-m4 maybe-maintainer-clean-m4: +@if m4 +maybe-maintainer-clean-m4: maintainer-clean-m4 maintainer-clean-m4: @[ -f ./m4/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11244,30 +13323,19 @@ maintainer-clean-m4: maintainer-clean) \ || exit 1 +@endif m4 .PHONY: configure-make maybe-configure-make maybe-configure-make: +@if make +maybe-configure-make: configure-make configure-make: @test ! -f make/Makefile || exit 0; \ [ -d make ] || mkdir make; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in make; \ cd make || exit 1; \ case $(srcdir) in \ @@ -11284,39 +13352,54 @@ configure-make: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif make .PHONY: all-make maybe-all-make maybe-all-make: +@if make +maybe-all-make: all-make all-make: configure-make @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd make && $(MAKE) $(FLAGS_TO_PASS) all) +@endif make .PHONY: check-make maybe-check-make maybe-check-make: +@if make +maybe-check-make: check-make check-make: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd make && $(MAKE) $(FLAGS_TO_PASS) check) +@endif make .PHONY: install-make maybe-install-make maybe-install-make: +@if make +maybe-install-make: install-make install-make: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd make && $(MAKE) $(FLAGS_TO_PASS) install) +@endif make # Other targets (info, dvi, etc.) .PHONY: maybe-info-make info-make maybe-info-make: +@if make +maybe-info-make: info-make info-make: \ configure-make @@ -11324,6 +13407,7 @@ info-make: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11336,9 +13420,12 @@ info-make: \ info) \ || exit 1 +@endif make .PHONY: maybe-dvi-make dvi-make maybe-dvi-make: +@if make +maybe-dvi-make: dvi-make dvi-make: \ configure-make @@ -11346,6 +13433,7 @@ dvi-make: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11358,9 +13446,12 @@ dvi-make: \ dvi) \ || exit 1 +@endif make .PHONY: maybe-TAGS-make TAGS-make maybe-TAGS-make: +@if make +maybe-TAGS-make: TAGS-make TAGS-make: \ configure-make @@ -11368,6 +13459,7 @@ TAGS-make: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11380,9 +13472,12 @@ TAGS-make: \ TAGS) \ || exit 1 +@endif make .PHONY: maybe-install-info-make install-info-make maybe-install-info-make: +@if make +maybe-install-info-make: install-info-make install-info-make: \ configure-make \ @@ -11391,6 +13486,7 @@ install-info-make: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11403,9 +13499,12 @@ install-info-make: \ install-info) \ || exit 1 +@endif make .PHONY: maybe-installcheck-make installcheck-make maybe-installcheck-make: +@if make +maybe-installcheck-make: installcheck-make installcheck-make: \ configure-make @@ -11413,6 +13512,7 @@ installcheck-make: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11425,15 +13525,19 @@ installcheck-make: \ installcheck) \ || exit 1 +@endif make .PHONY: maybe-mostlyclean-make mostlyclean-make maybe-mostlyclean-make: +@if make +maybe-mostlyclean-make: mostlyclean-make mostlyclean-make: @[ -f ./make/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11446,15 +13550,19 @@ mostlyclean-make: mostlyclean) \ || exit 1 +@endif make .PHONY: maybe-clean-make clean-make maybe-clean-make: +@if make +maybe-clean-make: clean-make clean-make: @[ -f ./make/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11467,15 +13575,19 @@ clean-make: clean) \ || exit 1 +@endif make .PHONY: maybe-distclean-make distclean-make maybe-distclean-make: +@if make +maybe-distclean-make: distclean-make distclean-make: @[ -f ./make/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11488,15 +13600,19 @@ distclean-make: distclean) \ || exit 1 +@endif make .PHONY: maybe-maintainer-clean-make maintainer-clean-make maybe-maintainer-clean-make: +@if make +maybe-maintainer-clean-make: maintainer-clean-make maintainer-clean-make: @[ -f ./make/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11509,30 +13625,19 @@ maintainer-clean-make: maintainer-clean) \ || exit 1 +@endif make .PHONY: configure-mmalloc maybe-configure-mmalloc maybe-configure-mmalloc: +@if mmalloc +maybe-configure-mmalloc: configure-mmalloc configure-mmalloc: @test ! -f mmalloc/Makefile || exit 0; \ [ -d mmalloc ] || mkdir mmalloc; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in mmalloc; \ cd mmalloc || exit 1; \ case $(srcdir) in \ @@ -11549,35 +13654,49 @@ configure-mmalloc: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif mmalloc .PHONY: all-mmalloc maybe-all-mmalloc maybe-all-mmalloc: +@if mmalloc +maybe-all-mmalloc: all-mmalloc all-mmalloc: configure-mmalloc @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd mmalloc && $(MAKE) $(FLAGS_TO_PASS) all) +@endif mmalloc .PHONY: check-mmalloc maybe-check-mmalloc maybe-check-mmalloc: +@if mmalloc +maybe-check-mmalloc: check-mmalloc check-mmalloc: +@endif mmalloc .PHONY: install-mmalloc maybe-install-mmalloc maybe-install-mmalloc: +@if mmalloc +maybe-install-mmalloc: install-mmalloc install-mmalloc: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd mmalloc && $(MAKE) $(FLAGS_TO_PASS) install) +@endif mmalloc # Other targets (info, dvi, etc.) .PHONY: maybe-info-mmalloc info-mmalloc maybe-info-mmalloc: +@if mmalloc +maybe-info-mmalloc: info-mmalloc info-mmalloc: \ configure-mmalloc @@ -11585,6 +13704,7 @@ info-mmalloc: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11597,9 +13717,12 @@ info-mmalloc: \ info) \ || exit 1 +@endif mmalloc .PHONY: maybe-dvi-mmalloc dvi-mmalloc maybe-dvi-mmalloc: +@if mmalloc +maybe-dvi-mmalloc: dvi-mmalloc dvi-mmalloc: \ configure-mmalloc @@ -11607,6 +13730,7 @@ dvi-mmalloc: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11619,9 +13743,12 @@ dvi-mmalloc: \ dvi) \ || exit 1 +@endif mmalloc .PHONY: maybe-TAGS-mmalloc TAGS-mmalloc maybe-TAGS-mmalloc: +@if mmalloc +maybe-TAGS-mmalloc: TAGS-mmalloc TAGS-mmalloc: \ configure-mmalloc @@ -11629,6 +13756,7 @@ TAGS-mmalloc: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11641,9 +13769,12 @@ TAGS-mmalloc: \ TAGS) \ || exit 1 +@endif mmalloc .PHONY: maybe-install-info-mmalloc install-info-mmalloc maybe-install-info-mmalloc: +@if mmalloc +maybe-install-info-mmalloc: install-info-mmalloc install-info-mmalloc: \ configure-mmalloc \ @@ -11652,6 +13783,7 @@ install-info-mmalloc: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11664,9 +13796,12 @@ install-info-mmalloc: \ install-info) \ || exit 1 +@endif mmalloc .PHONY: maybe-installcheck-mmalloc installcheck-mmalloc maybe-installcheck-mmalloc: +@if mmalloc +maybe-installcheck-mmalloc: installcheck-mmalloc installcheck-mmalloc: \ configure-mmalloc @@ -11674,6 +13809,7 @@ installcheck-mmalloc: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11686,15 +13822,19 @@ installcheck-mmalloc: \ installcheck) \ || exit 1 +@endif mmalloc .PHONY: maybe-mostlyclean-mmalloc mostlyclean-mmalloc maybe-mostlyclean-mmalloc: +@if mmalloc +maybe-mostlyclean-mmalloc: mostlyclean-mmalloc mostlyclean-mmalloc: @[ -f ./mmalloc/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11707,15 +13847,19 @@ mostlyclean-mmalloc: mostlyclean) \ || exit 1 +@endif mmalloc .PHONY: maybe-clean-mmalloc clean-mmalloc maybe-clean-mmalloc: +@if mmalloc +maybe-clean-mmalloc: clean-mmalloc clean-mmalloc: @[ -f ./mmalloc/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11728,15 +13872,19 @@ clean-mmalloc: clean) \ || exit 1 +@endif mmalloc .PHONY: maybe-distclean-mmalloc distclean-mmalloc maybe-distclean-mmalloc: +@if mmalloc +maybe-distclean-mmalloc: distclean-mmalloc distclean-mmalloc: @[ -f ./mmalloc/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11749,15 +13897,19 @@ distclean-mmalloc: distclean) \ || exit 1 +@endif mmalloc .PHONY: maybe-maintainer-clean-mmalloc maintainer-clean-mmalloc maybe-maintainer-clean-mmalloc: +@if mmalloc +maybe-maintainer-clean-mmalloc: maintainer-clean-mmalloc maintainer-clean-mmalloc: @[ -f ./mmalloc/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11770,30 +13922,19 @@ maintainer-clean-mmalloc: maintainer-clean) \ || exit 1 +@endif mmalloc .PHONY: configure-patch maybe-configure-patch maybe-configure-patch: +@if patch +maybe-configure-patch: configure-patch configure-patch: @test ! -f patch/Makefile || exit 0; \ [ -d patch ] || mkdir patch; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in patch; \ cd patch || exit 1; \ case $(srcdir) in \ @@ -11810,39 +13951,54 @@ configure-patch: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif patch .PHONY: all-patch maybe-all-patch maybe-all-patch: +@if patch +maybe-all-patch: all-patch all-patch: configure-patch @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd patch && $(MAKE) $(FLAGS_TO_PASS) all) +@endif patch .PHONY: check-patch maybe-check-patch maybe-check-patch: +@if patch +maybe-check-patch: check-patch check-patch: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd patch && $(MAKE) $(FLAGS_TO_PASS) check) +@endif patch .PHONY: install-patch maybe-install-patch maybe-install-patch: +@if patch +maybe-install-patch: install-patch install-patch: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd patch && $(MAKE) $(FLAGS_TO_PASS) install) +@endif patch # Other targets (info, dvi, etc.) .PHONY: maybe-info-patch info-patch maybe-info-patch: +@if patch +maybe-info-patch: info-patch info-patch: \ configure-patch @@ -11850,6 +14006,7 @@ info-patch: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11862,9 +14019,12 @@ info-patch: \ info) \ || exit 1 +@endif patch .PHONY: maybe-dvi-patch dvi-patch maybe-dvi-patch: +@if patch +maybe-dvi-patch: dvi-patch dvi-patch: \ configure-patch @@ -11872,6 +14032,7 @@ dvi-patch: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11884,9 +14045,12 @@ dvi-patch: \ dvi) \ || exit 1 +@endif patch .PHONY: maybe-TAGS-patch TAGS-patch maybe-TAGS-patch: +@if patch +maybe-TAGS-patch: TAGS-patch TAGS-patch: \ configure-patch @@ -11894,6 +14058,7 @@ TAGS-patch: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11906,9 +14071,12 @@ TAGS-patch: \ TAGS) \ || exit 1 +@endif patch .PHONY: maybe-install-info-patch install-info-patch maybe-install-info-patch: +@if patch +maybe-install-info-patch: install-info-patch install-info-patch: \ configure-patch \ @@ -11917,6 +14085,7 @@ install-info-patch: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11929,9 +14098,12 @@ install-info-patch: \ install-info) \ || exit 1 +@endif patch .PHONY: maybe-installcheck-patch installcheck-patch maybe-installcheck-patch: +@if patch +maybe-installcheck-patch: installcheck-patch installcheck-patch: \ configure-patch @@ -11939,6 +14111,7 @@ installcheck-patch: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11951,15 +14124,19 @@ installcheck-patch: \ installcheck) \ || exit 1 +@endif patch .PHONY: maybe-mostlyclean-patch mostlyclean-patch maybe-mostlyclean-patch: +@if patch +maybe-mostlyclean-patch: mostlyclean-patch mostlyclean-patch: @[ -f ./patch/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11972,15 +14149,19 @@ mostlyclean-patch: mostlyclean) \ || exit 1 +@endif patch .PHONY: maybe-clean-patch clean-patch maybe-clean-patch: +@if patch +maybe-clean-patch: clean-patch clean-patch: @[ -f ./patch/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -11993,15 +14174,19 @@ clean-patch: clean) \ || exit 1 +@endif patch .PHONY: maybe-distclean-patch distclean-patch maybe-distclean-patch: +@if patch +maybe-distclean-patch: distclean-patch distclean-patch: @[ -f ./patch/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12014,15 +14199,19 @@ distclean-patch: distclean) \ || exit 1 +@endif patch .PHONY: maybe-maintainer-clean-patch maintainer-clean-patch maybe-maintainer-clean-patch: +@if patch +maybe-maintainer-clean-patch: maintainer-clean-patch maintainer-clean-patch: @[ -f ./patch/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12035,30 +14224,19 @@ maintainer-clean-patch: maintainer-clean) \ || exit 1 +@endif patch .PHONY: configure-perl maybe-configure-perl maybe-configure-perl: +@if perl +maybe-configure-perl: configure-perl configure-perl: @test ! -f perl/Makefile || exit 0; \ [ -d perl ] || mkdir perl; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in perl; \ cd perl || exit 1; \ case $(srcdir) in \ @@ -12075,39 +14253,54 @@ configure-perl: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif perl .PHONY: all-perl maybe-all-perl maybe-all-perl: +@if perl +maybe-all-perl: all-perl all-perl: configure-perl @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd perl && $(MAKE) $(FLAGS_TO_PASS) all) +@endif perl .PHONY: check-perl maybe-check-perl maybe-check-perl: +@if perl +maybe-check-perl: check-perl check-perl: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd perl && $(MAKE) $(FLAGS_TO_PASS) check) +@endif perl .PHONY: install-perl maybe-install-perl maybe-install-perl: +@if perl +maybe-install-perl: install-perl install-perl: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd perl && $(MAKE) $(FLAGS_TO_PASS) install) +@endif perl # Other targets (info, dvi, etc.) .PHONY: maybe-info-perl info-perl maybe-info-perl: +@if perl +maybe-info-perl: info-perl info-perl: \ configure-perl @@ -12115,6 +14308,7 @@ info-perl: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12127,9 +14321,12 @@ info-perl: \ info) \ || exit 1 +@endif perl .PHONY: maybe-dvi-perl dvi-perl maybe-dvi-perl: +@if perl +maybe-dvi-perl: dvi-perl dvi-perl: \ configure-perl @@ -12137,6 +14334,7 @@ dvi-perl: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12149,9 +14347,12 @@ dvi-perl: \ dvi) \ || exit 1 +@endif perl .PHONY: maybe-TAGS-perl TAGS-perl maybe-TAGS-perl: +@if perl +maybe-TAGS-perl: TAGS-perl TAGS-perl: \ configure-perl @@ -12159,6 +14360,7 @@ TAGS-perl: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12171,9 +14373,12 @@ TAGS-perl: \ TAGS) \ || exit 1 +@endif perl .PHONY: maybe-install-info-perl install-info-perl maybe-install-info-perl: +@if perl +maybe-install-info-perl: install-info-perl install-info-perl: \ configure-perl \ @@ -12182,6 +14387,7 @@ install-info-perl: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12194,9 +14400,12 @@ install-info-perl: \ install-info) \ || exit 1 +@endif perl .PHONY: maybe-installcheck-perl installcheck-perl maybe-installcheck-perl: +@if perl +maybe-installcheck-perl: installcheck-perl installcheck-perl: \ configure-perl @@ -12204,6 +14413,7 @@ installcheck-perl: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12216,15 +14426,19 @@ installcheck-perl: \ installcheck) \ || exit 1 +@endif perl .PHONY: maybe-mostlyclean-perl mostlyclean-perl maybe-mostlyclean-perl: +@if perl +maybe-mostlyclean-perl: mostlyclean-perl mostlyclean-perl: @[ -f ./perl/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12237,15 +14451,19 @@ mostlyclean-perl: mostlyclean) \ || exit 1 +@endif perl .PHONY: maybe-clean-perl clean-perl maybe-clean-perl: +@if perl +maybe-clean-perl: clean-perl clean-perl: @[ -f ./perl/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12258,15 +14476,19 @@ clean-perl: clean) \ || exit 1 +@endif perl .PHONY: maybe-distclean-perl distclean-perl maybe-distclean-perl: +@if perl +maybe-distclean-perl: distclean-perl distclean-perl: @[ -f ./perl/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12279,15 +14501,19 @@ distclean-perl: distclean) \ || exit 1 +@endif perl .PHONY: maybe-maintainer-clean-perl maintainer-clean-perl maybe-maintainer-clean-perl: +@if perl +maybe-maintainer-clean-perl: maintainer-clean-perl maintainer-clean-perl: @[ -f ./perl/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12300,30 +14526,19 @@ maintainer-clean-perl: maintainer-clean) \ || exit 1 +@endif perl .PHONY: configure-prms maybe-configure-prms maybe-configure-prms: +@if prms +maybe-configure-prms: configure-prms configure-prms: @test ! -f prms/Makefile || exit 0; \ [ -d prms ] || mkdir prms; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in prms; \ cd prms || exit 1; \ case $(srcdir) in \ @@ -12340,39 +14555,54 @@ configure-prms: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif prms .PHONY: all-prms maybe-all-prms maybe-all-prms: +@if prms +maybe-all-prms: all-prms all-prms: configure-prms @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd prms && $(MAKE) $(FLAGS_TO_PASS) all) +@endif prms .PHONY: check-prms maybe-check-prms maybe-check-prms: +@if prms +maybe-check-prms: check-prms check-prms: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd prms && $(MAKE) $(FLAGS_TO_PASS) check) +@endif prms .PHONY: install-prms maybe-install-prms maybe-install-prms: +@if prms +maybe-install-prms: install-prms install-prms: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd prms && $(MAKE) $(FLAGS_TO_PASS) install) +@endif prms # Other targets (info, dvi, etc.) .PHONY: maybe-info-prms info-prms maybe-info-prms: +@if prms +maybe-info-prms: info-prms info-prms: \ configure-prms @@ -12380,6 +14610,7 @@ info-prms: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12392,9 +14623,12 @@ info-prms: \ info) \ || exit 1 +@endif prms .PHONY: maybe-dvi-prms dvi-prms maybe-dvi-prms: +@if prms +maybe-dvi-prms: dvi-prms dvi-prms: \ configure-prms @@ -12402,6 +14636,7 @@ dvi-prms: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12414,9 +14649,12 @@ dvi-prms: \ dvi) \ || exit 1 +@endif prms .PHONY: maybe-TAGS-prms TAGS-prms maybe-TAGS-prms: +@if prms +maybe-TAGS-prms: TAGS-prms TAGS-prms: \ configure-prms @@ -12424,6 +14662,7 @@ TAGS-prms: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12436,9 +14675,12 @@ TAGS-prms: \ TAGS) \ || exit 1 +@endif prms .PHONY: maybe-install-info-prms install-info-prms maybe-install-info-prms: +@if prms +maybe-install-info-prms: install-info-prms install-info-prms: \ configure-prms \ @@ -12447,6 +14689,7 @@ install-info-prms: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12459,9 +14702,12 @@ install-info-prms: \ install-info) \ || exit 1 +@endif prms .PHONY: maybe-installcheck-prms installcheck-prms maybe-installcheck-prms: +@if prms +maybe-installcheck-prms: installcheck-prms installcheck-prms: \ configure-prms @@ -12469,6 +14715,7 @@ installcheck-prms: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12481,15 +14728,19 @@ installcheck-prms: \ installcheck) \ || exit 1 +@endif prms .PHONY: maybe-mostlyclean-prms mostlyclean-prms maybe-mostlyclean-prms: +@if prms +maybe-mostlyclean-prms: mostlyclean-prms mostlyclean-prms: @[ -f ./prms/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12502,15 +14753,19 @@ mostlyclean-prms: mostlyclean) \ || exit 1 +@endif prms .PHONY: maybe-clean-prms clean-prms maybe-clean-prms: +@if prms +maybe-clean-prms: clean-prms clean-prms: @[ -f ./prms/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12523,15 +14778,19 @@ clean-prms: clean) \ || exit 1 +@endif prms .PHONY: maybe-distclean-prms distclean-prms maybe-distclean-prms: +@if prms +maybe-distclean-prms: distclean-prms distclean-prms: @[ -f ./prms/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12544,15 +14803,19 @@ distclean-prms: distclean) \ || exit 1 +@endif prms .PHONY: maybe-maintainer-clean-prms maintainer-clean-prms maybe-maintainer-clean-prms: +@if prms +maybe-maintainer-clean-prms: maintainer-clean-prms maintainer-clean-prms: @[ -f ./prms/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12565,30 +14828,19 @@ maintainer-clean-prms: maintainer-clean) \ || exit 1 +@endif prms .PHONY: configure-rcs maybe-configure-rcs maybe-configure-rcs: +@if rcs +maybe-configure-rcs: configure-rcs configure-rcs: @test ! -f rcs/Makefile || exit 0; \ [ -d rcs ] || mkdir rcs; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in rcs; \ cd rcs || exit 1; \ case $(srcdir) in \ @@ -12605,39 +14857,54 @@ configure-rcs: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif rcs .PHONY: all-rcs maybe-all-rcs maybe-all-rcs: +@if rcs +maybe-all-rcs: all-rcs all-rcs: configure-rcs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd rcs && $(MAKE) $(FLAGS_TO_PASS) all) +@endif rcs .PHONY: check-rcs maybe-check-rcs maybe-check-rcs: +@if rcs +maybe-check-rcs: check-rcs check-rcs: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd rcs && $(MAKE) $(FLAGS_TO_PASS) check) +@endif rcs .PHONY: install-rcs maybe-install-rcs maybe-install-rcs: +@if rcs +maybe-install-rcs: install-rcs install-rcs: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd rcs && $(MAKE) $(FLAGS_TO_PASS) install) +@endif rcs # Other targets (info, dvi, etc.) .PHONY: maybe-info-rcs info-rcs maybe-info-rcs: +@if rcs +maybe-info-rcs: info-rcs info-rcs: \ configure-rcs @@ -12645,6 +14912,7 @@ info-rcs: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12657,9 +14925,12 @@ info-rcs: \ info) \ || exit 1 +@endif rcs .PHONY: maybe-dvi-rcs dvi-rcs maybe-dvi-rcs: +@if rcs +maybe-dvi-rcs: dvi-rcs dvi-rcs: \ configure-rcs @@ -12667,6 +14938,7 @@ dvi-rcs: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12679,9 +14951,12 @@ dvi-rcs: \ dvi) \ || exit 1 +@endif rcs .PHONY: maybe-TAGS-rcs TAGS-rcs maybe-TAGS-rcs: +@if rcs +maybe-TAGS-rcs: TAGS-rcs TAGS-rcs: \ configure-rcs @@ -12689,6 +14964,7 @@ TAGS-rcs: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12701,9 +14977,12 @@ TAGS-rcs: \ TAGS) \ || exit 1 +@endif rcs .PHONY: maybe-install-info-rcs install-info-rcs maybe-install-info-rcs: +@if rcs +maybe-install-info-rcs: install-info-rcs install-info-rcs: \ configure-rcs \ @@ -12712,6 +14991,7 @@ install-info-rcs: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12724,9 +15004,12 @@ install-info-rcs: \ install-info) \ || exit 1 +@endif rcs .PHONY: maybe-installcheck-rcs installcheck-rcs maybe-installcheck-rcs: +@if rcs +maybe-installcheck-rcs: installcheck-rcs installcheck-rcs: \ configure-rcs @@ -12734,6 +15017,7 @@ installcheck-rcs: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12746,15 +15030,19 @@ installcheck-rcs: \ installcheck) \ || exit 1 +@endif rcs .PHONY: maybe-mostlyclean-rcs mostlyclean-rcs maybe-mostlyclean-rcs: +@if rcs +maybe-mostlyclean-rcs: mostlyclean-rcs mostlyclean-rcs: @[ -f ./rcs/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12767,15 +15055,19 @@ mostlyclean-rcs: mostlyclean) \ || exit 1 +@endif rcs .PHONY: maybe-clean-rcs clean-rcs maybe-clean-rcs: +@if rcs +maybe-clean-rcs: clean-rcs clean-rcs: @[ -f ./rcs/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12788,15 +15080,19 @@ clean-rcs: clean) \ || exit 1 +@endif rcs .PHONY: maybe-distclean-rcs distclean-rcs maybe-distclean-rcs: +@if rcs +maybe-distclean-rcs: distclean-rcs distclean-rcs: @[ -f ./rcs/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12809,15 +15105,19 @@ distclean-rcs: distclean) \ || exit 1 +@endif rcs .PHONY: maybe-maintainer-clean-rcs maintainer-clean-rcs maybe-maintainer-clean-rcs: +@if rcs +maybe-maintainer-clean-rcs: maintainer-clean-rcs maintainer-clean-rcs: @[ -f ./rcs/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12830,30 +15130,19 @@ maintainer-clean-rcs: maintainer-clean) \ || exit 1 +@endif rcs .PHONY: configure-readline maybe-configure-readline maybe-configure-readline: +@if readline +maybe-configure-readline: configure-readline configure-readline: @test ! -f readline/Makefile || exit 0; \ [ -d readline ] || mkdir readline; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in readline; \ cd readline || exit 1; \ case $(srcdir) in \ @@ -12870,39 +15159,54 @@ configure-readline: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif readline .PHONY: all-readline maybe-all-readline maybe-all-readline: +@if readline +maybe-all-readline: all-readline all-readline: configure-readline @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd readline && $(MAKE) $(FLAGS_TO_PASS) all) +@endif readline .PHONY: check-readline maybe-check-readline maybe-check-readline: +@if readline +maybe-check-readline: check-readline check-readline: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd readline && $(MAKE) $(FLAGS_TO_PASS) check) +@endif readline .PHONY: install-readline maybe-install-readline maybe-install-readline: +@if readline +maybe-install-readline: install-readline install-readline: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd readline && $(MAKE) $(FLAGS_TO_PASS) install) +@endif readline # Other targets (info, dvi, etc.) .PHONY: maybe-info-readline info-readline maybe-info-readline: +@if readline +maybe-info-readline: info-readline info-readline: \ configure-readline @@ -12910,6 +15214,7 @@ info-readline: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12922,9 +15227,12 @@ info-readline: \ info) \ || exit 1 +@endif readline .PHONY: maybe-dvi-readline dvi-readline maybe-dvi-readline: +@if readline +maybe-dvi-readline: dvi-readline dvi-readline: \ configure-readline @@ -12932,6 +15240,7 @@ dvi-readline: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12944,9 +15253,12 @@ dvi-readline: \ dvi) \ || exit 1 +@endif readline .PHONY: maybe-TAGS-readline TAGS-readline maybe-TAGS-readline: +@if readline +maybe-TAGS-readline: TAGS-readline TAGS-readline: \ configure-readline @@ -12954,6 +15266,7 @@ TAGS-readline: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12966,9 +15279,12 @@ TAGS-readline: \ TAGS) \ || exit 1 +@endif readline .PHONY: maybe-install-info-readline install-info-readline maybe-install-info-readline: +@if readline +maybe-install-info-readline: install-info-readline install-info-readline: \ configure-readline \ @@ -12977,6 +15293,7 @@ install-info-readline: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -12989,9 +15306,12 @@ install-info-readline: \ install-info) \ || exit 1 +@endif readline .PHONY: maybe-installcheck-readline installcheck-readline maybe-installcheck-readline: +@if readline +maybe-installcheck-readline: installcheck-readline installcheck-readline: \ configure-readline @@ -12999,6 +15319,7 @@ installcheck-readline: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13011,15 +15332,19 @@ installcheck-readline: \ installcheck) \ || exit 1 +@endif readline .PHONY: maybe-mostlyclean-readline mostlyclean-readline maybe-mostlyclean-readline: +@if readline +maybe-mostlyclean-readline: mostlyclean-readline mostlyclean-readline: @[ -f ./readline/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13032,15 +15357,19 @@ mostlyclean-readline: mostlyclean) \ || exit 1 +@endif readline .PHONY: maybe-clean-readline clean-readline maybe-clean-readline: +@if readline +maybe-clean-readline: clean-readline clean-readline: @[ -f ./readline/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13053,15 +15382,19 @@ clean-readline: clean) \ || exit 1 +@endif readline .PHONY: maybe-distclean-readline distclean-readline maybe-distclean-readline: +@if readline +maybe-distclean-readline: distclean-readline distclean-readline: @[ -f ./readline/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13074,15 +15407,19 @@ distclean-readline: distclean) \ || exit 1 +@endif readline .PHONY: maybe-maintainer-clean-readline maintainer-clean-readline maybe-maintainer-clean-readline: +@if readline +maybe-maintainer-clean-readline: maintainer-clean-readline maintainer-clean-readline: @[ -f ./readline/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13095,30 +15432,19 @@ maintainer-clean-readline: maintainer-clean) \ || exit 1 +@endif readline .PHONY: configure-release maybe-configure-release maybe-configure-release: +@if release +maybe-configure-release: configure-release configure-release: @test ! -f release/Makefile || exit 0; \ [ -d release ] || mkdir release; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in release; \ cd release || exit 1; \ case $(srcdir) in \ @@ -13135,31 +15461,44 @@ configure-release: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif release .PHONY: all-release maybe-all-release maybe-all-release: +@if release +maybe-all-release: all-release all-release: configure-release @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd release && $(MAKE) $(FLAGS_TO_PASS) all) +@endif release .PHONY: check-release maybe-check-release maybe-check-release: +@if release +maybe-check-release: check-release check-release: +@endif release .PHONY: install-release maybe-install-release maybe-install-release: +@if release +maybe-install-release: install-release install-release: +@endif release # Other targets (info, dvi, etc.) .PHONY: maybe-info-release info-release maybe-info-release: +@if release +maybe-info-release: info-release info-release: \ configure-release @@ -13167,6 +15506,7 @@ info-release: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13179,9 +15519,12 @@ info-release: \ info) \ || exit 1 +@endif release .PHONY: maybe-dvi-release dvi-release maybe-dvi-release: +@if release +maybe-dvi-release: dvi-release dvi-release: \ configure-release @@ -13189,6 +15532,7 @@ dvi-release: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13201,9 +15545,12 @@ dvi-release: \ dvi) \ || exit 1 +@endif release .PHONY: maybe-TAGS-release TAGS-release maybe-TAGS-release: +@if release +maybe-TAGS-release: TAGS-release TAGS-release: \ configure-release @@ -13211,6 +15558,7 @@ TAGS-release: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13223,9 +15571,12 @@ TAGS-release: \ TAGS) \ || exit 1 +@endif release .PHONY: maybe-install-info-release install-info-release maybe-install-info-release: +@if release +maybe-install-info-release: install-info-release install-info-release: \ configure-release \ @@ -13234,6 +15585,7 @@ install-info-release: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13246,9 +15598,12 @@ install-info-release: \ install-info) \ || exit 1 +@endif release .PHONY: maybe-installcheck-release installcheck-release maybe-installcheck-release: +@if release +maybe-installcheck-release: installcheck-release installcheck-release: \ configure-release @@ -13256,6 +15611,7 @@ installcheck-release: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13268,15 +15624,19 @@ installcheck-release: \ installcheck) \ || exit 1 +@endif release .PHONY: maybe-mostlyclean-release mostlyclean-release maybe-mostlyclean-release: +@if release +maybe-mostlyclean-release: mostlyclean-release mostlyclean-release: @[ -f ./release/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13289,15 +15649,19 @@ mostlyclean-release: mostlyclean) \ || exit 1 +@endif release .PHONY: maybe-clean-release clean-release maybe-clean-release: +@if release +maybe-clean-release: clean-release clean-release: @[ -f ./release/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13310,15 +15674,19 @@ clean-release: clean) \ || exit 1 +@endif release .PHONY: maybe-distclean-release distclean-release maybe-distclean-release: +@if release +maybe-distclean-release: distclean-release distclean-release: @[ -f ./release/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13331,15 +15699,19 @@ distclean-release: distclean) \ || exit 1 +@endif release .PHONY: maybe-maintainer-clean-release maintainer-clean-release maybe-maintainer-clean-release: +@if release +maybe-maintainer-clean-release: maintainer-clean-release maintainer-clean-release: @[ -f ./release/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13352,30 +15724,19 @@ maintainer-clean-release: maintainer-clean) \ || exit 1 +@endif release .PHONY: configure-recode maybe-configure-recode maybe-configure-recode: +@if recode +maybe-configure-recode: configure-recode configure-recode: @test ! -f recode/Makefile || exit 0; \ [ -d recode ] || mkdir recode; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in recode; \ cd recode || exit 1; \ case $(srcdir) in \ @@ -13392,39 +15753,54 @@ configure-recode: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif recode .PHONY: all-recode maybe-all-recode maybe-all-recode: +@if recode +maybe-all-recode: all-recode all-recode: configure-recode @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd recode && $(MAKE) $(FLAGS_TO_PASS) all) +@endif recode .PHONY: check-recode maybe-check-recode maybe-check-recode: +@if recode +maybe-check-recode: check-recode check-recode: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd recode && $(MAKE) $(FLAGS_TO_PASS) check) +@endif recode .PHONY: install-recode maybe-install-recode maybe-install-recode: +@if recode +maybe-install-recode: install-recode install-recode: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd recode && $(MAKE) $(FLAGS_TO_PASS) install) +@endif recode # Other targets (info, dvi, etc.) .PHONY: maybe-info-recode info-recode maybe-info-recode: +@if recode +maybe-info-recode: info-recode info-recode: \ configure-recode @@ -13432,6 +15808,7 @@ info-recode: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13444,9 +15821,12 @@ info-recode: \ info) \ || exit 1 +@endif recode .PHONY: maybe-dvi-recode dvi-recode maybe-dvi-recode: +@if recode +maybe-dvi-recode: dvi-recode dvi-recode: \ configure-recode @@ -13454,6 +15834,7 @@ dvi-recode: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13466,9 +15847,12 @@ dvi-recode: \ dvi) \ || exit 1 +@endif recode .PHONY: maybe-TAGS-recode TAGS-recode maybe-TAGS-recode: +@if recode +maybe-TAGS-recode: TAGS-recode TAGS-recode: \ configure-recode @@ -13476,6 +15860,7 @@ TAGS-recode: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13488,9 +15873,12 @@ TAGS-recode: \ TAGS) \ || exit 1 +@endif recode .PHONY: maybe-install-info-recode install-info-recode maybe-install-info-recode: +@if recode +maybe-install-info-recode: install-info-recode install-info-recode: \ configure-recode \ @@ -13499,6 +15887,7 @@ install-info-recode: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13511,9 +15900,12 @@ install-info-recode: \ install-info) \ || exit 1 +@endif recode .PHONY: maybe-installcheck-recode installcheck-recode maybe-installcheck-recode: +@if recode +maybe-installcheck-recode: installcheck-recode installcheck-recode: \ configure-recode @@ -13521,6 +15913,7 @@ installcheck-recode: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13533,15 +15926,19 @@ installcheck-recode: \ installcheck) \ || exit 1 +@endif recode .PHONY: maybe-mostlyclean-recode mostlyclean-recode maybe-mostlyclean-recode: +@if recode +maybe-mostlyclean-recode: mostlyclean-recode mostlyclean-recode: @[ -f ./recode/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13554,15 +15951,19 @@ mostlyclean-recode: mostlyclean) \ || exit 1 +@endif recode .PHONY: maybe-clean-recode clean-recode maybe-clean-recode: +@if recode +maybe-clean-recode: clean-recode clean-recode: @[ -f ./recode/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13575,15 +15976,19 @@ clean-recode: clean) \ || exit 1 +@endif recode .PHONY: maybe-distclean-recode distclean-recode maybe-distclean-recode: +@if recode +maybe-distclean-recode: distclean-recode distclean-recode: @[ -f ./recode/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13596,15 +16001,19 @@ distclean-recode: distclean) \ || exit 1 +@endif recode .PHONY: maybe-maintainer-clean-recode maintainer-clean-recode maybe-maintainer-clean-recode: +@if recode +maybe-maintainer-clean-recode: maintainer-clean-recode maintainer-clean-recode: @[ -f ./recode/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13617,30 +16026,19 @@ maintainer-clean-recode: maintainer-clean) \ || exit 1 +@endif recode .PHONY: configure-sed maybe-configure-sed maybe-configure-sed: +@if sed +maybe-configure-sed: configure-sed configure-sed: @test ! -f sed/Makefile || exit 0; \ [ -d sed ] || mkdir sed; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in sed; \ cd sed || exit 1; \ case $(srcdir) in \ @@ -13657,39 +16055,54 @@ configure-sed: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif sed .PHONY: all-sed maybe-all-sed maybe-all-sed: +@if sed +maybe-all-sed: all-sed all-sed: configure-sed @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd sed && $(MAKE) $(FLAGS_TO_PASS) all) +@endif sed .PHONY: check-sed maybe-check-sed maybe-check-sed: +@if sed +maybe-check-sed: check-sed check-sed: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd sed && $(MAKE) $(FLAGS_TO_PASS) check) +@endif sed .PHONY: install-sed maybe-install-sed maybe-install-sed: +@if sed +maybe-install-sed: install-sed install-sed: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd sed && $(MAKE) $(FLAGS_TO_PASS) install) +@endif sed # Other targets (info, dvi, etc.) .PHONY: maybe-info-sed info-sed maybe-info-sed: +@if sed +maybe-info-sed: info-sed info-sed: \ configure-sed @@ -13697,6 +16110,7 @@ info-sed: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13709,9 +16123,12 @@ info-sed: \ info) \ || exit 1 +@endif sed .PHONY: maybe-dvi-sed dvi-sed maybe-dvi-sed: +@if sed +maybe-dvi-sed: dvi-sed dvi-sed: \ configure-sed @@ -13719,6 +16136,7 @@ dvi-sed: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13731,9 +16149,12 @@ dvi-sed: \ dvi) \ || exit 1 +@endif sed .PHONY: maybe-TAGS-sed TAGS-sed maybe-TAGS-sed: +@if sed +maybe-TAGS-sed: TAGS-sed TAGS-sed: \ configure-sed @@ -13741,6 +16162,7 @@ TAGS-sed: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13753,9 +16175,12 @@ TAGS-sed: \ TAGS) \ || exit 1 +@endif sed .PHONY: maybe-install-info-sed install-info-sed maybe-install-info-sed: +@if sed +maybe-install-info-sed: install-info-sed install-info-sed: \ configure-sed \ @@ -13764,6 +16189,7 @@ install-info-sed: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13776,9 +16202,12 @@ install-info-sed: \ install-info) \ || exit 1 +@endif sed .PHONY: maybe-installcheck-sed installcheck-sed maybe-installcheck-sed: +@if sed +maybe-installcheck-sed: installcheck-sed installcheck-sed: \ configure-sed @@ -13786,6 +16215,7 @@ installcheck-sed: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13798,15 +16228,19 @@ installcheck-sed: \ installcheck) \ || exit 1 +@endif sed .PHONY: maybe-mostlyclean-sed mostlyclean-sed maybe-mostlyclean-sed: +@if sed +maybe-mostlyclean-sed: mostlyclean-sed mostlyclean-sed: @[ -f ./sed/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13819,15 +16253,19 @@ mostlyclean-sed: mostlyclean) \ || exit 1 +@endif sed .PHONY: maybe-clean-sed clean-sed maybe-clean-sed: +@if sed +maybe-clean-sed: clean-sed clean-sed: @[ -f ./sed/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13840,15 +16278,19 @@ clean-sed: clean) \ || exit 1 +@endif sed .PHONY: maybe-distclean-sed distclean-sed maybe-distclean-sed: +@if sed +maybe-distclean-sed: distclean-sed distclean-sed: @[ -f ./sed/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13861,15 +16303,19 @@ distclean-sed: distclean) \ || exit 1 +@endif sed .PHONY: maybe-maintainer-clean-sed maintainer-clean-sed maybe-maintainer-clean-sed: +@if sed +maybe-maintainer-clean-sed: maintainer-clean-sed maintainer-clean-sed: @[ -f ./sed/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13882,30 +16328,19 @@ maintainer-clean-sed: maintainer-clean) \ || exit 1 +@endif sed .PHONY: configure-send-pr maybe-configure-send-pr maybe-configure-send-pr: +@if send-pr +maybe-configure-send-pr: configure-send-pr configure-send-pr: @test ! -f send-pr/Makefile || exit 0; \ [ -d send-pr ] || mkdir send-pr; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in send-pr; \ cd send-pr || exit 1; \ case $(srcdir) in \ @@ -13922,39 +16357,54 @@ configure-send-pr: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif send-pr .PHONY: all-send-pr maybe-all-send-pr maybe-all-send-pr: +@if send-pr +maybe-all-send-pr: all-send-pr all-send-pr: configure-send-pr @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd send-pr && $(MAKE) $(FLAGS_TO_PASS) all) +@endif send-pr .PHONY: check-send-pr maybe-check-send-pr maybe-check-send-pr: +@if send-pr +maybe-check-send-pr: check-send-pr check-send-pr: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd send-pr && $(MAKE) $(FLAGS_TO_PASS) check) +@endif send-pr .PHONY: install-send-pr maybe-install-send-pr maybe-install-send-pr: +@if send-pr +maybe-install-send-pr: install-send-pr install-send-pr: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd send-pr && $(MAKE) $(FLAGS_TO_PASS) install) +@endif send-pr # Other targets (info, dvi, etc.) .PHONY: maybe-info-send-pr info-send-pr maybe-info-send-pr: +@if send-pr +maybe-info-send-pr: info-send-pr info-send-pr: \ configure-send-pr @@ -13962,6 +16412,7 @@ info-send-pr: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13974,9 +16425,12 @@ info-send-pr: \ info) \ || exit 1 +@endif send-pr .PHONY: maybe-dvi-send-pr dvi-send-pr maybe-dvi-send-pr: +@if send-pr +maybe-dvi-send-pr: dvi-send-pr dvi-send-pr: \ configure-send-pr @@ -13984,6 +16438,7 @@ dvi-send-pr: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -13996,9 +16451,12 @@ dvi-send-pr: \ dvi) \ || exit 1 +@endif send-pr .PHONY: maybe-TAGS-send-pr TAGS-send-pr maybe-TAGS-send-pr: +@if send-pr +maybe-TAGS-send-pr: TAGS-send-pr TAGS-send-pr: \ configure-send-pr @@ -14006,6 +16464,7 @@ TAGS-send-pr: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14018,9 +16477,12 @@ TAGS-send-pr: \ TAGS) \ || exit 1 +@endif send-pr .PHONY: maybe-install-info-send-pr install-info-send-pr maybe-install-info-send-pr: +@if send-pr +maybe-install-info-send-pr: install-info-send-pr install-info-send-pr: \ configure-send-pr \ @@ -14029,6 +16491,7 @@ install-info-send-pr: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14041,9 +16504,12 @@ install-info-send-pr: \ install-info) \ || exit 1 +@endif send-pr .PHONY: maybe-installcheck-send-pr installcheck-send-pr maybe-installcheck-send-pr: +@if send-pr +maybe-installcheck-send-pr: installcheck-send-pr installcheck-send-pr: \ configure-send-pr @@ -14051,6 +16517,7 @@ installcheck-send-pr: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14063,15 +16530,19 @@ installcheck-send-pr: \ installcheck) \ || exit 1 +@endif send-pr .PHONY: maybe-mostlyclean-send-pr mostlyclean-send-pr maybe-mostlyclean-send-pr: +@if send-pr +maybe-mostlyclean-send-pr: mostlyclean-send-pr mostlyclean-send-pr: @[ -f ./send-pr/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14084,15 +16555,19 @@ mostlyclean-send-pr: mostlyclean) \ || exit 1 +@endif send-pr .PHONY: maybe-clean-send-pr clean-send-pr maybe-clean-send-pr: +@if send-pr +maybe-clean-send-pr: clean-send-pr clean-send-pr: @[ -f ./send-pr/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14105,15 +16580,19 @@ clean-send-pr: clean) \ || exit 1 +@endif send-pr .PHONY: maybe-distclean-send-pr distclean-send-pr maybe-distclean-send-pr: +@if send-pr +maybe-distclean-send-pr: distclean-send-pr distclean-send-pr: @[ -f ./send-pr/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14126,15 +16605,19 @@ distclean-send-pr: distclean) \ || exit 1 +@endif send-pr .PHONY: maybe-maintainer-clean-send-pr maintainer-clean-send-pr maybe-maintainer-clean-send-pr: +@if send-pr +maybe-maintainer-clean-send-pr: maintainer-clean-send-pr maintainer-clean-send-pr: @[ -f ./send-pr/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14147,30 +16630,19 @@ maintainer-clean-send-pr: maintainer-clean) \ || exit 1 +@endif send-pr .PHONY: configure-shellutils maybe-configure-shellutils maybe-configure-shellutils: +@if shellutils +maybe-configure-shellutils: configure-shellutils configure-shellutils: @test ! -f shellutils/Makefile || exit 0; \ [ -d shellutils ] || mkdir shellutils; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in shellutils; \ cd shellutils || exit 1; \ case $(srcdir) in \ @@ -14187,39 +16659,54 @@ configure-shellutils: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif shellutils .PHONY: all-shellutils maybe-all-shellutils maybe-all-shellutils: +@if shellutils +maybe-all-shellutils: all-shellutils all-shellutils: configure-shellutils @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd shellutils && $(MAKE) $(FLAGS_TO_PASS) all) +@endif shellutils .PHONY: check-shellutils maybe-check-shellutils maybe-check-shellutils: +@if shellutils +maybe-check-shellutils: check-shellutils check-shellutils: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd shellutils && $(MAKE) $(FLAGS_TO_PASS) check) +@endif shellutils .PHONY: install-shellutils maybe-install-shellutils maybe-install-shellutils: +@if shellutils +maybe-install-shellutils: install-shellutils install-shellutils: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd shellutils && $(MAKE) $(FLAGS_TO_PASS) install) +@endif shellutils # Other targets (info, dvi, etc.) .PHONY: maybe-info-shellutils info-shellutils maybe-info-shellutils: +@if shellutils +maybe-info-shellutils: info-shellutils info-shellutils: \ configure-shellutils @@ -14227,6 +16714,7 @@ info-shellutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14239,9 +16727,12 @@ info-shellutils: \ info) \ || exit 1 +@endif shellutils .PHONY: maybe-dvi-shellutils dvi-shellutils maybe-dvi-shellutils: +@if shellutils +maybe-dvi-shellutils: dvi-shellutils dvi-shellutils: \ configure-shellutils @@ -14249,6 +16740,7 @@ dvi-shellutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14261,9 +16753,12 @@ dvi-shellutils: \ dvi) \ || exit 1 +@endif shellutils .PHONY: maybe-TAGS-shellutils TAGS-shellutils maybe-TAGS-shellutils: +@if shellutils +maybe-TAGS-shellutils: TAGS-shellutils TAGS-shellutils: \ configure-shellutils @@ -14271,6 +16766,7 @@ TAGS-shellutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14283,9 +16779,12 @@ TAGS-shellutils: \ TAGS) \ || exit 1 +@endif shellutils .PHONY: maybe-install-info-shellutils install-info-shellutils maybe-install-info-shellutils: +@if shellutils +maybe-install-info-shellutils: install-info-shellutils install-info-shellutils: \ configure-shellutils \ @@ -14294,6 +16793,7 @@ install-info-shellutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14306,9 +16806,12 @@ install-info-shellutils: \ install-info) \ || exit 1 +@endif shellutils .PHONY: maybe-installcheck-shellutils installcheck-shellutils maybe-installcheck-shellutils: +@if shellutils +maybe-installcheck-shellutils: installcheck-shellutils installcheck-shellutils: \ configure-shellutils @@ -14316,6 +16819,7 @@ installcheck-shellutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14328,15 +16832,19 @@ installcheck-shellutils: \ installcheck) \ || exit 1 +@endif shellutils .PHONY: maybe-mostlyclean-shellutils mostlyclean-shellutils maybe-mostlyclean-shellutils: +@if shellutils +maybe-mostlyclean-shellutils: mostlyclean-shellutils mostlyclean-shellutils: @[ -f ./shellutils/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14349,15 +16857,19 @@ mostlyclean-shellutils: mostlyclean) \ || exit 1 +@endif shellutils .PHONY: maybe-clean-shellutils clean-shellutils maybe-clean-shellutils: +@if shellutils +maybe-clean-shellutils: clean-shellutils clean-shellutils: @[ -f ./shellutils/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14370,15 +16882,19 @@ clean-shellutils: clean) \ || exit 1 +@endif shellutils .PHONY: maybe-distclean-shellutils distclean-shellutils maybe-distclean-shellutils: +@if shellutils +maybe-distclean-shellutils: distclean-shellutils distclean-shellutils: @[ -f ./shellutils/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14391,15 +16907,19 @@ distclean-shellutils: distclean) \ || exit 1 +@endif shellutils .PHONY: maybe-maintainer-clean-shellutils maintainer-clean-shellutils maybe-maintainer-clean-shellutils: +@if shellutils +maybe-maintainer-clean-shellutils: maintainer-clean-shellutils maintainer-clean-shellutils: @[ -f ./shellutils/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14412,30 +16932,19 @@ maintainer-clean-shellutils: maintainer-clean) \ || exit 1 +@endif shellutils .PHONY: configure-sid maybe-configure-sid maybe-configure-sid: +@if sid +maybe-configure-sid: configure-sid configure-sid: @test ! -f sid/Makefile || exit 0; \ [ -d sid ] || mkdir sid; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in sid; \ cd sid || exit 1; \ case $(srcdir) in \ @@ -14452,39 +16961,54 @@ configure-sid: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif sid .PHONY: all-sid maybe-all-sid maybe-all-sid: +@if sid +maybe-all-sid: all-sid all-sid: configure-sid @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd sid && $(MAKE) $(FLAGS_TO_PASS) all) +@endif sid .PHONY: check-sid maybe-check-sid maybe-check-sid: +@if sid +maybe-check-sid: check-sid check-sid: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd sid && $(MAKE) $(FLAGS_TO_PASS) check) +@endif sid .PHONY: install-sid maybe-install-sid maybe-install-sid: +@if sid +maybe-install-sid: install-sid install-sid: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd sid && $(MAKE) $(FLAGS_TO_PASS) install) +@endif sid # Other targets (info, dvi, etc.) .PHONY: maybe-info-sid info-sid maybe-info-sid: +@if sid +maybe-info-sid: info-sid info-sid: \ configure-sid @@ -14492,6 +17016,7 @@ info-sid: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14504,9 +17029,12 @@ info-sid: \ info) \ || exit 1 +@endif sid .PHONY: maybe-dvi-sid dvi-sid maybe-dvi-sid: +@if sid +maybe-dvi-sid: dvi-sid dvi-sid: \ configure-sid @@ -14514,6 +17042,7 @@ dvi-sid: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14526,9 +17055,12 @@ dvi-sid: \ dvi) \ || exit 1 +@endif sid .PHONY: maybe-TAGS-sid TAGS-sid maybe-TAGS-sid: +@if sid +maybe-TAGS-sid: TAGS-sid TAGS-sid: \ configure-sid @@ -14536,6 +17068,7 @@ TAGS-sid: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14548,9 +17081,12 @@ TAGS-sid: \ TAGS) \ || exit 1 +@endif sid .PHONY: maybe-install-info-sid install-info-sid maybe-install-info-sid: +@if sid +maybe-install-info-sid: install-info-sid install-info-sid: \ configure-sid \ @@ -14559,6 +17095,7 @@ install-info-sid: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14571,9 +17108,12 @@ install-info-sid: \ install-info) \ || exit 1 +@endif sid .PHONY: maybe-installcheck-sid installcheck-sid maybe-installcheck-sid: +@if sid +maybe-installcheck-sid: installcheck-sid installcheck-sid: \ configure-sid @@ -14581,6 +17121,7 @@ installcheck-sid: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14593,15 +17134,19 @@ installcheck-sid: \ installcheck) \ || exit 1 +@endif sid .PHONY: maybe-mostlyclean-sid mostlyclean-sid maybe-mostlyclean-sid: +@if sid +maybe-mostlyclean-sid: mostlyclean-sid mostlyclean-sid: @[ -f ./sid/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14614,15 +17159,19 @@ mostlyclean-sid: mostlyclean) \ || exit 1 +@endif sid .PHONY: maybe-clean-sid clean-sid maybe-clean-sid: +@if sid +maybe-clean-sid: clean-sid clean-sid: @[ -f ./sid/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14635,15 +17184,19 @@ clean-sid: clean) \ || exit 1 +@endif sid .PHONY: maybe-distclean-sid distclean-sid maybe-distclean-sid: +@if sid +maybe-distclean-sid: distclean-sid distclean-sid: @[ -f ./sid/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14656,15 +17209,19 @@ distclean-sid: distclean) \ || exit 1 +@endif sid .PHONY: maybe-maintainer-clean-sid maintainer-clean-sid maybe-maintainer-clean-sid: +@if sid +maybe-maintainer-clean-sid: maintainer-clean-sid maintainer-clean-sid: @[ -f ./sid/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14677,30 +17234,19 @@ maintainer-clean-sid: maintainer-clean) \ || exit 1 +@endif sid .PHONY: configure-sim maybe-configure-sim maybe-configure-sim: +@if sim +maybe-configure-sim: configure-sim configure-sim: @test ! -f sim/Makefile || exit 0; \ [ -d sim ] || mkdir sim; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in sim; \ cd sim || exit 1; \ case $(srcdir) in \ @@ -14717,39 +17263,54 @@ configure-sim: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif sim .PHONY: all-sim maybe-all-sim maybe-all-sim: +@if sim +maybe-all-sim: all-sim all-sim: configure-sim @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd sim && $(MAKE) $(FLAGS_TO_PASS) all) +@endif sim .PHONY: check-sim maybe-check-sim maybe-check-sim: +@if sim +maybe-check-sim: check-sim check-sim: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd sim && $(MAKE) $(FLAGS_TO_PASS) check) +@endif sim .PHONY: install-sim maybe-install-sim maybe-install-sim: +@if sim +maybe-install-sim: install-sim install-sim: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd sim && $(MAKE) $(FLAGS_TO_PASS) install) +@endif sim # Other targets (info, dvi, etc.) .PHONY: maybe-info-sim info-sim maybe-info-sim: +@if sim +maybe-info-sim: info-sim info-sim: \ configure-sim @@ -14757,6 +17318,7 @@ info-sim: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14769,9 +17331,12 @@ info-sim: \ info) \ || exit 1 +@endif sim .PHONY: maybe-dvi-sim dvi-sim maybe-dvi-sim: +@if sim +maybe-dvi-sim: dvi-sim dvi-sim: \ configure-sim @@ -14779,6 +17344,7 @@ dvi-sim: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14791,9 +17357,12 @@ dvi-sim: \ dvi) \ || exit 1 +@endif sim .PHONY: maybe-TAGS-sim TAGS-sim maybe-TAGS-sim: +@if sim +maybe-TAGS-sim: TAGS-sim TAGS-sim: \ configure-sim @@ -14801,6 +17370,7 @@ TAGS-sim: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14813,9 +17383,12 @@ TAGS-sim: \ TAGS) \ || exit 1 +@endif sim .PHONY: maybe-install-info-sim install-info-sim maybe-install-info-sim: +@if sim +maybe-install-info-sim: install-info-sim install-info-sim: \ configure-sim \ @@ -14824,6 +17397,7 @@ install-info-sim: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14836,9 +17410,12 @@ install-info-sim: \ install-info) \ || exit 1 +@endif sim .PHONY: maybe-installcheck-sim installcheck-sim maybe-installcheck-sim: +@if sim +maybe-installcheck-sim: installcheck-sim installcheck-sim: \ configure-sim @@ -14846,6 +17423,7 @@ installcheck-sim: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14858,15 +17436,19 @@ installcheck-sim: \ installcheck) \ || exit 1 +@endif sim .PHONY: maybe-mostlyclean-sim mostlyclean-sim maybe-mostlyclean-sim: +@if sim +maybe-mostlyclean-sim: mostlyclean-sim mostlyclean-sim: @[ -f ./sim/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14879,15 +17461,19 @@ mostlyclean-sim: mostlyclean) \ || exit 1 +@endif sim .PHONY: maybe-clean-sim clean-sim maybe-clean-sim: +@if sim +maybe-clean-sim: clean-sim clean-sim: @[ -f ./sim/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14900,15 +17486,19 @@ clean-sim: clean) \ || exit 1 +@endif sim .PHONY: maybe-distclean-sim distclean-sim maybe-distclean-sim: +@if sim +maybe-distclean-sim: distclean-sim distclean-sim: @[ -f ./sim/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14921,15 +17511,19 @@ distclean-sim: distclean) \ || exit 1 +@endif sim .PHONY: maybe-maintainer-clean-sim maintainer-clean-sim maybe-maintainer-clean-sim: +@if sim +maybe-maintainer-clean-sim: maintainer-clean-sim maintainer-clean-sim: @[ -f ./sim/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -14942,30 +17536,19 @@ maintainer-clean-sim: maintainer-clean) \ || exit 1 +@endif sim .PHONY: configure-tar maybe-configure-tar maybe-configure-tar: +@if tar +maybe-configure-tar: configure-tar configure-tar: @test ! -f tar/Makefile || exit 0; \ [ -d tar ] || mkdir tar; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in tar; \ cd tar || exit 1; \ case $(srcdir) in \ @@ -14982,39 +17565,54 @@ configure-tar: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif tar .PHONY: all-tar maybe-all-tar maybe-all-tar: +@if tar +maybe-all-tar: all-tar all-tar: configure-tar @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd tar && $(MAKE) $(FLAGS_TO_PASS) all) +@endif tar .PHONY: check-tar maybe-check-tar maybe-check-tar: +@if tar +maybe-check-tar: check-tar check-tar: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd tar && $(MAKE) $(FLAGS_TO_PASS) check) +@endif tar .PHONY: install-tar maybe-install-tar maybe-install-tar: +@if tar +maybe-install-tar: install-tar install-tar: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd tar && $(MAKE) $(FLAGS_TO_PASS) install) +@endif tar # Other targets (info, dvi, etc.) .PHONY: maybe-info-tar info-tar maybe-info-tar: +@if tar +maybe-info-tar: info-tar info-tar: \ configure-tar @@ -15022,6 +17620,7 @@ info-tar: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15034,9 +17633,12 @@ info-tar: \ info) \ || exit 1 +@endif tar .PHONY: maybe-dvi-tar dvi-tar maybe-dvi-tar: +@if tar +maybe-dvi-tar: dvi-tar dvi-tar: \ configure-tar @@ -15044,6 +17646,7 @@ dvi-tar: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15056,9 +17659,12 @@ dvi-tar: \ dvi) \ || exit 1 +@endif tar .PHONY: maybe-TAGS-tar TAGS-tar maybe-TAGS-tar: +@if tar +maybe-TAGS-tar: TAGS-tar TAGS-tar: \ configure-tar @@ -15066,6 +17672,7 @@ TAGS-tar: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15078,9 +17685,12 @@ TAGS-tar: \ TAGS) \ || exit 1 +@endif tar .PHONY: maybe-install-info-tar install-info-tar maybe-install-info-tar: +@if tar +maybe-install-info-tar: install-info-tar install-info-tar: \ configure-tar \ @@ -15089,6 +17699,7 @@ install-info-tar: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15101,9 +17712,12 @@ install-info-tar: \ install-info) \ || exit 1 +@endif tar .PHONY: maybe-installcheck-tar installcheck-tar maybe-installcheck-tar: +@if tar +maybe-installcheck-tar: installcheck-tar installcheck-tar: \ configure-tar @@ -15111,6 +17725,7 @@ installcheck-tar: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15123,15 +17738,19 @@ installcheck-tar: \ installcheck) \ || exit 1 +@endif tar .PHONY: maybe-mostlyclean-tar mostlyclean-tar maybe-mostlyclean-tar: +@if tar +maybe-mostlyclean-tar: mostlyclean-tar mostlyclean-tar: @[ -f ./tar/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15144,15 +17763,19 @@ mostlyclean-tar: mostlyclean) \ || exit 1 +@endif tar .PHONY: maybe-clean-tar clean-tar maybe-clean-tar: +@if tar +maybe-clean-tar: clean-tar clean-tar: @[ -f ./tar/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15165,15 +17788,19 @@ clean-tar: clean) \ || exit 1 +@endif tar .PHONY: maybe-distclean-tar distclean-tar maybe-distclean-tar: +@if tar +maybe-distclean-tar: distclean-tar distclean-tar: @[ -f ./tar/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15186,15 +17813,19 @@ distclean-tar: distclean) \ || exit 1 +@endif tar .PHONY: maybe-maintainer-clean-tar maintainer-clean-tar maybe-maintainer-clean-tar: +@if tar +maybe-maintainer-clean-tar: maintainer-clean-tar maintainer-clean-tar: @[ -f ./tar/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15207,30 +17838,19 @@ maintainer-clean-tar: maintainer-clean) \ || exit 1 +@endif tar .PHONY: configure-texinfo maybe-configure-texinfo maybe-configure-texinfo: +@if texinfo +maybe-configure-texinfo: configure-texinfo configure-texinfo: @test ! -f texinfo/Makefile || exit 0; \ [ -d texinfo ] || mkdir texinfo; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in texinfo; \ cd texinfo || exit 1; \ case $(srcdir) in \ @@ -15247,35 +17867,49 @@ configure-texinfo: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif texinfo .PHONY: all-texinfo maybe-all-texinfo maybe-all-texinfo: +@if texinfo +maybe-all-texinfo: all-texinfo all-texinfo: configure-texinfo @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd texinfo && $(MAKE) $(FLAGS_TO_PASS) all) +@endif texinfo .PHONY: check-texinfo maybe-check-texinfo maybe-check-texinfo: +@if texinfo +maybe-check-texinfo: check-texinfo check-texinfo: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd texinfo && $(MAKE) $(FLAGS_TO_PASS) check) +@endif texinfo .PHONY: install-texinfo maybe-install-texinfo maybe-install-texinfo: +@if texinfo +maybe-install-texinfo: install-texinfo install-texinfo: +@endif texinfo # Other targets (info, dvi, etc.) .PHONY: maybe-info-texinfo info-texinfo maybe-info-texinfo: +@if texinfo +maybe-info-texinfo: info-texinfo info-texinfo: \ configure-texinfo @@ -15283,6 +17917,7 @@ info-texinfo: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15295,9 +17930,12 @@ info-texinfo: \ info) \ || exit 1 +@endif texinfo .PHONY: maybe-dvi-texinfo dvi-texinfo maybe-dvi-texinfo: +@if texinfo +maybe-dvi-texinfo: dvi-texinfo dvi-texinfo: \ configure-texinfo @@ -15305,6 +17943,7 @@ dvi-texinfo: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15317,9 +17956,12 @@ dvi-texinfo: \ dvi) \ || exit 1 +@endif texinfo .PHONY: maybe-TAGS-texinfo TAGS-texinfo maybe-TAGS-texinfo: +@if texinfo +maybe-TAGS-texinfo: TAGS-texinfo TAGS-texinfo: \ configure-texinfo @@ -15327,6 +17969,7 @@ TAGS-texinfo: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15339,9 +17982,12 @@ TAGS-texinfo: \ TAGS) \ || exit 1 +@endif texinfo .PHONY: maybe-install-info-texinfo install-info-texinfo maybe-install-info-texinfo: +@if texinfo +maybe-install-info-texinfo: install-info-texinfo install-info-texinfo: \ configure-texinfo \ @@ -15350,6 +17996,7 @@ install-info-texinfo: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15362,9 +18009,12 @@ install-info-texinfo: \ install-info) \ || exit 1 +@endif texinfo .PHONY: maybe-installcheck-texinfo installcheck-texinfo maybe-installcheck-texinfo: +@if texinfo +maybe-installcheck-texinfo: installcheck-texinfo installcheck-texinfo: \ configure-texinfo @@ -15372,6 +18022,7 @@ installcheck-texinfo: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15384,15 +18035,19 @@ installcheck-texinfo: \ installcheck) \ || exit 1 +@endif texinfo .PHONY: maybe-mostlyclean-texinfo mostlyclean-texinfo maybe-mostlyclean-texinfo: +@if texinfo +maybe-mostlyclean-texinfo: mostlyclean-texinfo mostlyclean-texinfo: @[ -f ./texinfo/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15405,15 +18060,19 @@ mostlyclean-texinfo: mostlyclean) \ || exit 1 +@endif texinfo .PHONY: maybe-clean-texinfo clean-texinfo maybe-clean-texinfo: +@if texinfo +maybe-clean-texinfo: clean-texinfo clean-texinfo: @[ -f ./texinfo/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15426,15 +18085,19 @@ clean-texinfo: clean) \ || exit 1 +@endif texinfo .PHONY: maybe-distclean-texinfo distclean-texinfo maybe-distclean-texinfo: +@if texinfo +maybe-distclean-texinfo: distclean-texinfo distclean-texinfo: @[ -f ./texinfo/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15447,15 +18110,19 @@ distclean-texinfo: distclean) \ || exit 1 +@endif texinfo .PHONY: maybe-maintainer-clean-texinfo maintainer-clean-texinfo maybe-maintainer-clean-texinfo: +@if texinfo +maybe-maintainer-clean-texinfo: maintainer-clean-texinfo maintainer-clean-texinfo: @[ -f ./texinfo/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15468,30 +18135,19 @@ maintainer-clean-texinfo: maintainer-clean) \ || exit 1 +@endif texinfo .PHONY: configure-textutils maybe-configure-textutils maybe-configure-textutils: +@if textutils +maybe-configure-textutils: configure-textutils configure-textutils: @test ! -f textutils/Makefile || exit 0; \ [ -d textutils ] || mkdir textutils; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in textutils; \ cd textutils || exit 1; \ case $(srcdir) in \ @@ -15508,39 +18164,54 @@ configure-textutils: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif textutils .PHONY: all-textutils maybe-all-textutils maybe-all-textutils: +@if textutils +maybe-all-textutils: all-textutils all-textutils: configure-textutils @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd textutils && $(MAKE) $(FLAGS_TO_PASS) all) +@endif textutils .PHONY: check-textutils maybe-check-textutils maybe-check-textutils: +@if textutils +maybe-check-textutils: check-textutils check-textutils: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd textutils && $(MAKE) $(FLAGS_TO_PASS) check) +@endif textutils .PHONY: install-textutils maybe-install-textutils maybe-install-textutils: +@if textutils +maybe-install-textutils: install-textutils install-textutils: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd textutils && $(MAKE) $(FLAGS_TO_PASS) install) +@endif textutils # Other targets (info, dvi, etc.) .PHONY: maybe-info-textutils info-textutils maybe-info-textutils: +@if textutils +maybe-info-textutils: info-textutils info-textutils: \ configure-textutils @@ -15548,6 +18219,7 @@ info-textutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15560,9 +18232,12 @@ info-textutils: \ info) \ || exit 1 +@endif textutils .PHONY: maybe-dvi-textutils dvi-textutils maybe-dvi-textutils: +@if textutils +maybe-dvi-textutils: dvi-textutils dvi-textutils: \ configure-textutils @@ -15570,6 +18245,7 @@ dvi-textutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15582,9 +18258,12 @@ dvi-textutils: \ dvi) \ || exit 1 +@endif textutils .PHONY: maybe-TAGS-textutils TAGS-textutils maybe-TAGS-textutils: +@if textutils +maybe-TAGS-textutils: TAGS-textutils TAGS-textutils: \ configure-textutils @@ -15592,6 +18271,7 @@ TAGS-textutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15604,9 +18284,12 @@ TAGS-textutils: \ TAGS) \ || exit 1 +@endif textutils .PHONY: maybe-install-info-textutils install-info-textutils maybe-install-info-textutils: +@if textutils +maybe-install-info-textutils: install-info-textutils install-info-textutils: \ configure-textutils \ @@ -15615,6 +18298,7 @@ install-info-textutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15627,9 +18311,12 @@ install-info-textutils: \ install-info) \ || exit 1 +@endif textutils .PHONY: maybe-installcheck-textutils installcheck-textutils maybe-installcheck-textutils: +@if textutils +maybe-installcheck-textutils: installcheck-textutils installcheck-textutils: \ configure-textutils @@ -15637,6 +18324,7 @@ installcheck-textutils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15649,15 +18337,19 @@ installcheck-textutils: \ installcheck) \ || exit 1 +@endif textutils .PHONY: maybe-mostlyclean-textutils mostlyclean-textutils maybe-mostlyclean-textutils: +@if textutils +maybe-mostlyclean-textutils: mostlyclean-textutils mostlyclean-textutils: @[ -f ./textutils/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15670,15 +18362,19 @@ mostlyclean-textutils: mostlyclean) \ || exit 1 +@endif textutils .PHONY: maybe-clean-textutils clean-textutils maybe-clean-textutils: +@if textutils +maybe-clean-textutils: clean-textutils clean-textutils: @[ -f ./textutils/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15691,15 +18387,19 @@ clean-textutils: clean) \ || exit 1 +@endif textutils .PHONY: maybe-distclean-textutils distclean-textutils maybe-distclean-textutils: +@if textutils +maybe-distclean-textutils: distclean-textutils distclean-textutils: @[ -f ./textutils/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15712,15 +18412,19 @@ distclean-textutils: distclean) \ || exit 1 +@endif textutils .PHONY: maybe-maintainer-clean-textutils maintainer-clean-textutils maybe-maintainer-clean-textutils: +@if textutils +maybe-maintainer-clean-textutils: maintainer-clean-textutils maintainer-clean-textutils: @[ -f ./textutils/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15733,30 +18437,19 @@ maintainer-clean-textutils: maintainer-clean) \ || exit 1 +@endif textutils .PHONY: configure-time maybe-configure-time maybe-configure-time: +@if time +maybe-configure-time: configure-time configure-time: @test ! -f time/Makefile || exit 0; \ [ -d time ] || mkdir time; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in time; \ cd time || exit 1; \ case $(srcdir) in \ @@ -15773,39 +18466,54 @@ configure-time: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif time .PHONY: all-time maybe-all-time maybe-all-time: +@if time +maybe-all-time: all-time all-time: configure-time @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd time && $(MAKE) $(FLAGS_TO_PASS) all) +@endif time .PHONY: check-time maybe-check-time maybe-check-time: +@if time +maybe-check-time: check-time check-time: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd time && $(MAKE) $(FLAGS_TO_PASS) check) +@endif time .PHONY: install-time maybe-install-time maybe-install-time: +@if time +maybe-install-time: install-time install-time: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd time && $(MAKE) $(FLAGS_TO_PASS) install) +@endif time # Other targets (info, dvi, etc.) .PHONY: maybe-info-time info-time maybe-info-time: +@if time +maybe-info-time: info-time info-time: \ configure-time @@ -15813,6 +18521,7 @@ info-time: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15825,9 +18534,12 @@ info-time: \ info) \ || exit 1 +@endif time .PHONY: maybe-dvi-time dvi-time maybe-dvi-time: +@if time +maybe-dvi-time: dvi-time dvi-time: \ configure-time @@ -15835,6 +18547,7 @@ dvi-time: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15847,9 +18560,12 @@ dvi-time: \ dvi) \ || exit 1 +@endif time .PHONY: maybe-TAGS-time TAGS-time maybe-TAGS-time: +@if time +maybe-TAGS-time: TAGS-time TAGS-time: \ configure-time @@ -15857,6 +18573,7 @@ TAGS-time: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15869,9 +18586,12 @@ TAGS-time: \ TAGS) \ || exit 1 +@endif time .PHONY: maybe-install-info-time install-info-time maybe-install-info-time: +@if time +maybe-install-info-time: install-info-time install-info-time: \ configure-time \ @@ -15880,6 +18600,7 @@ install-info-time: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15892,9 +18613,12 @@ install-info-time: \ install-info) \ || exit 1 +@endif time .PHONY: maybe-installcheck-time installcheck-time maybe-installcheck-time: +@if time +maybe-installcheck-time: installcheck-time installcheck-time: \ configure-time @@ -15902,6 +18626,7 @@ installcheck-time: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15914,15 +18639,19 @@ installcheck-time: \ installcheck) \ || exit 1 +@endif time .PHONY: maybe-mostlyclean-time mostlyclean-time maybe-mostlyclean-time: +@if time +maybe-mostlyclean-time: mostlyclean-time mostlyclean-time: @[ -f ./time/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15935,15 +18664,19 @@ mostlyclean-time: mostlyclean) \ || exit 1 +@endif time .PHONY: maybe-clean-time clean-time maybe-clean-time: +@if time +maybe-clean-time: clean-time clean-time: @[ -f ./time/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15956,15 +18689,19 @@ clean-time: clean) \ || exit 1 +@endif time .PHONY: maybe-distclean-time distclean-time maybe-distclean-time: +@if time +maybe-distclean-time: distclean-time distclean-time: @[ -f ./time/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15977,15 +18714,19 @@ distclean-time: distclean) \ || exit 1 +@endif time .PHONY: maybe-maintainer-clean-time maintainer-clean-time maybe-maintainer-clean-time: +@if time +maybe-maintainer-clean-time: maintainer-clean-time maintainer-clean-time: @[ -f ./time/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -15998,30 +18739,19 @@ maintainer-clean-time: maintainer-clean) \ || exit 1 +@endif time .PHONY: configure-uudecode maybe-configure-uudecode maybe-configure-uudecode: +@if uudecode +maybe-configure-uudecode: configure-uudecode configure-uudecode: @test ! -f uudecode/Makefile || exit 0; \ [ -d uudecode ] || mkdir uudecode; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in uudecode; \ cd uudecode || exit 1; \ case $(srcdir) in \ @@ -16038,39 +18768,54 @@ configure-uudecode: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif uudecode .PHONY: all-uudecode maybe-all-uudecode maybe-all-uudecode: +@if uudecode +maybe-all-uudecode: all-uudecode all-uudecode: configure-uudecode @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd uudecode && $(MAKE) $(FLAGS_TO_PASS) all) +@endif uudecode .PHONY: check-uudecode maybe-check-uudecode maybe-check-uudecode: +@if uudecode +maybe-check-uudecode: check-uudecode check-uudecode: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd uudecode && $(MAKE) $(FLAGS_TO_PASS) check) +@endif uudecode .PHONY: install-uudecode maybe-install-uudecode maybe-install-uudecode: +@if uudecode +maybe-install-uudecode: install-uudecode install-uudecode: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd uudecode && $(MAKE) $(FLAGS_TO_PASS) install) +@endif uudecode # Other targets (info, dvi, etc.) .PHONY: maybe-info-uudecode info-uudecode maybe-info-uudecode: +@if uudecode +maybe-info-uudecode: info-uudecode info-uudecode: \ configure-uudecode @@ -16078,6 +18823,7 @@ info-uudecode: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16090,9 +18836,12 @@ info-uudecode: \ info) \ || exit 1 +@endif uudecode .PHONY: maybe-dvi-uudecode dvi-uudecode maybe-dvi-uudecode: +@if uudecode +maybe-dvi-uudecode: dvi-uudecode dvi-uudecode: \ configure-uudecode @@ -16100,6 +18849,7 @@ dvi-uudecode: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16112,9 +18862,12 @@ dvi-uudecode: \ dvi) \ || exit 1 +@endif uudecode .PHONY: maybe-TAGS-uudecode TAGS-uudecode maybe-TAGS-uudecode: +@if uudecode +maybe-TAGS-uudecode: TAGS-uudecode TAGS-uudecode: \ configure-uudecode @@ -16122,6 +18875,7 @@ TAGS-uudecode: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16134,9 +18888,12 @@ TAGS-uudecode: \ TAGS) \ || exit 1 +@endif uudecode .PHONY: maybe-install-info-uudecode install-info-uudecode maybe-install-info-uudecode: +@if uudecode +maybe-install-info-uudecode: install-info-uudecode install-info-uudecode: \ configure-uudecode \ @@ -16145,6 +18902,7 @@ install-info-uudecode: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16157,9 +18915,12 @@ install-info-uudecode: \ install-info) \ || exit 1 +@endif uudecode .PHONY: maybe-installcheck-uudecode installcheck-uudecode maybe-installcheck-uudecode: +@if uudecode +maybe-installcheck-uudecode: installcheck-uudecode installcheck-uudecode: \ configure-uudecode @@ -16167,6 +18928,7 @@ installcheck-uudecode: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16179,15 +18941,19 @@ installcheck-uudecode: \ installcheck) \ || exit 1 +@endif uudecode .PHONY: maybe-mostlyclean-uudecode mostlyclean-uudecode maybe-mostlyclean-uudecode: +@if uudecode +maybe-mostlyclean-uudecode: mostlyclean-uudecode mostlyclean-uudecode: @[ -f ./uudecode/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16200,15 +18966,19 @@ mostlyclean-uudecode: mostlyclean) \ || exit 1 +@endif uudecode .PHONY: maybe-clean-uudecode clean-uudecode maybe-clean-uudecode: +@if uudecode +maybe-clean-uudecode: clean-uudecode clean-uudecode: @[ -f ./uudecode/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16221,15 +18991,19 @@ clean-uudecode: clean) \ || exit 1 +@endif uudecode .PHONY: maybe-distclean-uudecode distclean-uudecode maybe-distclean-uudecode: +@if uudecode +maybe-distclean-uudecode: distclean-uudecode distclean-uudecode: @[ -f ./uudecode/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16242,15 +19016,19 @@ distclean-uudecode: distclean) \ || exit 1 +@endif uudecode .PHONY: maybe-maintainer-clean-uudecode maintainer-clean-uudecode maybe-maintainer-clean-uudecode: +@if uudecode +maybe-maintainer-clean-uudecode: maintainer-clean-uudecode maintainer-clean-uudecode: @[ -f ./uudecode/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16263,30 +19041,19 @@ maintainer-clean-uudecode: maintainer-clean) \ || exit 1 +@endif uudecode .PHONY: configure-wdiff maybe-configure-wdiff maybe-configure-wdiff: +@if wdiff +maybe-configure-wdiff: configure-wdiff configure-wdiff: @test ! -f wdiff/Makefile || exit 0; \ [ -d wdiff ] || mkdir wdiff; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in wdiff; \ cd wdiff || exit 1; \ case $(srcdir) in \ @@ -16303,39 +19070,54 @@ configure-wdiff: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif wdiff .PHONY: all-wdiff maybe-all-wdiff maybe-all-wdiff: +@if wdiff +maybe-all-wdiff: all-wdiff all-wdiff: configure-wdiff @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd wdiff && $(MAKE) $(FLAGS_TO_PASS) all) +@endif wdiff .PHONY: check-wdiff maybe-check-wdiff maybe-check-wdiff: +@if wdiff +maybe-check-wdiff: check-wdiff check-wdiff: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd wdiff && $(MAKE) $(FLAGS_TO_PASS) check) +@endif wdiff .PHONY: install-wdiff maybe-install-wdiff maybe-install-wdiff: +@if wdiff +maybe-install-wdiff: install-wdiff install-wdiff: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd wdiff && $(MAKE) $(FLAGS_TO_PASS) install) +@endif wdiff # Other targets (info, dvi, etc.) .PHONY: maybe-info-wdiff info-wdiff maybe-info-wdiff: +@if wdiff +maybe-info-wdiff: info-wdiff info-wdiff: \ configure-wdiff @@ -16343,6 +19125,7 @@ info-wdiff: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16355,9 +19138,12 @@ info-wdiff: \ info) \ || exit 1 +@endif wdiff .PHONY: maybe-dvi-wdiff dvi-wdiff maybe-dvi-wdiff: +@if wdiff +maybe-dvi-wdiff: dvi-wdiff dvi-wdiff: \ configure-wdiff @@ -16365,6 +19151,7 @@ dvi-wdiff: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16377,9 +19164,12 @@ dvi-wdiff: \ dvi) \ || exit 1 +@endif wdiff .PHONY: maybe-TAGS-wdiff TAGS-wdiff maybe-TAGS-wdiff: +@if wdiff +maybe-TAGS-wdiff: TAGS-wdiff TAGS-wdiff: \ configure-wdiff @@ -16387,6 +19177,7 @@ TAGS-wdiff: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16399,9 +19190,12 @@ TAGS-wdiff: \ TAGS) \ || exit 1 +@endif wdiff .PHONY: maybe-install-info-wdiff install-info-wdiff maybe-install-info-wdiff: +@if wdiff +maybe-install-info-wdiff: install-info-wdiff install-info-wdiff: \ configure-wdiff \ @@ -16410,6 +19204,7 @@ install-info-wdiff: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16422,9 +19217,12 @@ install-info-wdiff: \ install-info) \ || exit 1 +@endif wdiff .PHONY: maybe-installcheck-wdiff installcheck-wdiff maybe-installcheck-wdiff: +@if wdiff +maybe-installcheck-wdiff: installcheck-wdiff installcheck-wdiff: \ configure-wdiff @@ -16432,6 +19230,7 @@ installcheck-wdiff: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16444,15 +19243,19 @@ installcheck-wdiff: \ installcheck) \ || exit 1 +@endif wdiff .PHONY: maybe-mostlyclean-wdiff mostlyclean-wdiff maybe-mostlyclean-wdiff: +@if wdiff +maybe-mostlyclean-wdiff: mostlyclean-wdiff mostlyclean-wdiff: @[ -f ./wdiff/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16465,15 +19268,19 @@ mostlyclean-wdiff: mostlyclean) \ || exit 1 +@endif wdiff .PHONY: maybe-clean-wdiff clean-wdiff maybe-clean-wdiff: +@if wdiff +maybe-clean-wdiff: clean-wdiff clean-wdiff: @[ -f ./wdiff/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16486,15 +19293,19 @@ clean-wdiff: clean) \ || exit 1 +@endif wdiff .PHONY: maybe-distclean-wdiff distclean-wdiff maybe-distclean-wdiff: +@if wdiff +maybe-distclean-wdiff: distclean-wdiff distclean-wdiff: @[ -f ./wdiff/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16507,15 +19318,19 @@ distclean-wdiff: distclean) \ || exit 1 +@endif wdiff .PHONY: maybe-maintainer-clean-wdiff maintainer-clean-wdiff maybe-maintainer-clean-wdiff: +@if wdiff +maybe-maintainer-clean-wdiff: maintainer-clean-wdiff maintainer-clean-wdiff: @[ -f ./wdiff/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16528,30 +19343,19 @@ maintainer-clean-wdiff: maintainer-clean) \ || exit 1 +@endif wdiff .PHONY: configure-zip maybe-configure-zip maybe-configure-zip: +@if zip +maybe-configure-zip: configure-zip configure-zip: @test ! -f zip/Makefile || exit 0; \ [ -d zip ] || mkdir zip; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in zip; \ cd zip || exit 1; \ case $(srcdir) in \ @@ -16568,17 +19372,24 @@ configure-zip: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif zip .PHONY: all-zip maybe-all-zip maybe-all-zip: +@if zip +maybe-all-zip: all-zip all-zip: configure-zip @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd zip && $(MAKE) $(FLAGS_TO_PASS) all) +@endif zip .PHONY: check-zip maybe-check-zip maybe-check-zip: +@if zip +maybe-check-zip: check-zip # This module is only tested in a native toolchain. check-zip: @@ -16586,24 +19397,32 @@ check-zip: r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd zip && $(MAKE) $(FLAGS_TO_PASS) check); \ fi +@endif zip .PHONY: install-zip maybe-install-zip maybe-install-zip: +@if zip +maybe-install-zip: install-zip install-zip: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd zip && $(MAKE) $(FLAGS_TO_PASS) install) +@endif zip # Other targets (info, dvi, etc.) .PHONY: maybe-info-zip info-zip maybe-info-zip: +@if zip +maybe-info-zip: info-zip info-zip: \ configure-zip @@ -16611,6 +19430,7 @@ info-zip: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16623,9 +19443,12 @@ info-zip: \ info) \ || exit 1 +@endif zip .PHONY: maybe-dvi-zip dvi-zip maybe-dvi-zip: +@if zip +maybe-dvi-zip: dvi-zip dvi-zip: \ configure-zip @@ -16633,6 +19456,7 @@ dvi-zip: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16645,9 +19469,12 @@ dvi-zip: \ dvi) \ || exit 1 +@endif zip .PHONY: maybe-TAGS-zip TAGS-zip maybe-TAGS-zip: +@if zip +maybe-TAGS-zip: TAGS-zip TAGS-zip: \ configure-zip @@ -16655,6 +19482,7 @@ TAGS-zip: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16667,9 +19495,12 @@ TAGS-zip: \ TAGS) \ || exit 1 +@endif zip .PHONY: maybe-install-info-zip install-info-zip maybe-install-info-zip: +@if zip +maybe-install-info-zip: install-info-zip install-info-zip: \ configure-zip \ @@ -16678,6 +19509,7 @@ install-info-zip: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16690,9 +19522,12 @@ install-info-zip: \ install-info) \ || exit 1 +@endif zip .PHONY: maybe-installcheck-zip installcheck-zip maybe-installcheck-zip: +@if zip +maybe-installcheck-zip: installcheck-zip installcheck-zip: \ configure-zip @@ -16700,6 +19535,7 @@ installcheck-zip: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16712,15 +19548,19 @@ installcheck-zip: \ installcheck) \ || exit 1 +@endif zip .PHONY: maybe-mostlyclean-zip mostlyclean-zip maybe-mostlyclean-zip: +@if zip +maybe-mostlyclean-zip: mostlyclean-zip mostlyclean-zip: @[ -f ./zip/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16733,15 +19573,19 @@ mostlyclean-zip: mostlyclean) \ || exit 1 +@endif zip .PHONY: maybe-clean-zip clean-zip maybe-clean-zip: +@if zip +maybe-clean-zip: clean-zip clean-zip: @[ -f ./zip/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16754,15 +19598,19 @@ clean-zip: clean) \ || exit 1 +@endif zip .PHONY: maybe-distclean-zip distclean-zip maybe-distclean-zip: +@if zip +maybe-distclean-zip: distclean-zip distclean-zip: @[ -f ./zip/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16775,15 +19623,19 @@ distclean-zip: distclean) \ || exit 1 +@endif zip .PHONY: maybe-maintainer-clean-zip maintainer-clean-zip maybe-maintainer-clean-zip: +@if zip +maybe-maintainer-clean-zip: maintainer-clean-zip maintainer-clean-zip: @[ -f ./zip/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16796,30 +19648,19 @@ maintainer-clean-zip: maintainer-clean) \ || exit 1 +@endif zip .PHONY: configure-zlib maybe-configure-zlib maybe-configure-zlib: +@if zlib +maybe-configure-zlib: configure-zlib configure-zlib: @test ! -f zlib/Makefile || exit 0; \ [ -d zlib ] || mkdir zlib; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in zlib; \ cd zlib || exit 1; \ case $(srcdir) in \ @@ -16836,31 +19677,44 @@ configure-zlib: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif zlib .PHONY: all-zlib maybe-all-zlib maybe-all-zlib: +@if zlib +maybe-all-zlib: all-zlib all-zlib: configure-zlib @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd zlib && $(MAKE) $(FLAGS_TO_PASS) all) +@endif zlib .PHONY: check-zlib maybe-check-zlib maybe-check-zlib: +@if zlib +maybe-check-zlib: check-zlib check-zlib: +@endif zlib .PHONY: install-zlib maybe-install-zlib maybe-install-zlib: +@if zlib +maybe-install-zlib: install-zlib install-zlib: +@endif zlib # Other targets (info, dvi, etc.) .PHONY: maybe-info-zlib info-zlib maybe-info-zlib: +@if zlib +maybe-info-zlib: info-zlib info-zlib: \ configure-zlib @@ -16868,6 +19722,7 @@ info-zlib: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16880,9 +19735,12 @@ info-zlib: \ info) \ || exit 1 +@endif zlib .PHONY: maybe-dvi-zlib dvi-zlib maybe-dvi-zlib: +@if zlib +maybe-dvi-zlib: dvi-zlib dvi-zlib: \ configure-zlib @@ -16890,6 +19748,7 @@ dvi-zlib: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16902,9 +19761,12 @@ dvi-zlib: \ dvi) \ || exit 1 +@endif zlib .PHONY: maybe-TAGS-zlib TAGS-zlib maybe-TAGS-zlib: +@if zlib +maybe-TAGS-zlib: TAGS-zlib TAGS-zlib: \ configure-zlib @@ -16912,6 +19774,7 @@ TAGS-zlib: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16924,9 +19787,12 @@ TAGS-zlib: \ TAGS) \ || exit 1 +@endif zlib .PHONY: maybe-install-info-zlib install-info-zlib maybe-install-info-zlib: +@if zlib +maybe-install-info-zlib: install-info-zlib install-info-zlib: \ configure-zlib \ @@ -16935,6 +19801,7 @@ install-info-zlib: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16947,9 +19814,12 @@ install-info-zlib: \ install-info) \ || exit 1 +@endif zlib .PHONY: maybe-installcheck-zlib installcheck-zlib maybe-installcheck-zlib: +@if zlib +maybe-installcheck-zlib: installcheck-zlib installcheck-zlib: \ configure-zlib @@ -16957,6 +19827,7 @@ installcheck-zlib: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16969,15 +19840,19 @@ installcheck-zlib: \ installcheck) \ || exit 1 +@endif zlib .PHONY: maybe-mostlyclean-zlib mostlyclean-zlib maybe-mostlyclean-zlib: +@if zlib +maybe-mostlyclean-zlib: mostlyclean-zlib mostlyclean-zlib: @[ -f ./zlib/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -16990,15 +19865,19 @@ mostlyclean-zlib: mostlyclean) \ || exit 1 +@endif zlib .PHONY: maybe-clean-zlib clean-zlib maybe-clean-zlib: +@if zlib +maybe-clean-zlib: clean-zlib clean-zlib: @[ -f ./zlib/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17011,15 +19890,19 @@ clean-zlib: clean) \ || exit 1 +@endif zlib .PHONY: maybe-distclean-zlib distclean-zlib maybe-distclean-zlib: +@if zlib +maybe-distclean-zlib: distclean-zlib distclean-zlib: @[ -f ./zlib/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17032,15 +19915,19 @@ distclean-zlib: distclean) \ || exit 1 +@endif zlib .PHONY: maybe-maintainer-clean-zlib maintainer-clean-zlib maybe-maintainer-clean-zlib: +@if zlib +maybe-maintainer-clean-zlib: maintainer-clean-zlib maintainer-clean-zlib: @[ -f ./zlib/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17053,30 +19940,19 @@ maintainer-clean-zlib: maintainer-clean) \ || exit 1 +@endif zlib .PHONY: configure-gdb maybe-configure-gdb maybe-configure-gdb: +@if gdb +maybe-configure-gdb: configure-gdb configure-gdb: @test ! -f gdb/Makefile || exit 0; \ [ -d gdb ] || mkdir gdb; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in gdb; \ cd gdb || exit 1; \ case $(srcdir) in \ @@ -17093,39 +19969,54 @@ configure-gdb: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif gdb .PHONY: all-gdb maybe-all-gdb maybe-all-gdb: +@if gdb +maybe-all-gdb: all-gdb all-gdb: configure-gdb @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd gdb && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) all) +@endif gdb .PHONY: check-gdb maybe-check-gdb maybe-check-gdb: +@if gdb +maybe-check-gdb: check-gdb check-gdb: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd gdb && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) check) +@endif gdb .PHONY: install-gdb maybe-install-gdb maybe-install-gdb: +@if gdb +maybe-install-gdb: install-gdb install-gdb: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd gdb && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) install) +@endif gdb # Other targets (info, dvi, etc.) .PHONY: maybe-info-gdb info-gdb maybe-info-gdb: +@if gdb +maybe-info-gdb: info-gdb info-gdb: \ configure-gdb @@ -17133,6 +20024,7 @@ info-gdb: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17145,9 +20037,12 @@ info-gdb: \ info) \ || exit 1 +@endif gdb .PHONY: maybe-dvi-gdb dvi-gdb maybe-dvi-gdb: +@if gdb +maybe-dvi-gdb: dvi-gdb dvi-gdb: \ configure-gdb @@ -17155,6 +20050,7 @@ dvi-gdb: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17167,9 +20063,12 @@ dvi-gdb: \ dvi) \ || exit 1 +@endif gdb .PHONY: maybe-TAGS-gdb TAGS-gdb maybe-TAGS-gdb: +@if gdb +maybe-TAGS-gdb: TAGS-gdb TAGS-gdb: \ configure-gdb @@ -17177,6 +20076,7 @@ TAGS-gdb: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17189,9 +20089,12 @@ TAGS-gdb: \ TAGS) \ || exit 1 +@endif gdb .PHONY: maybe-install-info-gdb install-info-gdb maybe-install-info-gdb: +@if gdb +maybe-install-info-gdb: install-info-gdb install-info-gdb: \ configure-gdb \ @@ -17200,6 +20103,7 @@ install-info-gdb: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17212,9 +20116,12 @@ install-info-gdb: \ install-info) \ || exit 1 +@endif gdb .PHONY: maybe-installcheck-gdb installcheck-gdb maybe-installcheck-gdb: +@if gdb +maybe-installcheck-gdb: installcheck-gdb installcheck-gdb: \ configure-gdb @@ -17222,6 +20129,7 @@ installcheck-gdb: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17234,15 +20142,19 @@ installcheck-gdb: \ installcheck) \ || exit 1 +@endif gdb .PHONY: maybe-mostlyclean-gdb mostlyclean-gdb maybe-mostlyclean-gdb: +@if gdb +maybe-mostlyclean-gdb: mostlyclean-gdb mostlyclean-gdb: @[ -f ./gdb/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17255,15 +20167,19 @@ mostlyclean-gdb: mostlyclean) \ || exit 1 +@endif gdb .PHONY: maybe-clean-gdb clean-gdb maybe-clean-gdb: +@if gdb +maybe-clean-gdb: clean-gdb clean-gdb: @[ -f ./gdb/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17276,15 +20192,19 @@ clean-gdb: clean) \ || exit 1 +@endif gdb .PHONY: maybe-distclean-gdb distclean-gdb maybe-distclean-gdb: +@if gdb +maybe-distclean-gdb: distclean-gdb distclean-gdb: @[ -f ./gdb/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17297,15 +20217,19 @@ distclean-gdb: distclean) \ || exit 1 +@endif gdb .PHONY: maybe-maintainer-clean-gdb maintainer-clean-gdb maybe-maintainer-clean-gdb: +@if gdb +maybe-maintainer-clean-gdb: maintainer-clean-gdb maintainer-clean-gdb: @[ -f ./gdb/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17318,30 +20242,19 @@ maintainer-clean-gdb: maintainer-clean) \ || exit 1 +@endif gdb .PHONY: configure-expect maybe-configure-expect maybe-configure-expect: +@if expect +maybe-configure-expect: configure-expect configure-expect: @test ! -f expect/Makefile || exit 0; \ [ -d expect ] || mkdir expect; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in expect; \ cd expect || exit 1; \ case $(srcdir) in \ @@ -17358,39 +20271,54 @@ configure-expect: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif expect .PHONY: all-expect maybe-all-expect maybe-all-expect: +@if expect +maybe-all-expect: all-expect all-expect: configure-expect @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd expect && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) all) +@endif expect .PHONY: check-expect maybe-check-expect maybe-check-expect: +@if expect +maybe-check-expect: check-expect check-expect: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd expect && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) check) +@endif expect .PHONY: install-expect maybe-install-expect maybe-install-expect: +@if expect +maybe-install-expect: install-expect install-expect: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd expect && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) install) +@endif expect # Other targets (info, dvi, etc.) .PHONY: maybe-info-expect info-expect maybe-info-expect: +@if expect +maybe-info-expect: info-expect info-expect: \ configure-expect @@ -17398,6 +20326,7 @@ info-expect: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17410,9 +20339,12 @@ info-expect: \ info) \ || exit 1 +@endif expect .PHONY: maybe-dvi-expect dvi-expect maybe-dvi-expect: +@if expect +maybe-dvi-expect: dvi-expect dvi-expect: \ configure-expect @@ -17420,6 +20352,7 @@ dvi-expect: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17432,9 +20365,12 @@ dvi-expect: \ dvi) \ || exit 1 +@endif expect .PHONY: maybe-TAGS-expect TAGS-expect maybe-TAGS-expect: +@if expect +maybe-TAGS-expect: TAGS-expect TAGS-expect: \ configure-expect @@ -17442,6 +20378,7 @@ TAGS-expect: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17454,9 +20391,12 @@ TAGS-expect: \ TAGS) \ || exit 1 +@endif expect .PHONY: maybe-install-info-expect install-info-expect maybe-install-info-expect: +@if expect +maybe-install-info-expect: install-info-expect install-info-expect: \ configure-expect \ @@ -17465,6 +20405,7 @@ install-info-expect: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17477,9 +20418,12 @@ install-info-expect: \ install-info) \ || exit 1 +@endif expect .PHONY: maybe-installcheck-expect installcheck-expect maybe-installcheck-expect: +@if expect +maybe-installcheck-expect: installcheck-expect installcheck-expect: \ configure-expect @@ -17487,6 +20431,7 @@ installcheck-expect: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17499,15 +20444,19 @@ installcheck-expect: \ installcheck) \ || exit 1 +@endif expect .PHONY: maybe-mostlyclean-expect mostlyclean-expect maybe-mostlyclean-expect: +@if expect +maybe-mostlyclean-expect: mostlyclean-expect mostlyclean-expect: @[ -f ./expect/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17520,15 +20469,19 @@ mostlyclean-expect: mostlyclean) \ || exit 1 +@endif expect .PHONY: maybe-clean-expect clean-expect maybe-clean-expect: +@if expect +maybe-clean-expect: clean-expect clean-expect: @[ -f ./expect/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17541,15 +20494,19 @@ clean-expect: clean) \ || exit 1 +@endif expect .PHONY: maybe-distclean-expect distclean-expect maybe-distclean-expect: +@if expect +maybe-distclean-expect: distclean-expect distclean-expect: @[ -f ./expect/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17562,15 +20519,19 @@ distclean-expect: distclean) \ || exit 1 +@endif expect .PHONY: maybe-maintainer-clean-expect maintainer-clean-expect maybe-maintainer-clean-expect: +@if expect +maybe-maintainer-clean-expect: maintainer-clean-expect maintainer-clean-expect: @[ -f ./expect/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17583,30 +20544,19 @@ maintainer-clean-expect: maintainer-clean) \ || exit 1 +@endif expect .PHONY: configure-guile maybe-configure-guile maybe-configure-guile: +@if guile +maybe-configure-guile: configure-guile configure-guile: @test ! -f guile/Makefile || exit 0; \ [ -d guile ] || mkdir guile; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in guile; \ cd guile || exit 1; \ case $(srcdir) in \ @@ -17623,39 +20573,54 @@ configure-guile: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif guile .PHONY: all-guile maybe-all-guile maybe-all-guile: +@if guile +maybe-all-guile: all-guile all-guile: configure-guile @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd guile && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) all) +@endif guile .PHONY: check-guile maybe-check-guile maybe-check-guile: +@if guile +maybe-check-guile: check-guile check-guile: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd guile && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) check) +@endif guile .PHONY: install-guile maybe-install-guile maybe-install-guile: +@if guile +maybe-install-guile: install-guile install-guile: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd guile && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) install) +@endif guile # Other targets (info, dvi, etc.) .PHONY: maybe-info-guile info-guile maybe-info-guile: +@if guile +maybe-info-guile: info-guile info-guile: \ configure-guile @@ -17663,6 +20628,7 @@ info-guile: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17675,9 +20641,12 @@ info-guile: \ info) \ || exit 1 +@endif guile .PHONY: maybe-dvi-guile dvi-guile maybe-dvi-guile: +@if guile +maybe-dvi-guile: dvi-guile dvi-guile: \ configure-guile @@ -17685,6 +20654,7 @@ dvi-guile: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17697,9 +20667,12 @@ dvi-guile: \ dvi) \ || exit 1 +@endif guile .PHONY: maybe-TAGS-guile TAGS-guile maybe-TAGS-guile: +@if guile +maybe-TAGS-guile: TAGS-guile TAGS-guile: \ configure-guile @@ -17707,6 +20680,7 @@ TAGS-guile: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17719,9 +20693,12 @@ TAGS-guile: \ TAGS) \ || exit 1 +@endif guile .PHONY: maybe-install-info-guile install-info-guile maybe-install-info-guile: +@if guile +maybe-install-info-guile: install-info-guile install-info-guile: \ configure-guile \ @@ -17730,6 +20707,7 @@ install-info-guile: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17742,9 +20720,12 @@ install-info-guile: \ install-info) \ || exit 1 +@endif guile .PHONY: maybe-installcheck-guile installcheck-guile maybe-installcheck-guile: +@if guile +maybe-installcheck-guile: installcheck-guile installcheck-guile: \ configure-guile @@ -17752,6 +20733,7 @@ installcheck-guile: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17764,15 +20746,19 @@ installcheck-guile: \ installcheck) \ || exit 1 +@endif guile .PHONY: maybe-mostlyclean-guile mostlyclean-guile maybe-mostlyclean-guile: +@if guile +maybe-mostlyclean-guile: mostlyclean-guile mostlyclean-guile: @[ -f ./guile/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17785,15 +20771,19 @@ mostlyclean-guile: mostlyclean) \ || exit 1 +@endif guile .PHONY: maybe-clean-guile clean-guile maybe-clean-guile: +@if guile +maybe-clean-guile: clean-guile clean-guile: @[ -f ./guile/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17806,15 +20796,19 @@ clean-guile: clean) \ || exit 1 +@endif guile .PHONY: maybe-distclean-guile distclean-guile maybe-distclean-guile: +@if guile +maybe-distclean-guile: distclean-guile distclean-guile: @[ -f ./guile/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17827,15 +20821,19 @@ distclean-guile: distclean) \ || exit 1 +@endif guile .PHONY: maybe-maintainer-clean-guile maintainer-clean-guile maybe-maintainer-clean-guile: +@if guile +maybe-maintainer-clean-guile: maintainer-clean-guile maintainer-clean-guile: @[ -f ./guile/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17848,30 +20846,19 @@ maintainer-clean-guile: maintainer-clean) \ || exit 1 +@endif guile .PHONY: configure-tk maybe-configure-tk maybe-configure-tk: +@if tk +maybe-configure-tk: configure-tk configure-tk: @test ! -f tk/Makefile || exit 0; \ [ -d tk ] || mkdir tk; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in tk; \ cd tk || exit 1; \ case $(srcdir) in \ @@ -17888,39 +20875,54 @@ configure-tk: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif tk .PHONY: all-tk maybe-all-tk maybe-all-tk: +@if tk +maybe-all-tk: all-tk all-tk: configure-tk @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd tk && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) all) +@endif tk .PHONY: check-tk maybe-check-tk maybe-check-tk: +@if tk +maybe-check-tk: check-tk check-tk: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd tk && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) check) +@endif tk .PHONY: install-tk maybe-install-tk maybe-install-tk: +@if tk +maybe-install-tk: install-tk install-tk: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd tk && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) install) +@endif tk # Other targets (info, dvi, etc.) .PHONY: maybe-info-tk info-tk maybe-info-tk: +@if tk +maybe-info-tk: info-tk info-tk: \ configure-tk @@ -17928,6 +20930,7 @@ info-tk: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17940,9 +20943,12 @@ info-tk: \ info) \ || exit 1 +@endif tk .PHONY: maybe-dvi-tk dvi-tk maybe-dvi-tk: +@if tk +maybe-dvi-tk: dvi-tk dvi-tk: \ configure-tk @@ -17950,6 +20956,7 @@ dvi-tk: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17962,9 +20969,12 @@ dvi-tk: \ dvi) \ || exit 1 +@endif tk .PHONY: maybe-TAGS-tk TAGS-tk maybe-TAGS-tk: +@if tk +maybe-TAGS-tk: TAGS-tk TAGS-tk: \ configure-tk @@ -17972,6 +20982,7 @@ TAGS-tk: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -17984,9 +20995,12 @@ TAGS-tk: \ TAGS) \ || exit 1 +@endif tk .PHONY: maybe-install-info-tk install-info-tk maybe-install-info-tk: +@if tk +maybe-install-info-tk: install-info-tk install-info-tk: \ configure-tk \ @@ -17995,6 +21009,7 @@ install-info-tk: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -18007,9 +21022,12 @@ install-info-tk: \ install-info) \ || exit 1 +@endif tk .PHONY: maybe-installcheck-tk installcheck-tk maybe-installcheck-tk: +@if tk +maybe-installcheck-tk: installcheck-tk installcheck-tk: \ configure-tk @@ -18017,6 +21035,7 @@ installcheck-tk: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -18029,15 +21048,19 @@ installcheck-tk: \ installcheck) \ || exit 1 +@endif tk .PHONY: maybe-mostlyclean-tk mostlyclean-tk maybe-mostlyclean-tk: +@if tk +maybe-mostlyclean-tk: mostlyclean-tk mostlyclean-tk: @[ -f ./tk/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -18050,15 +21073,19 @@ mostlyclean-tk: mostlyclean) \ || exit 1 +@endif tk .PHONY: maybe-clean-tk clean-tk maybe-clean-tk: +@if tk +maybe-clean-tk: clean-tk clean-tk: @[ -f ./tk/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -18071,15 +21098,19 @@ clean-tk: clean) \ || exit 1 +@endif tk .PHONY: maybe-distclean-tk distclean-tk maybe-distclean-tk: +@if tk +maybe-distclean-tk: distclean-tk distclean-tk: @[ -f ./tk/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -18092,15 +21123,19 @@ distclean-tk: distclean) \ || exit 1 +@endif tk .PHONY: maybe-maintainer-clean-tk maintainer-clean-tk maybe-maintainer-clean-tk: +@if tk +maybe-maintainer-clean-tk: maintainer-clean-tk maintainer-clean-tk: @[ -f ./tk/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -18113,30 +21148,19 @@ maintainer-clean-tk: maintainer-clean) \ || exit 1 +@endif tk .PHONY: configure-tix maybe-configure-tix maybe-configure-tix: +@if tix +maybe-configure-tix: configure-tix configure-tix: @test ! -f tix/Makefile || exit 0; \ [ -d tix ] || mkdir tix; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in tix; \ cd tix || exit 1; \ case $(srcdir) in \ @@ -18153,39 +21177,54 @@ configure-tix: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif tix .PHONY: all-tix maybe-all-tix maybe-all-tix: +@if tix +maybe-all-tix: all-tix all-tix: configure-tix @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd tix && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) all) +@endif tix .PHONY: check-tix maybe-check-tix maybe-check-tix: +@if tix +maybe-check-tix: check-tix check-tix: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd tix && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) check) +@endif tix .PHONY: install-tix maybe-install-tix maybe-install-tix: +@if tix +maybe-install-tix: install-tix install-tix: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd tix && $(MAKE) $(FLAGS_TO_PASS) $(X11_FLAGS_TO_PASS) install) +@endif tix # Other targets (info, dvi, etc.) .PHONY: maybe-info-tix info-tix maybe-info-tix: +@if tix +maybe-info-tix: info-tix info-tix: \ configure-tix @@ -18193,6 +21232,7 @@ info-tix: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -18205,9 +21245,12 @@ info-tix: \ info) \ || exit 1 +@endif tix .PHONY: maybe-dvi-tix dvi-tix maybe-dvi-tix: +@if tix +maybe-dvi-tix: dvi-tix dvi-tix: \ configure-tix @@ -18215,6 +21258,7 @@ dvi-tix: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -18227,9 +21271,12 @@ dvi-tix: \ dvi) \ || exit 1 +@endif tix .PHONY: maybe-TAGS-tix TAGS-tix maybe-TAGS-tix: +@if tix +maybe-TAGS-tix: TAGS-tix TAGS-tix: \ configure-tix @@ -18237,6 +21284,7 @@ TAGS-tix: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -18249,9 +21297,12 @@ TAGS-tix: \ TAGS) \ || exit 1 +@endif tix .PHONY: maybe-install-info-tix install-info-tix maybe-install-info-tix: +@if tix +maybe-install-info-tix: install-info-tix install-info-tix: \ configure-tix \ @@ -18260,6 +21311,7 @@ install-info-tix: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -18272,9 +21324,12 @@ install-info-tix: \ install-info) \ || exit 1 +@endif tix .PHONY: maybe-installcheck-tix installcheck-tix maybe-installcheck-tix: +@if tix +maybe-installcheck-tix: installcheck-tix installcheck-tix: \ configure-tix @@ -18282,6 +21337,7 @@ installcheck-tix: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -18294,15 +21350,19 @@ installcheck-tix: \ installcheck) \ || exit 1 +@endif tix .PHONY: maybe-mostlyclean-tix mostlyclean-tix maybe-mostlyclean-tix: +@if tix +maybe-mostlyclean-tix: mostlyclean-tix mostlyclean-tix: @[ -f ./tix/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -18315,15 +21375,19 @@ mostlyclean-tix: mostlyclean) \ || exit 1 +@endif tix .PHONY: maybe-clean-tix clean-tix maybe-clean-tix: +@if tix +maybe-clean-tix: clean-tix clean-tix: @[ -f ./tix/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -18336,15 +21400,19 @@ clean-tix: clean) \ || exit 1 +@endif tix .PHONY: maybe-distclean-tix distclean-tix maybe-distclean-tix: +@if tix +maybe-distclean-tix: distclean-tix distclean-tix: @[ -f ./tix/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -18357,15 +21425,19 @@ distclean-tix: distclean) \ || exit 1 +@endif tix .PHONY: maybe-maintainer-clean-tix maintainer-clean-tix maybe-maintainer-clean-tix: +@if tix +maybe-maintainer-clean-tix: maintainer-clean-tix maintainer-clean-tix: @[ -f ./tix/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -18378,30 +21450,19 @@ maintainer-clean-tix: maintainer-clean) \ || exit 1 +@endif tix .PHONY: configure-libtermcap maybe-configure-libtermcap maybe-configure-libtermcap: +@if libtermcap +maybe-configure-libtermcap: configure-libtermcap configure-libtermcap: @test ! -f libtermcap/Makefile || exit 0; \ [ -d libtermcap ] || mkdir libtermcap; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in libtermcap; \ cd libtermcap || exit 1; \ case $(srcdir) in \ @@ -18418,35 +21479,49 @@ configure-libtermcap: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif libtermcap .PHONY: all-libtermcap maybe-all-libtermcap maybe-all-libtermcap: +@if libtermcap +maybe-all-libtermcap: all-libtermcap all-libtermcap: configure-libtermcap @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd libtermcap && $(MAKE) $(FLAGS_TO_PASS) all) +@endif libtermcap .PHONY: check-libtermcap maybe-check-libtermcap maybe-check-libtermcap: +@if libtermcap +maybe-check-libtermcap: check-libtermcap check-libtermcap: +@endif libtermcap .PHONY: install-libtermcap maybe-install-libtermcap maybe-install-libtermcap: +@if libtermcap +maybe-install-libtermcap: install-libtermcap install-libtermcap: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd libtermcap && $(MAKE) $(FLAGS_TO_PASS) install) +@endif libtermcap # Other targets (info, dvi, etc.) .PHONY: maybe-info-libtermcap info-libtermcap maybe-info-libtermcap: +@if libtermcap +maybe-info-libtermcap: info-libtermcap info-libtermcap: \ configure-libtermcap @@ -18454,6 +21529,7 @@ info-libtermcap: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -18466,9 +21542,12 @@ info-libtermcap: \ info) \ || exit 1 +@endif libtermcap .PHONY: maybe-dvi-libtermcap dvi-libtermcap maybe-dvi-libtermcap: +@if libtermcap +maybe-dvi-libtermcap: dvi-libtermcap dvi-libtermcap: \ configure-libtermcap @@ -18476,6 +21555,7 @@ dvi-libtermcap: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -18488,9 +21568,12 @@ dvi-libtermcap: \ dvi) \ || exit 1 +@endif libtermcap .PHONY: maybe-TAGS-libtermcap TAGS-libtermcap maybe-TAGS-libtermcap: +@if libtermcap +maybe-TAGS-libtermcap: TAGS-libtermcap TAGS-libtermcap: \ configure-libtermcap @@ -18498,6 +21581,7 @@ TAGS-libtermcap: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -18510,9 +21594,12 @@ TAGS-libtermcap: \ TAGS) \ || exit 1 +@endif libtermcap .PHONY: maybe-install-info-libtermcap install-info-libtermcap maybe-install-info-libtermcap: +@if libtermcap +maybe-install-info-libtermcap: install-info-libtermcap install-info-libtermcap: \ configure-libtermcap \ @@ -18521,6 +21608,7 @@ install-info-libtermcap: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -18533,9 +21621,12 @@ install-info-libtermcap: \ install-info) \ || exit 1 +@endif libtermcap .PHONY: maybe-installcheck-libtermcap installcheck-libtermcap maybe-installcheck-libtermcap: +@if libtermcap +maybe-installcheck-libtermcap: installcheck-libtermcap installcheck-libtermcap: \ configure-libtermcap @@ -18543,6 +21634,7 @@ installcheck-libtermcap: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -18555,58 +21647,59 @@ installcheck-libtermcap: \ installcheck) \ || exit 1 +@endif libtermcap .PHONY: maybe-mostlyclean-libtermcap mostlyclean-libtermcap maybe-mostlyclean-libtermcap: +@if libtermcap +maybe-mostlyclean-libtermcap: mostlyclean-libtermcap # libtermcap doesn't support mostlyclean. mostlyclean-libtermcap: +@endif libtermcap .PHONY: maybe-clean-libtermcap clean-libtermcap maybe-clean-libtermcap: +@if libtermcap +maybe-clean-libtermcap: clean-libtermcap # libtermcap doesn't support clean. clean-libtermcap: +@endif libtermcap .PHONY: maybe-distclean-libtermcap distclean-libtermcap maybe-distclean-libtermcap: +@if libtermcap +maybe-distclean-libtermcap: distclean-libtermcap # libtermcap doesn't support distclean. distclean-libtermcap: +@endif libtermcap .PHONY: maybe-maintainer-clean-libtermcap maintainer-clean-libtermcap maybe-maintainer-clean-libtermcap: +@if libtermcap +maybe-maintainer-clean-libtermcap: maintainer-clean-libtermcap # libtermcap doesn't support maintainer-clean. maintainer-clean-libtermcap: +@endif libtermcap .PHONY: configure-utils maybe-configure-utils maybe-configure-utils: +@if utils +maybe-configure-utils: configure-utils configure-utils: @test ! -f utils/Makefile || exit 0; \ [ -d utils ] || mkdir utils; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in utils; \ cd utils || exit 1; \ case $(srcdir) in \ @@ -18623,35 +21716,49 @@ configure-utils: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif utils .PHONY: all-utils maybe-all-utils maybe-all-utils: +@if utils +maybe-all-utils: all-utils all-utils: configure-utils @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd utils && $(MAKE) $(FLAGS_TO_PASS) all) +@endif utils .PHONY: check-utils maybe-check-utils maybe-check-utils: +@if utils +maybe-check-utils: check-utils check-utils: +@endif utils .PHONY: install-utils maybe-install-utils maybe-install-utils: +@if utils +maybe-install-utils: install-utils install-utils: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd utils && $(MAKE) $(FLAGS_TO_PASS) install) +@endif utils # Other targets (info, dvi, etc.) .PHONY: maybe-info-utils info-utils maybe-info-utils: +@if utils +maybe-info-utils: info-utils info-utils: \ configure-utils @@ -18659,6 +21766,7 @@ info-utils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -18671,9 +21779,12 @@ info-utils: \ info) \ || exit 1 +@endif utils .PHONY: maybe-dvi-utils dvi-utils maybe-dvi-utils: +@if utils +maybe-dvi-utils: dvi-utils dvi-utils: \ configure-utils @@ -18681,6 +21792,7 @@ dvi-utils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -18693,9 +21805,12 @@ dvi-utils: \ dvi) \ || exit 1 +@endif utils .PHONY: maybe-TAGS-utils TAGS-utils maybe-TAGS-utils: +@if utils +maybe-TAGS-utils: TAGS-utils TAGS-utils: \ configure-utils @@ -18703,6 +21818,7 @@ TAGS-utils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -18715,9 +21831,12 @@ TAGS-utils: \ TAGS) \ || exit 1 +@endif utils .PHONY: maybe-install-info-utils install-info-utils maybe-install-info-utils: +@if utils +maybe-install-info-utils: install-info-utils install-info-utils: \ configure-utils \ @@ -18726,6 +21845,7 @@ install-info-utils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -18738,9 +21858,12 @@ install-info-utils: \ install-info) \ || exit 1 +@endif utils .PHONY: maybe-installcheck-utils installcheck-utils maybe-installcheck-utils: +@if utils +maybe-installcheck-utils: installcheck-utils installcheck-utils: \ configure-utils @@ -18748,6 +21871,7 @@ installcheck-utils: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -18760,15 +21884,19 @@ installcheck-utils: \ installcheck) \ || exit 1 +@endif utils .PHONY: maybe-mostlyclean-utils mostlyclean-utils maybe-mostlyclean-utils: +@if utils +maybe-mostlyclean-utils: mostlyclean-utils mostlyclean-utils: @[ -f ./utils/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -18781,15 +21909,19 @@ mostlyclean-utils: mostlyclean) \ || exit 1 +@endif utils .PHONY: maybe-clean-utils clean-utils maybe-clean-utils: +@if utils +maybe-clean-utils: clean-utils clean-utils: @[ -f ./utils/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -18802,15 +21934,19 @@ clean-utils: clean) \ || exit 1 +@endif utils .PHONY: maybe-distclean-utils distclean-utils maybe-distclean-utils: +@if utils +maybe-distclean-utils: distclean-utils distclean-utils: @[ -f ./utils/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -18823,20 +21959,344 @@ distclean-utils: distclean) \ || exit 1 +@endif utils .PHONY: maybe-maintainer-clean-utils maintainer-clean-utils maybe-maintainer-clean-utils: +@if utils +maybe-maintainer-clean-utils: maintainer-clean-utils maintainer-clean-utils: @[ -f ./utils/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - echo "Doing maintainer-clean in utils" ; \ - (cd utils && \ + echo "Doing maintainer-clean in utils" ; \ + (cd utils && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ + maintainer-clean) \ + || exit 1 + +@endif utils + + + +# --------------------------------------- +# Modules which run on the target machine +# --------------------------------------- + +.PHONY: configure-target-libstdc++-v3 maybe-configure-target-libstdc++-v3 +maybe-configure-target-libstdc++-v3: +@if target-libstdc++-v3 +maybe-configure-target-libstdc++-v3: configure-target-libstdc++-v3 + +# There's only one multilib.out. Cleverer subdirs shouldn't need it copied. +$(TARGET_SUBDIR)/libstdc++-v3/multilib.out: multilib.out + $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libstdc++-v3 ; \ + rm -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile || : ; \ + cp multilib.out $(TARGET_SUBDIR)/libstdc++-v3/multilib.out + +configure-target-libstdc++-v3: $(TARGET_SUBDIR)/libstdc++-v3/multilib.out + @test ! -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile || exit 0; \ + $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libstdc++-v3 ; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(RAW_CXX_TARGET_EXPORTS) \ + echo Configuring in $(TARGET_SUBDIR)/libstdc++-v3; \ + cd "$(TARGET_SUBDIR)/libstdc++-v3" || exit 1; \ + case $(srcdir) in \ + /* | [A-Za-z]:[\\/]*) \ + topdir=$(srcdir) ;; \ + *) \ + case "$(TARGET_SUBDIR)" in \ + .) topdir="../$(srcdir)" ;; \ + *) topdir="../../$(srcdir)" ;; \ + esac ;; \ + esac; \ + srcdiroption="--srcdir=$${topdir}/libstdc++-v3"; \ + libsrcdir="$$s/libstdc++-v3"; \ + rm -f no-such-file || : ; \ + CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \ + $(TARGET_CONFIGARGS) $${srcdiroption} \ + --with-target-subdir="$(TARGET_SUBDIR)" \ + || exit 1 +@endif target-libstdc++-v3 + +.PHONY: all-target-libstdc++-v3 maybe-all-target-libstdc++-v3 +maybe-all-target-libstdc++-v3: +@if target-libstdc++-v3 +maybe-all-target-libstdc++-v3: all-target-libstdc++-v3 +all-target-libstdc++-v3: configure-target-libstdc++-v3 + @r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(RAW_CXX_TARGET_EXPORTS) \ + (cd $(TARGET_SUBDIR)/libstdc++-v3 && \ + $(MAKE) $(TARGET_FLAGS_TO_PASS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' all) +@endif target-libstdc++-v3 + +.PHONY: check-target-libstdc++-v3 maybe-check-target-libstdc++-v3 +maybe-check-target-libstdc++-v3: +@if target-libstdc++-v3 +maybe-check-target-libstdc++-v3: check-target-libstdc++-v3 + +check-target-libstdc++-v3: + @r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(RAW_CXX_TARGET_EXPORTS) \ + (cd $(TARGET_SUBDIR)/libstdc++-v3 && \ + $(MAKE) $(TARGET_FLAGS_TO_PASS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' check) + +@endif target-libstdc++-v3 + +.PHONY: install-target-libstdc++-v3 maybe-install-target-libstdc++-v3 +maybe-install-target-libstdc++-v3: +@if target-libstdc++-v3 +maybe-install-target-libstdc++-v3: install-target-libstdc++-v3 + +install-target-libstdc++-v3: installdirs + @r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(RAW_CXX_TARGET_EXPORTS) \ + (cd $(TARGET_SUBDIR)/libstdc++-v3 && \ + $(MAKE) $(TARGET_FLAGS_TO_PASS) install) + +@endif target-libstdc++-v3 + +# Other targets (info, dvi, etc.) + +.PHONY: maybe-info-target-libstdc++-v3 info-target-libstdc++-v3 +maybe-info-target-libstdc++-v3: +@if target-libstdc++-v3 +maybe-info-target-libstdc++-v3: info-target-libstdc++-v3 + +info-target-libstdc++-v3: \ + configure-target-libstdc++-v3 + @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(RAW_CXX_TARGET_EXPORTS) \ + echo "Doing info in $(TARGET_SUBDIR)/libstdc++-v3" ; \ + for flag in $(EXTRA_TARGET_FLAGS); do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + (cd $(TARGET_SUBDIR)/libstdc++-v3 && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ + info) \ + || exit 1 + +@endif target-libstdc++-v3 + +.PHONY: maybe-dvi-target-libstdc++-v3 dvi-target-libstdc++-v3 +maybe-dvi-target-libstdc++-v3: +@if target-libstdc++-v3 +maybe-dvi-target-libstdc++-v3: dvi-target-libstdc++-v3 + +dvi-target-libstdc++-v3: \ + configure-target-libstdc++-v3 + @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(RAW_CXX_TARGET_EXPORTS) \ + echo "Doing dvi in $(TARGET_SUBDIR)/libstdc++-v3" ; \ + for flag in $(EXTRA_TARGET_FLAGS); do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + (cd $(TARGET_SUBDIR)/libstdc++-v3 && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ + dvi) \ + || exit 1 + +@endif target-libstdc++-v3 + +.PHONY: maybe-TAGS-target-libstdc++-v3 TAGS-target-libstdc++-v3 +maybe-TAGS-target-libstdc++-v3: +@if target-libstdc++-v3 +maybe-TAGS-target-libstdc++-v3: TAGS-target-libstdc++-v3 + +TAGS-target-libstdc++-v3: \ + configure-target-libstdc++-v3 + @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(RAW_CXX_TARGET_EXPORTS) \ + echo "Doing TAGS in $(TARGET_SUBDIR)/libstdc++-v3" ; \ + for flag in $(EXTRA_TARGET_FLAGS); do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + (cd $(TARGET_SUBDIR)/libstdc++-v3 && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ + TAGS) \ + || exit 1 + +@endif target-libstdc++-v3 + +.PHONY: maybe-install-info-target-libstdc++-v3 install-info-target-libstdc++-v3 +maybe-install-info-target-libstdc++-v3: +@if target-libstdc++-v3 +maybe-install-info-target-libstdc++-v3: install-info-target-libstdc++-v3 + +install-info-target-libstdc++-v3: \ + configure-target-libstdc++-v3 \ + info-target-libstdc++-v3 + @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(RAW_CXX_TARGET_EXPORTS) \ + echo "Doing install-info in $(TARGET_SUBDIR)/libstdc++-v3" ; \ + for flag in $(EXTRA_TARGET_FLAGS); do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + (cd $(TARGET_SUBDIR)/libstdc++-v3 && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ + install-info) \ + || exit 1 + +@endif target-libstdc++-v3 + +.PHONY: maybe-installcheck-target-libstdc++-v3 installcheck-target-libstdc++-v3 +maybe-installcheck-target-libstdc++-v3: +@if target-libstdc++-v3 +maybe-installcheck-target-libstdc++-v3: installcheck-target-libstdc++-v3 + +installcheck-target-libstdc++-v3: \ + configure-target-libstdc++-v3 + @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(RAW_CXX_TARGET_EXPORTS) \ + echo "Doing installcheck in $(TARGET_SUBDIR)/libstdc++-v3" ; \ + for flag in $(EXTRA_TARGET_FLAGS); do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + (cd $(TARGET_SUBDIR)/libstdc++-v3 && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ + installcheck) \ + || exit 1 + +@endif target-libstdc++-v3 + +.PHONY: maybe-mostlyclean-target-libstdc++-v3 mostlyclean-target-libstdc++-v3 +maybe-mostlyclean-target-libstdc++-v3: +@if target-libstdc++-v3 +maybe-mostlyclean-target-libstdc++-v3: mostlyclean-target-libstdc++-v3 + +mostlyclean-target-libstdc++-v3: + @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(RAW_CXX_TARGET_EXPORTS) \ + echo "Doing mostlyclean in $(TARGET_SUBDIR)/libstdc++-v3" ; \ + for flag in $(EXTRA_TARGET_FLAGS); do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + (cd $(TARGET_SUBDIR)/libstdc++-v3 && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ + mostlyclean) \ + || exit 1 + +@endif target-libstdc++-v3 + +.PHONY: maybe-clean-target-libstdc++-v3 clean-target-libstdc++-v3 +maybe-clean-target-libstdc++-v3: +@if target-libstdc++-v3 +maybe-clean-target-libstdc++-v3: clean-target-libstdc++-v3 + +clean-target-libstdc++-v3: + @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(RAW_CXX_TARGET_EXPORTS) \ + echo "Doing clean in $(TARGET_SUBDIR)/libstdc++-v3" ; \ + for flag in $(EXTRA_TARGET_FLAGS); do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + (cd $(TARGET_SUBDIR)/libstdc++-v3 && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ + clean) \ + || exit 1 + +@endif target-libstdc++-v3 + +.PHONY: maybe-distclean-target-libstdc++-v3 distclean-target-libstdc++-v3 +maybe-distclean-target-libstdc++-v3: +@if target-libstdc++-v3 +maybe-distclean-target-libstdc++-v3: distclean-target-libstdc++-v3 + +distclean-target-libstdc++-v3: + @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(RAW_CXX_TARGET_EXPORTS) \ + echo "Doing distclean in $(TARGET_SUBDIR)/libstdc++-v3" ; \ + for flag in $(EXTRA_TARGET_FLAGS); do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + (cd $(TARGET_SUBDIR)/libstdc++-v3 && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ + distclean) \ + || exit 1 + +@endif target-libstdc++-v3 + +.PHONY: maybe-maintainer-clean-target-libstdc++-v3 maintainer-clean-target-libstdc++-v3 +maybe-maintainer-clean-target-libstdc++-v3: +@if target-libstdc++-v3 +maybe-maintainer-clean-target-libstdc++-v3: maintainer-clean-target-libstdc++-v3 + +maintainer-clean-target-libstdc++-v3: + @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(RAW_CXX_TARGET_EXPORTS) \ + echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libstdc++-v3" ; \ + for flag in $(EXTRA_TARGET_FLAGS); do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + (cd $(TARGET_SUBDIR)/libstdc++-v3 && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ "RANLIB=$${RANLIB}" \ @@ -18844,46 +22304,29 @@ maintainer-clean-utils: maintainer-clean) \ || exit 1 +@endif target-libstdc++-v3 - -# --------------------------------------- -# Modules which run on the target machine -# --------------------------------------- - -.PHONY: configure-target-libstdc++-v3 maybe-configure-target-libstdc++-v3 -maybe-configure-target-libstdc++-v3: +.PHONY: configure-target-libmudflap maybe-configure-target-libmudflap +maybe-configure-target-libmudflap: +@if target-libmudflap +maybe-configure-target-libmudflap: configure-target-libmudflap # There's only one multilib.out. Cleverer subdirs shouldn't need it copied. -$(TARGET_SUBDIR)/libstdc++-v3/multilib.out: multilib.out - $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libstdc++-v3 ; \ - rm -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile || : ; \ - cp multilib.out $(TARGET_SUBDIR)/libstdc++-v3/multilib.out +$(TARGET_SUBDIR)/libmudflap/multilib.out: multilib.out + $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libmudflap ; \ + rm -f $(TARGET_SUBDIR)/libmudflap/Makefile || : ; \ + cp multilib.out $(TARGET_SUBDIR)/libmudflap/multilib.out -configure-target-libstdc++-v3: $(TARGET_SUBDIR)/libstdc++-v3/multilib.out - @test ! -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile || exit 0; \ - $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libstdc++-v3 ; \ +configure-target-libmudflap: $(TARGET_SUBDIR)/libmudflap/multilib.out + @test ! -f $(TARGET_SUBDIR)/libmudflap/Makefile || exit 0; \ + $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libmudflap ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - AR="$(AR_FOR_TARGET)"; export AR; \ - AS="$(AS_FOR_TARGET)"; export AS; \ - CC="$(CC_FOR_TARGET)"; export CC; \ - CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \ - CXX_FOR_TARGET="$(RAW_CXX_FOR_TARGET)"; export CXX_FOR_TARGET; \ - CXX="$(RAW_CXX_FOR_TARGET)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \ - GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \ - DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \ - LD="$(LD_FOR_TARGET)"; export LD; \ - LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \ - NM="$(NM_FOR_TARGET)"; export NM; \ - RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \ - WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \ - echo Configuring in $(TARGET_SUBDIR)/libstdc++-v3; \ - cd "$(TARGET_SUBDIR)/libstdc++-v3" || exit 1; \ + $(NORMAL_TARGET_EXPORTS) \ + echo Configuring in $(TARGET_SUBDIR)/libmudflap; \ + cd "$(TARGET_SUBDIR)/libmudflap" || exit 1; \ case $(srcdir) in \ /* | [A-Za-z]:[\\/]*) \ topdir=$(srcdir) ;; \ @@ -18893,61 +22336,77 @@ configure-target-libstdc++-v3: $(TARGET_ *) topdir="../../$(srcdir)" ;; \ esac ;; \ esac; \ - srcdiroption="--srcdir=$${topdir}/libstdc++-v3"; \ - libsrcdir="$$s/libstdc++-v3"; \ + srcdiroption="--srcdir=$${topdir}/libmudflap"; \ + libsrcdir="$$s/libmudflap"; \ rm -f no-such-file || : ; \ CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \ $(TARGET_CONFIGARGS) $${srcdiroption} \ --with-target-subdir="$(TARGET_SUBDIR)" \ || exit 1 +@endif target-libmudflap -.PHONY: all-target-libstdc++-v3 maybe-all-target-libstdc++-v3 -maybe-all-target-libstdc++-v3: -all-target-libstdc++-v3: configure-target-libstdc++-v3 +.PHONY: all-target-libmudflap maybe-all-target-libmudflap +maybe-all-target-libmudflap: +@if target-libmudflap +maybe-all-target-libmudflap: all-target-libmudflap +all-target-libmudflap: configure-target-libmudflap @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - (cd $(TARGET_SUBDIR)/libstdc++-v3 && \ - $(MAKE) $(TARGET_FLAGS_TO_PASS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' all) + $(NORMAL_TARGET_EXPORTS) \ + (cd $(TARGET_SUBDIR)/libmudflap && \ + $(MAKE) $(TARGET_FLAGS_TO_PASS) all) +@endif target-libmudflap -.PHONY: check-target-libstdc++-v3 maybe-check-target-libstdc++-v3 -maybe-check-target-libstdc++-v3: +.PHONY: check-target-libmudflap maybe-check-target-libmudflap +maybe-check-target-libmudflap: +@if target-libmudflap +maybe-check-target-libmudflap: check-target-libmudflap -check-target-libstdc++-v3: +check-target-libmudflap: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - (cd $(TARGET_SUBDIR)/libstdc++-v3 && \ - $(MAKE) $(TARGET_FLAGS_TO_PASS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' check) + $(NORMAL_TARGET_EXPORTS) \ + (cd $(TARGET_SUBDIR)/libmudflap && \ + $(MAKE) $(TARGET_FLAGS_TO_PASS) check) +@endif target-libmudflap -.PHONY: install-target-libstdc++-v3 maybe-install-target-libstdc++-v3 -maybe-install-target-libstdc++-v3: +.PHONY: install-target-libmudflap maybe-install-target-libmudflap +maybe-install-target-libmudflap: +@if target-libmudflap +maybe-install-target-libmudflap: install-target-libmudflap -install-target-libstdc++-v3: installdirs +install-target-libmudflap: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - (cd $(TARGET_SUBDIR)/libstdc++-v3 && \ + $(NORMAL_TARGET_EXPORTS) \ + (cd $(TARGET_SUBDIR)/libmudflap && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) install) +@endif target-libmudflap # Other targets (info, dvi, etc.) -.PHONY: maybe-info-target-libstdc++-v3 info-target-libstdc++-v3 -maybe-info-target-libstdc++-v3: +.PHONY: maybe-info-target-libmudflap info-target-libmudflap +maybe-info-target-libmudflap: +@if target-libmudflap +maybe-info-target-libmudflap: info-target-libmudflap -info-target-libstdc++-v3: \ - configure-target-libstdc++-v3 - @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \ +info-target-libmudflap: \ + configure-target-libmudflap + @[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - echo "Doing info in $(TARGET_SUBDIR)/libstdc++-v3" ; \ + $(NORMAL_TARGET_EXPORTS) \ + echo "Doing info in $(TARGET_SUBDIR)/libmudflap" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - (cd $(TARGET_SUBDIR)/libstdc++-v3 && \ + (cd $(TARGET_SUBDIR)/libmudflap && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ "RANLIB=$${RANLIB}" \ @@ -18955,21 +22414,25 @@ info-target-libstdc++-v3: \ info) \ || exit 1 +@endif target-libmudflap -.PHONY: maybe-dvi-target-libstdc++-v3 dvi-target-libstdc++-v3 -maybe-dvi-target-libstdc++-v3: +.PHONY: maybe-dvi-target-libmudflap dvi-target-libmudflap +maybe-dvi-target-libmudflap: +@if target-libmudflap +maybe-dvi-target-libmudflap: dvi-target-libmudflap -dvi-target-libstdc++-v3: \ - configure-target-libstdc++-v3 - @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \ +dvi-target-libmudflap: \ + configure-target-libmudflap + @[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - echo "Doing dvi in $(TARGET_SUBDIR)/libstdc++-v3" ; \ + $(NORMAL_TARGET_EXPORTS) \ + echo "Doing dvi in $(TARGET_SUBDIR)/libmudflap" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - (cd $(TARGET_SUBDIR)/libstdc++-v3 && \ + (cd $(TARGET_SUBDIR)/libmudflap && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ "RANLIB=$${RANLIB}" \ @@ -18977,21 +22440,25 @@ dvi-target-libstdc++-v3: \ dvi) \ || exit 1 +@endif target-libmudflap -.PHONY: maybe-TAGS-target-libstdc++-v3 TAGS-target-libstdc++-v3 -maybe-TAGS-target-libstdc++-v3: +.PHONY: maybe-TAGS-target-libmudflap TAGS-target-libmudflap +maybe-TAGS-target-libmudflap: +@if target-libmudflap +maybe-TAGS-target-libmudflap: TAGS-target-libmudflap -TAGS-target-libstdc++-v3: \ - configure-target-libstdc++-v3 - @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \ +TAGS-target-libmudflap: \ + configure-target-libmudflap + @[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - echo "Doing TAGS in $(TARGET_SUBDIR)/libstdc++-v3" ; \ + $(NORMAL_TARGET_EXPORTS) \ + echo "Doing TAGS in $(TARGET_SUBDIR)/libmudflap" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - (cd $(TARGET_SUBDIR)/libstdc++-v3 && \ + (cd $(TARGET_SUBDIR)/libmudflap && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ "RANLIB=$${RANLIB}" \ @@ -18999,22 +22466,26 @@ TAGS-target-libstdc++-v3: \ TAGS) \ || exit 1 +@endif target-libmudflap -.PHONY: maybe-install-info-target-libstdc++-v3 install-info-target-libstdc++-v3 -maybe-install-info-target-libstdc++-v3: +.PHONY: maybe-install-info-target-libmudflap install-info-target-libmudflap +maybe-install-info-target-libmudflap: +@if target-libmudflap +maybe-install-info-target-libmudflap: install-info-target-libmudflap -install-info-target-libstdc++-v3: \ - configure-target-libstdc++-v3 \ - info-target-libstdc++-v3 - @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \ +install-info-target-libmudflap: \ + configure-target-libmudflap \ + info-target-libmudflap + @[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - echo "Doing install-info in $(TARGET_SUBDIR)/libstdc++-v3" ; \ + $(NORMAL_TARGET_EXPORTS) \ + echo "Doing install-info in $(TARGET_SUBDIR)/libmudflap" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - (cd $(TARGET_SUBDIR)/libstdc++-v3 && \ + (cd $(TARGET_SUBDIR)/libmudflap && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ "RANLIB=$${RANLIB}" \ @@ -19022,21 +22493,25 @@ install-info-target-libstdc++-v3: \ install-info) \ || exit 1 +@endif target-libmudflap -.PHONY: maybe-installcheck-target-libstdc++-v3 installcheck-target-libstdc++-v3 -maybe-installcheck-target-libstdc++-v3: +.PHONY: maybe-installcheck-target-libmudflap installcheck-target-libmudflap +maybe-installcheck-target-libmudflap: +@if target-libmudflap +maybe-installcheck-target-libmudflap: installcheck-target-libmudflap -installcheck-target-libstdc++-v3: \ - configure-target-libstdc++-v3 - @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \ +installcheck-target-libmudflap: \ + configure-target-libmudflap + @[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - echo "Doing installcheck in $(TARGET_SUBDIR)/libstdc++-v3" ; \ + $(NORMAL_TARGET_EXPORTS) \ + echo "Doing installcheck in $(TARGET_SUBDIR)/libmudflap" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - (cd $(TARGET_SUBDIR)/libstdc++-v3 && \ + (cd $(TARGET_SUBDIR)/libmudflap && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ "RANLIB=$${RANLIB}" \ @@ -19044,20 +22519,24 @@ installcheck-target-libstdc++-v3: \ installcheck) \ || exit 1 +@endif target-libmudflap -.PHONY: maybe-mostlyclean-target-libstdc++-v3 mostlyclean-target-libstdc++-v3 -maybe-mostlyclean-target-libstdc++-v3: +.PHONY: maybe-mostlyclean-target-libmudflap mostlyclean-target-libmudflap +maybe-mostlyclean-target-libmudflap: +@if target-libmudflap +maybe-mostlyclean-target-libmudflap: mostlyclean-target-libmudflap -mostlyclean-target-libstdc++-v3: - @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \ +mostlyclean-target-libmudflap: + @[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - echo "Doing mostlyclean in $(TARGET_SUBDIR)/libstdc++-v3" ; \ + $(NORMAL_TARGET_EXPORTS) \ + echo "Doing mostlyclean in $(TARGET_SUBDIR)/libmudflap" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - (cd $(TARGET_SUBDIR)/libstdc++-v3 && \ + (cd $(TARGET_SUBDIR)/libmudflap && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ "RANLIB=$${RANLIB}" \ @@ -19065,20 +22544,24 @@ mostlyclean-target-libstdc++-v3: mostlyclean) \ || exit 1 +@endif target-libmudflap -.PHONY: maybe-clean-target-libstdc++-v3 clean-target-libstdc++-v3 -maybe-clean-target-libstdc++-v3: +.PHONY: maybe-clean-target-libmudflap clean-target-libmudflap +maybe-clean-target-libmudflap: +@if target-libmudflap +maybe-clean-target-libmudflap: clean-target-libmudflap -clean-target-libstdc++-v3: - @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \ +clean-target-libmudflap: + @[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - echo "Doing clean in $(TARGET_SUBDIR)/libstdc++-v3" ; \ + $(NORMAL_TARGET_EXPORTS) \ + echo "Doing clean in $(TARGET_SUBDIR)/libmudflap" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - (cd $(TARGET_SUBDIR)/libstdc++-v3 && \ + (cd $(TARGET_SUBDIR)/libmudflap && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ "RANLIB=$${RANLIB}" \ @@ -19086,20 +22569,24 @@ clean-target-libstdc++-v3: clean) \ || exit 1 +@endif target-libmudflap -.PHONY: maybe-distclean-target-libstdc++-v3 distclean-target-libstdc++-v3 -maybe-distclean-target-libstdc++-v3: +.PHONY: maybe-distclean-target-libmudflap distclean-target-libmudflap +maybe-distclean-target-libmudflap: +@if target-libmudflap +maybe-distclean-target-libmudflap: distclean-target-libmudflap -distclean-target-libstdc++-v3: - @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \ +distclean-target-libmudflap: + @[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - echo "Doing distclean in $(TARGET_SUBDIR)/libstdc++-v3" ; \ + $(NORMAL_TARGET_EXPORTS) \ + echo "Doing distclean in $(TARGET_SUBDIR)/libmudflap" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - (cd $(TARGET_SUBDIR)/libstdc++-v3 && \ + (cd $(TARGET_SUBDIR)/libmudflap && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ "RANLIB=$${RANLIB}" \ @@ -19107,20 +22594,24 @@ distclean-target-libstdc++-v3: distclean) \ || exit 1 +@endif target-libmudflap -.PHONY: maybe-maintainer-clean-target-libstdc++-v3 maintainer-clean-target-libstdc++-v3 -maybe-maintainer-clean-target-libstdc++-v3: +.PHONY: maybe-maintainer-clean-target-libmudflap maintainer-clean-target-libmudflap +maybe-maintainer-clean-target-libmudflap: +@if target-libmudflap +maybe-maintainer-clean-target-libmudflap: maintainer-clean-target-libmudflap -maintainer-clean-target-libstdc++-v3: - @[ -f $(TARGET_SUBDIR)/libstdc++-v3/Makefile ] || exit 0 ; \ +maintainer-clean-target-libmudflap: + @[ -f $(TARGET_SUBDIR)/libmudflap/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libstdc++-v3" ; \ + $(NORMAL_TARGET_EXPORTS) \ + echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libmudflap" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - (cd $(TARGET_SUBDIR)/libstdc++-v3 && \ + (cd $(TARGET_SUBDIR)/libmudflap && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ "RANLIB=$${RANLIB}" \ @@ -19128,10 +22619,13 @@ maintainer-clean-target-libstdc++-v3: maintainer-clean) \ || exit 1 +@endif target-libmudflap .PHONY: configure-target-newlib maybe-configure-target-newlib maybe-configure-target-newlib: +@if target-newlib +maybe-configure-target-newlib: configure-target-newlib # There's only one multilib.out. Cleverer subdirs shouldn't need it copied. $(TARGET_SUBDIR)/newlib/multilib.out: multilib.out @@ -19145,21 +22639,7 @@ configure-target-newlib: $(TARGET_SUBDIR r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - AR="$(AR_FOR_TARGET)"; export AR; \ - AS="$(AS_FOR_TARGET)"; export AS; \ - CC="$(CC_FOR_TARGET)"; export CC; \ - CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \ - CXX="$(CXX_FOR_TARGET)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \ - GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \ - DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \ - LD="$(LD_FOR_TARGET)"; export LD; \ - LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \ - NM="$(NM_FOR_TARGET)"; export NM; \ - RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \ - WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \ + $(NORMAL_TARGET_EXPORTS) \ echo Configuring in $(TARGET_SUBDIR)/newlib; \ cd "$(TARGET_SUBDIR)/newlib" || exit 1; \ case $(srcdir) in \ @@ -19178,42 +22658,57 @@ configure-target-newlib: $(TARGET_SUBDIR $(TARGET_CONFIGARGS) $${srcdiroption} \ --with-target-subdir="$(TARGET_SUBDIR)" \ || exit 1 +@endif target-newlib .PHONY: all-target-newlib maybe-all-target-newlib maybe-all-target-newlib: +@if target-newlib +maybe-all-target-newlib: all-target-newlib all-target-newlib: configure-target-newlib @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/newlib && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) all) +@endif target-newlib .PHONY: check-target-newlib maybe-check-target-newlib maybe-check-target-newlib: +@if target-newlib +maybe-check-target-newlib: check-target-newlib check-target-newlib: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/newlib && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) check) +@endif target-newlib .PHONY: install-target-newlib maybe-install-target-newlib maybe-install-target-newlib: +@if target-newlib +maybe-install-target-newlib: install-target-newlib install-target-newlib: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/newlib && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) install) +@endif target-newlib # Other targets (info, dvi, etc.) .PHONY: maybe-info-target-newlib info-target-newlib maybe-info-target-newlib: +@if target-newlib +maybe-info-target-newlib: info-target-newlib info-target-newlib: \ configure-target-newlib @@ -19221,6 +22716,7 @@ info-target-newlib: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing info in $(TARGET_SUBDIR)/newlib" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -19233,9 +22729,12 @@ info-target-newlib: \ info) \ || exit 1 +@endif target-newlib .PHONY: maybe-dvi-target-newlib dvi-target-newlib maybe-dvi-target-newlib: +@if target-newlib +maybe-dvi-target-newlib: dvi-target-newlib dvi-target-newlib: \ configure-target-newlib @@ -19243,6 +22742,7 @@ dvi-target-newlib: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing dvi in $(TARGET_SUBDIR)/newlib" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -19255,9 +22755,12 @@ dvi-target-newlib: \ dvi) \ || exit 1 +@endif target-newlib .PHONY: maybe-TAGS-target-newlib TAGS-target-newlib maybe-TAGS-target-newlib: +@if target-newlib +maybe-TAGS-target-newlib: TAGS-target-newlib TAGS-target-newlib: \ configure-target-newlib @@ -19265,6 +22768,7 @@ TAGS-target-newlib: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing TAGS in $(TARGET_SUBDIR)/newlib" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -19277,9 +22781,12 @@ TAGS-target-newlib: \ TAGS) \ || exit 1 +@endif target-newlib .PHONY: maybe-install-info-target-newlib install-info-target-newlib maybe-install-info-target-newlib: +@if target-newlib +maybe-install-info-target-newlib: install-info-target-newlib install-info-target-newlib: \ configure-target-newlib \ @@ -19288,6 +22795,7 @@ install-info-target-newlib: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing install-info in $(TARGET_SUBDIR)/newlib" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -19300,9 +22808,12 @@ install-info-target-newlib: \ install-info) \ || exit 1 +@endif target-newlib .PHONY: maybe-installcheck-target-newlib installcheck-target-newlib maybe-installcheck-target-newlib: +@if target-newlib +maybe-installcheck-target-newlib: installcheck-target-newlib installcheck-target-newlib: \ configure-target-newlib @@ -19310,6 +22821,7 @@ installcheck-target-newlib: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing installcheck in $(TARGET_SUBDIR)/newlib" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -19322,15 +22834,19 @@ installcheck-target-newlib: \ installcheck) \ || exit 1 +@endif target-newlib .PHONY: maybe-mostlyclean-target-newlib mostlyclean-target-newlib maybe-mostlyclean-target-newlib: +@if target-newlib +maybe-mostlyclean-target-newlib: mostlyclean-target-newlib mostlyclean-target-newlib: @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing mostlyclean in $(TARGET_SUBDIR)/newlib" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -19343,15 +22859,19 @@ mostlyclean-target-newlib: mostlyclean) \ || exit 1 +@endif target-newlib .PHONY: maybe-clean-target-newlib clean-target-newlib maybe-clean-target-newlib: +@if target-newlib +maybe-clean-target-newlib: clean-target-newlib clean-target-newlib: @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing clean in $(TARGET_SUBDIR)/newlib" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -19364,15 +22884,19 @@ clean-target-newlib: clean) \ || exit 1 +@endif target-newlib .PHONY: maybe-distclean-target-newlib distclean-target-newlib maybe-distclean-target-newlib: +@if target-newlib +maybe-distclean-target-newlib: distclean-target-newlib distclean-target-newlib: @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing distclean in $(TARGET_SUBDIR)/newlib" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -19385,15 +22909,19 @@ distclean-target-newlib: distclean) \ || exit 1 +@endif target-newlib .PHONY: maybe-maintainer-clean-target-newlib maintainer-clean-target-newlib maybe-maintainer-clean-target-newlib: +@if target-newlib +maybe-maintainer-clean-target-newlib: maintainer-clean-target-newlib maintainer-clean-target-newlib: @[ -f $(TARGET_SUBDIR)/newlib/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing maintainer-clean in $(TARGET_SUBDIR)/newlib" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -19406,40 +22934,29 @@ maintainer-clean-target-newlib: maintainer-clean) \ || exit 1 +@endif target-newlib -.PHONY: configure-target-libf2c maybe-configure-target-libf2c -maybe-configure-target-libf2c: +.PHONY: configure-target-libgfortran maybe-configure-target-libgfortran +maybe-configure-target-libgfortran: +@if target-libgfortran +maybe-configure-target-libgfortran: configure-target-libgfortran # There's only one multilib.out. Cleverer subdirs shouldn't need it copied. -$(TARGET_SUBDIR)/libf2c/multilib.out: multilib.out - $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libf2c ; \ - rm -f $(TARGET_SUBDIR)/libf2c/Makefile || : ; \ - cp multilib.out $(TARGET_SUBDIR)/libf2c/multilib.out - -configure-target-libf2c: $(TARGET_SUBDIR)/libf2c/multilib.out - @test ! -f $(TARGET_SUBDIR)/libf2c/Makefile || exit 0; \ - $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libf2c ; \ +$(TARGET_SUBDIR)/libgfortran/multilib.out: multilib.out + $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libgfortran ; \ + rm -f $(TARGET_SUBDIR)/libgfortran/Makefile || : ; \ + cp multilib.out $(TARGET_SUBDIR)/libgfortran/multilib.out + +configure-target-libgfortran: $(TARGET_SUBDIR)/libgfortran/multilib.out + @test ! -f $(TARGET_SUBDIR)/libgfortran/Makefile || exit 0; \ + $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libgfortran ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - AR="$(AR_FOR_TARGET)"; export AR; \ - AS="$(AS_FOR_TARGET)"; export AS; \ - CC="$(CC_FOR_TARGET)"; export CC; \ - CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \ - CXX="$(CXX_FOR_TARGET)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \ - GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \ - DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \ - LD="$(LD_FOR_TARGET)"; export LD; \ - LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \ - NM="$(NM_FOR_TARGET)"; export NM; \ - RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \ - WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \ - echo Configuring in $(TARGET_SUBDIR)/libf2c; \ - cd "$(TARGET_SUBDIR)/libf2c" || exit 1; \ + $(NORMAL_TARGET_EXPORTS) \ + echo Configuring in $(TARGET_SUBDIR)/libgfortran; \ + cd "$(TARGET_SUBDIR)/libgfortran" || exit 1; \ case $(srcdir) in \ /* | [A-Za-z]:[\\/]*) \ topdir=$(srcdir) ;; \ @@ -19449,61 +22966,77 @@ configure-target-libf2c: $(TARGET_SUBDIR *) topdir="../../$(srcdir)" ;; \ esac ;; \ esac; \ - srcdiroption="--srcdir=$${topdir}/libf2c"; \ - libsrcdir="$$s/libf2c"; \ + srcdiroption="--srcdir=$${topdir}/libgfortran"; \ + libsrcdir="$$s/libgfortran"; \ rm -f no-such-file || : ; \ CONFIG_SITE=no-such-file $(SHELL) $${libsrcdir}/configure \ $(TARGET_CONFIGARGS) $${srcdiroption} \ --with-target-subdir="$(TARGET_SUBDIR)" \ || exit 1 +@endif target-libgfortran -.PHONY: all-target-libf2c maybe-all-target-libf2c -maybe-all-target-libf2c: -all-target-libf2c: configure-target-libf2c +.PHONY: all-target-libgfortran maybe-all-target-libgfortran +maybe-all-target-libgfortran: +@if target-libgfortran +maybe-all-target-libgfortran: all-target-libgfortran +all-target-libgfortran: configure-target-libgfortran @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - (cd $(TARGET_SUBDIR)/libf2c && \ + $(NORMAL_TARGET_EXPORTS) \ + (cd $(TARGET_SUBDIR)/libgfortran && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) all) +@endif target-libgfortran -.PHONY: check-target-libf2c maybe-check-target-libf2c -maybe-check-target-libf2c: +.PHONY: check-target-libgfortran maybe-check-target-libgfortran +maybe-check-target-libgfortran: +@if target-libgfortran +maybe-check-target-libgfortran: check-target-libgfortran -check-target-libf2c: +check-target-libgfortran: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - (cd $(TARGET_SUBDIR)/libf2c && \ + $(NORMAL_TARGET_EXPORTS) \ + (cd $(TARGET_SUBDIR)/libgfortran && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) check) +@endif target-libgfortran -.PHONY: install-target-libf2c maybe-install-target-libf2c -maybe-install-target-libf2c: +.PHONY: install-target-libgfortran maybe-install-target-libgfortran +maybe-install-target-libgfortran: +@if target-libgfortran +maybe-install-target-libgfortran: install-target-libgfortran -install-target-libf2c: installdirs +install-target-libgfortran: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - (cd $(TARGET_SUBDIR)/libf2c && \ + $(NORMAL_TARGET_EXPORTS) \ + (cd $(TARGET_SUBDIR)/libgfortran && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) install) +@endif target-libgfortran # Other targets (info, dvi, etc.) -.PHONY: maybe-info-target-libf2c info-target-libf2c -maybe-info-target-libf2c: +.PHONY: maybe-info-target-libgfortran info-target-libgfortran +maybe-info-target-libgfortran: +@if target-libgfortran +maybe-info-target-libgfortran: info-target-libgfortran -info-target-libf2c: \ - configure-target-libf2c - @[ -f $(TARGET_SUBDIR)/libf2c/Makefile ] || exit 0 ; \ +info-target-libgfortran: \ + configure-target-libgfortran + @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - echo "Doing info in $(TARGET_SUBDIR)/libf2c" ; \ + $(NORMAL_TARGET_EXPORTS) \ + echo "Doing info in $(TARGET_SUBDIR)/libgfortran" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - (cd $(TARGET_SUBDIR)/libf2c && \ + (cd $(TARGET_SUBDIR)/libgfortran && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ "RANLIB=$${RANLIB}" \ @@ -19511,21 +23044,25 @@ info-target-libf2c: \ info) \ || exit 1 +@endif target-libgfortran -.PHONY: maybe-dvi-target-libf2c dvi-target-libf2c -maybe-dvi-target-libf2c: +.PHONY: maybe-dvi-target-libgfortran dvi-target-libgfortran +maybe-dvi-target-libgfortran: +@if target-libgfortran +maybe-dvi-target-libgfortran: dvi-target-libgfortran -dvi-target-libf2c: \ - configure-target-libf2c - @[ -f $(TARGET_SUBDIR)/libf2c/Makefile ] || exit 0 ; \ +dvi-target-libgfortran: \ + configure-target-libgfortran + @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - echo "Doing dvi in $(TARGET_SUBDIR)/libf2c" ; \ + $(NORMAL_TARGET_EXPORTS) \ + echo "Doing dvi in $(TARGET_SUBDIR)/libgfortran" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - (cd $(TARGET_SUBDIR)/libf2c && \ + (cd $(TARGET_SUBDIR)/libgfortran && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ "RANLIB=$${RANLIB}" \ @@ -19533,21 +23070,25 @@ dvi-target-libf2c: \ dvi) \ || exit 1 +@endif target-libgfortran -.PHONY: maybe-TAGS-target-libf2c TAGS-target-libf2c -maybe-TAGS-target-libf2c: +.PHONY: maybe-TAGS-target-libgfortran TAGS-target-libgfortran +maybe-TAGS-target-libgfortran: +@if target-libgfortran +maybe-TAGS-target-libgfortran: TAGS-target-libgfortran -TAGS-target-libf2c: \ - configure-target-libf2c - @[ -f $(TARGET_SUBDIR)/libf2c/Makefile ] || exit 0 ; \ +TAGS-target-libgfortran: \ + configure-target-libgfortran + @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - echo "Doing TAGS in $(TARGET_SUBDIR)/libf2c" ; \ + $(NORMAL_TARGET_EXPORTS) \ + echo "Doing TAGS in $(TARGET_SUBDIR)/libgfortran" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - (cd $(TARGET_SUBDIR)/libf2c && \ + (cd $(TARGET_SUBDIR)/libgfortran && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ "RANLIB=$${RANLIB}" \ @@ -19555,22 +23096,26 @@ TAGS-target-libf2c: \ TAGS) \ || exit 1 +@endif target-libgfortran -.PHONY: maybe-install-info-target-libf2c install-info-target-libf2c -maybe-install-info-target-libf2c: +.PHONY: maybe-install-info-target-libgfortran install-info-target-libgfortran +maybe-install-info-target-libgfortran: +@if target-libgfortran +maybe-install-info-target-libgfortran: install-info-target-libgfortran -install-info-target-libf2c: \ - configure-target-libf2c \ - info-target-libf2c - @[ -f $(TARGET_SUBDIR)/libf2c/Makefile ] || exit 0 ; \ +install-info-target-libgfortran: \ + configure-target-libgfortran \ + info-target-libgfortran + @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - echo "Doing install-info in $(TARGET_SUBDIR)/libf2c" ; \ + $(NORMAL_TARGET_EXPORTS) \ + echo "Doing install-info in $(TARGET_SUBDIR)/libgfortran" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - (cd $(TARGET_SUBDIR)/libf2c && \ + (cd $(TARGET_SUBDIR)/libgfortran && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ "RANLIB=$${RANLIB}" \ @@ -19578,21 +23123,25 @@ install-info-target-libf2c: \ install-info) \ || exit 1 +@endif target-libgfortran -.PHONY: maybe-installcheck-target-libf2c installcheck-target-libf2c -maybe-installcheck-target-libf2c: +.PHONY: maybe-installcheck-target-libgfortran installcheck-target-libgfortran +maybe-installcheck-target-libgfortran: +@if target-libgfortran +maybe-installcheck-target-libgfortran: installcheck-target-libgfortran -installcheck-target-libf2c: \ - configure-target-libf2c - @[ -f $(TARGET_SUBDIR)/libf2c/Makefile ] || exit 0 ; \ +installcheck-target-libgfortran: \ + configure-target-libgfortran + @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - echo "Doing installcheck in $(TARGET_SUBDIR)/libf2c" ; \ + $(NORMAL_TARGET_EXPORTS) \ + echo "Doing installcheck in $(TARGET_SUBDIR)/libgfortran" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - (cd $(TARGET_SUBDIR)/libf2c && \ + (cd $(TARGET_SUBDIR)/libgfortran && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ "RANLIB=$${RANLIB}" \ @@ -19600,20 +23149,24 @@ installcheck-target-libf2c: \ installcheck) \ || exit 1 +@endif target-libgfortran -.PHONY: maybe-mostlyclean-target-libf2c mostlyclean-target-libf2c -maybe-mostlyclean-target-libf2c: +.PHONY: maybe-mostlyclean-target-libgfortran mostlyclean-target-libgfortran +maybe-mostlyclean-target-libgfortran: +@if target-libgfortran +maybe-mostlyclean-target-libgfortran: mostlyclean-target-libgfortran -mostlyclean-target-libf2c: - @[ -f $(TARGET_SUBDIR)/libf2c/Makefile ] || exit 0 ; \ +mostlyclean-target-libgfortran: + @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - echo "Doing mostlyclean in $(TARGET_SUBDIR)/libf2c" ; \ + $(NORMAL_TARGET_EXPORTS) \ + echo "Doing mostlyclean in $(TARGET_SUBDIR)/libgfortran" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - (cd $(TARGET_SUBDIR)/libf2c && \ + (cd $(TARGET_SUBDIR)/libgfortran && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ "RANLIB=$${RANLIB}" \ @@ -19621,20 +23174,24 @@ mostlyclean-target-libf2c: mostlyclean) \ || exit 1 +@endif target-libgfortran -.PHONY: maybe-clean-target-libf2c clean-target-libf2c -maybe-clean-target-libf2c: +.PHONY: maybe-clean-target-libgfortran clean-target-libgfortran +maybe-clean-target-libgfortran: +@if target-libgfortran +maybe-clean-target-libgfortran: clean-target-libgfortran -clean-target-libf2c: - @[ -f $(TARGET_SUBDIR)/libf2c/Makefile ] || exit 0 ; \ +clean-target-libgfortran: + @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - echo "Doing clean in $(TARGET_SUBDIR)/libf2c" ; \ + $(NORMAL_TARGET_EXPORTS) \ + echo "Doing clean in $(TARGET_SUBDIR)/libgfortran" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - (cd $(TARGET_SUBDIR)/libf2c && \ + (cd $(TARGET_SUBDIR)/libgfortran && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ "RANLIB=$${RANLIB}" \ @@ -19642,20 +23199,24 @@ clean-target-libf2c: clean) \ || exit 1 +@endif target-libgfortran -.PHONY: maybe-distclean-target-libf2c distclean-target-libf2c -maybe-distclean-target-libf2c: +.PHONY: maybe-distclean-target-libgfortran distclean-target-libgfortran +maybe-distclean-target-libgfortran: +@if target-libgfortran +maybe-distclean-target-libgfortran: distclean-target-libgfortran -distclean-target-libf2c: - @[ -f $(TARGET_SUBDIR)/libf2c/Makefile ] || exit 0 ; \ +distclean-target-libgfortran: + @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - echo "Doing distclean in $(TARGET_SUBDIR)/libf2c" ; \ + $(NORMAL_TARGET_EXPORTS) \ + echo "Doing distclean in $(TARGET_SUBDIR)/libgfortran" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - (cd $(TARGET_SUBDIR)/libf2c && \ + (cd $(TARGET_SUBDIR)/libgfortran && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ "RANLIB=$${RANLIB}" \ @@ -19663,20 +23224,24 @@ distclean-target-libf2c: distclean) \ || exit 1 +@endif target-libgfortran -.PHONY: maybe-maintainer-clean-target-libf2c maintainer-clean-target-libf2c -maybe-maintainer-clean-target-libf2c: +.PHONY: maybe-maintainer-clean-target-libgfortran maintainer-clean-target-libgfortran +maybe-maintainer-clean-target-libgfortran: +@if target-libgfortran +maybe-maintainer-clean-target-libgfortran: maintainer-clean-target-libgfortran -maintainer-clean-target-libf2c: - @[ -f $(TARGET_SUBDIR)/libf2c/Makefile ] || exit 0 ; \ +maintainer-clean-target-libgfortran: + @[ -f $(TARGET_SUBDIR)/libgfortran/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libf2c" ; \ + $(NORMAL_TARGET_EXPORTS) \ + echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libgfortran" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ - (cd $(TARGET_SUBDIR)/libf2c && \ + (cd $(TARGET_SUBDIR)/libgfortran && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ "RANLIB=$${RANLIB}" \ @@ -19684,10 +23249,13 @@ maintainer-clean-target-libf2c: maintainer-clean) \ || exit 1 +@endif target-libgfortran .PHONY: configure-target-libobjc maybe-configure-target-libobjc maybe-configure-target-libobjc: +@if target-libobjc +maybe-configure-target-libobjc: configure-target-libobjc # There's only one multilib.out. Cleverer subdirs shouldn't need it copied. $(TARGET_SUBDIR)/libobjc/multilib.out: multilib.out @@ -19701,21 +23269,7 @@ configure-target-libobjc: $(TARGET_SUBDI r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - AR="$(AR_FOR_TARGET)"; export AR; \ - AS="$(AS_FOR_TARGET)"; export AS; \ - CC="$(CC_FOR_TARGET)"; export CC; \ - CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \ - CXX="$(CXX_FOR_TARGET)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \ - GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \ - DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \ - LD="$(LD_FOR_TARGET)"; export LD; \ - LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \ - NM="$(NM_FOR_TARGET)"; export NM; \ - RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \ - WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \ + $(NORMAL_TARGET_EXPORTS) \ echo Configuring in $(TARGET_SUBDIR)/libobjc; \ cd "$(TARGET_SUBDIR)/libobjc" || exit 1; \ case $(srcdir) in \ @@ -19734,42 +23288,57 @@ configure-target-libobjc: $(TARGET_SUBDI $(TARGET_CONFIGARGS) $${srcdiroption} \ --with-target-subdir="$(TARGET_SUBDIR)" \ || exit 1 +@endif target-libobjc .PHONY: all-target-libobjc maybe-all-target-libobjc maybe-all-target-libobjc: +@if target-libobjc +maybe-all-target-libobjc: all-target-libobjc all-target-libobjc: configure-target-libobjc @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/libobjc && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) all) +@endif target-libobjc .PHONY: check-target-libobjc maybe-check-target-libobjc maybe-check-target-libobjc: +@if target-libobjc +maybe-check-target-libobjc: check-target-libobjc check-target-libobjc: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/libobjc && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) check) +@endif target-libobjc .PHONY: install-target-libobjc maybe-install-target-libobjc maybe-install-target-libobjc: +@if target-libobjc +maybe-install-target-libobjc: install-target-libobjc install-target-libobjc: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/libobjc && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) install) +@endif target-libobjc # Other targets (info, dvi, etc.) .PHONY: maybe-info-target-libobjc info-target-libobjc maybe-info-target-libobjc: +@if target-libobjc +maybe-info-target-libobjc: info-target-libobjc info-target-libobjc: \ configure-target-libobjc @@ -19777,6 +23346,7 @@ info-target-libobjc: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing info in $(TARGET_SUBDIR)/libobjc" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -19789,9 +23359,12 @@ info-target-libobjc: \ info) \ || exit 1 +@endif target-libobjc .PHONY: maybe-dvi-target-libobjc dvi-target-libobjc maybe-dvi-target-libobjc: +@if target-libobjc +maybe-dvi-target-libobjc: dvi-target-libobjc dvi-target-libobjc: \ configure-target-libobjc @@ -19799,6 +23372,7 @@ dvi-target-libobjc: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing dvi in $(TARGET_SUBDIR)/libobjc" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -19811,9 +23385,12 @@ dvi-target-libobjc: \ dvi) \ || exit 1 +@endif target-libobjc .PHONY: maybe-TAGS-target-libobjc TAGS-target-libobjc maybe-TAGS-target-libobjc: +@if target-libobjc +maybe-TAGS-target-libobjc: TAGS-target-libobjc TAGS-target-libobjc: \ configure-target-libobjc @@ -19821,6 +23398,7 @@ TAGS-target-libobjc: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing TAGS in $(TARGET_SUBDIR)/libobjc" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -19833,9 +23411,12 @@ TAGS-target-libobjc: \ TAGS) \ || exit 1 +@endif target-libobjc .PHONY: maybe-install-info-target-libobjc install-info-target-libobjc maybe-install-info-target-libobjc: +@if target-libobjc +maybe-install-info-target-libobjc: install-info-target-libobjc install-info-target-libobjc: \ configure-target-libobjc \ @@ -19844,6 +23425,7 @@ install-info-target-libobjc: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing install-info in $(TARGET_SUBDIR)/libobjc" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -19856,9 +23438,12 @@ install-info-target-libobjc: \ install-info) \ || exit 1 +@endif target-libobjc .PHONY: maybe-installcheck-target-libobjc installcheck-target-libobjc maybe-installcheck-target-libobjc: +@if target-libobjc +maybe-installcheck-target-libobjc: installcheck-target-libobjc installcheck-target-libobjc: \ configure-target-libobjc @@ -19866,6 +23451,7 @@ installcheck-target-libobjc: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing installcheck in $(TARGET_SUBDIR)/libobjc" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -19878,15 +23464,19 @@ installcheck-target-libobjc: \ installcheck) \ || exit 1 +@endif target-libobjc .PHONY: maybe-mostlyclean-target-libobjc mostlyclean-target-libobjc maybe-mostlyclean-target-libobjc: +@if target-libobjc +maybe-mostlyclean-target-libobjc: mostlyclean-target-libobjc mostlyclean-target-libobjc: @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing mostlyclean in $(TARGET_SUBDIR)/libobjc" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -19899,15 +23489,19 @@ mostlyclean-target-libobjc: mostlyclean) \ || exit 1 +@endif target-libobjc .PHONY: maybe-clean-target-libobjc clean-target-libobjc maybe-clean-target-libobjc: +@if target-libobjc +maybe-clean-target-libobjc: clean-target-libobjc clean-target-libobjc: @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing clean in $(TARGET_SUBDIR)/libobjc" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -19920,15 +23514,19 @@ clean-target-libobjc: clean) \ || exit 1 +@endif target-libobjc .PHONY: maybe-distclean-target-libobjc distclean-target-libobjc maybe-distclean-target-libobjc: +@if target-libobjc +maybe-distclean-target-libobjc: distclean-target-libobjc distclean-target-libobjc: @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing distclean in $(TARGET_SUBDIR)/libobjc" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -19941,15 +23539,19 @@ distclean-target-libobjc: distclean) \ || exit 1 +@endif target-libobjc .PHONY: maybe-maintainer-clean-target-libobjc maintainer-clean-target-libobjc maybe-maintainer-clean-target-libobjc: +@if target-libobjc +maybe-maintainer-clean-target-libobjc: maintainer-clean-target-libobjc maintainer-clean-target-libobjc: @[ -f $(TARGET_SUBDIR)/libobjc/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libobjc" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -19962,10 +23564,13 @@ maintainer-clean-target-libobjc: maintainer-clean) \ || exit 1 +@endif target-libobjc .PHONY: configure-target-libtermcap maybe-configure-target-libtermcap maybe-configure-target-libtermcap: +@if target-libtermcap +maybe-configure-target-libtermcap: configure-target-libtermcap # There's only one multilib.out. Cleverer subdirs shouldn't need it copied. $(TARGET_SUBDIR)/libtermcap/multilib.out: multilib.out @@ -19979,21 +23584,7 @@ configure-target-libtermcap: $(TARGET_SU r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - AR="$(AR_FOR_TARGET)"; export AR; \ - AS="$(AS_FOR_TARGET)"; export AS; \ - CC="$(CC_FOR_TARGET)"; export CC; \ - CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \ - CXX="$(CXX_FOR_TARGET)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \ - GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \ - DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \ - LD="$(LD_FOR_TARGET)"; export LD; \ - LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \ - NM="$(NM_FOR_TARGET)"; export NM; \ - RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \ - WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \ + $(NORMAL_TARGET_EXPORTS) \ echo Configuring in $(TARGET_SUBDIR)/libtermcap; \ cd "$(TARGET_SUBDIR)/libtermcap" || exit 1; \ case $(srcdir) in \ @@ -20034,38 +23625,52 @@ configure-target-libtermcap: $(TARGET_SU $(TARGET_CONFIGARGS) $${srcdiroption} \ --with-target-subdir="$(TARGET_SUBDIR)" \ || exit 1 +@endif target-libtermcap .PHONY: all-target-libtermcap maybe-all-target-libtermcap maybe-all-target-libtermcap: +@if target-libtermcap +maybe-all-target-libtermcap: all-target-libtermcap all-target-libtermcap: configure-target-libtermcap @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/libtermcap && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) all) +@endif target-libtermcap .PHONY: check-target-libtermcap maybe-check-target-libtermcap maybe-check-target-libtermcap: +@if target-libtermcap +maybe-check-target-libtermcap: check-target-libtermcap # Dummy target for uncheckable module. check-target-libtermcap: +@endif target-libtermcap .PHONY: install-target-libtermcap maybe-install-target-libtermcap maybe-install-target-libtermcap: +@if target-libtermcap +maybe-install-target-libtermcap: install-target-libtermcap install-target-libtermcap: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/libtermcap && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) install) +@endif target-libtermcap # Other targets (info, dvi, etc.) .PHONY: maybe-info-target-libtermcap info-target-libtermcap maybe-info-target-libtermcap: +@if target-libtermcap +maybe-info-target-libtermcap: info-target-libtermcap info-target-libtermcap: \ configure-target-libtermcap @@ -20073,6 +23678,7 @@ info-target-libtermcap: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing info in $(TARGET_SUBDIR)/libtermcap" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20085,9 +23691,12 @@ info-target-libtermcap: \ info) \ || exit 1 +@endif target-libtermcap .PHONY: maybe-dvi-target-libtermcap dvi-target-libtermcap maybe-dvi-target-libtermcap: +@if target-libtermcap +maybe-dvi-target-libtermcap: dvi-target-libtermcap dvi-target-libtermcap: \ configure-target-libtermcap @@ -20095,6 +23704,7 @@ dvi-target-libtermcap: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing dvi in $(TARGET_SUBDIR)/libtermcap" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20107,9 +23717,12 @@ dvi-target-libtermcap: \ dvi) \ || exit 1 +@endif target-libtermcap .PHONY: maybe-TAGS-target-libtermcap TAGS-target-libtermcap maybe-TAGS-target-libtermcap: +@if target-libtermcap +maybe-TAGS-target-libtermcap: TAGS-target-libtermcap TAGS-target-libtermcap: \ configure-target-libtermcap @@ -20117,6 +23730,7 @@ TAGS-target-libtermcap: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing TAGS in $(TARGET_SUBDIR)/libtermcap" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20129,9 +23743,12 @@ TAGS-target-libtermcap: \ TAGS) \ || exit 1 +@endif target-libtermcap .PHONY: maybe-install-info-target-libtermcap install-info-target-libtermcap maybe-install-info-target-libtermcap: +@if target-libtermcap +maybe-install-info-target-libtermcap: install-info-target-libtermcap install-info-target-libtermcap: \ configure-target-libtermcap \ @@ -20140,6 +23757,7 @@ install-info-target-libtermcap: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing install-info in $(TARGET_SUBDIR)/libtermcap" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20152,9 +23770,12 @@ install-info-target-libtermcap: \ install-info) \ || exit 1 +@endif target-libtermcap .PHONY: maybe-installcheck-target-libtermcap installcheck-target-libtermcap maybe-installcheck-target-libtermcap: +@if target-libtermcap +maybe-installcheck-target-libtermcap: installcheck-target-libtermcap installcheck-target-libtermcap: \ configure-target-libtermcap @@ -20162,6 +23783,7 @@ installcheck-target-libtermcap: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing installcheck in $(TARGET_SUBDIR)/libtermcap" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20174,38 +23796,53 @@ installcheck-target-libtermcap: \ installcheck) \ || exit 1 +@endif target-libtermcap .PHONY: maybe-mostlyclean-target-libtermcap mostlyclean-target-libtermcap maybe-mostlyclean-target-libtermcap: +@if target-libtermcap +maybe-mostlyclean-target-libtermcap: mostlyclean-target-libtermcap # libtermcap doesn't support mostlyclean. mostlyclean-target-libtermcap: +@endif target-libtermcap .PHONY: maybe-clean-target-libtermcap clean-target-libtermcap maybe-clean-target-libtermcap: +@if target-libtermcap +maybe-clean-target-libtermcap: clean-target-libtermcap # libtermcap doesn't support clean. clean-target-libtermcap: +@endif target-libtermcap .PHONY: maybe-distclean-target-libtermcap distclean-target-libtermcap maybe-distclean-target-libtermcap: +@if target-libtermcap +maybe-distclean-target-libtermcap: distclean-target-libtermcap # libtermcap doesn't support distclean. distclean-target-libtermcap: +@endif target-libtermcap .PHONY: maybe-maintainer-clean-target-libtermcap maintainer-clean-target-libtermcap maybe-maintainer-clean-target-libtermcap: +@if target-libtermcap +maybe-maintainer-clean-target-libtermcap: maintainer-clean-target-libtermcap # libtermcap doesn't support maintainer-clean. maintainer-clean-target-libtermcap: +@endif target-libtermcap .PHONY: configure-target-winsup maybe-configure-target-winsup maybe-configure-target-winsup: +@if target-winsup +maybe-configure-target-winsup: configure-target-winsup # There's only one multilib.out. Cleverer subdirs shouldn't need it copied. $(TARGET_SUBDIR)/winsup/multilib.out: multilib.out @@ -20219,21 +23856,7 @@ configure-target-winsup: $(TARGET_SUBDIR r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - AR="$(AR_FOR_TARGET)"; export AR; \ - AS="$(AS_FOR_TARGET)"; export AS; \ - CC="$(CC_FOR_TARGET)"; export CC; \ - CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \ - CXX="$(CXX_FOR_TARGET)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \ - GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \ - DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \ - LD="$(LD_FOR_TARGET)"; export LD; \ - LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \ - NM="$(NM_FOR_TARGET)"; export NM; \ - RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \ - WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \ + $(NORMAL_TARGET_EXPORTS) \ echo Configuring in $(TARGET_SUBDIR)/winsup; \ cd "$(TARGET_SUBDIR)/winsup" || exit 1; \ case $(srcdir) in \ @@ -20252,42 +23875,57 @@ configure-target-winsup: $(TARGET_SUBDIR $(TARGET_CONFIGARGS) $${srcdiroption} \ --with-target-subdir="$(TARGET_SUBDIR)" \ || exit 1 +@endif target-winsup .PHONY: all-target-winsup maybe-all-target-winsup maybe-all-target-winsup: +@if target-winsup +maybe-all-target-winsup: all-target-winsup all-target-winsup: configure-target-winsup @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/winsup && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) all) +@endif target-winsup .PHONY: check-target-winsup maybe-check-target-winsup maybe-check-target-winsup: +@if target-winsup +maybe-check-target-winsup: check-target-winsup check-target-winsup: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/winsup && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) check) +@endif target-winsup .PHONY: install-target-winsup maybe-install-target-winsup maybe-install-target-winsup: +@if target-winsup +maybe-install-target-winsup: install-target-winsup install-target-winsup: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/winsup && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) install) +@endif target-winsup # Other targets (info, dvi, etc.) .PHONY: maybe-info-target-winsup info-target-winsup maybe-info-target-winsup: +@if target-winsup +maybe-info-target-winsup: info-target-winsup info-target-winsup: \ configure-target-winsup @@ -20295,6 +23933,7 @@ info-target-winsup: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing info in $(TARGET_SUBDIR)/winsup" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20307,9 +23946,12 @@ info-target-winsup: \ info) \ || exit 1 +@endif target-winsup .PHONY: maybe-dvi-target-winsup dvi-target-winsup maybe-dvi-target-winsup: +@if target-winsup +maybe-dvi-target-winsup: dvi-target-winsup dvi-target-winsup: \ configure-target-winsup @@ -20317,6 +23959,7 @@ dvi-target-winsup: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing dvi in $(TARGET_SUBDIR)/winsup" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20329,9 +23972,12 @@ dvi-target-winsup: \ dvi) \ || exit 1 +@endif target-winsup .PHONY: maybe-TAGS-target-winsup TAGS-target-winsup maybe-TAGS-target-winsup: +@if target-winsup +maybe-TAGS-target-winsup: TAGS-target-winsup TAGS-target-winsup: \ configure-target-winsup @@ -20339,6 +23985,7 @@ TAGS-target-winsup: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing TAGS in $(TARGET_SUBDIR)/winsup" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20351,9 +23998,12 @@ TAGS-target-winsup: \ TAGS) \ || exit 1 +@endif target-winsup .PHONY: maybe-install-info-target-winsup install-info-target-winsup maybe-install-info-target-winsup: +@if target-winsup +maybe-install-info-target-winsup: install-info-target-winsup install-info-target-winsup: \ configure-target-winsup \ @@ -20362,6 +24012,7 @@ install-info-target-winsup: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing install-info in $(TARGET_SUBDIR)/winsup" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20374,9 +24025,12 @@ install-info-target-winsup: \ install-info) \ || exit 1 +@endif target-winsup .PHONY: maybe-installcheck-target-winsup installcheck-target-winsup maybe-installcheck-target-winsup: +@if target-winsup +maybe-installcheck-target-winsup: installcheck-target-winsup installcheck-target-winsup: \ configure-target-winsup @@ -20384,6 +24038,7 @@ installcheck-target-winsup: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing installcheck in $(TARGET_SUBDIR)/winsup" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20396,15 +24051,19 @@ installcheck-target-winsup: \ installcheck) \ || exit 1 +@endif target-winsup .PHONY: maybe-mostlyclean-target-winsup mostlyclean-target-winsup maybe-mostlyclean-target-winsup: +@if target-winsup +maybe-mostlyclean-target-winsup: mostlyclean-target-winsup mostlyclean-target-winsup: @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing mostlyclean in $(TARGET_SUBDIR)/winsup" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20417,15 +24076,19 @@ mostlyclean-target-winsup: mostlyclean) \ || exit 1 +@endif target-winsup .PHONY: maybe-clean-target-winsup clean-target-winsup maybe-clean-target-winsup: +@if target-winsup +maybe-clean-target-winsup: clean-target-winsup clean-target-winsup: @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing clean in $(TARGET_SUBDIR)/winsup" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20438,15 +24101,19 @@ clean-target-winsup: clean) \ || exit 1 +@endif target-winsup .PHONY: maybe-distclean-target-winsup distclean-target-winsup maybe-distclean-target-winsup: +@if target-winsup +maybe-distclean-target-winsup: distclean-target-winsup distclean-target-winsup: @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing distclean in $(TARGET_SUBDIR)/winsup" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20459,15 +24126,19 @@ distclean-target-winsup: distclean) \ || exit 1 +@endif target-winsup .PHONY: maybe-maintainer-clean-target-winsup maintainer-clean-target-winsup maybe-maintainer-clean-target-winsup: +@if target-winsup +maybe-maintainer-clean-target-winsup: maintainer-clean-target-winsup maintainer-clean-target-winsup: @[ -f $(TARGET_SUBDIR)/winsup/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing maintainer-clean in $(TARGET_SUBDIR)/winsup" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20480,10 +24151,13 @@ maintainer-clean-target-winsup: maintainer-clean) \ || exit 1 +@endif target-winsup .PHONY: configure-target-libgloss maybe-configure-target-libgloss maybe-configure-target-libgloss: +@if target-libgloss +maybe-configure-target-libgloss: configure-target-libgloss # There's only one multilib.out. Cleverer subdirs shouldn't need it copied. $(TARGET_SUBDIR)/libgloss/multilib.out: multilib.out @@ -20497,21 +24171,7 @@ configure-target-libgloss: $(TARGET_SUBD r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - AR="$(AR_FOR_TARGET)"; export AR; \ - AS="$(AS_FOR_TARGET)"; export AS; \ - CC="$(CC_FOR_TARGET)"; export CC; \ - CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \ - CXX="$(CXX_FOR_TARGET)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \ - GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \ - DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \ - LD="$(LD_FOR_TARGET)"; export LD; \ - LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \ - NM="$(NM_FOR_TARGET)"; export NM; \ - RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \ - WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \ + $(NORMAL_TARGET_EXPORTS) \ echo Configuring in $(TARGET_SUBDIR)/libgloss; \ cd "$(TARGET_SUBDIR)/libgloss" || exit 1; \ case $(srcdir) in \ @@ -20530,38 +24190,52 @@ configure-target-libgloss: $(TARGET_SUBD $(TARGET_CONFIGARGS) $${srcdiroption} \ --with-target-subdir="$(TARGET_SUBDIR)" \ || exit 1 +@endif target-libgloss .PHONY: all-target-libgloss maybe-all-target-libgloss maybe-all-target-libgloss: +@if target-libgloss +maybe-all-target-libgloss: all-target-libgloss all-target-libgloss: configure-target-libgloss @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/libgloss && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) all) +@endif target-libgloss .PHONY: check-target-libgloss maybe-check-target-libgloss maybe-check-target-libgloss: +@if target-libgloss +maybe-check-target-libgloss: check-target-libgloss # Dummy target for uncheckable module. check-target-libgloss: +@endif target-libgloss .PHONY: install-target-libgloss maybe-install-target-libgloss maybe-install-target-libgloss: +@if target-libgloss +maybe-install-target-libgloss: install-target-libgloss install-target-libgloss: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/libgloss && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) install) +@endif target-libgloss # Other targets (info, dvi, etc.) .PHONY: maybe-info-target-libgloss info-target-libgloss maybe-info-target-libgloss: +@if target-libgloss +maybe-info-target-libgloss: info-target-libgloss info-target-libgloss: \ configure-target-libgloss @@ -20569,6 +24243,7 @@ info-target-libgloss: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing info in $(TARGET_SUBDIR)/libgloss" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20581,9 +24256,12 @@ info-target-libgloss: \ info) \ || exit 1 +@endif target-libgloss .PHONY: maybe-dvi-target-libgloss dvi-target-libgloss maybe-dvi-target-libgloss: +@if target-libgloss +maybe-dvi-target-libgloss: dvi-target-libgloss dvi-target-libgloss: \ configure-target-libgloss @@ -20591,6 +24269,7 @@ dvi-target-libgloss: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing dvi in $(TARGET_SUBDIR)/libgloss" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20603,9 +24282,12 @@ dvi-target-libgloss: \ dvi) \ || exit 1 +@endif target-libgloss .PHONY: maybe-TAGS-target-libgloss TAGS-target-libgloss maybe-TAGS-target-libgloss: +@if target-libgloss +maybe-TAGS-target-libgloss: TAGS-target-libgloss TAGS-target-libgloss: \ configure-target-libgloss @@ -20613,6 +24295,7 @@ TAGS-target-libgloss: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing TAGS in $(TARGET_SUBDIR)/libgloss" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20625,9 +24308,12 @@ TAGS-target-libgloss: \ TAGS) \ || exit 1 +@endif target-libgloss .PHONY: maybe-install-info-target-libgloss install-info-target-libgloss maybe-install-info-target-libgloss: +@if target-libgloss +maybe-install-info-target-libgloss: install-info-target-libgloss install-info-target-libgloss: \ configure-target-libgloss \ @@ -20636,6 +24322,7 @@ install-info-target-libgloss: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing install-info in $(TARGET_SUBDIR)/libgloss" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20648,9 +24335,12 @@ install-info-target-libgloss: \ install-info) \ || exit 1 +@endif target-libgloss .PHONY: maybe-installcheck-target-libgloss installcheck-target-libgloss maybe-installcheck-target-libgloss: +@if target-libgloss +maybe-installcheck-target-libgloss: installcheck-target-libgloss installcheck-target-libgloss: \ configure-target-libgloss @@ -20658,6 +24348,7 @@ installcheck-target-libgloss: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing installcheck in $(TARGET_SUBDIR)/libgloss" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20670,15 +24361,19 @@ installcheck-target-libgloss: \ installcheck) \ || exit 1 +@endif target-libgloss .PHONY: maybe-mostlyclean-target-libgloss mostlyclean-target-libgloss maybe-mostlyclean-target-libgloss: +@if target-libgloss +maybe-mostlyclean-target-libgloss: mostlyclean-target-libgloss mostlyclean-target-libgloss: @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing mostlyclean in $(TARGET_SUBDIR)/libgloss" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20691,15 +24386,19 @@ mostlyclean-target-libgloss: mostlyclean) \ || exit 1 +@endif target-libgloss .PHONY: maybe-clean-target-libgloss clean-target-libgloss maybe-clean-target-libgloss: +@if target-libgloss +maybe-clean-target-libgloss: clean-target-libgloss clean-target-libgloss: @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing clean in $(TARGET_SUBDIR)/libgloss" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20712,15 +24411,19 @@ clean-target-libgloss: clean) \ || exit 1 +@endif target-libgloss .PHONY: maybe-distclean-target-libgloss distclean-target-libgloss maybe-distclean-target-libgloss: +@if target-libgloss +maybe-distclean-target-libgloss: distclean-target-libgloss distclean-target-libgloss: @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing distclean in $(TARGET_SUBDIR)/libgloss" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20733,15 +24436,19 @@ distclean-target-libgloss: distclean) \ || exit 1 +@endif target-libgloss .PHONY: maybe-maintainer-clean-target-libgloss maintainer-clean-target-libgloss maybe-maintainer-clean-target-libgloss: +@if target-libgloss +maybe-maintainer-clean-target-libgloss: maintainer-clean-target-libgloss maintainer-clean-target-libgloss: @[ -f $(TARGET_SUBDIR)/libgloss/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libgloss" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20754,10 +24461,13 @@ maintainer-clean-target-libgloss: maintainer-clean) \ || exit 1 +@endif target-libgloss .PHONY: configure-target-libiberty maybe-configure-target-libiberty maybe-configure-target-libiberty: +@if target-libiberty +maybe-configure-target-libiberty: configure-target-libiberty # There's only one multilib.out. Cleverer subdirs shouldn't need it copied. $(TARGET_SUBDIR)/libiberty/multilib.out: multilib.out @@ -20771,21 +24481,7 @@ configure-target-libiberty: $(TARGET_SUB r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - AR="$(AR_FOR_TARGET)"; export AR; \ - AS="$(AS_FOR_TARGET)"; export AS; \ - CC="$(CC_FOR_TARGET)"; export CC; \ - CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \ - CXX="$(CXX_FOR_TARGET)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \ - GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \ - DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \ - LD="$(LD_FOR_TARGET)"; export LD; \ - LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \ - NM="$(NM_FOR_TARGET)"; export NM; \ - RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \ - WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \ + $(NORMAL_TARGET_EXPORTS) \ echo Configuring in $(TARGET_SUBDIR)/libiberty; \ cd "$(TARGET_SUBDIR)/libiberty" || exit 1; \ case $(srcdir) in \ @@ -20804,42 +24500,57 @@ configure-target-libiberty: $(TARGET_SUB $(TARGET_CONFIGARGS) $${srcdiroption} \ --with-target-subdir="$(TARGET_SUBDIR)" \ || exit 1 +@endif target-libiberty .PHONY: all-target-libiberty maybe-all-target-libiberty maybe-all-target-libiberty: +@if target-libiberty +maybe-all-target-libiberty: all-target-libiberty all-target-libiberty: configure-target-libiberty @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/libiberty && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) all) +@endif target-libiberty .PHONY: check-target-libiberty maybe-check-target-libiberty maybe-check-target-libiberty: +@if target-libiberty +maybe-check-target-libiberty: check-target-libiberty check-target-libiberty: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/libiberty && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) check) +@endif target-libiberty .PHONY: install-target-libiberty maybe-install-target-libiberty maybe-install-target-libiberty: +@if target-libiberty +maybe-install-target-libiberty: install-target-libiberty install-target-libiberty: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/libiberty && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) install) +@endif target-libiberty # Other targets (info, dvi, etc.) .PHONY: maybe-info-target-libiberty info-target-libiberty maybe-info-target-libiberty: +@if target-libiberty +maybe-info-target-libiberty: info-target-libiberty info-target-libiberty: \ configure-target-libiberty @@ -20847,6 +24558,7 @@ info-target-libiberty: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing info in $(TARGET_SUBDIR)/libiberty" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20859,9 +24571,12 @@ info-target-libiberty: \ info) \ || exit 1 +@endif target-libiberty .PHONY: maybe-dvi-target-libiberty dvi-target-libiberty maybe-dvi-target-libiberty: +@if target-libiberty +maybe-dvi-target-libiberty: dvi-target-libiberty dvi-target-libiberty: \ configure-target-libiberty @@ -20869,6 +24584,7 @@ dvi-target-libiberty: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing dvi in $(TARGET_SUBDIR)/libiberty" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20881,9 +24597,12 @@ dvi-target-libiberty: \ dvi) \ || exit 1 +@endif target-libiberty .PHONY: maybe-TAGS-target-libiberty TAGS-target-libiberty maybe-TAGS-target-libiberty: +@if target-libiberty +maybe-TAGS-target-libiberty: TAGS-target-libiberty TAGS-target-libiberty: \ configure-target-libiberty @@ -20891,6 +24610,7 @@ TAGS-target-libiberty: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing TAGS in $(TARGET_SUBDIR)/libiberty" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20903,9 +24623,12 @@ TAGS-target-libiberty: \ TAGS) \ || exit 1 +@endif target-libiberty .PHONY: maybe-install-info-target-libiberty install-info-target-libiberty maybe-install-info-target-libiberty: +@if target-libiberty +maybe-install-info-target-libiberty: install-info-target-libiberty install-info-target-libiberty: \ configure-target-libiberty \ @@ -20914,6 +24637,7 @@ install-info-target-libiberty: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing install-info in $(TARGET_SUBDIR)/libiberty" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20926,9 +24650,12 @@ install-info-target-libiberty: \ install-info) \ || exit 1 +@endif target-libiberty .PHONY: maybe-installcheck-target-libiberty installcheck-target-libiberty maybe-installcheck-target-libiberty: +@if target-libiberty +maybe-installcheck-target-libiberty: installcheck-target-libiberty installcheck-target-libiberty: \ configure-target-libiberty @@ -20936,6 +24663,7 @@ installcheck-target-libiberty: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing installcheck in $(TARGET_SUBDIR)/libiberty" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20948,15 +24676,19 @@ installcheck-target-libiberty: \ installcheck) \ || exit 1 +@endif target-libiberty .PHONY: maybe-mostlyclean-target-libiberty mostlyclean-target-libiberty maybe-mostlyclean-target-libiberty: +@if target-libiberty +maybe-mostlyclean-target-libiberty: mostlyclean-target-libiberty mostlyclean-target-libiberty: @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing mostlyclean in $(TARGET_SUBDIR)/libiberty" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20969,15 +24701,19 @@ mostlyclean-target-libiberty: mostlyclean) \ || exit 1 +@endif target-libiberty .PHONY: maybe-clean-target-libiberty clean-target-libiberty maybe-clean-target-libiberty: +@if target-libiberty +maybe-clean-target-libiberty: clean-target-libiberty clean-target-libiberty: @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing clean in $(TARGET_SUBDIR)/libiberty" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -20990,15 +24726,19 @@ clean-target-libiberty: clean) \ || exit 1 +@endif target-libiberty .PHONY: maybe-distclean-target-libiberty distclean-target-libiberty maybe-distclean-target-libiberty: +@if target-libiberty +maybe-distclean-target-libiberty: distclean-target-libiberty distclean-target-libiberty: @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing distclean in $(TARGET_SUBDIR)/libiberty" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21011,15 +24751,19 @@ distclean-target-libiberty: distclean) \ || exit 1 +@endif target-libiberty .PHONY: maybe-maintainer-clean-target-libiberty maintainer-clean-target-libiberty maybe-maintainer-clean-target-libiberty: +@if target-libiberty +maybe-maintainer-clean-target-libiberty: maintainer-clean-target-libiberty maintainer-clean-target-libiberty: @[ -f $(TARGET_SUBDIR)/libiberty/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libiberty" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21032,10 +24776,13 @@ maintainer-clean-target-libiberty: maintainer-clean) \ || exit 1 +@endif target-libiberty .PHONY: configure-target-gperf maybe-configure-target-gperf maybe-configure-target-gperf: +@if target-gperf +maybe-configure-target-gperf: configure-target-gperf # There's only one multilib.out. Cleverer subdirs shouldn't need it copied. $(TARGET_SUBDIR)/gperf/multilib.out: multilib.out @@ -21049,21 +24796,7 @@ configure-target-gperf: $(TARGET_SUBDIR) r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - AR="$(AR_FOR_TARGET)"; export AR; \ - AS="$(AS_FOR_TARGET)"; export AS; \ - CC="$(CC_FOR_TARGET)"; export CC; \ - CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \ - CXX="$(CXX_FOR_TARGET)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \ - GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \ - DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \ - LD="$(LD_FOR_TARGET)"; export LD; \ - LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \ - NM="$(NM_FOR_TARGET)"; export NM; \ - RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \ - WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \ + $(NORMAL_TARGET_EXPORTS) \ echo Configuring in $(TARGET_SUBDIR)/gperf; \ cd "$(TARGET_SUBDIR)/gperf" || exit 1; \ case $(srcdir) in \ @@ -21082,42 +24815,57 @@ configure-target-gperf: $(TARGET_SUBDIR) $(TARGET_CONFIGARGS) $${srcdiroption} \ --with-target-subdir="$(TARGET_SUBDIR)" \ || exit 1 +@endif target-gperf .PHONY: all-target-gperf maybe-all-target-gperf maybe-all-target-gperf: +@if target-gperf +maybe-all-target-gperf: all-target-gperf all-target-gperf: configure-target-gperf @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/gperf && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) all) +@endif target-gperf .PHONY: check-target-gperf maybe-check-target-gperf maybe-check-target-gperf: +@if target-gperf +maybe-check-target-gperf: check-target-gperf check-target-gperf: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/gperf && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) check) +@endif target-gperf .PHONY: install-target-gperf maybe-install-target-gperf maybe-install-target-gperf: +@if target-gperf +maybe-install-target-gperf: install-target-gperf install-target-gperf: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/gperf && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) install) +@endif target-gperf # Other targets (info, dvi, etc.) .PHONY: maybe-info-target-gperf info-target-gperf maybe-info-target-gperf: +@if target-gperf +maybe-info-target-gperf: info-target-gperf info-target-gperf: \ configure-target-gperf @@ -21125,6 +24873,7 @@ info-target-gperf: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing info in $(TARGET_SUBDIR)/gperf" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21137,9 +24886,12 @@ info-target-gperf: \ info) \ || exit 1 +@endif target-gperf .PHONY: maybe-dvi-target-gperf dvi-target-gperf maybe-dvi-target-gperf: +@if target-gperf +maybe-dvi-target-gperf: dvi-target-gperf dvi-target-gperf: \ configure-target-gperf @@ -21147,6 +24899,7 @@ dvi-target-gperf: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing dvi in $(TARGET_SUBDIR)/gperf" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21159,9 +24912,12 @@ dvi-target-gperf: \ dvi) \ || exit 1 +@endif target-gperf .PHONY: maybe-TAGS-target-gperf TAGS-target-gperf maybe-TAGS-target-gperf: +@if target-gperf +maybe-TAGS-target-gperf: TAGS-target-gperf TAGS-target-gperf: \ configure-target-gperf @@ -21169,6 +24925,7 @@ TAGS-target-gperf: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing TAGS in $(TARGET_SUBDIR)/gperf" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21181,9 +24938,12 @@ TAGS-target-gperf: \ TAGS) \ || exit 1 +@endif target-gperf .PHONY: maybe-install-info-target-gperf install-info-target-gperf maybe-install-info-target-gperf: +@if target-gperf +maybe-install-info-target-gperf: install-info-target-gperf install-info-target-gperf: \ configure-target-gperf \ @@ -21192,6 +24952,7 @@ install-info-target-gperf: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing install-info in $(TARGET_SUBDIR)/gperf" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21204,9 +24965,12 @@ install-info-target-gperf: \ install-info) \ || exit 1 +@endif target-gperf .PHONY: maybe-installcheck-target-gperf installcheck-target-gperf maybe-installcheck-target-gperf: +@if target-gperf +maybe-installcheck-target-gperf: installcheck-target-gperf installcheck-target-gperf: \ configure-target-gperf @@ -21214,6 +24978,7 @@ installcheck-target-gperf: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing installcheck in $(TARGET_SUBDIR)/gperf" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21226,15 +24991,19 @@ installcheck-target-gperf: \ installcheck) \ || exit 1 +@endif target-gperf .PHONY: maybe-mostlyclean-target-gperf mostlyclean-target-gperf maybe-mostlyclean-target-gperf: +@if target-gperf +maybe-mostlyclean-target-gperf: mostlyclean-target-gperf mostlyclean-target-gperf: @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing mostlyclean in $(TARGET_SUBDIR)/gperf" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21247,15 +25016,19 @@ mostlyclean-target-gperf: mostlyclean) \ || exit 1 +@endif target-gperf .PHONY: maybe-clean-target-gperf clean-target-gperf maybe-clean-target-gperf: +@if target-gperf +maybe-clean-target-gperf: clean-target-gperf clean-target-gperf: @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing clean in $(TARGET_SUBDIR)/gperf" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21268,15 +25041,19 @@ clean-target-gperf: clean) \ || exit 1 +@endif target-gperf .PHONY: maybe-distclean-target-gperf distclean-target-gperf maybe-distclean-target-gperf: +@if target-gperf +maybe-distclean-target-gperf: distclean-target-gperf distclean-target-gperf: @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing distclean in $(TARGET_SUBDIR)/gperf" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21289,15 +25066,19 @@ distclean-target-gperf: distclean) \ || exit 1 +@endif target-gperf .PHONY: maybe-maintainer-clean-target-gperf maintainer-clean-target-gperf maybe-maintainer-clean-target-gperf: +@if target-gperf +maybe-maintainer-clean-target-gperf: maintainer-clean-target-gperf maintainer-clean-target-gperf: @[ -f $(TARGET_SUBDIR)/gperf/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing maintainer-clean in $(TARGET_SUBDIR)/gperf" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21310,10 +25091,13 @@ maintainer-clean-target-gperf: maintainer-clean) \ || exit 1 +@endif target-gperf .PHONY: configure-target-examples maybe-configure-target-examples maybe-configure-target-examples: +@if target-examples +maybe-configure-target-examples: configure-target-examples # There's only one multilib.out. Cleverer subdirs shouldn't need it copied. $(TARGET_SUBDIR)/examples/multilib.out: multilib.out @@ -21327,21 +25111,7 @@ configure-target-examples: $(TARGET_SUBD r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - AR="$(AR_FOR_TARGET)"; export AR; \ - AS="$(AS_FOR_TARGET)"; export AS; \ - CC="$(CC_FOR_TARGET)"; export CC; \ - CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \ - CXX="$(CXX_FOR_TARGET)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \ - GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \ - DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \ - LD="$(LD_FOR_TARGET)"; export LD; \ - LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \ - NM="$(NM_FOR_TARGET)"; export NM; \ - RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \ - WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \ + $(NORMAL_TARGET_EXPORTS) \ echo Configuring in $(TARGET_SUBDIR)/examples; \ cd "$(TARGET_SUBDIR)/examples" || exit 1; \ case $(srcdir) in \ @@ -21360,34 +25130,47 @@ configure-target-examples: $(TARGET_SUBD $(TARGET_CONFIGARGS) $${srcdiroption} \ --with-target-subdir="$(TARGET_SUBDIR)" \ || exit 1 +@endif target-examples .PHONY: all-target-examples maybe-all-target-examples maybe-all-target-examples: +@if target-examples +maybe-all-target-examples: all-target-examples all-target-examples: configure-target-examples @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/examples && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) all) +@endif target-examples .PHONY: check-target-examples maybe-check-target-examples maybe-check-target-examples: +@if target-examples +maybe-check-target-examples: check-target-examples # Dummy target for uncheckable module. check-target-examples: +@endif target-examples .PHONY: install-target-examples maybe-install-target-examples maybe-install-target-examples: +@if target-examples +maybe-install-target-examples: install-target-examples # Dummy target for uninstallable. install-target-examples: +@endif target-examples # Other targets (info, dvi, etc.) .PHONY: maybe-info-target-examples info-target-examples maybe-info-target-examples: +@if target-examples +maybe-info-target-examples: info-target-examples info-target-examples: \ configure-target-examples @@ -21395,6 +25178,7 @@ info-target-examples: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing info in $(TARGET_SUBDIR)/examples" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21407,9 +25191,12 @@ info-target-examples: \ info) \ || exit 1 +@endif target-examples .PHONY: maybe-dvi-target-examples dvi-target-examples maybe-dvi-target-examples: +@if target-examples +maybe-dvi-target-examples: dvi-target-examples dvi-target-examples: \ configure-target-examples @@ -21417,6 +25204,7 @@ dvi-target-examples: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing dvi in $(TARGET_SUBDIR)/examples" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21429,9 +25217,12 @@ dvi-target-examples: \ dvi) \ || exit 1 +@endif target-examples .PHONY: maybe-TAGS-target-examples TAGS-target-examples maybe-TAGS-target-examples: +@if target-examples +maybe-TAGS-target-examples: TAGS-target-examples TAGS-target-examples: \ configure-target-examples @@ -21439,6 +25230,7 @@ TAGS-target-examples: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing TAGS in $(TARGET_SUBDIR)/examples" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21451,9 +25243,12 @@ TAGS-target-examples: \ TAGS) \ || exit 1 +@endif target-examples .PHONY: maybe-install-info-target-examples install-info-target-examples maybe-install-info-target-examples: +@if target-examples +maybe-install-info-target-examples: install-info-target-examples install-info-target-examples: \ configure-target-examples \ @@ -21462,6 +25257,7 @@ install-info-target-examples: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing install-info in $(TARGET_SUBDIR)/examples" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21474,9 +25270,12 @@ install-info-target-examples: \ install-info) \ || exit 1 +@endif target-examples .PHONY: maybe-installcheck-target-examples installcheck-target-examples maybe-installcheck-target-examples: +@if target-examples +maybe-installcheck-target-examples: installcheck-target-examples installcheck-target-examples: \ configure-target-examples @@ -21484,6 +25283,7 @@ installcheck-target-examples: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing installcheck in $(TARGET_SUBDIR)/examples" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21496,15 +25296,19 @@ installcheck-target-examples: \ installcheck) \ || exit 1 +@endif target-examples .PHONY: maybe-mostlyclean-target-examples mostlyclean-target-examples maybe-mostlyclean-target-examples: +@if target-examples +maybe-mostlyclean-target-examples: mostlyclean-target-examples mostlyclean-target-examples: @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing mostlyclean in $(TARGET_SUBDIR)/examples" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21517,15 +25321,19 @@ mostlyclean-target-examples: mostlyclean) \ || exit 1 +@endif target-examples .PHONY: maybe-clean-target-examples clean-target-examples maybe-clean-target-examples: +@if target-examples +maybe-clean-target-examples: clean-target-examples clean-target-examples: @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing clean in $(TARGET_SUBDIR)/examples" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21538,15 +25346,19 @@ clean-target-examples: clean) \ || exit 1 +@endif target-examples .PHONY: maybe-distclean-target-examples distclean-target-examples maybe-distclean-target-examples: +@if target-examples +maybe-distclean-target-examples: distclean-target-examples distclean-target-examples: @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing distclean in $(TARGET_SUBDIR)/examples" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21559,15 +25371,19 @@ distclean-target-examples: distclean) \ || exit 1 +@endif target-examples .PHONY: maybe-maintainer-clean-target-examples maintainer-clean-target-examples maybe-maintainer-clean-target-examples: +@if target-examples +maybe-maintainer-clean-target-examples: maintainer-clean-target-examples maintainer-clean-target-examples: @[ -f $(TARGET_SUBDIR)/examples/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing maintainer-clean in $(TARGET_SUBDIR)/examples" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21580,38 +25396,27 @@ maintainer-clean-target-examples: maintainer-clean) \ || exit 1 +@endif target-examples .PHONY: configure-target-libffi maybe-configure-target-libffi maybe-configure-target-libffi: +@if target-libffi +maybe-configure-target-libffi: configure-target-libffi -# There's only one multilib.out. Cleverer subdirs shouldn't need it copied. -$(TARGET_SUBDIR)/libffi/multilib.out: multilib.out - $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libffi ; \ - rm -f $(TARGET_SUBDIR)/libffi/Makefile || : ; \ - cp multilib.out $(TARGET_SUBDIR)/libffi/multilib.out - -configure-target-libffi: $(TARGET_SUBDIR)/libffi/multilib.out - @test ! -f $(TARGET_SUBDIR)/libffi/Makefile || exit 0; \ - $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libffi ; \ - r=`${PWD_COMMAND}`; export r; \ - s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - $(SET_LIB_PATH) \ - AR="$(AR_FOR_TARGET)"; export AR; \ - AS="$(AS_FOR_TARGET)"; export AS; \ - CC="$(CC_FOR_TARGET)"; export CC; \ - CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \ - CXX="$(CXX_FOR_TARGET)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \ - GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \ - DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \ - LD="$(LD_FOR_TARGET)"; export LD; \ - LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \ - NM="$(NM_FOR_TARGET)"; export NM; \ - RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \ - WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \ +# There's only one multilib.out. Cleverer subdirs shouldn't need it copied. +$(TARGET_SUBDIR)/libffi/multilib.out: multilib.out + $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libffi ; \ + rm -f $(TARGET_SUBDIR)/libffi/Makefile || : ; \ + cp multilib.out $(TARGET_SUBDIR)/libffi/multilib.out + +configure-target-libffi: $(TARGET_SUBDIR)/libffi/multilib.out + @test ! -f $(TARGET_SUBDIR)/libffi/Makefile || exit 0; \ + $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/libffi ; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo Configuring in $(TARGET_SUBDIR)/libffi; \ cd "$(TARGET_SUBDIR)/libffi" || exit 1; \ case $(srcdir) in \ @@ -21630,42 +25435,57 @@ configure-target-libffi: $(TARGET_SUBDIR $(TARGET_CONFIGARGS) $${srcdiroption} \ --with-target-subdir="$(TARGET_SUBDIR)" \ || exit 1 +@endif target-libffi .PHONY: all-target-libffi maybe-all-target-libffi maybe-all-target-libffi: +@if target-libffi +maybe-all-target-libffi: all-target-libffi all-target-libffi: configure-target-libffi @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/libffi && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) all) +@endif target-libffi .PHONY: check-target-libffi maybe-check-target-libffi maybe-check-target-libffi: +@if target-libffi +maybe-check-target-libffi: check-target-libffi check-target-libffi: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/libffi && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) check) +@endif target-libffi .PHONY: install-target-libffi maybe-install-target-libffi maybe-install-target-libffi: +@if target-libffi +maybe-install-target-libffi: install-target-libffi install-target-libffi: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/libffi && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) install) +@endif target-libffi # Other targets (info, dvi, etc.) .PHONY: maybe-info-target-libffi info-target-libffi maybe-info-target-libffi: +@if target-libffi +maybe-info-target-libffi: info-target-libffi info-target-libffi: \ configure-target-libffi @@ -21673,6 +25493,7 @@ info-target-libffi: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing info in $(TARGET_SUBDIR)/libffi" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21685,9 +25506,12 @@ info-target-libffi: \ info) \ || exit 1 +@endif target-libffi .PHONY: maybe-dvi-target-libffi dvi-target-libffi maybe-dvi-target-libffi: +@if target-libffi +maybe-dvi-target-libffi: dvi-target-libffi dvi-target-libffi: \ configure-target-libffi @@ -21695,6 +25519,7 @@ dvi-target-libffi: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing dvi in $(TARGET_SUBDIR)/libffi" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21707,9 +25532,12 @@ dvi-target-libffi: \ dvi) \ || exit 1 +@endif target-libffi .PHONY: maybe-TAGS-target-libffi TAGS-target-libffi maybe-TAGS-target-libffi: +@if target-libffi +maybe-TAGS-target-libffi: TAGS-target-libffi TAGS-target-libffi: \ configure-target-libffi @@ -21717,6 +25545,7 @@ TAGS-target-libffi: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing TAGS in $(TARGET_SUBDIR)/libffi" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21729,9 +25558,12 @@ TAGS-target-libffi: \ TAGS) \ || exit 1 +@endif target-libffi .PHONY: maybe-install-info-target-libffi install-info-target-libffi maybe-install-info-target-libffi: +@if target-libffi +maybe-install-info-target-libffi: install-info-target-libffi install-info-target-libffi: \ configure-target-libffi \ @@ -21740,6 +25572,7 @@ install-info-target-libffi: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing install-info in $(TARGET_SUBDIR)/libffi" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21752,9 +25585,12 @@ install-info-target-libffi: \ install-info) \ || exit 1 +@endif target-libffi .PHONY: maybe-installcheck-target-libffi installcheck-target-libffi maybe-installcheck-target-libffi: +@if target-libffi +maybe-installcheck-target-libffi: installcheck-target-libffi installcheck-target-libffi: \ configure-target-libffi @@ -21762,6 +25598,7 @@ installcheck-target-libffi: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing installcheck in $(TARGET_SUBDIR)/libffi" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21774,15 +25611,19 @@ installcheck-target-libffi: \ installcheck) \ || exit 1 +@endif target-libffi .PHONY: maybe-mostlyclean-target-libffi mostlyclean-target-libffi maybe-mostlyclean-target-libffi: +@if target-libffi +maybe-mostlyclean-target-libffi: mostlyclean-target-libffi mostlyclean-target-libffi: @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing mostlyclean in $(TARGET_SUBDIR)/libffi" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21795,15 +25636,19 @@ mostlyclean-target-libffi: mostlyclean) \ || exit 1 +@endif target-libffi .PHONY: maybe-clean-target-libffi clean-target-libffi maybe-clean-target-libffi: +@if target-libffi +maybe-clean-target-libffi: clean-target-libffi clean-target-libffi: @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing clean in $(TARGET_SUBDIR)/libffi" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21816,15 +25661,19 @@ clean-target-libffi: clean) \ || exit 1 +@endif target-libffi .PHONY: maybe-distclean-target-libffi distclean-target-libffi maybe-distclean-target-libffi: +@if target-libffi +maybe-distclean-target-libffi: distclean-target-libffi distclean-target-libffi: @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing distclean in $(TARGET_SUBDIR)/libffi" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21837,15 +25686,19 @@ distclean-target-libffi: distclean) \ || exit 1 +@endif target-libffi .PHONY: maybe-maintainer-clean-target-libffi maintainer-clean-target-libffi maybe-maintainer-clean-target-libffi: +@if target-libffi +maybe-maintainer-clean-target-libffi: maintainer-clean-target-libffi maintainer-clean-target-libffi: @[ -f $(TARGET_SUBDIR)/libffi/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libffi" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21858,10 +25711,13 @@ maintainer-clean-target-libffi: maintainer-clean) \ || exit 1 +@endif target-libffi .PHONY: configure-target-libjava maybe-configure-target-libjava maybe-configure-target-libjava: +@if target-libjava +maybe-configure-target-libjava: configure-target-libjava # There's only one multilib.out. Cleverer subdirs shouldn't need it copied. $(TARGET_SUBDIR)/libjava/multilib.out: multilib.out @@ -21875,22 +25731,7 @@ configure-target-libjava: $(TARGET_SUBDI r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - AR="$(AR_FOR_TARGET)"; export AR; \ - AS="$(AS_FOR_TARGET)"; export AS; \ - CC="$(CC_FOR_TARGET)"; export CC; \ - CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \ - CXX_FOR_TARGET="$(RAW_CXX_FOR_TARGET)"; export CXX_FOR_TARGET; \ - CXX="$(RAW_CXX_FOR_TARGET)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \ - GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \ - DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \ - LD="$(LD_FOR_TARGET)"; export LD; \ - LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \ - NM="$(NM_FOR_TARGET)"; export NM; \ - RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \ - WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \ + $(RAW_CXX_TARGET_EXPORTS) \ echo Configuring in $(TARGET_SUBDIR)/libjava; \ cd "$(TARGET_SUBDIR)/libjava" || exit 1; \ case $(srcdir) in \ @@ -21909,42 +25750,57 @@ configure-target-libjava: $(TARGET_SUBDI $(TARGET_CONFIGARGS) $${srcdiroption} \ --with-target-subdir="$(TARGET_SUBDIR)" \ || exit 1 +@endif target-libjava .PHONY: all-target-libjava maybe-all-target-libjava maybe-all-target-libjava: +@if target-libjava +maybe-all-target-libjava: all-target-libjava all-target-libjava: configure-target-libjava @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(RAW_CXX_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/libjava && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' all) +@endif target-libjava .PHONY: check-target-libjava maybe-check-target-libjava maybe-check-target-libjava: +@if target-libjava +maybe-check-target-libjava: check-target-libjava check-target-libjava: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(RAW_CXX_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/libjava && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' check) +@endif target-libjava .PHONY: install-target-libjava maybe-install-target-libjava maybe-install-target-libjava: +@if target-libjava +maybe-install-target-libjava: install-target-libjava install-target-libjava: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(RAW_CXX_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/libjava && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) install) +@endif target-libjava # Other targets (info, dvi, etc.) .PHONY: maybe-info-target-libjava info-target-libjava maybe-info-target-libjava: +@if target-libjava +maybe-info-target-libjava: info-target-libjava info-target-libjava: \ configure-target-libjava @@ -21952,6 +25808,7 @@ info-target-libjava: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(RAW_CXX_TARGET_EXPORTS) \ echo "Doing info in $(TARGET_SUBDIR)/libjava" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21964,9 +25821,12 @@ info-target-libjava: \ info) \ || exit 1 +@endif target-libjava .PHONY: maybe-dvi-target-libjava dvi-target-libjava maybe-dvi-target-libjava: +@if target-libjava +maybe-dvi-target-libjava: dvi-target-libjava dvi-target-libjava: \ configure-target-libjava @@ -21974,6 +25834,7 @@ dvi-target-libjava: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(RAW_CXX_TARGET_EXPORTS) \ echo "Doing dvi in $(TARGET_SUBDIR)/libjava" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -21986,9 +25847,12 @@ dvi-target-libjava: \ dvi) \ || exit 1 +@endif target-libjava .PHONY: maybe-TAGS-target-libjava TAGS-target-libjava maybe-TAGS-target-libjava: +@if target-libjava +maybe-TAGS-target-libjava: TAGS-target-libjava TAGS-target-libjava: \ configure-target-libjava @@ -21996,6 +25860,7 @@ TAGS-target-libjava: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(RAW_CXX_TARGET_EXPORTS) \ echo "Doing TAGS in $(TARGET_SUBDIR)/libjava" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22008,9 +25873,12 @@ TAGS-target-libjava: \ TAGS) \ || exit 1 +@endif target-libjava .PHONY: maybe-install-info-target-libjava install-info-target-libjava maybe-install-info-target-libjava: +@if target-libjava +maybe-install-info-target-libjava: install-info-target-libjava install-info-target-libjava: \ configure-target-libjava \ @@ -22019,6 +25887,7 @@ install-info-target-libjava: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(RAW_CXX_TARGET_EXPORTS) \ echo "Doing install-info in $(TARGET_SUBDIR)/libjava" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22031,9 +25900,12 @@ install-info-target-libjava: \ install-info) \ || exit 1 +@endif target-libjava .PHONY: maybe-installcheck-target-libjava installcheck-target-libjava maybe-installcheck-target-libjava: +@if target-libjava +maybe-installcheck-target-libjava: installcheck-target-libjava installcheck-target-libjava: \ configure-target-libjava @@ -22041,6 +25913,7 @@ installcheck-target-libjava: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(RAW_CXX_TARGET_EXPORTS) \ echo "Doing installcheck in $(TARGET_SUBDIR)/libjava" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22053,15 +25926,19 @@ installcheck-target-libjava: \ installcheck) \ || exit 1 +@endif target-libjava .PHONY: maybe-mostlyclean-target-libjava mostlyclean-target-libjava maybe-mostlyclean-target-libjava: +@if target-libjava +maybe-mostlyclean-target-libjava: mostlyclean-target-libjava mostlyclean-target-libjava: @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(RAW_CXX_TARGET_EXPORTS) \ echo "Doing mostlyclean in $(TARGET_SUBDIR)/libjava" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22074,15 +25951,19 @@ mostlyclean-target-libjava: mostlyclean) \ || exit 1 +@endif target-libjava .PHONY: maybe-clean-target-libjava clean-target-libjava maybe-clean-target-libjava: +@if target-libjava +maybe-clean-target-libjava: clean-target-libjava clean-target-libjava: @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(RAW_CXX_TARGET_EXPORTS) \ echo "Doing clean in $(TARGET_SUBDIR)/libjava" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22095,15 +25976,19 @@ clean-target-libjava: clean) \ || exit 1 +@endif target-libjava .PHONY: maybe-distclean-target-libjava distclean-target-libjava maybe-distclean-target-libjava: +@if target-libjava +maybe-distclean-target-libjava: distclean-target-libjava distclean-target-libjava: @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(RAW_CXX_TARGET_EXPORTS) \ echo "Doing distclean in $(TARGET_SUBDIR)/libjava" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22116,15 +26001,19 @@ distclean-target-libjava: distclean) \ || exit 1 +@endif target-libjava .PHONY: maybe-maintainer-clean-target-libjava maintainer-clean-target-libjava maybe-maintainer-clean-target-libjava: +@if target-libjava +maybe-maintainer-clean-target-libjava: maintainer-clean-target-libjava maintainer-clean-target-libjava: @[ -f $(TARGET_SUBDIR)/libjava/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(RAW_CXX_TARGET_EXPORTS) \ echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libjava" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22137,10 +26026,13 @@ maintainer-clean-target-libjava: maintainer-clean) \ || exit 1 +@endif target-libjava .PHONY: configure-target-zlib maybe-configure-target-zlib maybe-configure-target-zlib: +@if target-zlib +maybe-configure-target-zlib: configure-target-zlib # There's only one multilib.out. Cleverer subdirs shouldn't need it copied. $(TARGET_SUBDIR)/zlib/multilib.out: multilib.out @@ -22154,21 +26046,7 @@ configure-target-zlib: $(TARGET_SUBDIR)/ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - AR="$(AR_FOR_TARGET)"; export AR; \ - AS="$(AS_FOR_TARGET)"; export AS; \ - CC="$(CC_FOR_TARGET)"; export CC; \ - CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \ - CXX="$(CXX_FOR_TARGET)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \ - GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \ - DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \ - LD="$(LD_FOR_TARGET)"; export LD; \ - LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \ - NM="$(NM_FOR_TARGET)"; export NM; \ - RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \ - WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \ + $(NORMAL_TARGET_EXPORTS) \ echo Configuring in $(TARGET_SUBDIR)/zlib; \ cd "$(TARGET_SUBDIR)/zlib" || exit 1; \ case $(srcdir) in \ @@ -22209,42 +26087,57 @@ configure-target-zlib: $(TARGET_SUBDIR)/ $(TARGET_CONFIGARGS) $${srcdiroption} \ --with-target-subdir="$(TARGET_SUBDIR)" \ || exit 1 +@endif target-zlib .PHONY: all-target-zlib maybe-all-target-zlib maybe-all-target-zlib: +@if target-zlib +maybe-all-target-zlib: all-target-zlib all-target-zlib: configure-target-zlib @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/zlib && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) all) +@endif target-zlib .PHONY: check-target-zlib maybe-check-target-zlib maybe-check-target-zlib: +@if target-zlib +maybe-check-target-zlib: check-target-zlib check-target-zlib: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/zlib && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) check) +@endif target-zlib .PHONY: install-target-zlib maybe-install-target-zlib maybe-install-target-zlib: +@if target-zlib +maybe-install-target-zlib: install-target-zlib install-target-zlib: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/zlib && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) install) +@endif target-zlib # Other targets (info, dvi, etc.) .PHONY: maybe-info-target-zlib info-target-zlib maybe-info-target-zlib: +@if target-zlib +maybe-info-target-zlib: info-target-zlib info-target-zlib: \ configure-target-zlib @@ -22252,6 +26145,7 @@ info-target-zlib: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing info in $(TARGET_SUBDIR)/zlib" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22264,9 +26158,12 @@ info-target-zlib: \ info) \ || exit 1 +@endif target-zlib .PHONY: maybe-dvi-target-zlib dvi-target-zlib maybe-dvi-target-zlib: +@if target-zlib +maybe-dvi-target-zlib: dvi-target-zlib dvi-target-zlib: \ configure-target-zlib @@ -22274,6 +26171,7 @@ dvi-target-zlib: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing dvi in $(TARGET_SUBDIR)/zlib" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22286,9 +26184,12 @@ dvi-target-zlib: \ dvi) \ || exit 1 +@endif target-zlib .PHONY: maybe-TAGS-target-zlib TAGS-target-zlib maybe-TAGS-target-zlib: +@if target-zlib +maybe-TAGS-target-zlib: TAGS-target-zlib TAGS-target-zlib: \ configure-target-zlib @@ -22296,6 +26197,7 @@ TAGS-target-zlib: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing TAGS in $(TARGET_SUBDIR)/zlib" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22308,9 +26210,12 @@ TAGS-target-zlib: \ TAGS) \ || exit 1 +@endif target-zlib .PHONY: maybe-install-info-target-zlib install-info-target-zlib maybe-install-info-target-zlib: +@if target-zlib +maybe-install-info-target-zlib: install-info-target-zlib install-info-target-zlib: \ configure-target-zlib \ @@ -22319,6 +26224,7 @@ install-info-target-zlib: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing install-info in $(TARGET_SUBDIR)/zlib" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22331,9 +26237,12 @@ install-info-target-zlib: \ install-info) \ || exit 1 +@endif target-zlib .PHONY: maybe-installcheck-target-zlib installcheck-target-zlib maybe-installcheck-target-zlib: +@if target-zlib +maybe-installcheck-target-zlib: installcheck-target-zlib installcheck-target-zlib: \ configure-target-zlib @@ -22341,6 +26250,7 @@ installcheck-target-zlib: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing installcheck in $(TARGET_SUBDIR)/zlib" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22353,15 +26263,19 @@ installcheck-target-zlib: \ installcheck) \ || exit 1 +@endif target-zlib .PHONY: maybe-mostlyclean-target-zlib mostlyclean-target-zlib maybe-mostlyclean-target-zlib: +@if target-zlib +maybe-mostlyclean-target-zlib: mostlyclean-target-zlib mostlyclean-target-zlib: @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing mostlyclean in $(TARGET_SUBDIR)/zlib" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22374,15 +26288,19 @@ mostlyclean-target-zlib: mostlyclean) \ || exit 1 +@endif target-zlib .PHONY: maybe-clean-target-zlib clean-target-zlib maybe-clean-target-zlib: +@if target-zlib +maybe-clean-target-zlib: clean-target-zlib clean-target-zlib: @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing clean in $(TARGET_SUBDIR)/zlib" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22395,15 +26313,19 @@ clean-target-zlib: clean) \ || exit 1 +@endif target-zlib .PHONY: maybe-distclean-target-zlib distclean-target-zlib maybe-distclean-target-zlib: +@if target-zlib +maybe-distclean-target-zlib: distclean-target-zlib distclean-target-zlib: @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing distclean in $(TARGET_SUBDIR)/zlib" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22416,15 +26338,19 @@ distclean-target-zlib: distclean) \ || exit 1 +@endif target-zlib .PHONY: maybe-maintainer-clean-target-zlib maintainer-clean-target-zlib maybe-maintainer-clean-target-zlib: +@if target-zlib +maybe-maintainer-clean-target-zlib: maintainer-clean-target-zlib maintainer-clean-target-zlib: @[ -f $(TARGET_SUBDIR)/zlib/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing maintainer-clean in $(TARGET_SUBDIR)/zlib" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22437,10 +26363,13 @@ maintainer-clean-target-zlib: maintainer-clean) \ || exit 1 +@endif target-zlib .PHONY: configure-target-boehm-gc maybe-configure-target-boehm-gc maybe-configure-target-boehm-gc: +@if target-boehm-gc +maybe-configure-target-boehm-gc: configure-target-boehm-gc # There's only one multilib.out. Cleverer subdirs shouldn't need it copied. $(TARGET_SUBDIR)/boehm-gc/multilib.out: multilib.out @@ -22454,21 +26383,7 @@ configure-target-boehm-gc: $(TARGET_SUBD r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - AR="$(AR_FOR_TARGET)"; export AR; \ - AS="$(AS_FOR_TARGET)"; export AS; \ - CC="$(CC_FOR_TARGET)"; export CC; \ - CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \ - CXX="$(CXX_FOR_TARGET)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \ - GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \ - DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \ - LD="$(LD_FOR_TARGET)"; export LD; \ - LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \ - NM="$(NM_FOR_TARGET)"; export NM; \ - RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \ - WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \ + $(NORMAL_TARGET_EXPORTS) \ echo Configuring in $(TARGET_SUBDIR)/boehm-gc; \ cd "$(TARGET_SUBDIR)/boehm-gc" || exit 1; \ case $(srcdir) in \ @@ -22487,42 +26402,57 @@ configure-target-boehm-gc: $(TARGET_SUBD $(TARGET_CONFIGARGS) $${srcdiroption} \ --with-target-subdir="$(TARGET_SUBDIR)" \ || exit 1 +@endif target-boehm-gc .PHONY: all-target-boehm-gc maybe-all-target-boehm-gc maybe-all-target-boehm-gc: +@if target-boehm-gc +maybe-all-target-boehm-gc: all-target-boehm-gc all-target-boehm-gc: configure-target-boehm-gc @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/boehm-gc && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) all) +@endif target-boehm-gc .PHONY: check-target-boehm-gc maybe-check-target-boehm-gc maybe-check-target-boehm-gc: +@if target-boehm-gc +maybe-check-target-boehm-gc: check-target-boehm-gc check-target-boehm-gc: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/boehm-gc && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) check) +@endif target-boehm-gc .PHONY: install-target-boehm-gc maybe-install-target-boehm-gc maybe-install-target-boehm-gc: +@if target-boehm-gc +maybe-install-target-boehm-gc: install-target-boehm-gc install-target-boehm-gc: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/boehm-gc && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) install) +@endif target-boehm-gc # Other targets (info, dvi, etc.) .PHONY: maybe-info-target-boehm-gc info-target-boehm-gc maybe-info-target-boehm-gc: +@if target-boehm-gc +maybe-info-target-boehm-gc: info-target-boehm-gc info-target-boehm-gc: \ configure-target-boehm-gc @@ -22530,6 +26460,7 @@ info-target-boehm-gc: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing info in $(TARGET_SUBDIR)/boehm-gc" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22542,9 +26473,12 @@ info-target-boehm-gc: \ info) \ || exit 1 +@endif target-boehm-gc .PHONY: maybe-dvi-target-boehm-gc dvi-target-boehm-gc maybe-dvi-target-boehm-gc: +@if target-boehm-gc +maybe-dvi-target-boehm-gc: dvi-target-boehm-gc dvi-target-boehm-gc: \ configure-target-boehm-gc @@ -22552,6 +26486,7 @@ dvi-target-boehm-gc: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing dvi in $(TARGET_SUBDIR)/boehm-gc" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22564,9 +26499,12 @@ dvi-target-boehm-gc: \ dvi) \ || exit 1 +@endif target-boehm-gc .PHONY: maybe-TAGS-target-boehm-gc TAGS-target-boehm-gc maybe-TAGS-target-boehm-gc: +@if target-boehm-gc +maybe-TAGS-target-boehm-gc: TAGS-target-boehm-gc TAGS-target-boehm-gc: \ configure-target-boehm-gc @@ -22574,6 +26512,7 @@ TAGS-target-boehm-gc: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing TAGS in $(TARGET_SUBDIR)/boehm-gc" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22586,9 +26525,12 @@ TAGS-target-boehm-gc: \ TAGS) \ || exit 1 +@endif target-boehm-gc .PHONY: maybe-install-info-target-boehm-gc install-info-target-boehm-gc maybe-install-info-target-boehm-gc: +@if target-boehm-gc +maybe-install-info-target-boehm-gc: install-info-target-boehm-gc install-info-target-boehm-gc: \ configure-target-boehm-gc \ @@ -22597,6 +26539,7 @@ install-info-target-boehm-gc: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing install-info in $(TARGET_SUBDIR)/boehm-gc" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22609,9 +26552,12 @@ install-info-target-boehm-gc: \ install-info) \ || exit 1 +@endif target-boehm-gc .PHONY: maybe-installcheck-target-boehm-gc installcheck-target-boehm-gc maybe-installcheck-target-boehm-gc: +@if target-boehm-gc +maybe-installcheck-target-boehm-gc: installcheck-target-boehm-gc installcheck-target-boehm-gc: \ configure-target-boehm-gc @@ -22619,6 +26565,7 @@ installcheck-target-boehm-gc: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing installcheck in $(TARGET_SUBDIR)/boehm-gc" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22631,15 +26578,19 @@ installcheck-target-boehm-gc: \ installcheck) \ || exit 1 +@endif target-boehm-gc .PHONY: maybe-mostlyclean-target-boehm-gc mostlyclean-target-boehm-gc maybe-mostlyclean-target-boehm-gc: +@if target-boehm-gc +maybe-mostlyclean-target-boehm-gc: mostlyclean-target-boehm-gc mostlyclean-target-boehm-gc: @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing mostlyclean in $(TARGET_SUBDIR)/boehm-gc" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22652,15 +26603,19 @@ mostlyclean-target-boehm-gc: mostlyclean) \ || exit 1 +@endif target-boehm-gc .PHONY: maybe-clean-target-boehm-gc clean-target-boehm-gc maybe-clean-target-boehm-gc: +@if target-boehm-gc +maybe-clean-target-boehm-gc: clean-target-boehm-gc clean-target-boehm-gc: @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing clean in $(TARGET_SUBDIR)/boehm-gc" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22673,15 +26628,19 @@ clean-target-boehm-gc: clean) \ || exit 1 +@endif target-boehm-gc .PHONY: maybe-distclean-target-boehm-gc distclean-target-boehm-gc maybe-distclean-target-boehm-gc: +@if target-boehm-gc +maybe-distclean-target-boehm-gc: distclean-target-boehm-gc distclean-target-boehm-gc: @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing distclean in $(TARGET_SUBDIR)/boehm-gc" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22694,15 +26653,19 @@ distclean-target-boehm-gc: distclean) \ || exit 1 +@endif target-boehm-gc .PHONY: maybe-maintainer-clean-target-boehm-gc maintainer-clean-target-boehm-gc maybe-maintainer-clean-target-boehm-gc: +@if target-boehm-gc +maybe-maintainer-clean-target-boehm-gc: maintainer-clean-target-boehm-gc maintainer-clean-target-boehm-gc: @[ -f $(TARGET_SUBDIR)/boehm-gc/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing maintainer-clean in $(TARGET_SUBDIR)/boehm-gc" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22715,10 +26678,13 @@ maintainer-clean-target-boehm-gc: maintainer-clean) \ || exit 1 +@endif target-boehm-gc .PHONY: configure-target-qthreads maybe-configure-target-qthreads maybe-configure-target-qthreads: +@if target-qthreads +maybe-configure-target-qthreads: configure-target-qthreads # There's only one multilib.out. Cleverer subdirs shouldn't need it copied. $(TARGET_SUBDIR)/qthreads/multilib.out: multilib.out @@ -22732,21 +26698,7 @@ configure-target-qthreads: $(TARGET_SUBD r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - AR="$(AR_FOR_TARGET)"; export AR; \ - AS="$(AS_FOR_TARGET)"; export AS; \ - CC="$(CC_FOR_TARGET)"; export CC; \ - CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \ - CXX="$(CXX_FOR_TARGET)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \ - GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \ - DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \ - LD="$(LD_FOR_TARGET)"; export LD; \ - LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \ - NM="$(NM_FOR_TARGET)"; export NM; \ - RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \ - WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \ + $(NORMAL_TARGET_EXPORTS) \ echo Configuring in $(TARGET_SUBDIR)/qthreads; \ cd "$(TARGET_SUBDIR)/qthreads" || exit 1; \ case $(srcdir) in \ @@ -22765,42 +26717,57 @@ configure-target-qthreads: $(TARGET_SUBD $(TARGET_CONFIGARGS) $${srcdiroption} \ --with-target-subdir="$(TARGET_SUBDIR)" \ || exit 1 +@endif target-qthreads .PHONY: all-target-qthreads maybe-all-target-qthreads maybe-all-target-qthreads: +@if target-qthreads +maybe-all-target-qthreads: all-target-qthreads all-target-qthreads: configure-target-qthreads @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/qthreads && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) all) +@endif target-qthreads .PHONY: check-target-qthreads maybe-check-target-qthreads maybe-check-target-qthreads: +@if target-qthreads +maybe-check-target-qthreads: check-target-qthreads check-target-qthreads: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/qthreads && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) check) +@endif target-qthreads .PHONY: install-target-qthreads maybe-install-target-qthreads maybe-install-target-qthreads: +@if target-qthreads +maybe-install-target-qthreads: install-target-qthreads install-target-qthreads: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/qthreads && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) install) +@endif target-qthreads # Other targets (info, dvi, etc.) .PHONY: maybe-info-target-qthreads info-target-qthreads maybe-info-target-qthreads: +@if target-qthreads +maybe-info-target-qthreads: info-target-qthreads info-target-qthreads: \ configure-target-qthreads @@ -22808,6 +26775,7 @@ info-target-qthreads: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing info in $(TARGET_SUBDIR)/qthreads" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22820,9 +26788,12 @@ info-target-qthreads: \ info) \ || exit 1 +@endif target-qthreads .PHONY: maybe-dvi-target-qthreads dvi-target-qthreads maybe-dvi-target-qthreads: +@if target-qthreads +maybe-dvi-target-qthreads: dvi-target-qthreads dvi-target-qthreads: \ configure-target-qthreads @@ -22830,6 +26801,7 @@ dvi-target-qthreads: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing dvi in $(TARGET_SUBDIR)/qthreads" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22842,9 +26814,12 @@ dvi-target-qthreads: \ dvi) \ || exit 1 +@endif target-qthreads .PHONY: maybe-TAGS-target-qthreads TAGS-target-qthreads maybe-TAGS-target-qthreads: +@if target-qthreads +maybe-TAGS-target-qthreads: TAGS-target-qthreads TAGS-target-qthreads: \ configure-target-qthreads @@ -22852,6 +26827,7 @@ TAGS-target-qthreads: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing TAGS in $(TARGET_SUBDIR)/qthreads" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22864,9 +26840,12 @@ TAGS-target-qthreads: \ TAGS) \ || exit 1 +@endif target-qthreads .PHONY: maybe-install-info-target-qthreads install-info-target-qthreads maybe-install-info-target-qthreads: +@if target-qthreads +maybe-install-info-target-qthreads: install-info-target-qthreads install-info-target-qthreads: \ configure-target-qthreads \ @@ -22875,6 +26854,7 @@ install-info-target-qthreads: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing install-info in $(TARGET_SUBDIR)/qthreads" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22887,9 +26867,12 @@ install-info-target-qthreads: \ install-info) \ || exit 1 +@endif target-qthreads .PHONY: maybe-installcheck-target-qthreads installcheck-target-qthreads maybe-installcheck-target-qthreads: +@if target-qthreads +maybe-installcheck-target-qthreads: installcheck-target-qthreads installcheck-target-qthreads: \ configure-target-qthreads @@ -22897,6 +26880,7 @@ installcheck-target-qthreads: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing installcheck in $(TARGET_SUBDIR)/qthreads" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22909,15 +26893,19 @@ installcheck-target-qthreads: \ installcheck) \ || exit 1 +@endif target-qthreads .PHONY: maybe-mostlyclean-target-qthreads mostlyclean-target-qthreads maybe-mostlyclean-target-qthreads: +@if target-qthreads +maybe-mostlyclean-target-qthreads: mostlyclean-target-qthreads mostlyclean-target-qthreads: @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing mostlyclean in $(TARGET_SUBDIR)/qthreads" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22930,15 +26918,19 @@ mostlyclean-target-qthreads: mostlyclean) \ || exit 1 +@endif target-qthreads .PHONY: maybe-clean-target-qthreads clean-target-qthreads maybe-clean-target-qthreads: +@if target-qthreads +maybe-clean-target-qthreads: clean-target-qthreads clean-target-qthreads: @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing clean in $(TARGET_SUBDIR)/qthreads" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22951,15 +26943,19 @@ clean-target-qthreads: clean) \ || exit 1 +@endif target-qthreads .PHONY: maybe-distclean-target-qthreads distclean-target-qthreads maybe-distclean-target-qthreads: +@if target-qthreads +maybe-distclean-target-qthreads: distclean-target-qthreads distclean-target-qthreads: @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing distclean in $(TARGET_SUBDIR)/qthreads" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22972,15 +26968,19 @@ distclean-target-qthreads: distclean) \ || exit 1 +@endif target-qthreads .PHONY: maybe-maintainer-clean-target-qthreads maintainer-clean-target-qthreads maybe-maintainer-clean-target-qthreads: +@if target-qthreads +maybe-maintainer-clean-target-qthreads: maintainer-clean-target-qthreads maintainer-clean-target-qthreads: @[ -f $(TARGET_SUBDIR)/qthreads/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing maintainer-clean in $(TARGET_SUBDIR)/qthreads" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -22993,10 +26993,13 @@ maintainer-clean-target-qthreads: maintainer-clean) \ || exit 1 +@endif target-qthreads .PHONY: configure-target-rda maybe-configure-target-rda maybe-configure-target-rda: +@if target-rda +maybe-configure-target-rda: configure-target-rda # There's only one multilib.out. Cleverer subdirs shouldn't need it copied. $(TARGET_SUBDIR)/rda/multilib.out: multilib.out @@ -23010,21 +27013,7 @@ configure-target-rda: $(TARGET_SUBDIR)/r r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - AR="$(AR_FOR_TARGET)"; export AR; \ - AS="$(AS_FOR_TARGET)"; export AS; \ - CC="$(CC_FOR_TARGET)"; export CC; \ - CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \ - CXX="$(CXX_FOR_TARGET)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \ - GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \ - DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \ - LD="$(LD_FOR_TARGET)"; export LD; \ - LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \ - NM="$(NM_FOR_TARGET)"; export NM; \ - RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \ - WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \ + $(NORMAL_TARGET_EXPORTS) \ echo Configuring in $(TARGET_SUBDIR)/rda; \ cd "$(TARGET_SUBDIR)/rda" || exit 1; \ case $(srcdir) in \ @@ -23043,42 +27032,57 @@ configure-target-rda: $(TARGET_SUBDIR)/r $(TARGET_CONFIGARGS) $${srcdiroption} \ --with-target-subdir="$(TARGET_SUBDIR)" \ || exit 1 +@endif target-rda .PHONY: all-target-rda maybe-all-target-rda maybe-all-target-rda: +@if target-rda +maybe-all-target-rda: all-target-rda all-target-rda: configure-target-rda @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/rda && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) all) +@endif target-rda .PHONY: check-target-rda maybe-check-target-rda maybe-check-target-rda: +@if target-rda +maybe-check-target-rda: check-target-rda check-target-rda: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/rda && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) check) +@endif target-rda .PHONY: install-target-rda maybe-install-target-rda maybe-install-target-rda: +@if target-rda +maybe-install-target-rda: install-target-rda install-target-rda: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/rda && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) install) +@endif target-rda # Other targets (info, dvi, etc.) .PHONY: maybe-info-target-rda info-target-rda maybe-info-target-rda: +@if target-rda +maybe-info-target-rda: info-target-rda info-target-rda: \ configure-target-rda @@ -23086,6 +27090,7 @@ info-target-rda: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing info in $(TARGET_SUBDIR)/rda" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -23098,9 +27103,12 @@ info-target-rda: \ info) \ || exit 1 +@endif target-rda .PHONY: maybe-dvi-target-rda dvi-target-rda maybe-dvi-target-rda: +@if target-rda +maybe-dvi-target-rda: dvi-target-rda dvi-target-rda: \ configure-target-rda @@ -23108,6 +27116,7 @@ dvi-target-rda: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing dvi in $(TARGET_SUBDIR)/rda" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -23120,9 +27129,12 @@ dvi-target-rda: \ dvi) \ || exit 1 +@endif target-rda .PHONY: maybe-TAGS-target-rda TAGS-target-rda maybe-TAGS-target-rda: +@if target-rda +maybe-TAGS-target-rda: TAGS-target-rda TAGS-target-rda: \ configure-target-rda @@ -23130,6 +27142,7 @@ TAGS-target-rda: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing TAGS in $(TARGET_SUBDIR)/rda" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -23142,9 +27155,12 @@ TAGS-target-rda: \ TAGS) \ || exit 1 +@endif target-rda .PHONY: maybe-install-info-target-rda install-info-target-rda maybe-install-info-target-rda: +@if target-rda +maybe-install-info-target-rda: install-info-target-rda install-info-target-rda: \ configure-target-rda \ @@ -23153,6 +27169,7 @@ install-info-target-rda: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing install-info in $(TARGET_SUBDIR)/rda" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -23165,9 +27182,12 @@ install-info-target-rda: \ install-info) \ || exit 1 +@endif target-rda .PHONY: maybe-installcheck-target-rda installcheck-target-rda maybe-installcheck-target-rda: +@if target-rda +maybe-installcheck-target-rda: installcheck-target-rda installcheck-target-rda: \ configure-target-rda @@ -23175,6 +27195,7 @@ installcheck-target-rda: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing installcheck in $(TARGET_SUBDIR)/rda" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -23187,15 +27208,19 @@ installcheck-target-rda: \ installcheck) \ || exit 1 +@endif target-rda .PHONY: maybe-mostlyclean-target-rda mostlyclean-target-rda maybe-mostlyclean-target-rda: +@if target-rda +maybe-mostlyclean-target-rda: mostlyclean-target-rda mostlyclean-target-rda: @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing mostlyclean in $(TARGET_SUBDIR)/rda" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -23208,15 +27233,19 @@ mostlyclean-target-rda: mostlyclean) \ || exit 1 +@endif target-rda .PHONY: maybe-clean-target-rda clean-target-rda maybe-clean-target-rda: +@if target-rda +maybe-clean-target-rda: clean-target-rda clean-target-rda: @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing clean in $(TARGET_SUBDIR)/rda" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -23229,15 +27258,19 @@ clean-target-rda: clean) \ || exit 1 +@endif target-rda .PHONY: maybe-distclean-target-rda distclean-target-rda maybe-distclean-target-rda: +@if target-rda +maybe-distclean-target-rda: distclean-target-rda distclean-target-rda: @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing distclean in $(TARGET_SUBDIR)/rda" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -23250,15 +27283,19 @@ distclean-target-rda: distclean) \ || exit 1 +@endif target-rda .PHONY: maybe-maintainer-clean-target-rda maintainer-clean-target-rda maybe-maintainer-clean-target-rda: +@if target-rda +maybe-maintainer-clean-target-rda: maintainer-clean-target-rda maintainer-clean-target-rda: @[ -f $(TARGET_SUBDIR)/rda/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing maintainer-clean in $(TARGET_SUBDIR)/rda" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -23271,10 +27308,13 @@ maintainer-clean-target-rda: maintainer-clean) \ || exit 1 +@endif target-rda .PHONY: configure-target-libada maybe-configure-target-libada maybe-configure-target-libada: +@if target-libada +maybe-configure-target-libada: configure-target-libada # There's only one multilib.out. Cleverer subdirs shouldn't need it copied. $(TARGET_SUBDIR)/libada/multilib.out: multilib.out @@ -23288,21 +27328,7 @@ configure-target-libada: $(TARGET_SUBDIR r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ - AR="$(AR_FOR_TARGET)"; export AR; \ - AS="$(AS_FOR_TARGET)"; export AS; \ - CC="$(CC_FOR_TARGET)"; export CC; \ - CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \ - CXX="$(CXX_FOR_TARGET)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \ - GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \ - DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \ - LD="$(LD_FOR_TARGET)"; export LD; \ - LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \ - NM="$(NM_FOR_TARGET)"; export NM; \ - RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \ - WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \ + $(NORMAL_TARGET_EXPORTS) \ echo Configuring in $(TARGET_SUBDIR)/libada; \ cd "$(TARGET_SUBDIR)/libada" || exit 1; \ case $(srcdir) in \ @@ -23321,42 +27347,57 @@ configure-target-libada: $(TARGET_SUBDIR $(TARGET_CONFIGARGS) $${srcdiroption} \ --with-target-subdir="$(TARGET_SUBDIR)" \ || exit 1 +@endif target-libada .PHONY: all-target-libada maybe-all-target-libada maybe-all-target-libada: +@if target-libada +maybe-all-target-libada: all-target-libada all-target-libada: configure-target-libada @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/libada && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) all) +@endif target-libada .PHONY: check-target-libada maybe-check-target-libada maybe-check-target-libada: +@if target-libada +maybe-check-target-libada: check-target-libada check-target-libada: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/libada && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) check) +@endif target-libada .PHONY: install-target-libada maybe-install-target-libada maybe-install-target-libada: +@if target-libada +maybe-install-target-libada: install-target-libada install-target-libada: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ (cd $(TARGET_SUBDIR)/libada && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) install) +@endif target-libada # Other targets (info, dvi, etc.) .PHONY: maybe-info-target-libada info-target-libada maybe-info-target-libada: +@if target-libada +maybe-info-target-libada: info-target-libada info-target-libada: \ configure-target-libada @@ -23364,6 +27405,7 @@ info-target-libada: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing info in $(TARGET_SUBDIR)/libada" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -23376,9 +27418,12 @@ info-target-libada: \ info) \ || exit 1 +@endif target-libada .PHONY: maybe-dvi-target-libada dvi-target-libada maybe-dvi-target-libada: +@if target-libada +maybe-dvi-target-libada: dvi-target-libada dvi-target-libada: \ configure-target-libada @@ -23386,6 +27431,7 @@ dvi-target-libada: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing dvi in $(TARGET_SUBDIR)/libada" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -23398,9 +27444,12 @@ dvi-target-libada: \ dvi) \ || exit 1 +@endif target-libada .PHONY: maybe-TAGS-target-libada TAGS-target-libada maybe-TAGS-target-libada: +@if target-libada +maybe-TAGS-target-libada: TAGS-target-libada TAGS-target-libada: \ configure-target-libada @@ -23408,6 +27457,7 @@ TAGS-target-libada: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing TAGS in $(TARGET_SUBDIR)/libada" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -23420,9 +27470,12 @@ TAGS-target-libada: \ TAGS) \ || exit 1 +@endif target-libada .PHONY: maybe-install-info-target-libada install-info-target-libada maybe-install-info-target-libada: +@if target-libada +maybe-install-info-target-libada: install-info-target-libada install-info-target-libada: \ configure-target-libada \ @@ -23431,6 +27484,7 @@ install-info-target-libada: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing install-info in $(TARGET_SUBDIR)/libada" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -23443,9 +27497,12 @@ install-info-target-libada: \ install-info) \ || exit 1 +@endif target-libada .PHONY: maybe-installcheck-target-libada installcheck-target-libada maybe-installcheck-target-libada: +@if target-libada +maybe-installcheck-target-libada: installcheck-target-libada installcheck-target-libada: \ configure-target-libada @@ -23453,6 +27510,7 @@ installcheck-target-libada: \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing installcheck in $(TARGET_SUBDIR)/libada" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -23465,15 +27523,19 @@ installcheck-target-libada: \ installcheck) \ || exit 1 +@endif target-libada .PHONY: maybe-mostlyclean-target-libada mostlyclean-target-libada maybe-mostlyclean-target-libada: +@if target-libada +maybe-mostlyclean-target-libada: mostlyclean-target-libada mostlyclean-target-libada: @[ -f $(TARGET_SUBDIR)/libada/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing mostlyclean in $(TARGET_SUBDIR)/libada" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -23486,15 +27548,19 @@ mostlyclean-target-libada: mostlyclean) \ || exit 1 +@endif target-libada .PHONY: maybe-clean-target-libada clean-target-libada maybe-clean-target-libada: +@if target-libada +maybe-clean-target-libada: clean-target-libada clean-target-libada: @[ -f $(TARGET_SUBDIR)/libada/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing clean in $(TARGET_SUBDIR)/libada" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -23507,15 +27573,19 @@ clean-target-libada: clean) \ || exit 1 +@endif target-libada .PHONY: maybe-distclean-target-libada distclean-target-libada maybe-distclean-target-libada: +@if target-libada +maybe-distclean-target-libada: distclean-target-libada distclean-target-libada: @[ -f $(TARGET_SUBDIR)/libada/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing distclean in $(TARGET_SUBDIR)/libada" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -23528,15 +27598,19 @@ distclean-target-libada: distclean) \ || exit 1 +@endif target-libada .PHONY: maybe-maintainer-clean-target-libada maintainer-clean-target-libada maybe-maintainer-clean-target-libada: +@if target-libada +maybe-maintainer-clean-target-libada: maintainer-clean-target-libada maintainer-clean-target-libada: @[ -f $(TARGET_SUBDIR)/libada/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(NORMAL_TARGET_EXPORTS) \ echo "Doing maintainer-clean in $(TARGET_SUBDIR)/libada" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -23549,6 +27623,7 @@ maintainer-clean-target-libada: maintainer-clean) \ || exit 1 +@endif target-libada @@ -23568,28 +27643,15 @@ maintainer-clean-target-libada: # We must skip configuring if toplevel bootstrap is going. .PHONY: configure-gcc maybe-configure-gcc maybe-configure-gcc: +@if gcc +maybe-configure-gcc: configure-gcc configure-gcc: @test ! -f gcc/Makefile || exit 0; \ [ -f stage_last ] && exit 0; \ [ -d gcc ] || mkdir gcc; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - TOPLEVEL_CONFIGURE_ARGUMENTS="$(TOPLEVEL_CONFIGURE_ARGUMENTS)"; export TOPLEVEL_CONFIGURE_ARGUMENTS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(GCC_HOST_EXPORTS) \ echo Configuring in gcc; \ cd gcc || exit 1; \ case $(srcdir) in \ @@ -23606,15 +27668,19 @@ configure-gcc: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif gcc # Don't 'make all' in gcc if it's already been made by 'bootstrap'; that # causes trouble. This wart will be fixed eventually by moving # the bootstrap behavior to this file. .PHONY: all-gcc maybe-all-gcc maybe-all-gcc: +@if gcc +maybe-all-gcc: all-gcc all-gcc: configure-gcc r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(GCC_HOST_EXPORTS) \ if [ -f stage_last ] ; then \ true ; \ elif [ -f gcc/stage_last ] ; then \ @@ -23624,6 +27690,7 @@ all-gcc: configure-gcc $(SET_LIB_PATH) \ (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) all); \ fi +@endif gcc # Building GCC uses some tools for rebuilding "source" files # like texinfo, bison/byacc, etc. So we must depend on those. @@ -23641,6 +27708,7 @@ $(GCC_STRAP_TARGETS): all-bootstrap conf @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(GCC_HOST_EXPORTS) \ echo "Bootstrapping the compiler"; \ cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) $@ @r=`${PWD_COMMAND}`; export r; \ @@ -23660,6 +27728,7 @@ $(GCC_STRAP_TARGETS): all-bootstrap conf compare=compare ;; \ esac; \ $(SET_LIB_PATH) \ + $(GCC_HOST_EXPORTS) \ echo "$$msg"; \ cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) $$compare @r=`${PWD_COMMAND}`; export r; \ @@ -23672,6 +27741,7 @@ profiledbootstrap: all-bootstrap configu @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(GCC_HOST_EXPORTS) \ echo "Bootstrapping the compiler"; \ cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) stageprofile_build @r=`${PWD_COMMAND}`; export r; \ @@ -23682,6 +27752,7 @@ profiledbootstrap: all-bootstrap configu @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(GCC_HOST_EXPORTS) \ echo "Building feedback based compiler"; \ cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) stagefeedback_build @@ -23690,6 +27761,7 @@ cross: all-texinfo all-bison all-byacc a @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(GCC_HOST_EXPORTS) \ echo "Building the C and C++ compiler"; \ cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) LANGUAGES="c c++" @r=`${PWD_COMMAND}`; export r; \ @@ -23701,11 +27773,14 @@ cross: all-texinfo all-bison all-byacc a .PHONY: check-gcc maybe-check-gcc maybe-check-gcc: +@if gcc +maybe-check-gcc: check-gcc check-gcc: @if [ -f ./gcc/Makefile ] ; then \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(GCC_HOST_EXPORTS) \ (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) check); \ else \ true; \ @@ -23717,6 +27792,7 @@ check-gcc-c++: r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(GCC_HOST_EXPORTS) \ (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) check-c++); \ else \ true; \ @@ -23724,18 +27800,23 @@ check-gcc-c++: .PHONY: check-c++ check-c++: check-target-libstdc++-v3 check-gcc-c++ +@endif gcc .PHONY: install-gcc maybe-install-gcc maybe-install-gcc: +@if gcc +maybe-install-gcc: install-gcc install-gcc: @if [ -f ./gcc/Makefile ] ; then \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(GCC_HOST_EXPORTS) \ (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) install); \ else \ true; \ fi +@endif gcc # Install the gcc headers files, but not the fixed include files, # which Cygnus is not allowed to distribute. This rule is very @@ -23752,6 +27833,7 @@ gcc-no-fixedincludes: r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}` ; export s; \ $(SET_LIB_PATH) \ + $(GCC_HOST_EXPORTS) \ (cd ./gcc && \ $(MAKE) $(GCC_FLAGS_TO_PASS) install); \ rm -rf gcc/include; \ @@ -23762,6 +27844,8 @@ gcc-no-fixedincludes: .PHONY: maybe-info-gcc info-gcc maybe-info-gcc: +@if gcc +maybe-info-gcc: info-gcc info-gcc: \ configure-gcc @[ -f ./gcc/Makefile ] || exit 0; \ @@ -23771,6 +27855,7 @@ info-gcc: \ for flag in $(EXTRA_GCC_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ + $(GCC_HOST_EXPORTS) \ echo "Doing info in gcc" ; \ (cd gcc && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ @@ -23779,10 +27864,13 @@ info-gcc: \ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ info) \ || exit 1 +@endif gcc .PHONY: maybe-dvi-gcc dvi-gcc maybe-dvi-gcc: +@if gcc +maybe-dvi-gcc: dvi-gcc dvi-gcc: \ configure-gcc @[ -f ./gcc/Makefile ] || exit 0; \ @@ -23792,6 +27880,7 @@ dvi-gcc: \ for flag in $(EXTRA_GCC_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ + $(GCC_HOST_EXPORTS) \ echo "Doing dvi in gcc" ; \ (cd gcc && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ @@ -23800,10 +27889,13 @@ dvi-gcc: \ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ dvi) \ || exit 1 +@endif gcc .PHONY: maybe-TAGS-gcc TAGS-gcc maybe-TAGS-gcc: +@if gcc +maybe-TAGS-gcc: TAGS-gcc TAGS-gcc: \ configure-gcc @[ -f ./gcc/Makefile ] || exit 0; \ @@ -23813,6 +27905,7 @@ TAGS-gcc: \ for flag in $(EXTRA_GCC_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ + $(GCC_HOST_EXPORTS) \ echo "Doing TAGS in gcc" ; \ (cd gcc && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ @@ -23821,10 +27914,13 @@ TAGS-gcc: \ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ TAGS) \ || exit 1 +@endif gcc .PHONY: maybe-install-info-gcc install-info-gcc maybe-install-info-gcc: +@if gcc +maybe-install-info-gcc: install-info-gcc install-info-gcc: \ configure-gcc \ info-gcc @@ -23835,6 +27931,7 @@ install-info-gcc: \ for flag in $(EXTRA_GCC_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ + $(GCC_HOST_EXPORTS) \ echo "Doing install-info in gcc" ; \ (cd gcc && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ @@ -23843,10 +27940,13 @@ install-info-gcc: \ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ install-info) \ || exit 1 +@endif gcc .PHONY: maybe-installcheck-gcc installcheck-gcc maybe-installcheck-gcc: +@if gcc +maybe-installcheck-gcc: installcheck-gcc installcheck-gcc: \ configure-gcc @[ -f ./gcc/Makefile ] || exit 0; \ @@ -23856,6 +27956,7 @@ installcheck-gcc: \ for flag in $(EXTRA_GCC_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ + $(GCC_HOST_EXPORTS) \ echo "Doing installcheck in gcc" ; \ (cd gcc && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ @@ -23864,10 +27965,13 @@ installcheck-gcc: \ "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ installcheck) \ || exit 1 +@endif gcc .PHONY: maybe-mostlyclean-gcc mostlyclean-gcc maybe-mostlyclean-gcc: +@if gcc +maybe-mostlyclean-gcc: mostlyclean-gcc mostlyclean-gcc: @[ -f ./gcc/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ @@ -23876,6 +27980,7 @@ mostlyclean-gcc: for flag in $(EXTRA_GCC_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ + $(GCC_HOST_EXPORTS) \ echo "Doing mostlyclean in gcc" ; \ (cd gcc && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ @@ -23884,10 +27989,13 @@ mostlyclean-gcc: "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ mostlyclean) \ || exit 1 +@endif gcc .PHONY: maybe-clean-gcc clean-gcc maybe-clean-gcc: +@if gcc +maybe-clean-gcc: clean-gcc clean-gcc: @[ -f ./gcc/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ @@ -23896,6 +28004,7 @@ clean-gcc: for flag in $(EXTRA_GCC_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ + $(GCC_HOST_EXPORTS) \ echo "Doing clean in gcc" ; \ (cd gcc && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ @@ -23904,10 +28013,13 @@ clean-gcc: "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ clean) \ || exit 1 +@endif gcc .PHONY: maybe-distclean-gcc distclean-gcc maybe-distclean-gcc: +@if gcc +maybe-distclean-gcc: distclean-gcc distclean-gcc: @[ -f ./gcc/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ @@ -23916,6 +28028,7 @@ distclean-gcc: for flag in $(EXTRA_GCC_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ + $(GCC_HOST_EXPORTS) \ echo "Doing distclean in gcc" ; \ (cd gcc && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ @@ -23924,10 +28037,13 @@ distclean-gcc: "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ distclean) \ || exit 1 +@endif gcc .PHONY: maybe-maintainer-clean-gcc maintainer-clean-gcc maybe-maintainer-clean-gcc: +@if gcc +maybe-maintainer-clean-gcc: maintainer-clean-gcc maintainer-clean-gcc: @[ -f ./gcc/Makefile ] || exit 0; \ r=`${PWD_COMMAND}`; export r; \ @@ -23936,6 +28052,7 @@ maintainer-clean-gcc: for flag in $(EXTRA_GCC_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ + $(GCC_HOST_EXPORTS) \ echo "Doing maintainer-clean in gcc" ; \ (cd gcc && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ @@ -23944,6 +28061,7 @@ maintainer-clean-gcc: "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ maintainer-clean) \ || exit 1 +@endif gcc @@ -23951,16 +28069,26 @@ maintainer-clean-gcc: # GCC bootstrap support # --------------------- -# We name the directories for the various stages "stage1-gcc", -# "stage2-gcc","stage3-gcc", etc. -# Unfortunately, the 'compare' process will fail (on debugging information) -# if any directory names are different! -# So in the building rule for each stage, we relocate them before and after. -# The current one is 'gcc', while the previous one is 'prev-gcc'. (The -# current one must be 'gcc' for now because the scripts in that directory -# assume it.) -# At the end of the bootstrap, 'stage3-gcc' must be moved to 'gcc' so that -# libraries can find it. Ick! +# We track the current stage (the one in 'gcc') in the stage_last file. +# We name the build directories for the various stages "stage1-gcc", +# "stage2-gcc","stage3-gcc", etc. + +# Since the 'compare' process will fail (on debugging information) if any +# directory names are different, we need to link the gcc directory for +# the previous stage to a constant name ('gcc-prev'), and to make the name of +# the build directories constant as well. For the latter, we use naked names +# like 'gcc', because the scripts in that directory assume it. We use +# mv on platforms where symlinks to directories do not work or are not +# reliable. + +# At the end of the bootstrap, a symlink to 'stage3-gcc' named 'gcc' must +# be kept, so that libraries can find it. Ick! + +# It would be best to preinstall gcc into a staging area (and in the +# future, gather there all prebootstrap packages). This would allow +# assemblers and linkers can be bootstrapped as well as the compiler +# (both in a combined tree, or separately). This however requires some +# change to the gcc driver, again in order to avoid comparison failures. # Bugs: This is almost certainly not parallel-make safe. @@ -23976,6 +28104,21 @@ STAMP = echo timestamp > STAGE1_CFLAGS=@stage1_cflags@ STAGE1_LANGUAGES=@stage1_languages@ +# We only want to compare .o files, so set this! +objext = .o + +# Real targets act phony if they depend on phony targets; this hack +# prevents gratuitous rebuilding of stage 1. +prebootstrap: + $(MAKE) all-bootstrap + $(STAMP) prebootstrap + +# Flags to pass to stage2 and later makes. +BOOT_CFLAGS= -g -O2 +POSTSTAGE1_FLAGS_TO_PASS = \ + CFLAGS="$(BOOT_CFLAGS)" \ + ADAC="\$$(CC)" + # For stage 1: # * We force-disable intermodule optimizations, even if # --enable-intermodule was passed, since the installed compiler probably @@ -23984,35 +28127,48 @@ STAGE1_LANGUAGES=@stage1_languages@ # * Likewise, we force-disable coverage flags, since the installed compiler # probably has never heard of them. # * We build only C (and possibly Ada). -configure-stage1-gcc: - echo configure-stage1-gcc > stage_last ; \ - if [ -f stage1-gcc/Makefile ] ; then \ + + +.PHONY: new-stage1-start new-stage1-end + +new-stage1-start: + [ -f stage_last ] && $(MAKE) new-`cat stage_last`-end || : + echo stage1 > stage_last ; \ + [ -d stage1-gcc ] || mkdir stage1-gcc; \ + set stage1-gcc gcc ; @CREATE_LINK_TO_DIR@ + +new-stage1-end: + rm -f stage_last ; \ + set gcc stage1-gcc ; @UNDO_LINK_TO_DIR@ + +# Bubble a bugfix through all the stages up to stage 1. They +# are remade, but not reconfigured. The next stage (if any) will not +# be reconfigured as well. +.PHONY: new-stage1-bubble +new-stage1-bubble: + @if [ -f all-stage1-gcc ] ; then \ + echo Remaking stage 1 ; \ + rm -f all-stage1-gcc ; \ + $(MAKE) all-stage1-gcc && \ + if [ -f configure-stage2-gcc ] ; then \ + $(STAMP) configure-stage2-gcc ; \ + fi ; \ + else \ + $(MAKE) all-stage1-gcc ; \ + fi + +configure-stage1-gcc: prebootstrap + $(MAKE) new-stage1-start + @if [ -f stage1-gcc/Makefile ] ; then \ $(STAMP) configure-stage1-gcc ; \ exit 0; \ else \ true ; \ fi ; \ - [ -d stage1-gcc ] || mkdir stage1-gcc; \ - mv stage1-gcc gcc ; \ r=`${PWD_COMMAND}`; export r; \ - s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - TOPLEVEL_CONFIGURE_ARGUMENTS="$(TOPLEVEL_CONFIGURE_ARGUMENTS)"; export TOPLEVEL_CONFIGURE_ARGUMENTS; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ - echo Configuring stage 1 in gcc; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(GCC_HOST_EXPORTS) \ + echo Configuring stage 1 in gcc ; \ cd gcc || exit 1; \ case $(srcdir) in \ \.) \ @@ -24027,64 +28183,77 @@ configure-stage1-gcc: esac; \ $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ - --disable-intermodule --disable-coverage \ - --enable-languages="$(STAGE1_LANGUAGES)"; \ - cd .. ; \ - mv gcc stage1-gcc ; \ - $(STAMP) configure-stage1-gcc - -# Real targets act phony if they depend on phony targets; this hack -# prevents gratuitous rebuilding of stage 1. -prebootstrap: - $(MAKE) all-bootstrap - $(STAMP) prebootstrap + --disable-intermodule --disable-coverage --enable-languages="$(STAGE1_LANGUAGES)" && \ + $(STAMP) ../configure-stage1-gcc -all-stage1-gcc: configure-stage1-gcc prebootstrap - echo all-stage1-gcc > stage_last ; \ - r=`${PWD_COMMAND}`; export r; \ - s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - mv stage1-gcc gcc ; \ +all-stage1-gcc: configure-stage1-gcc + $(MAKE) new-stage1-start + @r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(GCC_HOST_EXPORTS) \ cd gcc && \ - $(MAKE) $(GCC_FLAGS_TO_PASS) \ - CFLAGS="$(STAGE1_CFLAGS)" \ - || exit 1 ; \ - cd .. ; \ - mv gcc stage1-gcc ; \ - $(STAMP) all-stage1-gcc + $(MAKE) $(GCC_FLAGS_TO_PASS) \ + CFLAGS="$(STAGE1_CFLAGS)" && $(STAMP) ../all-stage1-gcc + + + -# TODO: Deal with STAGE_PREFIX (which is only for ada, incidentally) -# Possibly pass --enable-werror-always (depending on --enable-werror); -# that's what @stage2_werror_flag@ is for -configure-stage2-gcc: all-stage1-gcc - echo configure-stage2-gcc > stage_last ; \ - if [ -f stage2-gcc/Makefile ] ; then \ + +.PHONY: new-restage1 distclean-stage1 + +distclean-stage1: distclean-stage2 + [ -f stage_last ] && $(MAKE) new-`cat stage_last`-end || : + rm -rf configure-stage1-gcc all-stage1-gcc stage1-gcc + +new-restage1: distclean-stage2 + rm -rf all-stage1-gcc + $(MAKE) all-stage1-gcc + + + + +.PHONY: new-stage2-start new-stage2-end + +new-stage2-start: + [ -f stage_last ] && $(MAKE) new-`cat stage_last`-end || : + echo stage2 > stage_last ; \ + [ -d stage2-gcc ] || mkdir stage2-gcc; \ + set stage2-gcc gcc ; @CREATE_LINK_TO_DIR@ ; \ + set stage1-gcc prev-gcc ; @CREATE_LINK_TO_DIR@ + +new-stage2-end: + rm -f stage_last ; \ + set gcc stage2-gcc ; @UNDO_LINK_TO_DIR@ ; \ + set prev-gcc stage1-gcc ; @UNDO_LINK_TO_DIR@ + +# Bubble a bugfix through all the stages up to stage 2. They +# are remade, but not reconfigured. The next stage (if any) will not +# be reconfigured as well. +.PHONY: new-stage2-bubble +new-stage2-bubble: new-stage1-bubble + @if [ -f all-stage2-gcc ] ; then \ + echo Remaking stage 2 ; \ + rm -f all-stage2-gcc ; \ + $(MAKE) all-stage2-gcc && \ + if [ -f configure-stage3-gcc ] ; then \ + $(STAMP) configure-stage3-gcc ; \ + fi ; \ + else \ + $(MAKE) all-stage2-gcc ; \ + fi + +configure-stage2-gcc: all-stage1-gcc + $(MAKE) new-stage2-start + @if [ -f stage2-gcc/Makefile ] ; then \ $(STAMP) configure-stage2-gcc ; \ exit 0; \ else \ true ; \ fi ; \ - [ -d stage2-gcc ] || mkdir stage2-gcc; \ - mv stage2-gcc gcc ; \ - mv stage1-gcc prev-gcc ; \ r=`${PWD_COMMAND}`; export r; \ - s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - TOPLEVEL_CONFIGURE_ARGUMENTS="$(TOPLEVEL_CONFIGURE_ARGUMENTS)"; export TOPLEVEL_CONFIGURE_ARGUMENTS; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ - CC="$(STAGE_CC_WRAPPER) $$r/prev-gcc/xgcc$(exeext) -B$$r/prev-gcc/ -B$(build_tooldir)/bin/"; export CC; \ - CC_FOR_BUILD="$(STAGE_CC_WRAPPER) $$r/prev-gcc/xgcc$(exeext) -B$$r/prev-gcc/ -B$(build_tooldir)/bin/"; export CC_FOR_BUILD; \ - echo Configuring stage 2 in gcc; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(STAGE_HOST_EXPORTS) \ + echo Configuring stage 2 in gcc ; \ cd gcc || exit 1; \ case $(srcdir) in \ \.) \ @@ -24098,65 +28267,77 @@ configure-stage2-gcc: all-stage1-gcc libsrcdir="$$s/gcc";; \ esac; \ $(SHELL) $${libsrcdir}/configure \ - $(HOST_CONFIGARGS) $${srcdiroption} @stage2_werror_flag@ ; \ - cd .. ; \ - mv gcc stage2-gcc ; \ - mv prev-gcc stage1-gcc ; \ - $(STAMP) configure-stage2-gcc - -# Flags to pass to stage2 and later makes. -BOOT_CFLAGS= -g -O2 -POSTSTAGE1_FLAGS_TO_PASS = \ - CFLAGS="$(BOOT_CFLAGS)" \ - ADAC="\$$(CC)" + $(HOST_CONFIGARGS) $${srcdiroption} \ + @stage2_werror_flag@ && \ + $(STAMP) ../configure-stage2-gcc -all-stage2-gcc: all-stage1-gcc configure-stage2-gcc - echo all-stage2-gcc > stage_last ; \ - r=`${PWD_COMMAND}`; export r; \ - s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - mv stage2-gcc gcc ; \ - mv stage1-gcc prev-gcc ; \ +all-stage2-gcc: configure-stage2-gcc + $(MAKE) new-stage2-start + @r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(STAGE_HOST_EXPORTS) \ cd gcc && \ - $(MAKE) $(GCC_FLAGS_TO_PASS) \ - CC="$(STAGE_CC_WRAPPER) $$r/prev-gcc/xgcc$(exeext) -B$$r/prev-gcc/ -B$(build_tooldir)/bin/" \ - CC_FOR_BUILD="$(STAGE_CC_WRAPPER) $$r/prev-gcc/xgcc$(exeext) -B$$r/prev-gcc/ -B$(build_tooldir)/bin/" \ - STAGE_PREFIX=$$r/prev-gcc/ \ - $(POSTSTAGE1_FLAGS_TO_PASS) || exit 1 ; \ - cd .. ; \ - mv prev-gcc stage1-gcc ; \ - mv gcc stage2-gcc ; \ - $(STAMP) all-stage2-gcc - -configure-stage3-gcc: all-stage2-gcc - echo configure-stage3-gcc > stage_last ; \ - if [ -f stage3-gcc/Makefile ] ; then \ + $(MAKE) $(GCC_FLAGS_TO_PASS) \ + CC="$${CC}" CC_FOR_BUILD="${CC_FOR_BUILD}" \ + STAGE_PREFIX=$$r/stage1-gcc/ \ + $(POSTSTAGE1_FLAGS_TO_PASS) && $(STAMP) ../all-stage2-gcc + + + + + +.PHONY: new-restage2 distclean-stage2 + +distclean-stage2: distclean-stage3 + [ -f stage_last ] && $(MAKE) new-`cat stage_last`-end || : + rm -rf configure-stage2-gcc all-stage2-gcc stage2-gcc + +new-restage2: distclean-stage3 + rm -rf all-stage2-gcc + $(MAKE) all-stage2-gcc + + + + +.PHONY: new-stage3-start new-stage3-end + +new-stage3-start: + [ -f stage_last ] && $(MAKE) new-`cat stage_last`-end || : + echo stage3 > stage_last ; \ + [ -d stage3-gcc ] || mkdir stage3-gcc; \ + set stage3-gcc gcc ; @CREATE_LINK_TO_DIR@ ; \ + set stage2-gcc prev-gcc ; @CREATE_LINK_TO_DIR@ + +new-stage3-end: + rm -f stage_last ; \ + set gcc stage3-gcc ; @UNDO_LINK_TO_DIR@ ; \ + set prev-gcc stage2-gcc ; @UNDO_LINK_TO_DIR@ + +# Bubble a bugfix through all the stages up to stage 3. They +# are remade, but not reconfigured. The next stage (if any) will not +# be reconfigured as well. +.PHONY: new-stage3-bubble +new-stage3-bubble: new-stage2-bubble + @if [ -f all-stage3-gcc ] ; then \ + echo Remaking stage 3 ; \ + rm -f all-stage3-gcc ; \ + $(MAKE) all-stage3-gcc ; \ + else \ + $(MAKE) all-stage3-gcc ; \ + fi + +configure-stage3-gcc: all-stage2-gcc + $(MAKE) new-stage3-start + @if [ -f stage3-gcc/Makefile ] ; then \ $(STAMP) configure-stage3-gcc ; \ exit 0; \ else \ true ; \ fi ; \ - [ -d stage3-gcc ] || mkdir stage3-gcc; \ - mv stage3-gcc gcc ; \ - mv stage2-gcc prev-gcc ; \ r=`${PWD_COMMAND}`; export r; \ - s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - TOPLEVEL_CONFIGURE_ARGUMENTS="$(TOPLEVEL_CONFIGURE_ARGUMENTS)"; export TOPLEVEL_CONFIGURE_ARGUMENTS; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ - CC="$(STAGE_CC_WRAPPER) $$r/prev-gcc/xgcc$(exeext) -B$$r/prev-gcc/ -B$(build_tooldir)/bin/"; export CC; \ - CC_FOR_BUILD="$(STAGE_CC_WRAPPER) $$r/prev-gcc/xgcc$(exeext) -B$$r/prev-gcc/ -B$(build_tooldir)/bin/"; export CC_FOR_BUILD; \ - echo Configuring stage 3 in gcc; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(STAGE_HOST_EXPORTS) \ + echo Configuring stage 3 in gcc ; \ cd gcc || exit 1; \ case $(srcdir) in \ \.) \ @@ -24170,42 +28351,33 @@ configure-stage3-gcc: all-stage2-gcc libsrcdir="$$s/gcc";; \ esac; \ $(SHELL) $${libsrcdir}/configure \ - $(HOST_CONFIGARGS) $${srcdiroption} @stage2_werror_flag@ ; \ - cd .. ; \ - mv gcc stage3-gcc ; \ - mv prev-gcc stage2-gcc ; \ - $(STAMP) configure-stage3-gcc + $(HOST_CONFIGARGS) $${srcdiroption} \ + @stage2_werror_flag@ && \ + $(STAMP) ../configure-stage3-gcc -all-stage3-gcc: all-stage2-gcc configure-stage3-gcc - echo all-stage3-gcc > stage_last ; \ - r=`${PWD_COMMAND}`; export r; \ - s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - mv stage2-gcc prev-gcc ; \ - mv stage3-gcc gcc ; \ +all-stage3-gcc: configure-stage3-gcc + $(MAKE) new-stage3-start + @r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(STAGE_HOST_EXPORTS) \ cd gcc && \ - $(MAKE) $(GCC_FLAGS_TO_PASS) \ - CC="$(STAGE_CC_WRAPPER) $$r/prev-gcc/xgcc$(exeext) -B$$r/prev-gcc/ -B$(build_tooldir)/bin/" \ - CC_FOR_BUILD="$(STAGE_CC_WRAPPER) $$r/prev-gcc/xgcc$(exeext) -B$$r/prev-gcc/ -B$(build_tooldir)/bin/" \ - STAGE_PREFIX=$$r/prev-gcc/ \ - $(POSTSTAGE1_FLAGS_TO_PASS) || exit 1 ; \ - cd .. ; \ - mv prev-gcc stage2-gcc ; \ - mv gcc stage3-gcc ; \ - $(STAMP) all-stage3-gcc + $(MAKE) $(GCC_FLAGS_TO_PASS) \ + CC="$${CC}" CC_FOR_BUILD="${CC_FOR_BUILD}" \ + STAGE_PREFIX=$$r/stage2-gcc/ \ + $(POSTSTAGE1_FLAGS_TO_PASS) && $(STAMP) ../all-stage3-gcc -# We only want to compare .o files, so set this! -objext = .o compare: all-stage3-gcc - r=`${PWD_COMMAND}`; export r; \ + [ -f stage_last ] && $(MAKE) new-`cat stage_last`-end || : + @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ rm -f .bad_compare ; \ cd stage3-gcc; \ files=`find . -name "*$(objext)" -print` ; \ cd .. ; \ for file in $${files} ; do \ - cmp --ignore-initial=16 $$r/stage2-gcc/$$file $$r/stage3-gcc/$$file \ - > /dev/null 2>&1; \ + f1=$$r/stage2-gcc/$$file; f2=$$r/stage3-gcc/$$file; \ + @do_compare@ > /dev/null 2>&1; \ test $$? -eq 1 && echo $$file differs >> .bad_compare || true; \ done ; \ if [ -f .bad_compare ]; then \ @@ -24215,16 +28387,32 @@ compare: all-stage3-gcc else \ true; \ fi ; \ - $(STAMP) compare + $(STAMP) compare + + .PHONY: new-bootstrap -# This target exists so that everything can be made in one pass. -# 'all-gcc' has to avoid stomping on the bootstrap-generated gcc for -# this to work. -new-bootstrap: compare - mv stage3-gcc gcc ; \ - $(MAKE) all ; \ - mv gcc stage3-gcc +new-bootstrap: + $(MAKE) new-stage3-bubble compare \ + new-stage3-start all new-stage3-end + + +.PHONY: new-restage3 distclean-stage3 + +distclean-stage3: + [ -f stage_last ] && $(MAKE) new-`cat stage_last`-end || : + rm -rf configure-stage3-gcc all-stage3-gcc stage3-gcc compare + +new-restage3: + rm -rf all-stage3-gcc compare + $(MAKE) compare + + +.PHONY: new-cleanstrap +new-cleanstrap: distclean-stage1 new-bootstrap + + + # -------------------------------------- # Dependencies between different modules @@ -24241,11 +28429,13 @@ new-bootstrap: compare # GCC needs to identify certain tools. # GCC also needs the information exported by the intl configure script. configure-gcc: maybe-configure-intl maybe-configure-binutils maybe-configure-gas maybe-configure-ld maybe-configure-bison maybe-configure-flex -all-gcc: maybe-all-libiberty maybe-all-intl maybe-all-bison maybe-all-byacc maybe-all-binutils maybe-all-gas maybe-all-ld maybe-all-zlib +all-gcc: maybe-all-libiberty maybe-all-intl maybe-all-bison maybe-all-byacc maybe-all-binutils maybe-all-gas maybe-all-ld maybe-all-zlib maybe-all-libbanshee maybe-all-libcpp +configure-libcpp: maybe-configure-libiberty maybe-configure-intl +all-libcpp: maybe-all-libiberty maybe-all-intl # This is a slightly kludgy method of getting dependencies on # all-build-libiberty correct; it would be better to build it every time. all-gcc: maybe-all-build-libiberty -all-bootstrap: maybe-all-libiberty maybe-all-intl maybe-all-texinfo maybe-all-bison maybe-all-byacc maybe-all-binutils maybe-all-gas maybe-all-ld maybe-all-zlib +all-bootstrap: maybe-all-binutils maybe-all-bison maybe-all-byacc maybe-all-gas maybe-all-intl maybe-all-ld maybe-all-libcpp maybe-all-libbanshee maybe-all-libiberty maybe-all-texinfo maybe-all-zlib # Host modules specific to gdb. # GDB needs to know that the simulator is being built. @@ -24318,8 +28508,7 @@ configure-target-boehm-gc: $(ALL_GCC_C) configure-target-fastjar: maybe-configure-target-zlib all-target-fastjar: maybe-all-target-zlib maybe-all-target-libiberty configure-target-libada: $(ALL_GCC_C) -configure-target-libf2c: $(ALL_GCC_C) -all-target-libf2c: maybe-all-target-libiberty +configure-target-libgfortran: $(ALL_GCC_C) configure-target-libffi: $(ALL_GCC_C) configure-target-libjava: $(ALL_GCC_C) maybe-configure-target-zlib maybe-configure-target-boehm-gc maybe-configure-target-qthreads maybe-configure-target-libffi all-target-libjava: maybe-all-fastjar maybe-all-target-zlib maybe-all-target-boehm-gc maybe-all-target-qthreads maybe-all-target-libffi @@ -24345,10 +28534,6 @@ configure-target-gperf: $(ALL_GCC_CXX) all-target-gperf: maybe-all-target-libiberty maybe-all-target-libstdc++-v3 configure-target-qthreads: $(ALL_GCC_C) -# Dependencies of maybe-foo on foo. These are used because, for example, -# all-gcc only depends on all-gas if gas is present and being configured. -@maybe_dependencies@ - # Serialization dependencies. Host configures don't work well in parallel to # each other, due to contention over config.cache. Target configures and # build configures are similar. diff -uprN binutils-2.15.90.0.3/Makefile.tpl binutils-2.15.91.0.1/Makefile.tpl --- binutils-2.15.90.0.3/Makefile.tpl 2004-04-12 12:56:33.000000000 -0700 +++ binutils-2.15.91.0.1/Makefile.tpl 2004-05-27 11:26:01.647557782 -0700 @@ -6,7 +6,7 @@ in # # Makefile for directory with subdirs to build. # Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, -# 1999, 2000, 2001, 2002, 2003 Free Software Foundation +# 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation # # This file is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -105,18 +105,72 @@ REALLY_SET_LIB_PATH = \ $(RPATH_ENVVAR)=`echo "$(HOST_LIB_PATH):$(TARGET_LIB_PATH):$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR); # This is the list of directories to be built for the build system. -BUILD_CONFIGDIRS = libiberty +BUILD_CONFIGDIRS = libiberty libbanshee # Build programs are put under this directory. BUILD_SUBDIR = @build_subdir@ # This is set by the configure script to the arguments to use when configuring # directories built for the build system. BUILD_CONFIGARGS = @build_configargs@ +# This is the list of variables to export in the environment when +# configuring subdirectories for the build system. It must also be +# exported whenever recursing into a build directory in case that +# directory's Makefile re-runs configure. +BUILD_EXPORTS = \ + AR="$(AR_FOR_BUILD)"; export AR; \ + AS="$(AS_FOR_BUILD)"; export AS; \ + CC="$(CC_FOR_BUILD)"; export CC; \ + CFLAGS="$(CFLAGS_FOR_BUILD)"; export CFLAGS; \ + CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ + CXX="$(CXX_FOR_BUILD)"; export CXX; \ + CXXFLAGS="$(CXXFLAGS_FOR_BUILD)"; export CXXFLAGS; \ + GCJ="$(GCJ_FOR_BUILD)"; export GCJ; \ + GFORTRAN="$(GFORTRAN_FOR_BUILD)"; export GFORTRAN; \ + DLLTOOL="$(DLLTOOL_FOR_BUILD)"; export DLLTOOL; \ + LD="$(LD_FOR_BUILD)"; export LD; \ + LDFLAGS="$(LDFLAGS_FOR_BUILD)"; export LDFLAGS; \ + NM="$(NM_FOR_BUILD)"; export NM; \ + RANLIB="$(RANLIB_FOR_BUILD)"; export RANLIB; \ + WINDRES="$(WINDRES_FOR_BUILD)"; export WINDRES; # This is the list of directories to built for the host system. SUBDIRS = @configdirs@ # This is set by the configure script to the arguments to use when configuring # directories built for the host system. HOST_CONFIGARGS = @host_configargs@ +# This is the list of variables to export in the environment when +# configuring subdirectories for the host system. It must also be +# exported whenever recursing into a host directory in case that +# directory's Makefile re-runs configure. +HOST_EXPORTS = \ + CC="$(CC)"; export CC; \ + CFLAGS="$(CFLAGS)"; export CFLAGS; \ + CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ + CXX="$(CXX)"; export CXX; \ + CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ + AR="$(AR)"; export AR; \ + AS="$(AS)"; export AS; \ + CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ + DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ + LD="$(LD)"; export LD; \ + LDFLAGS="$(LDFLAGS)"; export LDFLAGS; \ + NM="$(NM)"; export NM; \ + RANLIB="$(RANLIB)"; export RANLIB; \ + WINDRES="$(WINDRES)"; export WINDRES; \ + OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ + OBJDUMP="$(OBJDUMP)"; export OBJDUMP; + +# Similar, for the gcc directory. +GCC_HOST_EXPORTS = \ + $(HOST_EXPORTS) \ + TOPLEVEL_CONFIGURE_ARGUMENTS="$(TOPLEVEL_CONFIGURE_ARGUMENTS)"; export TOPLEVEL_CONFIGURE_ARGUMENTS; \ + GMPLIBS="$(HOST_GMPLIBS)"; export GMPLIBS; \ + GMPINC="$(HOST_GMPINC)"; export GMPINC; + +# Similar, for later GCC stages. +STAGE_HOST_EXPORTS = \ + $(GCC_HOST_EXPORTS) \ + CC="$(STAGE_CC_WRAPPER) $$r/prev-gcc/xgcc$(exeext) -B$$r/prev-gcc/ -B$(build_tooldir)/bin/"; export CC; \ + CC_FOR_BUILD="$(STAGE_CC_WRAPPER) $$r/prev-gcc/xgcc$(exeext) -B$$r/prev-gcc/ -B$(build_tooldir)/bin/"; export CC_FOR_BUILD; # This is set by the configure script to the list of directories which # should be built using the target tools. @@ -126,6 +180,39 @@ TARGET_SUBDIR = @target_subdir@ # This is set by the configure script to the arguments to use when configuring # directories built for the target. TARGET_CONFIGARGS = @target_configargs@ +# This is the list of variables to export in the environment when +# configuring subdirectories for the host system. It must also be +# exported whenever recursing into a host directory in case that +# directory's Makefile re-runs configure. +BASE_TARGET_EXPORTS = \ + AR="$(AR_FOR_TARGET)"; export AR; \ + AS="$(AS_FOR_TARGET)"; export AS; \ + CC="$(CC_FOR_TARGET)"; export CC; \ + CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \ + CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ + CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \ + CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \ + GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \ + GFORTRAN="$(GFORTRAN_FOR_TARGET)"; export GFORTRAN; \ + DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \ + LD="$(LD_FOR_TARGET)"; export LD; \ + LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \ + NM="$(NM_FOR_TARGET)"; export NM; \ + RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \ + WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; + +RAW_CXX_TARGET_EXPORTS = \ + $(BASE_TARGET_EXPORTS) \ + CXX_FOR_TARGET="$(RAW_CXX_FOR_TARGET)"; export CXX_FOR_TARGET; \ + CXX="$(RAW_CXX_FOR_TARGET)"; export CXX; + +NORMAL_TARGET_EXPORTS = \ + $(BASE_TARGET_EXPORTS) \ + CXX="$(CXX_FOR_TARGET)"; export CXX; + +# Where to find GMP +HOST_GMPLIBS = @gmplibs@ +HOST_GMPINC = @gmpinc@ # ---------------------------------------------- # Programs producing files for the BUILD machine @@ -244,7 +331,7 @@ PICFLAG = # This is the list of directories that may be needed in RPATH_ENVVAR # so that prorgams built for the target machine work. -TARGET_LIB_PATH = $$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs: +TARGET_LIB_PATH = $$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs:$$r/$(TARGET_SUBDIR)/libmudflap/.libs FLAGS_FOR_TARGET = @FLAGS_FOR_TARGET@ @@ -311,6 +398,7 @@ USUAL_DLLTOOL_FOR_TARGET = ` \ fi` GCJ_FOR_TARGET = @GCJ_FOR_TARGET@ +GFORTRAN_FOR_TARGET = @GFORTRAN_FOR_TARGET@ LD_FOR_TARGET=@LD_FOR_TARGET@ CONFIGURED_LD_FOR_TARGET=@CONFIGURED_LD_FOR_TARGET@ @@ -644,6 +732,7 @@ install.all: install-no-fixedincludes @if [ -f ./gcc/Makefile ] ; then \ r=`${PWD_COMMAND}` ; export r ; \ $(SET_LIB_PATH) \ + $(GCC_HOST_EXPORTS) \ (cd ./gcc && \ $(MAKE) $(FLAGS_TO_PASS) install-headers) ; \ else \ @@ -692,25 +781,14 @@ TAGS: do-TAGS [+ FOR build_modules +] .PHONY: configure-build-[+module+] maybe-configure-build-[+module+] maybe-configure-build-[+module+]: +@if build-[+module+] +maybe-configure-build-[+module+]: configure-build-[+module+] configure-build-[+module+]: @test ! -f $(BUILD_SUBDIR)/[+module+]/Makefile || exit 0; \ $(SHELL) $(srcdir)/mkinstalldirs $(BUILD_SUBDIR)/[+module+] ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - AR="$(AR_FOR_BUILD)"; export AR; \ - AS="$(AS_FOR_BUILD)"; export AS; \ - CC="$(CC_FOR_BUILD)"; export CC; \ - CFLAGS="$(CFLAGS_FOR_BUILD)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX_FOR_BUILD)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS_FOR_BUILD)"; export CXXFLAGS; \ - GCJ="$(GCJ_FOR_BUILD)"; export GCJ; \ - DLLTOOL="$(DLLTOOL_FOR_BUILD)"; export DLLTOOL; \ - LD="$(LD_FOR_BUILD)"; export LD; \ - LDFLAGS="$(LDFLAGS_FOR_BUILD)"; export LDFLAGS; \ - NM="$(NM_FOR_BUILD)"; export NM; \ - RANLIB="$(RANLIB_FOR_BUILD)"; export RANLIB; \ - WINDRES="$(WINDRES_FOR_BUILD)"; export WINDRES; \ + $(BUILD_EXPORTS) \ echo Configuring in $(BUILD_SUBDIR)/[+module+]; \ cd "$(BUILD_SUBDIR)/[+module+]" || exit 1; \ case $(srcdir) in \ @@ -751,13 +829,18 @@ configure-build-[+module+]: $(BUILD_CONFIGARGS) $${srcdiroption} \ --with-build-subdir="$(BUILD_SUBDIR)" \ || exit 1 +@endif build-[+module+] .PHONY: all-build-[+module+] maybe-all-build-[+module+] maybe-all-build-[+module+]: +@if build-[+module+] +maybe-all-build-[+module+]: all-build-[+module+] all-build-[+module+]: configure-build-[+module+] @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(BUILD_EXPORTS) \ (cd $(BUILD_SUBDIR)/[+module+] && $(MAKE) all) +@endif build-[+module+] [+ ENDFOR build_modules +] # -------------------------------------- @@ -766,26 +849,14 @@ all-build-[+module+]: configure-build-[+ [+ FOR host_modules +] .PHONY: configure-[+module+] maybe-configure-[+module+] maybe-configure-[+module+]: +@if [+module+] +maybe-configure-[+module+]: configure-[+module+] configure-[+module+]: @test ! -f [+module+]/Makefile || exit 0; \ [ -d [+module+] ] || mkdir [+module+]; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(HOST_EXPORTS) \ echo Configuring in [+module+]; \ cd [+module+] || exit 1; \ case $(srcdir) in \ @@ -802,20 +873,27 @@ configure-[+module+]: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif [+module+] .PHONY: all-[+module+] maybe-all-[+module+] maybe-all-[+module+]: +@if [+module+] +maybe-all-[+module+]: all-[+module+] all-[+module+]: configure-[+module+] @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd [+module+] && $(MAKE) $(FLAGS_TO_PASS)[+ IF with_x +] $(X11_FLAGS_TO_PASS)[+ ENDIF with_x +] all) +@endif [+module+] .PHONY: check-[+module+] maybe-check-[+module+] maybe-check-[+module+]: +@if [+module+] +maybe-check-[+module+]: check-[+module+] [+ IF no_check +] check-[+module+]: [+ ELIF no_check_cross +] @@ -825,6 +903,7 @@ check-[+module+]: r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd [+module+] && $(MAKE) $(FLAGS_TO_PASS)[+ IF with_x +] $(X11_FLAGS_TO_PASS)[+ @@ -835,14 +914,18 @@ check-[+module+]: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd [+module+] && $(MAKE) $(FLAGS_TO_PASS)[+ IF with_x +] $(X11_FLAGS_TO_PASS)[+ ENDIF with_x +] check) [+ ENDIF no_check +] +@endif [+module+] .PHONY: install-[+module+] maybe-install-[+module+] maybe-install-[+module+]: +@if [+module+] +maybe-install-[+module+]: install-[+module+] [+ IF no_install +] install-[+module+]: [+ ELSE install +] @@ -850,16 +933,20 @@ install-[+module+]: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ (cd [+module+] && $(MAKE) $(FLAGS_TO_PASS)[+ IF with_x +] $(X11_FLAGS_TO_PASS)[+ ENDIF with_x +] install) [+ ENDIF no_install +] +@endif [+module+] # Other targets (info, dvi, etc.) [+ FOR recursive_targets +] .PHONY: maybe-[+make_target+]-[+module+] [+make_target+]-[+module+] maybe-[+make_target+]-[+module+]: +@if [+module+] +maybe-[+make_target+]-[+module+]: [+make_target+]-[+module+] [+ IF (match-value? = "missing" (get "make_target") ) +] # [+module+] doesn't support [+make_target+]. [+make_target+]-[+module+]: @@ -872,6 +959,7 @@ maybe-[+make_target+]-[+module+]: r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(HOST_EXPORTS) \ for flag in $(EXTRA_HOST_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ @@ -884,6 +972,7 @@ maybe-[+make_target+]-[+module+]: [+make_target+]) \ || exit 1 [+ ENDIF +] +@endif [+module+] [+ ENDFOR recursive_targets +] [+ ENDFOR host_modules +] @@ -893,6 +982,8 @@ maybe-[+make_target+]-[+module+]: [+ FOR target_modules +] .PHONY: configure-target-[+module+] maybe-configure-target-[+module+] maybe-configure-target-[+module+]: +@if target-[+module+] +maybe-configure-target-[+module+]: configure-target-[+module+] # There's only one multilib.out. Cleverer subdirs shouldn't need it copied. $(TARGET_SUBDIR)/[+module+]/multilib.out: multilib.out @@ -905,27 +996,12 @@ configure-target-[+module+]: $(TARGET_SU $(SHELL) $(srcdir)/mkinstalldirs $(TARGET_SUBDIR)/[+module+] ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - $(SET_LIB_PATH) \ - AR="$(AR_FOR_TARGET)"; export AR; \ - AS="$(AS_FOR_TARGET)"; export AS; \ - CC="$(CC_FOR_TARGET)"; export CC; \ - CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CPPFLAGS="$(CFLAGS_FOR_TARGET)"; export CPPFLAGS; \[+ + $(SET_LIB_PATH) \[+ IF raw_cxx +] - CXX_FOR_TARGET="$(RAW_CXX_FOR_TARGET)"; export CXX_FOR_TARGET; \ - CXX="$(RAW_CXX_FOR_TARGET)"; export CXX; \[+ + $(RAW_CXX_TARGET_EXPORTS) \[+ ELSE normal_cxx +] - CXX="$(CXX_FOR_TARGET)"; export CXX; \[+ + $(NORMAL_TARGET_EXPORTS) \[+ ENDIF raw_cxx +] - CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \ - GCJ="$(GCJ_FOR_TARGET)"; export GCJ; \ - DLLTOOL="$(DLLTOOL_FOR_TARGET)"; export DLLTOOL; \ - LD="$(LD_FOR_TARGET)"; export LD; \ - LDFLAGS="$(LDFLAGS_FOR_TARGET)"; export LDFLAGS; \ - NM="$(NM_FOR_TARGET)"; export NM; \ - RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \ - WINDRES="$(WINDRES_FOR_TARGET)"; export WINDRES; \ echo Configuring in $(TARGET_SUBDIR)/[+module+]; \ cd "$(TARGET_SUBDIR)/[+module+]" || exit 1; \ case $(srcdir) in \ @@ -966,22 +1042,33 @@ ENDIF raw_cxx +] $(TARGET_CONFIGARGS) $${srcdiroption} \ --with-target-subdir="$(TARGET_SUBDIR)" \ || exit 1 +@endif target-[+module+] .PHONY: all-target-[+module+] maybe-all-target-[+module+] maybe-all-target-[+module+]: +@if target-[+module+] +maybe-all-target-[+module+]: all-target-[+module+] all-target-[+module+]: configure-target-[+module+] @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - $(SET_LIB_PATH) \ + $(SET_LIB_PATH) \[+ +IF raw_cxx +] + $(RAW_CXX_TARGET_EXPORTS) \[+ +ELSE normal_cxx +] + $(NORMAL_TARGET_EXPORTS) \[+ +ENDIF raw_cxx +] (cd $(TARGET_SUBDIR)/[+module+] && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) [+ IF raw_cxx +] 'CXX=$$(RAW_CXX_FOR_TARGET)' 'CXX_FOR_TARGET=$$(RAW_CXX_FOR_TARGET)' [+ ENDIF raw_cxx +] all) +@endif target-[+module+] .PHONY: check-target-[+module+] maybe-check-target-[+module+] maybe-check-target-[+module+]: +@if target-[+module+] +maybe-check-target-[+module+]: check-target-[+module+] [+ IF no_check +] # Dummy target for uncheckable module. check-target-[+module+]: @@ -989,7 +1076,12 @@ check-target-[+module+]: check-target-[+module+]: @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - $(SET_LIB_PATH) \ + $(SET_LIB_PATH) \[+ +IF raw_cxx +] + $(RAW_CXX_TARGET_EXPORTS) \[+ +ELSE normal_cxx +] + $(NORMAL_TARGET_EXPORTS) \[+ +ENDIF raw_cxx +] (cd $(TARGET_SUBDIR)/[+module+] && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) [+ IF raw_cxx @@ -997,9 +1089,12 @@ check-target-[+module+]: ENDIF raw_cxx +] check) [+ ENDIF no_check +] +@endif target-[+module+] .PHONY: install-target-[+module+] maybe-install-target-[+module+] maybe-install-target-[+module+]: +@if target-[+module+] +maybe-install-target-[+module+]: install-target-[+module+] [+ IF no_install +] # Dummy target for uninstallable. install-target-[+module+]: @@ -1007,15 +1102,23 @@ install-target-[+module+]: install-target-[+module+]: installdirs @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - $(SET_LIB_PATH) \ + $(SET_LIB_PATH) \[+ +IF raw_cxx +] + $(RAW_CXX_TARGET_EXPORTS) \[+ +ELSE normal_cxx +] + $(NORMAL_TARGET_EXPORTS) \[+ +ENDIF raw_cxx +] (cd $(TARGET_SUBDIR)/[+module+] && \ $(MAKE) $(TARGET_FLAGS_TO_PASS) install) [+ ENDIF no_install +] +@endif target-[+module+] # Other targets (info, dvi, etc.) [+ FOR recursive_targets +] .PHONY: maybe-[+make_target+]-target-[+module+] [+make_target+]-target-[+module+] maybe-[+make_target+]-target-[+module+]: +@if target-[+module+] +maybe-[+make_target+]-target-[+module+]: [+make_target+]-target-[+module+] [+ IF (match-value? = "missing" (get "make_target") ) +] # [+module+] doesn't support [+make_target+]. [+make_target+]-target-[+module+]: @@ -1027,7 +1130,12 @@ maybe-[+make_target+]-target-[+module+]: @[ -f $(TARGET_SUBDIR)/[+module+]/Makefile ] || exit 0 ; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - $(SET_LIB_PATH) \ + $(SET_LIB_PATH) \[+ +IF raw_cxx +] + $(RAW_CXX_TARGET_EXPORTS) \[+ +ELSE normal_cxx +] + $(NORMAL_TARGET_EXPORTS) \[+ +ENDIF raw_cxx +] echo "Doing [+make_target+] in $(TARGET_SUBDIR)/[+module+]" ; \ for flag in $(EXTRA_TARGET_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ @@ -1040,6 +1148,7 @@ maybe-[+make_target+]-target-[+module+]: [+make_target+]) \ || exit 1 [+ ENDIF +] +@endif target-[+module+] [+ ENDFOR recursive_targets +] [+ ENDFOR target_modules +] @@ -1059,28 +1168,15 @@ maybe-[+make_target+]-target-[+module+]: # We must skip configuring if toplevel bootstrap is going. .PHONY: configure-gcc maybe-configure-gcc maybe-configure-gcc: +@if gcc +maybe-configure-gcc: configure-gcc configure-gcc: @test ! -f gcc/Makefile || exit 0; \ [ -f stage_last ] && exit 0; \ [ -d gcc ] || mkdir gcc; \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - TOPLEVEL_CONFIGURE_ARGUMENTS="$(TOPLEVEL_CONFIGURE_ARGUMENTS)"; export TOPLEVEL_CONFIGURE_ARGUMENTS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ + $(GCC_HOST_EXPORTS) \ echo Configuring in gcc; \ cd gcc || exit 1; \ case $(srcdir) in \ @@ -1097,15 +1193,19 @@ configure-gcc: $(SHELL) $${libsrcdir}/configure \ $(HOST_CONFIGARGS) $${srcdiroption} \ || exit 1 +@endif gcc # Don't 'make all' in gcc if it's already been made by 'bootstrap'; that # causes trouble. This wart will be fixed eventually by moving # the bootstrap behavior to this file. .PHONY: all-gcc maybe-all-gcc maybe-all-gcc: +@if gcc +maybe-all-gcc: all-gcc all-gcc: configure-gcc r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(GCC_HOST_EXPORTS) \ if [ -f stage_last ] ; then \ true ; \ elif [ -f gcc/stage_last ] ; then \ @@ -1115,6 +1215,7 @@ all-gcc: configure-gcc $(SET_LIB_PATH) \ (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) all); \ fi +@endif gcc # Building GCC uses some tools for rebuilding "source" files # like texinfo, bison/byacc, etc. So we must depend on those. @@ -1132,6 +1233,7 @@ $(GCC_STRAP_TARGETS): all-bootstrap conf @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(GCC_HOST_EXPORTS) \ echo "Bootstrapping the compiler"; \ cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) $@ @r=`${PWD_COMMAND}`; export r; \ @@ -1151,6 +1253,7 @@ $(GCC_STRAP_TARGETS): all-bootstrap conf compare=compare ;; \ esac; \ $(SET_LIB_PATH) \ + $(GCC_HOST_EXPORTS) \ echo "$$msg"; \ cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) $$compare @r=`${PWD_COMMAND}`; export r; \ @@ -1163,6 +1266,7 @@ profiledbootstrap: all-bootstrap configu @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(GCC_HOST_EXPORTS) \ echo "Bootstrapping the compiler"; \ cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) stageprofile_build @r=`${PWD_COMMAND}`; export r; \ @@ -1173,6 +1277,7 @@ profiledbootstrap: all-bootstrap configu @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(GCC_HOST_EXPORTS) \ echo "Building feedback based compiler"; \ cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) stagefeedback_build @@ -1181,6 +1286,7 @@ cross: all-texinfo all-bison all-byacc a @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(GCC_HOST_EXPORTS) \ echo "Building the C and C++ compiler"; \ cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) LANGUAGES="c c++" @r=`${PWD_COMMAND}`; export r; \ @@ -1192,11 +1298,14 @@ cross: all-texinfo all-bison all-byacc a .PHONY: check-gcc maybe-check-gcc maybe-check-gcc: +@if gcc +maybe-check-gcc: check-gcc check-gcc: @if [ -f ./gcc/Makefile ] ; then \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(GCC_HOST_EXPORTS) \ (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) check); \ else \ true; \ @@ -1208,6 +1317,7 @@ check-gcc-c++: r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(GCC_HOST_EXPORTS) \ (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) check-c++); \ else \ true; \ @@ -1215,18 +1325,23 @@ check-gcc-c++: .PHONY: check-c++ check-c++: check-target-libstdc++-v3 check-gcc-c++ +@endif gcc .PHONY: install-gcc maybe-install-gcc maybe-install-gcc: +@if gcc +maybe-install-gcc: install-gcc install-gcc: @if [ -f ./gcc/Makefile ] ; then \ r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ $(SET_LIB_PATH) \ + $(GCC_HOST_EXPORTS) \ (cd gcc && $(MAKE) $(GCC_FLAGS_TO_PASS) install); \ else \ true; \ fi +@endif gcc # Install the gcc headers files, but not the fixed include files, # which Cygnus is not allowed to distribute. This rule is very @@ -1243,6 +1358,7 @@ gcc-no-fixedincludes: r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}` ; export s; \ $(SET_LIB_PATH) \ + $(GCC_HOST_EXPORTS) \ (cd ./gcc && \ $(MAKE) $(GCC_FLAGS_TO_PASS) install); \ rm -rf gcc/include; \ @@ -1253,6 +1369,8 @@ gcc-no-fixedincludes: [+ FOR recursive_targets +] .PHONY: maybe-[+make_target+]-gcc [+make_target+]-gcc maybe-[+make_target+]-gcc: +@if gcc +maybe-[+make_target+]-gcc: [+make_target+]-gcc [+make_target+]-gcc: [+ FOR depend +]\ [+depend+]-gcc [+ @@ -1264,6 +1382,7 @@ maybe-[+make_target+]-gcc: for flag in $(EXTRA_GCC_FLAGS); do \ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ done; \ + $(GCC_HOST_EXPORTS) \ echo "Doing [+make_target+] in gcc" ; \ (cd gcc && \ $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ @@ -1272,6 +1391,7 @@ maybe-[+make_target+]-gcc: "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" \ [+make_target+]) \ || exit 1 +@endif gcc [+ ENDFOR recursive_targets +] @@ -1279,16 +1399,26 @@ maybe-[+make_target+]-gcc: # GCC bootstrap support # --------------------- -# We name the directories for the various stages "stage1-gcc", -# "stage2-gcc","stage3-gcc", etc. -# Unfortunately, the 'compare' process will fail (on debugging information) -# if any directory names are different! -# So in the building rule for each stage, we relocate them before and after. -# The current one is 'gcc', while the previous one is 'prev-gcc'. (The -# current one must be 'gcc' for now because the scripts in that directory -# assume it.) -# At the end of the bootstrap, 'stage3-gcc' must be moved to 'gcc' so that -# libraries can find it. Ick! +# We track the current stage (the one in 'gcc') in the stage_last file. +# We name the build directories for the various stages "stage1-gcc", +# "stage2-gcc","stage3-gcc", etc. + +# Since the 'compare' process will fail (on debugging information) if any +# directory names are different, we need to link the gcc directory for +# the previous stage to a constant name ('gcc-prev'), and to make the name of +# the build directories constant as well. For the latter, we use naked names +# like 'gcc', because the scripts in that directory assume it. We use +# mv on platforms where symlinks to directories do not work or are not +# reliable. + +# At the end of the bootstrap, a symlink to 'stage3-gcc' named 'gcc' must +# be kept, so that libraries can find it. Ick! + +# It would be best to preinstall gcc into a staging area (and in the +# future, gather there all prebootstrap packages). This would allow +# assemblers and linkers can be bootstrapped as well as the compiler +# (both in a combined tree, or separately). This however requires some +# change to the gcc driver, again in order to avoid comparison failures. # Bugs: This is almost certainly not parallel-make safe. @@ -1304,62 +1434,8 @@ STAMP = echo timestamp > STAGE1_CFLAGS=@stage1_cflags@ STAGE1_LANGUAGES=@stage1_languages@ -# For stage 1: -# * We force-disable intermodule optimizations, even if -# --enable-intermodule was passed, since the installed compiler probably -# can't handle them. Luckily, autoconf always respects -# the last argument when conflicting --enable arguments are passed. -# * Likewise, we force-disable coverage flags, since the installed compiler -# probably has never heard of them. -# * We build only C (and possibly Ada). -configure-stage1-gcc: - echo configure-stage1-gcc > stage_last ; \ - if [ -f stage1-gcc/Makefile ] ; then \ - $(STAMP) configure-stage1-gcc ; \ - exit 0; \ - else \ - true ; \ - fi ; \ - [ -d stage1-gcc ] || mkdir stage1-gcc; \ - mv stage1-gcc gcc ; \ - r=`${PWD_COMMAND}`; export r; \ - s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - TOPLEVEL_CONFIGURE_ARGUMENTS="$(TOPLEVEL_CONFIGURE_ARGUMENTS)"; export TOPLEVEL_CONFIGURE_ARGUMENTS; \ - CC="$(CC)"; export CC; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ - echo Configuring stage 1 in gcc; \ - cd gcc || exit 1; \ - case $(srcdir) in \ - \.) \ - srcdiroption="--srcdir=."; \ - libsrcdir=".";; \ - /* | [A-Za-z]:[\\/]*) \ - srcdiroption="--srcdir=$(srcdir)/gcc"; \ - libsrcdir="$$s/gcc";; \ - *) \ - srcdiroption="--srcdir=../$(srcdir)/gcc"; \ - libsrcdir="$$s/gcc";; \ - esac; \ - $(SHELL) $${libsrcdir}/configure \ - $(HOST_CONFIGARGS) $${srcdiroption} \ - --disable-intermodule --disable-coverage \ - --enable-languages="$(STAGE1_LANGUAGES)"; \ - cd .. ; \ - mv gcc stage1-gcc ; \ - $(STAMP) configure-stage1-gcc +# We only want to compare .o files, so set this! +objext = .o # Real targets act phony if they depend on phony targets; this hack # prevents gratuitous rebuilding of stage 1. @@ -1367,124 +1443,66 @@ prebootstrap: $(MAKE) all-bootstrap $(STAMP) prebootstrap -all-stage1-gcc: configure-stage1-gcc prebootstrap - echo all-stage1-gcc > stage_last ; \ - r=`${PWD_COMMAND}`; export r; \ - s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - mv stage1-gcc gcc ; \ - cd gcc && \ - $(MAKE) $(GCC_FLAGS_TO_PASS) \ - CFLAGS="$(STAGE1_CFLAGS)" \ - || exit 1 ; \ - cd .. ; \ - mv gcc stage1-gcc ; \ - $(STAMP) all-stage1-gcc - -# TODO: Deal with STAGE_PREFIX (which is only for ada, incidentally) -# Possibly pass --enable-werror-always (depending on --enable-werror); -# that's what @stage2_werror_flag@ is for -configure-stage2-gcc: all-stage1-gcc - echo configure-stage2-gcc > stage_last ; \ - if [ -f stage2-gcc/Makefile ] ; then \ - $(STAMP) configure-stage2-gcc ; \ - exit 0; \ - else \ - true ; \ - fi ; \ - [ -d stage2-gcc ] || mkdir stage2-gcc; \ - mv stage2-gcc gcc ; \ - mv stage1-gcc prev-gcc ; \ - r=`${PWD_COMMAND}`; export r; \ - s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - TOPLEVEL_CONFIGURE_ARGUMENTS="$(TOPLEVEL_CONFIGURE_ARGUMENTS)"; export TOPLEVEL_CONFIGURE_ARGUMENTS; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ - CC="$(STAGE_CC_WRAPPER) $$r/prev-gcc/xgcc$(exeext) -B$$r/prev-gcc/ -B$(build_tooldir)/bin/"; export CC; \ - CC_FOR_BUILD="$(STAGE_CC_WRAPPER) $$r/prev-gcc/xgcc$(exeext) -B$$r/prev-gcc/ -B$(build_tooldir)/bin/"; export CC_FOR_BUILD; \ - echo Configuring stage 2 in gcc; \ - cd gcc || exit 1; \ - case $(srcdir) in \ - \.) \ - srcdiroption="--srcdir=."; \ - libsrcdir=".";; \ - /* | [A-Za-z]:[\\/]*) \ - srcdiroption="--srcdir=$(srcdir)/gcc"; \ - libsrcdir="$$s/gcc";; \ - *) \ - srcdiroption="--srcdir=../$(srcdir)/gcc"; \ - libsrcdir="$$s/gcc";; \ - esac; \ - $(SHELL) $${libsrcdir}/configure \ - $(HOST_CONFIGARGS) $${srcdiroption} @stage2_werror_flag@ ; \ - cd .. ; \ - mv gcc stage2-gcc ; \ - mv prev-gcc stage1-gcc ; \ - $(STAMP) configure-stage2-gcc - # Flags to pass to stage2 and later makes. BOOT_CFLAGS= -g -O2 POSTSTAGE1_FLAGS_TO_PASS = \ CFLAGS="$(BOOT_CFLAGS)" \ ADAC="\$$(CC)" -all-stage2-gcc: all-stage1-gcc configure-stage2-gcc - echo all-stage2-gcc > stage_last ; \ - r=`${PWD_COMMAND}`; export r; \ - s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - mv stage2-gcc gcc ; \ - mv stage1-gcc prev-gcc ; \ - cd gcc && \ - $(MAKE) $(GCC_FLAGS_TO_PASS) \ - CC="$(STAGE_CC_WRAPPER) $$r/prev-gcc/xgcc$(exeext) -B$$r/prev-gcc/ -B$(build_tooldir)/bin/" \ - CC_FOR_BUILD="$(STAGE_CC_WRAPPER) $$r/prev-gcc/xgcc$(exeext) -B$$r/prev-gcc/ -B$(build_tooldir)/bin/" \ - STAGE_PREFIX=$$r/prev-gcc/ \ - $(POSTSTAGE1_FLAGS_TO_PASS) || exit 1 ; \ - cd .. ; \ - mv prev-gcc stage1-gcc ; \ - mv gcc stage2-gcc ; \ - $(STAMP) all-stage2-gcc - -configure-stage3-gcc: all-stage2-gcc - echo configure-stage3-gcc > stage_last ; \ - if [ -f stage3-gcc/Makefile ] ; then \ - $(STAMP) configure-stage3-gcc ; \ +# For stage 1: +# * We force-disable intermodule optimizations, even if +# --enable-intermodule was passed, since the installed compiler probably +# can't handle them. Luckily, autoconf always respects +# the last argument when conflicting --enable arguments are passed. +# * Likewise, we force-disable coverage flags, since the installed compiler +# probably has never heard of them. +# * We build only C (and possibly Ada). + +[+ FOR bootstrap-stage +] +.PHONY: new-stage[+id+]-start new-stage[+id+]-end + +new-stage[+id+]-start: + [ -f stage_last ] && $(MAKE) new-`cat stage_last`-end || : + echo stage[+id+] > stage_last ; \ + [ -d stage[+id+]-gcc ] || mkdir stage[+id+]-gcc; \ + set stage[+id+]-gcc gcc ; @CREATE_LINK_TO_DIR@ [+ IF prev +] ; \ + set stage[+prev+]-gcc prev-gcc ; @CREATE_LINK_TO_DIR@ [+ ENDIF prev +] + +new-stage[+id+]-end: + rm -f stage_last ; \ + set gcc stage[+id+]-gcc ; @UNDO_LINK_TO_DIR@ [+ IF prev +] ; \ + set prev-gcc stage[+prev+]-gcc ; @UNDO_LINK_TO_DIR@ [+ ENDIF prev +] + +# Bubble a bugfix through all the stages up to stage [+id+]. They +# are remade, but not reconfigured. The next stage (if any) will not +# be reconfigured as well. +.PHONY: new-stage[+id+]-bubble +new-stage[+id+]-bubble: [+ IF prev +]new-stage[+prev+]-bubble[+ ENDIF +] + @if [ -f all-stage[+id+]-gcc ] ; then \ + echo Remaking stage [+id+] ; \ + rm -f all-stage[+id+]-gcc ; \ + $(MAKE) all-stage[+id+]-gcc [+ IF next +] && \ + if [ -f configure-stage[+next+]-gcc ] ; then \ + $(STAMP) configure-stage[+next+]-gcc ; \ + fi [+ ENDIF next +]; \ + else \ + $(MAKE) all-stage[+id+]-gcc ; \ + fi + +configure-stage[+id+]-gcc: [+ IF prev +] all-stage[+prev+]-gcc [+ + ELSE +] prebootstrap [+ ENDIF prev +] + $(MAKE) new-stage[+id+]-start + @if [ -f stage[+id+]-gcc/Makefile ] ; then \ + $(STAMP) configure-stage[+id+]-gcc ; \ exit 0; \ else \ true ; \ fi ; \ - [ -d stage3-gcc ] || mkdir stage3-gcc; \ - mv stage3-gcc gcc ; \ - mv stage2-gcc prev-gcc ; \ r=`${PWD_COMMAND}`; export r; \ - s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \ - TOPLEVEL_CONFIGURE_ARGUMENTS="$(TOPLEVEL_CONFIGURE_ARGUMENTS)"; export TOPLEVEL_CONFIGURE_ARGUMENTS; \ - CFLAGS="$(CFLAGS)"; export CFLAGS; \ - CXX="$(CXX)"; export CXX; \ - CXXFLAGS="$(CXXFLAGS)"; export CXXFLAGS; \ - AR="$(AR)"; export AR; \ - AS="$(AS)"; export AS; \ - DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \ - LD="$(LD)"; export LD; \ - NM="$(NM)"; export NM; \ - RANLIB="$(RANLIB)"; export RANLIB; \ - WINDRES="$(WINDRES)"; export WINDRES; \ - OBJCOPY="$(OBJCOPY)"; export OBJCOPY; \ - OBJDUMP="$(OBJDUMP)"; export OBJDUMP; \ - CC="$(STAGE_CC_WRAPPER) $$r/prev-gcc/xgcc$(exeext) -B$$r/prev-gcc/ -B$(build_tooldir)/bin/"; export CC; \ - CC_FOR_BUILD="$(STAGE_CC_WRAPPER) $$r/prev-gcc/xgcc$(exeext) -B$$r/prev-gcc/ -B$(build_tooldir)/bin/"; export CC_FOR_BUILD; \ - echo Configuring stage 3 in gcc; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; [+ IF prev +] \ + $(STAGE_HOST_EXPORTS) [+ ELSE prev +] \ + $(GCC_HOST_EXPORTS) [+ ENDIF prev +] \ + echo Configuring stage [+id+] in gcc ; \ cd gcc || exit 1; \ case $(srcdir) in \ \.) \ @@ -1498,42 +1516,34 @@ configure-stage3-gcc: all-stage2-gcc libsrcdir="$$s/gcc";; \ esac; \ $(SHELL) $${libsrcdir}/configure \ - $(HOST_CONFIGARGS) $${srcdiroption} @stage2_werror_flag@ ; \ - cd .. ; \ - mv gcc stage3-gcc ; \ - mv prev-gcc stage2-gcc ; \ - $(STAMP) configure-stage3-gcc + $(HOST_CONFIGARGS) $${srcdiroption} \ + [+extra_configure_flags+] && \ + $(STAMP) ../configure-stage[+id+]-gcc -all-stage3-gcc: all-stage2-gcc configure-stage3-gcc - echo all-stage3-gcc > stage_last ; \ - r=`${PWD_COMMAND}`; export r; \ - s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ - mv stage2-gcc prev-gcc ; \ - mv stage3-gcc gcc ; \ +all-stage[+id+]-gcc: configure-stage[+id+]-gcc + $(MAKE) new-stage[+id+]-start + @r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; [+ IF prev +] \ + $(STAGE_HOST_EXPORTS) [+ ELSE prev +] \ + $(GCC_HOST_EXPORTS) [+ ENDIF prev +] \ cd gcc && \ - $(MAKE) $(GCC_FLAGS_TO_PASS) \ - CC="$(STAGE_CC_WRAPPER) $$r/prev-gcc/xgcc$(exeext) -B$$r/prev-gcc/ -B$(build_tooldir)/bin/" \ - CC_FOR_BUILD="$(STAGE_CC_WRAPPER) $$r/prev-gcc/xgcc$(exeext) -B$$r/prev-gcc/ -B$(build_tooldir)/bin/" \ - STAGE_PREFIX=$$r/prev-gcc/ \ - $(POSTSTAGE1_FLAGS_TO_PASS) || exit 1 ; \ - cd .. ; \ - mv prev-gcc stage2-gcc ; \ - mv gcc stage3-gcc ; \ - $(STAMP) all-stage3-gcc - -# We only want to compare .o files, so set this! -objext = .o - -compare: all-stage3-gcc - r=`${PWD_COMMAND}`; export r; \ + $(MAKE) $(GCC_FLAGS_TO_PASS) [+ IF prev +] \ + CC="$${CC}" CC_FOR_BUILD="${CC_FOR_BUILD}" \ + STAGE_PREFIX=$$r/stage[+prev+]-gcc/ [+ ENDIF prev +] \ + [+extra_make_flags+] && $(STAMP) ../all-stage[+id+]-gcc + +[+ IF compare-target +] +[+compare-target+]: all-stage[+id+]-gcc + [ -f stage_last ] && $(MAKE) new-`cat stage_last`-end || : + @r=`${PWD_COMMAND}`; export r; \ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ rm -f .bad_compare ; \ - cd stage3-gcc; \ + cd stage[+id+]-gcc; \ files=`find . -name "*$(objext)" -print` ; \ cd .. ; \ for file in $${files} ; do \ - cmp --ignore-initial=16 $$r/stage2-gcc/$$file $$r/stage3-gcc/$$file \ - > /dev/null 2>&1; \ + f1=$$r/stage[+prev+]-gcc/$$file; f2=$$r/stage[+id+]-gcc/$$file; \ + @do_compare@ > /dev/null 2>&1; \ test $$? -eq 1 && echo $$file differs >> .bad_compare || true; \ done ; \ if [ -f .bad_compare ]; then \ @@ -1543,16 +1553,38 @@ compare: all-stage3-gcc else \ true; \ fi ; \ - $(STAMP) compare + $(STAMP) [+compare-target+] +[+ ENDIF compare-target +] + +[+ IF bootstrap-target +] +.PHONY: [+bootstrap-target+] +[+bootstrap-target+]: + $(MAKE) new-stage[+id+]-bubble [+ + IF compare-target +] [+compare-target+] [+ + ENDIF compare-target +] \ + new-stage[+id+]-start all new-stage[+id+]-end +[+ ENDIF bootstrap-target +] + +.PHONY: new-restage[+id+] distclean-stage[+id+] + +distclean-stage[+id+]: [+ IF next +] distclean-stage[+next+] [+ ENDIF next +] + [ -f stage_last ] && $(MAKE) new-`cat stage_last`-end || : + rm -rf configure-stage[+id+]-gcc all-stage[+id+]-gcc stage[+id+]-gcc [+ + IF compare-target +][+compare-target+] [+ ENDIF compare-target +] + +new-restage[+id+]: [+ IF next +] distclean-stage[+next+] [+ ENDIF next +] + rm -rf all-stage[+id+]-gcc [+ + IF compare-target +][+compare-target+] [+ ENDIF compare-target +] + $(MAKE) [+ + IF compare-target +][+compare-target+] [+ + ELSE +] all-stage[+id+]-gcc [+ ENDIF compare-target +] + +[+ IF cleanstrap-target +] +.PHONY: [+cleanstrap-target+] +[+cleanstrap-target+]: distclean-stage1 [+bootstrap-target+] +[+ ENDIF cleanstrap-target +] -.PHONY: new-bootstrap -# This target exists so that everything can be made in one pass. -# 'all-gcc' has to avoid stomping on the bootstrap-generated gcc for -# this to work. -new-bootstrap: compare - mv stage3-gcc gcc ; \ - $(MAKE) all ; \ - mv gcc stage3-gcc +[+ ENDFOR bootstrap-stage +] # -------------------------------------- # Dependencies between different modules @@ -1569,11 +1601,13 @@ new-bootstrap: compare # GCC needs to identify certain tools. # GCC also needs the information exported by the intl configure script. configure-gcc: maybe-configure-intl maybe-configure-binutils maybe-configure-gas maybe-configure-ld maybe-configure-bison maybe-configure-flex -all-gcc: maybe-all-libiberty maybe-all-intl maybe-all-bison maybe-all-byacc maybe-all-binutils maybe-all-gas maybe-all-ld maybe-all-zlib +all-gcc: maybe-all-libiberty maybe-all-intl maybe-all-bison maybe-all-byacc maybe-all-binutils maybe-all-gas maybe-all-ld maybe-all-zlib maybe-all-libbanshee maybe-all-libcpp +configure-libcpp: maybe-configure-libiberty maybe-configure-intl +all-libcpp: maybe-all-libiberty maybe-all-intl # This is a slightly kludgy method of getting dependencies on # all-build-libiberty correct; it would be better to build it every time. all-gcc: maybe-all-build-libiberty -all-bootstrap: maybe-all-libiberty maybe-all-intl maybe-all-texinfo maybe-all-bison maybe-all-byacc maybe-all-binutils maybe-all-gas maybe-all-ld maybe-all-zlib +all-bootstrap: [+ FOR host_modules +][+ IF bootstrap +]maybe-all-[+module+] [+ ENDIF bootstrap +][+ ENDFOR host_modules +] # Host modules specific to gdb. # GDB needs to know that the simulator is being built. @@ -1646,8 +1680,7 @@ configure-target-boehm-gc: $(ALL_GCC_C) configure-target-fastjar: maybe-configure-target-zlib all-target-fastjar: maybe-all-target-zlib maybe-all-target-libiberty configure-target-libada: $(ALL_GCC_C) -configure-target-libf2c: $(ALL_GCC_C) -all-target-libf2c: maybe-all-target-libiberty +configure-target-libgfortran: $(ALL_GCC_C) configure-target-libffi: $(ALL_GCC_C) configure-target-libjava: $(ALL_GCC_C) maybe-configure-target-zlib maybe-configure-target-boehm-gc maybe-configure-target-qthreads maybe-configure-target-libffi all-target-libjava: maybe-all-fastjar maybe-all-target-zlib maybe-all-target-boehm-gc maybe-all-target-qthreads maybe-all-target-libffi @@ -1673,10 +1706,6 @@ configure-target-gperf: $(ALL_GCC_CXX) all-target-gperf: maybe-all-target-libiberty maybe-all-target-libstdc++-v3 configure-target-qthreads: $(ALL_GCC_C) -# Dependencies of maybe-foo on foo. These are used because, for example, -# all-gcc only depends on all-gas if gas is present and being configured. -@maybe_dependencies@ - # Serialization dependencies. Host configures don't work well in parallel to # each other, due to contention over config.cache. Target configures and # build configures are similar. diff -uprN binutils-2.15.90.0.3/bfd/ChangeLog binutils-2.15.91.0.1/bfd/ChangeLog --- binutils-2.15.90.0.3/bfd/ChangeLog 2004-04-15 07:54:55.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/ChangeLog 2004-05-27 11:26:01.732546791 -0700 @@ -1,3 +1,716 @@ +2004-05-27 Alexandre Oliva + + * elf-m10300.c (elf32_mn10300_finish_hash_table_entry): Avoid + custom calling conventions for dynamic symbols. + (mn10300_elf_relax_section): Avoid relaxing a function as a local + symbol if it's an alias to a global one. + +2004-05-26 H.J. Lu + + * elf.c (_bfd_elf_make_section_from_shdr): Undo the last + change. + +2004-05-27 Alexandre Oliva + + * elf-m10300.c (mn10300_elf_relax_section): Don't test isym within + loop over hashes. + +2004-05-26 Alan Modra + + * elf.c (_bfd_elf_make_section_from_shdr): Don't set SEC_EXCLUDE + for SHT_GROUP sections. + +2004-05-25 Alan Modra + + * elflink.c (elf_link_add_object_symbols): Don't set up merge + section data here.. + * elf.c (_bfd_elf_merge_sections): .. Do it here instead. + * merge.c: Formatting. Remove unnecessary casts. Expand + bfd_get_section_alignment macro. + (struct sec_merge_sec_info): Rename "first" to "first_str". Update + use throughout file. + (_bfd_add_merge_section): Rename from _bfd_merge_section. Update + comment. Abort on dynamic or non-SEC_MERGE input. Don't test + section name to determine sinfo group, instead test output section + and alignment. + (_bfd_merge_sections): Add struct bfd_link_info param. Call + _bfd_strip_section_from_output rather than just twiddling flags. + * libbfd-in.h (_bfd_add_merge_section): Rename, update comment. + (_bfd_merge_sections): Update prototype. + * libbfd.h: Regenerate. + +2004-05-24 Mark Kettenis + + * netbsd-core.c: Correctly indent section that sets architecture + from machine ID. + + From Miod Vallat : + * m88kopenbsd.c: New file. + * targets.c (m88k_openbsd_vec): New. + * config.bfd: Add m88k-*-openbsd*. + * configure.in (m88k-*-openbsd*): Set COREFILE to netbsd-core.lo. + (m88kopenbsd_vec): New. + * configure: Regenerate. + * Makefile.am (BFD32_BACKENDS): Add m88kopenbsd.lo. + (BFD32_BACKENDS_CFILES): Add m88kopenbsd.c. + Run "make dep-am". + * Makefile.in: Regenerate. + * po/SRC-POTFILES.in: Regenerate. + +2004-05-24 Nick Clifton + + * hash.c: Remove bogus node "Changing the default Hash Table Size" + introduced by hash table size patch. + +2004-05-22 Ben Elliston + + * configure.in (is_release): Remove. + (bfd_version_date, bfd_version, bfd_version_string): Likewise. + (AC_OUTPUT): Don't output bfdver.h from version.h. + * configure: Regenerate. + * Makefile.am (RELEASE): New variable. + (bfdver.h): New target. + * Makefile.in: Regenerate. + * doc/Makefile.in: Likewise. + +2004-05-22 Ben Elliston + + * Makefile.am (config.status): Don't depend on version.h. + * Makefile.in: Regenerate. + +2004-05-22 Alan Modra + + * merge.c (_bfd_merged_section_offset): Remove "addend" param. + * libbfd-in.h (_bfd_merged_section_offset): Adjust prototype. + * libbfd.h: Regenerate. + * elf.c (_bfd_elf_rela_local_sym): Adjust call. + (_bfd_elf_rel_local_sym): Likewise. + * elflink.c (_bfd_elf_link_sec_merge_syms): Likewise. + (elf_link_input_bfd): Likewise. + * elf32-ppc.c (ppc_elf_relax_section): Likewise. + * elf64-alpha.c (elf64_alpha_relocate_section): Likewise. + * elfxx-ia64.c (elfNN_ia64_relax_section): Likewise. + (elfNN_ia64_relocate_section): Likewise. + +2004-05-21 Andy Chittenden + + * hash.c (bfd_default_hash_table_size): New variable. + (bfd_hash_table_init): Use new variable instead of DEFAULT_SIZE. + (bfd_hash_set_default_size): New function. Set the default size + to a selected prime number close to the argument. Document new + function. + * bfd-in.h: Add prototype for bfd_hash_set_default_size. + * bfd-in2.h: Regenerate. + * Makefile.am (hash.lo): Add dependency upon libiberty.h. + * Makefile.in: Regenerate. + +2004-05-21 Mark Kettenis + + * libaout.h (machine_type): Add M_88K_OPENBSD and M_HPPA_OPENBSD. + * netbsd-core.c (netbsd_core_file_p): Set architecture for alpha, + arm, m68k, m88k and hppa core files. + +2004-05-21 Nick Clifton + + * bfdio.c (bfd_bread): Do not use iovec if it is NULL. + (bfd_bwrite): Likewise. + (bfd_tell): Likewise. + (bfd_flush): Likewise. + (bfd_stat): Likewise. + (bfd_seek): Likewise. + (bfd_get_mtime): Likewise. + (bfd_get_size): Likewise. + +2004-05-19 Ben Elliston + + * dwarf2.c (_bfd_dwarf2_find_nearest_line): Comment correction. + +2004-05-19 Mikulas Patocka + + * archive.c (_bfd_get_elt_at_filepos): Cope with a nested archives. + (bfd_generic_openr_next_archived_file): Likewise. + +2004-05-17 Bob Wilson + + * elf32-xtensa.c (xtensa_get_property_section_name): Determine linkonce + section names by inserting a new substring after .gnu.linkonce, except + for .gnu.linkonce.t.* where the "t." is replaced. + +2004-05-17 Adam Nemet + + * config.bfd (sparc-*-lynxos* case): Add to obsolete list. + (m68-*-lynxos* case): Likewise. + (powerpc-*-lyxnos* case): New case. + (i[3-7]86-*-lynxos* case): Update to LynxOS 4.0 ELF. + +2004-05-17 David Heine + + * aout-target.h (MY_bfd_copy_private_header_data): Define. + * aout-tic30.c (MY_bfd_copy_private_header_data): Define. + * bfd.c (bfd_copy_private_header_data): Define. + * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Add entries for new + interface. + * coff64-rs6000.c (rs6000coff64_vec, aix5coff64_vec): Likewise. + * coffcode.h (coff_bfd_copy_private_header_data): Define. + * elf-bfd.h (_bfd_elf_copy_private_header_data): Declare. + * elf.c (_bfd_elf_copy_private_section_data): Remove code to set up + segments by calling copy_private_bfd_data. + (_bfd_elf_copy_private_header_data): Define. + * elfxx-target.h (bfd_elfNN_bfd_copy_private_header_data): Define. + * libbfd-in.h (_bfd_generic_bfd_copy_private_header_data): Define. + * libecoff.h (_bfd_ecoff_bfd_copy_private_header_data): Define. + * mach-o.c (bfd_mach_o_bfd_copy_private_header_data): Define. + * mmo.c (mmo_bfd_copy_private_header_data): Define. + * ppcboot.c (ppcboot_bfd_copy_private_header_data): Define. + * som.c (som_bfd_copy_private_header_data): Define. + * targets.c (BFD_JUMP_TABLE_COPY): Add _bfd_copy_private_header_data. + * vms.c (vms_bfd_copy_private_header_data): Define. + * bfd-in2.h: Regenerate. + * libbfd.h: Regenerate. + +2004-05-15 Thiemo Seufer + + * elfxx-mips.c (MINUS_TWO): Define. + (mips_elf_higher, mips_elf_highest, + mips_elf_create_dynamic_relocation): Use MINUS_ONE and MINUS_TWO for + some bfd_vma values. + (_bfd_mips_elf_finish_dynamic_symbol): Likewise. Code cleanup. + +2004-05-14 John David Anglin + + * som.c (log2): Rename to exact_log2. Adjust all callers. + +2004-05-13 Paul Brook + + * elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Handle + dwarf3 format CIE entries. Remove comment about the size of the + ra_column field. It is now correctly deduced. + +2004-05-13 Joel Sherrill + + * config.bfd (or32-*-rtems*): Switch to elf. + +2004-05-13 Nick Clifton + + * po/fr.po: Updated French translation. + +2004-05-11 Jakub Jelinek + + * elflink.c (elf_bfd_final_link): Don't output STT_SECTION symbol + into .dynsym if elf_section_data (sec)->dynindx <= 0. + Adjust counting of last_local. + (_bfd_elf_link_renumber_dynsyms): Don't assign dynindx to sections + other than SHT_PROGBITS/SHT_NOBITS and neither for .got/.got.plt/.plt + created by the linker nor !SHF_ALLOC. + + * elf32-i386.c (elf_i386_finish_dynamic_sections): Point + DT_PLTGOT to the start of the .got.plt section instead of the + .got output section. Set sh_entsize for .got section in addition + to .got.plt. + (elf_i386_relocate_section): Don't assume _GLOBAL_OFFSET_TABLE_ + is at sgot->output_section->vma. + * elf64-x86-64.c (elf64_x86_64_finish_dynamic_sections): Point + DT_PLTGOT to the start of the .got.plt section instead of the + .got output section. + (elf64_x86_64_relocate_section): Don't assume _GLOBAL_OFFSET_TABLE_ + is at sgot->output_section->vma. Set sh_entsize for .got section + in addition to .got.plt. + * elf.c (_bfd_elf_print_private_bfd_data): Handle PT_GNU_RELRO. + (bfd_section_from_phdr): Likewise. + (map_sections_to_segments): Likewise. + (assign_file_positions_for_segments): Likewise. + (get_program_header_size): Likewise. + * elflink.c (bfd_elf_size_dynamic_sections): Set + elf_tdata (output_bfd)->relro from info->relro. + * elf-bfd.h (struct elf_obj_tdata): Add relro field. + +2004-05-08 Alexandre Oliva + + * elf32-frv.c (_frvfdpic_add_dyn_reloc): Don't warn when we get + a zero symndx for which we hadn't accounted a dynamic relocation. + (_frvfdpic_add_rofixup): Likewise. + +2004-05-07 Brian Ford + DJ Delorie + + * coffcode.h (coff_write_object_contents) [COFF_IMAGE_WITH_PE]: + Propagate IMAGE_FILE_LARGE_ADDRESS_AWARE. + * peXXigen.c (_bfd_XX_print_private_bfd_data_common): Recognize + IMAGE_FILE_LARGE_ADDRESS_AWARE. Use PE defines. + +2004-05-07 Alexandre Oliva + + * elf32-frv.c (elf32_frvfdpic_modify_segment_map): Return + immediately if there's no link info. + (elf32_frvfdpic_copy_private_bfd_data): New. + (bfd_elf32_bfd_copy_private_bfd_data): Use it for frvfdpic. + +2004-05-06 Zack Weinberg + + * dwarf2.c (add_line_info): Also set info->filename to NULL if + filename argument is null; do not call strlen on a null pointer. + +2004-05-06 Daniel Jacobowitz + + * elf32-arm.h (elf32_arm_relocate_section): Remove R_ARM_PLT32 + special case. + +2004-05-05 Alexandre Oliva + + * configure.in (bfd_elf32_frvfdpic_vec): New. + * configure: Rebuilt. + * targets.c (bfd_elf32_frvfdpic_vec): New. + * config.bfd: Enable it on frv-*-elf and frv-*-*linux*, as default + on the latter. + * elf32-frv.c: Prefix all identifiers added for FDPIC support with + frvfdpic instead of frv. Rearrange elf-target macros such that + the FDPIC-specific ones are only defined for this new target + vector. + (bfd_elf32_frvfdpic_vec): Declare. + (IS_FDPIC): New. + (elf32_frv_relocate_section): Use it to enable segment checking + and to control rofixup emission. Add output section vma to + applied relocation in non-LOAD non-ALLOC sections. Use + _bfd_error_handler for errors. + (_frv_create_got_section): Create .rel.got and .rofixup only in + FDPIC. Create non-dynamic _gp at .got+2048 in non-FDPIC, like the + linker script. + (elf32_frvfdpic_size_dynamic_sections): Assume FDPIC. + (elf32_frvfdpic_modify_segment_map): Likewise. + (elf32_frv_finish_dynamic_sections): New, do-nothing. + (elf32_frvfdpic_finish_dynamic_sections): Assume FDPIC. Improve + error message if we miscompute the rofixup size. + (frvfdpic_elf_use_relative_eh_frame): Assume FDPIC. + (frvfdpic_elf_encode_eh_address): Likewise. + (elf32_frv_check_relocs): Reject FDPIC-only relocs in non-FDPIC. + Record relocs only in FDPIC. Make sure _gp is defined for GPREL + relocs. Reject unknown relocation types. + (elf32_frv_object_p): Make sure target vector matches FDPIC bits. + (frv_elf_merge_private_bfd_data): Likewise. + (ELF_MAXPAGESIZE): Revert to 0x1000 for elf32-frv; keep it as + 0x4000 for newly-added elf32-frvfdpic. + +2004-05-05 Nick Clifton + + PR/136 + * cache.c (bfd_cache_lookup_worker): Call abort() rather than + returning NULL as most users of this function do not check its + return value. + * hppabsd-core.c (hppabsd_core_core_file_p): Do not check result + of bfd_cache_lookup(). + * sco5-core.c (sco5_core_file_p): Likewise. + * trad-core.c (trad_unix_core_file_p): Likewise. + +2004-05-05 Nick Clifton + + * cache.c (bfd_cache_lookup): Improve formatting. + * archive.c: Fix formatting. + +2004-05-05 Peter Barada + + * bfd_archures.c(bfd_architecture): Add 521x,5249,547x,548x. + * cpu-m68k.c(bfd_m68k_arch): Likewise. + * bfd-in2.h(bfd_architecture): Regenerate. + +2004-05-03 Alan Modra + + * elf.c (_bfd_elf_rela_local_sym): Set kept_section for excluded + SEC_MERGE sections. + * elflink.c (elf_link_input_bfd): Adjust output reloc index for + those against discarded link-once and SEC_MERGE section symbols. + +2004-05-02 H.J. Lu + + * section.c (bfd_get_section_by_name_if): New. + * bfd-in2.h: Regenerated. + +2004-05-02 Alan Modra + + * som.c (som_bfd_is_group_section): Define. + +2004-05-01 Alan Modra + + * section.c (bfd_make_section_anyway): Copy the whole + bfd_hash_entry, not just "next" from existing entry. + +2004-04-30 H.J. Lu + + * elf.c (bfd_section_from_shdr): Maintain the section order in + a section group. + (special_sections): Add ".note.GNU-stack". + (elf_fake_sections): Handle section group for relocatable + link.. + +2004-04-30 H.J. Lu + + * section.c (bfd_sections_find_if): New. + * bfd-in2.h: Regenerated. + +2004-04-30 Alan Modra + + * section.c (bfd_make_section_anyway): Add all sections to hash tab. + + * elf-bfd.h (bfd_elf_is_group_section): Declare. + * elf.c (bfd_elf_is_group_section): New function. + * elfxx-target.h (bfd_elfNN_bfd_is_group_section + * section.c (bfd_generic_is_group_section): New function. + * targets.c (struct bfd_target): Add _bfd_is_group_section field. + (BFD_JUMP_TABLE_LINK): Adjust. + * aout-adobe.c (aout_32_bfd_is_group_section): Define. + * aout-target.h (MY_bfd_is_group_section): Define. + * aout-tic30.c (MY_bfd_is_group_section): Define. + * bfd.c (bfd_is_group_section): Define. + * binary.c (binary_bfd_is_group_section): Define. + * bout.c (b_out_bfd_is_group_section): Define. + * coff-alpha.c (_bfd_ecoff_bfd_is_group_section): Define. + * coff-mips.c (_bfd_ecoff_bfd_is_group_section): Define. + * coff-rs6000.c (rs6000coff_vec, pmac_xcoff_vec): Adjust. + * coff64-rs6000.c (rs6000coff64_vec, aix5coff64_vec): Adjust. + * coffcode.h (coff_bfd_is_group_section): Define. + * i386msdos.c (msdos_bfd_is_group_section): Define. + * i386os9k.c (os9k_bfd_is_group_section): Define. + * ieee.c (ieee_bfd_is_group_section): Define. + * ihex.c (ihex_bfd_is_group_section): Define. + * libbfd-in.h (_bfd_nolink_bfd_is_group_section): Define. + * mach-o.c (bfd_mach_o_bfd_is_group_section): Define. + * mmo.c (mmo_bfd_is_group_section): Define. + * nlm-target.h (nlm_bfd_is_group_section): Define. + * oasys.c (oasys_bfd_is_group_section): Define. + * pef.c (bfd_pef_bfd_is_group_section): Define. + * ppcboot.c (ppcboot_bfd_is_group_section): Define. + * srec.c (srec_bfd_is_group_section): Define. + * tekhex.c (tekhex_bfd_is_group_section): Define. + * versados.c (versados_bfd_is_group_section): Define. + * vms.c (vms_bfd_is_group_section): Define. + * xsym.c (bfd_sym_bfd_is_group_section): Define. + * bfd-in2.h: Regenerate. + * libbfd.h: Regenerate. + +2004-04-30 Alan Modra + + * elflink.c (elf_gc_mark): Follow indirect and warning syms. + +2004-04-30 Hans-Peter Nilsson + + * configure.in: Update version to 2.15.91. + * configure: Regenerate. + +2004-04-29 Brian Ford + + * bfd.c (bfd_get_sign_extend_vma): Add pe[i]-i386 case to DJGPP hack. + * coffcode.h (DOT_DEBUG, GNU_LINKONCE_WI): Define. + [!COFF_WITH_PE] (sec_to_styp_flags, styp_to_sec_flags): Use them. + (coff_compute_section_file_positions) [RS6000COFF_C]: Likewise. + [COFF_WITH_PE] (sec_to_styp_flags): Handle DWARF 2/3 .debug* and + .gnu.linkonce.wi. sections. + * pe-i386.c (COFF_SUPPORT_GNU_LINKONCE): Define. + (COFF_SECTION_ALIGNMENT_ENTRIES): Add entries for .debug and + .gnu.linkonce.wi.. + * pei-i386.c (COFF_SUPPORT_GNU_LINKONCE): Likewise. + (COFF_SECTION_ALIGNMENT_ENTRIES): Likewise. + +2004-04-28 Chris Demetriou + + * reloc.c: Remove BFD_RELOC_PCREL_HI16_S and BFD_RELOC_PCREL_LO16. + * bfd-in2.h: Regenerate. + * libbfd.h: Likewise. + +2004-04-28 John David Anglin + + * som.c (struct som_misc_symbol_info): Add is_comdat, is_common and + dup_common fields. + (setup_sections): Use som_subspace_dictionary_record struct instead + subspace_dictionary_record. Set SEC_LINK_ONCE if subspace is + is_comdat, is_common or dup_common. + (som_prep_headers): Use som_subspace_dictionary_record struct. Set + is_comdat, is_common and dup_common in section subspace_dict from + copy_data. + (som_begin_writing): Use som_subspace_dictionary_record struct. + (som_finish_writing): Likewise. + (som_bfd_derive_misc_symbol_info): Add support to set is_comdat, + is_common and dup_common flags in info for symbol. Add comment + regarding linker support for these fields. Slightly reorganize + function. + (som_build_and_write_symbol_table): Set is_comdat, is_common and + dup_common fields in symbol table from symbol info. + (bfd_som_set_subsection_attributes): Add comdat, common and dup_common + arguments. Set corresponding fields in copy_data. Change all callers. + (som_bfd_ar_write_symbol_stuff): Set dup_common flag in library + symbol table. + (som_vec): Add SEC_LINK_ONCE to applicable section flags. + * som.h (som_subspace_dictionary_record): Define. + (som_copyable_section_data_struct): Add is_comdat, is_common and + dup_common fields. + (som_section_data_struct): Use som_subspace_dictionary_record struct + instead of subspace_dictionary_record. + (bfd_boolean bfd_som_set_subsection_attributes): Adjust prototype. + +2004-04-27 Bob Wilson + + * elf32-xtensa.c (xtensa_read_table_entries): Use section _cooked_size + if set. Check reloc_done flag before applying relocations. Use + output addresses, both when applying relocations and when comparing + against the specified section. + (elf_xtensa_relocate_section): Use output address to check if dynamic + reloc is in a literal pool. Set section's reloc_done flag. + +2004-04-27 H.J. Lu + + * elf32-sh64.c (elf_backend_section_flags): New. Defined. + (sh64_elf_set_mach_from_flags): Remove the kludge for .cranges + section. + (sh64_elf_section_flags): New. Set SEC_DEBUGGING for .cranges + section. + +2004-04-27 Alan Modra + + * elf64-alpha.c (elf64_alpha_read_ecoff_info): Don't assign + structure field removed in 2004-04-24 patch. + * elf64-sparc.c (sparc64_elf_plt_sym_val): Warning fix. + + * elf-bfd.h (struct elf_backend_data ): + Constify hdr arg. + * elf32-arm.h (elf32_arm_section_flags): Likewise. + * elf64-alpha.c (elf64_alpha_section_flags): Likewise. + * elfxx-ia64.c (elfNN_ia64_section_flags): Likewise. + * elf.c (_bfd_elf_make_section_from_shdr): Set the bfd_section + field before calling elf_backend_section_flags. + +2004-04-24 Chris Demetriou + + * elf32-mips.c (elf_mips_gnu_rel_hi16, elf_mips_gnu_rel_lo16) + (elf_mips_gnu_pcrel64, elf_mips_gnu_pcrel32): Remove. + (bfd_elf32_bfd_reloc_type_lookup): Remove cases for + BFD_RELOC_PCREL_HI16_S, BFD_RELOC_PCREL_LO16, BFD_RELOC_64_PCREL, + and BFD_RELOC_32_PCREL. + (mips_elf32_rtype_to_howto): Remove cases for R_MIPS_GNU_REL_HI16, + R_MIPS_GNU_REL_LO16, R_MIPS_PC64, R_MIPS_PC32. + * elfxx-mips.c (mips_elf_calculate_relocation): Likewise. + (_bfd_mips_elf_lo16_reloc): Remove handling for R_MIPS_GNU_REL_HI16. + (mips_elf_next_relocation): Move comment about matching HI/LO + relocations to... + (_bfd_mips_elf_relocate_section): Here. Remove handling for + R_MIPS_GNU_REL_HI16. + +2004-04-23 Chris Demetriou + + * coff-mips.c (mips_relhi_reloc, mips_rello_reloc) + (mips_switch_reloc, mips_read_relocs, mips_relax_section) + (mips_relax_pcrel16, PCREL16_EXPANSION_ADJUSTMENT): Remove. + (mips_relocate_hi): Remove now-unused 'adjust' and 'pcrel' arguments, + and update comments to reflect current usage. + (mips_howto_table): Remove entries for MIPS_R_RELHI, MIPS_R_RELLO, + and MIPS_R_SWITCH, as well as several empty entries. Update comment + for MIPS_R_PCREL16. + (mips_ecoff_swap_reloc_in, mips_ecoff_swap_reloc_out) + (mips_adjust_reloc_out, mips_bfd_reloc_type_lookup): Remove support + for MIPS_R_SWITCH, MIPS_R_RELLO, and MIPS_R_RELHI relocations. + (mips_adjust_reloc_in): Likewise, adjust maximum accepted relocation + type number to be MIPS_R_PCREL16. + (mips_relocate_section): Remove support for link-time relaxation + of branches used by embedded-PIC. Remove support for MIPS_R_SWITCH, + MIPS_R_RELLO, and MIPS_R_RELHI relocations. + (_bfd_ecoff_bfd_relax_section): Redefine to bfd_generic_relax_section. + * ecoff.c (ecoff_indirect_link_order): Remove support for link-time + relaxation of branches used by embedded-PIC. + * ecofflink.c (bfd_ecoff_debug_accumulate): Likewise. + * libecoff.h (struct ecoff_section_tdata): Remove embedded-PIC + related members, update comment. + * pe-mips.c: Remove disabled (commented-out and #if 0'd) + code related to embedded-PIC. + * elfxx-mips.c (_bfd_mips_elf_read_ecoff_info): Remove + initialization of now-removed 'adjust' member of + 'struct ecoff_debug_info'. + +2004-04-23 Chris Demetriou + + * elfxx-mips.c (mips_elf_get_global_gotsym_index): Remove. + +2004-04-21 Philip Blundell + + * elf32-arm.h (elf32_arm_check_relocs): Don't output REL32 + relocs for locally defined symbols during -shared final link. + (elf32_arm_final_link_relocate): Likewise. + +2004-04-22 Jakub Jelinek + + * elf64-x86-64.c (elf64_x86_64_copy_indirect_symbol): Copy also + ELF_LINK_POINTER_EQUALITY_NEEDED. + (elf64_x86_64_check_relocs): Set ELF_LINK_POINTER_EQUALITY_NEEDED + if r_type is not R_X86_64_PC32. + (elf64_x86_64_finish_dynamic_symbol): If + ELF_LINK_POINTER_EQUALITY_NEEDED is not set, clear st_value of + SHN_UNDEF symbols. + +2004-04-22 Kaz Kojima + + * elf32-sh.c (sh_elf_plt_sym_val): New function. + (elf_backend_plt_sym_val): Define. + +2004-04-22 Andrew Cagney + + * opncls.c (bfd_alloc): Fix type of "wanted" in doco. + +2004-04-22 John David Anglin + + * hpux-core.c (hpux_core_core_file_p): Add cast in call to + make_bfd_asection. + * som.c (som_set_section_contents): Constantify second argument. + (hppa_som_gen_reloc_type): Abort for unsupported selectors. + (som_object_setup): Rework to avoid warning. + (setup_sections, som_write_fixups, bfd_section_from_som_symbol): + Likewise. + +2004-04-22 Andrew Cagney + + * cache.c (bfd_cache_close): Check for a previously closed file. + +2004-04-22 Jakub Jelinek + + * bfd.c (bfd_get_synthetic_symtab): Define. + * targets.c (BFD_JUMP_TABLE_DYNAMIC): Add + NAME##_get_synthetic_symtab. + (struct bfd_target): Add _bfd_get_synthetic_symtab. + * libbfd-in.h (_bfd_nodynamic_get_synthetic_symtab): Define. + * elf-bfd.h (struct elf_backend_data): Add plt_sym_val and + relplt_name fields. + (_bfd_elf_get_synthetic_symtab): New prototype. + * elfcode.h (elf_get_synthetic_symtab): Define. + * elf.c (_bfd_elf_get_synthetic_symtab): New function. + * elfxx-target.h (bfd_elfNN_get_synthetic_symtab): Define. + (elf_backend_plt_sym_val, elf_backend_relplt_name): Define. + (elfNN_bed): Add elf_backend_plt_sym_val and elf_backend_relplt_name. + * bfd-in2.h: Rebuilt. + * libbfd.h: Rebuilt. + * elf32-i386.c (elf_i386_plt_sym_val): New function. + (elf_backend_plt_sym_val): Define. + * elf64-x86-64.c (elf64_x86_64_plt_sym_val): New function. + (elf_backend_plt_sym_val): Define. + * elf32-s390.c (elf_s390_plt_sym_val): New function. + (elf_backend_plt_sym_val): Define. + * elf64-s390.c (elf_s390_plt_sym_val): New function. + (elf_backend_plt_sym_val): Define. + * elf32-sparc (elf32_sparc_plt_sym_val): New function. + (elf_backend_plt_sym_val): Define. + * elf64-sparc.c (sparc64_elf_plt_sym_val): New function. + (elf_backend_plt_sym_val): Define. + * elf32-ppc.c (ppc_elf_plt_sym_val): New function. + (elf_backend_plt_sym_val): Define. + * aout-target.h (MY_get_synthetic_symtab): Define. + * aout-tic30.c (MY_get_synthetic_symtab): Define. + * coff-rs6000.c (rs6000coff_vec): Add + _bfd_nodynamic_get_synthetic_symtab. + (pmac_xcoff_vec): Likewise. + * coff64-rs6000.c (rs6000coff64_vec): Add + _bfd_nodynamic_get_synthetic_symtab. + (aix5coff64_vec): Likewise. + * sunos.c (MY_get_synthetic_symtab): Define. + * vms.c (vms_get_synthetic_symtab): Define. + +2004-04-22 Nick Clifton + + * bfd.c (bfd_archive_filename): Return NULL on NULL input. + +2004-04-22 Peter Barada + + * archures.c: Add bfd_mach_mcfv4e to bfd_architecture. + * bfd2-in.h: Regenerate. + * cpu-m68k.c: Add 'm68k:mcfv4e' to arch_info_struct[]. + +2004-04-21 Chris Demetriou + + * coff-mips.c (bfd_mips_ecoff_create_embedded_relocs): Remove. + * elf32-mips.c (bfd_mips_elf32_create_embedded_relocs): Remove. + * bfd-in.h (bfd_mips_ecoff_create_embedded_relocs) + (bfd_mips_elf32_create_embedded_relocs): Remove prototypes + * bfd-in2.h: Regenerate. + +2004-04-21 Bob Wilson + + * elf32-xtensa.c (is_same_value): Add final_static_link argument and + require relocations against a weak symbol to reference the same + symbol hash entry if not a final, static link. + (get_cached_value, add_value_map): Add final_static_link argument. + (remove_literals): Pass final_static_link argument as needed. + +2004-04-21 Andrew Cagney + + * opncls.c (_bfd_new_bfd_contained_in): Copy "iovec". + (struct opncls, opncls_btell, opncls_bseek, opncls_bread) + (opncls_bwrite, opncls_bclose, opncls_bflush) + (opncls_bstat, opncls_iovec, bfd_openr_iovec): Implement a + bfd iovec that uses function callbacks. + (bfd_close): Use the iovec's bclose. + * cache.c (cache_btell, cache_bseek, cache_bread, cache_bwrite) + (cache_bclose, cache_bflush, cache_bstat) + (cache_iovec): New functions and global variable, implement a + cache "iovec", where applicable set bfd_error. + (bfd_cache_init, bfd_cache_close): Set/test the bfd's iovec. + * bfdio.c (struct bfd_iovec): Define. + (real_read): Delete function. + (bfd_bread, bfd_bread, bfd_bwrite, bfd_tell, bfd_flush, bfd_stat) + (bfd_seek, bfd_get_mtime, bfd_get_size): Use the bfd's "iovec", + assume that bread and bwrite set bfd_error. + * bfd.c (struct bfd): Add "iovec", update comments. + * bfd-in2.h, libbfd.h: Re-generate. + +2004-04-21 Andrew Cagney + + * libaout.h (enum machine_type): Add M_POWERPC_NETBSD. + +2004-04-21 Eric Botcazou + + * elflink.c (elf_gc_mark_dynamic_ref_symbol): New function. + (bfd_elf_gc_sections): Fail if a shared object is being created. + Do not fail if dynamic sections have been created. Instead call + elf_gc_mark_dynamic_ref_symbol to mark sections that contain + dynamically referenced symbols. Do not mark the whole graph + rooted at .eh_frame, only the section proper. + +2004-04-20 DJ Delorie + + * reloc.c: Add BFD_RELOC_32_SECREL. + * bfd-in2.h: Regenerate. + * libbfd.h: Likewise. + * coff-i386.c (howto_table) [COFF_WITH_PE]: Add R_SECREL32. + (coff_i386_rtype_to_howto) [COFF_WITH_PE]: Handle it. + (coff_i386_reloc_type_lookup) [COFF_WITH_PE]: Likewise. + +2004-04-19 Jakub Jelinek + + * elf32-sparc.c (elf32_sparc_relocate_section): Handle + relocs against hidden/protected undefweak symbols properly. + * elf64-sparc.c (sparc64_elf_relocate_section): Likewise. + +2004-04-18 Mark Kettenis + + * libaout.h (enum machine_type): Add M_POWERPC_NETBSD. + * netbsd-core.c (netbsd_core_file_p): Set architecture for PowerPC + core files. + +2004-04-17 Brian Ford + + * peXXigen.c (_bfd_XXi_swap_aouthdr_out): Use the first non-zero + filepos for the SizeOfHeaders field. + (_bfd_XXi_swap_scnhdr_out): Correct section flags lossage on reloc + overflow. + (_bfd_XXi_swap_sym_in): Remove redundant section flags assignment. + +2004-04-16 Alan Modra + + * simple.c (bfd_simple_get_relocated_section_contents): Don't + change reloc_done. Set and restore _cooked_size. + (RETURN): Delete. + +2004-04-15 Mark Kettenis + + * netbsd-core.c (netbsd_core_file_p): Set architecture for VAX + core files. + +2004-04-15 Nick Clifton + + * bfd.c (bfd_archive_filename): Catch NULL bfd pointers. + 2004-04-15 Alan Modra * elf64-sparc.c (sparc64_elf_check_relocs): Fix thinko last change. @@ -97,7 +810,7 @@ * stabs.c (_bfd_link_section_stabs): Do not skip N_EXCL stabs. 2004-03-30 Galit Heller - Tomer Levi + Tomer Levi * Makefile.am (ALL_MACHINES): Add cpu-cr16c.lo. (ALL_MACHINES_CFILES): Add cpu-cr16c.c. diff -uprN binutils-2.15.90.0.3/bfd/Makefile.am binutils-2.15.91.0.1/bfd/Makefile.am --- binutils-2.15.90.0.3/bfd/Makefile.am 2004-04-12 12:56:33.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/Makefile.am 2004-05-27 11:26:01.747544852 -0700 @@ -2,6 +2,9 @@ AUTOMAKE_OPTIONS = cygnus +# Uncomment the following line when doing a release. +# RELEASE=y + INCDIR = $(srcdir)/../include CSEARCH = -I. -I$(srcdir) -I$(INCDIR) MKDEP = gcc -MM @@ -282,6 +285,7 @@ BFD32_BACKENDS = \ m68klynx.lo \ m68knetbsd.lo \ m88kmach3.lo \ + m88kopenbsd.lo \ mach-o.lo \ mipsbsd.lo \ newsos3.lo \ @@ -447,6 +451,7 @@ BFD32_BACKENDS_CFILES = \ m68klynx.c \ m68knetbsd.c \ m88kmach3.c \ + m88kopenbsd.c \ mach-o.c \ mipsbsd.c \ newsos3.c \ @@ -860,11 +865,20 @@ CLEANFILES = bfd.h dep.sed stmp-bfd-h DE DISTCLEANFILES = $(BUILD_CFILES) $(BUILD_HFILES) -# We want to rerun configure if config.bfd, configure.host or version.h change. -config.status: $(srcdir)/configure $(srcdir)/config.bfd \ - $(srcdir)/configure.host $(srcdir)/version.h +# We want to rerun configure if configure, config.bfd or configure.host change. +config.status: $(srcdir)/configure $(srcdir)/config.bfd $(srcdir)/configure.host $(SHELL) ./config.status --recheck +bfdver.h: version.h Makefile.in + @echo "creating $@" + @bfd_version=`echo "$(VERSION)" | sed -e 's/\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\).*/\1.00\2.00\3.00\4.00\5/' -e 's/\([^\.]*\)\..*\(..\)\..*\(..\)\..*\(..\)\..*\(..\)$$/\1\2\3\4\5/'` ;\ + bfd_version_string="\"$(VERSION)\"" ;\ + if test "x$(RELEASE)" = x ; then \ + bfd_version_date=`sed -n -e 's/.*DATE //p' < $<` ;\ + bfd_version_string="\"$(VERSION) $${bfd_version_date}\"" ;\ + fi ;\ + sed -e "s/@bfd_version@/$$bfd_version/" -e "s/@bfd_version_string@/$$bfd_version_string/" < $< > $@ + # What appears below is generated by a hacked mkdep using gcc -MM. # DO NOT DELETE THIS LINE -- mkdep uses it. @@ -894,7 +908,7 @@ syms.lo: syms.c $(INCDIR)/filenames.h $( $(INCDIR)/bfdlink.h $(INCDIR)/aout/stab_gnu.h $(INCDIR)/aout/stab.def targets.lo: targets.c $(INCDIR)/filenames.h $(INCDIR)/fnmatch.h \ targmatch.h -hash.lo: hash.c $(INCDIR)/filenames.h $(INCDIR)/objalloc.h +hash.lo: hash.c $(INCDIR)/filenames.h $(INCDIR)/objalloc.h $(INCDIR)/libiberty.h linker.lo: linker.c $(INCDIR)/filenames.h $(INCDIR)/bfdlink.h \ genlink.h srec.lo: srec.c $(INCDIR)/filenames.h $(INCDIR)/libiberty.h \ @@ -1392,6 +1406,9 @@ m68knetbsd.lo: m68knetbsd.c netbsd.h $(I m88kmach3.lo: m88kmach3.c $(INCDIR)/filenames.h libaout.h \ $(INCDIR)/bfdlink.h aout-target.h $(INCDIR)/aout/aout64.h \ $(INCDIR)/aout/stab_gnu.h $(INCDIR)/aout/stab.def $(INCDIR)/aout/ar.h +m88kopenbsd.lo: m88kopenbsd.c netbsd.h $(INCDIR)/filenames.h \ + libaout.h $(INCDIR)/bfdlink.h aout-target.h $(INCDIR)/aout/aout64.h \ + $(INCDIR)/aout/stab_gnu.h $(INCDIR)/aout/stab.def $(INCDIR)/aout/ar.h mach-o.lo: mach-o.c mach-o.h $(INCDIR)/filenames.h \ $(INCDIR)/libiberty.h mach-o-target.c mipsbsd.lo: mipsbsd.c $(INCDIR)/filenames.h libaout.h \ diff -uprN binutils-2.15.90.0.3/bfd/Makefile.in binutils-2.15.91.0.1/bfd/Makefile.in --- binutils-2.15.90.0.3/bfd/Makefile.in 2004-04-12 12:56:33.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/Makefile.in 2004-05-27 11:26:01.753544076 -0700 @@ -120,14 +120,15 @@ bfd_file_ptr = @bfd_file_ptr@ bfd_libs = @bfd_libs@ bfd_machines = @bfd_machines@ bfd_ufile_ptr = @bfd_ufile_ptr@ -bfd_version = @bfd_version@ -bfd_version_string = @bfd_version_string@ l = @l@ tdefaults = @tdefaults@ wordsize = @wordsize@ AUTOMAKE_OPTIONS = cygnus +# Uncomment the following line when doing a release. +# RELEASE=y + INCDIR = $(srcdir)/../include CSEARCH = -I. -I$(srcdir) -I$(INCDIR) MKDEP = gcc -MM @@ -412,6 +413,7 @@ BFD32_BACKENDS = \ m68klynx.lo \ m68knetbsd.lo \ m88kmach3.lo \ + m88kopenbsd.lo \ mach-o.lo \ mipsbsd.lo \ newsos3.lo \ @@ -578,6 +580,7 @@ BFD32_BACKENDS_CFILES = \ m68klynx.c \ m68knetbsd.c \ m88kmach3.c \ + m88kopenbsd.c \ mach-o.c \ mipsbsd.c \ newsos3.c \ @@ -789,7 +792,7 @@ DISTCLEANFILES = $(BUILD_CFILES) $(BUILD ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs CONFIG_HEADER = config.h -CONFIG_CLEAN_FILES = bfd-in3.h bfdver.h +CONFIG_CLEAN_FILES = bfd-in3.h LIBRARIES = $(noinst_LIBRARIES) @@ -813,7 +816,7 @@ CCLD = $(CC) LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ DIST_COMMON = README ./stamp-h.in COPYING ChangeLog Makefile.am \ Makefile.in TODO acinclude.m4 aclocal.m4 bfd-in2.h config.in configure \ -configure.in version.h +configure.in DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) @@ -867,8 +870,6 @@ distclean-hdr: maintainer-clean-hdr: bfd-in3.h: $(top_builddir)/config.status bfd-in2.h cd $(top_builddir) && CONFIG_FILES=$@:bfd-in2.h CONFIG_HEADERS= $(SHELL) ./config.status -bfdver.h: $(top_builddir)/config.status version.h - cd $(top_builddir) && CONFIG_FILES=$@:version.h CONFIG_HEADERS= $(SHELL) ./config.status mostlyclean-noinstLIBRARIES: @@ -1397,11 +1398,20 @@ stmp-lcoff-h: $(LIBCOFF_H_FILES) $(SHELL) $(srcdir)/../move-if-change libcoff.h-new $(srcdir)/libcoff.h touch stmp-lcoff-h -# We want to rerun configure if config.bfd, configure.host or version.h change. -config.status: $(srcdir)/configure $(srcdir)/config.bfd \ - $(srcdir)/configure.host $(srcdir)/version.h +# We want to rerun configure if configure, config.bfd or configure.host change. +config.status: $(srcdir)/configure $(srcdir)/config.bfd $(srcdir)/configure.host $(SHELL) ./config.status --recheck +bfdver.h: version.h Makefile.in + @echo "creating $@" + @bfd_version=`echo "$(VERSION)" | sed -e 's/\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\).*/\1.00\2.00\3.00\4.00\5/' -e 's/\([^\.]*\)\..*\(..\)\..*\(..\)\..*\(..\)\..*\(..\)$$/\1\2\3\4\5/'` ;\ + bfd_version_string="\"$(VERSION)\"" ;\ + if test "x$(RELEASE)" = x ; then \ + bfd_version_date=`sed -n -e 's/.*DATE //p' < $<` ;\ + bfd_version_string="\"$(VERSION) $${bfd_version_date}\"" ;\ + fi ;\ + sed -e "s/@bfd_version@/$$bfd_version/" -e "s/@bfd_version_string@/$$bfd_version_string/" < $< > $@ + # What appears below is generated by a hacked mkdep using gcc -MM. # DO NOT DELETE THIS LINE -- mkdep uses it. @@ -1431,7 +1441,7 @@ syms.lo: syms.c $(INCDIR)/filenames.h $( $(INCDIR)/bfdlink.h $(INCDIR)/aout/stab_gnu.h $(INCDIR)/aout/stab.def targets.lo: targets.c $(INCDIR)/filenames.h $(INCDIR)/fnmatch.h \ targmatch.h -hash.lo: hash.c $(INCDIR)/filenames.h $(INCDIR)/objalloc.h +hash.lo: hash.c $(INCDIR)/filenames.h $(INCDIR)/objalloc.h $(INCDIR)/libiberty.h linker.lo: linker.c $(INCDIR)/filenames.h $(INCDIR)/bfdlink.h \ genlink.h srec.lo: srec.c $(INCDIR)/filenames.h $(INCDIR)/libiberty.h \ @@ -1929,6 +1939,9 @@ m68knetbsd.lo: m68knetbsd.c netbsd.h $(I m88kmach3.lo: m88kmach3.c $(INCDIR)/filenames.h libaout.h \ $(INCDIR)/bfdlink.h aout-target.h $(INCDIR)/aout/aout64.h \ $(INCDIR)/aout/stab_gnu.h $(INCDIR)/aout/stab.def $(INCDIR)/aout/ar.h +m88kopenbsd.lo: m88kopenbsd.c netbsd.h $(INCDIR)/filenames.h \ + libaout.h $(INCDIR)/bfdlink.h aout-target.h $(INCDIR)/aout/aout64.h \ + $(INCDIR)/aout/stab_gnu.h $(INCDIR)/aout/stab.def $(INCDIR)/aout/ar.h mach-o.lo: mach-o.c mach-o.h $(INCDIR)/filenames.h \ $(INCDIR)/libiberty.h mach-o-target.c mipsbsd.lo: mipsbsd.c $(INCDIR)/filenames.h libaout.h \ diff -uprN binutils-2.15.90.0.3/bfd/aout-adobe.c binutils-2.15.91.0.1/bfd/aout-adobe.c --- binutils-2.15.90.0.3/bfd/aout-adobe.c 2004-01-14 13:07:42.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/aout-adobe.c 2004-05-27 11:26:01.769542007 -0700 @@ -1,6 +1,6 @@ /* BFD back-end for a.out.adobe binaries. Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, - 2002, 2003 + 2002, 2003, 2004 Free Software Foundation, Inc. Written by Cygnus Support. Based on bout.c. @@ -517,6 +517,7 @@ aout_adobe_sizeof_headers (ignore_abfd, #define aout_32_bfd_relax_section bfd_generic_relax_section #define aout_32_bfd_gc_sections bfd_generic_gc_sections #define aout_32_bfd_merge_sections bfd_generic_merge_sections +#define aout_32_bfd_is_group_section bfd_generic_is_group_section #define aout_32_bfd_discard_group bfd_generic_discard_group #define aout_32_bfd_link_hash_table_create \ _bfd_generic_link_hash_table_create diff -uprN binutils-2.15.90.0.3/bfd/aout-target.h binutils-2.15.91.0.1/bfd/aout-target.h --- binutils-2.15.90.0.3/bfd/aout-target.h 2004-01-14 13:07:42.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/aout-target.h 2004-05-27 11:26:01.772541619 -0700 @@ -1,6 +1,6 @@ /* Define a target vector and some small routines for a variant of a.out. Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003 + 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. @@ -513,6 +513,9 @@ MY_bfd_final_link (abfd, info) #ifndef MY_bfd_merge_sections #define MY_bfd_merge_sections bfd_generic_merge_sections #endif +#ifndef MY_bfd_is_group_section +#define MY_bfd_is_group_section bfd_generic_is_group_section +#endif #ifndef MY_bfd_discard_group #define MY_bfd_discard_group bfd_generic_discard_group #endif @@ -556,6 +559,10 @@ MY_bfd_final_link (abfd, info) #define MY_bfd_copy_private_symbol_data _bfd_generic_bfd_copy_private_symbol_data #endif +#ifndef MY_bfd_copy_private_header_data +#define MY_bfd_copy_private_header_data _bfd_generic_bfd_copy_private_header_data +#endif + #ifndef MY_bfd_print_private_bfd_data #define MY_bfd_print_private_bfd_data _bfd_generic_bfd_print_private_bfd_data #endif @@ -584,6 +591,10 @@ MY_bfd_final_link (abfd, info) #define MY_canonicalize_dynamic_symtab \ _bfd_nodynamic_canonicalize_dynamic_symtab #endif +#ifndef MY_get_synthetic_symtab +#define MY_get_synthetic_symtab \ + _bfd_nodynamic_get_synthetic_symtab +#endif #ifndef MY_get_dynamic_reloc_upper_bound #define MY_get_dynamic_reloc_upper_bound \ _bfd_nodynamic_get_dynamic_reloc_upper_bound diff -uprN binutils-2.15.90.0.3/bfd/aout-tic30.c binutils-2.15.91.0.1/bfd/aout-tic30.c --- binutils-2.15.90.0.3/bfd/aout-tic30.c 2004-01-14 13:07:42.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/aout-tic30.c 2004-05-27 11:26:01.773541490 -0700 @@ -1,5 +1,6 @@ /* BFD back-end for TMS320C30 a.out binaries. - Copyright 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. + Copyright 1998, 1999, 2000, 2001, 2002, 2003, 2004 + Free Software Foundation, Inc. Contributed by Steven Haworth (steve@pm.cse.rmit.edu.au) This file is part of BFD, the Binary File Descriptor library. @@ -969,6 +970,9 @@ tic30_aout_set_arch_mach (abfd, arch, ma #ifndef MY_bfd_merge_sections #define MY_bfd_merge_sections bfd_generic_merge_sections #endif +#ifndef MY_bfd_is_group_section +#define MY_bfd_is_group_section bfd_generic_is_group_section +#endif #ifndef MY_bfd_discard_group #define MY_bfd_discard_group bfd_generic_discard_group #endif @@ -1012,6 +1016,10 @@ tic30_aout_set_arch_mach (abfd, arch, ma #define MY_bfd_copy_private_symbol_data _bfd_generic_bfd_copy_private_symbol_data #endif +#ifndef MY_bfd_copy_private_header_data +#define MY_bfd_copy_private_header_data _bfd_generic_bfd_copy_private_header_data +#endif + #ifndef MY_bfd_print_private_bfd_data #define MY_bfd_print_private_bfd_data _bfd_generic_bfd_print_private_bfd_data #endif @@ -1040,6 +1048,10 @@ tic30_aout_set_arch_mach (abfd, arch, ma #define MY_canonicalize_dynamic_symtab \ _bfd_nodynamic_canonicalize_dynamic_symtab #endif +#ifndef MY_get_synthetic_symtab +#define MY_get_synthetic_symtab \ + _bfd_nodynamic_get_synthetic_symtab +#endif #ifndef MY_get_dynamic_reloc_upper_bound #define MY_get_dynamic_reloc_upper_bound \ _bfd_nodynamic_get_dynamic_reloc_upper_bound diff -uprN binutils-2.15.90.0.3/bfd/archive.c binutils-2.15.91.0.1/bfd/archive.c --- binutils-2.15.90.0.3/bfd/archive.c 2004-04-12 12:56:33.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/archive.c 2004-05-27 11:26:01.794538775 -0700 @@ -1,24 +1,24 @@ /* BFD back-end for archive files (libraries). Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003 + 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. Written by Cygnus Support. Mostly Gumby Henkel-Wallace's fault. -This file is part of BFD, the Binary File Descriptor library. + This file is part of BFD, the Binary File Descriptor library. -This program 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 of the License, or -(at your option) any later version. - -This program 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 this program; if not, write to the Free Software -Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + This program 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 of the License, or + (at your option) any later version. + + This program 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 this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* @setfilename archive-info @@ -221,7 +221,7 @@ bfd_get_next_mapent (bfd *abfd, symindex return prev; } -/* To be called by backends only */ +/* To be called by backends only. */ bfd * _bfd_create_empty_archive_element_shell (bfd *obfd) @@ -261,7 +261,8 @@ _bfd_look_for_bfd_in_cache (bfd *arch_bf return NULL; } -/* Kind of stupid to call cons for each one, but we don't do too many */ +/* Kind of stupid to call cons for each one, but we don't do too many. */ + bfd_boolean _bfd_add_bfd_to_archive_cache (bfd *arch_bfd, file_ptr filepos, bfd *new_elt) { @@ -316,8 +317,7 @@ get_extended_arelt_filename (bfd *arch, Presumes the file pointer is already in the right place (ie pointing to the ar_hdr in the file). Moves the file pointer; on success it should be pointing to the front of the file contents; on failure it - could have been moved arbitrarily. -*/ + could have been moved arbitrarily. */ void * _bfd_generic_read_ar_hdr (bfd *abfd) @@ -467,6 +467,12 @@ _bfd_get_elt_at_filepos (bfd *archive, f struct areltdata *new_areldata; bfd *n_nfd; + if (archive->my_archive) + { + filepos += archive->origin; + archive = archive->my_archive; + } + n_nfd = _bfd_look_for_bfd_in_cache (archive, filepos); if (n_nfd) return n_nfd; @@ -549,10 +555,12 @@ bfd_generic_openr_next_archived_file (bf else { unsigned int size = arelt_size (last_file); + filestart = last_file->origin + size; + if (archive->my_archive) + filestart -= archive->origin; /* Pad to an even boundary... Note that last_file->origin can be odd in the case of BSD-4.4-style element with a long odd size. */ - filestart = last_file->origin + size; filestart += filestart % 2; } @@ -670,7 +678,7 @@ bfd_generic_archive_p (bfd *abfd) /* The size of the string count. */ #define BSD_STRING_COUNT_SIZE 4 -/* Returns FALSE on error, TRUE otherwise */ +/* Returns FALSE on error, TRUE otherwise. */ static bfd_boolean do_slurp_bsd_armap (bfd *abfd) @@ -901,8 +909,8 @@ bfd_slurp_armap (bfd *abfd) return TRUE; } -/* Returns FALSE on error, TRUE otherwise */ -/* flavor 2 of a bsd armap, similar to bfd_slurp_bsd_armap except the +/* Returns FALSE on error, TRUE otherwise. */ +/* Flavor 2 of a bsd armap, similar to bfd_slurp_bsd_armap except the header is in a slightly different order and the map name is '/'. This flavour is used by hp300hpux. */ @@ -932,7 +940,7 @@ bfd_slurp_bsd_armap_f2 (bfd *abfd) return FALSE; if (!strncmp (nextname, "__.SYMDEF ", 16) - || !strncmp (nextname, "__.SYMDEF/ ", 16)) /* old Linux archives */ + || !strncmp (nextname, "__.SYMDEF/ ", 16)) /* Old Linux archives. */ return do_slurp_bsd_armap (abfd); if (strncmp (nextname, "/ ", 16)) @@ -1296,7 +1304,7 @@ _bfd_construct_extended_name_table (bfd return TRUE; } -/** A couple of functions for creating ar_hdrs */ +/* A couple of functions for creating ar_hdrs. */ #ifdef HPUX_LARGE_AR_IDS /* Function to encode large UID/GID values according to HP. */ @@ -1765,9 +1773,9 @@ _bfd_compute_and_write_armap (bfd *arch, bfd *current; file_ptr elt_no = 0; struct orl *map = NULL; - unsigned int orl_max = 1024; /* fine initial default */ + unsigned int orl_max = 1024; /* Fine initial default. */ unsigned int orl_count = 0; - int stridx = 0; /* string index */ + int stridx = 0; asymbol **syms = NULL; long syms_max = 0; bfd_boolean ret; @@ -1916,7 +1924,7 @@ bsd_write_armap (bfd *arch, unsigned int mapsize = ranlibsize + stringsize + 8; file_ptr firstreal; bfd *current = arch->archive_head; - bfd *last_elt = current; /* last element arch seen */ + bfd *last_elt = current; /* Last element arch seen. */ bfd_byte temp[4]; unsigned int count; struct ar_hdr hdr; @@ -1960,7 +1968,7 @@ bsd_write_armap (bfd *arch, current = current->next; } while (current != map[count].u.abfd); - } /* if new archive element */ + } last_elt = current; H_PUT_32 (arch, map[count].namidx, buf); @@ -2058,8 +2066,7 @@ _bfd_archive_bsd_update_armap_timestamp symbol name 0 symbol name 1 - symbol name n-1 -*/ + symbol name n-1 */ bfd_boolean coff_write_armap (bfd *arch, @@ -2104,7 +2111,6 @@ coff_write_armap (bfd *arch, (((char *) (&hdr))[i]) = ' '; /* Write the ar header for this item and the number of symbols. */ - if (bfd_bwrite (&hdr, sizeof (struct ar_hdr), arch) != sizeof (struct ar_hdr)) return FALSE; diff -uprN binutils-2.15.90.0.3/bfd/archures.c binutils-2.15.91.0.1/bfd/archures.c --- binutils-2.15.90.0.3/bfd/archures.c 2004-04-12 12:56:33.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/archures.c 2004-05-27 11:26:01.799538128 -0700 @@ -85,6 +85,11 @@ DESCRIPTION .#define bfd_mach_mcf5307 11 .#define bfd_mach_mcf5407 12 .#define bfd_mach_mcf528x 13 +.#define bfd_mach_mcfv4e 14 +.#define bfd_mach_mcf521x 15 +.#define bfd_mach_mcf5249 16 +.#define bfd_mach_mcf547x 17 +.#define bfd_mach_mcf548x 18 . bfd_arch_vax, {* DEC Vax *} . bfd_arch_i960, {* Intel 960 *} . {* The order of the following is important. diff -uprN binutils-2.15.90.0.3/bfd/bfd-in.h binutils-2.15.91.0.1/bfd/bfd-in.h --- binutils-2.15.90.0.3/bfd/bfd-in.h 2004-04-12 12:56:33.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/bfd-in.h 2004-05-27 11:26:01.801537870 -0700 @@ -433,6 +433,11 @@ extern void bfd_hash_traverse bfd_boolean (*) (struct bfd_hash_entry *, void *), void *info); +/* Allows the default size of a hash table to be configured. New hash + tables allocated using bfd_hash_table_init will be created with + this size. */ +extern void bfd_hash_set_default_size (bfd_size_type); + #define COFF_SWAP_TABLE (void *) &bfd_coff_std_swap_table /* User program access to BFD facilities. */ @@ -587,8 +592,6 @@ extern bfd_boolean bfd_ecoff_write_accum (void *handle, bfd *abfd, struct ecoff_debug_info *debug, const struct ecoff_debug_swap *swap, struct bfd_link_info *info, file_ptr where); -extern bfd_boolean bfd_mips_ecoff_create_embedded_relocs - (bfd *, struct bfd_link_info *, struct bfd_section *, struct bfd_section *, char **); /* Externally visible ELF routines. */ @@ -670,8 +673,6 @@ extern struct bfd_section *_bfd_elf_tls_ extern bfd_boolean bfd_m68k_elf32_create_embedded_relocs (bfd *, struct bfd_link_info *, struct bfd_section *, struct bfd_section *, char **); -extern bfd_boolean bfd_mips_elf32_create_embedded_relocs - (bfd *, struct bfd_link_info *, struct bfd_section *, struct bfd_section *, char **); /* SunOS shared library support routines for the linker. */ diff -uprN binutils-2.15.90.0.3/bfd/bfd-in2.h binutils-2.15.91.0.1/bfd/bfd-in2.h --- binutils-2.15.90.0.3/bfd/bfd-in2.h 2004-04-12 12:56:33.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/bfd-in2.h 2004-05-27 11:26:01.830534120 -0700 @@ -440,6 +440,11 @@ extern void bfd_hash_traverse bfd_boolean (*) (struct bfd_hash_entry *, void *), void *info); +/* Allows the default size of a hash table to be configured. New hash + tables allocated using bfd_hash_table_init will be created with + this size. */ +extern void bfd_hash_set_default_size (bfd_size_type); + #define COFF_SWAP_TABLE (void *) &bfd_coff_std_swap_table /* User program access to BFD facilities. */ @@ -594,8 +599,6 @@ extern bfd_boolean bfd_ecoff_write_accum (void *handle, bfd *abfd, struct ecoff_debug_info *debug, const struct ecoff_debug_swap *swap, struct bfd_link_info *info, file_ptr where); -extern bfd_boolean bfd_mips_ecoff_create_embedded_relocs - (bfd *, struct bfd_link_info *, struct bfd_section *, struct bfd_section *, char **); /* Externally visible ELF routines. */ @@ -677,8 +680,6 @@ extern struct bfd_section *_bfd_elf_tls_ extern bfd_boolean bfd_m68k_elf32_create_embedded_relocs (bfd *, struct bfd_link_info *, struct bfd_section *, struct bfd_section *, char **); -extern bfd_boolean bfd_mips_elf32_create_embedded_relocs - (bfd *, struct bfd_link_info *, struct bfd_section *, struct bfd_section *, char **); /* SunOS shared library support routines for the linker. */ @@ -839,6 +840,18 @@ bfd *bfd_fdopenr (const char *filename, bfd *bfd_openstreamr (const char *, const char *, void *); +bfd *bfd_openr_iovec (const char *filename, const char *target, + void *(*open) (struct bfd *nbfd, + void *open_closure), + void *open_closure, + file_ptr (*pread) (struct bfd *nbfd, + void *stream, + void *buf, + file_ptr nbytes, + file_ptr offset), + int (*close) (struct bfd *nbfd, + void *stream)); + bfd *bfd_openw (const char *filename, const char *target); bfd_boolean bfd_close (bfd *abfd); @@ -1425,6 +1438,12 @@ void bfd_section_list_clear (bfd *); asection *bfd_get_section_by_name (bfd *abfd, const char *name); +asection *bfd_get_section_by_name_if + (bfd *abfd, + const char *name, + bfd_boolean (*func) (bfd *abfd, asection *sect, void *obj), + void *obj); + char *bfd_get_unique_section_name (bfd *abfd, const char *templat, int *count); @@ -1442,6 +1461,11 @@ void bfd_map_over_sections void (*func) (bfd *abfd, asection *sect, void *obj), void *obj); +asection *bfd_sections_find_if + (bfd *abfd, + bfd_boolean (*func) (bfd *abfd, asection *sect, void *obj), + void *obj); + bfd_boolean bfd_set_section_size (bfd *abfd, asection *sec, bfd_size_type val); @@ -1462,6 +1486,8 @@ bfd_boolean bfd_copy_private_section_dat void _bfd_strip_section_from_output (struct bfd_link_info *info, asection *section); +bfd_boolean bfd_generic_is_group_section (bfd *, const asection *sec); + bfd_boolean bfd_generic_discard_group (bfd *abfd, asection *group); /* Extracted from archures.c. */ @@ -1483,6 +1509,11 @@ enum bfd_architecture #define bfd_mach_mcf5307 11 #define bfd_mach_mcf5407 12 #define bfd_mach_mcf528x 13 +#define bfd_mach_mcfv4e 14 +#define bfd_mach_mcf521x 15 +#define bfd_mach_mcf5249 16 +#define bfd_mach_mcf547x 17 +#define bfd_mach_mcf548x 18 bfd_arch_vax, /* DEC Vax */ bfd_arch_i960, /* Intel 960 */ /* The order of the following is important. @@ -2027,6 +2058,9 @@ The 24-bit relocation is used in some In BFD_RELOC_12_PCREL, BFD_RELOC_8_PCREL, +/* Section relative relocations. Some targets need this for DWARF2. */ + BFD_RELOC_32_SECREL, + /* For ELF. */ BFD_RELOC_32_GOT_PCREL, BFD_RELOC_16_GOT_PCREL, @@ -2277,12 +2311,6 @@ to compensate for the borrow when the lo /* Low 16 bits. */ BFD_RELOC_LO16, -/* Like BFD_RELOC_HI16_S, but PC relative. */ - BFD_RELOC_PCREL_HI16_S, - -/* Like BFD_RELOC_LO16, but PC relative. */ - BFD_RELOC_PCREL_LO16, - /* Relocation against a MIPS literal section. */ BFD_RELOC_MIPS_LITERAL, @@ -3705,14 +3733,10 @@ struct bfd /* A pointer to the target jump table. */ const struct bfd_target *xvec; - /* To avoid dragging too many header files into every file that - includes `<>', IOSTREAM has been declared as a "char *", - and MTIME as a "long". Their correct types, to which they - are cast when used, are "FILE *" and "time_t". The iostream - is the result of an fopen on the filename. However, if the - BFD_IN_MEMORY flag is set, then iostream is actually a pointer - to a bfd_in_memory struct. */ + /* The IOSTREAM, and corresponding IO vector that provide access + to the file backing the BFD. */ void *iostream; + const struct bfd_iovec *iovec; /* Is the file descriptor being cached? That is, can it be closed as needed, and re-opened when accessed later? */ @@ -3926,6 +3950,11 @@ void bfd_set_gp_size (bfd *abfd, unsigne bfd_vma bfd_scan_vma (const char *string, const char **end, int base); +bfd_boolean bfd_copy_private_header_data (bfd *ibfd, bfd *obfd); + +#define bfd_copy_private_header_data(ibfd, obfd) \ + BFD_SEND (obfd, _bfd_copy_private_header_data, \ + (ibfd, obfd)) bfd_boolean bfd_copy_private_bfd_data (bfd *ibfd, bfd *obfd); #define bfd_copy_private_bfd_data(ibfd, obfd) \ @@ -3974,6 +4003,9 @@ bfd_boolean bfd_set_private_flags (bfd * #define bfd_merge_sections(abfd, link_info) \ BFD_SEND (abfd, _bfd_merge_sections, (abfd, link_info)) +#define bfd_is_group_section(abfd, sec) \ + BFD_SEND (abfd, _bfd_is_group_section, (abfd, sec)) + #define bfd_discard_group(abfd, sec) \ BFD_SEND (abfd, _bfd_discard_group, (abfd, sec)) @@ -4004,6 +4036,9 @@ bfd_boolean bfd_set_private_flags (bfd * #define bfd_canonicalize_dynamic_symtab(abfd, asymbols) \ BFD_SEND (abfd, _bfd_canonicalize_dynamic_symtab, (abfd, asymbols)) +#define bfd_get_synthetic_symtab(abfd, dynsyms, ret) \ + BFD_SEND (abfd, _bfd_get_synthetic_symtab, (abfd, dynsyms, ret)) + #define bfd_get_dynamic_reloc_upper_bound(abfd) \ BFD_SEND (abfd, _bfd_get_dynamic_reloc_upper_bound, (abfd)) @@ -4200,6 +4235,7 @@ typedef struct bfd_target NAME##_bfd_merge_private_bfd_data, \ NAME##_bfd_copy_private_section_data, \ NAME##_bfd_copy_private_symbol_data, \ + NAME##_bfd_copy_private_header_data, \ NAME##_bfd_set_private_flags, \ NAME##_bfd_print_private_bfd_data @@ -4217,6 +4253,10 @@ typedef struct bfd_target to another. */ bfd_boolean (*_bfd_copy_private_symbol_data) (bfd *, asymbol *, bfd *, asymbol *); + /* Called to copy BFD private header data from one object file + to another. */ + bfd_boolean (*_bfd_copy_private_header_data) + (bfd *, bfd *); /* Called to set private backend flags. */ bfd_boolean (*_bfd_set_private_flags) (bfd *, flagword); @@ -4341,6 +4381,7 @@ typedef struct bfd_target NAME##_bfd_link_split_section, \ NAME##_bfd_gc_sections, \ NAME##_bfd_merge_sections, \ + NAME##_bfd_is_group_section, \ NAME##_bfd_discard_group int (*_bfd_sizeof_headers) (bfd *, bfd_boolean); @@ -4378,6 +4419,9 @@ typedef struct bfd_target /* Attempt to merge SEC_MERGE sections. */ bfd_boolean (*_bfd_merge_sections) (bfd *, struct bfd_link_info *); + /* Is this section a member of a group? */ + bfd_boolean (*_bfd_is_group_section) (bfd *, const struct bfd_section *); + /* Discard members of a group. */ bfd_boolean (*_bfd_discard_group) (bfd *, struct bfd_section *); @@ -4385,6 +4429,7 @@ typedef struct bfd_target #define BFD_JUMP_TABLE_DYNAMIC(NAME) \ NAME##_get_dynamic_symtab_upper_bound, \ NAME##_canonicalize_dynamic_symtab, \ + NAME##_get_synthetic_symtab, \ NAME##_get_dynamic_reloc_upper_bound, \ NAME##_canonicalize_dynamic_reloc @@ -4393,6 +4438,9 @@ typedef struct bfd_target /* Read in the dynamic symbols. */ long (*_bfd_canonicalize_dynamic_symtab) (bfd *, struct bfd_symbol **); + /* Create synthetized symbols. */ + long (*_bfd_get_synthetic_symtab) + (bfd *, struct bfd_symbol **, struct bfd_symbol **); /* Get the amount of memory required to hold the dynamic relocs. */ long (*_bfd_get_dynamic_reloc_upper_bound) (bfd *); /* Read in the dynamic relocs. */ diff -uprN binutils-2.15.90.0.3/bfd/bfd.c binutils-2.15.91.0.1/bfd/bfd.c --- binutils-2.15.90.0.3/bfd/bfd.c 2004-01-14 13:07:42.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/bfd.c 2004-05-27 11:26:01.844532310 -0700 @@ -1,6 +1,6 @@ /* Generic BFD library interface and support routines. Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003 + 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. Written by Cygnus Support. @@ -45,14 +45,10 @@ CODE_FRAGMENT . {* A pointer to the target jump table. *} . const struct bfd_target *xvec; . -. {* To avoid dragging too many header files into every file that -. includes `<>', IOSTREAM has been declared as a "char *", -. and MTIME as a "long". Their correct types, to which they -. are cast when used, are "FILE *" and "time_t". The iostream -. is the result of an fopen on the filename. However, if the -. BFD_IN_MEMORY flag is set, then iostream is actually a pointer -. to a bfd_in_memory struct. *} +. {* The IOSTREAM, and corresponding IO vector that provide access +. to the file backing the BFD. *} . void *iostream; +. const struct bfd_iovec *iovec; . . {* Is the file descriptor being cached? That is, can it be closed as . needed, and re-opened when accessed later? *} @@ -512,6 +508,9 @@ DESCRIPTION const char * bfd_archive_filename (bfd *abfd) { + if (abfd == NULL) + return NULL; + if (abfd->my_archive) { static size_t curr = 0; @@ -766,12 +765,14 @@ bfd_get_sign_extend_vma (bfd *abfd) name = bfd_get_target (abfd); - /* Return a proper value for DJGPP COFF (an x86 COFF variant). + /* Return a proper value for DJGPP & PE COFF (x86 COFF variants). This function is required for DWARF2 support, but there is no place to store this information in the COFF back end. Should enough other COFF targets add support for DWARF2, a place will have to be found. Until then, this hack will do. */ - if (strncmp (name, "coff-go32", sizeof ("coff-go32") - 1) == 0) + if (strncmp (name, "coff-go32", sizeof ("coff-go32") - 1) == 0 + || strcmp (name, "pe-i386") == 0 + || strcmp (name, "pei-i386") == 0) return 1; bfd_set_error (bfd_error_wrong_format); @@ -981,6 +982,29 @@ bfd_scan_vma (const char *string, const /* FUNCTION + bfd_copy_private_header_data + +SYNOPSIS + bfd_boolean bfd_copy_private_header_data (bfd *ibfd, bfd *obfd); + +DESCRIPTION + Copy private BFD header information from the BFD @var{ibfd} to the + the BFD @var{obfd}. This copies information that may require + sections to exist, but does not require symbol tables. Return + <> on success, <> on error. + Possible error returns are: + + o <> - + Not enough memory exists to create private data for @var{obfd}. + +.#define bfd_copy_private_header_data(ibfd, obfd) \ +. BFD_SEND (obfd, _bfd_copy_private_header_data, \ +. (ibfd, obfd)) + +*/ + +/* +FUNCTION bfd_copy_private_bfd_data SYNOPSIS @@ -1082,6 +1106,9 @@ DESCRIPTION .#define bfd_merge_sections(abfd, link_info) \ . BFD_SEND (abfd, _bfd_merge_sections, (abfd, link_info)) . +.#define bfd_is_group_section(abfd, sec) \ +. BFD_SEND (abfd, _bfd_is_group_section, (abfd, sec)) +. .#define bfd_discard_group(abfd, sec) \ . BFD_SEND (abfd, _bfd_discard_group, (abfd, sec)) . @@ -1112,6 +1139,9 @@ DESCRIPTION .#define bfd_canonicalize_dynamic_symtab(abfd, asymbols) \ . BFD_SEND (abfd, _bfd_canonicalize_dynamic_symtab, (abfd, asymbols)) . +.#define bfd_get_synthetic_symtab(abfd, dynsyms, ret) \ +. BFD_SEND (abfd, _bfd_get_synthetic_symtab, (abfd, dynsyms, ret)) +. .#define bfd_get_dynamic_reloc_upper_bound(abfd) \ . BFD_SEND (abfd, _bfd_get_dynamic_reloc_upper_bound, (abfd)) . diff -uprN binutils-2.15.90.0.3/bfd/bfdio.c binutils-2.15.91.0.1/bfd/bfdio.c --- binutils-2.15.90.0.3/bfd/bfdio.c 2004-03-03 12:24:33.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/bfdio.c 2004-05-27 11:26:01.854531017 -0700 @@ -62,37 +62,41 @@ real_fseek (FILE *file, file_ptr offset, #endif } -/* Note that archive entries don't have streams; they share their parent's. - This allows someone to play with the iostream behind BFD's back. +/* +INTERNAL_DEFINITION + struct bfd_iovec - Also, note that the origin pointer points to the beginning of a file's - contents (0 for non-archive elements). For archive entries this is the - first octet in the file, NOT the beginning of the archive header. */ +DESCRIPTION -static size_t -real_read (void *where, size_t a, size_t b, FILE *file) -{ - /* FIXME - this looks like an optimization, but it's really to cover - up for a feature of some OSs (not solaris - sigh) that - ld/pe-dll.c takes advantage of (apparently) when it creates BFDs - internally and tries to link against them. BFD seems to be smart - enough to realize there are no symbol records in the "file" that - doesn't exist but attempts to read them anyway. On Solaris, - attempting to read zero bytes from a NULL file results in a core - dump, but on other platforms it just returns zero bytes read. - This makes it to something reasonable. - DJ */ - if (a == 0 || b == 0) - return 0; + The <> contains the internal file I/O class. + Each <> has an instance of this class and all file I/O is + routed through it (it is assumed that the instance implements + all methods listed below). + +.struct bfd_iovec +.{ +. {* To avoid problems with macros, a "b" rather than "f" +. prefix is prepended to each method name. *} +. {* Attempt to read/write NBYTES on ABFD's IOSTREAM storing/fetching +. bytes starting at PTR. Return the number of bytes actually +. transfered (a read past end-of-file returns less than NBYTES), +. or -1 (setting <>) if an error occurs. *} +. file_ptr (*bread) (struct bfd *abfd, void *ptr, file_ptr nbytes); +. file_ptr (*bwrite) (struct bfd *abfd, const void *ptr, +. file_ptr nbytes); +. {* Return the current IOSTREAM file offset, or -1 (setting <> +. if an error occurs. *} +. file_ptr (*btell) (struct bfd *abfd); +. {* For the following, on successful completion a value of 0 is returned. +. Otherwise, a value of -1 is returned (and <> is set). *} +. int (*bseek) (struct bfd *abfd, file_ptr offset, int whence); +. int (*bclose) (struct bfd *abfd); +. int (*bflush) (struct bfd *abfd); +. int (*bstat) (struct bfd *abfd, struct stat *sb); +.}; +*/ -#if defined (__VAX) && defined (VMS) - /* Apparently fread on Vax VMS does not keep the record length - information. */ - return read (fileno (file), where, a * b); -#else - return fread (where, a, b, file); -#endif -} /* Return value is amount read. */ @@ -121,25 +125,13 @@ bfd_bread (void *ptr, bfd_size_type size return get; } - nread = real_read (ptr, 1, (size_t) size, bfd_cache_lookup (abfd)); + if (abfd->iovec) + nread = abfd->iovec->bread (abfd, ptr, size); + else + nread = 0; if (nread != (size_t) -1) abfd->where += nread; - /* Set bfd_error if we did not read as much data as we expected. - - If the read failed due to an error set the bfd_error_system_call, - else set bfd_error_file_truncated. - - A BFD backend may wish to override bfd_error_file_truncated to - provide something more useful (eg. no_symbols or wrong_format). */ - if (nread != size) - { - if (ferror (bfd_cache_lookup (abfd))) - bfd_set_error (bfd_error_system_call); - else - bfd_set_error (bfd_error_file_truncated); - } - return nread; } @@ -151,6 +143,7 @@ bfd_bwrite (const void *ptr, bfd_size_ty if ((abfd->flags & BFD_IN_MEMORY) != 0) { struct bfd_in_memory *bim = abfd->iostream; + size = (size_t) size; if (abfd->where + size > bim->size) { @@ -175,7 +168,11 @@ bfd_bwrite (const void *ptr, bfd_size_ty return size; } - nwrote = fwrite (ptr, 1, (size_t) size, bfd_cache_lookup (abfd)); + if (abfd->iovec) + nwrote = abfd->iovec->bwrite (abfd, ptr, size); + else + nwrote = 0; + if (nwrote != (size_t) -1) abfd->where += nwrote; if (nwrote != size) @@ -196,10 +193,16 @@ bfd_tell (bfd *abfd) if ((abfd->flags & BFD_IN_MEMORY) != 0) return abfd->where; - ptr = real_ftell (bfd_cache_lookup (abfd)); + if (abfd->iovec) + { + ptr = abfd->iovec->btell (abfd); + + if (abfd->my_archive) + ptr -= abfd->origin; + } + else + ptr = 0; - if (abfd->my_archive) - ptr -= abfd->origin; abfd->where = ptr; return ptr; } @@ -209,7 +212,10 @@ bfd_flush (bfd *abfd) { if ((abfd->flags & BFD_IN_MEMORY) != 0) return 0; - return fflush (bfd_cache_lookup(abfd)); + + if (abfd->iovec) + return abfd->iovec->bflush (abfd); + return 0; } /* Returns 0 for success, negative value for failure (in which case @@ -217,19 +223,16 @@ bfd_flush (bfd *abfd) int bfd_stat (bfd *abfd, struct stat *statbuf) { - FILE *f; int result; if ((abfd->flags & BFD_IN_MEMORY) != 0) abort (); - f = bfd_cache_lookup (abfd); - if (f == NULL) - { - bfd_set_error (bfd_error_system_call); - return -1; - } - result = fstat (fileno (f), statbuf); + if (abfd->iovec) + result = abfd->iovec->bstat (abfd, statbuf); + else + result = -1; + if (result < 0) bfd_set_error (bfd_error_system_call); return result; @@ -242,7 +245,6 @@ int bfd_seek (bfd *abfd, file_ptr position, int direction) { int result; - FILE *f; file_ptr file_position; /* For the time being, a BFD may not seek to it's end. The problem is that we don't easily have a way to recognize the end of an @@ -270,6 +272,7 @@ bfd_seek (bfd *abfd, file_ptr position, (abfd->direction == both_direction)) { bfd_size_type newsize, oldsize; + oldsize = (bim->size + 127) & ~(bfd_size_type) 127; bim->size = abfd->where; /* Round up to cut down on memory fragmentation */ @@ -328,12 +331,15 @@ bfd_seek (bfd *abfd, file_ptr position, In the meantime, no optimization for archives. */ } - f = bfd_cache_lookup (abfd); file_position = position; if (direction == SEEK_SET && abfd->my_archive != NULL) file_position += abfd->origin; - result = real_fseek (f, file_position, direction); + if (abfd->iovec) + result = abfd->iovec->bseek (abfd, file_position, direction); + else + result = -1; + if (result != 0) { int hold_errno = errno; @@ -378,14 +384,15 @@ DESCRIPTION long bfd_get_mtime (bfd *abfd) { - FILE *fp; struct stat buf; if (abfd->mtime_set) return abfd->mtime; - fp = bfd_cache_lookup (abfd); - if (0 != fstat (fileno (fp), &buf)) + if (abfd->iovec == NULL) + return 0; + + if (abfd->iovec->bstat (abfd, &buf) != 0) return 0; abfd->mtime = buf.st_mtime; /* Save value in case anyone wants it */ @@ -428,14 +435,15 @@ DESCRIPTION long bfd_get_size (bfd *abfd) { - FILE *fp; struct stat buf; if ((abfd->flags & BFD_IN_MEMORY) != 0) return ((struct bfd_in_memory *) abfd->iostream)->size; - fp = bfd_cache_lookup (abfd); - if (0 != fstat (fileno (fp), & buf)) + if (abfd->iovec == NULL) + return 0; + + if (abfd->iovec->bstat (abfd, &buf) != 0) return 0; return buf.st_size; diff -uprN binutils-2.15.90.0.3/bfd/binary.c binutils-2.15.91.0.1/bfd/binary.c --- binutils-2.15.90.0.3/bfd/binary.c 2004-01-14 13:07:42.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/binary.c 2004-05-27 11:26:01.855530887 -0700 @@ -1,6 +1,6 @@ /* BFD back-end for binary objects. - Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 - Free Software Foundation, Inc. + Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, + 2004 Free Software Foundation, Inc. Written by Ian Lance Taylor, Cygnus Support, This file is part of BFD, the Binary File Descriptor library. @@ -339,6 +339,7 @@ binary_sizeof_headers (abfd, exec) #define binary_bfd_relax_section bfd_generic_relax_section #define binary_bfd_gc_sections bfd_generic_gc_sections #define binary_bfd_merge_sections bfd_generic_merge_sections +#define binary_bfd_is_group_section bfd_generic_is_group_section #define binary_bfd_discard_group bfd_generic_discard_group #define binary_bfd_link_hash_table_create _bfd_generic_link_hash_table_create #define binary_bfd_link_hash_table_free _bfd_generic_link_hash_table_free diff -uprN binutils-2.15.90.0.3/bfd/bout.c binutils-2.15.91.0.1/bfd/bout.c --- binutils-2.15.90.0.3/bfd/bout.c 2004-01-14 13:07:42.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/bout.c 2004-05-27 11:26:01.871528818 -0700 @@ -1,6 +1,6 @@ /* BFD back-end for Intel 960 b.out binaries. Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003 + 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. Written by Cygnus Support. @@ -1487,6 +1487,7 @@ b_out_bfd_get_relocated_section_contents #define b_out_bfd_link_split_section _bfd_generic_link_split_section #define b_out_bfd_gc_sections bfd_generic_gc_sections #define b_out_bfd_merge_sections bfd_generic_merge_sections +#define b_out_bfd_is_group_section bfd_generic_is_group_section #define b_out_bfd_discard_group bfd_generic_discard_group #define aout_32_get_section_contents_in_window \ diff -uprN binutils-2.15.90.0.3/bfd/cache.c binutils-2.15.91.0.1/bfd/cache.c --- binutils-2.15.90.0.3/bfd/cache.c 2004-03-03 12:24:33.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/cache.c 2004-05-27 11:26:01.885527008 -0700 @@ -44,6 +44,109 @@ SECTION static bfd_boolean bfd_cache_delete (bfd *); + +static file_ptr +cache_btell (struct bfd *abfd) +{ + return real_ftell (bfd_cache_lookup (abfd)); +} + +static int +cache_bseek (struct bfd *abfd, file_ptr offset, int whence) +{ + return real_fseek (bfd_cache_lookup (abfd), offset, whence); +} + +/* Note that archive entries don't have streams; they share their parent's. + This allows someone to play with the iostream behind BFD's back. + + Also, note that the origin pointer points to the beginning of a file's + contents (0 for non-archive elements). For archive entries this is the + first octet in the file, NOT the beginning of the archive header. */ + +static file_ptr +cache_bread (struct bfd *abfd, void *buf, file_ptr nbytes) +{ + file_ptr nread; + /* FIXME - this looks like an optimization, but it's really to cover + up for a feature of some OSs (not solaris - sigh) that + ld/pe-dll.c takes advantage of (apparently) when it creates BFDs + internally and tries to link against them. BFD seems to be smart + enough to realize there are no symbol records in the "file" that + doesn't exist but attempts to read them anyway. On Solaris, + attempting to read zero bytes from a NULL file results in a core + dump, but on other platforms it just returns zero bytes read. + This makes it to something reasonable. - DJ */ + if (nbytes == 0) + return 0; + +#if defined (__VAX) && defined (VMS) + /* Apparently fread on Vax VMS does not keep the record length + information. */ + nread = read (fileno (bfd_cache_lookup (abfd)), buf, nbytes); + /* Set bfd_error if we did not read as much data as we expected. If + the read failed due to an error set the bfd_error_system_call, + else set bfd_error_file_truncated. */ + if (nread == (file_ptr)-1) + { + bfd_set_error (bfd_error_system_call); + return -1; + } +#else + nread = fread (buf, 1, nbytes, bfd_cache_lookup (abfd)); + /* Set bfd_error if we did not read as much data as we expected. If + the read failed due to an error set the bfd_error_system_call, + else set bfd_error_file_truncated. */ + if (nread < nbytes && ferror (bfd_cache_lookup (abfd))) + { + bfd_set_error (bfd_error_system_call); + return -1; + } +#endif + return nread; +} + +static file_ptr +cache_bwrite (struct bfd *abfd, const void *where, file_ptr nbytes) +{ + file_ptr nwrite = fwrite (where, 1, nbytes, bfd_cache_lookup (abfd)); + if (nwrite < nbytes && ferror (bfd_cache_lookup (abfd))) + { + bfd_set_error (bfd_error_system_call); + return -1; + } + return nwrite; +} + +static int +cache_bclose (struct bfd *abfd) +{ + return bfd_cache_close (abfd); +} + +static int +cache_bflush (struct bfd *abfd) +{ + int sts = fflush (bfd_cache_lookup (abfd)); + if (sts < 0) + bfd_set_error (bfd_error_system_call); + return sts; +} + +static int +cache_bstat (struct bfd *abfd, struct stat *sb) +{ + int sts = fstat (fileno (bfd_cache_lookup (abfd)), sb); + if (sts < 0) + bfd_set_error (bfd_error_system_call); + return sts; +} + +static const struct bfd_iovec cache_iovec = { + &cache_bread, &cache_bwrite, &cache_btell, &cache_bseek, + &cache_bclose, &cache_bflush, &cache_bstat +}; + /* INTERNAL_FUNCTION BFD_CACHE_MAX_OPEN macro @@ -86,9 +189,9 @@ bfd *bfd_last_cache; otherwise, it has to perform the complicated lookup function. .#define bfd_cache_lookup(x) \ - . ((x)==bfd_last_cache? \ - . (FILE*) (bfd_last_cache->iostream): \ - . bfd_cache_lookup_worker(x)) + . ((x) == bfd_last_cache ? \ + . (FILE *) (bfd_last_cache->iostream): \ + . bfd_cache_lookup_worker (x)) */ @@ -205,6 +308,7 @@ bfd_cache_init (bfd *abfd) if (! close_one ()) return FALSE; } + abfd->iovec = &cache_iovec; insert (abfd); ++open_files; return TRUE; @@ -229,8 +333,11 @@ RETURNS bfd_boolean bfd_cache_close (bfd *abfd) { - if (abfd->iostream == NULL - || (abfd->flags & BFD_IN_MEMORY) != 0) + if (abfd->iovec != &cache_iovec) + return TRUE; + + if (abfd->iostream == NULL) + /* Previously closed. */ return TRUE; return bfd_cache_delete (abfd); @@ -331,7 +438,8 @@ DESCRIPTION quick answer. Find a file descriptor for @var{abfd}. If necessary, it open it. If there are already more than <> files open, it tries to close one first, to - avoid running out of file descriptors. + avoid running out of file descriptors. It will abort rather than + returning NULL if it is unable to (re)open the @var{abfd}. */ FILE * @@ -354,12 +462,10 @@ bfd_cache_lookup_worker (bfd *abfd) } else { - if (bfd_open_file (abfd) == NULL) - return NULL; - if (abfd->where != (unsigned long) abfd->where) - return NULL; - if (real_fseek ((FILE *) abfd->iostream, abfd->where, SEEK_SET) != 0) - return NULL; + if (bfd_open_file (abfd) == NULL + || abfd->where != (unsigned long) abfd->where + || real_fseek ((FILE *) abfd->iostream, abfd->where, SEEK_SET) != 0) + abort (); } return (FILE *) abfd->iostream; diff -uprN binutils-2.15.90.0.3/bfd/coff-alpha.c binutils-2.15.91.0.1/bfd/coff-alpha.c --- binutils-2.15.90.0.3/bfd/coff-alpha.c 2004-01-14 13:07:42.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/coff-alpha.c 2004-05-27 11:26:01.903524681 -0700 @@ -1,6 +1,6 @@ /* BFD back-end for ALPHA Extended-Coff files. - Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 - Free Software Foundation, Inc. + Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, + 2003, 2004 Free Software Foundation, Inc. Modified from coff-mips.c by Steve Chamberlain and Ian Lance Taylor . @@ -2359,6 +2359,7 @@ static const struct ecoff_backend_data a #define _bfd_ecoff_bfd_relax_section bfd_generic_relax_section #define _bfd_ecoff_bfd_gc_sections bfd_generic_gc_sections #define _bfd_ecoff_bfd_merge_sections bfd_generic_merge_sections +#define _bfd_ecoff_bfd_is_group_section bfd_generic_is_group_section #define _bfd_ecoff_bfd_discard_group bfd_generic_discard_group const bfd_target ecoffalpha_little_vec = diff -uprN binutils-2.15.90.0.3/bfd/coff-i386.c binutils-2.15.91.0.1/bfd/coff-i386.c --- binutils-2.15.90.0.3/bfd/coff-i386.c 2004-01-14 13:07:42.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/coff-i386.c 2004-05-27 11:26:01.913523388 -0700 @@ -234,7 +234,24 @@ static reloc_howto_type howto_table[] = EMPTY_HOWTO (010), EMPTY_HOWTO (011), EMPTY_HOWTO (012), +#ifdef COFF_WITH_PE + /* 32-bit longword section relative relocation (013). */ + HOWTO (R_SECREL32, /* type */ + 0, /* rightshift */ + 2, /* size (0 = byte, 1 = short, 2 = long) */ + 32, /* bitsize */ + FALSE, /* pc_relative */ + 0, /* bitpos */ + complain_overflow_bitfield, /* complain_on_overflow */ + coff_i386_reloc, /* special_function */ + "secrel32", /* name */ + TRUE, /* partial_inplace */ + 0xffffffff, /* src_mask */ + 0xffffffff, /* dst_mask */ + TRUE), /* pcrel_offset */ +#else EMPTY_HOWTO (013), +#endif EMPTY_HOWTO (014), EMPTY_HOWTO (015), EMPTY_HOWTO (016), @@ -497,6 +514,30 @@ coff_i386_rtype_to_howto (abfd, sec, rel { *addendp -= pe_data(sec->output_section->owner)->pe_opthdr.ImageBase; } + + if (rel->r_type == R_SECREL32) + { + bfd_vma osect_vma; + + if (h && (h->type == bfd_link_hash_defined + || h->type == bfd_link_hash_defweak)) + osect_vma = h->root.u.def.section->output_section->vma; + else + { + asection *sec; + int i; + + /* Sigh, the only way to get the section to offset against + is to find it the hard way. */ + + for (sec = abfd->sections, i = 1; i < sym->n_scnum; i++) + sec = sec->next; + + osect_vma = sec->output_section->vma; + } + + *addendp -= osect_vma; + } #endif return howto; @@ -525,6 +566,10 @@ coff_i386_reloc_type_lookup (abfd, code) return howto_table + R_RELBYTE; case BFD_RELOC_8_PCREL: return howto_table + R_PCRBYTE; +#ifdef COFF_WITH_PE + case BFD_RELOC_32_SECREL: + return howto_table + R_SECREL32; +#endif default: BFD_FAIL (); return 0; diff -uprN binutils-2.15.90.0.3/bfd/coff-mips.c binutils-2.15.91.0.1/bfd/coff-mips.c --- binutils-2.15.90.0.3/bfd/coff-mips.c 2004-01-14 13:07:42.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/coff-mips.c 2004-05-27 11:26:01.920522483 -0700 @@ -1,6 +1,6 @@ /* BFD back-end for MIPS Extended-Coff files. Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003 + 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. Original version by Per Bothner. Full support added by Ian Lance Taylor, ian@cygnus.com. @@ -57,28 +57,12 @@ static bfd_reloc_status_type mips_reflo_ static bfd_reloc_status_type mips_gprel_reloc PARAMS ((bfd *abfd, arelent *reloc, asymbol *symbol, PTR data, asection *section, bfd *output_bfd, char **error)); -static bfd_reloc_status_type mips_relhi_reloc - PARAMS ((bfd *abfd, arelent *reloc, asymbol *symbol, PTR data, - asection *section, bfd *output_bfd, char **error)); -static bfd_reloc_status_type mips_rello_reloc - PARAMS ((bfd *abfd, arelent *reloc, asymbol *symbol, PTR data, - asection *section, bfd *output_bfd, char **error)); -static bfd_reloc_status_type mips_switch_reloc - PARAMS ((bfd *abfd, arelent *reloc, asymbol *symbol, PTR data, - asection *section, bfd *output_bfd, char **error)); static void mips_relocate_hi PARAMS ((struct internal_reloc *refhi, struct internal_reloc *reflo, bfd *input_bfd, asection *input_section, bfd_byte *contents, - size_t adjust, bfd_vma relocation, bfd_boolean pcrel)); + bfd_vma relocation)); static bfd_boolean mips_relocate_section PARAMS ((bfd *, struct bfd_link_info *, bfd *, asection *, bfd_byte *, PTR)); -static bfd_boolean mips_read_relocs - PARAMS ((bfd *, asection *)); -static bfd_boolean mips_relax_section - PARAMS ((bfd *, asection *, struct bfd_link_info *, bfd_boolean *)); -static bfd_boolean mips_relax_pcrel16 - PARAMS ((struct bfd_link_info *, bfd *, asection *, - struct ecoff_link_hash_entry *, bfd_byte *, bfd_vma)); static reloc_howto_type *mips_bfd_reloc_type_lookup PARAMS ((bfd *, bfd_reloc_code_real_type)); @@ -243,10 +227,9 @@ static reloc_howto_type mips_howto_table EMPTY_HOWTO (10), EMPTY_HOWTO (11), - /* This reloc is a Cygnus extension used when generating position - independent code for embedded systems. It represents a 16 bit PC - relative reloc rightshifted twice as used in the MIPS branch - instructions. */ + /* FIXME: This relocation is used (internally only) to represent branches + when assembling. It should never appear in output files, and + be removed. (It used to be used for embedded-PIC support.) */ HOWTO (MIPS_R_PCREL16, /* type */ 2, /* rightshift */ 2, /* size (0 = byte, 1 = short, 2 = long) */ @@ -260,92 +243,10 @@ static reloc_howto_type mips_howto_table 0xffff, /* src_mask */ 0xffff, /* dst_mask */ TRUE), /* pcrel_offset */ - - /* This reloc is a Cygnus extension used when generating position - independent code for embedded systems. It represents the high 16 - bits of a PC relative reloc. The next reloc must be - MIPS_R_RELLO, and the addend is formed from the addends of the - two instructions, just as in MIPS_R_REFHI and MIPS_R_REFLO. The - final value is actually PC relative to the location of the - MIPS_R_RELLO reloc, not the MIPS_R_RELHI reloc. */ - HOWTO (MIPS_R_RELHI, /* type */ - 16, /* rightshift */ - 2, /* size (0 = byte, 1 = short, 2 = long) */ - 16, /* bitsize */ - TRUE, /* pc_relative */ - 0, /* bitpos */ - complain_overflow_bitfield, /* complain_on_overflow */ - mips_relhi_reloc, /* special_function */ - "RELHI", /* name */ - TRUE, /* partial_inplace */ - 0xffff, /* src_mask */ - 0xffff, /* dst_mask */ - TRUE), /* pcrel_offset */ - - /* This reloc is a Cygnus extension used when generating position - independent code for embedded systems. It represents the low 16 - bits of a PC relative reloc. */ - HOWTO (MIPS_R_RELLO, /* type */ - 0, /* rightshift */ - 2, /* size (0 = byte, 1 = short, 2 = long) */ - 16, /* bitsize */ - TRUE, /* pc_relative */ - 0, /* bitpos */ - complain_overflow_dont, /* complain_on_overflow */ - mips_rello_reloc, /* special_function */ - "RELLO", /* name */ - TRUE, /* partial_inplace */ - 0xffff, /* src_mask */ - 0xffff, /* dst_mask */ - TRUE), /* pcrel_offset */ - - EMPTY_HOWTO (15), - EMPTY_HOWTO (16), - EMPTY_HOWTO (17), - EMPTY_HOWTO (18), - EMPTY_HOWTO (19), - EMPTY_HOWTO (20), - EMPTY_HOWTO (21), - - /* This reloc is a Cygnus extension used when generating position - independent code for embedded systems. It represents an entry in - a switch table, which is the difference between two symbols in - the .text section. The symndx is actually the offset from the - reloc address to the subtrahend. See include/coff/mips.h for - more details. */ - HOWTO (MIPS_R_SWITCH, /* type */ - 0, /* rightshift */ - 2, /* size (0 = byte, 1 = short, 2 = long) */ - 32, /* bitsize */ - TRUE, /* pc_relative */ - 0, /* bitpos */ - complain_overflow_dont, /* complain_on_overflow */ - mips_switch_reloc, /* special_function */ - "SWITCH", /* name */ - TRUE, /* partial_inplace */ - 0xffffffff, /* src_mask */ - 0xffffffff, /* dst_mask */ - TRUE) /* pcrel_offset */ }; #define MIPS_HOWTO_COUNT \ (sizeof mips_howto_table / sizeof mips_howto_table[0]) - -/* When the linker is doing relaxing, it may change an external PCREL16 - reloc. This typically represents an instruction like - bal foo - We change it to - .set noreorder - bal $L1 - lui $at,%hi(foo - $L1) - $L1: - addiu $at,%lo(foo - $L1) - addu $at,$at,$31 - jalr $at - PCREL16_EXPANSION_ADJUSTMENT is the number of bytes this changes the - instruction by. */ - -#define PCREL16_EXPANSION_ADJUSTMENT (4 * 4) /* See whether the magic number matches. */ @@ -418,25 +319,6 @@ mips_ecoff_swap_reloc_in (abfd, ext_ptr, << RELOC_BITS3_TYPEHI_SH_LITTLE)); intern->r_extern = (ext->r_bits[3] & RELOC_BITS3_EXTERN_LITTLE) != 0; } - - /* If this is a MIPS_R_SWITCH reloc, or an internal MIPS_R_RELHI or - MIPS_R_RELLO reloc, r_symndx is actually the offset from the - reloc address to the base of the difference (see - include/coff/mips.h for more details). We copy symndx into the - r_offset field so as not to confuse ecoff_slurp_reloc_table in - ecoff.c. In adjust_reloc_in we then copy r_offset into the reloc - addend. */ - if (intern->r_type == MIPS_R_SWITCH - || (! intern->r_extern - && (intern->r_type == MIPS_R_RELLO - || intern->r_type == MIPS_R_RELHI))) - { - BFD_ASSERT (! intern->r_extern); - intern->r_offset = intern->r_symndx; - if (intern->r_offset & 0x800000) - intern->r_offset -= 0x1000000; - intern->r_symndx = RELOC_SECTION_TEXT; - } } /* Swap a reloc out. */ @@ -453,20 +335,7 @@ mips_ecoff_swap_reloc_out (abfd, intern, BFD_ASSERT (intern->r_extern || (intern->r_symndx >= 0 && intern->r_symndx <= 12)); - /* If this is a MIPS_R_SWITCH reloc, or an internal MIPS_R_RELLO or - MIPS_R_RELHI reloc, we actually want to write the contents of - r_offset out as the symbol index. This undoes the change made by - mips_ecoff_swap_reloc_in. */ - if (intern->r_type != MIPS_R_SWITCH - && (intern->r_extern - || (intern->r_type != MIPS_R_RELHI - && intern->r_type != MIPS_R_RELLO))) - r_symndx = intern->r_symndx; - else - { - BFD_ASSERT (intern->r_symndx == RELOC_SECTION_TEXT); - r_symndx = intern->r_offset & 0xffffff; - } + r_symndx = intern->r_symndx; H_PUT_32 (abfd, intern->r_vaddr, ext->r_vaddr); if (bfd_header_big_endian (abfd)) @@ -501,7 +370,7 @@ mips_adjust_reloc_in (abfd, intern, rptr const struct internal_reloc *intern; arelent *rptr; { - if (intern->r_type > MIPS_R_SWITCH) + if (intern->r_type > MIPS_R_PCREL16) abort (); if (! intern->r_extern @@ -514,18 +383,6 @@ mips_adjust_reloc_in (abfd, intern, rptr if (intern->r_type == MIPS_R_IGNORE) rptr->sym_ptr_ptr = bfd_abs_section_ptr->symbol_ptr_ptr; - /* If this is a MIPS_R_SWITCH reloc, or an internal MIPS_R_RELHI or - MIPS_R_RELLO reloc, we want the addend field of the BFD relocto - hold the value which was originally in the symndx field of the - internal MIPS ECOFF reloc. This value was copied into - intern->r_offset by mips_swap_reloc_in, and here we copy it into - the addend field. */ - if (intern->r_type == MIPS_R_SWITCH - || (! intern->r_extern - && (intern->r_type == MIPS_R_RELHI - || intern->r_type == MIPS_R_RELLO))) - rptr->addend = intern->r_offset; - rptr->howto = &mips_howto_table[intern->r_type]; } @@ -535,19 +392,9 @@ mips_adjust_reloc_in (abfd, intern, rptr static void mips_adjust_reloc_out (abfd, rel, intern) bfd *abfd ATTRIBUTE_UNUSED; - const arelent *rel; - struct internal_reloc *intern; + const arelent *rel ATTRIBUTE_UNUSED; + struct internal_reloc *intern ATTRIBUTE_UNUSED; { - /* For a MIPS_R_SWITCH reloc, or an internal MIPS_R_RELHI or - MIPS_R_RELLO reloc, we must copy rel->addend into - intern->r_offset. This will then be written out as the symbol - index by mips_ecoff_swap_reloc_out. This operation parallels the - action of mips_adjust_reloc_in. */ - if (intern->r_type == MIPS_R_SWITCH - || (! intern->r_extern - && (intern->r_type == MIPS_R_RELHI - || intern->r_type == MIPS_R_RELLO))) - intern->r_offset = rel->addend; } /* ECOFF relocs are either against external symbols, or against @@ -880,209 +727,6 @@ mips_gprel_reloc (abfd, return bfd_reloc_ok; } -/* Do a RELHI relocation. We do this in conjunction with a RELLO - reloc, just as REFHI and REFLO are done together. RELHI and RELLO - are Cygnus extensions used when generating position independent - code for embedded systems. */ - -/* FIXME: This should not be a static variable. */ - -static struct mips_hi *mips_relhi_list; - -static bfd_reloc_status_type -mips_relhi_reloc (abfd, - reloc_entry, - symbol, - data, - input_section, - output_bfd, - error_message) - bfd *abfd ATTRIBUTE_UNUSED; - arelent *reloc_entry; - asymbol *symbol; - PTR data; - asection *input_section; - bfd *output_bfd; - char **error_message ATTRIBUTE_UNUSED; -{ - bfd_reloc_status_type ret; - bfd_vma relocation; - struct mips_hi *n; - - /* If this is a reloc against a section symbol, then it is correct - in the object file. The only time we want to change this case is - when we are relaxing, and that is handled entirely by - mips_relocate_section and never calls this function. */ - if ((symbol->flags & BSF_SECTION_SYM) != 0) - { - if (output_bfd != (bfd *) NULL) - reloc_entry->address += input_section->output_offset; - return bfd_reloc_ok; - } - - /* This is an external symbol. If we're relocating, we don't want - to change anything. */ - if (output_bfd != (bfd *) NULL) - { - reloc_entry->address += input_section->output_offset; - return bfd_reloc_ok; - } - - ret = bfd_reloc_ok; - if (bfd_is_und_section (symbol->section) - && output_bfd == (bfd *) NULL) - ret = bfd_reloc_undefined; - - if (bfd_is_com_section (symbol->section)) - relocation = 0; - else - relocation = symbol->value; - - relocation += symbol->section->output_section->vma; - relocation += symbol->section->output_offset; - relocation += reloc_entry->addend; - - if (reloc_entry->address > input_section->_cooked_size) - return bfd_reloc_outofrange; - - /* Save the information, and let RELLO do the actual relocation. */ - n = (struct mips_hi *) bfd_malloc ((bfd_size_type) sizeof *n); - if (n == NULL) - return bfd_reloc_outofrange; - n->addr = (bfd_byte *) data + reloc_entry->address; - n->addend = relocation; - n->next = mips_relhi_list; - mips_relhi_list = n; - - if (output_bfd != (bfd *) NULL) - reloc_entry->address += input_section->output_offset; - - return ret; -} - -/* Do a RELLO relocation. This is a straightforward 16 bit PC - relative relocation; this function exists in order to do the RELHI - relocation described above. */ - -static bfd_reloc_status_type -mips_rello_reloc (abfd, - reloc_entry, - symbol, - data, - input_section, - output_bfd, - error_message) - bfd *abfd; - arelent *reloc_entry; - asymbol *symbol; - PTR data; - asection *input_section; - bfd *output_bfd; - char **error_message; -{ - if (mips_relhi_list != NULL) - { - struct mips_hi *l; - - l = mips_relhi_list; - while (l != NULL) - { - unsigned long insn; - unsigned long val; - unsigned long vallo; - struct mips_hi *next; - - /* Do the RELHI relocation. Note that we actually don't - need to know anything about the RELLO itself, except - where to find the low 16 bits of the addend needed by the - RELHI. */ - insn = bfd_get_32 (abfd, l->addr); - vallo = (bfd_get_32 (abfd, (bfd_byte *) data + reloc_entry->address) - & 0xffff); - val = ((insn & 0xffff) << 16) + vallo; - val += l->addend; - - /* If the symbol is defined, make val PC relative. If the - symbol is not defined we don't want to do this, because - we don't want the value in the object file to incorporate - the address of the reloc. */ - if (! bfd_is_und_section (bfd_get_section (symbol)) - && ! bfd_is_com_section (bfd_get_section (symbol))) - val -= (input_section->output_section->vma - + input_section->output_offset - + reloc_entry->address); - - /* The low order 16 bits are always treated as a signed - value. Therefore, a negative value in the low order bits - requires an adjustment in the high order bits. We need - to make this adjustment in two ways: once for the bits we - took from the data, and once for the bits we are putting - back in to the data. */ - if ((vallo & 0x8000) != 0) - val -= 0x10000; - if ((val & 0x8000) != 0) - val += 0x10000; - - insn = (insn &~ (unsigned) 0xffff) | ((val >> 16) & 0xffff); - bfd_put_32 (abfd, (bfd_vma) insn, l->addr); - - next = l->next; - free (l); - l = next; - } - - mips_relhi_list = NULL; - } - - /* If this is a reloc against a section symbol, then it is correct - in the object file. The only time we want to change this case is - when we are relaxing, and that is handled entirely by - mips_relocate_section and never calls this function. */ - if ((symbol->flags & BSF_SECTION_SYM) != 0) - { - if (output_bfd != (bfd *) NULL) - reloc_entry->address += input_section->output_offset; - return bfd_reloc_ok; - } - - /* bfd_perform_relocation does not handle pcrel_offset relocations - correctly when generating a relocatable file, so handle them - directly here. */ - if (output_bfd != (bfd *) NULL) - { - reloc_entry->address += input_section->output_offset; - return bfd_reloc_ok; - } - - /* Now do the RELLO reloc in the usual way. */ - return mips_generic_reloc (abfd, reloc_entry, symbol, data, - input_section, output_bfd, error_message); -} - -/* This is the special function for the MIPS_R_SWITCH reloc. This - special reloc is normally correct in the object file, and only - requires special handling when relaxing. We don't want - bfd_perform_relocation to tamper with it at all. */ - -static bfd_reloc_status_type -mips_switch_reloc (abfd, - reloc_entry, - symbol, - data, - input_section, - output_bfd, - error_message) - bfd *abfd ATTRIBUTE_UNUSED; - arelent *reloc_entry ATTRIBUTE_UNUSED; - asymbol *symbol ATTRIBUTE_UNUSED; - PTR data ATTRIBUTE_UNUSED; - asection *input_section ATTRIBUTE_UNUSED; - bfd *output_bfd ATTRIBUTE_UNUSED; - char **error_message ATTRIBUTE_UNUSED; -{ - return bfd_reloc_ok; -} - /* Get the howto structure for a generic reloc type. */ static reloc_howto_type * @@ -1119,15 +763,6 @@ mips_bfd_reloc_type_lookup (abfd, code) case BFD_RELOC_16_PCREL_S2: mips_type = MIPS_R_PCREL16; break; - case BFD_RELOC_PCREL_HI16_S: - mips_type = MIPS_R_RELHI; - break; - case BFD_RELOC_PCREL_LO16: - mips_type = MIPS_R_RELLO; - break; - case BFD_RELOC_GPREL32: - mips_type = MIPS_R_SWITCH; - break; default: return (reloc_howto_type *) NULL; } @@ -1136,21 +771,19 @@ mips_bfd_reloc_type_lookup (abfd, code) } /* A helper routine for mips_relocate_section which handles the REFHI - and RELHI relocations. The REFHI relocation must be followed by a - REFLO relocation (and RELHI by a RELLO), and the addend used is - formed from the addends of both instructions. */ + relocations. The REFHI relocation must be followed by a REFLO + relocation, and the addend used is formed from the addends of both + instructions. */ static void -mips_relocate_hi (refhi, reflo, input_bfd, input_section, contents, adjust, - relocation, pcrel) +mips_relocate_hi (refhi, reflo, input_bfd, input_section, contents, + relocation) struct internal_reloc *refhi; struct internal_reloc *reflo; bfd *input_bfd; asection *input_section; bfd_byte *contents; - size_t adjust; bfd_vma relocation; - bfd_boolean pcrel; { unsigned long insn; unsigned long val; @@ -1160,12 +793,12 @@ mips_relocate_hi (refhi, reflo, input_bf return; insn = bfd_get_32 (input_bfd, - contents + adjust + refhi->r_vaddr - input_section->vma); + contents + refhi->r_vaddr - input_section->vma); if (reflo == NULL) vallo = 0; else vallo = (bfd_get_32 (input_bfd, - contents + adjust + reflo->r_vaddr - input_section->vma) + contents + reflo->r_vaddr - input_section->vma) & 0xffff); val = ((insn & 0xffff) << 16) + vallo; @@ -1179,17 +812,12 @@ mips_relocate_hi (refhi, reflo, input_bf if ((vallo & 0x8000) != 0) val -= 0x10000; - if (pcrel) - val -= (input_section->output_section->vma - + input_section->output_offset - + (reflo->r_vaddr - input_section->vma + adjust)); - if ((val & 0x8000) != 0) val += 0x10000; insn = (insn &~ (unsigned) 0xffff) | ((val >> 16) & 0xffff); bfd_put_32 (input_bfd, (bfd_vma) insn, - contents + adjust + refhi->r_vaddr - input_section->vma); + contents + refhi->r_vaddr - input_section->vma); } /* Relocate a section while linking a MIPS ECOFF file. */ @@ -1208,8 +836,6 @@ mips_relocate_section (output_bfd, info, struct ecoff_link_hash_entry **sym_hashes; bfd_vma gp; bfd_boolean gp_undefined; - size_t adjust; - long *offsets; struct external_reloc *ext_rel; struct external_reloc *ext_rel_end; unsigned int i; @@ -1270,13 +896,6 @@ mips_relocate_section (output_bfd, info, got_lo = FALSE; - adjust = 0; - - if (ecoff_section_data (input_bfd, input_section) == NULL) - offsets = NULL; - else - offsets = ecoff_section_data (input_bfd, input_section)->offsets; - ext_rel = (struct external_reloc *) external_relocs; ext_rel_end = ext_rel + input_section->reloc_count; for (i = 0; ext_rel < ext_rel_end; ext_rel++, i++) @@ -1301,17 +920,15 @@ mips_relocate_section (output_bfd, info, BFD_ASSERT (int_rel.r_type < sizeof mips_howto_table / sizeof mips_howto_table[0]); - /* The REFHI and RELHI relocs requires special handling. they - must be followed by a REFLO or RELLO reloc, respectively, and - the addend is formed from both relocs. */ - if (int_rel.r_type == MIPS_R_REFHI - || int_rel.r_type == MIPS_R_RELHI) + /* The REFHI reloc requires special handling. It must be followed + by a REFLO reloc, and the addend is formed from both relocs. */ + if (int_rel.r_type == MIPS_R_REFHI) { struct external_reloc *lo_ext_rel; /* As a GNU extension, permit an arbitrary number of REFHI - or RELHI relocs before the REFLO or RELLO reloc. This - permits gcc to emit the HI and LO relocs itself. */ + relocs before the REFLO reloc. This permits gcc to emit + the HI and LO relocs itself. */ for (lo_ext_rel = ext_rel + 1; lo_ext_rel < ext_rel_end; lo_ext_rel++) @@ -1323,10 +940,7 @@ mips_relocate_section (output_bfd, info, } if (lo_ext_rel < ext_rel_end - && (lo_int_rel.r_type - == (int_rel.r_type == MIPS_R_REFHI - ? MIPS_R_REFLO - : MIPS_R_RELLO)) + && lo_int_rel.r_type == MIPS_R_REFLO && int_rel.r_extern == lo_int_rel.r_extern && int_rel.r_symndx == lo_int_rel.r_symndx) { @@ -1338,32 +952,6 @@ mips_relocate_section (output_bfd, info, howto = &mips_howto_table[int_rel.r_type]; - /* The SWITCH reloc must be handled specially. This reloc is - marks the location of a difference between two portions of an - object file. The symbol index does not reference a symbol, - but is actually the offset from the reloc to the subtrahend - of the difference. This reloc is correct in the object file, - and needs no further adjustment, unless we are relaxing. If - we are relaxing, we may have to add in an offset. Since no - symbols are involved in this reloc, we handle it completely - here. */ - if (int_rel.r_type == MIPS_R_SWITCH) - { - if (offsets != NULL - && offsets[i] != 0) - { - r = _bfd_relocate_contents (howto, input_bfd, - (bfd_vma) offsets[i], - (contents - + adjust - + int_rel.r_vaddr - - input_section->vma)); - BFD_ASSERT (r == bfd_reloc_ok); - } - - continue; - } - if (int_rel.r_extern) { h = sym_hashes[int_rel.r_symndx]; @@ -1439,91 +1027,6 @@ mips_relocate_section (output_bfd, info, } } - /* If we are relaxing, mips_relax_section may have set - offsets[i] to some value. A value of 1 means we must expand - a PC relative branch into a multi-instruction of sequence, - and any other value is an addend. */ - if (offsets != NULL - && offsets[i] != 0) - { - BFD_ASSERT (! info->relocatable); - BFD_ASSERT (int_rel.r_type == MIPS_R_PCREL16 - || int_rel.r_type == MIPS_R_RELHI - || int_rel.r_type == MIPS_R_RELLO); - if (offsets[i] != 1) - addend += offsets[i]; - else - { - bfd_byte *here; - - BFD_ASSERT (int_rel.r_extern - && int_rel.r_type == MIPS_R_PCREL16); - - /* Move the rest of the instructions up. */ - here = (contents - + adjust - + int_rel.r_vaddr - - input_section->vma); - memmove (here + PCREL16_EXPANSION_ADJUSTMENT, here, - (size_t) (input_section->_raw_size - - (int_rel.r_vaddr - input_section->vma))); - - /* Generate the new instructions. */ - if (! mips_relax_pcrel16 (info, input_bfd, input_section, - h, here, - (input_section->output_section->vma - + input_section->output_offset - + (int_rel.r_vaddr - - input_section->vma) - + adjust))) - return FALSE; - - /* We must adjust everything else up a notch. */ - adjust += PCREL16_EXPANSION_ADJUSTMENT; - - /* mips_relax_pcrel16 handles all the details of this - relocation. */ - continue; - } - } - - /* If we are relaxing, and this is a reloc against the .text - segment, we may need to adjust it if some branches have been - expanded. The reloc types which are likely to occur in the - .text section are handled efficiently by mips_relax_section, - and thus do not need to be handled here. */ - if (ecoff_data (input_bfd)->debug_info.adjust != NULL - && ! int_rel.r_extern - && int_rel.r_symndx == RELOC_SECTION_TEXT - && (strcmp (bfd_get_section_name (input_bfd, input_section), - ".text") != 0 - || (int_rel.r_type != MIPS_R_PCREL16 - && int_rel.r_type != MIPS_R_SWITCH - && int_rel.r_type != MIPS_R_RELHI - && int_rel.r_type != MIPS_R_RELLO))) - { - bfd_vma adr; - struct ecoff_value_adjust *a; - - /* We need to get the addend so that we know whether we need - to adjust the address. */ - BFD_ASSERT (int_rel.r_type == MIPS_R_REFWORD); - - adr = bfd_get_32 (input_bfd, - (contents - + adjust - + int_rel.r_vaddr - - input_section->vma)); - - for (a = ecoff_data (input_bfd)->debug_info.adjust; - a != (struct ecoff_value_adjust *) NULL; - a = a->next) - { - if (adr >= a->start && adr < a->end) - addend += a->adjust; - } - } - if (info->relocatable) { /* We are generating relocatable output, and must convert @@ -1601,49 +1104,7 @@ mips_relocate_section (output_bfd, info, currently holds just the addend. We must adjust by the address to get the right value. */ if (howto->pc_relative) - { - relocation -= int_rel.r_vaddr - input_section->vma; - - /* If we are converting a RELHI or RELLO reloc - from being against an external symbol to - being against a section, we must put a - special value into the r_offset field. This - value is the old addend. The r_offset for - both the RELHI and RELLO relocs are the same, - and we set both when we see RELHI. */ - if (int_rel.r_type == MIPS_R_RELHI) - { - long addhi, addlo; - - addhi = bfd_get_32 (input_bfd, - (contents - + adjust - + int_rel.r_vaddr - - input_section->vma)); - addhi &= 0xffff; - if (addhi & 0x8000) - addhi -= 0x10000; - addhi <<= 16; - - if (! use_lo) - addlo = 0; - else - { - addlo = bfd_get_32 (input_bfd, - (contents - + adjust - + lo_int_rel.r_vaddr - - input_section->vma)); - addlo &= 0xffff; - if (addlo & 0x8000) - addlo -= 0x10000; - - lo_int_rel.r_offset = addhi + addlo; - } - - int_rel.r_offset = addhi + addlo; - } - } + relocation -= int_rel.r_vaddr - input_section->vma; h = NULL; } @@ -1679,14 +1140,8 @@ mips_relocate_section (output_bfd, info, /* Adjust a PC relative relocation by removing the reference to the original address in the section and including the - reference to the new address. However, external RELHI - and RELLO relocs are PC relative, but don't include any - reference to the address. The addend is merely an - addend. */ - if (howto->pc_relative - && (! int_rel.r_extern - || (int_rel.r_type != MIPS_R_RELHI - && int_rel.r_type != MIPS_R_RELLO))) + reference to the new address. */ + if (howto->pc_relative) relocation -= (input_section->output_section->vma + input_section->output_offset - input_section->vma); @@ -1696,11 +1151,9 @@ mips_relocate_section (output_bfd, info, r = bfd_reloc_ok; else { - if (int_rel.r_type != MIPS_R_REFHI - && int_rel.r_type != MIPS_R_RELHI) + if (int_rel.r_type != MIPS_R_REFHI) r = _bfd_relocate_contents (howto, input_bfd, relocation, (contents - + adjust + int_rel.r_vaddr - input_section->vma)); else @@ -1708,8 +1161,7 @@ mips_relocate_section (output_bfd, info, mips_relocate_hi (&int_rel, use_lo ? &lo_int_rel : NULL, input_bfd, input_section, contents, - adjust, relocation, - int_rel.r_type == MIPS_R_RELHI); + relocation); r = bfd_reloc_ok; } } @@ -1759,32 +1211,24 @@ mips_relocate_section (output_bfd, info, file. Make it look like a pcrel_offset relocation by adding in the start address. */ if (howto->pc_relative) - { - if (int_rel.r_type != MIPS_R_RELHI || ! use_lo) - relocation += int_rel.r_vaddr + adjust; - else - relocation += lo_int_rel.r_vaddr + adjust; - } + relocation += int_rel.r_vaddr; } - if (int_rel.r_type != MIPS_R_REFHI - && int_rel.r_type != MIPS_R_RELHI) + if (int_rel.r_type != MIPS_R_REFHI) r = _bfd_final_link_relocate (howto, input_bfd, input_section, contents, (int_rel.r_vaddr - - input_section->vma - + adjust), + - input_section->vma), relocation, addend); else { mips_relocate_hi (&int_rel, use_lo ? &lo_int_rel : NULL, - input_bfd, input_section, contents, adjust, - relocation, - int_rel.r_type == MIPS_R_RELHI); + input_bfd, input_section, contents, + relocation); r = bfd_reloc_ok; } } @@ -1801,8 +1245,7 @@ mips_relocate_section (output_bfd, info, & 0xf0000000) != ((input_section->output_section->vma + input_section->output_offset - + (int_rel.r_vaddr - input_section->vma) - + adjust) + + (int_rel.r_vaddr - input_section->vma)) & 0xf0000000))) r = bfd_reloc_overflow; @@ -1835,621 +1278,6 @@ mips_relocate_section (output_bfd, info, return TRUE; } -/* Read in the relocs for a section. */ - -static bfd_boolean -mips_read_relocs (abfd, sec) - bfd *abfd; - asection *sec; -{ - struct ecoff_section_tdata *section_tdata; - bfd_size_type amt; - - section_tdata = ecoff_section_data (abfd, sec); - if (section_tdata == (struct ecoff_section_tdata *) NULL) - { - amt = sizeof (struct ecoff_section_tdata); - sec->used_by_bfd = (PTR) bfd_alloc (abfd, amt); - if (sec->used_by_bfd == NULL) - return FALSE; - - section_tdata = ecoff_section_data (abfd, sec); - section_tdata->external_relocs = NULL; - section_tdata->contents = NULL; - section_tdata->offsets = NULL; - } - - if (section_tdata->external_relocs == NULL) - { - amt = ecoff_backend (abfd)->external_reloc_size; - amt *= sec->reloc_count; - section_tdata->external_relocs = (PTR) bfd_alloc (abfd, amt); - if (section_tdata->external_relocs == NULL && amt != 0) - return FALSE; - - if (bfd_seek (abfd, sec->rel_filepos, SEEK_SET) != 0 - || bfd_bread (section_tdata->external_relocs, amt, abfd) != amt) - return FALSE; - } - - return TRUE; -} - -/* Relax a section when linking a MIPS ECOFF file. This is used for - embedded PIC code, which always uses PC relative branches which - only have an 18 bit range on MIPS. If a branch is not in range, we - generate a long instruction sequence to compensate. Each time we - find a branch to expand, we have to check all the others again to - make sure they are still in range. This is slow, but it only has - to be done when -relax is passed to the linker. - - This routine figures out which branches need to expand; the actual - expansion is done in mips_relocate_section when the section - contents are relocated. The information is stored in the offsets - field of the ecoff_section_tdata structure. An offset of 1 means - that the branch must be expanded into a multi-instruction PC - relative branch (such an offset will only occur for a PC relative - branch to an external symbol). Any other offset must be a multiple - of four, and is the amount to change the branch by (such an offset - will only occur for a PC relative branch within the same section). - - We do not modify the section relocs or contents themselves so that - if memory usage becomes an issue we can discard them and read them - again. The only information we must save in memory between this - routine and the mips_relocate_section routine is the table of - offsets. */ - -static bfd_boolean -mips_relax_section (abfd, sec, info, again) - bfd *abfd; - asection *sec; - struct bfd_link_info *info; - bfd_boolean *again; -{ - struct ecoff_section_tdata *section_tdata; - bfd_byte *contents = NULL; - long *offsets; - struct external_reloc *ext_rel; - struct external_reloc *ext_rel_end; - unsigned int i; - - /* Assume we are not going to need another pass. */ - *again = FALSE; - - /* If we are not generating an ECOFF file, this is much too - confusing to deal with. */ - if (info->hash->creator->flavour != bfd_get_flavour (abfd)) - return TRUE; - - /* If there are no relocs, there is nothing to do. */ - if (sec->reloc_count == 0) - return TRUE; - - /* We are only interested in PC relative relocs, and why would there - ever be one from anything but the .text section? */ - if (strcmp (bfd_get_section_name (abfd, sec), ".text") != 0) - return TRUE; - - /* Read in the relocs, if we haven't already got them. */ - section_tdata = ecoff_section_data (abfd, sec); - if (section_tdata == (struct ecoff_section_tdata *) NULL - || section_tdata->external_relocs == NULL) - { - if (! mips_read_relocs (abfd, sec)) - goto error_return; - section_tdata = ecoff_section_data (abfd, sec); - } - - if (sec->_cooked_size == 0) - { - /* We must initialize _cooked_size only the first time we are - called. */ - sec->_cooked_size = sec->_raw_size; - } - - contents = section_tdata->contents; - offsets = section_tdata->offsets; - - /* Look for any external PC relative relocs. Internal PC relative - relocs are already correct in the object file, so they certainly - can not overflow. */ - ext_rel = (struct external_reloc *) section_tdata->external_relocs; - ext_rel_end = ext_rel + sec->reloc_count; - for (i = 0; ext_rel < ext_rel_end; ext_rel++, i++) - { - struct internal_reloc int_rel; - struct ecoff_link_hash_entry *h; - asection *hsec; - bfd_signed_vma relocation; - struct external_reloc *adj_ext_rel; - unsigned int adj_i; - unsigned long ext_count; - struct ecoff_link_hash_entry **adj_h_ptr; - struct ecoff_link_hash_entry **adj_h_ptr_end; - struct ecoff_value_adjust *adjust; - bfd_size_type amt; - - /* If we have already expanded this reloc, we certainly don't - need to do it again. */ - if (offsets != (long *) NULL && offsets[i] == 1) - continue; - - /* Quickly check that this reloc is external PCREL16. */ - if (bfd_header_big_endian (abfd)) - { - if ((ext_rel->r_bits[3] & RELOC_BITS3_EXTERN_BIG) == 0 - || (((ext_rel->r_bits[3] & RELOC_BITS3_TYPE_BIG) - >> RELOC_BITS3_TYPE_SH_BIG) - != MIPS_R_PCREL16)) - continue; - } - else - { - if ((ext_rel->r_bits[3] & RELOC_BITS3_EXTERN_LITTLE) == 0 - || (((ext_rel->r_bits[3] & RELOC_BITS3_TYPE_LITTLE) - >> RELOC_BITS3_TYPE_SH_LITTLE) - != MIPS_R_PCREL16)) - continue; - } - - mips_ecoff_swap_reloc_in (abfd, (PTR) ext_rel, &int_rel); - - h = ecoff_data (abfd)->sym_hashes[int_rel.r_symndx]; - if (h == (struct ecoff_link_hash_entry *) NULL) - abort (); - - if (h->root.type != bfd_link_hash_defined - && h->root.type != bfd_link_hash_defweak) - { - /* Just ignore undefined symbols. These will presumably - generate an error later in the link. */ - continue; - } - - /* Get the value of the symbol. */ - hsec = h->root.u.def.section; - relocation = (h->root.u.def.value - + hsec->output_section->vma - + hsec->output_offset); - - /* Subtract out the current address. */ - relocation -= (sec->output_section->vma - + sec->output_offset - + (int_rel.r_vaddr - sec->vma)); - - /* The addend is stored in the object file. In the normal case - of ``bal symbol'', the addend will be -4. It will only be - different in the case of ``bal symbol+constant''. To avoid - always reading in the section contents, we don't check the - addend in the object file (we could easily check the contents - if we happen to have already read them in, but I fear that - this could be confusing). This means we will screw up if - there is a branch to a symbol that is in range, but added to - a constant which puts it out of range; in such a case the - link will fail with a reloc overflow error. Since the - compiler will never generate such code, it should be easy - enough to work around it by changing the assembly code in the - source file. */ - relocation -= 4; - - /* Now RELOCATION is the number we want to put in the object - file. See whether it fits. */ - if (relocation >= -0x20000 && relocation < 0x20000) - continue; - - /* Now that we know this reloc needs work, which will rarely - happen, go ahead and grab the section contents. */ - if (contents == (bfd_byte *) NULL) - { - if (info->keep_memory) - contents = (bfd_byte *) bfd_alloc (abfd, sec->_raw_size); - else - contents = (bfd_byte *) bfd_malloc (sec->_raw_size); - if (contents == (bfd_byte *) NULL) - goto error_return; - if (! bfd_get_section_contents (abfd, sec, (PTR) contents, - (file_ptr) 0, sec->_raw_size)) - goto error_return; - if (info->keep_memory) - section_tdata->contents = contents; - } - - /* We only support changing the bal instruction. It would be - possible to handle other PC relative branches, but some of - them (the conditional branches) would require a different - length instruction sequence which would complicate both this - routine and mips_relax_pcrel16. It could be written if - somebody felt it were important. Ignoring this reloc will - presumably cause a reloc overflow error later on. */ - if (bfd_get_32 (abfd, contents + int_rel.r_vaddr - sec->vma) - != 0x0411ffff) /* bgezal $0,. == bal . */ - continue; - - /* Bother. We need to expand this reloc, and we will need to - make another relaxation pass since this change may put other - relocs out of range. We need to examine the local branches - and we need to allocate memory to hold the offsets we must - add to them. We also need to adjust the values of all - symbols in the object file following this location. */ - - sec->_cooked_size += PCREL16_EXPANSION_ADJUSTMENT; - *again = TRUE; - - if (offsets == (long *) NULL) - { - bfd_size_type size; - - size = (bfd_size_type) sec->reloc_count * sizeof (long); - offsets = (long *) bfd_zalloc (abfd, size); - if (offsets == (long *) NULL) - goto error_return; - section_tdata->offsets = offsets; - } - - offsets[i] = 1; - - /* Now look for all PC relative references that cross this reloc - and adjust their offsets. */ - adj_ext_rel = (struct external_reloc *) section_tdata->external_relocs; - for (adj_i = 0; adj_ext_rel < ext_rel_end; adj_ext_rel++, adj_i++) - { - struct internal_reloc adj_int_rel; - bfd_vma start, stop; - int change; - - mips_ecoff_swap_reloc_in (abfd, (PTR) adj_ext_rel, &adj_int_rel); - - if (adj_int_rel.r_type == MIPS_R_PCREL16) - { - unsigned long insn; - - /* We only care about local references. External ones - will be relocated correctly anyhow. */ - if (adj_int_rel.r_extern) - continue; - - /* We are only interested in a PC relative reloc within - this section. FIXME: Cross section PC relative - relocs may not be handled correctly; does anybody - care? */ - if (adj_int_rel.r_symndx != RELOC_SECTION_TEXT) - continue; - - start = adj_int_rel.r_vaddr; - - insn = bfd_get_32 (abfd, - contents + adj_int_rel.r_vaddr - sec->vma); - - stop = (insn & 0xffff) << 2; - if ((stop & 0x20000) != 0) - stop -= 0x40000; - stop += adj_int_rel.r_vaddr + 4; - } - else if (adj_int_rel.r_type == MIPS_R_RELHI) - { - struct internal_reloc rello; - long addhi, addlo; - - /* The next reloc must be MIPS_R_RELLO, and we handle - them together. */ - BFD_ASSERT (adj_ext_rel + 1 < ext_rel_end); - - mips_ecoff_swap_reloc_in (abfd, (PTR) (adj_ext_rel + 1), &rello); - - BFD_ASSERT (rello.r_type == MIPS_R_RELLO); - - addhi = bfd_get_32 (abfd, - contents + adj_int_rel.r_vaddr - sec->vma); - addhi &= 0xffff; - if (addhi & 0x8000) - addhi -= 0x10000; - addhi <<= 16; - - addlo = bfd_get_32 (abfd, contents + rello.r_vaddr - sec->vma); - addlo &= 0xffff; - if (addlo & 0x8000) - addlo -= 0x10000; - - if (adj_int_rel.r_extern) - { - /* The value we want here is - sym - RELLOaddr + addend - which we can express as - sym - (RELLOaddr - addend) - Therefore if we are expanding the area between - RELLOaddr and RELLOaddr - addend we must adjust - the addend. This is admittedly ambiguous, since - we might mean (sym + addend) - RELLOaddr, but in - practice we don't, and there is no way to handle - that case correctly since at this point we have - no idea whether any reloc is being expanded - between sym and sym + addend. */ - start = rello.r_vaddr - (addhi + addlo); - stop = rello.r_vaddr; - } - else - { - /* An internal RELHI/RELLO pair represents the - difference between two addresses, $LC0 - foo. - The symndx value is actually the difference - between the reloc address and $LC0. This lets us - compute $LC0, and, by considering the addend, - foo. If the reloc we are expanding falls between - those two relocs, we must adjust the addend. At - this point, the symndx value is actually in the - r_offset field, where it was put by - mips_ecoff_swap_reloc_in. */ - start = rello.r_vaddr - adj_int_rel.r_offset; - stop = start + addhi + addlo; - } - } - else if (adj_int_rel.r_type == MIPS_R_SWITCH) - { - /* A MIPS_R_SWITCH reloc represents a word of the form - .word $L3-$LS12 - The value in the object file is correct, assuming the - original value of $L3. The symndx value is actually - the difference between the reloc address and $LS12. - This lets us compute the original value of $LS12 as - vaddr - symndx - and the original value of $L3 as - vaddr - symndx + addend - where addend is the value from the object file. At - this point, the symndx value is actually found in the - r_offset field, since it was moved by - mips_ecoff_swap_reloc_in. */ - start = adj_int_rel.r_vaddr - adj_int_rel.r_offset; - stop = start + bfd_get_32 (abfd, - (contents - + adj_int_rel.r_vaddr - - sec->vma)); - } - else - continue; - - /* If the range expressed by this reloc, which is the - distance between START and STOP crosses the reloc we are - expanding, we must adjust the offset. The sign of the - adjustment depends upon the direction in which the range - crosses the reloc being expanded. */ - if (start <= int_rel.r_vaddr && stop > int_rel.r_vaddr) - change = PCREL16_EXPANSION_ADJUSTMENT; - else if (start > int_rel.r_vaddr && stop <= int_rel.r_vaddr) - change = - PCREL16_EXPANSION_ADJUSTMENT; - else - change = 0; - - offsets[adj_i] += change; - - if (adj_int_rel.r_type == MIPS_R_RELHI) - { - adj_ext_rel++; - adj_i++; - offsets[adj_i] += change; - } - } - - /* Find all symbols in this section defined by this object file - and adjust their values. Note that we decide whether to - adjust the value based on the value stored in the ECOFF EXTR - structure, because the value stored in the hash table may - have been changed by an earlier expanded reloc and thus may - no longer correctly indicate whether the symbol is before or - after the expanded reloc. */ - ext_count = ecoff_data (abfd)->debug_info.symbolic_header.iextMax; - adj_h_ptr = ecoff_data (abfd)->sym_hashes; - adj_h_ptr_end = adj_h_ptr + ext_count; - for (; adj_h_ptr < adj_h_ptr_end; adj_h_ptr++) - { - struct ecoff_link_hash_entry *adj_h; - - adj_h = *adj_h_ptr; - if (adj_h != (struct ecoff_link_hash_entry *) NULL - && (adj_h->root.type == bfd_link_hash_defined - || adj_h->root.type == bfd_link_hash_defweak) - && adj_h->root.u.def.section == sec - && adj_h->esym.asym.value > int_rel.r_vaddr) - adj_h->root.u.def.value += PCREL16_EXPANSION_ADJUSTMENT; - } - - /* Add an entry to the symbol value adjust list. This is used - by bfd_ecoff_debug_accumulate to adjust the values of - internal symbols and FDR's. */ - amt = sizeof (struct ecoff_value_adjust); - adjust = (struct ecoff_value_adjust *) bfd_alloc (abfd, amt); - if (adjust == (struct ecoff_value_adjust *) NULL) - goto error_return; - - adjust->start = int_rel.r_vaddr; - adjust->end = sec->vma + sec->_raw_size; - adjust->adjust = PCREL16_EXPANSION_ADJUSTMENT; - - adjust->next = ecoff_data (abfd)->debug_info.adjust; - ecoff_data (abfd)->debug_info.adjust = adjust; - } - - if (contents != (bfd_byte *) NULL && ! info->keep_memory) - free (contents); - - return TRUE; - - error_return: - if (contents != (bfd_byte *) NULL && ! info->keep_memory) - free (contents); - return FALSE; -} - -/* This routine is called from mips_relocate_section when a PC - relative reloc must be expanded into the five instruction sequence. - It handles all the details of the expansion, including resolving - the reloc. */ - -static bfd_boolean -mips_relax_pcrel16 (info, input_bfd, input_section, h, location, address) - struct bfd_link_info *info ATTRIBUTE_UNUSED; - bfd *input_bfd; - asection *input_section ATTRIBUTE_UNUSED; - struct ecoff_link_hash_entry *h; - bfd_byte *location; - bfd_vma address; -{ - bfd_vma relocation; - - /* 0x0411ffff is bgezal $0,. == bal . */ - BFD_ASSERT (bfd_get_32 (input_bfd, location) == 0x0411ffff); - - /* We need to compute the distance between the symbol and the - current address plus eight. */ - relocation = (h->root.u.def.value - + h->root.u.def.section->output_section->vma - + h->root.u.def.section->output_offset); - relocation -= address + 8; - - /* If the lower half is negative, increment the upper 16 half. */ - if ((relocation & 0x8000) != 0) - relocation += 0x10000; - - bfd_put_32 (input_bfd, (bfd_vma) 0x04110001, location); /* bal .+8 */ - bfd_put_32 (input_bfd, - 0x3c010000 | ((relocation >> 16) & 0xffff), /* lui $at,XX */ - location + 4); - bfd_put_32 (input_bfd, - 0x24210000 | (relocation & 0xffff), /* addiu $at,$at,XX */ - location + 8); - bfd_put_32 (input_bfd, - (bfd_vma) 0x003f0821, location + 12); /* addu $at,$at,$ra */ - bfd_put_32 (input_bfd, - (bfd_vma) 0x0020f809, location + 16); /* jalr $at */ - - return TRUE; -} - -/* Given a .sdata section and a .rel.sdata in-memory section, store - relocation information into the .rel.sdata section which can be - used at runtime to relocate the section. This is called by the - linker when the --embedded-relocs switch is used. This is called - after the add_symbols entry point has been called for all the - objects, and before the final_link entry point is called. This - function presumes that the object was compiled using - -membedded-pic. */ - -bfd_boolean -bfd_mips_ecoff_create_embedded_relocs (abfd, info, datasec, relsec, errmsg) - bfd *abfd; - struct bfd_link_info *info; - asection *datasec; - asection *relsec; - char **errmsg; -{ - struct ecoff_link_hash_entry **sym_hashes; - struct ecoff_section_tdata *section_tdata; - struct external_reloc *ext_rel; - struct external_reloc *ext_rel_end; - bfd_byte *p; - bfd_size_type amt; - - BFD_ASSERT (! info->relocatable); - - *errmsg = NULL; - - if (datasec->reloc_count == 0) - return TRUE; - - sym_hashes = ecoff_data (abfd)->sym_hashes; - - if (! mips_read_relocs (abfd, datasec)) - return FALSE; - - amt = (bfd_size_type) datasec->reloc_count * 4; - relsec->contents = (bfd_byte *) bfd_alloc (abfd, amt); - if (relsec->contents == NULL) - return FALSE; - - p = relsec->contents; - - section_tdata = ecoff_section_data (abfd, datasec); - ext_rel = (struct external_reloc *) section_tdata->external_relocs; - ext_rel_end = ext_rel + datasec->reloc_count; - for (; ext_rel < ext_rel_end; ext_rel++, p += 4) - { - struct internal_reloc int_rel; - bfd_boolean text_relative; - - mips_ecoff_swap_reloc_in (abfd, (PTR) ext_rel, &int_rel); - - /* We are going to write a four byte word into the runtime reloc - section. The word will be the address in the data section - which must be relocated. This must be on a word boundary, - which means the lower two bits must be zero. We use the - least significant bit to indicate how the value in the data - section must be relocated. A 0 means that the value is - relative to the text section, while a 1 indicates that the - value is relative to the data section. Given that we are - assuming the code was compiled using -membedded-pic, there - should not be any other possibilities. */ - - /* We can only relocate REFWORD relocs at run time. */ - if (int_rel.r_type != MIPS_R_REFWORD) - { - *errmsg = _("unsupported reloc type"); - bfd_set_error (bfd_error_bad_value); - return FALSE; - } - - if (int_rel.r_extern) - { - struct ecoff_link_hash_entry *h; - - h = sym_hashes[int_rel.r_symndx]; - /* If h is NULL, that means that there is a reloc against an - external symbol which we thought was just a debugging - symbol. This should not happen. */ - if (h == (struct ecoff_link_hash_entry *) NULL) - abort (); - if ((h->root.type == bfd_link_hash_defined - || h->root.type == bfd_link_hash_defweak) - && (h->root.u.def.section->flags & SEC_CODE) != 0) - text_relative = TRUE; - else - text_relative = FALSE; - } - else - { - switch (int_rel.r_symndx) - { - case RELOC_SECTION_TEXT: - text_relative = TRUE; - break; - case RELOC_SECTION_SDATA: - case RELOC_SECTION_SBSS: - case RELOC_SECTION_LIT8: - text_relative = FALSE; - break; - default: - /* No other sections should appear in -membedded-pic - code. */ - *errmsg = _("reloc against unsupported section"); - bfd_set_error (bfd_error_bad_value); - return FALSE; - } - } - - if ((int_rel.r_offset & 3) != 0) - { - *errmsg = _("reloc not properly aligned"); - bfd_set_error (bfd_error_bad_value); - return FALSE; - } - - bfd_put_32 (abfd, - (int_rel.r_vaddr - datasec->vma + datasec->output_offset - + (text_relative ? 0 : 1)), - p); - } - - return TRUE; -} - /* This is the ECOFF backend structure. The backend field of the target vector points to this. */ @@ -2557,7 +1385,7 @@ static const struct ecoff_backend_data m _bfd_generic_get_section_contents_in_window /* Relaxing sections is MIPS specific. */ -#define _bfd_ecoff_bfd_relax_section mips_relax_section +#define _bfd_ecoff_bfd_relax_section bfd_generic_relax_section /* GC of sections is not done. */ #define _bfd_ecoff_bfd_gc_sections bfd_generic_gc_sections @@ -2565,6 +1393,7 @@ static const struct ecoff_backend_data m /* Merging of sections is not done. */ #define _bfd_ecoff_bfd_merge_sections bfd_generic_merge_sections +#define _bfd_ecoff_bfd_is_group_section bfd_generic_is_group_section #define _bfd_ecoff_bfd_discard_group bfd_generic_discard_group extern const bfd_target ecoff_big_vec; diff -uprN binutils-2.15.90.0.3/bfd/coff-rs6000.c binutils-2.15.91.0.1/bfd/coff-rs6000.c --- binutils-2.15.90.0.3/bfd/coff-rs6000.c 2004-01-14 13:07:43.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/coff-rs6000.c 2004-05-27 11:26:01.934520672 -0700 @@ -1,5 +1,5 @@ /* BFD back-end for IBM RS/6000 "XCOFF" files. - Copyright 1990-1999, 2000, 2001, 2002, 2003 + Copyright 1990-1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. FIXME: Can someone provide a transliteration of this name into ASCII? Using the following chars caused a compiler warning on HIUX (so I replaced @@ -4142,6 +4142,7 @@ const bfd_target rs6000coff_vec = ((bfd_boolean (*) (bfd *, bfd *)) bfd_true), ((bfd_boolean (*) (bfd *, asection *, bfd *, asection *)) bfd_true), ((bfd_boolean (*) (bfd *, asymbol *, bfd *, asymbol *)) bfd_true), + ((bfd_boolean (*) (bfd *, bfd *)) bfd_true), ((bfd_boolean (*) (bfd *, flagword)) bfd_true), ((bfd_boolean (*) (bfd *, void * )) bfd_true), @@ -4196,11 +4197,13 @@ const bfd_target rs6000coff_vec = _bfd_generic_link_split_section, bfd_generic_gc_sections, bfd_generic_merge_sections, + bfd_generic_is_group_section, bfd_generic_discard_group, /* Dynamic */ _bfd_xcoff_get_dynamic_symtab_upper_bound, _bfd_xcoff_canonicalize_dynamic_symtab, + _bfd_nodynamic_get_synthetic_symtab, _bfd_xcoff_get_dynamic_reloc_upper_bound, _bfd_xcoff_canonicalize_dynamic_reloc, @@ -4384,6 +4387,7 @@ const bfd_target pmac_xcoff_vec = ((bfd_boolean (*) (bfd *, bfd *)) bfd_true), ((bfd_boolean (*) (bfd *, asection *, bfd *, asection *)) bfd_true), ((bfd_boolean (*) (bfd *, asymbol *, bfd *, asymbol *)) bfd_true), + ((bfd_boolean (*) (bfd *, bfd *)) bfd_true), ((bfd_boolean (*) (bfd *, flagword)) bfd_true), ((bfd_boolean (*) (bfd *, void * )) bfd_true), @@ -4438,11 +4442,13 @@ const bfd_target pmac_xcoff_vec = _bfd_generic_link_split_section, bfd_generic_gc_sections, bfd_generic_merge_sections, + bfd_generic_is_group_section, bfd_generic_discard_group, /* Dynamic */ _bfd_xcoff_get_dynamic_symtab_upper_bound, _bfd_xcoff_canonicalize_dynamic_symtab, + _bfd_nodynamic_get_synthetic_symtab, _bfd_xcoff_get_dynamic_reloc_upper_bound, _bfd_xcoff_canonicalize_dynamic_reloc, diff -uprN binutils-2.15.90.0.3/bfd/coff64-rs6000.c binutils-2.15.91.0.1/bfd/coff64-rs6000.c --- binutils-2.15.90.0.3/bfd/coff64-rs6000.c 2004-01-14 13:07:43.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/coff64-rs6000.c 2004-05-27 11:26:01.941519767 -0700 @@ -1,5 +1,5 @@ /* BFD back-end for IBM RS/6000 "XCOFF64" files. - Copyright 2000, 2001, 2002, 2003 + Copyright 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. Written Clinton Popetz. Contributed by Cygnus Support. @@ -2683,6 +2683,7 @@ const bfd_target rs6000coff64_vec = ((bfd_boolean (*) (bfd *, bfd *)) bfd_true), ((bfd_boolean (*) (bfd *, asection *, bfd *, asection *)) bfd_true), ((bfd_boolean (*) (bfd *, asymbol *, bfd *, asymbol *)) bfd_true), + ((bfd_boolean (*) (bfd *, bfd *)) bfd_true), ((bfd_boolean (*) (bfd *, flagword)) bfd_true), ((bfd_boolean (*) (bfd *, void * )) bfd_true), @@ -2737,11 +2738,13 @@ const bfd_target rs6000coff64_vec = _bfd_generic_link_split_section, bfd_generic_gc_sections, bfd_generic_merge_sections, + bfd_generic_is_group_section, bfd_generic_discard_group, /* Dynamic */ _bfd_xcoff_get_dynamic_symtab_upper_bound, _bfd_xcoff_canonicalize_dynamic_symtab, + _bfd_nodynamic_get_synthetic_symtab, _bfd_xcoff_get_dynamic_reloc_upper_bound, _bfd_xcoff_canonicalize_dynamic_reloc, @@ -2926,6 +2929,7 @@ const bfd_target aix5coff64_vec = ((bfd_boolean (*) (bfd *, bfd *)) bfd_true), ((bfd_boolean (*) (bfd *, asection *, bfd *, asection *)) bfd_true), ((bfd_boolean (*) (bfd *, asymbol *, bfd *, asymbol *)) bfd_true), + ((bfd_boolean (*) (bfd *, bfd *)) bfd_true), ((bfd_boolean (*) (bfd *, flagword)) bfd_true), ((bfd_boolean (*) (bfd *, void * )) bfd_true), @@ -2980,11 +2984,13 @@ const bfd_target aix5coff64_vec = _bfd_generic_link_split_section, bfd_generic_gc_sections, bfd_generic_merge_sections, + bfd_generic_is_group_section, bfd_generic_discard_group, /* Dynamic */ _bfd_xcoff_get_dynamic_symtab_upper_bound, _bfd_xcoff_canonicalize_dynamic_symtab, + _bfd_nodynamic_get_synthetic_symtab, _bfd_xcoff_get_dynamic_reloc_upper_bound, _bfd_xcoff_canonicalize_dynamic_reloc, diff -uprN binutils-2.15.90.0.3/bfd/coffcode.h binutils-2.15.91.0.1/bfd/coffcode.h --- binutils-2.15.90.0.3/bfd/coffcode.h 2004-01-14 13:07:43.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/coffcode.h 2004-05-27 11:26:01.955517957 -0700 @@ -1,6 +1,6 @@ /* Support for the generic parts of most COFF variants, for BFD. Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003 + 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. Written by Cygnus Support. @@ -309,6 +309,9 @@ CODE_FRAGMENT #define STRING_SIZE_SIZE (4) +#define DOT_DEBUG ".debug" +#define GNU_LINKONCE_WI ".gnu.linkonce.wi." + static long sec_to_styp_flags PARAMS ((const char *, flagword)); static bfd_boolean styp_to_sec_flags @@ -428,7 +431,7 @@ sec_to_styp_flags (sec_name, sec_flags) styp_flags = STYP_LIT; #endif /* _LIT */ } - else if (!strncmp (sec_name, ".debug", 6)) + else if (!strncmp (sec_name, DOT_DEBUG, sizeof (DOT_DEBUG) - 1)) { /* Handle the XCOFF debug section and DWARF2 debug sections. */ if (!sec_name[6]) @@ -441,7 +444,7 @@ sec_to_styp_flags (sec_name, sec_flags) styp_flags = STYP_DEBUG_INFO; } #ifdef COFF_LONG_SECTION_NAMES - else if (!strncmp (sec_name, ".gnu.linkonce.wi.", 17)) + else if (!strncmp (sec_name, GNU_LINKONCE_WI, sizeof (GNU_LINKONCE_WI) - 1)) { styp_flags = STYP_DEBUG_INFO; } @@ -518,7 +521,7 @@ sec_to_styp_flags (sec_name, sec_flags) static long sec_to_styp_flags (sec_name, sec_flags) - const char *sec_name ATTRIBUTE_UNUSED; + const char *sec_name; flagword sec_flags; { long styp_flags = 0; @@ -531,6 +534,11 @@ sec_to_styp_flags (sec_name, sec_flags) PE files. The STYP_* flags and the IMAGE_SCN_* flags overlap, but there are more IMAGE_SCN_* flags. */ + /* FIXME: There is no gas syntax to specify the debug section flag. */ + if (strncmp (sec_name, DOT_DEBUG, sizeof (DOT_DEBUG) - 1) == 0 + || strncmp (sec_name, GNU_LINKONCE_WI, sizeof (GNU_LINKONCE_WI) - 1) == 0) + sec_flags = SEC_READONLY | SEC_DEBUGGING; + /* skip LOAD */ /* READONLY later */ /* skip RELOC */ @@ -675,12 +683,12 @@ styp_to_sec_flags (abfd, hdr, name, sect #endif sec_flags |= SEC_ALLOC; } - else if (strncmp (name, ".debug", 6) == 0 + else if (strncmp (name, DOT_DEBUG, sizeof (DOT_DEBUG) - 1) == 0 #ifdef _COMMENT || strcmp (name, _COMMENT) == 0 #endif #ifdef COFF_LONG_SECTION_NAMES - || strncmp (name, ".gnu.linkonce.wi.", 17) == 0 + || strncmp (name, GNU_LINKONCE_WI, sizeof (GNU_LINKONCE_WI) - 1) == 0 #endif || strncmp (name, ".stab", 5) == 0) { @@ -3004,7 +3012,7 @@ coff_compute_section_file_positions (abf { asection *dsec; - dsec = bfd_make_section_old_way (abfd, ".debug"); + dsec = bfd_make_section_old_way (abfd, DOT_DEBUG); if (dsec == NULL) abort (); dsec->_raw_size = sz; @@ -3886,6 +3894,8 @@ coff_write_object_contents (abfd) #ifdef COFF_IMAGE_WITH_PE if (! hasdebug) internal_f.f_flags |= IMAGE_FILE_DEBUG_STRIPPED; + if (pe_data (abfd)->real_flags & IMAGE_FILE_LARGE_ADDRESS_AWARE) + internal_f.f_flags |= IMAGE_FILE_LARGE_ADDRESS_AWARE; #endif #ifdef COFF_WITH_PE @@ -5501,6 +5511,10 @@ static const bfd_coff_backend_data ticof #define coff_bfd_copy_private_symbol_data _bfd_generic_bfd_copy_private_symbol_data #endif +#ifndef coff_bfd_copy_private_header_data +#define coff_bfd_copy_private_header_data _bfd_generic_bfd_copy_private_header_data +#endif + #ifndef coff_bfd_copy_private_section_data #define coff_bfd_copy_private_section_data _bfd_generic_bfd_copy_private_section_data #endif @@ -5556,6 +5570,10 @@ static const bfd_coff_backend_data ticof #define coff_bfd_merge_sections bfd_generic_merge_sections #endif +#ifndef coff_bfd_is_group_section +#define coff_bfd_is_group_section bfd_generic_is_group_section +#endif + #ifndef coff_bfd_discard_group #define coff_bfd_discard_group bfd_generic_discard_group #endif diff -uprN binutils-2.15.90.0.3/bfd/config.bfd binutils-2.15.91.0.1/bfd/config.bfd --- binutils-2.15.90.0.3/bfd/config.bfd 2004-04-12 12:56:33.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/config.bfd 2004-05-27 11:26:01.979514854 -0700 @@ -31,8 +31,10 @@ targ_underscore=no # Catch obsolete configurations. case $targ in - vax-*-vms* \ - ) + m68*-*-lynxos* | \ + sparc-*-lynxos* | \ + vax-*-vms* | \ + null) if test "x$enable_obsolete" != xyes; then echo "*** Configuration $targ is obsolete." >&2 echo "*** Specify --enable-obsolete to build it anyway." >&2 @@ -339,10 +341,15 @@ case "${targ}" in targ_defvec=bfd_elf32_fr30_vec ;; - frv-*-elf | frv-*-*linux*) + frv-*-elf) targ_defvec=bfd_elf32_frv_vec + targ_selvecs=bfd_elf32_frvfdpic_vec ;; + frv-*-*linux*) + targ_defvec=bfd_elf32_frvfdpic_vec + targ_selvecs=bfd_elf32_frv_vec + ;; h8300*-*-elf) targ_defvec=bfd_elf32_h8300_vec @@ -514,8 +521,8 @@ case "${targ}" in ;; #endif i[3-7]86-*-lynxos*) - targ_defvec=i386lynx_coff_vec - targ_selvecs=i386lynx_aout_vec + targ_defvec=bfd_elf32_i386_vec + targ_selvecs="i386lynx_coff_vec i386lynx_aout_vec" ;; i[3-7]86-*-gnu*) targ_defvec=bfd_elf32_i386_vec @@ -746,6 +753,10 @@ case "${targ}" in targ_defvec=m88kmach3_vec targ_cflags=-DSTAT_FOR_EXEC ;; + m88k-*-openbsd*) + targ_defvec=m88kopenbsd_vec + targ_underscore=yes + ;; m88*-*-*) targ_defvec=m88kbcs_vec targ_underscore=yes @@ -878,12 +889,12 @@ case "${targ}" in targ_defvec=bfd_elf32_openrisc_vec ;; - or32-*-coff | or32-*-rtems*) + or32-*-coff) targ_defvec=or32coff_big_vec targ_underscore=yes ;; - or32-*-elf) + or32-*-elf | or32-*-rtems*) targ_defvec=bfd_elf32_or32_big_vec ;; @@ -974,6 +985,11 @@ case "${targ}" in powerpc-*-macos*) targ_defvec=pmac_xcoff_vec ;; + powerpc-*-lynxos*) + targ_defvec=bfd_elf32_powerpc_vec + targ_selvecs="rs6000coff_vec" + targ_cflags=-DSMALL_ARCHIVE + ;; powerpc-*-netware*) targ_defvec=bfd_elf32_powerpc_vec targ_selvecs="nlm32_powerpc_vec rs6000coff_vec" diff -uprN binutils-2.15.90.0.3/bfd/configure binutils-2.15.91.0.1/bfd/configure --- binutils-2.15.90.0.3/bfd/configure 2004-04-14 21:26:05.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/configure 2004-05-27 11:26:02.001512009 -0700 @@ -919,7 +919,7 @@ fi PACKAGE=bfd -VERSION=2.15.90.0.3 +VERSION=2.15.91.0.1 if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then { echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; } @@ -1001,18 +1001,6 @@ else fi -# Uncomment the next line to remove the date from the reported bfd version -#is_release=y - -bfd_version=`echo "${VERSION}" | sed -e 's/\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\).*/\1.00\2.00\3.00\4.00\5/' -e 's/\([^\.]*\)\..*\(..\)\..*\(..\)\..*\(..\)\..*\(..\)$/\1\2\3\4\5/'` - -bfd_version_string="\"${VERSION}\"" -if test x${is_release} = x; then - bfd_version_date=`sed -n -e 's/.*DATE //p' < ${srcdir}/version.h` - bfd_version_string="\"${VERSION} ${bfd_version_date}\"" -fi - - if test $host != $build; then ac_tool_prefix=${host_alias}- @@ -1023,7 +1011,7 @@ fi # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args. set dummy ${ac_tool_prefix}ar; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1027: checking for $ac_word" >&5 +echo "configure:1015: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1055,7 +1043,7 @@ fi # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. set dummy ${ac_tool_prefix}ranlib; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1059: checking for $ac_word" >&5 +echo "configure:1047: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1087,7 +1075,7 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1091: checking for $ac_word" >&5 +echo "configure:1079: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1193,7 +1181,7 @@ fi # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1197: checking for $ac_word" >&5 +echo "configure:1185: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1223,7 +1211,7 @@ if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1227: checking for $ac_word" >&5 +echo "configure:1215: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1274,7 +1262,7 @@ fi # Extract the first word of "cl", so it can be a program name with args. set dummy cl; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1278: checking for $ac_word" >&5 +echo "configure:1266: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1306,7 +1294,7 @@ fi fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 -echo "configure:1310: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 +echo "configure:1298: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 ac_ext=c # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. @@ -1317,12 +1305,12 @@ cross_compiling=$ac_cv_prog_cc_cross cat > conftest.$ac_ext << EOF -#line 1321 "configure" +#line 1309 "configure" #include "confdefs.h" main(){return(0);} EOF -if { (eval echo configure:1326: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1314: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then ac_cv_prog_cc_works=yes # If we can't run a trivial program, we are probably using a cross compiler. if (./conftest; exit) 2>/dev/null; then @@ -1348,12 +1336,12 @@ if test $ac_cv_prog_cc_works = no; then { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; } fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 -echo "configure:1352: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 +echo "configure:1340: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 cross_compiling=$ac_cv_prog_cc_cross echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 -echo "configure:1357: checking whether we are using GNU C" >&5 +echo "configure:1345: checking whether we are using GNU C" >&5 if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1362,7 +1350,7 @@ else yes; #endif EOF -if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1366: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then +if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1354: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then ac_cv_prog_gcc=yes else ac_cv_prog_gcc=no @@ -1381,7 +1369,7 @@ ac_test_CFLAGS="${CFLAGS+set}" ac_save_CFLAGS="$CFLAGS" CFLAGS= echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 -echo "configure:1385: checking whether ${CC-cc} accepts -g" >&5 +echo "configure:1373: checking whether ${CC-cc} accepts -g" >&5 if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1424,7 +1412,7 @@ ac_prog=ld if test "$GCC" = yes; then # Check if gcc -print-prog-name=ld gives a path. echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6 -echo "configure:1428: checking for ld used by GCC" >&5 +echo "configure:1416: checking for ld used by GCC" >&5 case $host in *-*-mingw*) # gcc leaves a trailing carriage return which upsets mingw @@ -1454,10 +1442,10 @@ echo "configure:1428: checking for ld us esac elif test "$with_gnu_ld" = yes; then echo $ac_n "checking for GNU ld""... $ac_c" 1>&6 -echo "configure:1458: checking for GNU ld" >&5 +echo "configure:1446: checking for GNU ld" >&5 else echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6 -echo "configure:1461: checking for non-GNU ld" >&5 +echo "configure:1449: checking for non-GNU ld" >&5 fi if eval "test \"`echo '$''{'lt_cv_path_LD'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -1492,7 +1480,7 @@ else fi test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; } echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6 -echo "configure:1496: checking if the linker ($LD) is GNU ld" >&5 +echo "configure:1484: checking if the linker ($LD) is GNU ld" >&5 if eval "test \"`echo '$''{'lt_cv_prog_gnu_ld'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1509,7 +1497,7 @@ with_gnu_ld=$lt_cv_prog_gnu_ld echo $ac_n "checking for $LD option to reload object files""... $ac_c" 1>&6 -echo "configure:1513: checking for $LD option to reload object files" >&5 +echo "configure:1501: checking for $LD option to reload object files" >&5 if eval "test \"`echo '$''{'lt_cv_ld_reload_flag'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1521,7 +1509,7 @@ reload_flag=$lt_cv_ld_reload_flag test -n "$reload_flag" && reload_flag=" $reload_flag" echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6 -echo "configure:1525: checking for BSD-compatible nm" >&5 +echo "configure:1513: checking for BSD-compatible nm" >&5 if eval "test \"`echo '$''{'lt_cv_path_NM'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1559,7 +1547,7 @@ NM="$lt_cv_path_NM" echo "$ac_t""$NM" 1>&6 echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6 -echo "configure:1563: checking whether ln -s works" >&5 +echo "configure:1551: checking whether ln -s works" >&5 if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1580,7 +1568,7 @@ else fi echo $ac_n "checking how to recognise dependant libraries""... $ac_c" 1>&6 -echo "configure:1584: checking how to recognise dependant libraries" >&5 +echo "configure:1572: checking how to recognise dependant libraries" >&5 if eval "test \"`echo '$''{'lt_cv_deplibs_check_method'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1753,13 +1741,13 @@ file_magic_cmd=$lt_cv_file_magic_cmd deplibs_check_method=$lt_cv_deplibs_check_method echo $ac_n "checking for object suffix""... $ac_c" 1>&6 -echo "configure:1757: checking for object suffix" >&5 +echo "configure:1745: checking for object suffix" >&5 if eval "test \"`echo '$''{'ac_cv_objext'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else rm -f conftest* echo 'int i = 1;' > conftest.$ac_ext -if { (eval echo configure:1763: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:1751: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then for ac_file in conftest.*; do case $ac_file in *.c) ;; @@ -1779,7 +1767,7 @@ ac_objext=$ac_cv_objext echo $ac_n "checking for executable suffix""... $ac_c" 1>&6 -echo "configure:1783: checking for executable suffix" >&5 +echo "configure:1771: checking for executable suffix" >&5 if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1789,7 +1777,7 @@ else rm -f conftest* echo 'int main () { return 0; }' > conftest.$ac_ext ac_cv_exeext= - if { (eval echo configure:1793: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then + if { (eval echo configure:1781: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then for file in conftest.*; do case $file in *.c | *.o | *.obj) ;; @@ -1816,7 +1804,7 @@ case $deplibs_check_method in file_magic*) if test "$file_magic_cmd" = '$MAGIC_CMD'; then echo $ac_n "checking for ${ac_tool_prefix}file""... $ac_c" 1>&6 -echo "configure:1820: checking for ${ac_tool_prefix}file" >&5 +echo "configure:1808: checking for ${ac_tool_prefix}file" >&5 if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1878,7 +1866,7 @@ fi if test -z "$lt_cv_path_MAGIC_CMD"; then if test -n "$ac_tool_prefix"; then echo $ac_n "checking for file""... $ac_c" 1>&6 -echo "configure:1882: checking for file" >&5 +echo "configure:1870: checking for file" >&5 if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1949,7 +1937,7 @@ esac # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. set dummy ${ac_tool_prefix}ranlib; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1953: checking for $ac_word" >&5 +echo "configure:1941: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1981,7 +1969,7 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1985: checking for $ac_word" >&5 +echo "configure:1973: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2016,7 +2004,7 @@ fi # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. set dummy ${ac_tool_prefix}strip; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:2020: checking for $ac_word" >&5 +echo "configure:2008: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2048,7 +2036,7 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "strip", so it can be a program name with args. set dummy strip; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:2052: checking for $ac_word" >&5 +echo "configure:2040: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2115,8 +2103,8 @@ test x"$pic_mode" = xno && libtool_flags case $host in *-*-irix6*) # Find out which ABI we are using. - echo '#line 2119 "configure"' > conftest.$ac_ext - if { (eval echo configure:2120: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + echo '#line 2107 "configure"' > conftest.$ac_ext + if { (eval echo configure:2108: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then if test "$lt_cv_prog_gnu_ld" = yes; then case `/usr/bin/file conftest.$ac_objext` in *32-bit*) @@ -2149,7 +2137,7 @@ case $host in ia64-*-hpux*) # Find out which ABI we are using. echo 'int i;' > conftest.$ac_ext - if { (eval echo configure:2153: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + if { (eval echo configure:2141: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then case "`/usr/bin/file conftest.o`" in *ELF-32*) HPUX_IA64_MODE="32" @@ -2167,7 +2155,7 @@ ia64-*-hpux*) SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -belf" echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6 -echo "configure:2171: checking whether the C compiler needs -belf" >&5 +echo "configure:2159: checking whether the C compiler needs -belf" >&5 if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2180,14 +2168,14 @@ ac_link='${CC-cc} -o conftest${ac_exeext cross_compiling=$ac_cv_prog_cc_cross cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2179: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* lt_cv_cc_needs_belf=yes else @@ -2377,7 +2365,7 @@ if test -z "$target" ; then fi echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6 -echo "configure:2381: checking whether to enable maintainer-specific portions of Makefiles" >&5 +echo "configure:2369: checking whether to enable maintainer-specific portions of Makefiles" >&5 # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given. if test "${enable_maintainer_mode+set}" = set; then enableval="$enable_maintainer_mode" @@ -2400,7 +2388,7 @@ fi echo $ac_n "checking whether to install libbfd""... $ac_c" 1>&6 -echo "configure:2404: checking whether to install libbfd" >&5 +echo "configure:2392: checking whether to install libbfd" >&5 # Check whether --enable-install-libbfd or --disable-install-libbfd was given. if test "${enable_install_libbfd+set}" = set; then enableval="$enable_install_libbfd" @@ -2437,7 +2425,7 @@ fi echo $ac_n "checking for executable suffix""... $ac_c" 1>&6 -echo "configure:2441: checking for executable suffix" >&5 +echo "configure:2429: checking for executable suffix" >&5 if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2447,7 +2435,7 @@ else rm -f conftest* echo 'int main () { return 0; }' > conftest.$ac_ext ac_cv_exeext= - if { (eval echo configure:2451: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then + if { (eval echo configure:2439: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then for file in conftest.*; do case $file in *.c | *.o | *.obj) ;; @@ -2477,7 +2465,7 @@ bfd_default_target_size=32 # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:2481: checking for $ac_word" >&5 +echo "configure:2469: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2507,7 +2495,7 @@ if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:2511: checking for $ac_word" >&5 +echo "configure:2499: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2558,7 +2546,7 @@ fi # Extract the first word of "cl", so it can be a program name with args. set dummy cl; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:2562: checking for $ac_word" >&5 +echo "configure:2550: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2590,7 +2578,7 @@ fi fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 -echo "configure:2594: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 +echo "configure:2582: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 ac_ext=c # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. @@ -2601,12 +2589,12 @@ cross_compiling=$ac_cv_prog_cc_cross cat > conftest.$ac_ext << EOF -#line 2605 "configure" +#line 2593 "configure" #include "confdefs.h" main(){return(0);} EOF -if { (eval echo configure:2610: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2598: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then ac_cv_prog_cc_works=yes # If we can't run a trivial program, we are probably using a cross compiler. if (./conftest; exit) 2>/dev/null; then @@ -2632,12 +2620,12 @@ if test $ac_cv_prog_cc_works = no; then { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; } fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 -echo "configure:2636: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 +echo "configure:2624: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 cross_compiling=$ac_cv_prog_cc_cross echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 -echo "configure:2641: checking whether we are using GNU C" >&5 +echo "configure:2629: checking whether we are using GNU C" >&5 if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2646,7 +2634,7 @@ else yes; #endif EOF -if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:2650: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then +if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:2638: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then ac_cv_prog_gcc=yes else ac_cv_prog_gcc=no @@ -2665,7 +2653,7 @@ ac_test_CFLAGS="${CFLAGS+set}" ac_save_CFLAGS="$CFLAGS" CFLAGS= echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 -echo "configure:2669: checking whether ${CC-cc} accepts -g" >&5 +echo "configure:2657: checking whether ${CC-cc} accepts -g" >&5 if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2699,7 +2687,7 @@ fi ALL_LINGUAS="fr tr ja es sv da zh_CN ro" echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6 -echo "configure:2703: checking how to run the C preprocessor" >&5 +echo "configure:2691: checking how to run the C preprocessor" >&5 # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= @@ -2714,13 +2702,13 @@ else # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. cat > conftest.$ac_ext < Syntax Error EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:2724: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:2712: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then : @@ -2731,13 +2719,13 @@ else rm -rf conftest* CPP="${CC-cc} -E -traditional-cpp" cat > conftest.$ac_ext < Syntax Error EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:2741: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:2729: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then : @@ -2748,13 +2736,13 @@ else rm -rf conftest* CPP="${CC-cc} -nologo -E" cat > conftest.$ac_ext < Syntax Error EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:2758: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:2746: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then : @@ -2781,7 +2769,7 @@ echo "$ac_t""$CPP" 1>&6 # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:2785: checking for $ac_word" >&5 +echo "configure:2773: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2809,12 +2797,12 @@ else fi echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6 -echo "configure:2813: checking for ANSI C header files" >&5 +echo "configure:2801: checking for ANSI C header files" >&5 if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #include @@ -2822,7 +2810,7 @@ else #include EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:2826: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:2814: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -2839,7 +2827,7 @@ rm -f conftest* if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat > conftest.$ac_ext < EOF @@ -2857,7 +2845,7 @@ fi if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat > conftest.$ac_ext < EOF @@ -2878,7 +2866,7 @@ if test "$cross_compiling" = yes; then : else cat > conftest.$ac_ext < #define ISLOWER(c) ('a' <= (c) && (c) <= 'z') @@ -2889,7 +2877,7 @@ if (XOR (islower (i), ISLOWER (i)) || to exit (0); } EOF -if { (eval echo configure:2893: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2881: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then : else @@ -2913,12 +2901,12 @@ EOF fi echo $ac_n "checking for working const""... $ac_c" 1>&6 -echo "configure:2917: checking for working const" >&5 +echo "configure:2905: checking for working const" >&5 if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2959: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_const=yes else @@ -2988,21 +2976,21 @@ EOF fi echo $ac_n "checking for inline""... $ac_c" 1>&6 -echo "configure:2992: checking for inline" >&5 +echo "configure:2980: checking for inline" >&5 if eval "test \"`echo '$''{'ac_cv_c_inline'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else ac_cv_c_inline=no for ac_kw in inline __inline__ __inline; do cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2994: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_inline=$ac_kw; break else @@ -3028,12 +3016,12 @@ EOF esac echo $ac_n "checking for off_t""... $ac_c" 1>&6 -echo "configure:3032: checking for off_t" >&5 +echo "configure:3020: checking for off_t" >&5 if eval "test \"`echo '$''{'ac_cv_type_off_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #if STDC_HEADERS @@ -3061,12 +3049,12 @@ EOF fi echo $ac_n "checking for size_t""... $ac_c" 1>&6 -echo "configure:3065: checking for size_t" >&5 +echo "configure:3053: checking for size_t" >&5 if eval "test \"`echo '$''{'ac_cv_type_size_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #if STDC_HEADERS @@ -3096,19 +3084,19 @@ fi # The Ultrix 4.2 mips builtin alloca declared by alloca.h only works # for constant arguments. Useless! echo $ac_n "checking for working alloca.h""... $ac_c" 1>&6 -echo "configure:3100: checking for working alloca.h" >&5 +echo "configure:3088: checking for working alloca.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_alloca_h'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { char *p = alloca(2 * sizeof(int)); ; return 0; } EOF -if { (eval echo configure:3112: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3100: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_header_alloca_h=yes else @@ -3129,12 +3117,12 @@ EOF fi echo $ac_n "checking for alloca""... $ac_c" 1>&6 -echo "configure:3133: checking for alloca" >&5 +echo "configure:3121: checking for alloca" >&5 if eval "test \"`echo '$''{'ac_cv_func_alloca_works'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3154: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_func_alloca_works=yes else @@ -3194,12 +3182,12 @@ EOF echo $ac_n "checking whether alloca needs Cray hooks""... $ac_c" 1>&6 -echo "configure:3198: checking whether alloca needs Cray hooks" >&5 +echo "configure:3186: checking whether alloca needs Cray hooks" >&5 if eval "test \"`echo '$''{'ac_cv_os_cray'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 if test $ac_cv_os_cray = yes; then for ac_func in _getb67 GETB67 getb67; do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:3228: checking for $ac_func" >&5 +echo "configure:3216: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3244: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -3279,7 +3267,7 @@ done fi echo $ac_n "checking stack direction for C alloca""... $ac_c" 1>&6 -echo "configure:3283: checking stack direction for C alloca" >&5 +echo "configure:3271: checking stack direction for C alloca" >&5 if eval "test \"`echo '$''{'ac_cv_c_stack_direction'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3287,7 +3275,7 @@ else ac_cv_c_stack_direction=0 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:3298: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_c_stack_direction=1 else @@ -3331,17 +3319,17 @@ for ac_hdr in stdlib.h unistd.h sys/stat do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:3335: checking for $ac_hdr" >&5 +echo "configure:3323: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:3345: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:3333: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -3370,12 +3358,12 @@ done for ac_func in getpagesize do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:3374: checking for $ac_func" >&5 +echo "configure:3362: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3390: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -3423,7 +3411,7 @@ fi done echo $ac_n "checking for working mmap""... $ac_c" 1>&6 -echo "configure:3427: checking for working mmap" >&5 +echo "configure:3415: checking for working mmap" >&5 if eval "test \"`echo '$''{'ac_cv_func_mmap_fixed_mapped'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3431,7 +3419,7 @@ else ac_cv_func_mmap_fixed_mapped=no else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:3576: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_func_mmap_fixed_mapped=yes else @@ -3612,17 +3600,17 @@ unistd.h values.h sys/param.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:3616: checking for $ac_hdr" >&5 +echo "configure:3604: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:3626: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:3614: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -3652,12 +3640,12 @@ done __argz_count __argz_stringify __argz_next do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:3656: checking for $ac_func" >&5 +echo "configure:3644: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3672: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -3709,12 +3697,12 @@ done for ac_func in stpcpy do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:3713: checking for $ac_func" >&5 +echo "configure:3701: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3729: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -3771,19 +3759,19 @@ EOF if test $ac_cv_header_locale_h = yes; then echo $ac_n "checking for LC_MESSAGES""... $ac_c" 1>&6 -echo "configure:3775: checking for LC_MESSAGES" >&5 +echo "configure:3763: checking for LC_MESSAGES" >&5 if eval "test \"`echo '$''{'am_cv_val_LC_MESSAGES'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { return LC_MESSAGES ; return 0; } EOF -if { (eval echo configure:3787: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3775: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* am_cv_val_LC_MESSAGES=yes else @@ -3804,7 +3792,7 @@ EOF fi fi echo $ac_n "checking whether NLS is requested""... $ac_c" 1>&6 -echo "configure:3808: checking whether NLS is requested" >&5 +echo "configure:3796: checking whether NLS is requested" >&5 # Check whether --enable-nls or --disable-nls was given. if test "${enable_nls+set}" = set; then enableval="$enable_nls" @@ -3824,7 +3812,7 @@ fi EOF echo $ac_n "checking whether included gettext is requested""... $ac_c" 1>&6 -echo "configure:3828: checking whether included gettext is requested" >&5 +echo "configure:3816: checking whether included gettext is requested" >&5 # Check whether --with-included-gettext or --without-included-gettext was given. if test "${with_included_gettext+set}" = set; then withval="$with_included_gettext" @@ -3843,17 +3831,17 @@ fi ac_safe=`echo "libintl.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for libintl.h""... $ac_c" 1>&6 -echo "configure:3847: checking for libintl.h" >&5 +echo "configure:3835: checking for libintl.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:3857: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:3845: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -3870,19 +3858,19 @@ fi if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then echo "$ac_t""yes" 1>&6 echo $ac_n "checking for gettext in libc""... $ac_c" 1>&6 -echo "configure:3874: checking for gettext in libc" >&5 +echo "configure:3862: checking for gettext in libc" >&5 if eval "test \"`echo '$''{'gt_cv_func_gettext_libc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { return (int) gettext ("") ; return 0; } EOF -if { (eval echo configure:3886: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3874: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* gt_cv_func_gettext_libc=yes else @@ -3898,7 +3886,7 @@ echo "$ac_t""$gt_cv_func_gettext_libc" 1 if test "$gt_cv_func_gettext_libc" != "yes"; then echo $ac_n "checking for bindtextdomain in -lintl""... $ac_c" 1>&6 -echo "configure:3902: checking for bindtextdomain in -lintl" >&5 +echo "configure:3890: checking for bindtextdomain in -lintl" >&5 ac_lib_var=`echo intl'_'bindtextdomain | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -3906,7 +3894,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lintl $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3909: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -3933,19 +3921,19 @@ fi if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then echo "$ac_t""yes" 1>&6 echo $ac_n "checking for gettext in libintl""... $ac_c" 1>&6 -echo "configure:3937: checking for gettext in libintl" >&5 +echo "configure:3925: checking for gettext in libintl" >&5 if eval "test \"`echo '$''{'gt_cv_func_gettext_libintl'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3937: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* gt_cv_func_gettext_libintl=yes else @@ -3973,7 +3961,7 @@ EOF # Extract the first word of "msgfmt", so it can be a program name with args. set dummy msgfmt; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:3977: checking for $ac_word" >&5 +echo "configure:3965: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_MSGFMT'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4007,12 +3995,12 @@ fi for ac_func in dcgettext do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:4011: checking for $ac_func" >&5 +echo "configure:3999: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4027: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -4062,7 +4050,7 @@ done # Extract the first word of "gmsgfmt", so it can be a program name with args. set dummy gmsgfmt; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:4066: checking for $ac_word" >&5 +echo "configure:4054: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4098,7 +4086,7 @@ fi # Extract the first word of "xgettext", so it can be a program name with args. set dummy xgettext; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:4102: checking for $ac_word" >&5 +echo "configure:4090: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4130,7 +4118,7 @@ else fi cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4130: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* CATOBJEXT=.gmo DATADIRNAME=share @@ -4170,7 +4158,7 @@ fi # Extract the first word of "msgfmt", so it can be a program name with args. set dummy msgfmt; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:4174: checking for $ac_word" >&5 +echo "configure:4162: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_MSGFMT'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4204,7 +4192,7 @@ fi # Extract the first word of "gmsgfmt", so it can be a program name with args. set dummy gmsgfmt; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:4208: checking for $ac_word" >&5 +echo "configure:4196: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4240,7 +4228,7 @@ fi # Extract the first word of "xgettext", so it can be a program name with args. set dummy xgettext; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:4244: checking for $ac_word" >&5 +echo "configure:4232: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4330,7 +4318,7 @@ fi LINGUAS= else echo $ac_n "checking for catalogs to be installed""... $ac_c" 1>&6 -echo "configure:4334: checking for catalogs to be installed" >&5 +echo "configure:4322: checking for catalogs to be installed" >&5 NEW_LINGUAS= for lang in ${LINGUAS=$ALL_LINGUAS}; do case "$ALL_LINGUAS" in @@ -4358,17 +4346,17 @@ echo "configure:4334: checking for catal if test "$CATOBJEXT" = ".cat"; then ac_safe=`echo "linux/version.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for linux/version.h""... $ac_c" 1>&6 -echo "configure:4362: checking for linux/version.h" >&5 +echo "configure:4350: checking for linux/version.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:4372: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:4360: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -4446,7 +4434,7 @@ fi # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # ./install, which can be erroneously created by make from ./install.sh. echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 -echo "configure:4450: checking for a BSD compatible install" >&5 +echo "configure:4438: checking for a BSD compatible install" >&5 if test -z "$INSTALL"; then if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4506,19 +4494,19 @@ BFD_HOST_64_BIT= BFD_HOST_U_64_BIT= echo $ac_n "checking for long long""... $ac_c" 1>&6 -echo "configure:4510: checking for long long" >&5 +echo "configure:4498: checking for long long" >&5 if eval "test \"`echo '$''{'bfd_cv_has_long_long'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:4510: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_has_long_long=yes else @@ -4534,13 +4522,13 @@ echo "$ac_t""$bfd_cv_has_long_long" 1>&6 if test $bfd_cv_has_long_long = yes; then BFD_HOST_LONG_LONG=1 echo $ac_n "checking size of long long""... $ac_c" 1>&6 -echo "configure:4538: checking size of long long" >&5 +echo "configure:4526: checking size of long long" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_long_long'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else for ac_size in 4 8 1 2 16 12 ; do # List sizes in rough order of prevalence. cat > conftest.$ac_ext < @@ -4550,7 +4538,7 @@ int main() { switch (0) case 0: case (sizeof (long long) == $ac_size):; ; return 0; } EOF -if { (eval echo configure:4554: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:4542: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_sizeof_long_long=$ac_size else @@ -4575,13 +4563,13 @@ EOF fi echo $ac_n "checking size of long""... $ac_c" 1>&6 -echo "configure:4579: checking size of long" >&5 +echo "configure:4567: checking size of long" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_long'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else for ac_size in 4 8 1 2 16 12 ; do # List sizes in rough order of prevalence. cat > conftest.$ac_ext < @@ -4591,7 +4579,7 @@ int main() { switch (0) case 0: case (sizeof (long) == $ac_size):; ; return 0; } EOF -if { (eval echo configure:4595: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:4583: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_sizeof_long=$ac_size else @@ -4649,7 +4637,7 @@ if test "x$cross_compiling" = "xno"; the EXEEXT_FOR_BUILD='$(EXEEXT)' else echo $ac_n "checking for build system executable suffix""... $ac_c" 1>&6 -echo "configure:4653: checking for build system executable suffix" >&5 +echo "configure:4641: checking for build system executable suffix" >&5 if eval "test \"`echo '$''{'bfd_cv_build_exeext'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4677,17 +4665,17 @@ for ac_hdr in stddef.h string.h strings. do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:4681: checking for $ac_hdr" >&5 +echo "configure:4669: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:4691: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:4679: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -4717,17 +4705,17 @@ for ac_hdr in fcntl.h sys/file.h sys/tim do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:4721: checking for $ac_hdr" >&5 +echo "configure:4709: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:4731: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:4719: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -4754,12 +4742,12 @@ fi done echo $ac_n "checking whether time.h and sys/time.h may both be included""... $ac_c" 1>&6 -echo "configure:4758: checking whether time.h and sys/time.h may both be included" >&5 +echo "configure:4746: checking whether time.h and sys/time.h may both be included" >&5 if eval "test \"`echo '$''{'ac_cv_header_time'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #include @@ -4768,7 +4756,7 @@ int main() { struct tm *tp; ; return 0; } EOF -if { (eval echo configure:4772: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:4760: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_header_time=yes else @@ -4793,12 +4781,12 @@ for ac_hdr in dirent.h sys/ndir.h sys/di do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr that defines DIR""... $ac_c" 1>&6 -echo "configure:4797: checking for $ac_hdr that defines DIR" >&5 +echo "configure:4785: checking for $ac_hdr that defines DIR" >&5 if eval "test \"`echo '$''{'ac_cv_header_dirent_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #include <$ac_hdr> @@ -4806,7 +4794,7 @@ int main() { DIR *dirp = 0; ; return 0; } EOF -if { (eval echo configure:4810: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:4798: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_header_dirent_$ac_safe=yes" else @@ -4831,7 +4819,7 @@ done # Two versions of opendir et al. are in -ldir and -lx on SCO Xenix. if test $ac_header_dirent = dirent.h; then echo $ac_n "checking for opendir in -ldir""... $ac_c" 1>&6 -echo "configure:4835: checking for opendir in -ldir" >&5 +echo "configure:4823: checking for opendir in -ldir" >&5 ac_lib_var=`echo dir'_'opendir | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4839,7 +4827,7 @@ else ac_save_LIBS="$LIBS" LIBS="-ldir $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4842: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4872,7 +4860,7 @@ fi else echo $ac_n "checking for opendir in -lx""... $ac_c" 1>&6 -echo "configure:4876: checking for opendir in -lx" >&5 +echo "configure:4864: checking for opendir in -lx" >&5 ac_lib_var=`echo x'_'opendir | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4880,7 +4868,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lx $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4883: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4916,12 +4904,12 @@ fi for ac_func in fcntl getpagesize setitimer sysconf fdopen getuid getgid do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:4920: checking for $ac_func" >&5 +echo "configure:4908: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4936: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -4971,12 +4959,12 @@ done for ac_func in strtoull do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:4975: checking for $ac_func" >&5 +echo "configure:4963: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4991: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -5034,12 +5022,12 @@ EOF esac echo $ac_n "checking whether strstr must be declared""... $ac_c" 1>&6 -echo "configure:5038: checking whether strstr must be declared" >&5 +echo "configure:5026: checking whether strstr must be declared" >&5 if eval "test \"`echo '$''{'bfd_cv_decl_needed_strstr'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < @@ -5060,7 +5048,7 @@ int main() { char *(*pfn) = (char *(*)) strstr ; return 0; } EOF -if { (eval echo configure:5064: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5052: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_decl_needed_strstr=no else @@ -5081,12 +5069,12 @@ EOF fi echo $ac_n "checking whether malloc must be declared""... $ac_c" 1>&6 -echo "configure:5085: checking whether malloc must be declared" >&5 +echo "configure:5073: checking whether malloc must be declared" >&5 if eval "test \"`echo '$''{'bfd_cv_decl_needed_malloc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < @@ -5107,7 +5095,7 @@ int main() { char *(*pfn) = (char *(*)) malloc ; return 0; } EOF -if { (eval echo configure:5111: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5099: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_decl_needed_malloc=no else @@ -5128,12 +5116,12 @@ EOF fi echo $ac_n "checking whether realloc must be declared""... $ac_c" 1>&6 -echo "configure:5132: checking whether realloc must be declared" >&5 +echo "configure:5120: checking whether realloc must be declared" >&5 if eval "test \"`echo '$''{'bfd_cv_decl_needed_realloc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < @@ -5154,7 +5142,7 @@ int main() { char *(*pfn) = (char *(*)) realloc ; return 0; } EOF -if { (eval echo configure:5158: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5146: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_decl_needed_realloc=no else @@ -5175,12 +5163,12 @@ EOF fi echo $ac_n "checking whether free must be declared""... $ac_c" 1>&6 -echo "configure:5179: checking whether free must be declared" >&5 +echo "configure:5167: checking whether free must be declared" >&5 if eval "test \"`echo '$''{'bfd_cv_decl_needed_free'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < @@ -5201,7 +5189,7 @@ int main() { char *(*pfn) = (char *(*)) free ; return 0; } EOF -if { (eval echo configure:5205: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5193: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_decl_needed_free=no else @@ -5222,12 +5210,12 @@ EOF fi echo $ac_n "checking whether getenv must be declared""... $ac_c" 1>&6 -echo "configure:5226: checking whether getenv must be declared" >&5 +echo "configure:5214: checking whether getenv must be declared" >&5 if eval "test \"`echo '$''{'bfd_cv_decl_needed_getenv'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < @@ -5248,7 +5236,7 @@ int main() { char *(*pfn) = (char *(*)) getenv ; return 0; } EOF -if { (eval echo configure:5252: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5240: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_decl_needed_getenv=no else @@ -5404,6 +5392,9 @@ if test "${target}" = "${host}"; then COREFILE=trad-core.lo TRAD_HEADER='"hosts/m88kmach3.h"' ;; + m88*-*-openbsd*) + COREFILE=netbsd-core.lo + ;; ns32k-pc532-mach) COREFILE=trad-core.lo TRAD_HEADER='"hosts/pc532mach.h"' @@ -5424,16 +5415,16 @@ if test "${target}" = "${host}"; then # Not all versions of AIX with -DAIX_CORE_DUMPX_CORE # have c_impl as a member of struct core_dumpx echo $ac_n "checking for c_impl in struct core_dumpx""... $ac_c" 1>&6 -echo "configure:5428: checking for c_impl in struct core_dumpx" >&5 +echo "configure:5419: checking for c_impl in struct core_dumpx" >&5 cat > conftest.$ac_ext < int main() { struct core_dumpx c; c.c_impl = 0; ; return 0; } EOF -if { (eval echo configure:5437: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5428: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* cat >> confdefs.h <<\EOF #define HAVE_ST_C_IMPL 1 @@ -5510,17 +5501,17 @@ rm -f conftest* do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:5514: checking for $ac_hdr" >&5 +echo "configure:5505: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:5524: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:5515: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -5548,12 +5539,12 @@ done if test "$ac_cv_header_sys_procfs_h" = yes; then echo $ac_n "checking for prstatus_t in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:5552: checking for prstatus_t in sys/procfs.h" >&5 +echo "configure:5543: checking for prstatus_t in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_prstatus_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5557: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_prstatus_t=yes else @@ -5584,12 +5575,12 @@ EOF echo "$ac_t""$bfd_cv_have_sys_procfs_type_prstatus_t" 1>&6 echo $ac_n "checking for prstatus32_t in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:5588: checking for prstatus32_t in sys/procfs.h" >&5 +echo "configure:5579: checking for prstatus32_t in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_prstatus32_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5593: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_prstatus32_t=yes else @@ -5620,12 +5611,12 @@ EOF echo "$ac_t""$bfd_cv_have_sys_procfs_type_prstatus32_t" 1>&6 echo $ac_n "checking for prstatus_t.pr_who in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:5624: checking for prstatus_t.pr_who in sys/procfs.h" >&5 +echo "configure:5615: checking for prstatus_t.pr_who in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_member_prstatus_t_pr_who'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5629: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_member_prstatus_t_pr_who=yes else @@ -5656,12 +5647,12 @@ EOF echo "$ac_t""$bfd_cv_have_sys_procfs_type_member_prstatus_t_pr_who" 1>&6 echo $ac_n "checking for prstatus32_t.pr_who in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:5660: checking for prstatus32_t.pr_who in sys/procfs.h" >&5 +echo "configure:5651: checking for prstatus32_t.pr_who in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_member_prstatus32_t_pr_who'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5665: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_member_prstatus32_t_pr_who=yes else @@ -5692,12 +5683,12 @@ EOF echo "$ac_t""$bfd_cv_have_sys_procfs_type_member_prstatus32_t_pr_who" 1>&6 echo $ac_n "checking for pstatus_t in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:5696: checking for pstatus_t in sys/procfs.h" >&5 +echo "configure:5687: checking for pstatus_t in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_pstatus_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5701: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_pstatus_t=yes else @@ -5728,12 +5719,12 @@ EOF echo "$ac_t""$bfd_cv_have_sys_procfs_type_pstatus_t" 1>&6 echo $ac_n "checking for pxstatus_t in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:5732: checking for pxstatus_t in sys/procfs.h" >&5 +echo "configure:5723: checking for pxstatus_t in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_pxstatus_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5737: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_pxstatus_t=yes else @@ -5764,12 +5755,12 @@ EOF echo "$ac_t""$bfd_cv_have_sys_procfs_type_pxstatus_t" 1>&6 echo $ac_n "checking for pstatus32_t in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:5768: checking for pstatus32_t in sys/procfs.h" >&5 +echo "configure:5759: checking for pstatus32_t in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_pstatus32_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5773: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_pstatus32_t=yes else @@ -5800,12 +5791,12 @@ EOF echo "$ac_t""$bfd_cv_have_sys_procfs_type_pstatus32_t" 1>&6 echo $ac_n "checking for prpsinfo_t in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:5804: checking for prpsinfo_t in sys/procfs.h" >&5 +echo "configure:5795: checking for prpsinfo_t in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_prpsinfo_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5809: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_prpsinfo_t=yes else @@ -5836,12 +5827,12 @@ EOF echo "$ac_t""$bfd_cv_have_sys_procfs_type_prpsinfo_t" 1>&6 echo $ac_n "checking for prpsinfo32_t in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:5840: checking for prpsinfo32_t in sys/procfs.h" >&5 +echo "configure:5831: checking for prpsinfo32_t in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_prpsinfo32_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5845: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_prpsinfo32_t=yes else @@ -5872,12 +5863,12 @@ EOF echo "$ac_t""$bfd_cv_have_sys_procfs_type_prpsinfo32_t" 1>&6 echo $ac_n "checking for psinfo_t in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:5876: checking for psinfo_t in sys/procfs.h" >&5 +echo "configure:5867: checking for psinfo_t in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_psinfo_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5881: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_psinfo_t=yes else @@ -5908,12 +5899,12 @@ EOF echo "$ac_t""$bfd_cv_have_sys_procfs_type_psinfo_t" 1>&6 echo $ac_n "checking for psinfo32_t in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:5912: checking for psinfo32_t in sys/procfs.h" >&5 +echo "configure:5903: checking for psinfo32_t in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_psinfo32_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5917: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_psinfo32_t=yes else @@ -5944,12 +5935,12 @@ EOF echo "$ac_t""$bfd_cv_have_sys_procfs_type_psinfo32_t" 1>&6 echo $ac_n "checking for lwpstatus_t in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:5948: checking for lwpstatus_t in sys/procfs.h" >&5 +echo "configure:5939: checking for lwpstatus_t in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_lwpstatus_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5953: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_lwpstatus_t=yes else @@ -5980,12 +5971,12 @@ EOF echo "$ac_t""$bfd_cv_have_sys_procfs_type_lwpstatus_t" 1>&6 echo $ac_n "checking for lwpxstatus_t in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:5984: checking for lwpxstatus_t in sys/procfs.h" >&5 +echo "configure:5975: checking for lwpxstatus_t in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_lwpxstatus_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5989: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_lwpxstatus_t=yes else @@ -6016,12 +6007,12 @@ EOF echo "$ac_t""$bfd_cv_have_sys_procfs_type_lwpxstatus_t" 1>&6 echo $ac_n "checking for lwpstatus_t.pr_context in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:6020: checking for lwpstatus_t.pr_context in sys/procfs.h" >&5 +echo "configure:6011: checking for lwpstatus_t.pr_context in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_member_lwpstatus_t_pr_context'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:6025: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_member_lwpstatus_t_pr_context=yes else @@ -6052,12 +6043,12 @@ EOF echo "$ac_t""$bfd_cv_have_sys_procfs_type_member_lwpstatus_t_pr_context" 1>&6 echo $ac_n "checking for lwpstatus_t.pr_reg in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:6056: checking for lwpstatus_t.pr_reg in sys/procfs.h" >&5 +echo "configure:6047: checking for lwpstatus_t.pr_reg in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_member_lwpstatus_t_pr_reg'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:6061: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_member_lwpstatus_t_pr_reg=yes else @@ -6088,12 +6079,12 @@ EOF echo "$ac_t""$bfd_cv_have_sys_procfs_type_member_lwpstatus_t_pr_reg" 1>&6 echo $ac_n "checking for win32_pstatus_t in sys/procfs.h""... $ac_c" 1>&6 -echo "configure:6092: checking for win32_pstatus_t in sys/procfs.h" >&5 +echo "configure:6083: checking for win32_pstatus_t in sys/procfs.h" >&5 if eval "test \"`echo '$''{'bfd_cv_have_sys_procfs_type_win32_pstatus_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:6097: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* bfd_cv_have_sys_procfs_type_win32_pstatus_t=yes else @@ -6292,6 +6283,7 @@ do bfd_elf32_dlx_big_vec) tb="$tb elf32-dlx.lo elf32.lo $elf" ;; bfd_elf32_fr30_vec) tb="$tb elf32-fr30.lo elf32.lo $elf" ;; bfd_elf32_frv_vec) tb="$tb elf32-frv.lo elf32.lo $elf" ;; + bfd_elf32_frvfdpic_vec) tb="$tb elf32-frv.lo elf32.lo $elf" ;; bfd_elf32_h8300_vec) tb="$tb elf32-h8300.lo elf32.lo $elf" ;; bfd_elf32_hppa_linux_vec) tb="$tb elf32-hppa.lo elf32.lo $elf" ;; bfd_elf32_hppa_vec) tb="$tb elf32-hppa.lo elf32.lo $elf" ;; @@ -6430,6 +6422,7 @@ do m68ksysvcoff_vec) tb="$tb coff-svm68k.lo cofflink.lo" ;; m88kbcs_vec) tb="$tb coff-m88k.lo" ;; m88kmach3_vec) tb="$tb m88kmach3.lo aout32.lo" ;; + m88kopenbsd_vec) tb="$tb m88kopenbsd.lo aout32.lo" ;; mach_o_be_vec) tb="$tb mach-o.lo" ;; mach_o_le_vec) tb="$tb mach-o.lo" ;; mach_o_fat_vec) tb="$tb mach-o.lo" ;; @@ -6573,10 +6566,10 @@ case ${host64}-${target64}-${want64} in if test -n "$GCC" ; then bad_64bit_gcc=no; echo $ac_n "checking for gcc version with buggy 64-bit support""... $ac_c" 1>&6 -echo "configure:6577: checking for gcc version with buggy 64-bit support" >&5 +echo "configure:6570: checking for gcc version with buggy 64-bit support" >&5 # Add more tests for gcc versions with non-working 64-bit support here. cat > conftest.$ac_ext <&6 -echo "configure:6622: checking for $ac_func" >&5 +echo "configure:6615: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:6643: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -6672,13 +6665,13 @@ done if test x"$ac_cv_func_ftello" = xyes -a x"$ac_cv_func_fseeko" = xyes; then echo $ac_n "checking size of off_t""... $ac_c" 1>&6 -echo "configure:6676: checking size of off_t" >&5 +echo "configure:6669: checking size of off_t" >&5 if eval "test \"`echo '$''{'ac_cv_sizeof_off_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else for ac_size in 4 8 1 2 16 12 ; do # List sizes in rough order of prevalence. cat > conftest.$ac_ext < @@ -6688,7 +6681,7 @@ int main() { switch (0) case 0: case (sizeof (off_t) == $ac_size):; ; return 0; } EOF -if { (eval echo configure:6692: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:6685: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_sizeof_off_t=$ac_size else @@ -6712,7 +6705,7 @@ EOF fi echo $ac_n "checking file_ptr type""... $ac_c" 1>&6 -echo "configure:6716: checking file_ptr type" >&5 +echo "configure:6709: checking file_ptr type" >&5 bfd_file_ptr="long" bfd_ufile_ptr="unsigned long" if test x"$ac_cv_func_ftello64" = xyes -a x"$ac_cv_func_fseeko64" = xyes \ @@ -6737,17 +6730,17 @@ for ac_hdr in stdlib.h unistd.h sys/stat do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:6741: checking for $ac_hdr" >&5 +echo "configure:6734: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:6751: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:6744: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -6776,12 +6769,12 @@ done for ac_func in getpagesize do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:6780: checking for $ac_func" >&5 +echo "configure:6773: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:6801: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -6829,7 +6822,7 @@ fi done echo $ac_n "checking for working mmap""... $ac_c" 1>&6 -echo "configure:6833: checking for working mmap" >&5 +echo "configure:6826: checking for working mmap" >&5 if eval "test \"`echo '$''{'ac_cv_func_mmap_fixed_mapped'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -6837,7 +6830,7 @@ else ac_cv_func_mmap_fixed_mapped=no else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:6987: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_func_mmap_fixed_mapped=yes else @@ -7015,12 +7008,12 @@ fi for ac_func in madvise mprotect do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:7019: checking for $ac_func" >&5 +echo "configure:7012: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:7040: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -7176,7 +7169,7 @@ done ac_given_srcdir=$srcdir ac_given_INSTALL="$INSTALL" -trap 'rm -fr `echo "../binutils.spec Makefile doc/Makefile bfd-in3.h:bfd-in2.h bfdver.h:version.h po/Makefile.in:po/Make-in config.h:config.in" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15 +trap 'rm -fr `echo "../binutils.spec Makefile doc/Makefile bfd-in3.h:bfd-in2.h po/Makefile.in:po/Make-in config.h:config.in" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15 EOF cat >> $CONFIG_STATUS <> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then diff -uprN binutils-2.15.90.0.3/bfd/configure.in binutils-2.15.91.0.1/bfd/configure.in --- binutils-2.15.90.0.3/bfd/configure.in 2004-04-14 21:26:05.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/configure.in 2004-05-27 11:26:02.003511750 -0700 @@ -7,21 +7,7 @@ AC_INIT(libbfd.c) AC_CANONICAL_SYSTEM AC_ISC_POSIX -AM_INIT_AUTOMAKE(bfd, 2.15.90.0.3) -# Uncomment the next line to remove the date from the reported bfd version -#is_release=y - -changequote(,)dnl -bfd_version=`echo "${VERSION}" | sed -e 's/\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\)\.*\([^\.]*\).*/\1.00\2.00\3.00\4.00\5/' -e 's/\([^\.]*\)\..*\(..\)\..*\(..\)\..*\(..\)\..*\(..\)$/\1\2\3\4\5/'` -changequote([,])dnl - -bfd_version_string="\"${VERSION}\"" -if test x${is_release} = x; then - bfd_version_date=`sed -n -e 's/.*DATE //p' < ${srcdir}/version.h` - bfd_version_string="\"${VERSION} ${bfd_version_date}\"" -fi -AC_SUBST(bfd_version) -AC_SUBST(bfd_version_string) +AM_INIT_AUTOMAKE(bfd, 2.15.91.0.1) dnl These must be called before AM_PROG_LIBTOOL, because it may want dnl to call AC_CHECK_PROG. @@ -328,6 +314,9 @@ changequote([,])dnl COREFILE=trad-core.lo TRAD_HEADER='"hosts/m88kmach3.h"' ;; + m88*-*-openbsd*) + COREFILE=netbsd-core.lo + ;; ns32k-pc532-mach) COREFILE=trad-core.lo TRAD_HEADER='"hosts/pc532mach.h"' @@ -601,6 +590,7 @@ do bfd_elf32_dlx_big_vec) tb="$tb elf32-dlx.lo elf32.lo $elf" ;; bfd_elf32_fr30_vec) tb="$tb elf32-fr30.lo elf32.lo $elf" ;; bfd_elf32_frv_vec) tb="$tb elf32-frv.lo elf32.lo $elf" ;; + bfd_elf32_frvfdpic_vec) tb="$tb elf32-frv.lo elf32.lo $elf" ;; bfd_elf32_h8300_vec) tb="$tb elf32-h8300.lo elf32.lo $elf" ;; bfd_elf32_hppa_linux_vec) tb="$tb elf32-hppa.lo elf32.lo $elf" ;; bfd_elf32_hppa_vec) tb="$tb elf32-hppa.lo elf32.lo $elf" ;; @@ -739,6 +729,7 @@ do m68ksysvcoff_vec) tb="$tb coff-svm68k.lo cofflink.lo" ;; m88kbcs_vec) tb="$tb coff-m88k.lo" ;; m88kmach3_vec) tb="$tb m88kmach3.lo aout32.lo" ;; + m88kopenbsd_vec) tb="$tb m88kopenbsd.lo aout32.lo" ;; mach_o_be_vec) tb="$tb mach-o.lo" ;; mach_o_le_vec) tb="$tb mach-o.lo" ;; mach_o_fat_vec) tb="$tb mach-o.lo" ;; @@ -944,6 +935,6 @@ case ${want_mmap}+${ac_cv_func_mmap_fixe esac rm -f doc/config.status -AC_OUTPUT(../binutils.spec Makefile doc/Makefile bfd-in3.h:bfd-in2.h bfdver.h:version.h po/Makefile.in:po/Make-in, +AC_OUTPUT(../binutils.spec Makefile doc/Makefile bfd-in3.h:bfd-in2.h po/Makefile.in:po/Make-in, [sed -e '/SRC-POTFILES =/r po/SRC-POTFILES' -e '/BLD-POTFILES =/r po/BLD-POTFILES' po/Makefile.in > po/Makefile]) diff -uprN binutils-2.15.90.0.3/bfd/cpu-m68k.c binutils-2.15.91.0.1/bfd/cpu-m68k.c --- binutils-2.15.90.0.3/bfd/cpu-m68k.c 2004-01-14 13:07:43.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/cpu-m68k.c 2004-05-27 11:26:02.020509552 -0700 @@ -1,6 +1,6 @@ /* BFD library support routines for architectures. Copyright 1990, 1991, 1992, 1993, 1994, 1997, 1998, 2000, 2001, 2002, - 2003 Free Software Foundation, Inc. + 2003, 2004 Free Software Foundation, Inc. Hacked by Steve Chamberlain of Cygnus Support. This file is part of BFD, the Binary File Descriptor library. @@ -40,7 +40,12 @@ static const bfd_arch_info_type arch_inf N(bfd_mach_mcf5307, "m68k:5307", FALSE, &arch_info_struct[10]), N(bfd_mach_mcf5407, "m68k:5407", FALSE, &arch_info_struct[11]), N(bfd_mach_m68060, "m68k:68060", FALSE, &arch_info_struct[12]), - N(bfd_mach_mcf528x, "m68k:528x", FALSE, 0), + N(bfd_mach_mcf528x, "m68k:528x", FALSE, &arch_info_struct[13]), + N(bfd_mach_mcf521x, "m68k:521x", FALSE, &arch_info_struct[14]), + N(bfd_mach_mcf5249, "m68k:5249", FALSE, &arch_info_struct[15]), + N(bfd_mach_mcf547x, "m68k:547x", FALSE, &arch_info_struct[16]), + N(bfd_mach_mcf548x, "m68k:548x", FALSE, &arch_info_struct[17]), + N(bfd_mach_mcfv4e, "m68k:cfv4e", FALSE, 0), }; const bfd_arch_info_type bfd_m68k_arch = diff -uprN binutils-2.15.90.0.3/bfd/doc/Makefile.in binutils-2.15.91.0.1/bfd/doc/Makefile.in --- binutils-2.15.90.0.3/bfd/doc/Makefile.in 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/doc/Makefile.in 2004-05-27 11:26:02.798408956 -0700 @@ -121,8 +121,6 @@ bfd_file_ptr = @bfd_file_ptr@ bfd_libs = @bfd_libs@ bfd_machines = @bfd_machines@ bfd_ufile_ptr = @bfd_ufile_ptr@ -bfd_version = @bfd_version@ -bfd_version_string = @bfd_version_string@ bfdincludedir = @bfdincludedir@ bfdlibdir = @bfdlibdir@ l = @l@ diff -uprN binutils-2.15.90.0.3/bfd/dwarf2.c binutils-2.15.91.0.1/bfd/dwarf2.c --- binutils-2.15.90.0.3/bfd/dwarf2.c 2004-04-12 12:56:33.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/dwarf2.c 2004-05-27 11:26:02.036507483 -0700 @@ -801,10 +801,9 @@ add_line_info (struct line_info_table *t info->column = column; info->end_sequence = end_sequence; - amt = strlen (filename); - if (amt) + if (filename && filename[0]) { - info->filename = bfd_alloc (table->abfd, amt + 1); + info->filename = bfd_alloc (table->abfd, strlen (filename) + 1); if (info->filename) strcpy (info->filename, filename); } @@ -1677,7 +1676,7 @@ find_debug_info (bfd *abfd, asection *af return NULL; } -/* The DWARF2 version of find_nearest line. Return TRUE if the line +/* The DWARF2 version of find_nearest_line. Return TRUE if the line is found without error. ADDR_SIZE is the number of bytes in the initial .debug_info length field and in the abbreviation offset. You may use zero to indicate that the default value should be diff -uprN binutils-2.15.90.0.3/bfd/ecoff.c binutils-2.15.91.0.1/bfd/ecoff.c --- binutils-2.15.90.0.3/bfd/ecoff.c 2004-01-14 13:07:43.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/ecoff.c 2004-05-27 11:26:02.057504768 -0700 @@ -4526,7 +4526,6 @@ ecoff_indirect_link_order (output_bfd, i { asection *input_section; bfd *input_bfd; - struct ecoff_section_tdata *section_tdata; bfd_size_type raw_size; bfd_size_type cooked_size; bfd_byte *contents = NULL; @@ -4542,7 +4541,6 @@ ecoff_indirect_link_order (output_bfd, i input_section = link_order->u.indirect.section; input_bfd = input_section->owner; - section_tdata = ecoff_section_data (input_bfd, input_section); raw_size = input_section->_raw_size; cooked_size = input_section->_cooked_size; @@ -4560,39 +4558,24 @@ ecoff_indirect_link_order (output_bfd, i if (contents == NULL && amt != 0) goto error_return; - /* If we are relaxing, the contents may have already been read into - memory, in which case we copy them into our new buffer. We don't - simply reuse the old buffer in case cooked_size > raw_size. */ - if (section_tdata != (struct ecoff_section_tdata *) NULL - && section_tdata->contents != (bfd_byte *) NULL) - memcpy (contents, section_tdata->contents, (size_t) raw_size); - else - { - if (! bfd_get_section_contents (input_bfd, input_section, - (PTR) contents, - (file_ptr) 0, raw_size)) - goto error_return; - } + if (! bfd_get_section_contents (input_bfd, input_section, + (PTR) contents, + (file_ptr) 0, raw_size)) + goto error_return; /* Get the relocs. If we are relaxing MIPS code, they will already have been read in. Otherwise, we read them in now. */ external_reloc_size = ecoff_backend (input_bfd)->external_reloc_size; external_relocs_size = external_reloc_size * input_section->reloc_count; - if (section_tdata != (struct ecoff_section_tdata *) NULL - && section_tdata->external_relocs != NULL) - external_relocs = section_tdata->external_relocs; - else - { - external_relocs = (PTR) bfd_malloc (external_relocs_size); - if (external_relocs == NULL && external_relocs_size != 0) - goto error_return; + external_relocs = (PTR) bfd_malloc (external_relocs_size); + if (external_relocs == NULL && external_relocs_size != 0) + goto error_return; - if (bfd_seek (input_bfd, input_section->rel_filepos, SEEK_SET) != 0 - || (bfd_bread (external_relocs, external_relocs_size, input_bfd) - != external_relocs_size)) - goto error_return; - } + if (bfd_seek (input_bfd, input_section->rel_filepos, SEEK_SET) != 0 + || (bfd_bread (external_relocs, external_relocs_size, input_bfd) + != external_relocs_size)) + goto error_return; /* Relocate the section contents. */ if (! ((*ecoff_backend (input_bfd)->relocate_section) @@ -4625,14 +4608,14 @@ ecoff_indirect_link_order (output_bfd, i if (contents != NULL) free (contents); - if (external_relocs != NULL && section_tdata == NULL) + if (external_relocs != NULL) free (external_relocs); return TRUE; error_return: if (contents != NULL) free (contents); - if (external_relocs != NULL && section_tdata == NULL) + if (external_relocs != NULL) free (external_relocs); return FALSE; } diff -uprN binutils-2.15.90.0.3/bfd/ecofflink.c binutils-2.15.91.0.1/bfd/ecofflink.c --- binutils-2.15.90.0.3/bfd/ecofflink.c 2004-01-14 13:07:43.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/ecofflink.c 2004-05-27 11:26:02.060504380 -0700 @@ -800,20 +800,6 @@ bfd_ecoff_debug_accumulate (handle, outp fdr_adr = fdr.adr; - /* Adjust the FDR address for any changes that may have been - made by relaxing. */ - if (input_debug->adjust != (struct ecoff_value_adjust *) NULL) - { - struct ecoff_value_adjust *adjust; - - for (adjust = input_debug->adjust; - adjust != (struct ecoff_value_adjust *) NULL; - adjust = adjust->next) - if (fdr_adr >= adjust->start - && fdr_adr < adjust->end) - fdr.adr += adjust->adjust; - } - /* FIXME: It is conceivable that this FDR points to the .init or .fini section, in which case this will not do the right thing. */ @@ -856,19 +842,6 @@ bfd_ecoff_debug_accumulate (handle, outp case stLabel: case stProc: case stStaticProc: - if (input_debug->adjust != (struct ecoff_value_adjust *) NULL) - { - bfd_vma value; - struct ecoff_value_adjust *adjust; - - value = internal_sym.value; - for (adjust = input_debug->adjust; - adjust != (struct ecoff_value_adjust *) NULL; - adjust = adjust->next) - if (value >= adjust->start - && value < adjust->end) - internal_sym.value += adjust->adjust; - } internal_sym.value += section_adjust[internal_sym.sc]; break; @@ -978,9 +951,8 @@ bfd_ecoff_debug_accumulate (handle, outp output_symhdr->issMax += fdr.cbSs; } - if ((output_bfd->xvec->header_byteorder - == input_bfd->xvec->header_byteorder) - && input_debug->adjust == (struct ecoff_value_adjust *) NULL) + if (output_bfd->xvec->header_byteorder + == input_bfd->xvec->header_byteorder) { /* The two BFD's have the same endianness, and we don't have to adjust the PDR addresses, so simply copying the @@ -1036,23 +1008,6 @@ bfd_ecoff_debug_accumulate (handle, outp PDR pdr; (*input_swap->swap_pdr_in) (input_bfd, (PTR) in, &pdr); - - /* If we have been relaxing, we may have to adjust the - address. */ - if (input_debug->adjust != (struct ecoff_value_adjust *) NULL) - { - bfd_vma adr; - struct ecoff_value_adjust *adjust; - - adr = fdr_adr + pdr.adr; - for (adjust = input_debug->adjust; - adjust != (struct ecoff_value_adjust *) NULL; - adjust = adjust->next) - if (adr >= adjust->start - && adr < adjust->end) - pdr.adr += adjust->adjust; - } - (*output_swap->swap_pdr_out) (output_bfd, &pdr, (PTR) out); } diff -uprN binutils-2.15.90.0.3/bfd/elf-bfd.h binutils-2.15.91.0.1/bfd/elf-bfd.h --- binutils-2.15.90.0.3/bfd/elf-bfd.h 2004-04-12 12:56:33.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/elf-bfd.h 2004-05-27 11:26:02.079501923 -0700 @@ -597,7 +597,7 @@ struct elf_backend_data /* A function to convert machine dependent section header flags to BFD internal section header flags. */ bfd_boolean (*elf_backend_section_flags) - (flagword *, Elf_Internal_Shdr *); + (flagword *, const Elf_Internal_Shdr *); /* A function to handle unusual program segment types when creating BFD sections from ELF program segments. */ @@ -902,6 +902,13 @@ struct elf_backend_data (bfd *templ, bfd_vma ehdr_vma, bfd_vma *loadbasep, int (*target_read_memory) (bfd_vma vma, char *myaddr, int len)); + /* This function is used by `_bfd_elf_get_synthetic_symtab'; + see elf.c. */ + bfd_vma (*plt_sym_val) (bfd_vma, const asection *, const arelent *); + + /* Name of the PLT relocation section. */ + const char *relplt_name; + /* Alternate EM_xxxx machine codes for this backend. */ int elf_machine_alt1; int elf_machine_alt2; @@ -1204,6 +1211,9 @@ struct elf_obj_tdata /* Segment flags for the PT_GNU_STACK segment. */ unsigned int stack_flags; + /* Should the PT_GNU_RELRO segment be emitted? */ + bfd_boolean relro; + /* Symbol version definitions in external objects. */ Elf_Internal_Verdef *verdef; @@ -1361,12 +1371,16 @@ extern bfd_boolean _bfd_elf_slurp_versio (bfd *); extern bfd_boolean _bfd_elf_merge_sections (bfd *, struct bfd_link_info *); +extern bfd_boolean bfd_elf_is_group_section + (bfd *, const struct bfd_section *); extern bfd_boolean bfd_elf_discard_group (bfd *, struct bfd_section *); extern void bfd_elf_set_group_contents (bfd *, asection *, void *); extern void _bfd_elf_link_just_syms (asection *, struct bfd_link_info *); +extern bfd_boolean _bfd_elf_copy_private_header_data + (bfd *, bfd *); extern bfd_boolean _bfd_elf_copy_private_symbol_data (bfd *, asymbol *, bfd *, asymbol *); extern bfd_boolean _bfd_elf_copy_private_section_data @@ -1385,6 +1399,8 @@ extern long _bfd_elf_get_dynamic_symtab_ (bfd *); extern long _bfd_elf_canonicalize_dynamic_symtab (bfd *, asymbol **); +extern long _bfd_elf_get_synthetic_symtab + (bfd *, asymbol **, asymbol **); extern long _bfd_elf_get_reloc_upper_bound (bfd *, sec_ptr); extern long _bfd_elf_canonicalize_reloc diff -uprN binutils-2.15.90.0.3/bfd/elf-eh-frame.c binutils-2.15.91.0.1/bfd/elf-eh-frame.c --- binutils-2.15.90.0.3/bfd/elf-eh-frame.c 2004-03-03 12:24:33.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/elf-eh-frame.c 2004-05-27 11:26:02.097499596 -0700 @@ -1,5 +1,5 @@ /* .eh_frame section optimization. - Copyright 2001, 2002, 2003 Free Software Foundation, Inc. + Copyright 2001, 2002, 2003, 2004 Free Software Foundation, Inc. Written by Jakub Jelinek . This file is part of BFD, the Binary File Descriptor library. @@ -410,7 +410,7 @@ _bfd_elf_discard_section_eh_frame cie.version = *buf++; /* Cannot handle unknown versions. */ - if (cie.version != 1) + if (cie.version != 1 && cie.version != 3) goto free_no_table; if (strlen (buf) > sizeof (cie.augmentation) - 1) goto free_no_table; @@ -429,12 +429,10 @@ _bfd_elf_discard_section_eh_frame } read_uleb128 (cie.code_align, buf); read_sleb128 (cie.data_align, buf); - /* Note - in DWARF2 the return address column is an unsigned byte. - In DWARF3 it is a ULEB128. We are following DWARF3. For most - ports this will not matter as the value will be less than 128. - For the others (eg FRV, SH, MMIX, IA64) they need a fixed GCC - which conforms to the DWARF3 standard. */ - read_uleb128 (cie.ra_column, buf); + if (cie.version == 1) + cie.ra_column = *buf++; + else + read_uleb128 (cie.ra_column, buf); ENSURE_NO_RELOCS (buf); cie.lsda_encoding = DW_EH_PE_omit; cie.fde_encoding = DW_EH_PE_omit; diff -uprN binutils-2.15.90.0.3/bfd/elf-m10300.c binutils-2.15.91.0.1/bfd/elf-m10300.c --- binutils-2.15.90.0.3/bfd/elf-m10300.c 2004-04-12 12:56:33.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/elf-m10300.c 2004-05-27 11:26:02.129495458 -0700 @@ -1705,9 +1705,10 @@ mn10300_elf_relocate_section (output_bfd static bfd_boolean elf32_mn10300_finish_hash_table_entry (gen_entry, in_args) struct bfd_hash_entry *gen_entry; - PTR in_args ATTRIBUTE_UNUSED; + PTR in_args; { struct elf32_mn10300_link_hash_entry *entry; + struct bfd_link_info *link_info = (struct bfd_link_info *)in_args; unsigned int byte_count = 0; entry = (struct elf32_mn10300_link_hash_entry *) gen_entry; @@ -1721,11 +1722,16 @@ elf32_mn10300_finish_hash_table_entry (g return TRUE; /* If there are no named calls to this symbol, or there's nothing we - can move from the function itself into the "call" instruction, then - note that all "call" instructions should be converted into "calls" - instructions and return. */ + can move from the function itself into the "call" instruction, + then note that all "call" instructions should be converted into + "calls" instructions and return. If a symbol is available for + dynamic symbol resolution (overridable or overriding), avoid + custom calling conventions. */ if (entry->direct_calls == 0 - || (entry->stack_size == 0 && entry->movm_args == 0)) + || (entry->stack_size == 0 && entry->movm_args == 0) + || (elf_hash_table (link_info)->dynamic_sections_created + && ELF_ST_VISIBILITY (entry->root.other) != STV_INTERNAL + && ELF_ST_VISIBILITY (entry->root.other) != STV_HIDDEN)) { /* Make a note that we should convert "call" instructions to "calls" instructions for calls to this symbol. */ @@ -2000,6 +2006,11 @@ mn10300_elf_relax_section (abfd, sec, li sec_shndx = _bfd_elf_section_from_bfd_section (input_bfd, section); + symcount = (symtab_hdr->sh_size / sizeof (Elf32_External_Sym) + - symtab_hdr->sh_info); + hashes = elf_sym_hashes (input_bfd); + end_hashes = hashes + symcount; + /* Look at each function defined in this section and update info for that function. */ isymend = isymbuf + symtab_hdr->sh_info; @@ -2010,6 +2021,22 @@ mn10300_elf_relax_section (abfd, sec, li { struct elf_link_hash_table *elftab; bfd_size_type amt; + struct elf_link_hash_entry **lhashes = hashes; + + /* Skip a local symbol if it aliases a + global one. */ + for (; lhashes < end_hashes; lhashes++) + { + hash = (struct elf32_mn10300_link_hash_entry *) *lhashes; + if ((hash->root.root.type == bfd_link_hash_defined + || hash->root.root.type == bfd_link_hash_defweak) + && hash->root.root.u.def.section == section + && hash->root.type == STT_FUNC + && hash->root.root.u.def.value == isym->st_value) + break; + } + if (lhashes != end_hashes) + continue; if (isym->st_shndx == SHN_UNDEF) sym_sec = bfd_und_section_ptr; @@ -2047,17 +2074,13 @@ mn10300_elf_relax_section (abfd, sec, li } } - symcount = (symtab_hdr->sh_size / sizeof (Elf32_External_Sym) - - symtab_hdr->sh_info); - hashes = elf_sym_hashes (input_bfd); - end_hashes = hashes + symcount; for (; hashes < end_hashes; hashes++) { hash = (struct elf32_mn10300_link_hash_entry *) *hashes; if ((hash->root.root.type == bfd_link_hash_defined || hash->root.root.type == bfd_link_hash_defweak) && hash->root.root.u.def.section == section - && ELF_ST_TYPE (isym->st_info) == STT_FUNC) + && hash->root.type == STT_FUNC) compute_function_info (input_bfd, hash, (hash)->root.root.u.def.value, contents); @@ -2104,10 +2127,10 @@ mn10300_elf_relax_section (abfd, sec, li the final initialization steps on each. */ elf32_mn10300_link_hash_traverse (hash_table, elf32_mn10300_finish_hash_table_entry, - NULL); + link_info); elf32_mn10300_link_hash_traverse (hash_table->static_hash_table, elf32_mn10300_finish_hash_table_entry, - NULL); + link_info); /* All entries in the hash table are fully initialized. */ hash_table->flags |= MN10300_HASH_ENTRIES_INITIALIZED; diff -uprN binutils-2.15.90.0.3/bfd/elf.c binutils-2.15.91.0.1/bfd/elf.c --- binutils-2.15.90.0.3/bfd/elf.c 2004-04-12 12:56:33.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/elf.c 2004-05-27 11:26:02.145493390 -0700 @@ -613,6 +613,12 @@ setup_group (bfd *abfd, Elf_Internal_Shd } bfd_boolean +bfd_elf_is_group_section (bfd *abfd ATTRIBUTE_UNUSED, const asection *sec) +{ + return elf_next_in_group (sec) != NULL; +} + +bfd_boolean bfd_elf_discard_group (bfd *abfd ATTRIBUTE_UNUSED, asection *group) { asection *first = elf_next_in_group (group); @@ -652,6 +658,9 @@ _bfd_elf_make_section_from_shdr (bfd *ab if (newsect == NULL) return FALSE; + hdr->bfd_section = newsect; + elf_section_data (newsect)->this_hdr = *hdr; + /* Always use the real type/flags. */ elf_section_type (newsect) = hdr->sh_type; elf_section_flags (newsect) = hdr->sh_flags; @@ -798,9 +807,6 @@ _bfd_elf_make_section_from_shdr (bfd *ab } } - hdr->bfd_section = newsect; - elf_section_data (newsect)->this_hdr = *hdr; - return TRUE; } @@ -895,10 +901,31 @@ merge_sections_remove_hook (bfd *abfd AT bfd_boolean _bfd_elf_merge_sections (bfd *abfd, struct bfd_link_info *info) { + bfd *ibfd; + asection *sec; + if (!is_elf_hash_table (info->hash)) return FALSE; - if (elf_hash_table (info)->merge_info) - _bfd_merge_sections (abfd, elf_hash_table (info)->merge_info, + + for (ibfd = info->input_bfds; ibfd != NULL; ibfd = ibfd->link_next) + if ((ibfd->flags & DYNAMIC) == 0) + for (sec = ibfd->sections; sec != NULL; sec = sec->next) + if ((sec->flags & SEC_MERGE) != 0 + && !bfd_is_abs_section (sec->output_section)) + { + struct bfd_elf_section_data *secdata; + + secdata = elf_section_data (sec); + if (! _bfd_add_merge_section (abfd, + &elf_hash_table (info)->merge_info, + sec, &secdata->sec_info)) + return FALSE; + else if (secdata->sec_info) + sec->sec_info_type = ELF_INFO_TYPE_MERGE; + } + + if (elf_hash_table (info)->merge_info != NULL) + _bfd_merge_sections (abfd, info, elf_hash_table (info)->merge_info, merge_sections_remove_hook); return TRUE; } @@ -968,6 +995,7 @@ _bfd_elf_print_private_bfd_data (bfd *ab case PT_TLS: pt = "TLS"; break; case PT_GNU_EH_FRAME: pt = "EH_FRAME"; break; case PT_GNU_STACK: pt = "STACK"; break; + case PT_GNU_RELRO: pt = "RELRO"; break; default: sprintf (buf, "0x%lx", p->p_type); pt = buf; break; } fprintf (f, "%8s off 0x", pt); @@ -1945,8 +1973,10 @@ bfd_section_from_shdr (bfd *abfd, unsign hdr->bfd_section->flags |= SEC_LINK_ONCE | SEC_LINK_DUPLICATES_DISCARD; + /* We try to keep the same section order as it comes in. */ + idx += n_elt; while (--n_elt != 0) - if ((s = (++idx)->shdr->bfd_section) != NULL + if ((s = (--idx)->shdr->bfd_section) != NULL && elf_next_in_group (s) != NULL) { elf_next_in_group (hdr->bfd_section) = s; @@ -2054,6 +2084,7 @@ static struct bfd_elf_special_section co { ".gnu.version", 12, 0, SHT_GNU_versym, 0 }, { ".gnu.version_d", 14, 0, SHT_GNU_verdef, 0 }, { ".gnu.version_r", 14, 0, SHT_GNU_verneed, 0 }, + { ".note.GNU-stack",15, 0, SHT_PROGBITS, 0 }, { ".note", 5, -1, SHT_NOTE, 0 }, { ".rela", 5, -1, SHT_RELA, 0 }, { ".rel", 4, -1, SHT_REL, 0 }, @@ -2291,6 +2322,9 @@ bfd_section_from_phdr (bfd *abfd, Elf_In case PT_GNU_STACK: return _bfd_elf_make_section_from_phdr (abfd, hdr, index, "stack"); + case PT_GNU_RELRO: + return _bfd_elf_make_section_from_phdr (abfd, hdr, index, "relro"); + default: /* Check for any processor-specific program segment types. If no handler for them, default to making "segment" sections. */ @@ -2386,7 +2420,31 @@ elf_fake_sections (bfd *abfd, asection * asect->flags. */ if (this_hdr->sh_type == SHT_NULL) { - if ((asect->flags & SEC_ALLOC) != 0 + if ((asect->flags & SEC_GROUP) != 0) + { + /* We also need to mark SHF_GROUP here for relocatable + link. */ + struct bfd_link_order *l; + asection *elt; + + for (l = asect->link_order_head; l != NULL; l = l->next) + if (l->type == bfd_indirect_link_order + && (elt = elf_next_in_group (l->u.indirect.section)) != NULL) + do + { + /* The name is not important. Anything will do. */ + elf_group_name (elt->output_section) = "G"; + elf_section_flags (elt->output_section) |= SHF_GROUP; + + elt = elf_next_in_group (elt); + /* During a relocatable link, the lists are + circular. */ + } + while (elt != elf_next_in_group (l->u.indirect.section)); + + this_hdr->sh_type = SHT_GROUP; + } + else if ((asect->flags & SEC_ALLOC) != 0 && (((asect->flags & (SEC_LOAD | SEC_HAS_CONTENTS)) == 0) || (asect->flags & SEC_NEVER_LOAD) != 0)) this_hdr->sh_type = SHT_NOBITS; @@ -3514,6 +3572,21 @@ map_sections_to_segments (bfd *abfd) pm = &m->next; } + if (elf_tdata (abfd)->relro) + { + amt = sizeof (struct elf_segment_map); + m = bfd_zalloc (abfd, amt); + if (m == NULL) + goto error_return; + m->next = NULL; + m->p_type = PT_GNU_RELRO; + m->p_flags = PF_R; + m->p_flags_valid = 1; + + *pm = m; + pm = &m->next; + } + free (sections); sections = NULL; @@ -4048,6 +4121,37 @@ Error: First section in segment (%s) sta if (! m->p_paddr_valid) p->p_paddr = phdrs_paddr; } + else if (p->p_type == PT_GNU_RELRO) + { + Elf_Internal_Phdr *lp; + + for (lp = phdrs; lp < phdrs + count; ++lp) + { + if (lp->p_type == PT_LOAD + && lp->p_vaddr <= link_info->relro_end + && lp->p_vaddr >= link_info->relro_start + && lp->p_vaddr + lp->p_filesz + >= link_info->relro_end) + break; + } + + if (lp < phdrs + count + && link_info->relro_end > lp->p_vaddr) + { + p->p_vaddr = lp->p_vaddr; + p->p_paddr = lp->p_paddr; + p->p_offset = lp->p_offset; + p->p_filesz = link_info->relro_end - lp->p_vaddr; + p->p_memsz = p->p_filesz; + p->p_align = 1; + p->p_flags = (lp->p_flags & ~PF_W); + } + else + { + memset (p, 0, sizeof *p); + p->p_type = PT_NULL; + } + } } } @@ -4135,6 +4239,12 @@ get_program_header_size (bfd *abfd) ++segs; } + if (elf_tdata (abfd)->relro) + { + /* We need a PT_GNU_RELRO segment. */ + ++segs; + } + for (s = abfd->sections; s != NULL; s = s->next) { if ((s->flags & SEC_LOAD) != 0 @@ -5201,24 +5311,6 @@ _bfd_elf_copy_private_section_data (bfd || obfd->xvec->flavour != bfd_target_elf_flavour) return TRUE; - if (elf_tdata (obfd)->segment_map == NULL && elf_tdata (ibfd)->phdr != NULL) - { - asection *s; - - /* Only set up the segments if there are no more SEC_ALLOC - sections. FIXME: This won't do the right thing if objcopy is - used to remove the last SEC_ALLOC section, since objcopy - won't call this routine in that case. */ - for (s = isec->next; s != NULL; s = s->next) - if ((s->flags & SEC_ALLOC) != 0) - break; - if (s == NULL) - { - if (! copy_private_bfd_data (ibfd, obfd)) - return FALSE; - } - } - ihdr = &elf_section_data (isec)->this_hdr; ohdr = &elf_section_data (osec)->this_hdr; @@ -5241,6 +5333,29 @@ _bfd_elf_copy_private_section_data (bfd return TRUE; } +/* Copy private header information. */ + +bfd_boolean +_bfd_elf_copy_private_header_data (bfd *ibfd, bfd *obfd) +{ + if (bfd_get_flavour (ibfd) != bfd_target_elf_flavour + || bfd_get_flavour (obfd) != bfd_target_elf_flavour) + return TRUE; + + /* Copy over private BFD data if it has not already been copied. + This must be done here, rather than in the copy_private_bfd_data + entry point, because the latter is called after the section + contents have been set, which means that the program headers have + already been worked out. */ + if (elf_tdata (obfd)->segment_map == NULL && elf_tdata (ibfd)->phdr != NULL) + { + if (! copy_private_bfd_data (ibfd, obfd)) + return FALSE; + } + + return TRUE; +} + /* Copy private symbol information. If this symbol is in a section which we did not map into a BFD section, try to map the section index correctly. We use special macro definitions for the mapped @@ -7443,9 +7558,18 @@ _bfd_elf_rela_local_sym (bfd *abfd, rel->r_addend = _bfd_merged_section_offset (abfd, psec, elf_section_data (sec)->sec_info, - sym->st_value + rel->r_addend, - 0); - sec = *psec; + sym->st_value + rel->r_addend); + if (sec != *psec) + { + /* If we have changed the section, and our original section is + marked with SEC_EXCLUDE, it means that the original + SEC_MERGE section has been completely subsumed in some + other SEC_MERGE section. In this case, we need to leave + some info around for --emit-relocs. */ + if ((sec->flags & SEC_EXCLUDE) != 0) + sec->kept_section = *psec; + sec = *psec; + } rel->r_addend -= relocation; rel->r_addend += sec->output_section->vma + sec->output_offset; } @@ -7465,7 +7589,7 @@ _bfd_elf_rel_local_sym (bfd *abfd, return _bfd_merged_section_offset (abfd, psec, elf_section_data (sec)->sec_info, - sym->st_value + addend, 0); + sym->st_value + addend); } bfd_vma @@ -7513,3 +7637,79 @@ bfd_elf_bfd_from_remote_memory return (*get_elf_backend_data (templ)->elf_backend_bfd_from_remote_memory) (templ, ehdr_vma, loadbasep, target_read_memory); } + +long +_bfd_elf_get_synthetic_symtab (bfd *abfd, asymbol **dynsyms, asymbol **ret) +{ + const struct elf_backend_data *bed = get_elf_backend_data (abfd); + asection *relplt; + asymbol *s; + const char *relplt_name; + bfd_boolean (*slurp_relocs) (bfd *, asection *, asymbol **, bfd_boolean); + arelent *p; + long count, i, n; + size_t size; + Elf_Internal_Shdr *hdr; + char *names; + asection *plt; + + *ret = NULL; + if (!bed->plt_sym_val) + return 0; + + relplt_name = bed->relplt_name; + if (relplt_name == NULL) + relplt_name = bed->default_use_rela_p ? ".rela.plt" : ".rel.plt"; + relplt = bfd_get_section_by_name (abfd, relplt_name); + if (relplt == NULL) + return 0; + + hdr = &elf_section_data (relplt)->this_hdr; + if (hdr->sh_link != elf_dynsymtab (abfd) + || (hdr->sh_type != SHT_REL && hdr->sh_type != SHT_RELA)) + return 0; + + plt = bfd_get_section_by_name (abfd, ".plt"); + if (plt == NULL) + return 0; + + slurp_relocs = get_elf_backend_data (abfd)->s->slurp_reloc_table; + if (! (*slurp_relocs) (abfd, relplt, dynsyms, TRUE)) + return -1; + + count = relplt->_raw_size / hdr->sh_entsize; + size = count * sizeof (asymbol); + p = relplt->relocation; + for (i = 0; i < count; i++, s++, p++) + size += strlen ((*p->sym_ptr_ptr)->name) + sizeof ("@plt"); + + s = *ret = bfd_malloc (size); + if (s == NULL) + return -1; + + names = (char *) (s + count); + p = relplt->relocation; + n = 0; + for (i = 0; i < count; i++, s++, p++) + { + size_t len; + bfd_vma addr; + + addr = bed->plt_sym_val (i, plt, p); + if (addr == (bfd_vma) -1) + continue; + + *s = **p->sym_ptr_ptr; + s->section = plt; + s->value = addr - plt->vma; + s->name = names; + len = strlen ((*p->sym_ptr_ptr)->name); + memcpy (names, (*p->sym_ptr_ptr)->name, len); + names += len; + memcpy (names, "@plt", sizeof ("@plt")); + names += sizeof ("@plt"); + ++n; + } + + return n; +} diff -uprN binutils-2.15.90.0.3/bfd/elf32-arm.h binutils-2.15.91.0.1/bfd/elf32-arm.h --- binutils-2.15.90.0.3/bfd/elf32-arm.h 2004-04-12 12:56:33.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/elf32-arm.h 2004-05-27 11:26:02.168490416 -0700 @@ -1361,6 +1361,8 @@ elf32_arm_final_link_relocate (howto, in into the output file to be resolved at run time. */ if (info->shared && (input_section->flags & SEC_ALLOC) + && (r_type != R_ARM_REL32 + || !SYMBOL_CALLS_LOCAL (info, h)) && (h == NULL || ELF_ST_VISIBILITY (h->other) == STV_DEFAULT || h->root.type != bfd_link_hash_undefweak) @@ -2190,6 +2192,8 @@ elf32_arm_relocate_section (output_bfd, case R_ARM_PC24: case R_ARM_ABS32: case R_ARM_THM_PC22: + case R_ARM_PLT32: + if (info->shared && ( (!info->symbolic && h->dynindx != -1) @@ -2223,11 +2227,6 @@ elf32_arm_relocate_section (output_bfd, relocation = 0; break; - case R_ARM_PLT32: - if (h->plt.offset != (bfd_vma)-1) - relocation = 0; - break; - default: if (unresolved_reloc) _bfd_error_handler @@ -3041,7 +3040,8 @@ elf32_arm_check_relocs (abfd, info, sec, if (info->shared && (sec->flags & SEC_ALLOC) != 0 && ((ELF32_R_TYPE (rel->r_info) != R_ARM_PC24 - && ELF32_R_TYPE (rel->r_info) != R_ARM_PLT32) + && ELF32_R_TYPE (rel->r_info) != R_ARM_PLT32 + && ELF32_R_TYPE (rel->r_info) != R_ARM_REL32) || (h != NULL && (! info->symbolic || (h->elf_link_hash_flags @@ -4118,7 +4118,7 @@ elf32_arm_reloc_type_class (rela) } } -static bfd_boolean elf32_arm_section_flags PARAMS ((flagword *, Elf_Internal_Shdr *)); +static bfd_boolean elf32_arm_section_flags PARAMS ((flagword *, const Elf_Internal_Shdr *)); static void elf32_arm_final_write_processing PARAMS ((bfd *, bfd_boolean)); /* Set the right machine number for an Arm ELF file. */ @@ -4126,7 +4126,7 @@ static void elf32_arm_final_write static bfd_boolean elf32_arm_section_flags (flags, hdr) flagword *flags; - Elf_Internal_Shdr *hdr; + const Elf_Internal_Shdr *hdr; { if (hdr->sh_type == SHT_NOTE) *flags |= SEC_LINK_ONCE | SEC_LINK_DUPLICATES_SAME_CONTENTS; diff -uprN binutils-2.15.90.0.3/bfd/elf32-frv.c binutils-2.15.91.0.1/bfd/elf32-frv.c --- binutils-2.15.90.0.3/bfd/elf32-frv.c 2004-04-12 12:56:33.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/elf32-frv.c 2004-05-27 11:26:02.209485114 -0700 @@ -583,10 +583,12 @@ static const struct frv_reloc_map frv_re }; #endif +extern const bfd_target bfd_elf32_frvfdpic_vec; +#define IS_FDPIC(bfd) ((bfd)->xvec == &bfd_elf32_frvfdpic_vec) /* An extension of the elf hash table data structure, containing some additional FRV-specific data. */ -struct frv_elf_link_hash_table +struct frvfdpic_elf_link_hash_table { struct elf_link_hash_table elf; @@ -612,33 +614,33 @@ struct frv_elf_link_hash_table /* Get the FRV ELF linker hash table from a link_info structure. */ -#define frv_hash_table(info) \ - ((struct frv_elf_link_hash_table *) ((info)->hash)) +#define frvfdpic_hash_table(info) \ + ((struct frvfdpic_elf_link_hash_table *) ((info)->hash)) -#define frv_got_section(info) \ - (frv_hash_table (info)->sgot) -#define frv_gotrel_section(info) \ - (frv_hash_table (info)->sgotrel) -#define frv_gotfixup_section(info) \ - (frv_hash_table (info)->sgotfixup) -#define frv_plt_section(info) \ - (frv_hash_table (info)->splt) -#define frv_pltrel_section(info) \ - (frv_hash_table (info)->spltrel) -#define frv_relocs_info(info) \ - (frv_hash_table (info)->relocs_info) -#define frv_got_initial_offset(info) \ - (frv_hash_table (info)->got0) -#define frv_plt_initial_offset(info) \ - (frv_hash_table (info)->plt0) +#define frvfdpic_got_section(info) \ + (frvfdpic_hash_table (info)->sgot) +#define frvfdpic_gotrel_section(info) \ + (frvfdpic_hash_table (info)->sgotrel) +#define frvfdpic_gotfixup_section(info) \ + (frvfdpic_hash_table (info)->sgotfixup) +#define frvfdpic_plt_section(info) \ + (frvfdpic_hash_table (info)->splt) +#define frvfdpic_pltrel_section(info) \ + (frvfdpic_hash_table (info)->spltrel) +#define frvfdpic_relocs_info(info) \ + (frvfdpic_hash_table (info)->relocs_info) +#define frvfdpic_got_initial_offset(info) \ + (frvfdpic_hash_table (info)->got0) +#define frvfdpic_plt_initial_offset(info) \ + (frvfdpic_hash_table (info)->plt0) /* Create an FRV ELF linker hash table. */ static struct bfd_link_hash_table * -frv_elf_link_hash_table_create (bfd *abfd) +frvfdpic_elf_link_hash_table_create (bfd *abfd) { - struct frv_elf_link_hash_table *ret; - bfd_size_type amt = sizeof (struct frv_elf_link_hash_table); + struct frvfdpic_elf_link_hash_table *ret; + bfd_size_type amt = sizeof (struct frvfdpic_elf_link_hash_table); ret = bfd_zalloc (abfd, amt); if (ret == NULL) @@ -657,7 +659,7 @@ frv_elf_link_hash_table_create (bfd *abf /* Decide whether a reference to a symbol can be resolved locally or not. If the symbol is protected, we want the local address, but its function descriptor must be assigned by the dynamic linker. */ -#define FRV_SYM_LOCAL(INFO, H) \ +#define FRVFDPIC_SYM_LOCAL(INFO, H) \ (_bfd_elf_symbol_refs_local_p ((H), (INFO), 1) \ || ! elf_hash_table (INFO)->dynamic_sections_created \ || (/* The condition below is an ugly hack to get .scommon data to @@ -670,13 +672,13 @@ frv_elf_link_hash_table_create (bfd *abf || (H)->root.type == bfd_link_hash_defweak) \ && (H)->root.u.def.section->output_section \ && ((H)->root.u.def.section->flags & SEC_LINKER_CREATED))) -#define FRV_FUNCDESC_LOCAL(INFO, H) \ +#define FRVFDPIC_FUNCDESC_LOCAL(INFO, H) \ ((H)->dynindx == -1 || ! elf_hash_table (INFO)->dynamic_sections_created) /* This structure collects information on what kind of GOT, PLT or function descriptors are required by relocations that reference a certain symbol. */ -struct frv_pic_relocs_info +struct frvfdpic_relocs_info { /* The index of the symbol, as stored in the relocation r_info, if we have a local symbol; -1 otherwise. */ @@ -727,17 +729,17 @@ struct frv_pic_relocs_info unsigned sym:1; /* Whether we need a PLT entry for a symbol. Should be implied by something like: - (call && symndx == -1 && ! FRV_SYM_LOCAL (info, d.h)) */ + (call && symndx == -1 && ! FRVFDPIC_SYM_LOCAL (info, d.h)) */ unsigned plt:1; /* Whether a function descriptor should be created in this link unit for symbol+addend. Should be implied by something like: (plt || fdgotoff12 || fdgotofflos || fdgotofflohi || ((fd || fdgot12 || fdgotlos || fdgothilo) - && (symndx != -1 || FRV_FUNCDESC_LOCAL (info, d.h)))) */ + && (symndx != -1 || FRVFDPIC_FUNCDESC_LOCAL (info, d.h)))) */ unsigned privfd:1; /* Whether a lazy PLT entry is needed for this symbol+addend. Should be implied by something like: - (privfd && symndx == -1 && ! FRV_SYM_LOCAL (info, d.h) + (privfd && symndx == -1 && ! FRVFDPIC_SYM_LOCAL (info, d.h) && ! (info->flags & DF_BIND_NOW)) */ unsigned lazyplt:1; /* Whether we've already emitted GOT relocations and PLT entries as @@ -764,24 +766,24 @@ struct frv_pic_relocs_info bfd_vma plt_entry, lzplt_entry; }; -/* Compute a hash with the key fields of an frv_pic_relocs_info entry. */ +/* Compute a hash with the key fields of an frvfdpic_relocs_info entry. */ static hashval_t -frv_pic_relocs_info_hash (const void *entry_) +frvfdpic_relocs_info_hash (const void *entry_) { - const struct frv_pic_relocs_info *entry = entry_; + const struct frvfdpic_relocs_info *entry = entry_; return (entry->symndx == -1 ? entry->d.h->root.root.hash : entry->symndx + entry->d.abfd->id * 257) + entry->addend; } -/* Test whether the key fields of two frv_pic_relocs_info entries are +/* Test whether the key fields of two frvfdpic_relocs_info entries are identical. */ static int -frv_pic_relocs_info_eq (const void *entry1, const void *entry2) +frvfdpic_relocs_info_eq (const void *entry1, const void *entry2) { - const struct frv_pic_relocs_info *e1 = entry1; - const struct frv_pic_relocs_info *e2 = entry2; + const struct frvfdpic_relocs_info *e1 = entry1; + const struct frvfdpic_relocs_info *e2 = entry2; return e1->symndx == e2->symndx && e1->addend == e2->addend && (e1->symndx == -1 ? e1->d.h == e2->d.h : e1->d.abfd == e2->d.abfd); @@ -790,14 +792,14 @@ frv_pic_relocs_info_eq (const void *entr /* Find or create an entry in a hash table HT that matches the key fields of the given ENTRY. If it's not found, memory for a new entry is allocated in ABFD's obstack. */ -static struct frv_pic_relocs_info * -frv_pic_relocs_info_find (struct htab *ht, - bfd *abfd, - const struct frv_pic_relocs_info *entry, - enum insert_option insert) +static struct frvfdpic_relocs_info * +frvfdpic_relocs_info_find (struct htab *ht, + bfd *abfd, + const struct frvfdpic_relocs_info *entry, + enum insert_option insert) { - struct frv_pic_relocs_info **loc = - (struct frv_pic_relocs_info **) htab_find_slot (ht, entry, insert); + struct frvfdpic_relocs_info **loc = + (struct frvfdpic_relocs_info **) htab_find_slot (ht, entry, insert); if (! loc) return NULL; @@ -822,47 +824,47 @@ frv_pic_relocs_info_find (struct htab *h /* Obtain the address of the entry in HT associated with H's symbol + addend, creating a new entry if none existed. ABFD is only used for memory allocation purposes. */ -inline static struct frv_pic_relocs_info * -frv_pic_relocs_info_for_global (struct htab *ht, - bfd *abfd, - struct elf_link_hash_entry *h, - bfd_vma addend, - enum insert_option insert) +inline static struct frvfdpic_relocs_info * +frvfdpic_relocs_info_for_global (struct htab *ht, + bfd *abfd, + struct elf_link_hash_entry *h, + bfd_vma addend, + enum insert_option insert) { - struct frv_pic_relocs_info entry; + struct frvfdpic_relocs_info entry; entry.symndx = -1; entry.d.h = h; entry.addend = addend; - return frv_pic_relocs_info_find (ht, abfd, &entry, insert); + return frvfdpic_relocs_info_find (ht, abfd, &entry, insert); } /* Obtain the address of the entry in HT associated with the SYMNDXth local symbol of the input bfd ABFD, plus the addend, creating a new entry if none existed. */ -inline static struct frv_pic_relocs_info * -frv_pic_relocs_info_for_local (struct htab *ht, - bfd *abfd, - long symndx, - bfd_vma addend, - enum insert_option insert) +inline static struct frvfdpic_relocs_info * +frvfdpic_relocs_info_for_local (struct htab *ht, + bfd *abfd, + long symndx, + bfd_vma addend, + enum insert_option insert) { - struct frv_pic_relocs_info entry; + struct frvfdpic_relocs_info entry; entry.symndx = symndx; entry.d.abfd = abfd; entry.addend = addend; - return frv_pic_relocs_info_find (ht, abfd, &entry, insert); + return frvfdpic_relocs_info_find (ht, abfd, &entry, insert); } /* Merge fields set by check_relocs() of two entries that end up being mapped to the same (presumably global) symbol. */ inline static void -frv_pic_merge_early_relocs_info (struct frv_pic_relocs_info *e2, - struct frv_pic_relocs_info const *e1) +frvfdpic_pic_merge_early_relocs_info (struct frvfdpic_relocs_info *e2, + struct frvfdpic_relocs_info const *e1) { e2->got12 |= e1->got12; e2->gotlos |= e1->gotlos; @@ -879,8 +881,8 @@ frv_pic_merge_early_relocs_info (struct e2->sym |= e1->sym; #if 0 - /* These are set in _frv_count_got_plt_entries() or later, and this - function is only called in _frv_resolve_final_relocs_info(), that + /* These are set in _frvfdpic_count_got_plt_entries() or later, and this + function is only called in _frvfdpic_resolve_final_relocs_info(), that runs just before it, so we don't have to worry about the fields below. */ @@ -914,15 +916,15 @@ frv_pic_merge_early_relocs_info (struct 32767, counting from 0). All other lazy PLT entries branch to it in a single instruction. */ -#define FRV_LZPLT_BLOCK_SIZE ((bfd_vma) 8 * 65535 + 4) -#define FRV_LZPLT_RESOLV_LOC (8 * 32767) +#define FRVFDPIC_LZPLT_BLOCK_SIZE ((bfd_vma) 8 * 65535 + 4) +#define FRVFDPIC_LZPLT_RESOLV_LOC (8 * 32767) /* Add a dynamic relocation to the SRELOC section. */ inline static bfd_vma -_frv_add_dyn_reloc (bfd *output_bfd, asection *sreloc, bfd_vma offset, - int reloc_type, long dynindx, bfd_vma addend, - struct frv_pic_relocs_info *entry) +_frvfdpic_add_dyn_reloc (bfd *output_bfd, asection *sreloc, bfd_vma offset, + int reloc_type, long dynindx, bfd_vma addend, + struct frvfdpic_relocs_info *entry) { Elf_Internal_Rela outrel; bfd_vma reloc_offset; @@ -937,8 +939,18 @@ _frv_add_dyn_reloc (bfd *output_bfd, ase sreloc->contents + reloc_offset); sreloc->reloc_count++; - BFD_ASSERT (entry->dynrelocs > 0); - entry->dynrelocs--; + /* If the entry's index is zero, this relocation was probably to a + linkonce section that got discarded. We reserved a dynamic + relocation, but it was for another entry than the one we got at + the time of emitting the relocation. Unfortunately there's no + simple way for us to catch this situation, since the relocation + is cleared right before calling relocate_section, at which point + we no longer know what the relocation used to point to. */ + if (entry->symndx) + { + BFD_ASSERT (entry->dynrelocs > 0); + entry->dynrelocs--; + } return reloc_offset; } @@ -946,8 +958,8 @@ _frv_add_dyn_reloc (bfd *output_bfd, ase /* Add a fixup to the ROFIXUP section. */ static bfd_vma -_frv_add_rofixup (bfd *output_bfd, asection *rofixup, bfd_vma offset, - struct frv_pic_relocs_info *entry) +_frvfdpic_add_rofixup (bfd *output_bfd, asection *rofixup, bfd_vma offset, + struct frvfdpic_relocs_info *entry) { bfd_vma fixup_offset; @@ -962,8 +974,10 @@ _frv_add_rofixup (bfd *output_bfd, asect } rofixup->reloc_count++; - if (entry) + if (entry && entry->symndx) { + /* See discussion about symndx == 0 in _frvfdpic_add_dyn_reloc + above. */ BFD_ASSERT (entry->fixups > 0); entry->fixups--; } @@ -975,7 +989,7 @@ _frv_add_rofixup (bfd *output_bfd, asect located. */ static unsigned -_frv_osec_to_segment (bfd *output_bfd, asection *osec) +_frvfdpic_osec_to_segment (bfd *output_bfd, asection *osec) { struct elf_segment_map *m; Elf_Internal_Phdr *p; @@ -1000,9 +1014,9 @@ _frv_osec_to_segment (bfd *output_bfd, a } inline static bfd_boolean -_frv_osec_readonly_p (bfd *output_bfd, asection *osec) +_frvfdpic_osec_readonly_p (bfd *output_bfd, asection *osec) { - unsigned seg = _frv_osec_to_segment (output_bfd, osec); + unsigned seg = _frvfdpic_osec_to_segment (output_bfd, osec); return ! (elf_tdata (output_bfd)->phdr[seg].p_flags & PF_W); } @@ -1011,12 +1025,12 @@ _frv_osec_readonly_p (bfd *output_bfd, a code for PLT and lazy PLT entries. */ inline static bfd_boolean -_frv_emit_got_relocs_plt_entries (struct frv_pic_relocs_info *entry, - bfd *output_bfd, - struct bfd_link_info *info, - asection *sec, - Elf_Internal_Sym *sym, - bfd_vma addend) +_frvfdpic_emit_got_relocs_plt_entries (struct frvfdpic_relocs_info *entry, + bfd *output_bfd, + struct bfd_link_info *info, + asection *sec, + Elf_Internal_Sym *sym, + bfd_vma addend) { bfd_vma fd_lazy_rel_offset = (bfd_vma)-1; @@ -1051,7 +1065,8 @@ _frv_emit_got_relocs_plt_entries (struct /* If the symbol is dynamic but binds locally, use section+offset. */ - if (sec && (entry->symndx != -1 || FRV_SYM_LOCAL (info, entry->d.h))) + if (sec && (entry->symndx != -1 + || FRVFDPIC_SYM_LOCAL (info, entry->d.h))) { if (entry->symndx == -1) ad += entry->d.h->root.u.def.value; @@ -1068,32 +1083,36 @@ _frv_emit_got_relocs_plt_entries (struct omit the dynamic relocation as long as the symbol is local to this module. */ if (info->executable && !info->pie - && (entry->symndx != -1 || FRV_SYM_LOCAL (info, entry->d.h))) + && (entry->symndx != -1 + || FRVFDPIC_SYM_LOCAL (info, entry->d.h))) { if (sec) ad += sec->output_section->vma; if (entry->symndx != -1 || entry->d.h->root.type != bfd_link_hash_undefweak) - _frv_add_rofixup (output_bfd, frv_gotfixup_section (info), - frv_got_section (info)->output_section->vma - + frv_got_section (info)->output_offset - + frv_got_initial_offset (info) - + entry->got_entry, entry); - } - else - _frv_add_dyn_reloc (output_bfd, frv_gotrel_section (info), - _bfd_elf_section_offset - (output_bfd, info, - frv_got_section (info), - frv_got_initial_offset (info) - + entry->got_entry) - + frv_got_section (info)->output_section->vma - + frv_got_section (info)->output_offset, - R_FRV_32, idx, ad, entry); + _frvfdpic_add_rofixup (output_bfd, + frvfdpic_gotfixup_section (info), + frvfdpic_got_section (info)->output_section + ->vma + + frvfdpic_got_section (info)->output_offset + + frvfdpic_got_initial_offset (info) + + entry->got_entry, entry); + } + else + _frvfdpic_add_dyn_reloc (output_bfd, frvfdpic_gotrel_section (info), + _bfd_elf_section_offset + (output_bfd, info, + frvfdpic_got_section (info), + frvfdpic_got_initial_offset (info) + + entry->got_entry) + + frvfdpic_got_section (info) + ->output_section->vma + + frvfdpic_got_section (info)->output_offset, + R_FRV_32, idx, ad, entry); bfd_put_32 (output_bfd, ad, - frv_got_section (info)->contents - + frv_got_initial_offset (info) + frvfdpic_got_section (info)->contents + + frvfdpic_got_initial_offset (info) + entry->got_entry); } @@ -1106,7 +1125,7 @@ _frv_emit_got_relocs_plt_entries (struct if (! (entry->symndx == -1 && entry->d.h->root.type == bfd_link_hash_undefweak - && FRV_SYM_LOCAL (info, entry->d.h))) + && FRVFDPIC_SYM_LOCAL (info, entry->d.h))) { /* If the symbol is dynamic and there may be dynamic symbol resolution because we are, or are linked with, a shared @@ -1115,8 +1134,9 @@ _frv_emit_got_relocs_plt_entries (struct symbol needs a non-local function descriptor but binds locally (e.g., its visibility is protected, emit a dynamic relocation decayed to section+offset. */ - if (entry->symndx == -1 && ! FRV_FUNCDESC_LOCAL (info, entry->d.h) - && FRV_SYM_LOCAL (info, entry->d.h) + if (entry->symndx == -1 + && ! FRVFDPIC_FUNCDESC_LOCAL (info, entry->d.h) + && FRVFDPIC_SYM_LOCAL (info, entry->d.h) && !(info->executable && !info->pie)) { reloc = R_FRV_FUNCDESC; @@ -1126,7 +1146,7 @@ _frv_emit_got_relocs_plt_entries (struct + entry->d.h->root.u.def.value; } else if (entry->symndx == -1 - && ! FRV_FUNCDESC_LOCAL (info, entry->d.h)) + && ! FRVFDPIC_FUNCDESC_LOCAL (info, entry->d.h)) { reloc = R_FRV_FUNCDESC; idx = dynindx; @@ -1141,10 +1161,10 @@ _frv_emit_got_relocs_plt_entries (struct if (elf_hash_table (info)->dynamic_sections_created) BFD_ASSERT (entry->privfd); reloc = R_FRV_32; - idx = elf_section_data (frv_got_section (info) + idx = elf_section_data (frvfdpic_got_section (info) ->output_section)->dynindx; - ad = frv_got_section (info)->output_offset - + frv_got_initial_offset (info) + entry->fd_entry; + ad = frvfdpic_got_section (info)->output_offset + + frvfdpic_got_initial_offset (info) + entry->fd_entry; } /* If there is room for dynamic symbol resolution, emit the @@ -1155,30 +1175,36 @@ _frv_emit_got_relocs_plt_entries (struct of the private descriptor ourselves. */ if (info->executable && !info->pie && (entry->symndx != -1 - || FRV_FUNCDESC_LOCAL (info, entry->d.h))) + || FRVFDPIC_FUNCDESC_LOCAL (info, entry->d.h))) { - ad += frv_got_section (info)->output_section->vma; - _frv_add_rofixup (output_bfd, frv_gotfixup_section (info), - frv_got_section (info)->output_section->vma - + frv_got_section (info)->output_offset - + frv_got_initial_offset (info) - + entry->fdgot_entry, entry); + ad += frvfdpic_got_section (info)->output_section->vma; + _frvfdpic_add_rofixup (output_bfd, + frvfdpic_gotfixup_section (info), + frvfdpic_got_section (info) + ->output_section->vma + + frvfdpic_got_section (info) + ->output_offset + + frvfdpic_got_initial_offset (info) + + entry->fdgot_entry, entry); } else - _frv_add_dyn_reloc (output_bfd, frv_gotrel_section (info), - _bfd_elf_section_offset - (output_bfd, info, - frv_got_section (info), - frv_got_initial_offset (info) - + entry->fdgot_entry) - + frv_got_section (info)->output_section->vma - + frv_got_section (info)->output_offset, - reloc, idx, ad, entry); + _frvfdpic_add_dyn_reloc (output_bfd, + frvfdpic_gotrel_section (info), + _bfd_elf_section_offset + (output_bfd, info, + frvfdpic_got_section (info), + frvfdpic_got_initial_offset (info) + + entry->fdgot_entry) + + frvfdpic_got_section (info) + ->output_section->vma + + frvfdpic_got_section (info) + ->output_offset, + reloc, idx, ad, entry); } bfd_put_32 (output_bfd, ad, - frv_got_section (info)->contents - + frv_got_initial_offset (info) + frvfdpic_got_section (info)->contents + + frvfdpic_got_initial_offset (info) + entry->fdgot_entry); } @@ -1193,7 +1219,8 @@ _frv_emit_got_relocs_plt_entries (struct /* If the symbol is dynamic but binds locally, use section+offset. */ - if (sec && (entry->symndx != -1 || FRV_SYM_LOCAL (info, entry->d.h))) + if (sec && (entry->symndx != -1 + || FRVFDPIC_SYM_LOCAL (info, entry->d.h))) { if (entry->symndx == -1) ad += entry->d.h->root.u.def.value; @@ -1210,7 +1237,7 @@ _frv_emit_got_relocs_plt_entries (struct omit the dynamic relocation as long as the symbol is local to this module. */ if (info->executable && !info->pie - && (entry->symndx != -1 || FRV_SYM_LOCAL (info, entry->d.h))) + && (entry->symndx != -1 || FRVFDPIC_SYM_LOCAL (info, entry->d.h))) { if (sec) ad += sec->output_section->vma; @@ -1218,32 +1245,41 @@ _frv_emit_got_relocs_plt_entries (struct if (entry->symndx != -1 || entry->d.h->root.type != bfd_link_hash_undefweak) { - _frv_add_rofixup (output_bfd, frv_gotfixup_section (info), - frv_got_section (info)->output_section->vma - + frv_got_section (info)->output_offset - + frv_got_initial_offset (info) - + entry->fd_entry, entry); - _frv_add_rofixup (output_bfd, frv_gotfixup_section (info), - frv_got_section (info)->output_section->vma - + frv_got_section (info)->output_offset - + frv_got_initial_offset (info) - + entry->fd_entry + 4, entry); + _frvfdpic_add_rofixup (output_bfd, + frvfdpic_gotfixup_section (info), + frvfdpic_got_section (info) + ->output_section->vma + + frvfdpic_got_section (info) + ->output_offset + + frvfdpic_got_initial_offset (info) + + entry->fd_entry, entry); + _frvfdpic_add_rofixup (output_bfd, + frvfdpic_gotfixup_section (info), + frvfdpic_got_section (info) + ->output_section->vma + + frvfdpic_got_section (info) + ->output_offset + + frvfdpic_got_initial_offset (info) + + entry->fd_entry + 4, entry); } } else { ofst = - _frv_add_dyn_reloc (output_bfd, - entry->lazyplt ? frv_pltrel_section (info) - : frv_gotrel_section (info), - _bfd_elf_section_offset - (output_bfd, info, - frv_got_section (info), - frv_got_initial_offset (info) - + entry->fd_entry) - + frv_got_section (info)->output_section->vma - + frv_got_section (info)->output_offset, - R_FRV_FUNCDESC_VALUE, idx, ad, entry); + _frvfdpic_add_dyn_reloc (output_bfd, + entry->lazyplt + ? frvfdpic_pltrel_section (info) + : frvfdpic_gotrel_section (info), + _bfd_elf_section_offset + (output_bfd, info, + frvfdpic_got_section (info), + frvfdpic_got_initial_offset (info) + + entry->fd_entry) + + frvfdpic_got_section (info) + ->output_section->vma + + frvfdpic_got_section (info) + ->output_offset, + R_FRV_FUNCDESC_VALUE, idx, ad, entry); } /* If we've omitted the dynamic relocation, just emit the fixed @@ -1251,9 +1287,9 @@ _frv_emit_got_relocs_plt_entries (struct if (info->executable && !info->pie && sec && sec->output_section) { lowword = ad; - highword = frv_got_section (info)->output_section->vma - + frv_got_section (info)->output_offset - + frv_got_initial_offset (info); + highword = frvfdpic_got_section (info)->output_section->vma + + frvfdpic_got_section (info)->output_offset + + frvfdpic_got_initial_offset (info); } else if (entry->lazyplt) { @@ -1269,10 +1305,10 @@ _frv_emit_got_relocs_plt_entries (struct entry point, that must be within the memory region assigned to that section. */ lowword = entry->lzplt_entry + 4 - + frv_plt_section (info)->output_offset - + frv_plt_section (info)->output_section->vma; - highword = _frv_osec_to_segment - (output_bfd, frv_plt_section (info)->output_section); + + frvfdpic_plt_section (info)->output_offset + + frvfdpic_plt_section (info)->output_section->vma; + highword = _frvfdpic_osec_to_segment + (output_bfd, frvfdpic_plt_section (info)->output_section); } else { @@ -1284,23 +1320,25 @@ _frv_emit_got_relocs_plt_entries (struct && entry->d.h->dynindx == idx) highword = 0; else - highword = _frv_osec_to_segment (output_bfd, sec->output_section); + highword = _frvfdpic_osec_to_segment + (output_bfd, sec->output_section); } bfd_put_32 (output_bfd, lowword, - frv_got_section (info)->contents - + frv_got_initial_offset (info) + frvfdpic_got_section (info)->contents + + frvfdpic_got_initial_offset (info) + entry->fd_entry); bfd_put_32 (output_bfd, highword, - frv_got_section (info)->contents - + frv_got_initial_offset (info) + frvfdpic_got_section (info)->contents + + frvfdpic_got_initial_offset (info) + entry->fd_entry + 4); } /* Generate code for the PLT entry. */ if (entry->plt_entry != (bfd_vma) -1) { - bfd_byte *plt_code = frv_plt_section (info)->contents + entry->plt_entry; + bfd_byte *plt_code = frvfdpic_plt_section (info)->contents + + entry->plt_entry; BFD_ASSERT (entry->fd_entry); @@ -1353,17 +1391,17 @@ _frv_emit_got_relocs_plt_entries (struct /* Generate code for the lazy PLT entry. */ if (entry->lzplt_entry != (bfd_vma) -1) { - bfd_byte *lzplt_code = frv_plt_section (info)->contents + bfd_byte *lzplt_code = frvfdpic_plt_section (info)->contents + entry->lzplt_entry; bfd_vma resolverStub_addr; bfd_put_32 (output_bfd, fd_lazy_rel_offset, lzplt_code); lzplt_code += 4; - resolverStub_addr = entry->lzplt_entry / FRV_LZPLT_BLOCK_SIZE - * FRV_LZPLT_BLOCK_SIZE + FRV_LZPLT_RESOLV_LOC; - if (resolverStub_addr >= frv_plt_initial_offset (info)) - resolverStub_addr = frv_plt_initial_offset (info) - 12; + resolverStub_addr = entry->lzplt_entry / FRVFDPIC_LZPLT_BLOCK_SIZE + * FRVFDPIC_LZPLT_BLOCK_SIZE + FRVFDPIC_LZPLT_RESOLV_LOC; + if (resolverStub_addr >= frvfdpic_plt_initial_offset (info)) + resolverStub_addr = frvfdpic_plt_initial_offset (info) - 12; if (entry->lzplt_entry == resolverStub_addr) { @@ -1767,8 +1805,8 @@ frv_info_to_howto_rela (abfd, cache_ptr, /* Set the howto pointer for an FRV ELF REL reloc. */ static void -frv_info_to_howto_rel (bfd *abfd ATTRIBUTE_UNUSED, - arelent *cache_ptr, Elf_Internal_Rela *dst) +frvfdpic_info_to_howto_rel (bfd *abfd ATTRIBUTE_UNUSED, + arelent *cache_ptr, Elf_Internal_Rela *dst) { unsigned int r_type; @@ -1869,24 +1907,24 @@ elf32_frv_relocate_section (output_bfd, sym_hashes = elf_sym_hashes (input_bfd); relend = relocs + input_section->reloc_count; - isec_segment = _frv_osec_to_segment (output_bfd, - input_section->output_section); - if (frv_got_section (info)) - got_segment = _frv_osec_to_segment (output_bfd, - frv_got_section (info) - ->output_section); + isec_segment = _frvfdpic_osec_to_segment (output_bfd, + input_section->output_section); + if (IS_FDPIC (output_bfd) && frvfdpic_got_section (info)) + got_segment = _frvfdpic_osec_to_segment (output_bfd, + frvfdpic_got_section (info) + ->output_section); else got_segment = -1; - if (frv_gotfixup_section (info)) - gprel_segment = _frv_osec_to_segment (output_bfd, - frv_gotfixup_section (info) - ->output_section); + if (IS_FDPIC (output_bfd) && frvfdpic_gotfixup_section (info)) + gprel_segment = _frvfdpic_osec_to_segment (output_bfd, + frvfdpic_gotfixup_section (info) + ->output_section); else gprel_segment = -1; - if (elf_hash_table (info)->dynamic_sections_created) - plt_segment = _frv_osec_to_segment (output_bfd, - frv_plt_section (info) - ->output_section); + if (IS_FDPIC (output_bfd) && elf_hash_table (info)->dynamic_sections_created) + plt_segment = _frvfdpic_osec_to_segment (output_bfd, + frvfdpic_plt_section (info) + ->output_section); else plt_segment = -1; @@ -1902,7 +1940,7 @@ elf32_frv_relocate_section (output_bfd, const char * name = NULL; int r_type; asection *osec; - struct frv_pic_relocs_info *picrel; + struct frvfdpic_relocs_info *picrel; bfd_vma orig_addend = rel->r_addend; r_type = ELF32_R_TYPE (rel->r_info); @@ -1940,7 +1978,7 @@ elf32_frv_relocate_section (output_bfd, if ((h->root.type == bfd_link_hash_defined || h->root.type == bfd_link_hash_defweak) - && ! FRV_SYM_LOCAL (info, h)) + && ! FRVFDPIC_SYM_LOCAL (info, h)) { sec = NULL; relocation = 0; @@ -1978,6 +2016,9 @@ elf32_frv_relocate_section (output_bfd, { case R_FRV_LABEL24: case R_FRV_32: + if (! IS_FDPIC (output_bfd)) + goto non_fdpic; + case R_FRV_GOT12: case R_FRV_GOTHI: case R_FRV_GOTLO: @@ -1993,25 +2034,27 @@ elf32_frv_relocate_section (output_bfd, case R_FRV_FUNCDESC: case R_FRV_FUNCDESC_VALUE: if (h != NULL) - picrel = frv_pic_relocs_info_for_global (frv_relocs_info (info), - input_bfd, h, - orig_addend, INSERT); + picrel = frvfdpic_relocs_info_for_global (frvfdpic_relocs_info + (info), input_bfd, h, + orig_addend, INSERT); else /* In order to find the entry we created before, we must use the original addend, not the one that may have been modified by _bfd_elf_rela_local_sym(). */ - picrel = frv_pic_relocs_info_for_local (frv_relocs_info (info), - input_bfd, r_symndx, - orig_addend, INSERT); + picrel = frvfdpic_relocs_info_for_local (frvfdpic_relocs_info + (info), input_bfd, r_symndx, + orig_addend, INSERT); if (! picrel) return FALSE; - if (!_frv_emit_got_relocs_plt_entries (picrel, output_bfd, info, - osec, sym, rel->r_addend)) + if (!_frvfdpic_emit_got_relocs_plt_entries (picrel, output_bfd, info, + osec, sym, + rel->r_addend)) { - info->callbacks->warning - (info, _("Dynamic relocation references symbol with nonzero addend"), - name, input_bfd, input_section, rel->r_offset); + (*_bfd_error_handler) + (_("%s: relocation at `%s+0x%x' references symbol `%s' with nonzero addend"), + bfd_archive_filename (input_bfd), input_section->name, + rel->r_offset, name); return FALSE; } @@ -2019,8 +2062,9 @@ elf32_frv_relocate_section (output_bfd, break; default: + non_fdpic: picrel = NULL; - if (h && ! FRV_SYM_LOCAL (info, h)) + if (h && ! FRVFDPIC_SYM_LOCAL (info, h)) { info->callbacks->warning (info, _("relocation references symbol not defined in the module"), @@ -2034,10 +2078,12 @@ elf32_frv_relocate_section (output_bfd, { case R_FRV_LABEL24: check_segment[0] = isec_segment; - if (picrel->plt) + if (! IS_FDPIC (output_bfd)) + check_segment[1] = isec_segment; + else if (picrel->plt) { - relocation = frv_plt_section (info)->output_section->vma - + frv_plt_section (info)->output_offset + relocation = frvfdpic_plt_section (info)->output_section->vma + + frvfdpic_plt_section (info)->output_offset + picrel->plt_entry; check_segment[1] = plt_segment; } @@ -2050,7 +2096,7 @@ elf32_frv_relocate_section (output_bfd, check_segment[1] = check_segment[0]; else check_segment[1] = sec - ? _frv_osec_to_segment (output_bfd, sec->output_section) + ? _frvfdpic_osec_to_segment (output_bfd, sec->output_section) : (unsigned)-1; break; @@ -2071,12 +2117,12 @@ elf32_frv_relocate_section (output_bfd, case R_FRV_GOTOFFHI: case R_FRV_GOTOFF12: case R_FRV_GOTOFFLO: - relocation -= frv_got_section (info)->output_section->vma - + frv_got_section (info)->output_offset - + frv_got_initial_offset (info); + relocation -= frvfdpic_got_section (info)->output_section->vma + + frvfdpic_got_section (info)->output_offset + + frvfdpic_got_initial_offset (info); check_segment[0] = got_segment; check_segment[1] = sec - ? _frv_osec_to_segment (output_bfd, sec->output_section) + ? _frvfdpic_osec_to_segment (output_bfd, sec->output_section) : (unsigned)-1; break; @@ -2093,7 +2139,7 @@ elf32_frv_relocate_section (output_bfd, bfd_vma addend = rel->r_addend; if (! (h && h->root.type == bfd_link_hash_undefweak - && FRV_SYM_LOCAL (info, h))) + && FRVFDPIC_SYM_LOCAL (info, h))) { /* If the symbol is dynamic and there may be dynamic symbol resolution because we are or are linked with a @@ -2103,8 +2149,8 @@ elf32_frv_relocate_section (output_bfd, descriptor but binds locally (e.g., its visibility is protected, emit a dynamic relocation decayed to section+offset. */ - if (h && ! FRV_FUNCDESC_LOCAL (info, h) - && FRV_SYM_LOCAL (info, h) + if (h && ! FRVFDPIC_FUNCDESC_LOCAL (info, h) + && FRVFDPIC_SYM_LOCAL (info, h) && !(info->executable && !info->pie)) { dynindx = elf_section_data (h->root.u.def.section @@ -2112,7 +2158,7 @@ elf32_frv_relocate_section (output_bfd, addend += h->root.u.def.section->output_offset + h->root.u.def.value; } - else if (h && ! FRV_FUNCDESC_LOCAL (info, h)) + else if (h && ! FRVFDPIC_FUNCDESC_LOCAL (info, h)) { if (addend) { @@ -2129,10 +2175,10 @@ elf32_frv_relocate_section (output_bfd, descriptor, so reference it directly. */ BFD_ASSERT (picrel->privfd); r_type = R_FRV_32; - dynindx = elf_section_data (frv_got_section (info) + dynindx = elf_section_data (frvfdpic_got_section (info) ->output_section)->dynindx; - addend = frv_got_section (info)->output_offset - + frv_got_initial_offset (info) + addend = frvfdpic_got_section (info)->output_offset + + frvfdpic_got_initial_offset (info) + picrel->fd_entry; } @@ -2143,15 +2189,16 @@ elf32_frv_relocate_section (output_bfd, be zero, which means we can and should compute the address of the private descriptor ourselves. */ if (info->executable && !info->pie - && (!h || FRV_FUNCDESC_LOCAL (info, h))) + && (!h || FRVFDPIC_FUNCDESC_LOCAL (info, h))) { - addend += frv_got_section (info)->output_section->vma; + addend += frvfdpic_got_section (info)->output_section->vma; if ((bfd_get_section_flags (output_bfd, input_section->output_section) & (SEC_ALLOC | SEC_LOAD)) == (SEC_ALLOC | SEC_LOAD)) { - if (_frv_osec_readonly_p (output_bfd, - input_section->output_section)) + if (_frvfdpic_osec_readonly_p (output_bfd, + input_section + ->output_section)) { info->callbacks->warning (info, @@ -2159,22 +2206,25 @@ elf32_frv_relocate_section (output_bfd, name, input_bfd, input_section, rel->r_offset); return FALSE; } - _frv_add_rofixup (output_bfd, - frv_gotfixup_section (info), - _bfd_elf_section_offset - (output_bfd, info, - input_section, rel->r_offset) - + input_section->output_section->vma - + input_section->output_offset, - picrel); + _frvfdpic_add_rofixup (output_bfd, + frvfdpic_gotfixup_section + (info), + _bfd_elf_section_offset + (output_bfd, info, + input_section, rel->r_offset) + + input_section + ->output_section->vma + + input_section->output_offset, + picrel); } } else if ((bfd_get_section_flags (output_bfd, input_section->output_section) & (SEC_ALLOC | SEC_LOAD)) == (SEC_ALLOC | SEC_LOAD)) { - if (_frv_osec_readonly_p (output_bfd, - input_section->output_section)) + if (_frvfdpic_osec_readonly_p (output_bfd, + input_section + ->output_section)) { info->callbacks->warning (info, @@ -2182,14 +2232,18 @@ elf32_frv_relocate_section (output_bfd, name, input_bfd, input_section, rel->r_offset); return FALSE; } - _frv_add_dyn_reloc (output_bfd, frv_gotrel_section (info), - _bfd_elf_section_offset - (output_bfd, info, - input_section, rel->r_offset) - + input_section->output_section->vma - + input_section->output_offset, - r_type, dynindx, addend, picrel); + _frvfdpic_add_dyn_reloc (output_bfd, + frvfdpic_gotrel_section (info), + _bfd_elf_section_offset + (output_bfd, info, + input_section, rel->r_offset) + + input_section + ->output_section->vma + + input_section->output_offset, + r_type, dynindx, addend, picrel); } + else + addend += frvfdpic_got_section (info)->output_section->vma; } /* We want the addend in-place because dynamic @@ -2201,6 +2255,12 @@ elf32_frv_relocate_section (output_bfd, break; case R_FRV_32: + if (! IS_FDPIC (output_bfd)) + { + check_segment[0] = check_segment[1] = -1; + break; + } + /* Fall through. */ case R_FRV_FUNCDESC_VALUE: { int dynindx; @@ -2208,7 +2268,7 @@ elf32_frv_relocate_section (output_bfd, /* If the symbol is dynamic but binds locally, use section+offset. */ - if (h && ! FRV_SYM_LOCAL (info, h)) + if (h && ! FRVFDPIC_SYM_LOCAL (info, h)) { if (addend && r_type == R_FRV_FUNCDESC_VALUE) { @@ -2240,17 +2300,18 @@ elf32_frv_relocate_section (output_bfd, is defined in the current link unit (which is implied by its output section not being NULL). */ if (info->executable && !info->pie - && (!h || FRV_SYM_LOCAL (info, h))) + && (!h || FRVFDPIC_SYM_LOCAL (info, h))) { if (osec) addend += osec->output_section->vma; - if ((elf_elfheader (input_bfd)->e_flags & EF_FRV_FDPIC) + if (IS_FDPIC (input_bfd) && (bfd_get_section_flags (output_bfd, input_section->output_section) & (SEC_ALLOC | SEC_LOAD)) == (SEC_ALLOC | SEC_LOAD)) { - if (_frv_osec_readonly_p (output_bfd, - input_section->output_section)) + if (_frvfdpic_osec_readonly_p (output_bfd, + input_section + ->output_section)) { info->callbacks->warning (info, @@ -2260,18 +2321,20 @@ elf32_frv_relocate_section (output_bfd, } if (!h || h->root.type != bfd_link_hash_undefweak) { - _frv_add_rofixup (output_bfd, - frv_gotfixup_section (info), - _bfd_elf_section_offset - (output_bfd, info, - input_section, rel->r_offset) - + input_section->output_section->vma - + input_section->output_offset, - picrel); + _frvfdpic_add_rofixup (output_bfd, + frvfdpic_gotfixup_section + (info), + _bfd_elf_section_offset + (output_bfd, info, + input_section, rel->r_offset) + + input_section + ->output_section->vma + + input_section->output_offset, + picrel); if (r_type == R_FRV_FUNCDESC_VALUE) - _frv_add_rofixup + _frvfdpic_add_rofixup (output_bfd, - frv_gotfixup_section (info), + frvfdpic_gotfixup_section (info), _bfd_elf_section_offset (output_bfd, info, input_section, rel->r_offset) @@ -2286,8 +2349,9 @@ elf32_frv_relocate_section (output_bfd, input_section->output_section) & (SEC_ALLOC | SEC_LOAD)) == (SEC_ALLOC | SEC_LOAD)) { - if (_frv_osec_readonly_p (output_bfd, - input_section->output_section)) + if (_frvfdpic_osec_readonly_p (output_bfd, + input_section + ->output_section)) { info->callbacks->warning (info, @@ -2295,14 +2359,18 @@ elf32_frv_relocate_section (output_bfd, name, input_bfd, input_section, rel->r_offset); return FALSE; } - _frv_add_dyn_reloc (output_bfd, frv_gotrel_section (info), - _bfd_elf_section_offset - (output_bfd, info, - input_section, rel->r_offset) - + input_section->output_section->vma - + input_section->output_offset, - r_type, dynindx, addend, picrel); + _frvfdpic_add_dyn_reloc (output_bfd, + frvfdpic_gotrel_section (info), + _bfd_elf_section_offset + (output_bfd, info, + input_section, rel->r_offset) + + input_section + ->output_section->vma + + input_section->output_offset, + r_type, dynindx, addend, picrel); } + else if (osec) + addend += osec->output_section->vma; /* We want the addend in-place because dynamic relocations are REL. Setting relocation to it should arrange for it to be installed. */ @@ -2315,11 +2383,11 @@ elf32_frv_relocate_section (output_bfd, the fixed addresses of the symbol and of the local GOT base offset. */ if (info->executable && !info->pie - && (!h || FRV_SYM_LOCAL (info, h))) + && (!h || FRVFDPIC_SYM_LOCAL (info, h))) bfd_put_32 (output_bfd, - frv_got_section (info)->output_section->vma - + frv_got_section (info)->output_offset - + frv_got_initial_offset (info), + frvfdpic_got_section (info)->output_section->vma + + frvfdpic_got_section (info)->output_offset + + frvfdpic_got_initial_offset (info), contents + rel->r_offset + 4); else /* A function descriptor used for lazy or local @@ -2329,10 +2397,11 @@ elf32_frv_relocate_section (output_bfd, contains the offset of the lazy PLT entry entry point into that section. */ bfd_put_32 (output_bfd, - h && ! FRV_SYM_LOCAL (info, h) + h && ! FRVFDPIC_SYM_LOCAL (info, h) ? 0 - : _frv_osec_to_segment (output_bfd, - sec->output_section), + : _frvfdpic_osec_to_segment (output_bfd, + sec + ->output_section), contents + rel->r_offset + 4); } } @@ -2346,22 +2415,22 @@ elf32_frv_relocate_section (output_bfd, case R_FRV_GPRELLO: check_segment[0] = gprel_segment; check_segment[1] = sec - ? _frv_osec_to_segment (output_bfd, sec->output_section) + ? _frvfdpic_osec_to_segment (output_bfd, sec->output_section) : (unsigned)-1; break; default: check_segment[0] = isec_segment; check_segment[1] = sec - ? _frv_osec_to_segment (output_bfd, sec->output_section) + ? _frvfdpic_osec_to_segment (output_bfd, sec->output_section) : (unsigned)-1; break; } - if (check_segment[0] != check_segment[1] - && (elf_elfheader (output_bfd)->e_flags & EF_FRV_FDPIC)) + if (check_segment[0] != check_segment[1] && IS_FDPIC (output_bfd)) { -#if 1 +#if 1 /* If you take this out, remove the #error from fdpic-static-6.d + in the ld testsuite. */ /* This helps catch problems in GCC while we can't do more than static linking. The idea is to test whether the input file basename is crt0.o only once. */ @@ -2418,7 +2487,7 @@ elf32_frv_relocate_section (output_bfd, switch (r_type) { case R_FRV_LABEL24: - if (! picrel->plt) + if (! IS_FDPIC (output_bfd) || ! picrel->plt) break; /* Fall through. */ @@ -2615,7 +2684,8 @@ elf32_frv_add_symbol_hook (abfd, info, s return TRUE; } -/* Create a .got section, as well as its additional info field. This + +/* Create a .got section, as well as its additional info field. This is almost entirely copied from elflink.c:_bfd_elf_create_got_section(). */ @@ -2628,6 +2698,7 @@ _frv_create_got_section (bfd *abfd, stru struct bfd_link_hash_entry *bh; const struct elf_backend_data *bed = get_elf_backend_data (abfd); int ptralign; + int offset; /* This function may be called more than once. */ s = bfd_get_section_by_name (abfd, ".got"); @@ -2687,36 +2758,46 @@ _frv_create_got_section (bfd *abfd, stru /* This is the machine-specific part. Create and initialize section data for the got. */ - frv_got_section (info) = s; - frv_relocs_info (info) = htab_try_create (1, frv_pic_relocs_info_hash, - frv_pic_relocs_info_eq, - (htab_del) NULL); - if (! frv_relocs_info (info)) - return FALSE; + if (IS_FDPIC (abfd)) + { + frvfdpic_got_section (info) = s; + frvfdpic_relocs_info (info) = htab_try_create (1, frvfdpic_relocs_info_hash, + frvfdpic_relocs_info_eq, + (htab_del) NULL); + if (! frvfdpic_relocs_info (info)) + return FALSE; - s = bfd_make_section (abfd, ".rel.got"); - if (s == NULL - || ! bfd_set_section_flags (abfd, s, (flags | SEC_READONLY)) - || ! bfd_set_section_alignment (abfd, s, 2)) - return FALSE; + s = bfd_make_section (abfd, ".rel.got"); + if (s == NULL + || ! bfd_set_section_flags (abfd, s, (flags | SEC_READONLY)) + || ! bfd_set_section_alignment (abfd, s, 2)) + return FALSE; - frv_gotrel_section (info) = s; + frvfdpic_gotrel_section (info) = s; - /* Machine-specific. */ - s = bfd_make_section (abfd, ".rofixup"); - if (s == NULL - || ! bfd_set_section_flags (abfd, s, (flags | SEC_READONLY)) - || ! bfd_set_section_alignment (abfd, s, 2)) - return FALSE; + /* Machine-specific. */ + s = bfd_make_section (abfd, ".rofixup"); + if (s == NULL + || ! bfd_set_section_flags (abfd, s, (flags | SEC_READONLY)) + || ! bfd_set_section_alignment (abfd, s, 2)) + return FALSE; - frv_gotfixup_section (info) = s; + frvfdpic_gotfixup_section (info) = s; + offset = -2048; + flags = BSF_GLOBAL; + } + else + { + offset = 2048; + flags = BSF_GLOBAL | BSF_WEAK; + } - /* Define _gp in .rofixup, for FDPIC. If it turns out that - we're linking with a different linker script, the linker script - will override it. */ + /* Define _gp in .rofixup, for FDPIC, or .got otherwise. If it + turns out that we're linking with a different linker script, the + linker script will override it. */ bh = NULL; if (!(_bfd_generic_link_add_one_symbol - (info, abfd, "_gp", BSF_GLOBAL, s, -2048, (const char *) NULL, FALSE, + (info, abfd, "_gp", flags, s, offset, (const char *) NULL, FALSE, bed->collect, &bh))) return FALSE; h = (struct elf_link_hash_entry *) bh; @@ -2724,9 +2805,9 @@ _frv_create_got_section (bfd *abfd, stru h->type = STT_OBJECT; /* Machine-specific: we want the symbol for executables as well. */ - if (! bfd_elf_link_record_dynamic_symbol (info, h)) + if (IS_FDPIC (abfd) && ! bfd_elf_link_record_dynamic_symbol (info, h)) return FALSE; - + return TRUE; } @@ -2734,7 +2815,7 @@ _frv_create_got_section (bfd *abfd, stru the link hash table point to them. */ static bfd_boolean -elf32_frv_create_dynamic_sections (bfd *abfd, struct bfd_link_info *info) +elf32_frvfdpic_create_dynamic_sections (bfd *abfd, struct bfd_link_info *info) { /* This is mostly copied from elflink.c:_bfd_elf_create_dynamic_sections(). */ @@ -2761,7 +2842,7 @@ elf32_frv_create_dynamic_sections (bfd * || ! bfd_set_section_alignment (abfd, s, bed->plt_alignment)) return FALSE; /* FRV-specific: remember it. */ - frv_plt_section (info) = s; + frvfdpic_plt_section (info) = s; if (bed->want_plt_sym) { @@ -2790,16 +2871,17 @@ elf32_frv_create_dynamic_sections (bfd * || ! bfd_set_section_alignment (abfd, s, bed->s->log_file_align)) return FALSE; /* FRV-specific: remember it. */ - frv_pltrel_section (info) = s; + frvfdpic_pltrel_section (info) = s; /* FRV-specific: we want to create the GOT in the FRV way. */ if (! _frv_create_got_section (abfd, info)) return FALSE; /* FRV-specific: make sure we created everything we wanted. */ - BFD_ASSERT (frv_got_section (info) && frv_gotrel_section (info) - && frv_gotfixup_section (info) - && frv_plt_section (info) && frv_pltrel_section (info)); + BFD_ASSERT (frvfdpic_got_section (info) && frvfdpic_gotrel_section (info) + && frvfdpic_gotfixup_section (info) + && frvfdpic_plt_section (info) + && frvfdpic_pltrel_section (info)); if (bed->want_dynbss) { @@ -2849,7 +2931,7 @@ elf32_frv_create_dynamic_sections (bfd * /* This structure is used to collect the number of entries present in each addressable range of the got. */ -struct _frv_dynamic_got_info +struct _frvfdpic_dynamic_got_info { /* Several bits of information about the current link. */ struct bfd_link_info *info; @@ -2877,10 +2959,10 @@ struct _frv_dynamic_got_info private function descriptors taking two words. */ static int -_frv_count_got_plt_entries (void **entryp, void *dinfo_) +_frvfdpic_count_got_plt_entries (void **entryp, void *dinfo_) { - struct frv_pic_relocs_info *entry = *entryp; - struct _frv_dynamic_got_info *dinfo = dinfo_; + struct frvfdpic_relocs_info *entry = *entryp; + struct _frvfdpic_dynamic_got_info *dinfo = dinfo_; unsigned relocs = 0, fixups = 0; /* Allocate space for a GOT entry pointing to the symbol. */ @@ -2909,15 +2991,15 @@ _frv_count_got_plt_entries (void **entry /* Decide whether we need a PLT entry, a function descriptor in the GOT, and a lazy PLT entry for this symbol. */ entry->plt = entry->call - && entry->symndx == -1 && ! FRV_SYM_LOCAL (dinfo->info, entry->d.h) + && entry->symndx == -1 && ! FRVFDPIC_SYM_LOCAL (dinfo->info, entry->d.h) && elf_hash_table (dinfo->info)->dynamic_sections_created; entry->privfd = entry->plt || entry->fdgoff12 || entry->fdgofflos || entry->fdgoffhilo || ((entry->fd || entry->fdgot12 || entry->fdgotlos || entry->fdgothilo) && (entry->symndx != -1 - || FRV_FUNCDESC_LOCAL (dinfo->info, entry->d.h))); + || FRVFDPIC_FUNCDESC_LOCAL (dinfo->info, entry->d.h))); entry->lazyplt = entry->privfd - && entry->symndx == -1 && ! FRV_SYM_LOCAL (dinfo->info, entry->d.h) + && entry->symndx == -1 && ! FRVFDPIC_SYM_LOCAL (dinfo->info, entry->d.h) && ! (dinfo->info->flags & DF_BIND_NOW) && elf_hash_table (dinfo->info)->dynamic_sections_created; @@ -2941,7 +3023,7 @@ _frv_count_got_plt_entries (void **entry relocs = entry->relocs32 + entry->relocsfd + entry->relocsfdv; else { - if (entry->symndx != -1 || FRV_SYM_LOCAL (dinfo->info, entry->d.h)) + if (entry->symndx != -1 || FRVFDPIC_SYM_LOCAL (dinfo->info, entry->d.h)) { if (entry->symndx != -1 || entry->d.h->root.type != bfd_link_hash_undefweak) @@ -2950,7 +3032,8 @@ _frv_count_got_plt_entries (void **entry else relocs += entry->relocs32 + entry->relocsfdv; - if (entry->symndx != -1 || FRV_FUNCDESC_LOCAL (dinfo->info, entry->d.h)) + if (entry->symndx != -1 + || FRVFDPIC_FUNCDESC_LOCAL (dinfo->info, entry->d.h)) { if (entry->symndx != -1 || entry->d.h->root.type != bfd_link_hash_undefweak) @@ -2971,10 +3054,10 @@ _frv_count_got_plt_entries (void **entry /* This structure is used to assign offsets to got entries, function descriptors, plt entries and lazy plt entries. */ -struct _frv_dynamic_got_plt_info +struct _frvfdpic_dynamic_got_plt_info { - /* Summary information collected with _frv_count_got_plt_entries. */ - struct _frv_dynamic_got_info g; + /* Summary information collected with _frvfdpic_count_got_plt_entries. */ + struct _frvfdpic_dynamic_got_info g; /* For each addressable range, we record a MAX (positive) and MIN (negative) value. CUR is used to assign got entries, and it's @@ -2990,7 +3073,7 @@ struct _frv_dynamic_got_plt_info descriptor is chosen. FDPLT indicates the number of remaining slots that can be used for function descriptors used only by PLT entries. */ - struct _frv_dynamic_got_alloc_data + struct _frvfdpic_dynamic_got_alloc_data { bfd_signed_vma max, cur, odd, fdcur, min; bfd_vma fdplt; @@ -3008,14 +3091,14 @@ struct _frv_dynamic_got_plt_info descriptors. */ inline static bfd_signed_vma -_frv_compute_got_alloc_data (struct _frv_dynamic_got_alloc_data *gad, - bfd_signed_vma fdcur, - bfd_signed_vma odd, - bfd_signed_vma cur, - bfd_vma got, - bfd_vma fd, - bfd_vma fdplt, - bfd_vma wrap) +_frvfdpic_compute_got_alloc_data (struct _frvfdpic_dynamic_got_alloc_data *gad, + bfd_signed_vma fdcur, + bfd_signed_vma odd, + bfd_signed_vma cur, + bfd_vma got, + bfd_vma fd, + bfd_vma fdplt, + bfd_vma wrap) { bfd_signed_vma wrapmin = -wrap; @@ -3109,7 +3192,7 @@ _frv_compute_got_alloc_data (struct _frv if (odd > gad->max) odd = gad->min + odd - gad->max; - /* _frv_get_got_entry() below will always wrap gad->cur if needed + /* _frvfdpic_get_got_entry() below will always wrap gad->cur if needed before returning, so do it here too. This guarantees that, should cur and fdcur meet at the wrap point, they'll both be equal to min. */ @@ -3123,7 +3206,7 @@ _frv_compute_got_alloc_data (struct _frv data for a range. */ inline static bfd_signed_vma -_frv_get_got_entry (struct _frv_dynamic_got_alloc_data *gad) +_frvfdpic_get_got_entry (struct _frvfdpic_dynamic_got_alloc_data *gad) { bfd_signed_vma ret; @@ -3152,7 +3235,7 @@ _frv_get_got_entry (struct _frv_dynamic_ GOT, given the allocation data for a range. */ inline static bfd_signed_vma -_frv_get_fd_entry (struct _frv_dynamic_got_alloc_data *gad) +_frvfdpic_get_fd_entry (struct _frvfdpic_dynamic_got_alloc_data *gad) { /* If we're at the bottom, wrap around, and only then allocate the next pair of words. */ @@ -3165,46 +3248,46 @@ _frv_get_fd_entry (struct _frv_dynamic_g Doing everything in a single pass is tricky. */ static int -_frv_assign_got_entries (void **entryp, void *info_) +_frvfdpic_assign_got_entries (void **entryp, void *info_) { - struct frv_pic_relocs_info *entry = *entryp; - struct _frv_dynamic_got_plt_info *dinfo = info_; + struct frvfdpic_relocs_info *entry = *entryp; + struct _frvfdpic_dynamic_got_plt_info *dinfo = info_; if (entry->got12) - entry->got_entry = _frv_get_got_entry (&dinfo->got12); + entry->got_entry = _frvfdpic_get_got_entry (&dinfo->got12); else if (entry->gotlos) - entry->got_entry = _frv_get_got_entry (&dinfo->gotlos); + entry->got_entry = _frvfdpic_get_got_entry (&dinfo->gotlos); else if (entry->gothilo) - entry->got_entry = _frv_get_got_entry (&dinfo->gothilo); + entry->got_entry = _frvfdpic_get_got_entry (&dinfo->gothilo); if (entry->fdgot12) - entry->fdgot_entry = _frv_get_got_entry (&dinfo->got12); + entry->fdgot_entry = _frvfdpic_get_got_entry (&dinfo->got12); else if (entry->fdgotlos) - entry->fdgot_entry = _frv_get_got_entry (&dinfo->gotlos); + entry->fdgot_entry = _frvfdpic_get_got_entry (&dinfo->gotlos); else if (entry->fdgothilo) - entry->fdgot_entry = _frv_get_got_entry (&dinfo->gothilo); + entry->fdgot_entry = _frvfdpic_get_got_entry (&dinfo->gothilo); if (entry->fdgoff12) - entry->fd_entry = _frv_get_fd_entry (&dinfo->got12); + entry->fd_entry = _frvfdpic_get_fd_entry (&dinfo->got12); else if (entry->plt && dinfo->got12.fdplt) { dinfo->got12.fdplt -= 8; - entry->fd_entry = _frv_get_fd_entry (&dinfo->got12); + entry->fd_entry = _frvfdpic_get_fd_entry (&dinfo->got12); } else if (entry->fdgofflos) - entry->fd_entry = _frv_get_fd_entry (&dinfo->gotlos); + entry->fd_entry = _frvfdpic_get_fd_entry (&dinfo->gotlos); else if (entry->plt && dinfo->gotlos.fdplt) { dinfo->gotlos.fdplt -= 8; - entry->fd_entry = _frv_get_fd_entry (&dinfo->gotlos); + entry->fd_entry = _frvfdpic_get_fd_entry (&dinfo->gotlos); } else if (entry->plt) { dinfo->gothilo.fdplt -= 8; - entry->fd_entry = _frv_get_fd_entry (&dinfo->gothilo); + entry->fd_entry = _frvfdpic_get_fd_entry (&dinfo->gothilo); } else if (entry->privfd) - entry->fd_entry = _frv_get_fd_entry (&dinfo->gothilo); + entry->fd_entry = _frvfdpic_get_fd_entry (&dinfo->gothilo); return 1; } @@ -3214,10 +3297,10 @@ _frv_assign_got_entries (void **entryp, and lazy PLT entries. */ static int -_frv_assign_plt_entries (void **entryp, void *info_) +_frvfdpic_assign_plt_entries (void **entryp, void *info_) { - struct frv_pic_relocs_info *entry = *entryp; - struct _frv_dynamic_got_plt_info *dinfo = info_; + struct frvfdpic_relocs_info *entry = *entryp; + struct _frvfdpic_dynamic_got_plt_info *dinfo = info_; /* If this symbol requires a local function descriptor, allocate one. */ @@ -3225,18 +3308,18 @@ _frv_assign_plt_entries (void **entryp, { if (dinfo->got12.fdplt) { - entry->fd_entry = _frv_get_fd_entry (&dinfo->got12); + entry->fd_entry = _frvfdpic_get_fd_entry (&dinfo->got12); dinfo->got12.fdplt -= 8; } else if (dinfo->gotlos.fdplt) { - entry->fd_entry = _frv_get_fd_entry (&dinfo->gotlos); + entry->fd_entry = _frvfdpic_get_fd_entry (&dinfo->gotlos); dinfo->gotlos.fdplt -= 8; } else { BFD_ASSERT (dinfo->gothilo.fdplt) - entry->fd_entry = _frv_get_fd_entry (&dinfo->gothilo); + entry->fd_entry = _frvfdpic_get_fd_entry (&dinfo->gothilo); dinfo->gothilo.fdplt -= 8; } } @@ -3247,7 +3330,7 @@ _frv_assign_plt_entries (void **entryp, /* We use the section's raw size to mark the location of the next PLT entry. */ - entry->plt_entry = frv_plt_section (dinfo->g.info)->_raw_size; + entry->plt_entry = frvfdpic_plt_section (dinfo->g.info)->_raw_size; /* Figure out the length of this PLT entry based on the addressing mode we need to reach the function descriptor. */ @@ -3261,7 +3344,7 @@ _frv_assign_plt_entries (void **entryp, else size = 16; - frv_plt_section (dinfo->g.info)->_raw_size += size; + frvfdpic_plt_section (dinfo->g.info)->_raw_size += size; } if (entry->lazyplt) @@ -3270,7 +3353,8 @@ _frv_assign_plt_entries (void **entryp, dinfo->g.lzplt += 8; /* If this entry is the one that gets the resolver stub, account for the additional instruction. */ - if (entry->lzplt_entry % FRV_LZPLT_BLOCK_SIZE == FRV_LZPLT_RESOLV_LOC) + if (entry->lzplt_entry % FRVFDPIC_LZPLT_BLOCK_SIZE + == FRVFDPIC_LZPLT_RESOLV_LOC) dinfo->g.lzplt += 4; } @@ -3284,15 +3368,15 @@ _frv_assign_plt_entries (void **entryp, we've made a potentially-destructive change to the hash table, so the traversal must be restarted. */ static int -_frv_resolve_final_relocs_info (void **entryp, void *p) +_frvfdpic_resolve_final_relocs_info (void **entryp, void *p) { - struct frv_pic_relocs_info *entry = *entryp; + struct frvfdpic_relocs_info *entry = *entryp; htab_t *htab = p; if (entry->symndx == -1) { struct elf_link_hash_entry *h = entry->d.h; - struct frv_pic_relocs_info *oentry; + struct frvfdpic_relocs_info *oentry; while (h->root.type == bfd_link_hash_indirect || h->root.type == bfd_link_hash_warning) @@ -3301,13 +3385,13 @@ _frv_resolve_final_relocs_info (void **e if (entry->d.h == h) return 1; - oentry = frv_pic_relocs_info_for_global (*htab, 0, h, entry->addend, - NO_INSERT); + oentry = frvfdpic_relocs_info_for_global (*htab, 0, h, entry->addend, + NO_INSERT); if (oentry) { /* Merge the two entries. */ - frv_pic_merge_early_relocs_info (oentry, entry); + frvfdpic_pic_merge_early_relocs_info (oentry, entry); htab_clear_slot (*htab, entryp); return 1; } @@ -3336,12 +3420,12 @@ _frv_resolve_final_relocs_info (void **e /* Set the sizes of the dynamic sections. */ static bfd_boolean -elf32_frv_size_dynamic_sections (bfd *output_bfd, - struct bfd_link_info *info) +elf32_frvfdpic_size_dynamic_sections (bfd *output_bfd, + struct bfd_link_info *info) { bfd *dynobj; asection *s; - struct _frv_dynamic_got_plt_info gpinfo; + struct _frvfdpic_dynamic_got_plt_info gpinfo; bfd_signed_vma odd; bfd_vma limit; @@ -3365,15 +3449,15 @@ elf32_frv_size_dynamic_sections (bfd *ou for (;;) { - htab_t relocs = frv_relocs_info (info); + htab_t relocs = frvfdpic_relocs_info (info); - htab_traverse (relocs, _frv_resolve_final_relocs_info, &relocs); + htab_traverse (relocs, _frvfdpic_resolve_final_relocs_info, &relocs); - if (relocs == frv_relocs_info (info)) + if (relocs == frvfdpic_relocs_info (info)) break; } - htab_traverse (frv_relocs_info (info), _frv_count_got_plt_entries, + htab_traverse (frvfdpic_relocs_info (info), _frvfdpic_count_got_plt_entries, &gpinfo.g); odd = 12; @@ -3392,160 +3476,167 @@ elf32_frv_size_dynamic_sections (bfd *ou /* Determine the ranges of GOT offsets that we can use for each range of addressing modes. */ - odd = _frv_compute_got_alloc_data (&gpinfo.got12, - 0, - odd, - 16, - gpinfo.g.got12, - gpinfo.g.fd12, - limit, - (bfd_vma)1 << (12-1)); - odd = _frv_compute_got_alloc_data (&gpinfo.gotlos, - gpinfo.got12.min, - odd, - gpinfo.got12.max, - gpinfo.g.gotlos, - gpinfo.g.fdlos, - gpinfo.g.fdplt - gpinfo.got12.fdplt, - (bfd_vma)1 << (16-1)); - odd = _frv_compute_got_alloc_data (&gpinfo.gothilo, - gpinfo.gotlos.min, - odd, - gpinfo.gotlos.max, - gpinfo.g.gothilo, - gpinfo.g.fdhilo, - gpinfo.g.fdplt - gpinfo.got12.fdplt - - gpinfo.gotlos.fdplt, - (bfd_vma)1 << (32-1)); + odd = _frvfdpic_compute_got_alloc_data (&gpinfo.got12, + 0, + odd, + 16, + gpinfo.g.got12, + gpinfo.g.fd12, + limit, + (bfd_vma)1 << (12-1)); + odd = _frvfdpic_compute_got_alloc_data (&gpinfo.gotlos, + gpinfo.got12.min, + odd, + gpinfo.got12.max, + gpinfo.g.gotlos, + gpinfo.g.fdlos, + gpinfo.g.fdplt - gpinfo.got12.fdplt, + (bfd_vma)1 << (16-1)); + odd = _frvfdpic_compute_got_alloc_data (&gpinfo.gothilo, + gpinfo.gotlos.min, + odd, + gpinfo.gotlos.max, + gpinfo.g.gothilo, + gpinfo.g.fdhilo, + gpinfo.g.fdplt - gpinfo.got12.fdplt + - gpinfo.gotlos.fdplt, + (bfd_vma)1 << (32-1)); /* Now assign (most) GOT offsets. */ - htab_traverse (frv_relocs_info (info), _frv_assign_got_entries, &gpinfo); + htab_traverse (frvfdpic_relocs_info (info), _frvfdpic_assign_got_entries, + &gpinfo); - frv_got_section (info)->_raw_size = gpinfo.gothilo.max - gpinfo.gothilo.min + frvfdpic_got_section (info)->_raw_size = gpinfo.gothilo.max + - gpinfo.gothilo.min /* If an odd word is the last word of the GOT, we don't need this word to be part of the GOT. */ - (odd + 4 == gpinfo.gothilo.max ? 4 : 0); - if (frv_got_section (info)->_raw_size == 0) - frv_got_section (info)->flags |= SEC_EXCLUDE; - else if (frv_got_section (info)->_raw_size == 12 + if (frvfdpic_got_section (info)->_raw_size == 0) + frvfdpic_got_section (info)->flags |= SEC_EXCLUDE; + else if (frvfdpic_got_section (info)->_raw_size == 12 && ! elf_hash_table (info)->dynamic_sections_created) { - frv_got_section (info)->flags |= SEC_EXCLUDE; - frv_got_section (info)->_raw_size = 0; + frvfdpic_got_section (info)->flags |= SEC_EXCLUDE; + frvfdpic_got_section (info)->_raw_size = 0; } else { - frv_got_section (info)->contents = - (bfd_byte *) bfd_zalloc (dynobj, frv_got_section (info)->_raw_size); - if (frv_got_section (info)->contents == NULL) + frvfdpic_got_section (info)->contents = + (bfd_byte *) bfd_zalloc (dynobj, + frvfdpic_got_section (info)->_raw_size); + if (frvfdpic_got_section (info)->contents == NULL) return FALSE; } if (elf_hash_table (info)->dynamic_sections_created) /* Subtract the number of lzplt entries, since those will generate relocations in the pltrel section. */ - frv_gotrel_section (info)->_raw_size = + frvfdpic_gotrel_section (info)->_raw_size = (gpinfo.g.relocs - gpinfo.g.lzplt / 8) * get_elf_backend_data (output_bfd)->s->sizeof_rel; else BFD_ASSERT (gpinfo.g.relocs == 0); - if (frv_gotrel_section (info)->_raw_size == 0) - frv_gotrel_section (info)->flags |= SEC_EXCLUDE; + if (frvfdpic_gotrel_section (info)->_raw_size == 0) + frvfdpic_gotrel_section (info)->flags |= SEC_EXCLUDE; else { - frv_gotrel_section (info)->contents = - (bfd_byte *) bfd_zalloc (dynobj, frv_gotrel_section (info)->_raw_size); - if (frv_gotrel_section (info)->contents == NULL) + frvfdpic_gotrel_section (info)->contents = + (bfd_byte *) bfd_zalloc (dynobj, + frvfdpic_gotrel_section (info)->_raw_size); + if (frvfdpic_gotrel_section (info)->contents == NULL) return FALSE; } - if (elf_elfheader (output_bfd)->e_flags & EF_FRV_FDPIC) - frv_gotfixup_section (info)->_raw_size = (gpinfo.g.fixups + 1) * 4; - if (frv_gotfixup_section (info)->_raw_size == 0) - frv_gotfixup_section (info)->flags |= SEC_EXCLUDE; + frvfdpic_gotfixup_section (info)->_raw_size = (gpinfo.g.fixups + 1) * 4; + if (frvfdpic_gotfixup_section (info)->_raw_size == 0) + frvfdpic_gotfixup_section (info)->flags |= SEC_EXCLUDE; else { - frv_gotfixup_section (info)->contents = + frvfdpic_gotfixup_section (info)->contents = (bfd_byte *) bfd_zalloc (dynobj, - frv_gotfixup_section (info)->_raw_size); - if (frv_gotfixup_section (info)->contents == NULL) + frvfdpic_gotfixup_section (info)->_raw_size); + if (frvfdpic_gotfixup_section (info)->contents == NULL) return FALSE; } if (elf_hash_table (info)->dynamic_sections_created) { - frv_pltrel_section (info)->_raw_size = + frvfdpic_pltrel_section (info)->_raw_size = gpinfo.g.lzplt / 8 * get_elf_backend_data (output_bfd)->s->sizeof_rel; - if (frv_pltrel_section (info)->_raw_size == 0) - frv_pltrel_section (info)->flags |= SEC_EXCLUDE; + if (frvfdpic_pltrel_section (info)->_raw_size == 0) + frvfdpic_pltrel_section (info)->flags |= SEC_EXCLUDE; else { - frv_pltrel_section (info)->contents = + frvfdpic_pltrel_section (info)->contents = (bfd_byte *) bfd_zalloc (dynobj, - frv_pltrel_section (info)->_raw_size); - if (frv_pltrel_section (info)->contents == NULL) + frvfdpic_pltrel_section (info) + ->_raw_size); + if (frvfdpic_pltrel_section (info)->contents == NULL) return FALSE; } } /* Add 4 bytes for every block of at most 65535 lazy PLT entries, such that there's room for the additional instruction needed to - call the resolver. Since _frv_assign_got_entries didn't account - for them, our block size is 4 bytes smaller than the real block - size. */ + call the resolver. Since _frvfdpic_assign_got_entries didn't + account for them, our block size is 4 bytes smaller than the real + block size. */ if (elf_hash_table (info)->dynamic_sections_created) { - frv_plt_section (info)->_raw_size = gpinfo.g.lzplt - + ((gpinfo.g.lzplt + (FRV_LZPLT_BLOCK_SIZE - 4) - 8) - / (FRV_LZPLT_BLOCK_SIZE - 4) * 4); + frvfdpic_plt_section (info)->_raw_size = gpinfo.g.lzplt + + ((gpinfo.g.lzplt + (FRVFDPIC_LZPLT_BLOCK_SIZE - 4) - 8) + / (FRVFDPIC_LZPLT_BLOCK_SIZE - 4) * 4); } - /* Reset it, such that _frv_assign_plt_entries() can use it to + /* Reset it, such that _frvfdpic_assign_plt_entries() can use it to actually assign lazy PLT entries addresses. */ gpinfo.g.lzplt = 0; /* Save information that we're going to need to generate GOT and PLT entries. */ - frv_got_initial_offset (info) = -gpinfo.gothilo.min; + frvfdpic_got_initial_offset (info) = -gpinfo.gothilo.min; if (get_elf_backend_data (output_bfd)->want_got_sym) elf_hash_table (info)->hgot->root.u.def.value - += frv_got_initial_offset (info); + += frvfdpic_got_initial_offset (info); if (elf_hash_table (info)->dynamic_sections_created) - frv_plt_initial_offset (info) = frv_plt_section (info)->_raw_size; + frvfdpic_plt_initial_offset (info) = + frvfdpic_plt_section (info)->_raw_size; - htab_traverse (frv_relocs_info (info), _frv_assign_plt_entries, &gpinfo); + htab_traverse (frvfdpic_relocs_info (info), _frvfdpic_assign_plt_entries, + &gpinfo); /* Allocate the PLT section contents only after - _frv_assign_plt_entries has a chance to add the size of the + _frvfdpic_assign_plt_entries has a chance to add the size of the non-lazy PLT entries. */ if (elf_hash_table (info)->dynamic_sections_created) { - if (frv_plt_section (info)->_raw_size == 0) - frv_plt_section (info)->flags |= SEC_EXCLUDE; + if (frvfdpic_plt_section (info)->_raw_size == 0) + frvfdpic_plt_section (info)->flags |= SEC_EXCLUDE; else { - frv_plt_section (info)->contents = - (bfd_byte *) bfd_zalloc (dynobj, frv_plt_section (info)->_raw_size); - if (frv_plt_section (info)->contents == NULL) + frvfdpic_plt_section (info)->contents = + (bfd_byte *) bfd_zalloc (dynobj, + frvfdpic_plt_section (info)->_raw_size); + if (frvfdpic_plt_section (info)->contents == NULL) return FALSE; } } if (elf_hash_table (info)->dynamic_sections_created) { - if (frv_got_section (info)->_raw_size) + if (frvfdpic_got_section (info)->_raw_size) if (!_bfd_elf_add_dynamic_entry (info, DT_PLTGOT, 0)) return FALSE; - if (frv_pltrel_section (info)->_raw_size) + if (frvfdpic_pltrel_section (info)->_raw_size) if (!_bfd_elf_add_dynamic_entry (info, DT_PLTRELSZ, 0) || !_bfd_elf_add_dynamic_entry (info, DT_PLTREL, DT_REL) || !_bfd_elf_add_dynamic_entry (info, DT_JMPREL, 0)) return FALSE; - if (frv_gotrel_section (info)->_raw_size) + if (frvfdpic_gotrel_section (info)->_raw_size) if (!_bfd_elf_add_dynamic_entry (info, DT_REL, 0) || !_bfd_elf_add_dynamic_entry (info, DT_RELSZ, 0) || !_bfd_elf_add_dynamic_entry (info, DT_RELENT, @@ -3557,11 +3648,10 @@ elf32_frv_size_dynamic_sections (bfd *ou } static bfd_boolean -elf32_frv_always_size_sections (bfd *output_bfd, - struct bfd_link_info *info) +elf32_frvfdpic_always_size_sections (bfd *output_bfd, + struct bfd_link_info *info) { - if (!info->relocatable - && elf_elfheader (output_bfd)->e_flags & EF_FRV_FDPIC) + if (!info->relocatable) { struct elf_link_hash_entry *h; asection *sec; @@ -3603,45 +3693,47 @@ elf32_frv_always_size_sections (bfd *out } static bfd_boolean -elf32_frv_modify_segment_map (bfd *output_bfd, - struct bfd_link_info *info) +elf32_frvfdpic_modify_segment_map (bfd *output_bfd, + struct bfd_link_info *info) { - if (elf_elfheader (output_bfd)->e_flags & EF_FRV_FDPIC) - { - struct elf_segment_map *m; + struct elf_segment_map *m; - for (m = elf_tdata (output_bfd)->segment_map; m != NULL; m = m->next) - if (m->p_type == PT_GNU_STACK) - break; + /* objcopy and strip preserve what's already there using + elf32_frvfdpic_copy_private_bfd_data (). */ + if (! info) + return TRUE; - if (m) + for (m = elf_tdata (output_bfd)->segment_map; m != NULL; m = m->next) + if (m->p_type == PT_GNU_STACK) + break; + + if (m) + { + asection *sec = bfd_get_section_by_name (output_bfd, ".stack"); + struct elf_link_hash_entry *h; + + if (sec) { - asection *sec = bfd_get_section_by_name (output_bfd, ".stack"); - struct elf_link_hash_entry *h; + /* Obtain the pointer to the __stacksize symbol. */ + h = elf_link_hash_lookup (elf_hash_table (info), "__stacksize", + FALSE, FALSE, FALSE); + while (h->root.type == bfd_link_hash_indirect + || h->root.type == bfd_link_hash_warning) + h = (struct elf_link_hash_entry *)h->root.u.i.link; + BFD_ASSERT (h->root.type == bfd_link_hash_defined); - if (sec) - { - /* Obtain the pointer to the __stacksize symbol. */ - h = elf_link_hash_lookup (elf_hash_table (info), "__stacksize", - FALSE, FALSE, FALSE); - while (h->root.type == bfd_link_hash_indirect - || h->root.type == bfd_link_hash_warning) - h = (struct elf_link_hash_entry *)h->root.u.i.link; - BFD_ASSERT (h->root.type == bfd_link_hash_defined); - - /* Set the section size from the symbol value. We - intentionally ignore the symbol section. */ - if (h->root.type == bfd_link_hash_defined) - sec->_raw_size = h->root.u.def.value; - else - sec->_raw_size = DEFAULT_STACK_SIZE; + /* Set the section size from the symbol value. We + intentionally ignore the symbol section. */ + if (h->root.type == bfd_link_hash_defined) + sec->_raw_size = h->root.u.def.value; + else + sec->_raw_size = DEFAULT_STACK_SIZE; - /* Add the stack section to the PT_GNU_STACK segment, - such that its size and alignment requirements make it - to the segment. */ - m->sections[m->count] = sec; - m->count++; - } + /* Add the stack section to the PT_GNU_STACK segment, + such that its size and alignment requirements make it + to the segment. */ + m->sections[m->count] = sec; + m->count++; } } @@ -3651,60 +3743,51 @@ elf32_frv_modify_segment_map (bfd *outpu /* Fill in code and data in dynamic sections. */ static bfd_boolean -elf32_frv_finish_dynamic_sections (bfd *output_bfd, - struct bfd_link_info *info) +elf32_frv_finish_dynamic_sections (bfd *output_bfd ATTRIBUTE_UNUSED, + struct bfd_link_info *info ATTRIBUTE_UNUSED) +{ + /* Nothing to be done for non-FDPIC. */ + return TRUE; +} + +static bfd_boolean +elf32_frvfdpic_finish_dynamic_sections (bfd *output_bfd, + struct bfd_link_info *info) { bfd *dynobj; asection *sdyn; dynobj = elf_hash_table (info)->dynobj; - if (frv_got_section (info)) + if (frvfdpic_got_section (info)) { - BFD_ASSERT (frv_gotrel_section (info)->_raw_size - == (frv_gotrel_section (info)->reloc_count + BFD_ASSERT (frvfdpic_gotrel_section (info)->_raw_size + == (frvfdpic_gotrel_section (info)->reloc_count * sizeof (Elf32_External_Rel))); - if (frv_gotfixup_section (info)) + if (frvfdpic_gotfixup_section (info)) { - if (elf_elfheader (output_bfd)->e_flags & EF_FRV_FDPIC) + struct elf_link_hash_entry *hgot = elf_hash_table (info)->hgot; + bfd_vma got_value = hgot->root.u.def.value + + hgot->root.u.def.section->output_section->vma + + hgot->root.u.def.section->output_offset; + + _frvfdpic_add_rofixup (output_bfd, frvfdpic_gotfixup_section (info), + got_value, 0); + + if (frvfdpic_gotfixup_section (info)->_raw_size + != (frvfdpic_gotfixup_section (info)->reloc_count * 4)) { - struct elf_link_hash_entry *hgot = elf_hash_table (info)->hgot; - bfd_vma got_value = hgot->root.u.def.value - + hgot->root.u.def.section->output_section->vma - + hgot->root.u.def.section->output_offset; - - _frv_add_rofixup (output_bfd, frv_gotfixup_section (info), - got_value, 0); - } - - if (frv_gotfixup_section (info)->_raw_size - != (frv_gotfixup_section (info)->reloc_count * 4)) - { - if (frv_gotfixup_section (info)->_raw_size - < frv_gotfixup_section (info)->reloc_count * 4) - { - info->callbacks->warning - (info, "LINKER BUG: .rofixup section size mismatch", - ".rofixup", NULL, NULL, 0); - abort (); - return FALSE; - } - else if (!elf_hash_table (info)->dynamic_sections_created) - { - info->callbacks->warning - (info, "no dynamic sections, missing -melf32frvfd?", - ".rofixup", NULL, NULL, 0); - return FALSE; - } - BFD_ASSERT (0); + (*_bfd_error_handler) + ("LINKER BUG: .rofixup section size mismatch"); + return FALSE; } } } if (elf_hash_table (info)->dynamic_sections_created) { - BFD_ASSERT (frv_pltrel_section (info)->_raw_size - == (frv_pltrel_section (info)->reloc_count + BFD_ASSERT (frvfdpic_pltrel_section (info)->_raw_size + == (frvfdpic_pltrel_section (info)->reloc_count * sizeof (Elf32_External_Rel))); } @@ -3732,23 +3815,24 @@ elf32_frv_finish_dynamic_sections (bfd * break; case DT_PLTGOT: - dyn.d_un.d_ptr = frv_got_section (info)->output_section->vma - + frv_got_section (info)->output_offset - + frv_got_initial_offset (info); + dyn.d_un.d_ptr = frvfdpic_got_section (info)->output_section->vma + + frvfdpic_got_section (info)->output_offset + + frvfdpic_got_initial_offset (info); bfd_elf32_swap_dyn_out (output_bfd, &dyn, dyncon); break; case DT_JMPREL: - dyn.d_un.d_ptr = frv_pltrel_section (info)->output_section->vma - + frv_pltrel_section (info)->output_offset; + dyn.d_un.d_ptr = frvfdpic_pltrel_section (info) + ->output_section->vma + + frvfdpic_pltrel_section (info)->output_offset; bfd_elf32_swap_dyn_out (output_bfd, &dyn, dyncon); break; case DT_PLTRELSZ: - if (frv_pltrel_section (info)->_cooked_size != 0) - dyn.d_un.d_val = frv_pltrel_section (info)->_cooked_size; + if (frvfdpic_pltrel_section (info)->_cooked_size != 0) + dyn.d_un.d_val = frvfdpic_pltrel_section (info)->_cooked_size; else - dyn.d_un.d_val = frv_pltrel_section (info)->_raw_size; + dyn.d_un.d_val = frvfdpic_pltrel_section (info)->_raw_size; bfd_elf32_swap_dyn_out (output_bfd, &dyn, dyncon); break; } @@ -3762,8 +3846,9 @@ elf32_frv_finish_dynamic_sections (bfd * regular object. */ static bfd_boolean -elf32_frv_adjust_dynamic_symbol (struct bfd_link_info *info ATTRIBUTE_UNUSED, - struct elf_link_hash_entry *h ATTRIBUTE_UNUSED) +elf32_frvfdpic_adjust_dynamic_symbol +(struct bfd_link_info *info ATTRIBUTE_UNUSED, + struct elf_link_hash_entry *h ATTRIBUTE_UNUSED) { bfd * dynobj; @@ -3796,10 +3881,11 @@ elf32_frv_adjust_dynamic_symbol (struct /* Perform any actions needed for dynamic symbols. */ static bfd_boolean -elf32_frv_finish_dynamic_symbol (bfd *output_bfd ATTRIBUTE_UNUSED, - struct bfd_link_info *info ATTRIBUTE_UNUSED, - struct elf_link_hash_entry *h ATTRIBUTE_UNUSED, - Elf_Internal_Sym *sym ATTRIBUTE_UNUSED) +elf32_frvfdpic_finish_dynamic_symbol +(bfd *output_bfd ATTRIBUTE_UNUSED, + struct bfd_link_info *info ATTRIBUTE_UNUSED, + struct elf_link_hash_entry *h ATTRIBUTE_UNUSED, + Elf_Internal_Sym *sym ATTRIBUTE_UNUSED) { return TRUE; } @@ -3808,44 +3894,37 @@ elf32_frv_finish_dynamic_symbol (bfd *ou shared libraries into pcrel within the given input section. */ static bfd_boolean -frv_elf_use_relative_eh_frame (bfd *input_bfd, - struct bfd_link_info *info ATTRIBUTE_UNUSED, - asection *eh_frame_section ATTRIBUTE_UNUSED) +frvfdpic_elf_use_relative_eh_frame +(bfd *input_bfd ATTRIBUTE_UNUSED, + struct bfd_link_info *info ATTRIBUTE_UNUSED, + asection *eh_frame_section ATTRIBUTE_UNUSED) { /* We can't use PC-relative encodings in FDPIC binaries, in general. */ - if (elf_elfheader (input_bfd)->e_flags & EF_FRV_FDPIC) - return FALSE; - - return TRUE; + return FALSE; } /* Adjust the contents of an eh_frame_hdr section before they're output. */ static bfd_byte -frv_elf_encode_eh_address (bfd *abfd, - struct bfd_link_info *info, - asection *osec, bfd_vma offset, - asection *loc_sec, bfd_vma loc_offset, - bfd_vma *encoded) +frvfdpic_elf_encode_eh_address (bfd *abfd, + struct bfd_link_info *info, + asection *osec, bfd_vma offset, + asection *loc_sec, bfd_vma loc_offset, + bfd_vma *encoded) { struct elf_link_hash_entry *h; - /* Non-FDPIC binaries can use PC-relative encodings. */ - if (! (elf_elfheader (abfd)->e_flags & EF_FRV_FDPIC)) - return _bfd_elf_encode_eh_address (abfd, info, osec, offset, - loc_sec, loc_offset, encoded); - h = elf_hash_table (info)->hgot; BFD_ASSERT (h && h->root.type == bfd_link_hash_defined); - if (! h || (_frv_osec_to_segment (abfd, osec) - == _frv_osec_to_segment (abfd, loc_sec->output_section))) + if (! h || (_frvfdpic_osec_to_segment (abfd, osec) + == _frvfdpic_osec_to_segment (abfd, loc_sec->output_section))) return _bfd_elf_encode_eh_address (abfd, info, osec, offset, loc_sec, loc_offset, encoded); - BFD_ASSERT (_frv_osec_to_segment (abfd, osec) - == _frv_osec_to_segment (abfd, - h->root.u.def.section->output_section)); + BFD_ASSERT (_frvfdpic_osec_to_segment (abfd, osec) + == (_frvfdpic_osec_to_segment + (abfd, h->root.u.def.section->output_section))); *encoded = osec->vma + offset - (h->root.u.def.value @@ -3971,7 +4050,7 @@ elf32_frv_check_relocs (abfd, info, sec, const Elf_Internal_Rela *rel; const Elf_Internal_Rela *rel_end; bfd *dynobj; - struct frv_pic_relocs_info *picrel; + struct frvfdpic_relocs_info *picrel; if (info->relocatable) return TRUE; @@ -3997,8 +4076,6 @@ elf32_frv_check_relocs (abfd, info, sec, switch (ELF32_R_TYPE (rel->r_info)) { - case R_FRV_LABEL24: - case R_FRV_32: case R_FRV_GOT12: case R_FRV_GOTHI: case R_FRV_GOTLO: @@ -4013,12 +4090,26 @@ elf32_frv_check_relocs (abfd, info, sec, case R_FRV_FUNCDESC_GOTOFFLO: case R_FRV_FUNCDESC: case R_FRV_FUNCDESC_VALUE: + if (! IS_FDPIC (abfd)) + goto bad_reloc; + /* Fall through. */ + case R_FRV_GPREL12: + case R_FRV_GPRELU12: + case R_FRV_GPRELHI: + case R_FRV_GPRELLO: + case R_FRV_LABEL24: + case R_FRV_32: if (! dynobj) { elf_hash_table (info)->dynobj = dynobj = abfd; if (! _frv_create_got_section (abfd, info)) return FALSE; } + if (! IS_FDPIC (abfd)) + { + picrel = NULL; + break; + } if (h != NULL) { if (h->dynindx == -1) @@ -4032,14 +4123,14 @@ elf32_frv_check_relocs (abfd, info, sec, break; } picrel - = frv_pic_relocs_info_for_global (frv_relocs_info (info), - abfd, h, - rel->r_addend, INSERT); + = frvfdpic_relocs_info_for_global (frvfdpic_relocs_info (info), + abfd, h, + rel->r_addend, INSERT); } else - picrel = frv_pic_relocs_info_for_local (frv_relocs_info (info), - abfd, r_symndx, - rel->r_addend, INSERT); + picrel = frvfdpic_relocs_info_for_local (frvfdpic_relocs_info + (info), abfd, r_symndx, + rel->r_addend, INSERT); if (! picrel) return FALSE; break; @@ -4052,7 +4143,8 @@ elf32_frv_check_relocs (abfd, info, sec, switch (ELF32_R_TYPE (rel->r_info)) { case R_FRV_LABEL24: - picrel->call = 1; + if (IS_FDPIC (abfd)) + picrel->call = 1; break; case R_FRV_FUNCDESC_VALUE: @@ -4060,7 +4152,11 @@ elf32_frv_check_relocs (abfd, info, sec, if (bfd_get_section_flags (abfd, sec) & SEC_ALLOC) picrel->relocs32--; /* Fall through. */ + case R_FRV_32: + if (! IS_FDPIC (abfd)) + break; + picrel->sym = 1; if (bfd_get_section_flags (abfd, sec) & SEC_ALLOC) picrel->relocs32++; @@ -4117,6 +4213,23 @@ elf32_frv_check_relocs (abfd, info, sec, if (!bfd_elf_gc_record_vtentry (abfd, sec, h, rel->r_addend)) return FALSE; break; + + case R_FRV_LABEL16: + case R_FRV_LO16: + case R_FRV_HI16: + case R_FRV_GPREL12: + case R_FRV_GPRELU12: + case R_FRV_GPREL32: + case R_FRV_GPRELHI: + case R_FRV_GPRELLO: + break; + + default: + bad_reloc: + (*_bfd_error_handler) + (_("%s: unsupported relocation type %i"), + bfd_archive_filename (abfd), ELF32_R_TYPE (rel->r_info)); + return FALSE; } } @@ -4153,7 +4266,8 @@ elf32_frv_object_p (abfd) bfd *abfd; { bfd_default_set_arch_mach (abfd, bfd_arch_frv, elf32_frv_machine (abfd)); - return TRUE; + return (((elf_elfheader (abfd)->e_flags & EF_FRV_FDPIC) != 0) + == (IS_FDPIC (abfd))); } /* Function to set the ELF flag bits. */ @@ -4214,6 +4328,50 @@ frv_elf_arch_extension_p (flagword base, return FALSE; } +static bfd_boolean +elf32_frvfdpic_copy_private_bfd_data (bfd *ibfd, bfd *obfd) +{ + unsigned i; + + if (bfd_get_flavour (ibfd) != bfd_target_elf_flavour + || bfd_get_flavour (obfd) != bfd_target_elf_flavour) + return TRUE; + + if (! frv_elf_copy_private_bfd_data (ibfd, obfd)) + return FALSE; + + if (! elf_tdata (ibfd) || ! elf_tdata (ibfd)->phdr + || ! elf_tdata (obfd) || ! elf_tdata (obfd)->phdr) + return TRUE; + + /* Copy the stack size. */ + for (i = 0; i < elf_elfheader (ibfd)->e_phnum; i++) + if (elf_tdata (ibfd)->phdr[i].p_type == PT_GNU_STACK) + { + Elf_Internal_Phdr *iphdr = &elf_tdata (ibfd)->phdr[i]; + + for (i = 0; i < elf_elfheader (obfd)->e_phnum; i++) + if (elf_tdata (obfd)->phdr[i].p_type == PT_GNU_STACK) + { + memcpy (&elf_tdata (obfd)->phdr[i], iphdr, sizeof (*iphdr)); + + /* Rewrite the phdrs, since we're only called after they + were first written. */ + if (bfd_seek (obfd, (bfd_signed_vma) get_elf_backend_data (obfd) + ->s->sizeof_ehdr, SEEK_SET) != 0 + || get_elf_backend_data (obfd)->s + ->write_out_phdrs (obfd, elf_tdata (obfd)->phdr, + elf_elfheader (obfd)->e_phnum) != 0) + return FALSE; + break; + } + + break; + } + + return TRUE; +} + /* Merge backend specific data from an object file to the output object file when linking. */ @@ -4467,6 +4625,20 @@ frv_elf_merge_private_bfd_data (ibfd, ob if (old_partial != (old_flags & EF_FRV_CPU_MASK)) bfd_default_set_arch_mach (obfd, bfd_arch_frv, elf32_frv_machine (obfd)); + if (((new_flags & EF_FRV_FDPIC) == 0) + != (! IS_FDPIC (ibfd))) + { + error = TRUE; + if (IS_FDPIC (obfd)) + (*_bfd_error_handler) + (_("%s: cannot link non-fdpic object file into fdpic executable"), + bfd_get_filename (ibfd)); + else + (*_bfd_error_handler) + (_("%s: cannot link fdpic object file into non-fdpic executable"), + bfd_get_filename (ibfd)); + } + if (error) bfd_set_error (bfd_error_bad_value); @@ -4564,7 +4736,6 @@ frv_elf_print_private_bfd_data (abfd, pt #define TARGET_BIG_SYM bfd_elf32_frv_vec #define TARGET_BIG_NAME "elf32-frv" -#define elf_info_to_howto_rel frv_info_to_howto_rel #define elf_info_to_howto frv_info_to_howto_rela #define elf_backend_relocate_section elf32_frv_relocate_section #define elf_backend_gc_mark_hook elf32_frv_gc_mark_hook @@ -4582,39 +4753,76 @@ frv_elf_print_private_bfd_data (abfd, pt #define bfd_elf32_bfd_merge_private_bfd_data frv_elf_merge_private_bfd_data #define bfd_elf32_bfd_print_private_bfd_data frv_elf_print_private_bfd_data -#define bfd_elf32_bfd_link_hash_table_create frv_elf_link_hash_table_create +#define elf_backend_want_got_sym 1 +#define elf_backend_got_header_size 0 +#define elf_backend_want_got_plt 0 +#define elf_backend_plt_readonly 1 +#define elf_backend_want_plt_sym 0 +#define elf_backend_plt_header_size 0 + +#define elf_backend_finish_dynamic_sections \ + elf32_frv_finish_dynamic_sections + +#include "elf32-target.h" + +#undef ELF_MAXPAGESIZE +#define ELF_MAXPAGESIZE 0x4000 + +#undef TARGET_BIG_SYM +#define TARGET_BIG_SYM bfd_elf32_frvfdpic_vec +#undef TARGET_BIG_NAME +#define TARGET_BIG_NAME "elf32-frvfdpic" +#undef elf32_bed +#define elf32_bed elf32_frvfdpic_bed + +#undef elf_info_to_howto_rel +#define elf_info_to_howto_rel frvfdpic_info_to_howto_rel + +#undef bfd_elf32_bfd_link_hash_table_create +#define bfd_elf32_bfd_link_hash_table_create \ + frvfdpic_elf_link_hash_table_create +#undef elf_backend_always_size_sections #define elf_backend_always_size_sections \ - elf32_frv_always_size_sections + elf32_frvfdpic_always_size_sections +#undef elf_backend_modify_segment_map #define elf_backend_modify_segment_map \ - elf32_frv_modify_segment_map + elf32_frvfdpic_modify_segment_map +#undef bfd_elf32_bfd_copy_private_bfd_data +#define bfd_elf32_bfd_copy_private_bfd_data \ + elf32_frvfdpic_copy_private_bfd_data +#undef elf_backend_create_dynamic_sections #define elf_backend_create_dynamic_sections \ - elf32_frv_create_dynamic_sections + elf32_frvfdpic_create_dynamic_sections +#undef elf_backend_adjust_dynamic_symbol #define elf_backend_adjust_dynamic_symbol \ - elf32_frv_adjust_dynamic_symbol + elf32_frvfdpic_adjust_dynamic_symbol +#undef elf_backend_size_dynamic_sections #define elf_backend_size_dynamic_sections \ - elf32_frv_size_dynamic_sections + elf32_frvfdpic_size_dynamic_sections +#undef elf_backend_finish_dynamic_symbol #define elf_backend_finish_dynamic_symbol \ - elf32_frv_finish_dynamic_symbol + elf32_frvfdpic_finish_dynamic_symbol +#undef elf_backend_finish_dynamic_sections #define elf_backend_finish_dynamic_sections \ - elf32_frv_finish_dynamic_sections - -#define elf_backend_want_got_sym 1 -#define elf_backend_got_header_size 0 -#define elf_backend_want_got_plt 0 -#define elf_backend_plt_readonly 1 -#define elf_backend_want_plt_sym 0 -#define elf_backend_plt_header_size 0 + elf32_frvfdpic_finish_dynamic_sections +#undef elf_backend_can_make_relative_eh_frame #define elf_backend_can_make_relative_eh_frame \ - frv_elf_use_relative_eh_frame + frvfdpic_elf_use_relative_eh_frame +#undef elf_backend_can_make_lsda_relative_eh_frame #define elf_backend_can_make_lsda_relative_eh_frame \ - frv_elf_use_relative_eh_frame -#define elf_backend_encode_eh_address frv_elf_encode_eh_address + frvfdpic_elf_use_relative_eh_frame +#undef elf_backend_encode_eh_address +#define elf_backend_encode_eh_address \ + frvfdpic_elf_encode_eh_address +#undef elf_backend_may_use_rel_p #define elf_backend_may_use_rel_p 1 +#undef elf_backend_may_use_rela_p #define elf_backend_may_use_rela_p 1 /* We use REL for dynamic relocations only. */ +#undef elf_backend_default_use_rela_p #define elf_backend_default_use_rela_p 1 #include "elf32-target.h" diff -uprN binutils-2.15.90.0.3/bfd/elf32-i386.c binutils-2.15.91.0.1/bfd/elf32-i386.c --- binutils-2.15.90.0.3/bfd/elf32-i386.c 2004-04-12 12:56:33.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/elf32-i386.c 2004-05-27 11:26:02.234481882 -0700 @@ -2261,24 +2261,29 @@ elf_i386_relocate_section (bfd *output_b if (off >= (bfd_vma) -2) abort (); - relocation = htab->sgot->output_offset + off; + relocation = htab->sgot->output_section->vma + + htab->sgot->output_offset + off + - htab->sgotplt->output_section->vma + - htab->sgotplt->output_offset; break; case R_386_GOTOFF: /* Relocation is relative to the start of the global offset table. */ - /* Note that sgot->output_offset is not involved in this - calculation. We always want the start of .got. If we - defined _GLOBAL_OFFSET_TABLE in a different way, as is + /* Note that sgot is not involved in this + calculation. We always want the start of .got.plt. If we + defined _GLOBAL_OFFSET_TABLE_ in a different way, as is permitted by the ABI, we might have to change this calculation. */ - relocation -= htab->sgot->output_section->vma; + relocation -= htab->sgotplt->output_section->vma + + htab->sgotplt->output_offset; break; case R_386_GOTPC: /* Use global offset table as symbol value. */ - relocation = htab->sgot->output_section->vma; + relocation = htab->sgotplt->output_section->vma + + htab->sgotplt->output_offset; unresolved_reloc = FALSE; break; @@ -2699,12 +2704,15 @@ elf_i386_relocate_section (bfd *output_b abort (); if (r_type == ELF32_R_TYPE (rel->r_info)) { - relocation = htab->sgot->output_offset + off; + bfd_vma g_o_t = htab->sgotplt->output_section->vma + + htab->sgotplt->output_offset; + relocation = htab->sgot->output_section->vma + + htab->sgot->output_offset + off - g_o_t; if ((r_type == R_386_TLS_IE || r_type == R_386_TLS_GOTIE) && tls_type == GOT_TLS_IE_BOTH) relocation += 4; if (r_type == R_386_TLS_IE) - relocation += htab->sgot->output_section->vma; + relocation += g_o_t; unresolved_reloc = FALSE; } else @@ -2761,7 +2769,11 @@ elf_i386_relocate_section (bfd *output_b if (tls_type == GOT_TLS_IE_BOTH) off += 4; } - bfd_put_32 (output_bfd, htab->sgot->output_offset + off, + bfd_put_32 (output_bfd, + htab->sgot->output_section->vma + + htab->sgot->output_offset + off + - htab->sgotplt->output_section->vma + - htab->sgotplt->output_offset, contents + roff + 8); /* Skip R_386_PLT32. */ rel++; @@ -2823,7 +2835,10 @@ elf_i386_relocate_section (bfd *output_b bfd_elf32_swap_reloc_out (output_bfd, &outrel, loc); htab->tls_ldm_got.offset |= 1; } - relocation = htab->sgot->output_offset + off; + relocation = htab->sgot->output_section->vma + + htab->sgot->output_offset + off + - htab->sgotplt->output_section->vma + - htab->sgotplt->output_offset; unresolved_reloc = FALSE; break; @@ -3159,7 +3174,8 @@ elf_i386_finish_dynamic_sections (bfd *o continue; case DT_PLTGOT: - dyn.d_un.d_ptr = htab->sgot->output_section->vma; + s = htab->sgotplt; + dyn.d_un.d_ptr = s->output_section->vma + s->output_offset; break; case DT_JMPREL: @@ -3245,9 +3261,24 @@ elf_i386_finish_dynamic_sections (bfd *o elf_section_data (htab->sgotplt->output_section)->this_hdr.sh_entsize = 4; } + + if (htab->sgot && htab->sgot->_raw_size > 0) + elf_section_data (htab->sgot->output_section)->this_hdr.sh_entsize = 4; + return TRUE; } +/* Return address for Ith PLT stub in section PLT, for relocation REL + or (bfd_vma) -1 if it should not be included. */ + +static bfd_vma +elf_i386_plt_sym_val (bfd_vma i, const asection *plt, + const arelent *rel ATTRIBUTE_UNUSED) +{ + return plt->vma + (i + 1) * PLT_ENTRY_SIZE; +} + + #define TARGET_LITTLE_SYM bfd_elf32_i386_vec #define TARGET_LITTLE_NAME "elf32-i386" #define ELF_ARCH bfd_arch_i386 @@ -3285,6 +3316,7 @@ elf_i386_finish_dynamic_sections (bfd *o #define elf_backend_reloc_type_class elf_i386_reloc_type_class #define elf_backend_relocate_section elf_i386_relocate_section #define elf_backend_size_dynamic_sections elf_i386_size_dynamic_sections +#define elf_backend_plt_sym_val elf_i386_plt_sym_val #include "elf32-target.h" diff -uprN binutils-2.15.90.0.3/bfd/elf32-mips.c binutils-2.15.91.0.1/bfd/elf32-mips.c --- binutils-2.15.90.0.3/bfd/elf32-mips.c 2004-01-14 13:07:43.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/elf32-mips.c 2004-05-27 11:26:02.249479942 -0700 @@ -599,39 +599,6 @@ static reloc_howto_type elf_mips16_gprel 0x07ff001f, /* dst_mask */ FALSE); /* pcrel_offset */ -/* GNU extensions for embedded-pic. */ -/* High 16 bits of symbol value, pc-relative. */ -static reloc_howto_type elf_mips_gnu_rel_hi16 = - HOWTO (R_MIPS_GNU_REL_HI16, /* type */ - 16, /* rightshift */ - 2, /* size (0 = byte, 1 = short, 2 = long) */ - 16, /* bitsize */ - TRUE, /* pc_relative */ - 0, /* bitpos */ - complain_overflow_dont, /* complain_on_overflow */ - _bfd_mips_elf_hi16_reloc, /* special_function */ - "R_MIPS_GNU_REL_HI16", /* name */ - TRUE, /* partial_inplace */ - 0xffff, /* src_mask */ - 0xffff, /* dst_mask */ - TRUE); /* pcrel_offset */ - -/* Low 16 bits of symbol value, pc-relative. */ -static reloc_howto_type elf_mips_gnu_rel_lo16 = - HOWTO (R_MIPS_GNU_REL_LO16, /* type */ - 0, /* rightshift */ - 2, /* size (0 = byte, 1 = short, 2 = long) */ - 16, /* bitsize */ - TRUE, /* pc_relative */ - 0, /* bitpos */ - complain_overflow_dont, /* complain_on_overflow */ - _bfd_mips_elf_lo16_reloc, /* special_function */ - "R_MIPS_GNU_REL_LO16", /* name */ - TRUE, /* partial_inplace */ - 0xffff, /* src_mask */ - 0xffff, /* dst_mask */ - TRUE); /* pcrel_offset */ - /* 16 bit offset for pc-relative branches. */ static reloc_howto_type elf_mips_gnu_rel16_s2 = HOWTO (R_MIPS_GNU_REL16_S2, /* type */ @@ -648,38 +615,6 @@ static reloc_howto_type elf_mips_gnu_rel 0xffff, /* dst_mask */ TRUE); /* pcrel_offset */ -/* 64 bit pc-relative. */ -static reloc_howto_type elf_mips_gnu_pcrel64 = - HOWTO (R_MIPS_PC64, /* type */ - 0, /* rightshift */ - 4, /* size (0 = byte, 1 = short, 2 = long) */ - 64, /* bitsize */ - TRUE, /* pc_relative */ - 0, /* bitpos */ - complain_overflow_signed, /* complain_on_overflow */ - _bfd_mips_elf_generic_reloc, /* special_function */ - "R_MIPS_PC64", /* name */ - TRUE, /* partial_inplace */ - MINUS_ONE, /* src_mask */ - MINUS_ONE, /* dst_mask */ - TRUE); /* pcrel_offset */ - -/* 32 bit pc-relative. */ -static reloc_howto_type elf_mips_gnu_pcrel32 = - HOWTO (R_MIPS_PC32, /* type */ - 0, /* rightshift */ - 2, /* size (0 = byte, 1 = short, 2 = long) */ - 32, /* bitsize */ - TRUE, /* pc_relative */ - 0, /* bitpos */ - complain_overflow_signed, /* complain_on_overflow */ - _bfd_mips_elf_generic_reloc, /* special_function */ - "R_MIPS_PC32", /* name */ - TRUE, /* partial_inplace */ - 0xffffffff, /* src_mask */ - 0xffffffff, /* dst_mask */ - TRUE); /* pcrel_offset */ - /* GNU extension to record C++ vtable hierarchy */ static reloc_howto_type elf_mips_gnu_vtinherit_howto = HOWTO (R_MIPS_GNU_VTINHERIT, /* type */ @@ -1134,16 +1069,8 @@ bfd_elf32_bfd_reloc_type_lookup (bfd *ab return &elf_mips_gnu_vtinherit_howto; case BFD_RELOC_VTABLE_ENTRY: return &elf_mips_gnu_vtentry_howto; - case BFD_RELOC_PCREL_HI16_S: - return &elf_mips_gnu_rel_hi16; - case BFD_RELOC_PCREL_LO16: - return &elf_mips_gnu_rel_lo16; case BFD_RELOC_16_PCREL_S2: return &elf_mips_gnu_rel16_s2; - case BFD_RELOC_64_PCREL: - return &elf_mips_gnu_pcrel64; - case BFD_RELOC_32_PCREL: - return &elf_mips_gnu_pcrel32; } } @@ -1163,16 +1090,8 @@ mips_elf32_rtype_to_howto (unsigned int return &elf_mips_gnu_vtinherit_howto; case R_MIPS_GNU_VTENTRY: return &elf_mips_gnu_vtentry_howto; - case R_MIPS_GNU_REL_HI16: - return &elf_mips_gnu_rel_hi16; - case R_MIPS_GNU_REL_LO16: - return &elf_mips_gnu_rel_lo16; case R_MIPS_GNU_REL16_S2: return &elf_mips_gnu_rel16_s2; - case R_MIPS_PC64: - return &elf_mips_gnu_pcrel64; - case R_MIPS_PC32: - return &elf_mips_gnu_pcrel32; default: BFD_ASSERT (r_type < (unsigned int) R_MIPS_max); return &elf_mips_howto_table_rel[r_type]; @@ -1335,139 +1254,6 @@ elf32_mips_irix_compat (bfd *abfd) return ict_none; } -/* Given a data section and an in-memory embedded reloc section, store - relocation information into the embedded reloc section which can be - used at runtime to relocate the data section. This is called by the - linker when the --embedded-relocs switch is used. This is called - after the add_symbols entry point has been called for all the - objects, and before the final_link entry point is called. */ - -bfd_boolean -bfd_mips_elf32_create_embedded_relocs (bfd *abfd, struct bfd_link_info *info, - asection *datasec, asection *relsec, - char **errmsg) -{ - Elf_Internal_Shdr *symtab_hdr; - Elf_Internal_Sym *isymbuf = NULL; - Elf_Internal_Rela *internal_relocs = NULL; - Elf_Internal_Rela *irel, *irelend; - bfd_byte *p; - - BFD_ASSERT (! info->relocatable); - - *errmsg = NULL; - - if (datasec->reloc_count == 0) - return TRUE; - - /* Read this BFD's symbols if we haven't done so already, or get the cached - copy if it exists. */ - symtab_hdr = &elf_tdata (abfd)->symtab_hdr; - if (symtab_hdr->sh_info != 0) - { - isymbuf = (Elf_Internal_Sym *) symtab_hdr->contents; - if (isymbuf == NULL) - isymbuf = bfd_elf_get_elf_syms (abfd, symtab_hdr, - symtab_hdr->sh_info, 0, - NULL, NULL, NULL); - if (isymbuf == NULL) - goto error_return; - } - - /* Get a copy of the native relocations. */ - internal_relocs = _bfd_elf_link_read_relocs (abfd, datasec, NULL, NULL, - info->keep_memory); - if (internal_relocs == NULL) - goto error_return; - - relsec->contents = bfd_alloc (abfd, datasec->reloc_count * 12); - if (relsec->contents == NULL) - goto error_return; - - p = relsec->contents; - - irelend = internal_relocs + datasec->reloc_count; - - for (irel = internal_relocs; irel < irelend; irel++, p += 12) - { - asection *targetsec; - - /* We are going to write a four byte longword into the runtime - reloc section. The longword will be the address in the data - section which must be relocated. It is followed by the name - of the target section NUL-padded or truncated to 8 - characters. */ - - /* We can only relocate absolute longword relocs at run time. */ - if ((ELF32_R_TYPE (irel->r_info) != (int) R_MIPS_32) && - (ELF32_R_TYPE (irel->r_info) != (int) R_MIPS_64)) - { - *errmsg = _("unsupported reloc type"); - bfd_set_error (bfd_error_bad_value); - goto error_return; - } - /* Get the target section referred to by the reloc. */ - if (ELF32_R_SYM (irel->r_info) < symtab_hdr->sh_info) - { - Elf_Internal_Sym *isym; - - /* A local symbol. */ - isym = isymbuf + ELF32_R_SYM (irel->r_info); - targetsec = bfd_section_from_elf_index (abfd, isym->st_shndx); - } - else - { - unsigned long indx; - struct elf_link_hash_entry *h; - - /* An external symbol. */ - indx = ELF32_R_SYM (irel->r_info); - h = elf_sym_hashes (abfd)[indx]; - targetsec = NULL; - /* - For some reason, in certain programs, the symbol will - not be in the hash table. It seems to happen when you - declare a static table of pointers to const external structures. - In this case, the relocs are relative to data, not - text, so just treating it like an undefined link - should be sufficient. */ - BFD_ASSERT(h != NULL); - if (h->root.type == bfd_link_hash_defined - || h->root.type == bfd_link_hash_defweak) - targetsec = h->root.u.def.section; - } - - - /* - Set the low bit of the relocation offset if it's a MIPS64 reloc. - Relocations will always be on (at least) 32-bit boundaries. */ - - bfd_put_32 (abfd, ((irel->r_offset + datasec->output_offset) + - ((ELF32_R_TYPE (irel->r_info) == (int) R_MIPS_64) ? 1 : 0)), - p); - memset (p + 4, 0, 8); - if (targetsec != NULL) - strncpy (p + 4, targetsec->output_section->name, 8); - } - - if (internal_relocs != NULL - && elf_section_data (datasec)->relocs != internal_relocs) - free (internal_relocs); - if (isymbuf != NULL - && symtab_hdr->contents != (unsigned char *) isymbuf) - free (isymbuf); - return TRUE; - - error_return: - if (internal_relocs != NULL - && elf_section_data (datasec)->relocs != internal_relocs) - free (internal_relocs); - if (isymbuf != NULL - && symtab_hdr->contents != (unsigned char *) isymbuf) - free (isymbuf); - return FALSE; -} - /* ECOFF swapping routines. These are used when dealing with the .mdebug section, which is in the ECOFF debugging format. */ static const struct ecoff_debug_swap mips_elf32_ecoff_debug_swap = { diff -uprN binutils-2.15.90.0.3/bfd/elf32-ppc.c binutils-2.15.91.0.1/bfd/elf32-ppc.c --- binutils-2.15.90.0.3/bfd/elf32-ppc.c 2004-04-12 12:56:33.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/elf32-ppc.c 2004-05-27 11:26:02.275476580 -0700 @@ -1811,7 +1811,7 @@ ppc_elf_relax_section (bfd *abfd, if (tsec->sec_info_type == ELF_INFO_TYPE_MERGE) toff = _bfd_merged_section_offset (abfd, &tsec, elf_section_data (tsec)->sec_info, - toff, 0); + toff); symaddr = tsec->output_section->vma + tsec->output_offset + toff; @@ -6132,6 +6132,17 @@ ppc_elf_final_write_processing (bfd *abf apuinfo_list_finish (); } +/* Return address for Ith PLT stub in section PLT, for relocation REL + or (bfd_vma) -1 if it should not be included. */ + +static bfd_vma +ppc_elf_plt_sym_val (bfd_vma i ATTRIBUTE_UNUSED, + const asection *plt ATTRIBUTE_UNUSED, + const arelent *rel) +{ + return rel->address; +} + /* Add extra PPC sections -- Note, for now, make .sbss2 and .PPC.EMB.sbss0 a normal section, and not a bss section so that the linker doesn't crater when trying to make more than @@ -6209,5 +6220,6 @@ static struct bfd_elf_special_section co #define elf_backend_final_write_processing ppc_elf_final_write_processing #define elf_backend_write_section ppc_elf_write_section #define elf_backend_special_sections ppc_elf_special_sections +#define elf_backend_plt_sym_val ppc_elf_plt_sym_val #include "elf32-target.h" diff -uprN binutils-2.15.90.0.3/bfd/elf32-s390.c binutils-2.15.91.0.1/bfd/elf32-s390.c --- binutils-2.15.90.0.3/bfd/elf32-s390.c 2004-04-12 12:56:33.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/elf32-s390.c 2004-05-27 11:26:02.279476063 -0700 @@ -3457,6 +3457,17 @@ elf_s390_grok_prstatus (abfd, note) raw_size, note->descpos + offset); } +/* Return address for Ith PLT stub in section PLT, for relocation REL + or (bfd_vma) -1 if it should not be included. */ + +static bfd_vma +elf_s390_plt_sym_val (bfd_vma i, const asection *plt, + const arelent *rel ATTRIBUTE_UNUSED) +{ + return plt->vma + PLT_FIRST_ENTRY_SIZE + i * PLT_ENTRY_SIZE; +} + + #define TARGET_BIG_SYM bfd_elf32_s390_vec #define TARGET_BIG_NAME "elf32-s390" #define ELF_ARCH bfd_arch_s390 @@ -3491,6 +3502,7 @@ elf_s390_grok_prstatus (abfd, note) #define elf_backend_size_dynamic_sections elf_s390_size_dynamic_sections #define elf_backend_reloc_type_class elf_s390_reloc_type_class #define elf_backend_grok_prstatus elf_s390_grok_prstatus +#define elf_backend_plt_sym_val elf_s390_plt_sym_val #define bfd_elf32_mkobject elf_s390_mkobject #define elf_backend_object_p elf_s390_object_p diff -uprN binutils-2.15.90.0.3/bfd/elf32-sh.c binutils-2.15.91.0.1/bfd/elf32-sh.c --- binutils-2.15.90.0.3/bfd/elf32-sh.c 2004-04-12 12:56:33.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/elf32-sh.c 2004-05-27 11:26:02.288474899 -0700 @@ -7480,6 +7480,17 @@ elf32_shlin_grok_psinfo (bfd *abfd, Elf_ return TRUE; } + +/* Return address for Ith PLT stub in section PLT, for relocation REL + or (bfd_vma) -1 if it should not be included. */ + +static bfd_vma +sh_elf_plt_sym_val (bfd_vma i, const asection *plt, + const arelent *rel ATTRIBUTE_UNUSED) +{ + return plt->vma + (i + 1) * PLT_ENTRY_SIZE; +} + #define TARGET_BIG_SYM bfd_elf32_sh_vec #define TARGET_BIG_NAME "elf32-sh" #define TARGET_LITTLE_SYM bfd_elf32_shl_vec @@ -7527,6 +7538,7 @@ elf32_shlin_grok_psinfo (bfd *abfd, Elf_ #define elf_backend_finish_dynamic_sections \ sh_elf_finish_dynamic_sections #define elf_backend_reloc_type_class sh_elf_reloc_type_class +#define elf_backend_plt_sym_val sh_elf_plt_sym_val #define elf_backend_can_gc_sections 1 #define elf_backend_can_refcount 1 diff -uprN binutils-2.15.90.0.3/bfd/elf32-sh64.c binutils-2.15.91.0.1/bfd/elf32-sh64.c --- binutils-2.15.90.0.3/bfd/elf32-sh64.c 2004-04-12 12:56:33.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/elf32-sh64.c 2004-05-27 11:26:02.290474641 -0700 @@ -89,6 +89,7 @@ static void sh64_find_section_for_addres #define elf_backend_final_write_processing sh64_elf_final_write_processing #define elf_backend_section_from_shdr sh64_backend_section_from_shdr #define elf_backend_special_sections sh64_elf_special_sections +#define elf_backend_section_flags sh64_elf_section_flags #define bfd_elf32_new_section_hook sh64_elf_new_section_hook @@ -149,7 +150,6 @@ static bfd_boolean sh64_elf_set_mach_from_flags (bfd *abfd) { flagword flags = elf_elfheader (abfd)->e_flags; - asection *cranges; switch (flags & EF_SH_MACH_MASK) { @@ -164,18 +164,19 @@ sh64_elf_set_mach_from_flags (bfd *abfd) return FALSE; } - /* We also need to set SEC_DEBUGGING on an incoming .cranges section. - We could have used elf_backend_section_flags if it had given us the - section name; the bfd_section member in the header argument is not - set at the point of the call. FIXME: Find out whether that is by - undocumented design or a bug. */ - cranges = bfd_get_section_by_name (abfd, SH64_CRANGES_SECTION_NAME); - if (cranges != NULL - && ! bfd_set_section_flags (abfd, cranges, - bfd_get_section_flags (abfd, cranges) - | SEC_DEBUGGING)) + return TRUE; +} + +static bfd_boolean +sh64_elf_section_flags (flagword *flags, + const Elf_Internal_Shdr *hdr) +{ + if (hdr->bfd_section == NULL) return FALSE; + if (strcmp (hdr->bfd_section->name, SH64_CRANGES_SECTION_NAME) == 0) + *flags |= SEC_DEBUGGING; + return TRUE; } diff -uprN binutils-2.15.90.0.3/bfd/elf32-sparc.c binutils-2.15.91.0.1/bfd/elf32-sparc.c --- binutils-2.15.90.0.3/bfd/elf32-sparc.c 2004-04-14 21:26:05.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/elf32-sparc.c 2004-05-27 11:26:02.310472055 -0700 @@ -2374,6 +2374,9 @@ elf32_sparc_relocate_section (output_bfd break; if ((info->shared + && (h == NULL + || ELF_ST_VISIBILITY (h->other) == STV_DEFAULT + || h->root.type != bfd_link_hash_undefweak) && (! howto->pc_relative || (h != NULL && h->dynindx != -1 @@ -3429,6 +3432,17 @@ elf32_sparc_reloc_type_class (rela) return reloc_class_normal; } } + +/* Return address for Ith PLT stub in section PLT, for relocation REL + or (bfd_vma) -1 if it should not be included. */ + +static bfd_vma +elf32_sparc_plt_sym_val (bfd_vma i ATTRIBUTE_UNUSED, + const asection *plt ATTRIBUTE_UNUSED, + const arelent *rel) +{ + return rel->address; +} #define TARGET_BIG_SYM bfd_elf32_sparc_vec #define TARGET_BIG_NAME "elf32-sparc" @@ -3467,6 +3481,7 @@ elf32_sparc_reloc_type_class (rela) #define elf_backend_gc_sweep_hook elf32_sparc_gc_sweep_hook #define elf_backend_grok_psinfo elf32_sparc_grok_psinfo #define elf_backend_reloc_type_class elf32_sparc_reloc_type_class +#define elf_backend_plt_sym_val elf32_sparc_plt_sym_val #define elf_backend_can_gc_sections 1 #define elf_backend_can_refcount 1 diff -uprN binutils-2.15.90.0.3/bfd/elf32-xtensa.c binutils-2.15.91.0.1/bfd/elf32-xtensa.c --- binutils-2.15.90.0.3/bfd/elf32-xtensa.c 2004-04-12 12:56:33.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/elf32-xtensa.c 2004-05-27 11:26:02.327469857 -0700 @@ -497,13 +497,15 @@ xtensa_read_table_entries (abfd, section int block_count; bfd_size_type num_records; Elf_Internal_Rela *internal_relocs; + bfd_vma section_addr; table_section_name = xtensa_get_property_section_name (section, sec_name); table_section = bfd_get_section_by_name (abfd, table_section_name); free (table_section_name); if (table_section != NULL) - table_size = bfd_get_section_size_before_reloc (table_section); + table_size = (table_section->_cooked_size + ? table_section->_cooked_size : table_section->_raw_size); if (table_size == 0) { @@ -517,10 +519,12 @@ xtensa_read_table_entries (abfd, section bfd_malloc (num_records * sizeof (property_table_entry)); block_count = 0; + section_addr = section->output_section->vma + section->output_offset; + /* If the file has not yet been relocated, process the relocations and sort out the table entries that apply to the specified section. */ internal_relocs = retrieve_internal_relocs (abfd, table_section, TRUE); - if (internal_relocs) + if (internal_relocs && !table_section->reloc_done) { unsigned i; @@ -539,7 +543,7 @@ xtensa_read_table_entries (abfd, section { bfd_vma sym_off = get_elf_r_symndx_offset (abfd, r_symndx); blocks[block_count].address = - (section->vma + sym_off + rel->r_addend + (section_addr + sym_off + rel->r_addend + bfd_get_32 (abfd, table_data + rel->r_offset)); blocks[block_count].size = bfd_get_32 (abfd, table_data + rel->r_offset + 4); @@ -549,16 +553,16 @@ xtensa_read_table_entries (abfd, section } else { - /* No relocations. Presumably the file has been relocated - and the addresses are already in the table. */ + /* The file has already been relocated and the addresses are + already in the table. */ bfd_vma off; for (off = 0; off < table_size; off += 8) { bfd_vma address = bfd_get_32 (abfd, table_data + off); - if (address >= section->vma - && address < ( section->vma + section->_raw_size)) + if (address >= section_addr + && address < ( section_addr + section->_raw_size)) { blocks[block_count].address = address; blocks[block_count].size = @@ -2044,8 +2048,7 @@ elf_xtensa_relocate_section (output_bfd, and not in a literal pool. */ if ((input_section->flags & SEC_READONLY) != 0 && !elf_xtensa_in_literal_pool (lit_table, ltblsize, - input_section->vma - + rel->r_offset)) + outrel.r_offset)) { error_message = _("dynamic relocation in read-only section"); @@ -2145,6 +2148,8 @@ elf_xtensa_relocate_section (output_bfd, if (lit_table) free (lit_table); + input_section->reloc_done = TRUE; + return TRUE; } @@ -3431,7 +3436,7 @@ struct value_map_hash_table_struct static bfd_boolean is_same_value - PARAMS ((const literal_value *, const literal_value *)); + PARAMS ((const literal_value *, const literal_value *, bfd_boolean)); static value_map_hash_table *value_map_hash_table_init PARAMS ((void)); static unsigned hash_literal_value @@ -3439,16 +3444,20 @@ static unsigned hash_literal_value static unsigned hash_bfd_vma PARAMS ((bfd_vma)); static value_map *get_cached_value - PARAMS ((value_map_hash_table *, const literal_value *)); + PARAMS ((value_map_hash_table *, const literal_value *, bfd_boolean)); static value_map *add_value_map - PARAMS ((value_map_hash_table *, const literal_value *, const r_reloc *)); + PARAMS ((value_map_hash_table *, const literal_value *, const r_reloc *, + bfd_boolean)); static bfd_boolean -is_same_value (src1, src2) +is_same_value (src1, src2, final_static_link) const literal_value *src1; const literal_value *src2; + bfd_boolean final_static_link; { + struct elf_link_hash_entry *h1, *h2; + if (r_reloc_is_const (&src1->r_rel) != r_reloc_is_const (&src2->r_rel)) return FALSE; @@ -3466,8 +3475,14 @@ is_same_value (src1, src2) if (src1->value != src2->value) return FALSE; - /* Now check for the same section and the same elf_hash. */ - if (r_reloc_is_defined (&src1->r_rel)) + /* Now check for the same section (if defined) or the same elf_hash + (if undefined or weak). */ + h1 = r_reloc_get_hash_entry (&src1->r_rel); + h2 = r_reloc_get_hash_entry (&src2->r_rel); + if (r_reloc_is_defined (&src1->r_rel) + && (final_static_link + || ((!h1 || h1->root.type != bfd_link_hash_defweak) + && (!h2 || h2->root.type != bfd_link_hash_defweak)))) { if (r_reloc_get_section (&src1->r_rel) != r_reloc_get_section (&src2->r_rel)) @@ -3475,11 +3490,8 @@ is_same_value (src1, src2) } else { - if (r_reloc_get_hash_entry (&src1->r_rel) - != r_reloc_get_hash_entry (&src2->r_rel)) - return FALSE; - - if (r_reloc_get_hash_entry (&src1->r_rel) == 0) + /* Require that the hash entries (i.e., symbols) be identical. */ + if (h1 != h2 || h1 == 0) return FALSE; } @@ -3540,9 +3552,10 @@ hash_literal_value (src) /* Check if the specified literal_value has been seen before. */ static value_map * -get_cached_value (map, val) +get_cached_value (map, val, final_static_link) value_map_hash_table *map; const literal_value *val; + bfd_boolean final_static_link; { value_map *map_e; value_map *bucket; @@ -3553,7 +3566,7 @@ get_cached_value (map, val) bucket = map->buckets[idx]; for (map_e = bucket; map_e; map_e = map_e->next) { - if (is_same_value (&map_e->val, val)) + if (is_same_value (&map_e->val, val, final_static_link)) return map_e; } return NULL; @@ -3564,17 +3577,18 @@ get_cached_value (map, val) already has an entry here. */ static value_map * -add_value_map (map, val, loc) +add_value_map (map, val, loc, final_static_link) value_map_hash_table *map; const literal_value *val; const r_reloc *loc; + bfd_boolean final_static_link; { value_map **bucket_p; unsigned idx; value_map *val_e = (value_map *) bfd_zmalloc (sizeof (value_map)); - BFD_ASSERT (get_cached_value (map, val) == NULL); + BFD_ASSERT (get_cached_value (map, val, final_static_link) == NULL); val_e->val = *val; val_e->loc = *loc; @@ -4480,6 +4494,7 @@ remove_literals (abfd, sec, link_info, v bfd_byte *contents; Elf_Internal_Rela *internal_relocs; source_reloc *src_relocs; + bfd_boolean final_static_link; bfd_boolean ok = TRUE; int i; @@ -4500,6 +4515,10 @@ remove_literals (abfd, sec, link_info, v goto error_return; } + final_static_link = + (!link_info->relocatable + && !elf_hash_table (link_info)->dynamic_sections_created); + /* Sort the source_relocs by target offset. */ src_relocs = relax_info->src_relocs; qsort (src_relocs, relax_info->src_count, @@ -4552,7 +4571,7 @@ remove_literals (abfd, sec, link_info, v val.value = bfd_get_32 (abfd, contents + rel->r_rel.target_offset); /* Check if we've seen another literal with the same value. */ - val_map = get_cached_value (values, &val); + val_map = get_cached_value (values, &val, final_static_link); if (val_map != NULL) { /* First check that THIS and all the other relocs to this @@ -4575,7 +4594,7 @@ remove_literals (abfd, sec, link_info, v { /* This is the first time we've seen this literal value. */ BFD_ASSERT (sec == r_reloc_get_section (&rel->r_rel)); - add_value_map (values, &val, &rel->r_rel); + add_value_map (values, &val, &rel->r_rel, final_static_link); } } @@ -5666,12 +5685,10 @@ xtensa_get_property_section_name (sec, b prop_sec_name[linkonce_len + 1] = '.'; suffix = sec->name + linkonce_len; - while (*suffix) - { - suffix += 1; - if (suffix[-1] == '.') - break; - } + /* For backward compatibility, replace "t." instead of inserting + the new linkonce_kind. */ + if (strncmp (suffix, "t.", 2) == 0) + suffix += 2; strcpy (prop_sec_name + linkonce_len + 2, suffix); return prop_sec_name; diff -uprN binutils-2.15.90.0.3/bfd/elf64-alpha.c binutils-2.15.91.0.1/bfd/elf64-alpha.c --- binutils-2.15.90.0.3/bfd/elf64-alpha.c 2004-04-12 12:56:33.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/elf64-alpha.c 2004-05-27 11:26:02.339468305 -0700 @@ -75,7 +75,7 @@ static bfd_boolean elf64_alpha_object_p static bfd_boolean elf64_alpha_section_from_shdr PARAMS ((bfd *, Elf_Internal_Shdr *, const char *)); static bfd_boolean elf64_alpha_section_flags - PARAMS ((flagword *, Elf_Internal_Shdr *)); + PARAMS ((flagword *, const Elf_Internal_Shdr *)); static bfd_boolean elf64_alpha_fake_sections PARAMS ((bfd *, Elf_Internal_Shdr *, asection *)); static bfd_boolean elf64_alpha_create_got_section @@ -2315,7 +2315,7 @@ elf64_alpha_section_from_shdr (abfd, hdr static bfd_boolean elf64_alpha_section_flags (flags, hdr) flagword *flags; - Elf_Internal_Shdr *hdr; + const Elf_Internal_Shdr *hdr; { if (hdr->sh_flags & SHF_ALPHA_GPREL) *flags |= SEC_SMALL_DATA; @@ -2572,7 +2572,6 @@ elf64_alpha_read_ecoff_info (abfd, secti #undef READ debug->fdr = NULL; - debug->adjust = NULL; return TRUE; @@ -4382,8 +4381,7 @@ elf64_alpha_relocate_section (output_bfd _bfd_merged_section_offset (output_bfd, &msec, elf_section_data (sec)-> sec_info, - sym->st_value + ent->addend, - (bfd_vma) 0); + sym->st_value + ent->addend); ent->addend -= sym->st_value; ent->addend += msec->output_section->vma + msec->output_offset diff -uprN binutils-2.15.90.0.3/bfd/elf64-s390.c binutils-2.15.91.0.1/bfd/elf64-s390.c --- binutils-2.15.90.0.3/bfd/elf64-s390.c 2004-04-12 12:56:33.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/elf64-s390.c 2004-05-27 11:26:02.350466883 -0700 @@ -3369,6 +3369,17 @@ elf_s390_finish_dynamic_sections (output return TRUE; } +/* Return address for Ith PLT stub in section PLT, for relocation REL + or (bfd_vma) -1 if it should not be included. */ + +static bfd_vma +elf_s390_plt_sym_val (bfd_vma i, const asection *plt, + const arelent *rel ATTRIBUTE_UNUSED) +{ + return plt->vma + PLT_FIRST_ENTRY_SIZE + i * PLT_ENTRY_SIZE; +} + + /* Why was the hash table entry size definition changed from ARCH_SIZE/8 to 4? This breaks the 64 bit dynamic linker and this is the only reason for the s390_elf64_size_info structure. */ @@ -3438,6 +3449,7 @@ const struct elf_size_info s390_elf64_si #define elf_backend_relocate_section elf_s390_relocate_section #define elf_backend_size_dynamic_sections elf_s390_size_dynamic_sections #define elf_backend_reloc_type_class elf_s390_reloc_type_class +#define elf_backend_plt_sym_val elf_s390_plt_sym_val #define bfd_elf64_mkobject elf_s390_mkobject #define elf_backend_object_p elf_s390_object_p diff -uprN binutils-2.15.90.0.3/bfd/elf64-sparc.c binutils-2.15.91.0.1/bfd/elf64-sparc.c --- binutils-2.15.90.0.3/bfd/elf64-sparc.c 2004-04-15 08:03:38.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/elf64-sparc.c 2004-05-27 11:26:02.363465202 -0700 @@ -2213,6 +2213,13 @@ sparc64_elf_relocate_section (output_bfd break; } + /* FIXME: Dynamic reloc handling really needs to be rewritten. */ + if (!skip + && h != NULL + && ELF_ST_VISIBILITY (h->other) != STV_DEFAULT + && h->root.type == bfd_link_hash_undefweak) + skip = TRUE, relocate = TRUE; + if (skip) memset (&outrel, 0, sizeof outrel); /* h->dynindx may be -1 if the symbol was marked to @@ -3100,6 +3107,24 @@ sparc64_elf_object_p (abfd) return bfd_default_set_arch_mach (abfd, bfd_arch_sparc, mach); } +/* Return address for Ith PLT stub in section PLT, for relocation REL + or (bfd_vma) -1 if it should not be included. */ + +static bfd_vma +sparc64_elf_plt_sym_val (bfd_vma i, const asection *plt, + const arelent *rel ATTRIBUTE_UNUSED) +{ + bfd_vma j; + + i += PLT_HEADER_SIZE / PLT_ENTRY_SIZE; + if (i < LARGE_PLT_THRESHOLD) + return plt->vma + i * PLT_ENTRY_SIZE; + + j = (i - LARGE_PLT_THRESHOLD) % 160; + i -= j; + return plt->vma + i * PLT_ENTRY_SIZE + j * 4 * 6; +} + /* Relocations in the 64 bit SPARC ELF ABI are more complex than in standard ELF, because R_SPARC_OLO10 has secondary addend in ELF64_R_TYPE_DATA field. This structure is used to redirect the @@ -3199,6 +3224,8 @@ const struct elf_size_info sparc64_elf_s sparc64_elf_merge_private_bfd_data #define elf_backend_fake_sections \ sparc64_elf_fake_sections +#define elf_backend_plt_sym_val \ + sparc64_elf_plt_sym_val #define elf_backend_size_info \ sparc64_elf_size_info diff -uprN binutils-2.15.90.0.3/bfd/elf64-x86-64.c binutils-2.15.91.0.1/bfd/elf64-x86-64.c --- binutils-2.15.90.0.3/bfd/elf64-x86-64.c 2004-04-12 12:56:33.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/elf64-x86-64.c 2004-05-27 11:26:02.382462745 -0700 @@ -561,7 +561,8 @@ elf64_x86_64_copy_indirect_symbol (const (ind->elf_link_hash_flags & (ELF_LINK_HASH_REF_DYNAMIC | ELF_LINK_HASH_REF_REGULAR | ELF_LINK_HASH_REF_REGULAR_NONWEAK - | ELF_LINK_HASH_NEEDS_PLT)); + | ELF_LINK_HASH_NEEDS_PLT + | ELF_LINK_POINTER_EQUALITY_NEEDED)); else _bfd_elf_link_hash_copy_indirect (bed, dir, ind); } @@ -812,6 +813,8 @@ elf64_x86_64_check_relocs (bfd *abfd, st /* We may need a .plt entry if the function this reloc refers to is in a shared lib. */ h->plt.refcount += 1; + if (r_type != R_X86_64_PC32) + h->elf_link_hash_flags |= ELF_LINK_POINTER_EQUALITY_NEEDED; } /* If we are creating a shared library, and this is a reloc @@ -1908,9 +1911,11 @@ elf64_x86_64_relocate_section (bfd *outp if (off >= (bfd_vma) -2) abort (); - relocation = htab->sgot->output_offset + off; - if (r_type == R_X86_64_GOTPCREL) - relocation += htab->sgot->output_section->vma; + relocation = htab->sgot->output_section->vma + + htab->sgot->output_offset + off; + if (r_type != R_X86_64_GOTPCREL) + relocation -= htab->sgotplt->output_section->vma + - htab->sgotplt->output_offset; break; @@ -2519,11 +2524,16 @@ elf64_x86_64_finish_dynamic_symbol (bfd if ((h->elf_link_hash_flags & ELF_LINK_HASH_DEF_REGULAR) == 0) { /* Mark the symbol as undefined, rather than as defined in - the .plt section. Leave the value alone. This is a clue + the .plt section. Leave the value if there were any + relocations where pointer equality matters (this is a clue for the dynamic linker, to make function pointer comparisons work between an application and shared - library. */ + library), otherwise set it to zero. If a function is only + called from a binary, there is no need to slow down + shared libraries because of that. */ sym->st_shndx = SHN_UNDEF; + if ((h->elf_link_hash_flags & ELF_LINK_POINTER_EQUALITY_NEEDED) == 0) + sym->st_value = 0; } } @@ -2656,7 +2666,8 @@ elf64_x86_64_finish_dynamic_sections (bf continue; case DT_PLTGOT: - dyn.d_un.d_ptr = htab->sgot->output_section->vma; + s = htab->sgotplt; + dyn.d_un.d_ptr = s->output_section->vma + s->output_offset; break; case DT_JMPREL: @@ -2747,9 +2758,22 @@ elf64_x86_64_finish_dynamic_sections (bf GOT_ENTRY_SIZE; } + if (htab->sgot && htab->sgot->_raw_size > 0) + elf_section_data (htab->sgot->output_section)->this_hdr.sh_entsize + = GOT_ENTRY_SIZE; + return TRUE; } +/* Return address for Ith PLT stub in section PLT, for relocation REL + or (bfd_vma) -1 if it should not be included. */ + +static bfd_vma +elf64_x86_64_plt_sym_val (bfd_vma i, const asection *plt, + const arelent *rel ATTRIBUTE_UNUSED) +{ + return plt->vma + (i + 1) * PLT_ENTRY_SIZE; +} #define TARGET_LITTLE_SYM bfd_elf64_x86_64_vec #define TARGET_LITTLE_NAME "elf64-x86-64" @@ -2784,6 +2808,7 @@ elf64_x86_64_finish_dynamic_sections (bf #define elf_backend_reloc_type_class elf64_x86_64_reloc_type_class #define elf_backend_relocate_section elf64_x86_64_relocate_section #define elf_backend_size_dynamic_sections elf64_x86_64_size_dynamic_sections +#define elf_backend_plt_sym_val elf64_x86_64_plt_sym_val #define elf_backend_object_p elf64_x86_64_elf_object_p #define bfd_elf64_mkobject elf64_x86_64_mkobject diff -uprN binutils-2.15.90.0.3/bfd/elfcode.h binutils-2.15.91.0.1/bfd/elfcode.h --- binutils-2.15.90.0.3/bfd/elfcode.h 2004-04-12 12:56:33.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/elfcode.h 2004-05-27 11:26:02.384462486 -0700 @@ -105,6 +105,8 @@ Foundation, Inc., 59 Temple Place - Suit #define elf_canonicalize_symtab NAME(bfd_elf,canonicalize_symtab) #define elf_canonicalize_dynamic_symtab \ NAME(bfd_elf,canonicalize_dynamic_symtab) +#define elf_get_synthetic_symtab \ + NAME(bfd_elf,get_synthetic_symtab) #define elf_make_empty_symbol NAME(bfd_elf,make_empty_symbol) #define elf_get_symbol_info NAME(bfd_elf,get_symbol_info) #define elf_get_lineno NAME(bfd_elf,get_lineno) diff -uprN binutils-2.15.90.0.3/bfd/elflink.c binutils-2.15.91.0.1/bfd/elflink.c --- binutils-2.15.90.0.3/bfd/elflink.c 2004-04-14 21:26:05.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/elflink.c 2004-05-27 11:26:02.419457961 -0700 @@ -622,8 +622,36 @@ _bfd_elf_link_renumber_dynsyms (bfd *out { asection *p; for (p = output_bfd->sections; p ; p = p->next) - if ((p->flags & SEC_EXCLUDE) == 0) - elf_section_data (p)->dynindx = ++dynsymcount; + if ((p->flags & SEC_EXCLUDE) == 0 + && (p->flags & SEC_ALLOC) != 0) + switch (elf_section_data (p)->this_hdr.sh_type) + { + case SHT_PROGBITS: + case SHT_NOBITS: + /* If sh_type is yet undecided, assume it could be + SHT_PROGBITS/SHT_NOBITS. */ + case SHT_NULL: + if (strcmp (p->name, ".got") == 0 + || strcmp (p->name, ".got.plt") == 0 + || strcmp (p->name, ".plt") == 0) + { + asection *ip; + bfd *dynobj = elf_hash_table (info)->dynobj; + + if (dynobj != NULL + && (ip = bfd_get_section_by_name (dynobj, p->name)) + != NULL + && (ip->flags & SEC_LINKER_CREATED) + && ip->output_section == p) + continue; + } + elf_section_data (p)->dynindx = ++dynsymcount; + break; + /* There shouldn't be section relative relocations + against any other section. */ + default: + break; + } } if (elf_hash_table (info)->dynlocal) @@ -2334,7 +2362,7 @@ _bfd_elf_link_sec_merge_syms (struct elf _bfd_merged_section_offset (output_bfd, &h->root.u.def.section, elf_section_data (sec)->sec_info, - h->root.u.def.value, 0); + h->root.u.def.value); } return TRUE; @@ -4099,28 +4127,6 @@ elf_link_add_object_symbols (bfd *abfd, } } - if (! info->relocatable - && ! dynamic - && is_elf_hash_table (hash_table)) - { - asection *s; - - for (s = abfd->sections; s != NULL; s = s->next) - if ((s->flags & SEC_MERGE) != 0 - && !bfd_is_abs_section (s->output_section)) - { - struct bfd_elf_section_data *secdata; - - secdata = elf_section_data (s); - if (! _bfd_merge_section (abfd, - & hash_table->merge_info, - s, &secdata->sec_info)) - goto error_return; - else if (secdata->sec_info) - s->sec_info_type = ELF_INFO_TYPE_MERGE; - } - } - if (is_elf_hash_table (hash_table)) { /* Add this bfd to the loaded list. */ @@ -4621,6 +4627,7 @@ bfd_elf_size_dynamic_sections (bfd *outp if (!is_elf_hash_table (info->hash)) return TRUE; + elf_tdata (output_bfd)->relro = info->relro; if (info->execstack) elf_tdata (output_bfd)->stack_flags = PF_R | PF_W | PF_X; else if (info->noexecstack) @@ -6363,7 +6370,7 @@ elf_link_input_bfd (struct elf_final_lin isym->st_value = _bfd_merged_section_offset (output_bfd, &isec, elf_section_data (isec)->sec_info, - isym->st_value, 0); + isym->st_value); } else if (isym->st_shndx == SHN_ABS) isec = bfd_abs_section_ptr; @@ -6763,13 +6770,10 @@ elf_link_input_bfd (struct elf_final_lin { /* I suppose the backend ought to fill in the section of any STT_SECTION symbol against a - processor specific section. If we have - discarded a section, the output_section will - be the absolute section. */ - if (bfd_is_abs_section (sec) - || (sec != NULL - && bfd_is_abs_section (sec->output_section))) - r_symndx = 0; + processor specific section. */ + r_symndx = 0; + if (bfd_is_abs_section (sec)) + ; else if (sec == NULL || sec->owner == NULL) { bfd_set_error (bfd_error_bad_value); @@ -6777,8 +6781,25 @@ elf_link_input_bfd (struct elf_final_lin } else { - r_symndx = sec->output_section->target_index; - BFD_ASSERT (r_symndx != 0); + asection *osec = sec->output_section; + + /* If we have discarded a section, the output + section will be the absolute section. In + case of discarded link-once and discarded + SEC_MERGE sections, use the kept section. */ + if (bfd_is_abs_section (osec) + && sec->kept_section != NULL + && sec->kept_section->output_section != NULL) + { + osec = sec->kept_section->output_section; + irela->r_addend -= osec->vma; + } + + if (!bfd_is_abs_section (osec)) + { + r_symndx = osec->target_index; + BFD_ASSERT (r_symndx != 0); + } } /* Adjust the addend according to where the @@ -7640,16 +7661,18 @@ bfd_elf_final_link (bfd *abfd, struct bf bfd_byte *dest; long dynindx; - indx = elf_section_data (s)->this_idx; dynindx = elf_section_data (s)->dynindx; + if (dynindx <= 0) + continue; + indx = elf_section_data (s)->this_idx; BFD_ASSERT (indx > 0); sym.st_shndx = indx; sym.st_value = s->vma; dest = dynsym + dynindx * bed->s->sizeof_sym; + if (last_local < dynindx) + last_local = dynindx; bed->s->swap_symbol_out (abfd, &sym, dest, 0); } - - last_local = bfd_count_sections (abfd); } /* Write out the local dynsyms. */ @@ -8173,6 +8196,9 @@ elf_gc_mark (struct bfd_link_info *info, || ELF_ST_BIND (isym[r_symndx].st_info) != STB_LOCAL) { h = sym_hashes[r_symndx - extsymoff]; + while (h->root.type == bfd_link_hash_indirect + || h->root.type == bfd_link_hash_warning) + h = (struct elf_link_hash_entry *) h->root.u.i.link; rsec = (*gc_mark_hook) (sec, info, rel, h, NULL); } else @@ -8412,6 +8438,24 @@ elf_gc_smash_unused_vtentry_relocs (stru return TRUE; } +/* Mark sections containing dynamically referenced symbols. This is called + through elf_link_hash_traverse. */ + +static bfd_boolean +elf_gc_mark_dynamic_ref_symbol (struct elf_link_hash_entry *h, + void *okp ATTRIBUTE_UNUSED) +{ + if (h->root.type == bfd_link_hash_warning) + h = (struct elf_link_hash_entry *) h->root.u.i.link; + + if ((h->root.type == bfd_link_hash_defined + || h->root.type == bfd_link_hash_defweak) + && (h->elf_link_hash_flags & ELF_LINK_HASH_REF_DYNAMIC)) + h->root.u.def.section->flags |= SEC_KEEP; + + return TRUE; +} + /* Do mark and sweep of unused sections. */ bfd_boolean @@ -8426,8 +8470,8 @@ bfd_elf_gc_sections (bfd *abfd, struct b if (!get_elf_backend_data (abfd)->can_gc_sections || info->relocatable || info->emitrelocations - || !is_elf_hash_table (info->hash) - || elf_hash_table (info)->dynamic_sections_created) + || info->shared + || !is_elf_hash_table (info->hash)) { (*_bfd_error_handler)(_("Warning: gc-sections option ignored")); return TRUE; @@ -8447,8 +8491,15 @@ bfd_elf_gc_sections (bfd *abfd, struct b if (!ok) return FALSE; - /* Grovel through relocs to find out who stays ... */ + /* Mark dynamically referenced symbols. */ + if (elf_hash_table (info)->dynamic_sections_created) + elf_link_hash_traverse (elf_hash_table (info), + elf_gc_mark_dynamic_ref_symbol, + &ok); + if (!ok) + return FALSE; + /* Grovel through relocs to find out who stays ... */ gc_mark_hook = get_elf_backend_data (abfd)->gc_mark_hook; for (sub = info->input_bfds; sub != NULL; sub = sub->link_next) { @@ -8460,8 +8511,15 @@ bfd_elf_gc_sections (bfd *abfd, struct b for (o = sub->sections; o != NULL; o = o->next) { if (o->flags & SEC_KEEP) - if (!elf_gc_mark (info, o, gc_mark_hook)) - return FALSE; + { + /* _bfd_elf_discard_section_eh_frame knows how to discard + orphaned FDEs so don't mark sections referenced by the + EH frame section. */ + if (strcmp (o->name, ".eh_frame") == 0) + o->gc_mark = 1; + else if (!elf_gc_mark (info, o, gc_mark_hook)) + return FALSE; + } } } diff -uprN binutils-2.15.90.0.3/bfd/elfxx-ia64.c binutils-2.15.91.0.1/bfd/elfxx-ia64.c --- binutils-2.15.90.0.3/bfd/elfxx-ia64.c 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/elfxx-ia64.c 2004-05-27 11:26:02.435455892 -0700 @@ -186,7 +186,7 @@ static bfd_boolean is_unwind_section_nam static bfd_boolean elfNN_ia64_section_from_shdr PARAMS ((bfd *, Elf_Internal_Shdr *, const char *)); static bfd_boolean elfNN_ia64_section_flags - PARAMS ((flagword *, Elf_Internal_Shdr *)); + PARAMS ((flagword *, const Elf_Internal_Shdr *)); static bfd_boolean elfNN_ia64_fake_sections PARAMS ((bfd *abfd, Elf_Internal_Shdr *hdr, asection *sec)); static void elfNN_ia64_final_write_processing @@ -913,8 +913,7 @@ elfNN_ia64_relax_section (abfd, sec, lin if (tsec->sec_info_type == ELF_INFO_TYPE_MERGE) toff = _bfd_merged_section_offset (abfd, &tsec, elf_section_data (tsec)->sec_info, - toff + irel->r_addend, - (bfd_vma) 0); + toff + irel->r_addend); else toff += irel->r_addend; @@ -1271,7 +1270,7 @@ elfNN_ia64_section_from_shdr (abfd, hdr, static bfd_boolean elfNN_ia64_section_flags (flags, hdr) flagword *flags; - Elf_Internal_Shdr *hdr; + const Elf_Internal_Shdr *hdr; { if (hdr->sh_flags & SHF_IA_64_SHORT) *flags |= SEC_SMALL_DATA; @@ -3963,8 +3962,7 @@ elfNN_ia64_relocate_section (output_bfd, elf_section_data (msec)-> sec_info, sym->st_value - + dynent->addend, - (bfd_vma) 0); + + dynent->addend); dynent->addend -= sym->st_value; dynent->addend += msec->output_section->vma + msec->output_offset diff -uprN binutils-2.15.90.0.3/bfd/elfxx-mips.c binutils-2.15.91.0.1/bfd/elfxx-mips.c --- binutils-2.15.90.0.3/bfd/elfxx-mips.c 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/elfxx-mips.c 2004-05-27 11:26:02.452453694 -0700 @@ -400,8 +400,6 @@ static asection *mips_elf_got_section (bfd *, bfd_boolean); static struct mips_got_info *mips_elf_got_info (bfd *, asection **); -static long mips_elf_get_global_gotsym_index - (bfd *abfd); static bfd_vma mips_elf_local_got_index (bfd *, bfd *, struct bfd_link_info *, bfd_vma); static bfd_vma mips_elf_global_got_index @@ -589,6 +587,7 @@ static bfd *reldyn_sorting_bfd; /* In case we're on a 32-bit machine, construct a 64-bit "-1" value from smaller values. Start with zero, widen, *then* decrement. */ #define MINUS_ONE (((bfd_vma)0) - 1) +#define MINUS_TWO (((bfd_vma)0) - 2) /* The number of local .got entries we reserve. */ #define MIPS_RESERVED_GOTNO (2) @@ -811,7 +810,6 @@ _bfd_mips_elf_read_ecoff_info (bfd *abfd #undef READ debug->fdr = NULL; - debug->adjust = NULL; return TRUE; @@ -1223,13 +1221,6 @@ _bfd_mips_elf_lo16_reloc (bfd *abfd, are carry or borrow will induce a change of +1 or -1 in the high part. */ hi->rel.addend += (vallo + 0x8000) & 0xffff; - /* R_MIPS_GNU_REL_HI16 relocations are relative to the address of the - lo16 relocation, not their own address. If we're calculating the - final value, and hence subtracting the "PC", subtract the offset - of the lo16 relocation from here. */ - if (output_bfd == NULL && hi->rel.howto->type == R_MIPS_GNU_REL_HI16) - hi->rel.addend -= reloc_entry->address - hi->rel.address; - ret = _bfd_mips_elf_generic_reloc (abfd, &hi->rel, symbol, hi->data, hi->input_section, output_bfd, error_message); @@ -1815,28 +1806,6 @@ mips_elf_got_info (bfd *abfd, asection * return g; } -/* Obtain the lowest dynamic index of a symbol that was assigned a - global GOT entry. */ -static long -mips_elf_get_global_gotsym_index (bfd *abfd) -{ - asection *sgot; - struct mips_got_info *g; - - if (abfd == NULL) - return 0; - - sgot = mips_elf_got_section (abfd, TRUE); - if (sgot == NULL || mips_elf_section_data (sgot) == NULL) - return 0; - - g = mips_elf_section_data (sgot)->u.got_info; - if (g == NULL || g->global_gotsym == NULL) - return 0; - - return g->global_gotsym->dynindx; -} - /* Returns the GOT offset at which the indicated address can be found. If there is not yet a GOT entry for this value, create one. Returns -1 if no satisfactory GOT offset can be found. */ @@ -2753,12 +2722,6 @@ mips_elf_next_relocation (bfd *abfd ATTR const Elf_Internal_Rela *relocation, const Elf_Internal_Rela *relend) { - /* According to the MIPS ELF ABI, the R_MIPS_LO16 relocation must be - immediately following. However, for the IRIX6 ABI, the next - relocation may be a composed relocation consisting of several - relocations for the same address. In that case, the R_MIPS_LO16 - relocation may occur as one of these. We permit a similar - extension in general, as that is useful for GCC. */ while (relocation < relend) { if (ELF_R_TYPE (abfd, relocation->r_info) == r_type) @@ -2860,7 +2823,7 @@ mips_elf_higher (bfd_vma value ATTRIBUTE return ((value + (bfd_vma) 0x80008000) >> 32) & 0xffff; #else abort (); - return (bfd_vma) -1; + return MINUS_ONE; #endif } @@ -2873,7 +2836,7 @@ mips_elf_highest (bfd_vma value ATTRIBUT return ((value + (((bfd_vma) 0x8000 << 32) | 0x80008000)) >> 48) & 0xffff; #else abort (); - return (bfd_vma) -1; + return MINUS_ONE; #endif } @@ -3373,29 +3336,12 @@ mips_elf_calculate_relocation (bfd *abfd value &= howto->dst_mask; break; - case R_MIPS_PC32: - case R_MIPS_PC64: - case R_MIPS_GNU_REL_LO16: - value = symbol + addend - p; - value &= howto->dst_mask; - break; - case R_MIPS_GNU_REL16_S2: value = symbol + _bfd_mips_elf_sign_extend (addend, 18) - p; overflowed_p = mips_elf_overflow_p (value, 18); value = (value >> 2) & howto->dst_mask; break; - case R_MIPS_GNU_REL_HI16: - /* Instead of subtracting 'p' here, we should be subtracting the - equivalent value for the LO part of the reloc, since the value - here is relative to that address. Because that's not easy to do, - we adjust 'addend' in _bfd_mips_elf_relocate_section(). See also - the comment there for more information. */ - value = mips_elf_high (addend + symbol - p); - value &= howto->dst_mask; - break; - case R_MIPS16_26: /* The calculation for R_MIPS16_26 is just the same as for an R_MIPS_26. It's only the storage of the relocated field into @@ -3879,15 +3825,15 @@ mips_elf_create_dynamic_relocation (bfd outrel[2].r_offset = outrel[0].r_offset; /* If we didn't need the relocation at all, this value will be -1. */ - if (outrel[0].r_offset == (bfd_vma) -1) + if (outrel[0].r_offset == MINUS_ONE) skip = TRUE; } #endif - if (outrel[0].r_offset == (bfd_vma) -1) + if (outrel[0].r_offset == MINUS_ONE) /* The relocation field has been deleted. */ skip = TRUE; - else if (outrel[0].r_offset == (bfd_vma) -2) + else if (outrel[0].r_offset == MINUS_TWO) { /* The relocation field has been converted into a relative value of some sort. Functions like _bfd_elf_write_section_eh_frame expect @@ -6254,7 +6200,6 @@ _bfd_mips_elf_relocate_section (bfd *out combination of the addend stored in two different relocations. */ if (r_type == R_MIPS_HI16 - || r_type == R_MIPS_GNU_REL_HI16 || (r_type == R_MIPS_GOT16 && mips_elf_local_relocation_p (input_bfd, rel, local_sections, FALSE))) @@ -6262,7 +6207,6 @@ _bfd_mips_elf_relocate_section (bfd *out bfd_vma l; const Elf_Internal_Rela *lo16_relocation; reloc_howto_type *lo16_howto; - unsigned int lo; /* The combined value is the sum of the HI16 addend, left-shifted by sixteen bits, and the LO16 @@ -6270,18 +6214,25 @@ _bfd_mips_elf_relocate_section (bfd *out a `lui' of the HI16 value, and then an `addiu' of the LO16 value.) - Scan ahead to find a matching LO16 relocation. */ - if (r_type == R_MIPS_GNU_REL_HI16) - lo = R_MIPS_GNU_REL_LO16; - else - lo = R_MIPS_LO16; - lo16_relocation = mips_elf_next_relocation (input_bfd, lo, + Scan ahead to find a matching LO16 relocation. + + According to the MIPS ELF ABI, the R_MIPS_LO16 + relocation must be immediately following. + However, for the IRIX6 ABI, the next relocation + may be a composed relocation consisting of + several relocations for the same address. In + that case, the R_MIPS_LO16 relocation may occur + as one of these. We permit a similar extension + in general, as that is useful for GCC. */ + lo16_relocation = mips_elf_next_relocation (input_bfd, + R_MIPS_LO16, rel, relend); if (lo16_relocation == NULL) return FALSE; /* Obtain the addend kept there. */ - lo16_howto = MIPS_ELF_RTYPE_TO_HOWTO (input_bfd, lo, FALSE); + lo16_howto = MIPS_ELF_RTYPE_TO_HOWTO (input_bfd, + R_MIPS_LO16, FALSE); l = mips_elf_obtain_contents (lo16_howto, lo16_relocation, input_bfd, contents); l &= lo16_howto->src_mask; @@ -6292,16 +6243,6 @@ _bfd_mips_elf_relocate_section (bfd *out /* Compute the combined addend. */ addend += l; - - /* If PC-relative, subtract the difference between the - address of the LO part of the reloc and the address of - the HI part. The relocation is relative to the LO - part, but mips_elf_calculate_relocation() doesn't - know its address or the difference from the HI part, so - we subtract that difference here. See also the - comment in mips_elf_calculate_relocation(). */ - if (r_type == R_MIPS_GNU_REL_HI16) - addend -= (lo16_relocation->r_offset - rel->r_offset); } else if (r_type == R_MIPS16_GPREL) { @@ -6359,8 +6300,7 @@ _bfd_mips_elf_relocate_section (bfd *out else { if (r_type == R_MIPS_HI16 - || r_type == R_MIPS_GOT16 - || r_type == R_MIPS_GNU_REL_HI16) + || r_type == R_MIPS_GOT16) addend = mips_elf_high (addend); else if (r_type == R_MIPS_HIGHER) addend = mips_elf_higher (addend); @@ -6606,15 +6546,13 @@ _bfd_mips_elf_finish_dynamic_symbol (bfd Elf_Internal_Sym *sym) { bfd *dynobj; - bfd_vma gval; asection *sgot; struct mips_got_info *g, *gg; const char *name; dynobj = elf_hash_table (info)->dynobj; - gval = sym->st_value; - if (h->plt.offset != (bfd_vma) -1) + if (h->plt.offset != MINUS_ONE) { asection *s; bfd_byte stub[MIPS_FUNCTION_STUB_SIZE]; @@ -6647,8 +6585,8 @@ _bfd_mips_elf_finish_dynamic_symbol (bfd /* The run-time linker uses the st_value field of the symbol to reset the global offset table entry for this external to its stub address when unlinking a shared object. */ - gval = s->output_section->vma + s->output_offset + h->plt.offset; - sym->st_value = gval; + sym->st_value = (s->output_section->vma + s->output_offset + + h->plt.offset); } BFD_ASSERT (h->dynindx != -1 diff -uprN binutils-2.15.90.0.3/bfd/elfxx-target.h binutils-2.15.91.0.1/bfd/elfxx-target.h --- binutils-2.15.90.0.3/bfd/elfxx-target.h 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/elfxx-target.h 2004-05-27 11:26:02.454453435 -0700 @@ -1,6 +1,6 @@ /* Target definitions for NN-bit ELF Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, - 2003 Free Software Foundation, Inc. + 2003, 2004 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. @@ -34,6 +34,8 @@ #define bfd_elfNN_canonicalize_dynamic_symtab \ _bfd_elf_canonicalize_dynamic_symtab +#define bfd_elfNN_get_synthetic_symtab \ + _bfd_elf_get_synthetic_symtab #ifndef bfd_elfNN_canonicalize_reloc #define bfd_elfNN_canonicalize_reloc _bfd_elf_canonicalize_reloc #endif @@ -134,6 +136,10 @@ _bfd_elf_merge_sections #endif +#ifndef bfd_elfNN_bfd_is_group_section +#define bfd_elfNN_bfd_is_group_section bfd_elf_is_group_section +#endif + #ifndef bfd_elfNN_bfd_discard_group #define bfd_elfNN_bfd_discard_group bfd_elf_discard_group #endif @@ -152,6 +158,10 @@ #define bfd_elfNN_bfd_copy_private_section_data \ _bfd_elf_copy_private_section_data #endif +#ifndef bfd_elfNN_bfd_copy_private_header_data +#define bfd_elfNN_bfd_copy_private_header_data \ + _bfd_elf_copy_private_header_data +#endif #ifndef bfd_elfNN_bfd_copy_private_bfd_data #define bfd_elfNN_bfd_copy_private_bfd_data \ _bfd_elf_copy_private_bfd_data @@ -443,6 +453,13 @@ #define elf_backend_rela_normal 0 #endif +#ifndef elf_backend_plt_sym_val +#define elf_backend_plt_sym_val NULL +#endif +#ifndef elf_backend_relplt_name +#define elf_backend_relplt_name NULL +#endif + #ifndef ELF_MACHINE_ALT1 #define ELF_MACHINE_ALT1 0 #endif @@ -524,6 +541,8 @@ static const struct elf_backend_data elf elf_backend_mips_rtype_to_howto, elf_backend_ecoff_debug_swap, elf_backend_bfd_from_remote_memory, + elf_backend_plt_sym_val, + elf_backend_relplt_name, ELF_MACHINE_ALT1, ELF_MACHINE_ALT2, &elf_backend_size_info, diff -uprN binutils-2.15.90.0.3/bfd/hash.c binutils-2.15.91.0.1/bfd/hash.c --- binutils-2.15.90.0.3/bfd/hash.c 2004-01-14 13:07:43.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/hash.c 2004-05-27 11:26:02.470451366 -0700 @@ -1,28 +1,29 @@ /* hash.c -- hash table routines for BFD - Copyright 1993, 1994, 1995, 1997, 1999, 2001, 2002, 2003 + Copyright 1993, 1994, 1995, 1997, 1999, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. Written by Steve Chamberlain -This file is part of BFD, the Binary File Descriptor library. + This file is part of BFD, the Binary File Descriptor library. -This program 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 of the License, or -(at your option) any later version. - -This program 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 this program; if not, write to the Free Software -Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + This program 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 of the License, or + (at your option) any later version. + + This program 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 this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ #include "bfd.h" #include "sysdep.h" #include "libbfd.h" #include "objalloc.h" +#include "libiberty.h" /* SECTION @@ -87,6 +88,10 @@ SUBSECTION been allocated for a hash table. This will not free up the <> itself, which you must provide. +@findex bfd_hash_set_default_size + Use <> to set the default size of + hash table to use. + INODE Looking Up or Entering a String, Traversing a Hash Table, Creating and Freeing a Hash Table, Hash Tables SUBSECTION @@ -295,7 +300,8 @@ SUBSUBSECTION */ /* The default number of entries to use when creating a hash table. */ -#define DEFAULT_SIZE (4051) +#define DEFAULT_SIZE 4051 +static size_t bfd_default_hash_table_size = DEFAULT_SIZE; /* Create a new hash table, given a number of entries. */ @@ -339,7 +345,7 @@ bfd_hash_table_init (table, newfunc) struct bfd_hash_table *, const char *)); { - return bfd_hash_table_init_n (table, newfunc, DEFAULT_SIZE); + return bfd_hash_table_init_n (table, newfunc, bfd_default_hash_table_size); } /* Free a hash table. */ @@ -495,6 +501,24 @@ bfd_hash_traverse (table, func, info) } } +void +bfd_hash_set_default_size (bfd_size_type hash_size) +{ + int index; + /* Extend this prime list if you want more granularity of hash table size. */ + static bfd_size_type hash_size_primes[] = + { + 1021, 4051, 8599, 16699 + }; + + /* Work out best prime number near the hash_size. */ + for (index = 0; index < ARRAY_SIZE (hash_size_primes) - 1; ++index) + if (hash_size <= hash_size_primes[index]) + break; + + bfd_default_hash_table_size = hash_size_primes[index]; +} + /* A few different object file formats (a.out, COFF, ELF) use a string table. These functions support adding strings to a string table, returning the byte offset, and writing out the table. diff -uprN binutils-2.15.90.0.3/bfd/hppabsd-core.c binutils-2.15.91.0.1/bfd/hppabsd-core.c --- binutils-2.15.90.0.3/bfd/hppabsd-core.c 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/hppabsd-core.c 2004-05-27 11:26:02.471451237 -0700 @@ -139,7 +139,8 @@ hppabsd_core_core_file_p (abfd) { FILE *stream = bfd_cache_lookup (abfd); struct stat statbuf; - if (stream == NULL || fstat (fileno (stream), &statbuf) < 0) + + if (fstat (fileno (stream), &statbuf) < 0) { bfd_set_error (bfd_error_system_call); return NULL; diff -uprN binutils-2.15.90.0.3/bfd/hpux-core.c binutils-2.15.91.0.1/bfd/hpux-core.c --- binutils-2.15.90.0.3/bfd/hpux-core.c 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/hpux-core.c 2004-05-27 11:26:02.472451108 -0700 @@ -276,7 +276,8 @@ hpux_core_core_file_p (abfd) case CORE_ANON_SHMEM: if (!make_bfd_asection (abfd, ".data", SEC_ALLOC + SEC_LOAD + SEC_HAS_CONTENTS, - core_header.len, core_header.addr, 2)) + core_header.len, + (bfd_vma) core_header.addr, 2)) goto fail; bfd_seek (abfd, (file_ptr) core_header.len, SEEK_CUR); diff -uprN binutils-2.15.90.0.3/bfd/i386msdos.c binutils-2.15.91.0.1/bfd/i386msdos.c --- binutils-2.15.90.0.3/bfd/i386msdos.c 2004-01-14 13:07:43.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/i386msdos.c 2004-05-27 11:26:02.476450591 -0700 @@ -1,6 +1,6 @@ /* BFD back-end for MS-DOS executables. Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2001, 2002, - 2003 Free Software Foundation, Inc. + 2003, 2004 Free Software Foundation, Inc. Written by Bryan Ford of the University of Utah. Contributed by the Center for Software Science at the @@ -176,6 +176,7 @@ msdos_set_section_contents (abfd, sectio #define msdos_bfd_relax_section bfd_generic_relax_section #define msdos_bfd_gc_sections bfd_generic_gc_sections #define msdos_bfd_merge_sections bfd_generic_merge_sections +#define msdos_bfd_is_group_section bfd_generic_is_group_section #define msdos_bfd_discard_group bfd_generic_discard_group #define msdos_bfd_link_hash_table_create _bfd_generic_link_hash_table_create #define msdos_bfd_link_hash_table_free _bfd_generic_link_hash_table_free diff -uprN binutils-2.15.90.0.3/bfd/i386os9k.c binutils-2.15.91.0.1/bfd/i386os9k.c --- binutils-2.15.90.0.3/bfd/i386os9k.c 2002-12-16 12:22:52.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/i386os9k.c 2004-05-27 11:26:02.477450461 -0700 @@ -1,6 +1,6 @@ /* BFD back-end for os9000 i386 binaries. - Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2001, 2002 - Free Software Foundation, Inc. + Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2001, 2002, + 2004 Free Software Foundation, Inc. Written by Cygnus Support. This file is part of BFD, the Binary File Descriptor library. @@ -333,6 +333,7 @@ os9k_sizeof_headers (ignore_abfd, ignore #define os9k_bfd_relax_section bfd_generic_relax_section #define os9k_bfd_gc_sections bfd_generic_gc_sections #define os9k_bfd_merge_sections bfd_generic_merge_sections +#define os9k_bfd_is_group_section bfd_generic_is_group_section #define os9k_bfd_discard_group bfd_generic_discard_group #define os9k_bfd_link_hash_table_create _bfd_generic_link_hash_table_create #define os9k_bfd_link_hash_table_free _bfd_generic_link_hash_table_free diff -uprN binutils-2.15.90.0.3/bfd/ieee.c binutils-2.15.91.0.1/bfd/ieee.c --- binutils-2.15.90.0.3/bfd/ieee.c 2004-01-14 13:07:43.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/ieee.c 2004-05-27 11:26:02.480450073 -0700 @@ -1,6 +1,6 @@ /* BFD back-end for ieee-695 objects. Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003 + 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. Written by Steve Chamberlain of Cygnus Support. @@ -4037,6 +4037,7 @@ ieee_bfd_debug_info_accumulate (abfd, se #define ieee_bfd_relax_section bfd_generic_relax_section #define ieee_bfd_gc_sections bfd_generic_gc_sections #define ieee_bfd_merge_sections bfd_generic_merge_sections +#define ieee_bfd_is_group_section bfd_generic_is_group_section #define ieee_bfd_discard_group bfd_generic_discard_group #define ieee_bfd_link_hash_table_create _bfd_generic_link_hash_table_create #define ieee_bfd_link_hash_table_free _bfd_generic_link_hash_table_free diff -uprN binutils-2.15.90.0.3/bfd/ihex.c binutils-2.15.91.0.1/bfd/ihex.c --- binutils-2.15.90.0.3/bfd/ihex.c 2004-01-14 13:07:43.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/ihex.c 2004-05-27 11:26:02.482449815 -0700 @@ -1,5 +1,5 @@ /* BFD back-end for Intel Hex objects. - Copyright 1995, 1996, 1998, 1999, 2000, 2001, 2002, 2003 + Copyright 1995, 1996, 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. Written by Ian Lance Taylor of Cygnus Support . @@ -988,6 +988,7 @@ ihex_sizeof_headers (abfd, exec) #define ihex_bfd_relax_section bfd_generic_relax_section #define ihex_bfd_gc_sections bfd_generic_gc_sections #define ihex_bfd_merge_sections bfd_generic_merge_sections +#define ihex_bfd_is_group_section bfd_generic_is_group_section #define ihex_bfd_discard_group bfd_generic_discard_group #define ihex_bfd_link_hash_table_create _bfd_generic_link_hash_table_create #define ihex_bfd_link_hash_table_free _bfd_generic_link_hash_table_free diff -uprN binutils-2.15.90.0.3/bfd/libaout.h binutils-2.15.91.0.1/bfd/libaout.h --- binutils-2.15.90.0.3/bfd/libaout.h 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/libaout.h 2004-05-27 11:26:02.498447746 -0700 @@ -273,9 +273,12 @@ enum machine_type M_ALPHA_NETBSD = 141, /* NetBSD/alpha binary. */ M_ARM6_NETBSD = 143, /* NetBSD/arm32 binary. */ M_SPARCLET_1 = 147, /* 0x93, reserved. */ + M_POWERPC_NETBSD = 149, /* NetBSD/powerpc (big-endian) binary. */ M_VAX4K_NETBSD = 150, /* NetBSD/vax 4K pages binary. */ M_MIPS1 = 151, /* MIPS R2000/R3000 binary. */ M_MIPS2 = 152, /* MIPS R4000/R6000 binary. */ + M_88K_OPENBSD = 153, /* OpenBSD/m88k binary. */ + M_HPPA_OPENBSD = 154, /* OpenBSD/hppa binary. */ M_SPARC64_NETBSD = 156, /* NetBSD/sparc64 binary. */ M_X86_64_NETBSD = 157, /* NetBSD/amd64 binary. */ M_SPARCLET_2 = 163, /* 0xa3, reserved. */ diff -uprN binutils-2.15.90.0.3/bfd/libbfd-in.h binutils-2.15.91.0.1/bfd/libbfd-in.h --- binutils-2.15.90.0.3/bfd/libbfd-in.h 2004-03-03 12:24:34.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/libbfd-in.h 2004-05-27 11:26:02.507446582 -0700 @@ -212,6 +212,8 @@ extern bfd_boolean _bfd_generic_get_sect ((bfd_boolean (*) (bfd *, asection *, bfd *, asection *)) bfd_true) #define _bfd_generic_bfd_copy_private_symbol_data \ ((bfd_boolean (*) (bfd *, asymbol *, bfd *, asymbol *)) bfd_true) +#define _bfd_generic_bfd_copy_private_header_data \ + ((bfd_boolean (*) (bfd *, bfd *)) bfd_true) #define _bfd_generic_bfd_print_private_bfd_data \ ((bfd_boolean (*) (bfd *, void *)) bfd_true) @@ -355,6 +357,9 @@ extern bfd_boolean _bfd_generic_set_sect #define _bfd_nolink_bfd_merge_sections \ ((bfd_boolean (*) (bfd *, struct bfd_link_info *)) \ bfd_false) +#define _bfd_nolink_bfd_is_group_section \ + ((bfd_boolean (*) (bfd *, const struct bfd_section *)) \ + bfd_false) #define _bfd_nolink_bfd_discard_group \ ((bfd_boolean (*) (bfd *, struct bfd_section *)) \ bfd_false) @@ -378,6 +383,8 @@ extern bfd_boolean _bfd_generic_set_sect #define _bfd_nodynamic_get_dynamic_symtab_upper_bound _bfd_n1 #define _bfd_nodynamic_canonicalize_dynamic_symtab \ ((long (*) (bfd *, asymbol **)) _bfd_n1) +#define _bfd_nodynamic_get_synthetic_symtab \ + ((long (*) (bfd *, asymbol **, asymbol **)) _bfd_n1) #define _bfd_nodynamic_get_dynamic_reloc_upper_bound _bfd_n1 #define _bfd_nodynamic_canonicalize_dynamic_reloc \ ((long (*) (bfd *, arelent **, asymbol **)) _bfd_n1) @@ -513,15 +520,15 @@ extern bfd_boolean _bfd_write_stab_strin extern bfd_vma _bfd_stab_section_offset (bfd *, void **, asection *, void **, bfd_vma); -/* Attempt to merge a SEC_MERGE section. */ +/* Register a SEC_MERGE section as a candidate for merging. */ -extern bfd_boolean _bfd_merge_section +extern bfd_boolean _bfd_add_merge_section (bfd *, void **, asection *, void **); /* Attempt to merge SEC_MERGE sections. */ extern bfd_boolean _bfd_merge_sections - (bfd *, void *, void (*) (bfd *, asection *)); + (bfd *, struct bfd_link_info *, void *, void (*) (bfd *, asection *)); /* Write out a merged section. */ @@ -531,7 +538,7 @@ extern bfd_boolean _bfd_write_merged_sec /* Find an offset within a modified SEC_MERGE section. */ extern bfd_vma _bfd_merged_section_offset - (bfd *, asection **, void *, bfd_vma, bfd_vma); + (bfd *, asection **, void *, bfd_vma); /* Create a string table. */ extern struct bfd_strtab_hash *_bfd_stringtab_init diff -uprN binutils-2.15.90.0.3/bfd/libbfd.h binutils-2.15.91.0.1/bfd/libbfd.h --- binutils-2.15.90.0.3/bfd/libbfd.h 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/libbfd.h 2004-05-27 11:26:02.526444126 -0700 @@ -217,6 +217,8 @@ extern bfd_boolean _bfd_generic_get_sect ((bfd_boolean (*) (bfd *, asection *, bfd *, asection *)) bfd_true) #define _bfd_generic_bfd_copy_private_symbol_data \ ((bfd_boolean (*) (bfd *, asymbol *, bfd *, asymbol *)) bfd_true) +#define _bfd_generic_bfd_copy_private_header_data \ + ((bfd_boolean (*) (bfd *, bfd *)) bfd_true) #define _bfd_generic_bfd_print_private_bfd_data \ ((bfd_boolean (*) (bfd *, void *)) bfd_true) @@ -360,6 +362,9 @@ extern bfd_boolean _bfd_generic_set_sect #define _bfd_nolink_bfd_merge_sections \ ((bfd_boolean (*) (bfd *, struct bfd_link_info *)) \ bfd_false) +#define _bfd_nolink_bfd_is_group_section \ + ((bfd_boolean (*) (bfd *, const struct bfd_section *)) \ + bfd_false) #define _bfd_nolink_bfd_discard_group \ ((bfd_boolean (*) (bfd *, struct bfd_section *)) \ bfd_false) @@ -383,6 +388,8 @@ extern bfd_boolean _bfd_generic_set_sect #define _bfd_nodynamic_get_dynamic_symtab_upper_bound _bfd_n1 #define _bfd_nodynamic_canonicalize_dynamic_symtab \ ((long (*) (bfd *, asymbol **)) _bfd_n1) +#define _bfd_nodynamic_get_synthetic_symtab \ + ((long (*) (bfd *, asymbol **, asymbol **)) _bfd_n1) #define _bfd_nodynamic_get_dynamic_reloc_upper_bound _bfd_n1 #define _bfd_nodynamic_canonicalize_dynamic_reloc \ ((long (*) (bfd *, arelent **, asymbol **)) _bfd_n1) @@ -518,15 +525,15 @@ extern bfd_boolean _bfd_write_stab_strin extern bfd_vma _bfd_stab_section_offset (bfd *, void **, asection *, void **, bfd_vma); -/* Attempt to merge a SEC_MERGE section. */ +/* Register a SEC_MERGE section as a candidate for merging. */ -extern bfd_boolean _bfd_merge_section +extern bfd_boolean _bfd_add_merge_section (bfd *, void **, asection *, void **); /* Attempt to merge SEC_MERGE sections. */ extern bfd_boolean _bfd_merge_sections - (bfd *, void *, void (*) (bfd *, asection *)); + (bfd *, struct bfd_link_info *, void *, void (*) (bfd *, asection *)); /* Write out a merged section. */ @@ -536,7 +543,7 @@ extern bfd_boolean _bfd_write_merged_sec /* Find an offset within a modified SEC_MERGE section. */ extern bfd_vma _bfd_merged_section_offset - (bfd *, asection **, void *, bfd_vma, bfd_vma); + (bfd *, asection **, void *, bfd_vma); /* Create a string table. */ extern struct bfd_strtab_hash *_bfd_stringtab_init @@ -657,6 +664,27 @@ bfd_boolean bfd_write_bigendian_4byte_in unsigned int bfd_log2 (bfd_vma x); /* Extracted from bfdio.c. */ +struct bfd_iovec +{ + /* To avoid problems with macros, a "b" rather than "f" + prefix is prepended to each method name. */ + /* Attempt to read/write NBYTES on ABFD's IOSTREAM storing/fetching + bytes starting at PTR. Return the number of bytes actually + transfered (a read past end-of-file returns less than NBYTES), + or -1 (setting <>) if an error occurs. */ + file_ptr (*bread) (struct bfd *abfd, void *ptr, file_ptr nbytes); + file_ptr (*bwrite) (struct bfd *abfd, const void *ptr, + file_ptr nbytes); + /* Return the current IOSTREAM file offset, or -1 (setting <> + if an error occurs. */ + file_ptr (*btell) (struct bfd *abfd); + /* For the following, on successful completion a value of 0 is returned. + Otherwise, a value of -1 is returned (and <> is set). */ + int (*bseek) (struct bfd *abfd, file_ptr offset, int whence); + int (*bclose) (struct bfd *abfd); + int (*bflush) (struct bfd *abfd); + int (*bstat) (struct bfd *abfd, struct stat *sb); +}; /* Extracted from bfdwin.c. */ struct _bfd_window_internal { struct _bfd_window_internal *next; @@ -670,9 +698,9 @@ struct _bfd_window_internal { extern bfd *bfd_last_cache; #define bfd_cache_lookup(x) \ - ((x)==bfd_last_cache? \ - (FILE*) (bfd_last_cache->iostream): \ - bfd_cache_lookup_worker(x)) + ((x) == bfd_last_cache ? \ + (FILE *) (bfd_last_cache->iostream): \ + bfd_cache_lookup_worker (x)) bfd_boolean bfd_cache_init (bfd *abfd); bfd_boolean bfd_cache_close (bfd *abfd); @@ -699,6 +727,7 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_16_PCREL", "BFD_RELOC_12_PCREL", "BFD_RELOC_8_PCREL", + "BFD_RELOC_32_SECREL", "BFD_RELOC_32_GOT_PCREL", "BFD_RELOC_16_GOT_PCREL", "BFD_RELOC_8_GOT_PCREL", @@ -836,8 +865,6 @@ static const char *const bfd_reloc_code_ "BFD_RELOC_HI16", "BFD_RELOC_HI16_S", "BFD_RELOC_LO16", - "BFD_RELOC_PCREL_HI16_S", - "BFD_RELOC_PCREL_LO16", "BFD_RELOC_MIPS_LITERAL", "BFD_RELOC_MIPS_GOT16", "BFD_RELOC_MIPS_CALL16", diff -uprN binutils-2.15.90.0.3/bfd/libecoff.h binutils-2.15.91.0.1/bfd/libecoff.h --- binutils-2.15.90.0.3/bfd/libecoff.h 2004-01-14 13:07:43.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/libecoff.h 2004-05-27 11:26:02.541442186 -0700 @@ -1,5 +1,5 @@ /* BFD ECOFF object file private structure. - Copyright 1993, 1994, 1995, 1996, 1999, 2001, 2002, 2003 + Copyright 1993, 1994, 1995, 1996, 1999, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. Written by Ian Lance Taylor, Cygnus Support. @@ -176,41 +176,13 @@ typedef struct ecoff_symbol_struct #define ecoff_get_sym_index(symbol) ((symbol)->udata.i) #define ecoff_set_sym_index(symbol, idx) ((symbol)->udata.i = (idx)) -/* When generating MIPS embedded PIC code, the linker relaxes the code - to turn PC relative branches into longer code sequences when the PC - relative branch is out of range. This involves reading the relocs - in bfd_relax_section as well as in bfd_final_link, and requires the - code to keep track of which relocs have been expanded. A pointer - to this structure is put in the used_by_bfd pointer of a section to - keep track of this information. The user_by_bfd pointer will be - NULL if the information was not needed. */ +/* A pointer to this structure is put in the used_by_bfd pointer of + a section to keep track of any per-section data. + The user_by_bfd pointer will be NULL if the information was not + needed. */ struct ecoff_section_tdata { - /* The unswapped relocs for this section. These are stored in - memory so the input file does not have to be read twice. */ - PTR external_relocs; - - /* The contents of the section. These bytes may or may not be saved - in memory, but if it is this is a pointer to them. */ - bfd_byte *contents; - - /* Offset adjustments for PC relative branches. A number other than - 1 is an addend for a PC relative branch, or a switch table entry - which is the difference of two .text locations; this addend - arises because the branch or difference crosses one or more - branches which were expanded into a larger code sequence. A 1 - means that this branch was itself expanded into a larger code - sequence. 1 is not a possible offset, since all offsets must be - multiples of the instruction size, which is 4; also, the only - relocs with non-zero offsets will be PC relative branches or - switch table entries within the same object file. If this field - is NULL, no branches were expanded and no offsets are required. - Otherwise there are as many entries as there are relocs in the - section, and the entry for any reloc that is not PC relative is - zero. */ - long *offsets; - /* When producing an executable (i.e., final, non-relocatable link) on the Alpha, we may need to use multiple global pointer values to span the entire .lita section. In essence, we allow each @@ -277,6 +249,9 @@ extern bfd_boolean _bfd_ecoff_bfd_copy_p #define _bfd_ecoff_bfd_copy_private_symbol_data \ _bfd_generic_bfd_copy_private_symbol_data +#define _bfd_ecoff_bfd_copy_private_header_data \ + _bfd_generic_bfd_copy_private_header_data + #define _bfd_ecoff_bfd_print_private_bfd_data \ _bfd_generic_bfd_print_private_bfd_data diff -uprN binutils-2.15.90.0.3/bfd/m88kopenbsd.c binutils-2.15.91.0.1/bfd/m88kopenbsd.c --- binutils-2.15.90.0.3/bfd/m88kopenbsd.c 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/m88kopenbsd.c 2004-05-27 11:26:02.542442057 -0700 @@ -0,0 +1,33 @@ +/* BFD back-end for OpenBSD/m88k a.out binaries. + Copyright 2004 Free Software Foundation, Inc. + +This file is part of BFD, the Binary File Descriptor library. + +This program 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 of the License, or +(at your option) any later version. + +This program 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 this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + +#define TARGET_IS_BIG_ENDIAN_P + +#define TARGET_PAGE_SIZE 4096 + +#define DEFAULT_ARCH bfd_arch_m88k +#define DEFAULT_MID M_88K_OPENBSD + +/* Do not "beautify" the CONCAT* macro args. Traditional C will not + remove whitespace added here, and thus will fail to concatenate + the tokens. */ +#define MY(OP) CONCAT2 (m88kopenbsd_,OP) +#define TARGETNAME "a.out-m88k-openbsd" + +#include "netbsd.h" diff -uprN binutils-2.15.90.0.3/bfd/mach-o.c binutils-2.15.91.0.1/bfd/mach-o.c --- binutils-2.15.90.0.3/bfd/mach-o.c 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/mach-o.c 2004-05-27 11:26:02.554440505 -0700 @@ -1,5 +1,5 @@ /* Mach-O support for BFD. - Copyright 1999, 2000, 2001, 2002, 2003 + Copyright 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. @@ -68,7 +68,9 @@ #define bfd_mach_o_set_section_contents _bfd_generic_set_section_contents #define bfd_mach_o_bfd_gc_sections bfd_generic_gc_sections #define bfd_mach_o_bfd_merge_sections bfd_generic_merge_sections +#define bfd_mach_o_bfd_is_group_section bfd_generic_is_group_section #define bfd_mach_o_bfd_discard_group bfd_generic_discard_group +#define bfd_mach_o_bfd_copy_private_header_data _bfd_generic_bfd_copy_private_header_data static bfd_boolean bfd_mach_o_bfd_copy_private_symbol_data PARAMS ((bfd *, asymbol *, bfd *, asymbol *)); diff -uprN binutils-2.15.90.0.3/bfd/merge.c binutils-2.15.91.0.1/bfd/merge.c --- binutils-2.15.90.0.3/bfd/merge.c 2004-01-14 13:07:43.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/merge.c 2004-05-27 11:26:02.572438178 -0700 @@ -90,7 +90,7 @@ struct sec_merge_sec_info /* A hash table used to hold section content. */ struct sec_merge_hash *htab; /* First string in this section. */ - struct sec_merge_hash_entry *first; + struct sec_merge_hash_entry *first_str; /* Original section content. */ unsigned char contents[1]; }; @@ -102,30 +102,28 @@ static struct bfd_hash_entry * sec_merge_hash_newfunc (struct bfd_hash_entry *entry, struct bfd_hash_table *table, const char *string) { - struct sec_merge_hash_entry *ret = (struct sec_merge_hash_entry *) entry; - /* Allocate the structure if it has not already been allocated by a subclass. */ - if (ret == (struct sec_merge_hash_entry *) NULL) - ret = ((struct sec_merge_hash_entry *) - bfd_hash_allocate (table, sizeof (struct sec_merge_hash_entry))); - if (ret == (struct sec_merge_hash_entry *) NULL) + if (entry == NULL) + entry = bfd_hash_allocate (table, sizeof (struct sec_merge_hash_entry)); + if (entry == NULL) return NULL; /* Call the allocation method of the superclass. */ - ret = ((struct sec_merge_hash_entry *) - bfd_hash_newfunc ((struct bfd_hash_entry *) ret, table, string)); + entry = bfd_hash_newfunc (entry, table, string); - if (ret) + if (entry != NULL) { /* Initialize the local fields. */ + struct sec_merge_hash_entry *ret = (struct sec_merge_hash_entry *) entry; + ret->u.suffix = NULL; ret->alignment = 0; ret->secinfo = NULL; ret->next = NULL; } - return (struct bfd_hash_entry *) ret; + return entry; } /* Look up an entry in a section merge hash table. */ @@ -192,7 +190,7 @@ sec_merge_hash_lookup (struct sec_merge_ index = hash % table->table.size; for (hashp = (struct sec_merge_hash_entry *) table->table.table[index]; - hashp != (struct sec_merge_hash_entry *) NULL; + hashp != NULL; hashp = (struct sec_merge_hash_entry *) hashp->root.next) { if (hashp->root.hash == hash @@ -216,13 +214,12 @@ sec_merge_hash_lookup (struct sec_merge_ } if (! create) - return (struct sec_merge_hash_entry *) NULL; + return NULL; - hashp = (struct sec_merge_hash_entry *) - sec_merge_hash_newfunc ((struct bfd_hash_entry *) NULL, - (struct bfd_hash_table *) table, string); - if (hashp == (struct sec_merge_hash_entry *) NULL) - return (struct sec_merge_hash_entry *) NULL; + hashp = ((struct sec_merge_hash_entry *) + sec_merge_hash_newfunc (NULL, &table->table, string)); + if (hashp == NULL) + return NULL; hashp->root.string = string; hashp->root.hash = hash; hashp->len = len; @@ -239,9 +236,8 @@ static struct sec_merge_hash * sec_merge_init (unsigned int entsize, bfd_boolean strings) { struct sec_merge_hash *table; - bfd_size_type amt = sizeof (struct sec_merge_hash); - table = (struct sec_merge_hash *) bfd_malloc (amt); + table = bfd_malloc (sizeof (struct sec_merge_hash)); if (table == NULL) return NULL; @@ -294,7 +290,7 @@ sec_merge_emit (bfd *abfd, struct sec_me asection *sec = secinfo->sec; char *pad = ""; bfd_size_type off = 0; - int alignment_power = bfd_get_section_alignment (abfd, sec->output_section); + int alignment_power = sec->output_section->alignment_power; if (alignment_power) pad = bfd_zmalloc ((bfd_size_type) 1 << alignment_power); @@ -308,7 +304,7 @@ sec_merge_emit (bfd *abfd, struct sec_me if (len) { len = entry->alignment - len; - if (bfd_bwrite (pad, (bfd_size_type) len, abfd) != len) + if (bfd_bwrite (pad, len, abfd) != len) break; off += len; } @@ -316,7 +312,7 @@ sec_merge_emit (bfd *abfd, struct sec_me str = entry->root.string; len = entry->len; - if (bfd_bwrite (str, (bfd_size_type) len, abfd) != len) + if (bfd_bwrite (str, len, abfd) != len) break; off += len; @@ -328,20 +324,24 @@ sec_merge_emit (bfd *abfd, struct sec_me return entry == NULL || entry->secinfo != secinfo; } -/* This function is called for each input file from the add_symbols - pass of the linker. */ +/* Register a SEC_MERGE section as a candidate for merging. + This function is called for all non-dynamic SEC_MERGE input sections. */ bfd_boolean -_bfd_merge_section (bfd *abfd, void **psinfo, asection *sec, void **psecinfo) +_bfd_add_merge_section (bfd *abfd, void **psinfo, asection *sec, + void **psecinfo) { struct sec_merge_info *sinfo; struct sec_merge_sec_info *secinfo; unsigned int align; bfd_size_type amt; + if ((abfd->flags & DYNAMIC) != 0 + || (sec->flags & SEC_MERGE) == 0) + abort (); + if (sec->_raw_size == 0 - || (sec->flags & SEC_EXCLUDE) - || (sec->flags & SEC_MERGE) == 0 + || (sec->flags & SEC_EXCLUDE) != 0 || sec->entsize == 0) return TRUE; @@ -351,12 +351,12 @@ _bfd_merge_section (bfd *abfd, void **ps return TRUE; } - align = bfd_get_section_alignment (sec->owner, sec); - if ((sec->entsize < (unsigned int)(1 << align) + align = sec->alignment_power; + if ((sec->entsize < (unsigned) 1 << align && ((sec->entsize & (sec->entsize - 1)) || !(sec->flags & SEC_STRINGS))) - || (sec->entsize > (unsigned int)(1 << align) - && (sec->entsize & ((1 << align) - 1)))) + || (sec->entsize > (unsigned) 1 << align + && (sec->entsize & (((unsigned) 1 << align) - 1)))) { /* Sanity check. If string character size is smaller than alignment, then we require character size to be a power @@ -371,14 +371,14 @@ _bfd_merge_section (bfd *abfd, void **ps if ((secinfo = sinfo->chain) && ! ((secinfo->sec->flags ^ sec->flags) & (SEC_MERGE | SEC_STRINGS)) && secinfo->sec->entsize == sec->entsize - && ! strcmp (secinfo->sec->name, sec->name)) + && secinfo->sec->alignment_power == sec->alignment_power + && secinfo->sec->output_section == sec->output_section) break; if (sinfo == NULL) { /* Initialize the information we need to keep track of. */ - amt = sizeof (struct sec_merge_info); - sinfo = (struct sec_merge_info *) bfd_alloc (abfd, amt); + sinfo = bfd_alloc (abfd, sizeof (struct sec_merge_info)); if (sinfo == NULL) goto error_return; sinfo->next = (struct sec_merge_info *) *psinfo; @@ -396,7 +396,7 @@ _bfd_merge_section (bfd *abfd, void **ps if (*psecinfo == NULL) goto error_return; - secinfo = (struct sec_merge_sec_info *)*psecinfo; + secinfo = (struct sec_merge_sec_info *) *psecinfo; if (sinfo->chain) { secinfo->next = sinfo->chain->next; @@ -408,10 +408,10 @@ _bfd_merge_section (bfd *abfd, void **ps secinfo->sec = sec; secinfo->psecinfo = psecinfo; secinfo->htab = sinfo->htab; - secinfo->first = NULL; + secinfo->first_str = NULL; if (! bfd_get_section_contents (sec->owner, sec, secinfo->contents, - (bfd_vma) 0, sec->_raw_size)) + 0, sec->_raw_size)) goto error_return; return TRUE; @@ -433,7 +433,7 @@ record_section (struct sec_merge_info *s bfd_vma mask, eltalign; unsigned int align, i; - align = bfd_get_section_alignment (sec->owner, sec); + align = sec->alignment_power; end = secinfo->contents + sec->_raw_size; nul = FALSE; mask = ((bfd_vma) 1 << align) - 1; @@ -580,7 +580,7 @@ merge_strings (struct sec_merge_info *si /* Now sort the strings */ amt = sinfo->htab->size * sizeof (struct sec_merge_hash_entry *); - array = (struct sec_merge_hash_entry **) bfd_malloc (amt); + array = bfd_malloc (amt); if (array == NULL) goto alloc_failure; @@ -643,9 +643,9 @@ alloc_failure: } if (e->alignment) { - if (e->secinfo->first == NULL) + if (e->secinfo->first_str == NULL) { - e->secinfo->first = e; + e->secinfo->first_str = e; size = 0; } size = (size + e->alignment - 1) & ~((bfd_vma) e->alignment - 1); @@ -676,8 +676,8 @@ alloc_failure: with _bfd_merge_section. */ bfd_boolean -_bfd_merge_sections (bfd *abfd ATTRIBUTE_UNUSED, void *xsinfo, - void (*remove_hook) (bfd *, asection *)) +_bfd_merge_sections (bfd *abfd ATTRIBUTE_UNUSED, struct bfd_link_info *info, + void *xsinfo, void (*remove_hook) (bfd *, asection *)) { struct sec_merge_info *sinfo; @@ -722,11 +722,11 @@ _bfd_merge_sections (bfd *abfd ATTRIBUTE secinfo = NULL; for (e = sinfo->htab->first; e; e = e->next) { - if (e->secinfo->first == NULL) + if (e->secinfo->first_str == NULL) { if (secinfo) secinfo->sec->_cooked_size = size; - e->secinfo->first = e; + e->secinfo->first_str = e; size = 0; } size = (size + e->alignment - 1) @@ -741,11 +741,8 @@ _bfd_merge_sections (bfd *abfd ATTRIBUTE /* Finally remove all input sections which have not made it into the hash table at all. */ for (secinfo = sinfo->chain; secinfo; secinfo = secinfo->next) - if (secinfo->first == NULL) - { - secinfo->sec->_cooked_size = 0; - secinfo->sec->flags |= SEC_EXCLUDE; - } + if (secinfo->first_str == NULL) + _bfd_strip_section_from_output (info, secinfo->sec); } return TRUE; @@ -761,14 +758,14 @@ _bfd_write_merged_section (bfd *output_b secinfo = (struct sec_merge_sec_info *) psecinfo; - if (!secinfo->first) + if (secinfo->first_str == NULL) return TRUE; pos = sec->output_section->filepos + sec->output_offset; if (bfd_seek (output_bfd, pos, SEEK_SET) != 0) return FALSE; - if (! sec_merge_emit (output_bfd, secinfo->first)) + if (! sec_merge_emit (output_bfd, secinfo->first_str)) return FALSE; return TRUE; @@ -780,7 +777,7 @@ _bfd_write_merged_section (bfd *output_b bfd_vma _bfd_merged_section_offset (bfd *output_bfd ATTRIBUTE_UNUSED, asection **psec, - void *psecinfo, bfd_vma offset, bfd_vma addend) + void *psecinfo, bfd_vma offset) { struct sec_merge_sec_info *secinfo; struct sec_merge_hash_entry *entry; @@ -789,30 +786,29 @@ _bfd_merged_section_offset (bfd *output_ secinfo = (struct sec_merge_sec_info *) psecinfo; - if (offset + addend >= sec->_raw_size) + if (offset >= sec->_raw_size) { - if (offset + addend > sec->_raw_size) + if (offset > sec->_raw_size) { (*_bfd_error_handler) - (_("%s: access beyond end of merged section (%ld + %ld)"), - bfd_get_filename (sec->owner), (long) offset, (long) addend); + (_("%s: access beyond end of merged section (%ld)"), + bfd_get_filename (sec->owner), (long) offset); } - return (secinfo->first ? sec->_cooked_size : 0); + return (secinfo->first_str ? sec->_cooked_size : 0); } if (secinfo->htab->strings) { if (sec->entsize == 1) { - p = secinfo->contents + offset + addend - 1; + p = secinfo->contents + offset - 1; while (p >= secinfo->contents && *p) --p; ++p; } else { - p = secinfo->contents - + ((offset + addend) / sec->entsize) * sec->entsize; + p = secinfo->contents + (offset / sec->entsize) * sec->entsize; p -= sec->entsize; while (p >= secinfo->contents) { @@ -830,8 +826,7 @@ _bfd_merged_section_offset (bfd *output_ } else { - p = secinfo->contents - + ((offset + addend) / sec->entsize) * sec->entsize; + p = secinfo->contents + (offset / sec->entsize) * sec->entsize; } entry = sec_merge_hash_lookup (secinfo->htab, p, 0, FALSE); if (!entry) @@ -845,9 +840,8 @@ _bfd_merged_section_offset (bfd *output_ if (! secinfo->htab->first) abort (); entry = secinfo->htab->first; - p = secinfo->contents - + ((offset + addend) / sec->entsize + 1) * sec->entsize - - entry->len; + p = (secinfo->contents + (offset / sec->entsize + 1) * sec->entsize + - entry->len); } *psec = entry->secinfo->sec; diff -uprN binutils-2.15.90.0.3/bfd/mmo.c binutils-2.15.91.0.1/bfd/mmo.c --- binutils-2.15.90.0.3/bfd/mmo.c 2004-01-14 13:07:43.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/mmo.c 2004-05-27 11:26:02.583436755 -0700 @@ -1,5 +1,5 @@ /* BFD back-end for mmo objects (MMIX-specific object-format). - Copyright 2001, 2002, 2003 + Copyright 2001, 2002, 2003, 2004 Free Software Foundation, Inc. Written by Hans-Peter Nilsson (hp@bitrange.com). Infrastructure and other bits originally copied from srec.c and @@ -3286,6 +3286,7 @@ mmo_canonicalize_reloc (abfd, section, r #define mmo_set_arch_mach bfd_default_set_arch_mach #define mmo_bfd_relax_section bfd_generic_relax_section #define mmo_bfd_merge_sections bfd_generic_merge_sections +#define mmo_bfd_is_group_section bfd_generic_is_group_section #define mmo_bfd_discard_group bfd_generic_discard_group /* objcopy will be upset if we return -1 from bfd_get_reloc_upper_bound by @@ -3305,6 +3306,7 @@ mmo_canonicalize_reloc (abfd, section, r #define mmo_bfd_merge_private_bfd_data _bfd_generic_bfd_merge_private_bfd_data #define mmo_bfd_copy_private_section_data _bfd_generic_bfd_copy_private_section_data #define mmo_bfd_copy_private_symbol_data _bfd_generic_bfd_copy_private_symbol_data +#define mmo_bfd_copy_private_header_data _bfd_generic_bfd_copy_private_header_data #define mmo_bfd_set_private_flags _bfd_generic_bfd_set_private_flags #define mmo_bfd_print_private_bfd_data _bfd_generic_bfd_print_private_bfd_data diff -uprN binutils-2.15.90.0.3/bfd/netbsd-core.c binutils-2.15.91.0.1/bfd/netbsd-core.c --- binutils-2.15.90.0.3/bfd/netbsd-core.c 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/netbsd-core.c 2004-05-27 11:26:02.584436626 -0700 @@ -166,27 +166,57 @@ netbsd_core_file_p (abfd) offset += coreseg.c_size; } - /* Set architecture from machine ID. */ - switch (CORE_GETMID (core)) - { - case M_X86_64_NETBSD: - bfd_default_set_arch_mach (abfd, bfd_arch_i386, bfd_mach_x86_64); - break; - - case M_386_NETBSD: - bfd_default_set_arch_mach (abfd, bfd_arch_i386, bfd_mach_i386_i386); - break; - - case M_SPARC_NETBSD: - bfd_default_set_arch_mach (abfd, bfd_arch_sparc, bfd_mach_sparc); - break; - - case M_SPARC64_NETBSD: - case M_SPARC64_OPENBSD: - bfd_default_set_arch_mach (abfd, bfd_arch_sparc, bfd_mach_sparc_v9); - break; - } - + /* Set architecture from machine ID. */ + switch (CORE_GETMID (core)) + { + case M_ALPHA_NETBSD: + bfd_default_set_arch_mach (abfd, bfd_arch_alpha, 0); + break; + + case M_ARM6_NETBSD: + bfd_default_set_arch_mach (abfd, bfd_arch_arm, bfd_mach_arm_3); + break; + + case M_X86_64_NETBSD: + bfd_default_set_arch_mach (abfd, bfd_arch_i386, bfd_mach_x86_64); + break; + + case M_386_NETBSD: + bfd_default_set_arch_mach (abfd, bfd_arch_i386, bfd_mach_i386_i386); + break; + + case M_68K_NETBSD: + case M_68K4K_NETBSD: + bfd_default_set_arch_mach (abfd, bfd_arch_m68k, 0); + break; + + case M_88K_OPENBSD: + bfd_default_set_arch_mach (abfd, bfd_arch_m88k, 0); + break; + + case M_HPPA_OPENBSD: + bfd_default_set_arch_mach (abfd, bfd_arch_hppa, bfd_mach_hppa11); + break; + + case M_POWERPC_NETBSD: + bfd_default_set_arch_mach (abfd, bfd_arch_powerpc, bfd_mach_ppc); + break; + + case M_SPARC_NETBSD: + bfd_default_set_arch_mach (abfd, bfd_arch_sparc, bfd_mach_sparc); + break; + + case M_SPARC64_NETBSD: + case M_SPARC64_OPENBSD: + bfd_default_set_arch_mach (abfd, bfd_arch_sparc, bfd_mach_sparc_v9); + break; + + case M_VAX_NETBSD: + case M_VAX4K_NETBSD: + bfd_default_set_arch_mach (abfd, bfd_arch_vax, 0); + break; + } + /* OK, we believe you. You're a core file (sure, sure). */ return abfd->xvec; diff -uprN binutils-2.15.90.0.3/bfd/nlm-target.h binutils-2.15.91.0.1/bfd/nlm-target.h --- binutils-2.15.90.0.3/bfd/nlm-target.h 2004-01-14 13:07:43.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/nlm-target.h 2004-05-27 11:26:02.585436497 -0700 @@ -1,5 +1,5 @@ /* Target definitions for 32/64-bit NLM (NetWare Loadable Module) - Copyright 1993, 1994, 1998, 1999, 2000, 2001, 2002, 2003 + Copyright 1993, 1994, 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. @@ -44,6 +44,7 @@ Foundation, Inc., 59 Temple Place - Suit #define nlm_bfd_relax_section bfd_generic_relax_section #define nlm_bfd_gc_sections bfd_generic_gc_sections #define nlm_bfd_merge_sections bfd_generic_merge_sections +#define nlm_bfd_is_group_section bfd_generic_is_group_section #define nlm_bfd_discard_group bfd_generic_discard_group #define nlm_bfd_link_hash_table_create _bfd_generic_link_hash_table_create #define nlm_bfd_link_hash_table_free _bfd_generic_link_hash_table_free diff -uprN binutils-2.15.90.0.3/bfd/oasys.c binutils-2.15.91.0.1/bfd/oasys.c --- binutils-2.15.90.0.3/bfd/oasys.c 2004-01-14 13:07:43.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/oasys.c 2004-05-27 11:26:02.596435074 -0700 @@ -1,6 +1,6 @@ /* BFD back-end for oasys objects. Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2001, - 2002, 2003 Free Software Foundation, Inc. + 2002, 2003, 2004 Free Software Foundation, Inc. Written by Steve Chamberlain of Cygnus Support, . This file is part of BFD, the Binary File Descriptor library. @@ -1506,6 +1506,7 @@ oasys_sizeof_headers (abfd, exec) #define oasys_bfd_relax_section bfd_generic_relax_section #define oasys_bfd_gc_sections bfd_generic_gc_sections #define oasys_bfd_merge_sections bfd_generic_merge_sections +#define oasys_bfd_is_group_section bfd_generic_is_group_section #define oasys_bfd_discard_group bfd_generic_discard_group #define oasys_bfd_link_hash_table_create _bfd_generic_link_hash_table_create #define oasys_bfd_link_hash_table_free _bfd_generic_link_hash_table_free diff -uprN binutils-2.15.90.0.3/bfd/opncls.c binutils-2.15.91.0.1/bfd/opncls.c --- binutils-2.15.90.0.3/bfd/opncls.c 2004-03-03 12:24:34.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/opncls.c 2004-05-27 11:26:02.610433264 -0700 @@ -103,6 +103,7 @@ _bfd_new_bfd_contained_in (bfd *obfd) if (nbfd == NULL) return NULL; nbfd->xvec = obfd->xvec; + nbfd->iovec = obfd->iovec; nbfd->my_archive = obfd; nbfd->direction = read_direction; nbfd->target_defaulted = obfd->target_defaulted; @@ -322,6 +323,183 @@ bfd_openstreamr (const char *filename, c return nbfd; } + +/* +FUNCTION + bfd_openr_iovec + +SYNOPSIS + bfd *bfd_openr_iovec (const char *filename, const char *target, + void *(*open) (struct bfd *nbfd, + void *open_closure), + void *open_closure, + file_ptr (*pread) (struct bfd *nbfd, + void *stream, + void *buf, + file_ptr nbytes, + file_ptr offset), + int (*close) (struct bfd *nbfd, + void *stream)); + +DESCRIPTION + + Create and return a BFD backed by a read-only @var{stream}. + The @var{stream} is created using @var{open}, accessed using + @var{pread} and destroyed using @var{close}. + + Calls <>, so @var{target} is interpreted as by + that function. + + Calls @var{open} (which can call <> and + <>) to obtain the read-only stream backing + the BFD. @var{open} either succeeds returning the + non-<> @var{stream}, or fails returning <> + (setting <>). + + Calls @var{pread} to request @var{nbytes} of data from + @var{stream} starting at @var{offset} (e.g., via a call to + <>). @var{pread} either succeeds returning the + number of bytes read (which can be less than @var{nbytes} when + end-of-file), or fails returning -1 (setting <>). + + Calls @var{close} when the BFD is later closed using + <>. @var{close} either succeeds returning 0, or + fails returning -1 (setting <>). + + If <> returns <> then an error has + occurred. Possible errors are <>, + <> and <>. + +*/ + +struct opncls +{ + void *stream; + file_ptr (*pread) (struct bfd *abfd, void *stream, void *buf, + file_ptr nbytes, file_ptr offset); + int (*close) (struct bfd *abfd, void *stream); + file_ptr where; +}; + +static file_ptr +opncls_btell (struct bfd *abfd) +{ + struct opncls *vec = abfd->iostream; + return vec->where; +} + +static int +opncls_bseek (struct bfd *abfd, file_ptr offset, int whence) +{ + struct opncls *vec = abfd->iostream; + switch (whence) + { + case SEEK_SET: vec->where = offset; break; + case SEEK_CUR: vec->where += offset; break; + case SEEK_END: return -1; + } + return 0; +} + +static file_ptr +opncls_bread (struct bfd *abfd, void *buf, file_ptr nbytes) +{ + struct opncls *vec = abfd->iostream; + file_ptr nread = vec->pread (abfd, vec->stream, buf, nbytes, vec->where); + if (nread < 0) + return nread; + vec->where += nread; + return nread; +} + +static file_ptr +opncls_bwrite (struct bfd *abfd ATTRIBUTE_UNUSED, + const void *where ATTRIBUTE_UNUSED, + file_ptr nbytes ATTRIBUTE_UNUSED) +{ + return -1; +} + +static int +opncls_bclose (struct bfd *abfd) +{ + struct opncls *vec = abfd->iostream; + /* Since the VEC's memory is bound to the bfd deleting the bfd will + free it. */ + int status = 0; + if (vec->close != NULL) + status = vec->close (abfd, vec->stream); + abfd->iostream = NULL; + return status; +} + +static int +opncls_bflush (struct bfd *abfd ATTRIBUTE_UNUSED) +{ + return 0; +} + +static int +opncls_bstat (struct bfd *abfd ATTRIBUTE_UNUSED, struct stat *sb) +{ + memset (sb, 0, sizeof (*sb)); + return 0; +} + +static const struct bfd_iovec opncls_iovec = { + &opncls_bread, &opncls_bwrite, &opncls_btell, &opncls_bseek, + &opncls_bclose, &opncls_bflush, &opncls_bstat +}; + +bfd * +bfd_openr_iovec (const char *filename, const char *target, + void *(*open) (struct bfd *nbfd, + void *open_closure), + void *open_closure, + file_ptr (*pread) (struct bfd *abfd, + void *stream, + void *buf, + file_ptr nbytes, + file_ptr offset), + int (*close) (struct bfd *nbfd, + void *stream)) +{ + bfd *nbfd; + const bfd_target *target_vec; + struct opncls *vec; + void *stream; + + nbfd = _bfd_new_bfd (); + if (nbfd == NULL) + return NULL; + + target_vec = bfd_find_target (target, nbfd); + if (target_vec == NULL) + { + _bfd_delete_bfd (nbfd); + return NULL; + } + + nbfd->filename = filename; + nbfd->direction = read_direction; + + stream = open (nbfd, open_closure); + if (stream == NULL) + { + _bfd_delete_bfd (nbfd); + return NULL; + } + + vec = bfd_zalloc (nbfd, sizeof (struct opncls)); + vec->stream = stream; + vec->pread = pread; + vec->close = close; + + nbfd->iovec = &opncls_iovec; + nbfd->iostream = vec; + + return nbfd; +} /* bfd_openw -- open for writing. Returns a pointer to a freshly-allocated BFD on success, or NULL. @@ -415,7 +593,12 @@ bfd_close (bfd *abfd) if (! BFD_SEND (abfd, _close_and_cleanup, (abfd))) return FALSE; - ret = bfd_cache_close (abfd); + /* FIXME: cagney/2004-02-15: Need to implement a BFD_IN_MEMORY io + vector. */ + if (!(abfd->flags & BFD_IN_MEMORY)) + ret = abfd->iovec->bclose (abfd); + else + ret = 0; /* If the file was open for writing and is now executable, make it so. */ @@ -630,7 +813,7 @@ INTERNAL_FUNCTION bfd_alloc SYNOPSIS - void *bfd_alloc (bfd *abfd, size_t wanted); + void *bfd_alloc (bfd *abfd, bfd_size_type wanted); DESCRIPTION Allocate a block of @var{wanted} bytes of memory attached to diff -uprN binutils-2.15.90.0.3/bfd/pe-i386.c binutils-2.15.91.0.1/bfd/pe-i386.c --- binutils-2.15.90.0.3/bfd/pe-i386.c 2002-12-16 12:22:52.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/pe-i386.c 2004-05-27 11:26:02.624431454 -0700 @@ -1,5 +1,5 @@ /* BFD back-end for Intel 386 PECOFF files. - Copyright 1995, 1996, 1999, 2001, 2002 Free Software Foundation, Inc. + Copyright 1995, 1996, 1999, 2001, 2002, 2004 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. @@ -20,12 +20,13 @@ #include "bfd.h" #include "sysdep.h" -#define TARGET_SYM i386pe_vec -#define TARGET_NAME "pe-i386" +#define TARGET_SYM i386pe_vec +#define TARGET_NAME "pe-i386" #define COFF_WITH_PE -#define PCRELOFFSET TRUE -#define TARGET_UNDERSCORE '_' +#define PCRELOFFSET TRUE +#define TARGET_UNDERSCORE '_' #define COFF_LONG_SECTION_NAMES +#define COFF_SUPPORT_GNU_LINKONCE #define COFF_LONG_FILENAMES #define COFF_SECTION_ALIGNMENT_ENTRIES \ @@ -38,6 +39,10 @@ { COFF_SECTION_NAME_PARTIAL_MATCH (".idata"), \ COFF_ALIGNMENT_FIELD_EMPTY, COFF_ALIGNMENT_FIELD_EMPTY, 2 }, \ { COFF_SECTION_NAME_EXACT_MATCH (".pdata"), \ - COFF_ALIGNMENT_FIELD_EMPTY, COFF_ALIGNMENT_FIELD_EMPTY, 2 } + COFF_ALIGNMENT_FIELD_EMPTY, COFF_ALIGNMENT_FIELD_EMPTY, 2 }, \ +{ COFF_SECTION_NAME_PARTIAL_MATCH (".debug"), \ + COFF_ALIGNMENT_FIELD_EMPTY, COFF_ALIGNMENT_FIELD_EMPTY, 0 }, \ +{ COFF_SECTION_NAME_PARTIAL_MATCH (".gnu.linkonce.wi."), \ + COFF_ALIGNMENT_FIELD_EMPTY, COFF_ALIGNMENT_FIELD_EMPTY, 0 } #include "coff-i386.c" diff -uprN binutils-2.15.90.0.3/bfd/pe-mips.c binutils-2.15.91.0.1/bfd/pe-mips.c --- binutils-2.15.90.0.3/bfd/pe-mips.c 2004-01-14 13:07:43.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/pe-mips.c 2004-05-27 11:26:02.625431325 -0700 @@ -41,16 +41,6 @@ static reloc_howto_type *coff_mips_rtype PARAMS ((bfd *, asection *, struct internal_reloc *, struct coff_link_hash_entry *, struct internal_syment *, bfd_vma *)); -#if 0 -static void mips_ecoff_swap_reloc_in - PARAMS ((bfd *, PTR, struct internal_reloc *)); -static void mips_ecoff_swap_reloc_out - PARAMS ((bfd *, const struct internal_reloc *, PTR)); -static void mips_adjust_reloc_in - PARAMS ((bfd *, const struct internal_reloc *, arelent *)); -static void mips_adjust_reloc_out - PARAMS ((bfd *, const arelent *, struct internal_reloc *)); -#endif static bfd_boolean in_reloc_p PARAMS ((bfd *, reloc_howto_type *)); @@ -534,20 +524,6 @@ coff_mips_reloc_type_lookup (abfd, code) case BFD_RELOC_MIPS_LITERAL: mips_type = MIPS_R_LITERAL; break; -/* FIXME? - case BFD_RELOC_16_PCREL_S2: - mips_type = MIPS_R_PCREL16; - break; - case BFD_RELOC_PCREL_HI16_S: - mips_type = MIPS_R_RELHI; - break; - case BFD_RELOC_PCREL_LO16: - mips_type = MIPS_R_RELLO; - break; - case BFD_RELOC_GPREL32: - mips_type = MIPS_R_SWITCH; - break; -*/ case BFD_RELOC_RVA: mips_type = MIPS_R_RVA; break; diff -uprN binutils-2.15.90.0.3/bfd/peXXigen.c binutils-2.15.91.0.1/bfd/peXXigen.c --- binutils-2.15.90.0.3/bfd/peXXigen.c 2004-03-03 12:24:34.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/peXXigen.c 2004-05-27 11:26:02.628430937 -0700 @@ -198,7 +198,6 @@ _bfd_XXi_swap_sym_in (abfd, ext1, in1) sec->lineno_count = 0; sec->userdata = NULL; sec->next = (asection *) NULL; - sec->flags = 0; sec->alignment_power = 2; sec->flags = SEC_HAS_CONTENTS | SEC_ALLOC | SEC_DATA | SEC_LOAD; @@ -658,14 +657,19 @@ _bfd_XXi_swap_aouthdr_out (abfd, in, out { asection *sec; + bfd_vma hsize = 0; bfd_vma dsize = 0; - bfd_vma isize = SA(abfd->sections->filepos); + bfd_vma isize = 0; bfd_vma tsize = 0; for (sec = abfd->sections; sec; sec = sec->next) { int rounded = FA(sec->_raw_size); + /* The first non-zero section filepos is the header size. + Sections without contents will have a filepos of 0. */ + if (hsize == 0) + hsize = sec->filepos; if (sec->flags & SEC_DATA) dsize += rounded; if (sec->flags & SEC_CODE) @@ -682,10 +686,10 @@ _bfd_XXi_swap_aouthdr_out (abfd, in, out aouthdr_in->dsize = dsize; aouthdr_in->tsize = tsize; - extra->SizeOfImage = isize; + extra->SizeOfHeaders = hsize; + extra->SizeOfImage = SA(hsize) + isize; } - extra->SizeOfHeaders = abfd->sections->filepos; H_PUT_16 (abfd, aouthdr_in->magic, aouthdr_out->standard.magic); #define LINKER_VERSION 256 /* That is, 2.56 */ @@ -983,7 +987,6 @@ _bfd_XXi_swap_scnhdr_out (abfd, in, out) }; pe_required_section_flags * p; - int flags = scnhdr_int->s_flags; /* We have defaulted to adding the IMAGE_SCN_MEM_WRITE flag, but now we know exactly what this specific section wants so we remove it @@ -998,12 +1001,12 @@ _bfd_XXi_swap_scnhdr_out (abfd, in, out) { if (strcmp (scnhdr_int->s_name, ".text") || (bfd_get_file_flags (abfd) & WP_TEXT)) - flags &= ~IMAGE_SCN_MEM_WRITE; - flags |= p->must_have; + scnhdr_int->s_flags &= ~IMAGE_SCN_MEM_WRITE; + scnhdr_int->s_flags |= p->must_have; break; } - H_PUT_32 (abfd, flags, scnhdr_ext->s_flags); + H_PUT_32 (abfd, scnhdr_int->s_flags, scnhdr_ext->s_flags); } if (coff_data (abfd)->link_info @@ -1838,16 +1841,17 @@ _bfd_XX_print_private_bfd_data_common (a fprintf (file, _("\nCharacteristics 0x%x\n"), pe->real_flags); #undef PF #define PF(x, y) if (pe->real_flags & x) { fprintf (file, "\t%s\n", y); } - PF (F_RELFLG, "relocations stripped"); - PF (F_EXEC, "executable"); - PF (F_LNNO, "line numbers stripped"); - PF (F_LSYMS, "symbols stripped"); - PF (0x80, "little endian"); - PF (F_AR32WR, "32 bit words"); - PF (0x200, "debugging information removed"); - PF (0x1000, "system file"); - PF (F_DLL, "DLL"); - PF (0x8000, "big endian"); + PF (IMAGE_FILE_RELOCS_STRIPPED, "relocations stripped"); + PF (IMAGE_FILE_EXECUTABLE_IMAGE, "executable"); + PF (IMAGE_FILE_LINE_NUMS_STRIPPED, "line numbers stripped"); + PF (IMAGE_FILE_LOCAL_SYMS_STRIPPED, "symbols stripped"); + PF (IMAGE_FILE_LARGE_ADDRESS_AWARE, "large address aware"); + PF (IMAGE_FILE_BYTES_REVERSED_LO, "little endian"); + PF (IMAGE_FILE_32BIT_MACHINE, "32 bit words"); + PF (IMAGE_FILE_DEBUG_STRIPPED, "debugging information removed"); + PF (IMAGE_FILE_SYSTEM, "system file"); + PF (IMAGE_FILE_DLL, "DLL"); + PF (IMAGE_FILE_BYTES_REVERSED_HI, "big endian"); #undef PF /* ctime implies '\n'. */ diff -uprN binutils-2.15.90.0.3/bfd/pef.c binutils-2.15.91.0.1/bfd/pef.c --- binutils-2.15.90.0.3/bfd/pef.c 2004-01-14 13:07:43.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/pef.c 2004-05-27 11:26:02.635430032 -0700 @@ -1,5 +1,5 @@ /* PEF support for BFD. - Copyright 1999, 2000, 2001, 2002, 2003 + Copyright 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. @@ -52,6 +52,7 @@ #define bfd_pef_bfd_relax_section bfd_generic_relax_section #define bfd_pef_bfd_gc_sections bfd_generic_gc_sections #define bfd_pef_bfd_merge_sections bfd_generic_merge_sections +#define bfd_pef_bfd_is_group_section bfd_generic_is_group_section #define bfd_pef_bfd_discard_group bfd_generic_discard_group #define bfd_pef_bfd_link_hash_table_create _bfd_generic_link_hash_table_create #define bfd_pef_bfd_link_hash_table_free _bfd_generic_link_hash_table_free diff -uprN binutils-2.15.90.0.3/bfd/pei-i386.c binutils-2.15.91.0.1/bfd/pei-i386.c --- binutils-2.15.90.0.3/bfd/pei-i386.c 2002-12-16 12:22:52.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/pei-i386.c 2004-05-27 11:26:02.636429902 -0700 @@ -1,5 +1,5 @@ /* BFD back-end for Intel 386 PE IMAGE COFF files. - Copyright 1995, 1996, 1999, 2002 Free Software Foundation, Inc. + Copyright 1995, 1996, 1999, 2002, 2004 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. @@ -20,13 +20,14 @@ #include "bfd.h" #include "sysdep.h" -#define TARGET_SYM i386pei_vec -#define TARGET_NAME "pei-i386" +#define TARGET_SYM i386pei_vec +#define TARGET_NAME "pei-i386" #define COFF_IMAGE_WITH_PE #define COFF_WITH_PE -#define PCRELOFFSET TRUE -#define TARGET_UNDERSCORE '_' +#define PCRELOFFSET TRUE +#define TARGET_UNDERSCORE '_' #define COFF_LONG_SECTION_NAMES +#define COFF_SUPPORT_GNU_LINKONCE #define COFF_LONG_FILENAMES #define COFF_SECTION_ALIGNMENT_ENTRIES \ @@ -39,6 +40,10 @@ { COFF_SECTION_NAME_PARTIAL_MATCH (".idata"), \ COFF_ALIGNMENT_FIELD_EMPTY, COFF_ALIGNMENT_FIELD_EMPTY, 2 }, \ { COFF_SECTION_NAME_EXACT_MATCH (".pdata"), \ - COFF_ALIGNMENT_FIELD_EMPTY, COFF_ALIGNMENT_FIELD_EMPTY, 2 } + COFF_ALIGNMENT_FIELD_EMPTY, COFF_ALIGNMENT_FIELD_EMPTY, 2 }, \ +{ COFF_SECTION_NAME_PARTIAL_MATCH (".debug"), \ + COFF_ALIGNMENT_FIELD_EMPTY, COFF_ALIGNMENT_FIELD_EMPTY, 0 }, \ +{ COFF_SECTION_NAME_PARTIAL_MATCH (".gnu.linkonce.wi."), \ + COFF_ALIGNMENT_FIELD_EMPTY, COFF_ALIGNMENT_FIELD_EMPTY, 0 } #include "coff-i386.c" diff -uprN binutils-2.15.90.0.3/bfd/po/SRC-POTFILES.in binutils-2.15.91.0.1/bfd/po/SRC-POTFILES.in --- binutils-2.15.90.0.3/bfd/po/SRC-POTFILES.in 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/po/SRC-POTFILES.in 2004-05-27 11:26:02.799408826 -0700 @@ -232,6 +232,7 @@ m68klinux.c m68klynx.c m68knetbsd.c m88kmach3.c +m88kopenbsd.c mach-o.c mach-o.h merge.c diff -uprN binutils-2.15.90.0.3/bfd/po/fr.po binutils-2.15.91.0.1/bfd/po/fr.po --- binutils-2.15.90.0.3/bfd/po/fr.po 2004-01-14 13:07:44.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/po/fr.po 2004-05-27 11:26:02.820406111 -0700 @@ -1,17 +1,18 @@ # Messages français pour GNU concernant bfd. -# Copyright © 1996 Free Software Foundation, Inc. +# Copyright © 2004 Free Software Foundation, Inc. # Michel Robitaille , traducteur depuis/since 1996. # msgid "" msgstr "" "Project-Id-Version: GNU bfd 2.14rel030712\n" "POT-Creation-Date: 2003-07-11 13:53+0930\n" -"PO-Revision-Date: 2003-08-05 08:00-0500\n" +"PO-Revision-Date: 2004-05-10 08:00-0500\n" "Last-Translator: Michel Robitaille \n" "Language-Team: French \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-1\n" "Content-Transfer-Encoding: 8-bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" #: aout-adobe.c:204 #, c-format diff -uprN binutils-2.15.90.0.3/bfd/ppcboot.c binutils-2.15.91.0.1/bfd/ppcboot.c --- binutils-2.15.90.0.3/bfd/ppcboot.c 2004-01-14 13:07:43.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/ppcboot.c 2004-05-27 11:26:02.647428480 -0700 @@ -1,5 +1,5 @@ /* BFD back-end for PPCbug boot records. - Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 + Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. Written by Michael Meissner, Cygnus Support, @@ -469,6 +469,7 @@ ppcboot_bfd_print_private_bfd_data (abfd #define ppcboot_bfd_relax_section bfd_generic_relax_section #define ppcboot_bfd_gc_sections bfd_generic_gc_sections #define ppcboot_bfd_merge_sections bfd_generic_merge_sections +#define ppcboot_bfd_is_group_section bfd_generic_is_group_section #define ppcboot_bfd_discard_group bfd_generic_discard_group #define ppcboot_bfd_link_hash_table_create _bfd_generic_link_hash_table_create #define ppcboot_bfd_link_hash_table_free _bfd_generic_link_hash_table_free @@ -483,6 +484,7 @@ ppcboot_bfd_print_private_bfd_data (abfd #define ppcboot_bfd_merge_private_bfd_data _bfd_generic_bfd_merge_private_bfd_data #define ppcboot_bfd_copy_private_section_data _bfd_generic_bfd_copy_private_section_data #define ppcboot_bfd_copy_private_symbol_data _bfd_generic_bfd_copy_private_symbol_data +#define ppcboot_bfd_copy_private_header_data _bfd_generic_bfd_copy_private_header_data #define ppcboot_bfd_set_private_flags _bfd_generic_bfd_set_private_flags #define ppcboot_bfd_print_private_bfd_dat ppcboot_bfd_print_private_bfd_data diff -uprN binutils-2.15.90.0.3/bfd/reloc.c binutils-2.15.91.0.1/bfd/reloc.c --- binutils-2.15.90.0.3/bfd/reloc.c 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/reloc.c 2004-05-27 11:26:02.670425506 -0700 @@ -1647,6 +1647,11 @@ the section containing the relocation. The 24-bit relocation is used in some Intel 960 configurations. ENUM + BFD_RELOC_32_SECREL +ENUMDOC + Section relative relocations. Some targets need this for DWARF2. + +ENUM BFD_RELOC_32_GOT_PCREL ENUMX BFD_RELOC_16_GOT_PCREL @@ -2061,14 +2066,6 @@ ENUM BFD_RELOC_LO16 ENUMDOC Low 16 bits. -ENUM - BFD_RELOC_PCREL_HI16_S -ENUMDOC - Like BFD_RELOC_HI16_S, but PC relative. -ENUM - BFD_RELOC_PCREL_LO16 -ENUMDOC - Like BFD_RELOC_LO16, but PC relative. ENUM BFD_RELOC_MIPS_LITERAL diff -uprN binutils-2.15.90.0.3/bfd/sco5-core.c binutils-2.15.91.0.1/bfd/sco5-core.c --- binutils-2.15.90.0.3/bfd/sco5-core.c 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/sco5-core.c 2004-05-27 11:26:02.671425377 -0700 @@ -123,13 +123,12 @@ sco5_core_file_p (abfd) char *secname; flagword flags; - /* Read coreoffsets region at end of core (see core(FP)) */ + /* Read coreoffsets region at end of core (see core(FP)). */ { FILE *stream = bfd_cache_lookup (abfd); struct stat statbuf; - if (stream == NULL) - return NULL; + if (fstat (fileno (stream), &statbuf) < 0) { bfd_set_error (bfd_error_system_call); diff -uprN binutils-2.15.90.0.3/bfd/section.c binutils-2.15.91.0.1/bfd/section.c --- binutils-2.15.90.0.3/bfd/section.c 2004-01-14 13:07:44.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/section.c 2004-05-27 11:26:02.685423567 -0700 @@ -1,6 +1,6 @@ /* Object file "section" support for the BFD library. Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003 + 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. Written by Cygnus Support. @@ -801,6 +801,57 @@ bfd_get_section_by_name (bfd *abfd, cons /* FUNCTION + bfd_get_section_by_name_if + +SYNOPSIS + asection *bfd_get_section_by_name_if + (bfd *abfd, + const char *name, + bfd_boolean (*func) (bfd *abfd, asection *sect, void *obj), + void *obj); + +DESCRIPTION + Call the provided function @var{func} for each section + attached to the BFD @var{abfd} whose name matches @var{name}, + passing @var{obj} as an argument. The function will be called + as if by + +| func (abfd, the_section, obj); + + It returns the first section for which @var{func} returns true, + otherwise <>. + +*/ + +asection * +bfd_get_section_by_name_if (bfd *abfd, const char *name, + bfd_boolean (*operation) (bfd *, + asection *, + void *), + void *user_storage) +{ + struct section_hash_entry *sh; + unsigned long hash; + + sh = section_hash_lookup (&abfd->section_htab, name, FALSE, FALSE); + if (sh == NULL) + return NULL; + + hash = sh->root.hash; + do + { + if ((*operation) (abfd, &sh->section, user_storage)) + return &sh->section; + sh = (struct section_hash_entry *) sh->root.next; + } + while (sh != NULL && sh->root.hash == hash + && strcmp (sh->root.string, name) == 0); + + return NULL; +} + +/* +FUNCTION bfd_get_unique_section_name SYNOPSIS @@ -945,13 +996,19 @@ bfd_make_section_anyway (bfd *abfd, cons newsect = &sh->section; if (newsect->name != NULL) { - /* We are making a section of the same name. It can't go in - section_htab without generating a unique section name and - that would be pointless; We don't need to traverse the - hash table. */ - newsect = bfd_zalloc (abfd, sizeof (asection)); - if (newsect == NULL) + /* We are making a section of the same name. Put it in the + section hash table. Even though we can't find it directly by a + hash lookup, we'll be able to find the section by traversing + sh->root.next quicker than looking at all the bfd sections. */ + struct section_hash_entry *new_sh; + new_sh = (struct section_hash_entry *) + bfd_section_hash_newfunc (NULL, &abfd->section_htab, name); + if (new_sh == NULL) return NULL; + + new_sh->root = sh->root; + sh->root.next = &new_sh->root; + newsect = &new_sh->section; } newsect->name = name; @@ -1090,6 +1147,41 @@ bfd_map_over_sections (bfd *abfd, /* FUNCTION + bfd_sections_find_if + +SYNOPSIS + asection *bfd_sections_find_if + (bfd *abfd, + bfd_boolean (*func) (bfd *abfd, asection *sect, void *obj), + void *obj); + +DESCRIPTION + Call the provided function @var{func} for each section + attached to the BFD @var{abfd}, passing @var{obj} as an + argument. The function will be called as if by + +| func (abfd, the_section, obj); + + It returns the first section for which @var{func} returns true. + +*/ + +asection * +bfd_sections_find_if (bfd *abfd, + bfd_boolean (*operation) (bfd *, asection *, void *), + void *user_storage) +{ + asection *sect; + + for (sect = abfd->sections; sect != NULL; sect = sect->next) + if ((*operation) (abfd, sect, user_storage)) + break; + + return sect; +} + +/* +FUNCTION bfd_set_section_size SYNOPSIS @@ -1351,6 +1443,24 @@ _bfd_strip_section_from_output (struct b /* FUNCTION + bfd_generic_is_group_section + +SYNOPSIS + bfd_boolean bfd_generic_is_group_section (bfd *, const asection *sec); + +DESCRIPTION + Returns TRUE if @var{sec} is a member of a group. +*/ + +bfd_boolean +bfd_generic_is_group_section (bfd *abfd ATTRIBUTE_UNUSED, + const asection *sec ATTRIBUTE_UNUSED) +{ + return FALSE; +} + +/* +FUNCTION bfd_generic_discard_group SYNOPSIS diff -uprN binutils-2.15.90.0.3/bfd/simple.c binutils-2.15.91.0.1/bfd/simple.c --- binutils-2.15.90.0.3/bfd/simple.c 2004-01-14 13:07:44.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/simple.c 2004-05-27 11:26:02.688423179 -0700 @@ -1,5 +1,5 @@ /* simple.c -- BFD simple client routines - Copyright 2002, 2003 + Copyright 2002, 2003, 2004 Free Software Foundation, Inc. Contributed by MontaVista Software, Inc. @@ -140,28 +140,7 @@ bfd_simple_get_relocated_section_content bfd_byte *contents, *data; int storage_needed; void *saved_offsets; - bfd_boolean saved_reloc_done = sec->reloc_done; - -#undef RETURN -#define RETURN(x) \ - do \ - { \ - sec->reloc_done = saved_reloc_done; \ - return (x); \ - } \ - while (0) - - /* Foul hack to prevent bfd_section_size aborts. The reloc_done flag - only controls that macro (and the related size macros), selecting - between _raw_size and _cooked_size. We may be called with relocation - done or not, so we need to save the done-flag and mark the section as - not relocated. - - Debug sections won't change size while we're only relocating. There - may be trouble here someday if it tries to run relaxation - unexpectedly, so make sure. */ - BFD_ASSERT (sec->_raw_size == sec->_cooked_size); - sec->reloc_done = 0; + bfd_size_type old_cooked_size; if (! (sec->flags & SEC_RELOC)) { @@ -175,7 +154,7 @@ bfd_simple_get_relocated_section_content if (contents) bfd_get_section_contents (abfd, sec, contents, 0, size); - RETURN (contents); + return contents; } /* In order to use bfd_get_relocated_section_contents, we need @@ -205,7 +184,7 @@ bfd_simple_get_relocated_section_content { data = bfd_malloc (bfd_section_size (abfd, sec)); if (data == NULL) - RETURN (NULL); + return NULL; outbuf = data; } @@ -224,7 +203,7 @@ bfd_simple_get_relocated_section_content { if (data) free (data); - RETURN (NULL); + return NULL; } bfd_map_over_sections (abfd, simple_save_output_info, saved_offsets); @@ -239,6 +218,12 @@ bfd_simple_get_relocated_section_content else storage_needed = 0; + /* This function might be called before _cooked_size has been set, and + bfd_perform_relocation needs _cooked_size to be valid. */ + old_cooked_size = sec->_cooked_size; + if (old_cooked_size == 0) + sec->_cooked_size = sec->_raw_size; + contents = bfd_get_relocated_section_contents (abfd, &link_info, &link_order, @@ -262,10 +247,11 @@ bfd_simple_get_relocated_section_content free (symbol_table); #endif + sec->_cooked_size = old_cooked_size; bfd_map_over_sections (abfd, simple_restore_output_info, saved_offsets); free (saved_offsets); _bfd_generic_link_hash_table_free (link_info.hash); - RETURN (contents); + return contents; } diff -uprN binutils-2.15.90.0.3/bfd/som.c binutils-2.15.91.0.1/bfd/som.c --- binutils-2.15.90.0.3/bfd/som.c 2004-01-14 13:07:44.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/som.c 2004-05-27 11:26:02.704421110 -0700 @@ -1,6 +1,6 @@ /* bfd back-end for HP PA-RISC SOM objects. Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003 + 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. Contributed by the Center for Software Science at the @@ -146,6 +146,9 @@ struct som_misc_symbol_info { unsigned int symbol_value; unsigned int priv_level; unsigned int secondary_def; + unsigned int is_comdat; + unsigned int is_common; + unsigned int dup_common; }; /* Forward declarations. */ @@ -189,12 +192,14 @@ static bfd_boolean som_bfd_copy_private_ PARAMS ((bfd *, asection *, bfd *, asection *)); static bfd_boolean som_bfd_copy_private_bfd_data PARAMS ((bfd *, bfd *)); +#define som_bfd_copy_private_header_data \ + _bfd_generic_bfd_copy_private_header_data #define som_bfd_merge_private_bfd_data _bfd_generic_bfd_merge_private_bfd_data #define som_bfd_set_private_flags _bfd_generic_bfd_set_private_flags static bfd_boolean som_bfd_is_local_label_name PARAMS ((bfd *, const char *)); static bfd_boolean som_set_section_contents - PARAMS ((bfd *, sec_ptr, PTR, file_ptr, bfd_size_type)); + PARAMS ((bfd *, sec_ptr, const PTR, file_ptr, bfd_size_type)); static bfd_boolean som_get_section_contents PARAMS ((bfd *, sec_ptr, PTR, file_ptr, bfd_size_type)); static bfd_boolean som_set_arch_mach @@ -206,7 +211,7 @@ static void som_get_symbol_info PARAMS ((bfd *, asymbol *, symbol_info *)); static asection * bfd_section_from_som_symbol PARAMS ((bfd *, struct symbol_dictionary_record *)); -static int log2 +static int exact_log2 PARAMS ((unsigned int)); static bfd_reloc_status_type hppa_som_reloc PARAMS ((bfd *, arelent *, asymbol *, PTR, asection *, bfd *, char **)); @@ -1428,11 +1433,11 @@ som_reloc_call (abfd, p, subspace_reloc_ return p; } -/* Return the logarithm of X, base 2, considering X unsigned. - Abort -1 if X is not a power or two or is zero. */ +/* Return the logarithm of X, base 2, considering X unsigned, + if X is a power of 2. Otherwise, returns -1. */ static int -log2 (x) +exact_log2 (x) unsigned int x; { int log = 0; @@ -1589,6 +1594,11 @@ hppa_som_gen_reloc_type (abfd, base_type final_types[3] = NULL; *final_type = base_type; break; + + /* FIXME: These two field selectors are not currently supported. */ + case e_ltpsel: + case e_rtpsel: + abort (); } switch (base_type) @@ -1820,10 +1830,13 @@ som_object_setup (abfd, file_hdrp, aux_h found = 0; for (section = abfd->sections; section; section = section->next) { + bfd_vma entry; + if ((section->flags & SEC_CODE) == 0) continue; - if (aux_hdrp->exec_entry >= section->vma - && aux_hdrp->exec_entry < section->vma + section->_cooked_size) + entry = aux_hdrp->exec_entry; + if (entry >= section->vma + && entry < section->vma + section->_cooked_size) found = 1; } if (aux_hdrp->exec_entry == 0 @@ -1897,8 +1910,8 @@ setup_sections (abfd, file_hdr, current_ for (space_index = 0; space_index < file_hdr->space_total; space_index++) { struct space_dictionary_record space; - struct subspace_dictionary_record subspace, save_subspace; - int subspace_index; + struct som_subspace_dictionary_record subspace, save_subspace; + unsigned int subspace_index; asection *space_asect; char *newname; @@ -1959,13 +1972,13 @@ setup_sections (abfd, file_hdr, current_ record. */ space_asect->vma = subspace.subspace_start; space_asect->filepos = subspace.file_loc_init_value + current_offset; - space_asect->alignment_power = log2 (subspace.alignment); + space_asect->alignment_power = exact_log2 (subspace.alignment); if (space_asect->alignment_power == (unsigned) -1) goto error_return; /* Initialize save_subspace so we can reliably determine if this loop placed any useful values into it. */ - memset (&save_subspace, 0, sizeof (struct subspace_dictionary_record)); + memset (&save_subspace, 0, sizeof (save_subspace)); /* Loop over the rest of the subspaces, building up more sections. */ for (subspace_index = 0; subspace_index < space.subspace_quantity; @@ -1996,7 +2009,10 @@ setup_sections (abfd, file_hdr, current_ if (! bfd_som_set_subsection_attributes (subspace_asect, space_asect, subspace.access_control_bits, subspace.sort_key, - subspace.quadrant)) + subspace.quadrant, + subspace.is_comdat, + subspace.is_common, + subspace.dup_common)) goto error_return; /* Keep an easy mapping between subspaces and sections. @@ -2042,9 +2058,10 @@ setup_sections (abfd, file_hdr, current_ break; } - if (subspace.dup_common || subspace.is_common) - subspace_asect->flags |= SEC_IS_COMMON; - else if (subspace.subspace_length > 0) + if (subspace.is_comdat || subspace.is_common || subspace.dup_common) + subspace_asect->flags |= SEC_LINK_ONCE; + + if (subspace.subspace_length > 0) subspace_asect->flags |= SEC_HAS_CONTENTS; if (subspace.is_loadable) @@ -2085,7 +2102,7 @@ setup_sections (abfd, file_hdr, current_ subspace_asect->_raw_size = subspace.subspace_length; subspace_asect->filepos = (subspace.file_loc_init_value + current_offset); - subspace_asect->alignment_power = log2 (subspace.alignment); + subspace_asect->alignment_power = exact_log2 (subspace.alignment); if (subspace_asect->alignment_power == (unsigned) -1) goto error_return; } @@ -2394,21 +2411,15 @@ som_prep_headers (abfd) else { /* Allocate space for the subspace dictionary. */ - amt = sizeof (struct subspace_dictionary_record); + amt = sizeof (struct som_subspace_dictionary_record); som_section_data (section)->subspace_dict = - (struct subspace_dictionary_record *) bfd_zalloc (abfd, amt); + (struct som_subspace_dictionary_record *) bfd_zalloc (abfd, amt); if (som_section_data (section)->subspace_dict == NULL) return FALSE; /* Set subspace attributes. Basic stuff is done here, additional attributes are filled in later as more information becomes available. */ - if (section->flags & SEC_IS_COMMON) - { - som_section_data (section)->subspace_dict->dup_common = 1; - som_section_data (section)->subspace_dict->is_common = 1; - } - if (section->flags & SEC_ALLOC) som_section_data (section)->subspace_dict->is_loadable = 1; @@ -2431,6 +2442,12 @@ som_prep_headers (abfd) som_section_data (section)->copy_data->access_control_bits; som_section_data (section)->subspace_dict->quadrant = som_section_data (section)->copy_data->quadrant; + som_section_data (section)->subspace_dict->is_comdat = + som_section_data (section)->copy_data->is_comdat; + som_section_data (section)->subspace_dict->is_common = + som_section_data (section)->copy_data->is_common; + som_section_data (section)->subspace_dict->dup_common = + som_section_data (section)->copy_data->dup_common; } } return TRUE; @@ -2725,7 +2742,7 @@ som_write_fixups (abfd, current_offset, int reloc_offset; unsigned int current_rounding_mode; #ifndef NO_PCREL_MODES - int current_call_mode; + unsigned int current_call_mode; #endif /* Find a subspace of this space. */ @@ -3466,7 +3483,8 @@ som_begin_writing (abfd) num_subspaces = som_count_subspaces (abfd); obj_som_file_hdr (abfd)->subspace_location = current_offset; obj_som_file_hdr (abfd)->subspace_total = num_subspaces; - current_offset += num_subspaces * sizeof (struct subspace_dictionary_record); + current_offset + += num_subspaces * sizeof (struct som_subspace_dictionary_record); /* Next is the string table for the space/subspace names. We will build and write the string table on the fly. At the same time @@ -3841,7 +3859,7 @@ som_finish_writing (abfd) som_section_data (subsection)->subspace_dict->space_index = i; /* Dump the current subspace header. */ - amt = sizeof (struct subspace_dictionary_record); + amt = sizeof (struct som_subspace_dictionary_record); if (bfd_bwrite ((PTR) som_section_data (subsection)->subspace_dict, amt, abfd) != amt) return FALSE; @@ -3897,7 +3915,7 @@ som_finish_writing (abfd) som_section_data (subsection)->subspace_dict->space_index = i; /* Dump this subspace header. */ - amt = sizeof (struct subspace_dictionary_record); + amt = sizeof (struct som_subspace_dictionary_record); if (bfd_bwrite ((PTR) som_section_data (subsection)->subspace_dict, amt, abfd) != amt) return FALSE; @@ -4045,12 +4063,12 @@ som_bfd_derive_misc_symbol_info (abfd, s info->symbol_type = ST_DATA; else { - /* Common symbols must have scope SS_UNSAT and type - ST_STORAGE or the linker will choke. */ + /* For BFD style common, the linker will choke unless we set the + type and scope to ST_STORAGE and SS_UNSAT, respectively. */ if (bfd_is_com_section (sym->section)) { - info->symbol_scope = SS_UNSAT; info->symbol_type = ST_STORAGE; + info->symbol_scope = SS_UNSAT; } /* It is possible to have a symbol without an associated @@ -4089,9 +4107,6 @@ som_bfd_derive_misc_symbol_info (abfd, s info->symbol_type = ST_DATA; } - else if (som_symbol_data (sym)->som_type == SYMBOL_TYPE_UNKNOWN) - info->symbol_type = ST_DATA; - /* From now on it's a very simple mapping. */ else if (som_symbol_data (sym)->som_type == SYMBOL_TYPE_ABSOLUTE) info->symbol_type = ST_ABSOLUTE; @@ -4112,14 +4127,15 @@ som_bfd_derive_misc_symbol_info (abfd, s /* Now handle the symbol's scope. Exported data which is not in the common section has scope SS_UNIVERSAL. Note scope of common symbols was handled earlier! */ - if (bfd_is_und_section (sym->section)) + if (bfd_is_com_section (sym->section)) + ; + else if (bfd_is_und_section (sym->section)) info->symbol_scope = SS_UNSAT; - else if (sym->flags & (BSF_EXPORT | BSF_WEAK) - && ! bfd_is_com_section (sym->section)) + else if (sym->flags & (BSF_EXPORT | BSF_WEAK)) info->symbol_scope = SS_UNIVERSAL; /* Anything else which is not in the common section has scope SS_LOCAL. */ - else if (! bfd_is_com_section (sym->section)) + else info->symbol_scope = SS_LOCAL; /* Now set the symbol_info field. It has no real meaning @@ -4138,12 +4154,49 @@ som_bfd_derive_misc_symbol_info (abfd, s /* Set the symbol's value. */ info->symbol_value = sym->value + sym->section->vma; - /* The secondary_def field is for weak symbols. */ + /* The secondary_def field is for "weak" symbols. */ if (sym->flags & BSF_WEAK) info->secondary_def = TRUE; else info->secondary_def = FALSE; + /* The is_comdat, is_common and dup_common fields provide various + flavors of common. + + For data symbols, setting IS_COMMON provides Fortran style common + (duplicate definitions and overlapped initialization). Setting both + IS_COMMON and DUP_COMMON provides Cobol style common (duplicate + definitions as long as they are all the same length). In a shared + link data symbols retain their IS_COMMON and DUP_COMMON flags. + An IS_COMDAT data symbol is similar to a IS_COMMON | DUP_COMMON + symbol except in that it loses its IS_COMDAT flag in a shared link. + + For code symbols, IS_COMDAT and DUP_COMMON have effect. Universal + DUP_COMMON code symbols are not exported from shared libraries. + IS_COMDAT symbols are exported but they lose their IS_COMDAT flag. + + We take a simplified approach to setting the is_comdat, is_common + and dup_common flags in symbols based on the flag settings of their + subspace. This avoids having to add directives like `.comdat' but + the linker behavior is probably undefined if there is more than one + universal symbol (comdat key sysmbol) in a subspace. + + The behavior of these flags is not well documentmented, so there + may be bugs and some surprising interactions with other flags. */ + if (som_section_data (sym->section) + && som_section_data (sym->section)->subspace_dict + && info->symbol_scope == SS_UNIVERSAL + && (info->symbol_type == ST_ENTRY + || info->symbol_type == ST_CODE + || info->symbol_type == ST_DATA)) + { + info->is_comdat + = som_section_data (sym->section)->subspace_dict->is_comdat; + info->is_common + = som_section_data (sym->section)->subspace_dict->is_common; + info->dup_common + = som_section_data (sym->section)->subspace_dict->dup_common; + } } /* Build and write, in one big chunk, the entire symbol table for @@ -4189,6 +4242,9 @@ som_build_and_write_symbol_table (abfd) som_symtab[i].xleast = 3; som_symtab[i].symbol_value = info.symbol_value | info.priv_level; som_symtab[i].secondary_def = info.secondary_def; + som_symtab[i].is_comdat = info.is_comdat; + som_symtab[i].is_common = info.is_common; + som_symtab[i].dup_common = info.dup_common; } /* Everything is ready, seek to the right location and @@ -4298,7 +4354,7 @@ bfd_section_from_som_symbol (abfd, symbo && symbol->symbol_type != ST_SEC_PROG && symbol->symbol_type != ST_MILLICODE)) { - unsigned int index = symbol->symbol_info; + int index = symbol->symbol_info; for (section = abfd->sections; section != NULL; section = section->next) if (section->target_index == index && som_is_subspace (section)) return section; @@ -5212,12 +5268,13 @@ bfd_som_set_section_attributes (section, bfd_boolean bfd_som_set_subsection_attributes (section, container, access, - sort_key, quadrant) + sort_key, quadrant, comdat, + common, dup_common) asection *section; asection *container; int access; unsigned int sort_key; - int quadrant; + int quadrant, comdat, common, dup_common; { /* Allocate memory to hold the magic information. */ if (som_section_data (section)->copy_data == NULL) @@ -5233,6 +5290,9 @@ bfd_som_set_subsection_attributes (secti som_section_data (section)->copy_data->access_control_bits = access; som_section_data (section)->copy_data->quadrant = quadrant; som_section_data (section)->copy_data->container = container; + som_section_data (section)->copy_data->is_comdat = comdat; + som_section_data (section)->copy_data->is_common = common; + som_section_data (section)->copy_data->dup_common = dup_common; return TRUE; } @@ -5358,7 +5418,7 @@ static bfd_boolean som_set_section_contents (abfd, section, location, offset, count) bfd *abfd; sec_ptr section; - PTR location; + const PTR location; file_ptr offset; bfd_size_type count; { @@ -5385,7 +5445,7 @@ som_set_section_contents (abfd, section, if (bfd_seek (abfd, offset, SEEK_SET) != 0) return FALSE; - if (bfd_bwrite ((PTR) location, count, abfd) != count) + if (bfd_bwrite (location, count, abfd) != count) return FALSE; return TRUE; } @@ -6036,7 +6096,7 @@ som_bfd_ar_write_symbol_stuff (abfd, nsy curr_lst_sym->initially_frozen = 0; curr_lst_sym->memory_resident = 0; curr_lst_sym->is_common = bfd_is_com_section (sym->symbol.section); - curr_lst_sym->dup_common = 0; + curr_lst_sym->dup_common = info.dup_common; curr_lst_sym->xleast = 3; curr_lst_sym->arg_reloc = info.arg_reloc; curr_lst_sym->name.n_strx = p - strings + 4; @@ -6352,6 +6412,7 @@ som_bfd_link_split_section (abfd, sec) #define som_bfd_gc_sections bfd_generic_gc_sections #define som_bfd_merge_sections bfd_generic_merge_sections +#define som_bfd_is_group_section bfd_generic_is_group_section #define som_bfd_discard_group bfd_generic_discard_group const bfd_target som_vec = { @@ -6362,7 +6423,7 @@ const bfd_target som_vec = { (HAS_RELOC | EXEC_P | /* object flags */ HAS_LINENO | HAS_DEBUG | HAS_SYMS | HAS_LOCALS | WP_TEXT | D_PAGED | DYNAMIC), - (SEC_CODE | SEC_DATA | SEC_ROM | SEC_HAS_CONTENTS + (SEC_CODE | SEC_DATA | SEC_ROM | SEC_HAS_CONTENTS | SEC_LINK_ONCE | SEC_ALLOC | SEC_LOAD | SEC_RELOC), /* section flags */ /* leading_symbol_char: is the first char of a user symbol diff -uprN binutils-2.15.90.0.3/bfd/som.h binutils-2.15.91.0.1/bfd/som.h --- binutils-2.15.90.0.3/bfd/som.h 2004-01-14 13:07:44.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/som.h 2004-05-27 11:26:02.705420981 -0700 @@ -27,7 +27,7 @@ #include "libhppa.h" -/* Enable PA2.0 if available */ +/* We want reloc.h to provide PA 2.0 defines. */ #define PA_2_0 #include @@ -143,6 +143,35 @@ struct som_data_struct struct somdata a; }; +struct som_subspace_dictionary_record + { + int space_index; + unsigned int access_control_bits : 7; + unsigned int memory_resident : 1; + unsigned int dup_common : 1; + unsigned int is_common : 1; + unsigned int is_loadable : 1; + unsigned int quadrant : 2; + unsigned int initially_frozen : 1; + unsigned int is_first : 1; + unsigned int code_only : 1; + unsigned int sort_key : 8; + unsigned int replicate_init : 1; + unsigned int continuation : 1; + unsigned int is_tspecific : 1; + unsigned int is_comdat : 1; + unsigned int reserved : 4; + int file_loc_init_value; + unsigned int initialization_length; + unsigned int subspace_start; + unsigned int subspace_length; + unsigned int reserved2 : 5; + unsigned int alignment :27; + union name_pt name; + int fixup_request_index; + unsigned int fixup_request_quantity; + }; + /* Substructure of som_section_data_struct used to hold information which can't be represented by the generic BFD section structure, but which must be copied during objcopy or strip. */ @@ -155,6 +184,9 @@ struct som_copyable_section_data_struct unsigned int is_defined : 1; unsigned int is_private : 1; unsigned int quadrant : 2; + unsigned int is_comdat : 1; + unsigned int is_common : 1; + unsigned int dup_common : 1; /* For subspaces, this points to the section which represents the space in which the subspace is contained. For spaces it points @@ -184,7 +216,7 @@ struct som_section_data_struct unsigned int reloc_size; char *reloc_stream; struct space_dictionary_record *space_dict; - struct subspace_dictionary_record *subspace_dict; + struct som_subspace_dictionary_record *subspace_dict; }; #define somdata(bfd) ((bfd)->tdata.som_data->a) @@ -231,7 +263,7 @@ struct som_section_data_struct bfd_boolean bfd_som_set_section_attributes PARAMS ((asection *, int, int, unsigned int, int)); bfd_boolean bfd_som_set_subsection_attributes - PARAMS ((asection *, asection *, int, unsigned int, int)); + PARAMS ((asection *, asection *, int, unsigned int, int, int, int, int)); void bfd_som_set_symbol_type PARAMS ((asymbol *, unsigned int)); bfd_boolean bfd_som_attach_aux_hdr PARAMS ((bfd *, int, char *)); int ** hppa_som_gen_reloc_type diff -uprN binutils-2.15.90.0.3/bfd/srec.c binutils-2.15.91.0.1/bfd/srec.c --- binutils-2.15.90.0.3/bfd/srec.c 2004-01-14 13:07:44.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/srec.c 2004-05-27 11:26:02.710420334 -0700 @@ -1,6 +1,6 @@ /* BFD back-end for s-record objects. Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003 + 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. Written by Steve Chamberlain of Cygnus Support . @@ -1284,6 +1284,7 @@ srec_print_symbol (abfd, afile, symbol, #define srec_bfd_relax_section bfd_generic_relax_section #define srec_bfd_gc_sections bfd_generic_gc_sections #define srec_bfd_merge_sections bfd_generic_merge_sections +#define srec_bfd_is_group_section bfd_generic_is_group_section #define srec_bfd_discard_group bfd_generic_discard_group #define srec_bfd_link_hash_table_create _bfd_generic_link_hash_table_create #define srec_bfd_link_hash_table_free _bfd_generic_link_hash_table_free diff -uprN binutils-2.15.90.0.3/bfd/sunos.c binutils-2.15.91.0.1/bfd/sunos.c --- binutils-2.15.90.0.3/bfd/sunos.c 2004-01-14 13:07:44.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/sunos.c 2004-05-27 11:26:02.713419946 -0700 @@ -73,6 +73,7 @@ static bfd_boolean sunos_finish_dynamic_ #define MY_get_dynamic_symtab_upper_bound sunos_get_dynamic_symtab_upper_bound #define MY_canonicalize_dynamic_symtab sunos_canonicalize_dynamic_symtab +#define MY_get_synthetic_symtab _bfd_nodynamic_get_synthetic_symtab #define MY_get_dynamic_reloc_upper_bound sunos_get_dynamic_reloc_upper_bound #define MY_canonicalize_dynamic_reloc sunos_canonicalize_dynamic_reloc #define MY_bfd_link_hash_table_create sunos_link_hash_table_create diff -uprN binutils-2.15.90.0.3/bfd/targets.c binutils-2.15.91.0.1/bfd/targets.c --- binutils-2.15.90.0.3/bfd/targets.c 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/targets.c 2004-05-27 11:26:02.716419558 -0700 @@ -265,6 +265,7 @@ BFD_JUMP_TABLE macros. . NAME##_bfd_merge_private_bfd_data, \ . NAME##_bfd_copy_private_section_data, \ . NAME##_bfd_copy_private_symbol_data, \ +. NAME##_bfd_copy_private_header_data, \ . NAME##_bfd_set_private_flags, \ . NAME##_bfd_print_private_bfd_data . @@ -282,6 +283,10 @@ BFD_JUMP_TABLE macros. . to another. *} . bfd_boolean (*_bfd_copy_private_symbol_data) . (bfd *, asymbol *, bfd *, asymbol *); +. {* Called to copy BFD private header data from one object file +. to another. *} +. bfd_boolean (*_bfd_copy_private_header_data) +. (bfd *, bfd *); . {* Called to set private backend flags. *} . bfd_boolean (*_bfd_set_private_flags) (bfd *, flagword); . @@ -406,6 +411,7 @@ BFD_JUMP_TABLE macros. . NAME##_bfd_link_split_section, \ . NAME##_bfd_gc_sections, \ . NAME##_bfd_merge_sections, \ +. NAME##_bfd_is_group_section, \ . NAME##_bfd_discard_group . . int (*_bfd_sizeof_headers) (bfd *, bfd_boolean); @@ -443,6 +449,9 @@ BFD_JUMP_TABLE macros. . {* Attempt to merge SEC_MERGE sections. *} . bfd_boolean (*_bfd_merge_sections) (bfd *, struct bfd_link_info *); . +. {* Is this section a member of a group? *} +. bfd_boolean (*_bfd_is_group_section) (bfd *, const struct bfd_section *); +. . {* Discard members of a group. *} . bfd_boolean (*_bfd_discard_group) (bfd *, struct bfd_section *); . @@ -450,6 +459,7 @@ BFD_JUMP_TABLE macros. .#define BFD_JUMP_TABLE_DYNAMIC(NAME) \ . NAME##_get_dynamic_symtab_upper_bound, \ . NAME##_canonicalize_dynamic_symtab, \ +. NAME##_get_synthetic_symtab, \ . NAME##_get_dynamic_reloc_upper_bound, \ . NAME##_canonicalize_dynamic_reloc . @@ -458,6 +468,9 @@ BFD_JUMP_TABLE macros. . {* Read in the dynamic symbols. *} . long (*_bfd_canonicalize_dynamic_symtab) . (bfd *, struct bfd_symbol **); +. {* Create synthetized symbols. *} +. long (*_bfd_get_synthetic_symtab) +. (bfd *, struct bfd_symbol **, struct bfd_symbol **); . {* Get the amount of memory required to hold the dynamic relocs. *} . long (*_bfd_get_dynamic_reloc_upper_bound) (bfd *); . {* Read in the dynamic relocs. *} @@ -524,6 +537,7 @@ extern const bfd_target bfd_elf32_d30v_v extern const bfd_target bfd_elf32_dlx_big_vec; extern const bfd_target bfd_elf32_fr30_vec; extern const bfd_target bfd_elf32_frv_vec; +extern const bfd_target bfd_elf32_frvfdpic_vec; extern const bfd_target bfd_elf32_h8300_vec; extern const bfd_target bfd_elf32_hppa_linux_vec; extern const bfd_target bfd_elf32_hppa_vec; @@ -659,6 +673,7 @@ extern const bfd_target m68knetbsd_vec; extern const bfd_target m68ksysvcoff_vec; extern const bfd_target m88kbcs_vec; extern const bfd_target m88kmach3_vec; +extern const bfd_target m88kopenbsd_vec; extern const bfd_target mach_o_be_vec; extern const bfd_target mach_o_le_vec; extern const bfd_target mach_o_fat_vec; @@ -815,6 +830,7 @@ static const bfd_target * const _bfd_tar &bfd_elf32_dlx_big_vec, &bfd_elf32_fr30_vec, &bfd_elf32_frv_vec, + &bfd_elf32_frvfdpic_vec, &bfd_elf32_h8300_vec, &bfd_elf32_hppa_linux_vec, &bfd_elf32_hppa_vec, @@ -982,6 +998,7 @@ static const bfd_target * const _bfd_tar &m68ksysvcoff_vec, &m88kbcs_vec, &m88kmach3_vec, + &m88kopenbsd_vec, &mach_o_be_vec, &mach_o_le_vec, &mach_o_fat_vec, diff -uprN binutils-2.15.90.0.3/bfd/tekhex.c binutils-2.15.91.0.1/bfd/tekhex.c --- binutils-2.15.90.0.3/bfd/tekhex.c 2004-01-14 13:07:44.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/tekhex.c 2004-05-27 11:26:02.717419429 -0700 @@ -1,6 +1,6 @@ /* BFD backend for Extended Tektronix Hex Format objects. - Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002, 2003 - Free Software Foundation, Inc. + Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002, + 2003, 2004 Free Software Foundation, Inc. Written by Steve Chamberlain of Cygnus Support . This file is part of BFD, the Binary File Descriptor library. @@ -1001,6 +1001,7 @@ tekhex_print_symbol (abfd, filep, symbol #define tekhex_bfd_relax_section bfd_generic_relax_section #define tekhex_bfd_gc_sections bfd_generic_gc_sections #define tekhex_bfd_merge_sections bfd_generic_merge_sections +#define tekhex_bfd_is_group_section bfd_generic_is_group_section #define tekhex_bfd_discard_group bfd_generic_discard_group #define tekhex_bfd_link_hash_table_create _bfd_generic_link_hash_table_create #define tekhex_bfd_link_hash_table_free _bfd_generic_link_hash_table_free diff -uprN binutils-2.15.90.0.3/bfd/trad-core.c binutils-2.15.91.0.1/bfd/trad-core.c --- binutils-2.15.90.0.3/bfd/trad-core.c 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/trad-core.c 2004-05-27 11:26:02.718419300 -0700 @@ -111,8 +111,7 @@ trad_unix_core_file_p (abfd) { FILE *stream = bfd_cache_lookup (abfd); struct stat statbuf; - if (stream == NULL) - return 0; + if (fstat (fileno (stream), &statbuf) < 0) { bfd_set_error (bfd_error_system_call); diff -uprN binutils-2.15.90.0.3/bfd/versados.c binutils-2.15.91.0.1/bfd/versados.c --- binutils-2.15.90.0.3/bfd/versados.c 2004-01-14 13:07:44.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/versados.c 2004-05-27 11:26:02.719419170 -0700 @@ -1,5 +1,5 @@ /* BFD back-end for VERSAdos-E objects. - Copyright 1995, 1996, 1998, 1999, 2000, 2001, 2002, 2003 + Copyright 1995, 1996, 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. Written by Steve Chamberlain of Cygnus Support . @@ -872,6 +872,7 @@ versados_canonicalize_reloc (abfd, secti #define versados_bfd_relax_section bfd_generic_relax_section #define versados_bfd_gc_sections bfd_generic_gc_sections #define versados_bfd_merge_sections bfd_generic_merge_sections +#define versados_bfd_is_group_section bfd_generic_is_group_section #define versados_bfd_discard_group bfd_generic_discard_group #define versados_bfd_link_hash_table_create _bfd_generic_link_hash_table_create #define versados_bfd_link_hash_table_free _bfd_generic_link_hash_table_free diff -uprN binutils-2.15.90.0.3/bfd/version.h binutils-2.15.91.0.1/bfd/version.h --- binutils-2.15.90.0.3/bfd/version.h 2004-04-14 21:26:05.000000000 -0700 +++ binutils-2.15.91.0.1/bfd/version.h 2004-05-27 11:26:02.739416584 -0700 @@ -1,3 +1,3 @@ -#define BFD_VERSION_DATE 20040415 +#define BFD_VERSION_DATE 20040527 #define BFD_VERSION @bfd_version@ #define BFD_VERSION_STRING @bfd_version_string@ diff -uprN binutils-2.15.90.0.3/bfd/vms.c binutils-2.15.91.0.1/bfd/vms.c --- binutils-2.15.90.0.3/bfd/vms.c 2004-01-14 13:07:44.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/vms.c 2004-05-27 11:26:02.755414515 -0700 @@ -1,6 +1,6 @@ /* vms.c -- BFD back-end for VAX (openVMS/VAX) and EVAX (openVMS/Alpha) files. - Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 + Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. Written by Klaus K"ampf (kkaempf@rmi.de) @@ -154,6 +154,7 @@ static long vms_get_dynamic_symtab_upper PARAMS ((bfd *abfd)); static long vms_canonicalize_dynamic_symtab PARAMS ((bfd *abfd, asymbol **symbols)); +#define vms_get_synthetic_symtab _bfd_nodynamic_get_synthetic_symtab static long vms_get_dynamic_reloc_upper_bound PARAMS ((bfd *abfd)); static long vms_canonicalize_dynamic_reloc @@ -165,7 +166,10 @@ static bfd_boolean vms_bfd_set_private_f #define vms_make_empty_symbol _bfd_generic_make_empty_symbol #define vms_bfd_link_just_syms _bfd_generic_link_just_syms +#define vms_bfd_is_group_section bfd_generic_is_group_section #define vms_bfd_discard_group bfd_generic_discard_group +#define vms_bfd_copy_private_header_data \ + _bfd_generic_bfd_copy_private_header_data /*===========================================================================*/ diff -uprN binutils-2.15.90.0.3/bfd/xsym.c binutils-2.15.91.0.1/bfd/xsym.c --- binutils-2.15.90.0.3/bfd/xsym.c 2004-01-14 13:07:44.000000000 -0800 +++ binutils-2.15.91.0.1/bfd/xsym.c 2004-05-27 11:26:02.776411800 -0700 @@ -1,5 +1,5 @@ /* xSYM symbol-file support for BFD. - Copyright 1999, 2000, 2001, 2002, 2003 + Copyright 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. This file is part of BFD, the Binary File Descriptor library. @@ -42,6 +42,7 @@ #define bfd_sym_bfd_relax_section bfd_generic_relax_section #define bfd_sym_bfd_gc_sections bfd_generic_gc_sections #define bfd_sym_bfd_merge_sections bfd_generic_merge_sections +#define bfd_sym_bfd_is_group_section bfd_generic_is_group_section #define bfd_sym_bfd_discard_group bfd_generic_discard_group #define bfd_sym_bfd_link_hash_table_create _bfd_generic_link_hash_table_create #define bfd_sym_bfd_link_hash_table_free _bfd_generic_link_hash_table_free diff -uprN binutils-2.15.90.0.3/binutils/ChangeLog binutils-2.15.91.0.1/binutils/ChangeLog --- binutils-2.15.90.0.3/binutils/ChangeLog 2004-04-14 21:26:05.000000000 -0700 +++ binutils-2.15.91.0.1/binutils/ChangeLog 2004-05-27 11:26:02.821405982 -0700 @@ -1,3 +1,68 @@ +2004-05-17 David Heine + + * objcopy.c (setup_bfd_headers): New function. + (copy_object): Call setup_bfd_headers. + +2004-05-13 Paul Brook + + * readelf.c (display_debug_frames): Handle dwarf3 format CIE + entries. + +2004-05-13 Nick Clifton + + * po/fr.po: Updated French translation. + +2004-05-11 Jakub Jelinek + + * readelf.c (get_segment_type): Handle PT_GNU_RELRO. + +2004-05-07 H.J. Lu + + * readelf.c (section_groups): New. + (group_count): New. + (section_headers_groups): New. + (process_section_groups): Populate group_count, section_groups + and section_headers_groups. + (process_unwind): Support section group. + (process_object): Always call process_section_groups. Free + section_groups and section_headers_groups. + +2004-04-30 H.J. Lu + + * readelf.c (process_section_headers): Use %3lu on sh_info. + +2004-04-30 Michael Deutschmann + + * ranlib.sh: Quote $1 argument in case it contains spaces. + +2004-04-27 John Paul Wallington + + * objcopy.c (copy_usage, strip_usage): Fix spelling. + +2004-04-26 H.J. Lu + + * readelf.c (do_section_groups): New. + (options): Add --section-groups/-g. + (usage): Mention --section-groups/-g. + (parse_args): Support --section-groups/-g. + (get_group_flags): New. + (process_section_groups): New. + (process_object): Call process_section_groups. + +2004-04-24 Alan Modra + + * objdump.c (disassemble_section): Don't disassemble sections + without SEC_HAS_CONTENTS. + +2004-04-22 Jakub Jelinek + + * objdump.c (synthsyms, synthcount): New variables. + (disassemble_data): Use dynsyms for stripped binaries or libraries. + Add synthetized symbols. + (dump_bfd): For disassemble, initialize dynsyms always and + also synthsyms. Free synthsyms and clear {sym,dynsym,synth}count + before returning. + 2004-04-14 Alan Modra * strings.c (print_strings): Cast file_off to unsigned long in diff -uprN binutils-2.15.90.0.3/binutils/objcopy.c binutils-2.15.91.0.1/binutils/objcopy.c --- binutils-2.15.90.0.3/binutils/objcopy.c 2004-03-03 12:24:34.000000000 -0800 +++ binutils-2.15.91.0.1/binutils/objcopy.c 2004-05-27 11:26:02.847402620 -0700 @@ -377,6 +377,7 @@ extern unsigned long bfd_extern /* Forward declarations. */ static void setup_section (bfd *, asection *, void *); +static void setup_bfd_headers (bfd *, bfd *); static void copy_section (bfd *, asection *, void *); static void get_sections (bfd *, asection *, void *); static int compare_section_lma (const void *, const void *); @@ -410,7 +411,7 @@ copy_usage (FILE *stream, int exit_statu -G --keep-global-symbol Localize all symbols except \n\ -W --weaken-symbol Force symbol to be marked as a weak\n\ --weaken Force all global symbols to be marked as weak\n\ - -w --wildcard Permit wildcard in symbol comparasion\n\ + -w --wildcard Permit wildcard in symbol comparison\n\ -x --discard-all Remove all non-global symbols\n\ -X --discard-locals Remove any compiler-generated symbols\n\ -i --interleave Only copy one out of every bytes\n\ @@ -485,7 +486,7 @@ strip_usage (FILE *stream, int exit_stat --only-keep-debug Strip everything but the debug information\n\ -N --strip-symbol= Do not copy symbol \n\ -K --keep-symbol= Only copy symbol \n\ - -w --wildcard Permit wildcard in symbol comparasion\n\ + -w --wildcard Permit wildcard in symbol comparison\n\ -x --discard-all Remove all non-global symbols\n\ -X --discard-locals Remove any compiler-generated symbols\n\ -v --verbose List all object files modified\n\ @@ -1178,6 +1179,8 @@ copy_object (bfd *ibfd, bfd *obfd) any output is done. Thus, we traverse all sections multiple times. */ bfd_map_over_sections (ibfd, setup_section, obfd); + setup_bfd_headers (ibfd, obfd); + if (add_sections != NULL) { struct section_add *padd; @@ -1808,6 +1811,32 @@ find_section_rename (bfd * ibfd ATTRIBUT return old_name; } +/* Once each of the sections is copied, we may still need to do some + finalization work for private section headers. Do that here. */ + +static void +setup_bfd_headers (bfd *ibfd, bfd *obfd) +{ + const char *err; + + /* Allow the BFD backend to copy any private data it understands + from the input section to the output section. */ + if (! bfd_copy_private_header_data (ibfd, obfd)) + { + err = _("private header data"); + goto loser; + } + + /* All went well. */ + return; + +loser: + non_fatal (_("%s: error in %s: %s"), + bfd_get_filename (ibfd), + err, bfd_errmsg (bfd_get_error ())); + status = 1; +} + /* Create a section in OBFD with the same name and attributes as ISECTION in IBFD. */ diff -uprN binutils-2.15.90.0.3/binutils/objdump.c binutils-2.15.91.0.1/binutils/objdump.c --- binutils-2.15.90.0.3/binutils/objdump.c 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/binutils/objdump.c 2004-05-27 11:26:02.866400163 -0700 @@ -1,6 +1,6 @@ /* objdump.c -- dump information about an object file. Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2002, 2003 + 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. This file is part of GNU Binutils. @@ -153,6 +153,10 @@ static long sorted_symcount = 0; /* The dynamic symbol table. */ static asymbol **dynsyms; +/* The synthetic symbol table. */ +static asymbol *synthsyms; +static long synthcount = 0; + /* Number of symbols in `dynsyms'. */ static long dynsymcount = 0; @@ -1569,7 +1573,8 @@ disassemble_section (bfd *abfd, asection code are not normally disassembled. */ if (! disassemble_all && only == NULL - && (section->flags & SEC_CODE) == 0) + && ((section->flags & (SEC_CODE | SEC_HAS_CONTENTS)) + != (SEC_CODE | SEC_HAS_CONTENTS))) return; if (! process_section_p (section)) @@ -1776,6 +1781,7 @@ disassemble_data (bfd *abfd) { struct disassemble_info disasm_info; struct objdump_disasm_info aux; + long i; print_files = NULL; prev_functionname = NULL; @@ -1783,10 +1789,18 @@ disassemble_data (bfd *abfd) /* We make a copy of syms to sort. We don't want to sort syms because that will screw up the relocs. */ - sorted_syms = xmalloc (symcount * sizeof (asymbol *)); - memcpy (sorted_syms, syms, symcount * sizeof (asymbol *)); + sorted_symcount = symcount ? symcount : dynsymcount; + sorted_syms = xmalloc ((sorted_symcount + synthcount) * sizeof (asymbol *)); + memcpy (sorted_syms, symcount ? syms : dynsyms, + sorted_symcount * sizeof (asymbol *)); - sorted_symcount = remove_useless_symbols (sorted_syms, symcount); + sorted_symcount = remove_useless_symbols (sorted_syms, sorted_symcount); + + for (i = 0; i < synthcount; ++i) + { + sorted_syms[sorted_symcount] = synthsyms + i; + ++sorted_symcount; + } /* Sort the symbols into section and symbol order. */ qsort (sorted_syms, sorted_symcount, sizeof (asymbol *), compare_symbols); @@ -2546,8 +2560,14 @@ dump_bfd (bfd *abfd) if (dump_symtab || dump_reloc_info || disassemble || dump_debugging) syms = slurp_symtab (abfd); - if (dump_dynamic_symtab || dump_dynamic_reloc_info) + if (dump_dynamic_symtab || dump_dynamic_reloc_info + || (disassemble && bfd_get_dynamic_symtab_upper_bound (abfd) > 0)) dynsyms = slurp_dynamic_symtab (abfd); + if (disassemble && dynsymcount > 0) + { + synthcount = bfd_get_synthetic_symtab (abfd, dynsyms, &synthsyms); + if (synthcount < 0) synthcount = 0; + } if (dump_symtab) dump_symbols (abfd, FALSE); @@ -2592,6 +2612,16 @@ dump_bfd (bfd *abfd) free (dynsyms); dynsyms = NULL; } + + if (synthsyms) + { + free (synthsyms); + synthsyms = NULL; + } + + symcount = 0; + dynsymcount = 0; + synthcount = 0; } static void diff -uprN binutils-2.15.90.0.3/binutils/po/fr.po binutils-2.15.91.0.1/binutils/po/fr.po --- binutils-2.15.90.0.3/binutils/po/fr.po 2004-01-14 13:07:44.000000000 -0800 +++ binutils-2.15.91.0.1/binutils/po/fr.po 2004-05-27 11:26:02.942390336 -0700 @@ -1,17 +1,18 @@ # Messages français pour GNU concernant binutils. -# Copyright © 1996 Free Software Foundation, Inc. +# Copyright © 2004 Free Software Foundation, Inc. # Michel Robitaille , traducteur depuis/since 1996. # msgid "" msgstr "" "Project-Id-Version: GNU binutils 2.14rel030712\n" "POT-Creation-Date: 2003-07-11 13:56+0930\n" -"PO-Revision-Date: 2003-08-06 08:00-0500\n" +"PO-Revision-Date: 2004-05-10 08:00-0500\n" "Last-Translator: Michel Robitaille \n" "Language-Team: French \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-1\n" "Content-Transfer-Encoding: 8-bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" #: addr2line.c:74 #, c-format @@ -1868,7 +1869,7 @@ msgstr "%s: fread en échec" #: objcopy.c:728 #, c-format msgid "Ignoring rubbish found on line %d of %s" -msgstr "Rebuts ignorés trouvés sur la ligne %d de %s" +msgstr "Rebus ignorés trouvés sur la ligne %d de %s" #: objcopy.c:979 #, c-format diff -uprN binutils-2.15.90.0.3/binutils/ranlib.sh binutils-2.15.91.0.1/binutils/ranlib.sh --- binutils-2.15.90.0.3/binutils/ranlib.sh 1999-06-03 11:01:56.000000000 -0700 +++ binutils-2.15.91.0.1/binutils/ranlib.sh 2004-05-27 11:26:02.878398611 -0700 @@ -1,3 +1,3 @@ #!/bin/sh # A simple ranlib script, to use less disk space than a ranlib program. -ar s $1 +ar s "$1" diff -uprN binutils-2.15.90.0.3/binutils/readelf.c binutils-2.15.91.0.1/binutils/readelf.c --- binutils-2.15.90.0.3/binutils/readelf.c 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/binutils/readelf.c 2004-05-27 11:26:02.915393827 -0700 @@ -1,5 +1,5 @@ /* readelf.c -- display contents of an ELF format file - Copyright 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. + Copyright 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. Originally developed by Eric Youngdale Modifications by Nick Clifton @@ -140,6 +140,7 @@ int do_dynamic; int do_syms; int do_reloc; int do_sections; +int do_section_groups; int do_segments; int do_unwind; int do_using_dynamic; @@ -163,6 +164,23 @@ int do_arch; int do_notes; int is_32bit_elf; +struct group_list +{ + struct group_list *next; + unsigned int section_index; +}; + +struct group +{ + struct group_list *root; + unsigned int group_index; +}; + +struct group *section_groups; +size_t group_count = 0; + +struct group **section_headers_groups; + /* A dynamic array of flags indicating which sections require dumping. */ char *dump_sects = NULL; unsigned int num_dump_sects = 0; @@ -2171,6 +2189,7 @@ get_segment_type (unsigned long p_type) case PT_GNU_EH_FRAME: return "GNU_EH_FRAME"; case PT_GNU_STACK: return "STACK"; + case PT_GNU_RELRO: return "GNU_RELRO"; default: if ((p_type >= PT_LOPROC) && (p_type <= PT_HIPROC)) @@ -2393,6 +2412,7 @@ struct option options[] = {"segments", no_argument, 0, 'l'}, {"sections", no_argument, 0, 'S'}, {"section-headers", no_argument, 0, 'S'}, + {"section-groups", no_argument, 0, 'g'}, {"symbols", no_argument, 0, 's'}, {"syms", no_argument, 0, 's'}, {"relocs", no_argument, 0, 'r'}, @@ -2426,6 +2446,7 @@ usage (void) --segments An alias for --program-headers\n\ -S --section-headers Display the sections' header\n\ --sections An alias for --section-headers\n\ + -g --section-groups Display the section groups\n\ -e --headers Equivalent to: -h -l -S\n\ -s --syms Display the symbol table\n\ --symbols An alias for --syms\n\ @@ -2493,7 +2514,7 @@ parse_args (int argc, char **argv) usage (); while ((c = getopt_long - (argc, argv, "ersuahnldSDAIw::x:i:vVWH", options, NULL)) != EOF) + (argc, argv, "ersuahnldSDAIgw::x:i:vVWH", options, NULL)) != EOF) { char *cp; int section; @@ -2514,12 +2535,16 @@ parse_args (int argc, char **argv) do_dynamic++; do_header++; do_sections++; + do_section_groups++; do_segments++; do_version++; do_histogram++; do_arch++; do_notes++; break; + case 'g': + do_section_groups++; + break; case 'e': do_header++; do_sections++; @@ -2746,7 +2771,8 @@ parse_args (int argc, char **argv) if (!do_dynamic && !do_syms && !do_reloc && !do_unwind && !do_sections && !do_segments && !do_header && !do_dump && !do_version - && !do_histogram && !do_debugging && !do_arch && !do_notes) + && !do_histogram && !do_debugging && !do_arch && !do_notes + && !do_section_groups) usage (); else if (argc < 3) { @@ -3623,7 +3649,7 @@ process_section_headers (FILE *file) printf (" %3s ", get_elf_section_flags (section->sh_flags)); - printf ("%2ld %3lx %2ld\n", + printf ("%2ld %3lu %2ld\n", (unsigned long) section->sh_link, (unsigned long) section->sh_info, (unsigned long) section->sh_addralign); @@ -3658,7 +3684,7 @@ process_section_headers (FILE *file) printf (" %3s ", get_elf_section_flags (section->sh_flags)); - printf ("%2ld %3lx ", + printf ("%2ld %3lu ", (unsigned long) section->sh_link, (unsigned long) section->sh_info); @@ -3688,7 +3714,7 @@ process_section_headers (FILE *file) printf (" %3s ", get_elf_section_flags (section->sh_flags)); - printf (" %2ld %3lx %ld\n", + printf (" %2ld %3lu %ld\n", (unsigned long) section->sh_link, (unsigned long) section->sh_info, (unsigned long) section->sh_addralign); @@ -3703,6 +3729,175 @@ process_section_headers (FILE *file) return 1; } +static const char * +get_group_flags (unsigned int flags) +{ + static char buff[32]; + switch (flags) + { + case GRP_COMDAT: + return "COMDAT"; + + default: + sprintf (buff, _("[: 0x%x]"), flags); + break; + } + return buff; +} + +static int +process_section_groups (FILE *file) +{ + Elf_Internal_Shdr *section; + unsigned int i; + struct group *group; + + if (elf_header.e_shnum == 0) + { + if (do_section_groups) + printf (_("\nThere are no section groups in this file.\n")); + + return 1; + } + + if (section_headers == NULL) + { + error (_("Section headers are not available!\n")); + abort (); + } + + section_headers_groups = calloc (elf_header.e_shnum, + sizeof (struct group *)); + + if (section_headers_groups == NULL) + { + error (_("Out of memory\n")); + return 0; + } + + /* Scan the sections for the group section. */ + for (i = 0, section = section_headers; + i < elf_header.e_shnum; + i++, section++) + if (section->sh_type == SHT_GROUP) + group_count++; + + section_groups = calloc (group_count, sizeof (struct group)); + + if (section_groups == NULL) + { + error (_("Out of memory\n")); + return 0; + } + + for (i = 0, section = section_headers, group = section_groups; + i < elf_header.e_shnum; + i++, section++) + { + if (section->sh_type == SHT_GROUP) + { + char *name = SECTION_NAME (section); + char *group_name, *strtab, *start, *indices; + unsigned int entry, j, size; + Elf_Internal_Sym *sym; + Elf_Internal_Shdr *symtab_sec, *strtab_sec, *sec; + Elf_Internal_Sym *symtab; + + /* Get the symbol table. */ + symtab_sec = SECTION_HEADER (section->sh_link); + if (symtab_sec->sh_type != SHT_SYMTAB) + { + error (_("Bad sh_link in group section `%s'\n"), name); + continue; + } + symtab = GET_ELF_SYMBOLS (file, symtab_sec); + + sym = symtab + section->sh_info; + + if (ELF_ST_TYPE (sym->st_info) == STT_SECTION) + { + bfd_vma sec_index = SECTION_HEADER_INDEX (sym->st_shndx); + if (sec_index == 0) + { + error (_("Bad sh_info in group section `%s'\n"), name); + continue; + } + + group_name = SECTION_NAME (section_headers + sec_index); + strtab = NULL; + } + else + { + /* Get the string table. */ + strtab_sec = SECTION_HEADER (symtab_sec->sh_link); + strtab = get_data (NULL, file, strtab_sec->sh_offset, + strtab_sec->sh_size, + _("string table")); + + group_name = strtab + sym->st_name; + } + + start = get_data (NULL, file, section->sh_offset, + section->sh_size, _("section data")); + + indices = start; + size = (section->sh_size / section->sh_entsize) - 1; + entry = byte_get (indices, 4); + indices += 4; + + if (do_section_groups) + { + printf ("\n%s group section `%s' [%s] contains %u sections:\n", + get_group_flags (entry), name, group_name, size); + + printf (_(" [Index] Name\n")); + } + + group->group_index = i; + + for (j = 0; j < size; j++) + { + struct group_list *g; + + entry = byte_get (indices, 4); + indices += 4; + + if (section_headers_groups [SECTION_HEADER_INDEX (entry)] + != NULL) + { + error (_("section [%5u] already in group section [%5u]\n"), + entry, section_headers_groups [SECTION_HEADER_INDEX (entry)]->group_index); + continue; + } + + section_headers_groups [SECTION_HEADER_INDEX (entry)] + = group; + + if (do_section_groups) + { + sec = SECTION_HEADER (entry); + printf (" [%5u] %s\n", + entry, SECTION_NAME (sec)); + } + + g = xmalloc (sizeof (struct group_list)); + g->section_index = entry; + g->next = group->root; + group->root = g; + } + + if (strtab) + free (strtab); + if (start) + free (start); + + group++; + } + } + + return 1; +} + struct { const char *name; @@ -4176,8 +4371,24 @@ process_unwind (FILE *file) unwstart = i + 1; len = sizeof (ELF_STRING_ia64_unwind_once) - 1; - if (strncmp (SECTION_NAME (unwsec), ELF_STRING_ia64_unwind_once, - len) == 0) + if ((unwsec->sh_flags & SHF_GROUP) != 0) + { + /* We need to find which section group it is in. */ + struct group_list *g = section_headers_groups [i]->root; + + for (; g != NULL; g = g->next) + { + sec = SECTION_HEADER (g->section_index); + if (strcmp (SECTION_NAME (sec), + ELF_STRING_ia64_unwind_info) == 0) + break; + } + + if (g == NULL) + i = elf_header.e_shnum; + } + else if (strncmp (SECTION_NAME (unwsec), + ELF_STRING_ia64_unwind_once, len) == 0) { /* .gnu.linkonce.ia64unw.FOO -> .gnu.linkonce.ia64unwi.FOO */ len2 = sizeof (ELF_STRING_ia64_unwind_info_once) - 1; @@ -8757,7 +8968,14 @@ display_debug_frames (Elf_Internal_Shdr { fc->code_factor = LEB (); fc->data_factor = SLEB (); - fc->ra = byte_get (start, 1); start += 1; + if (version == 1) + { + fc->ra = GET (1); + } + else + { + fc->ra = LEB (); + } augmentation_data_len = LEB (); augmentation_data = start; start += augmentation_data_len; @@ -8767,13 +8985,27 @@ display_debug_frames (Elf_Internal_Shdr start += addr_size; fc->code_factor = LEB (); fc->data_factor = SLEB (); - fc->ra = byte_get (start, 1); start += 1; + if (version == 1) + { + fc->ra = GET (1); + } + else + { + fc->ra = LEB (); + } } else { fc->code_factor = LEB (); fc->data_factor = SLEB (); - fc->ra = byte_get (start, 1); start += 1; + if (version == 1) + { + fc->ra = GET (1); + } + else + { + fc->ra = LEB (); + } } cie = fc; @@ -10306,9 +10538,10 @@ process_object (char *file_name, FILE *f if (! process_file_header ()) return 1; - if (! process_section_headers (file)) + if (! process_section_headers (file) + || ! process_section_groups (file)) { - /* Without loaded section headers we + /* Without loaded section headers and section groups we cannot process lots of things. */ do_unwind = do_version = do_dump = do_arch = 0; @@ -10375,6 +10608,29 @@ process_object (char *file_name, FILE *f dynamic_syminfo = NULL; } + if (section_headers_groups) + { + free (section_headers_groups); + section_headers_groups = NULL; + } + + if (section_groups) + { + struct group_list *g, *next; + + for (i = 0; i < group_count; i++) + { + for (g = section_groups [i].root; g != NULL; g = next) + { + next = g->next; + free (g); + } + } + + free (section_groups); + section_groups = NULL; + } + return 0; } diff -uprN binutils-2.15.90.0.3/binutils/testsuite/ChangeLog binutils-2.15.91.0.1/binutils/testsuite/ChangeLog --- binutils-2.15.90.0.3/binutils/testsuite/ChangeLog 2004-04-14 21:26:05.000000000 -0700 +++ binutils-2.15.91.0.1/binutils/testsuite/ChangeLog 2004-05-27 11:26:02.958388267 -0700 @@ -1,3 +1,16 @@ +2004-05-15 Nick Clifton + + * binutils-all/readelf.ss: Allow for ARM mapping symbols. + +2004-05-12 Ben Elliston + + * binutils-all/ar.exp: Remove stray semicolons. + * binutils-all/dlltool.exp: Likewise. + * binutils-all/objcopy.exp: Likewise. + * binutils-all/readelf.exp: Likewise. + * binutils-all/windres/windres.exp: Likewise. + * lib/utils-lib.exp: Likewise. + 2004-04-14 Richard Sandiford * binutils-all/readelf.ss-mips: Allow named section symbols. diff -uprN binutils-2.15.90.0.3/binutils/testsuite/binutils-all/ar.exp binutils-2.15.91.0.1/binutils/testsuite/binutils-all/ar.exp --- binutils-2.15.90.0.3/binutils/testsuite/binutils-all/ar.exp 2004-03-03 12:24:34.000000000 -0800 +++ binutils-2.15.91.0.1/binutils/testsuite/binutils-all/ar.exp 2004-05-27 11:26:02.976385940 -0700 @@ -67,14 +67,14 @@ proc long_filenames { } { close $f if [is_remote host] { - set file1 [remote_download host $file1]; - set file2 [remote_download host $file2]; + set file1 [remote_download host $file1] + set file2 [remote_download host $file2] set dest artest.a } else { set dest tmpdir/artest.a } - remote_file host delete $dest; + remote_file host delete $dest set got [binutils_run $AR "rc $dest $file1 $file2"] if [is_remote host] { @@ -90,7 +90,7 @@ proc long_filenames { } { return } - remote_file host delete $dest; + remote_file host delete $dest set got [binutils_run $AR "rc $dest $file1 $file2"] if ![string match "" $got] { @@ -102,15 +102,15 @@ proc long_filenames { } { remote_file build delete tmpdir/$n2 set got [binutils_run $AR "t $dest"] - regsub "\[\r\n \t\]*$" "$got" "" got; + regsub "\[\r\n \t\]*$" "$got" "" got if ![string match "$n1*$n2" $got] { fail $testname return } if [is_remote host] { - remote_file host delete $file1; - remote_file host delete $file2; + remote_file host delete $file1 + remote_file host delete $file2 } verbose -log "$AR x $dest" @@ -123,8 +123,8 @@ proc long_filenames { } { } if [is_remote host] { - remote_upload host $n1 tmpdir/$n1; - remote_upload host $n2 tmpdir/$n2; + remote_upload host $n1 tmpdir/$n1 + remote_upload host $n2 tmpdir/$n2 set file1 tmpdir/$n1 set file2 tmpdir/$n2 } else { diff -uprN binutils-2.15.90.0.3/binutils/testsuite/binutils-all/dlltool.exp binutils-2.15.91.0.1/binutils/testsuite/binutils-all/dlltool.exp --- binutils-2.15.90.0.3/binutils/testsuite/binutils-all/dlltool.exp 2002-11-09 11:08:31.000000000 -0800 +++ binutils-2.15.91.0.1/binutils/testsuite/binutils-all/dlltool.exp 2004-05-27 11:26:02.991384000 -0700 @@ -41,7 +41,7 @@ if ![string match "" $err] then { send_log "$err\n" verbose "$err" 1 fail "dlltool (fastcall export)" - continue; + continue } pass "dlltool (fastcall export)" diff -uprN binutils-2.15.90.0.3/binutils/testsuite/binutils-all/objcopy.exp binutils-2.15.91.0.1/binutils/testsuite/binutils-all/objcopy.exp --- binutils-2.15.90.0.3/binutils/testsuite/binutils-all/objcopy.exp 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/binutils/testsuite/binutils-all/objcopy.exp 2004-05-27 11:26:03.009381673 -0700 @@ -36,8 +36,8 @@ if {![binutils_assemble $srcdir/$subdir/ } if ![is_remote host] { - set tempfile tmpdir/bintest.o; - set copyfile tmpdir/copy; + set tempfile tmpdir/bintest.o + set copyfile tmpdir/copy } else { set tempfile [remote_download host tmpdir/bintest.o] set copyfile copy @@ -55,14 +55,14 @@ if ![string match "" $got] then { if [is_remote host] { set src1 tmpdir/bintest.o set src2 tmpdir/copy.o - remote_upload host $tempfile $src1; - remote_upload host ${copyfile}.o $src2; + remote_upload host $tempfile $src1 + remote_upload host ${copyfile}.o $src2 } else { set src1 ${tempfile} set src2 ${copyfile}.o } - set status [remote_exec build cmp "${src1} ${src2}"]; - set exec_output [lindex $status 1]; + set status [remote_exec build cmp "${src1} ${src2}"] + set exec_output [lindex $status 1] set exec_output [prune_warnings $exec_output] # On some systems the result of objcopy will not be identical. @@ -120,8 +120,8 @@ if ![string match "" $got] then { fail "objcopy -O srec" } else { if [is_remote host] { - remote_upload host ${srecfile} tmpdir/copy.srec; - set srecfile tmpdir/copy.srec; + remote_upload host ${srecfile} tmpdir/copy.srec + set srecfile tmpdir/copy.srec } set file [open ${srecfile} r] @@ -332,7 +332,7 @@ proc strip_test { } { if [is_remote host] { set archive libstrip.a - set objfile [remote_download host tmpdir/testprog.o]; + set objfile [remote_download host tmpdir/testprog.o] remote_file host delete $archive } else { set archive tmpdir/libstrip.a @@ -359,7 +359,7 @@ proc strip_test { } { } if [is_remote host] { - set objfile [remote_download host tmpdir/testprog.o]; + set objfile [remote_download host tmpdir/testprog.o] } else { set objfile tmpdir/testprog.o } @@ -400,7 +400,7 @@ proc strip_test_with_saving_a_symbol { } } if [is_remote host] { - set objfile [remote_download host tmpdir/testprog.o]; + set objfile [remote_download host tmpdir/testprog.o] } else { set objfile tmpdir/testprog.o } @@ -437,14 +437,14 @@ proc copy_setup { } { global gcc_gas_flag global test_prog - set res [build_wrapper testglue.o]; - set flags { debug }; + set res [build_wrapper testglue.o] + set flags { debug } if { $res != "" } { - lappend flags "additional_flags=[lindex $res 1]"; - set add_libs "testglue.o"; + lappend flags "additional_flags=[lindex $res 1]" + set add_libs "testglue.o" } else { - set add_libs ""; + set add_libs "" } if { [istarget *-*-linux*] } { @@ -456,8 +456,8 @@ proc copy_setup { } { return 2 } - set result [remote_load target tmpdir/$test_prog]; - set status [lindex $result 0]; + set result [remote_load target tmpdir/$test_prog] + set status [lindex $result 0] if { $status != "pass" } { set msg [lindex $result 1]; @@ -480,13 +480,13 @@ proc copy_executable { prog flags test1 global test_prog if [is_remote host] { - set testfile [remote_download host tmpdir/$test_prog]; + set testfile [remote_download host tmpdir/$test_prog] set testcopy copyprog } else { set testfile tmpdir/$test_prog set testcopy tmpdir/copyprog } - remote_file host delete $testcopy; + remote_file host delete $testcopy set exec_output [binutils_run $prog "$flags $testfile $testcopy"] @@ -501,7 +501,7 @@ proc copy_executable { prog flags test1 } set status [remote_exec build "cmp" "tmpdir/$test_prog tmpdir/copyprog"] - set exec_output [lindex $status 1]; + set exec_output [lindex $status 1] if [string match "" $exec_output] then { pass $test1 @@ -534,7 +534,7 @@ proc copy_executable { prog flags test1 } set output [remote_load target tmpdir/copyprog] - set status [lindex $output 0]; + set status [lindex $output 0] if { $status != "pass" } { fail $test2 } else { @@ -550,7 +550,7 @@ proc strip_executable { prog flags test remote_download build tmpdir/copyprog tmpdir/striprog if [is_remote host] { - set copyfile [remote_download host tmpdir/striprog]; + set copyfile [remote_download host tmpdir/striprog] } else { set copyfile tmpdir/striprog } @@ -562,11 +562,11 @@ proc strip_executable { prog flags test } if [is_remote host] { - remote_upload host ${copyfile} tmpdir/striprog; + remote_upload host ${copyfile} tmpdir/striprog } set result [remote_load target tmpdir/striprog] - set status [lindex $result 0]; + set status [lindex $result 0] if { $status != "pass" } { fail $test return @@ -588,7 +588,7 @@ proc strip_executable_with_saving_a_symb remote_download build tmpdir/copyprog tmpdir/striprog if [is_remote host] { - set copyfile [remote_download host tmpdir/striprog]; + set copyfile [remote_download host tmpdir/striprog] } else { set copyfile tmpdir/striprog } @@ -600,11 +600,11 @@ proc strip_executable_with_saving_a_symb } if [is_remote host] { - remote_upload host ${copyfile} tmpdir/striprog; + remote_upload host ${copyfile} tmpdir/striprog } set result [remote_load target tmpdir/striprog] - set status [lindex $result 0]; + set status [lindex $result 0] if { $status != "pass" } { fail $test return diff -uprN binutils-2.15.90.0.3/binutils/testsuite/binutils-all/readelf.exp binutils-2.15.91.0.1/binutils/testsuite/binutils-all/readelf.exp --- binutils-2.15.90.0.3/binutils/testsuite/binutils-all/readelf.exp 2004-01-14 13:07:44.000000000 -0800 +++ binutils-2.15.91.0.1/binutils/testsuite/binutils-all/readelf.exp 2004-05-27 11:26:03.028379216 -0700 @@ -245,16 +245,16 @@ proc readelf_wi_test {} { } # Download it. - set tempfile [remote_download host tmpdir/testprog.o]; + set tempfile [remote_download host tmpdir/testprog.o] # Run "readelf -wi" on it. send_log "exec $READELF $READELFFLAGS -wi $tempfile > readelf.out\n" catch "exec $READELF $READELFFLAGS -wi $tempfile > readelf.out" got # Upload the results. - set output [remote_upload host readelf.out]; + set output [remote_upload host readelf.out] - file_on_host delete $tempfile; + file_on_host delete $tempfile # Strip any superflous warnings. set got [prune_readelf_wi_warnings $got] @@ -296,7 +296,7 @@ proc readelf_wi_test {} { } } - file_on_host delete $output; + file_on_host delete $output # All done. pass "readelf -wi" @@ -326,7 +326,7 @@ if {![binutils_assemble $srcdir/$subdir/ } if ![is_remote host] { - set tempfile tmpdir/bintest.o; + set tempfile tmpdir/bintest.o } else { set tempfile [remote_download host tmpdir/bintest.o] } diff -uprN binutils-2.15.90.0.3/binutils/testsuite/binutils-all/readelf.ss binutils-2.15.91.0.1/binutils/testsuite/binutils-all/readelf.ss --- binutils-2.15.90.0.3/binutils/testsuite/binutils-all/readelf.ss 2004-01-14 13:07:44.000000000 -0800 +++ binutils-2.15.91.0.1/binutils/testsuite/binutils-all/readelf.ss 2004-05-27 11:26:03.029379087 -0700 @@ -6,7 +6,9 @@ Symbol table '.symtab' contains .* entri 2: 00000000 0 SECTION LOCAL DEFAULT 3 3: 00000000 0 SECTION LOCAL DEFAULT 4 4: 00000000 0 NOTYPE LOCAL DEFAULT 1 static_text_symbol - 5: 00000000 0 NOTYPE LOCAL DEFAULT 3 static_data_symbol +# arm-elf targets add the $d mapping symbol here... +#... + .: 00000000 0 NOTYPE LOCAL DEFAULT 3 static_data_symbol # v850 targets include extra SECTION symbols here for the .call_table_data # and .call_table_text sections. #... diff -uprN binutils-2.15.90.0.3/binutils/testsuite/binutils-all/windres/windres.exp binutils-2.15.91.0.1/binutils/testsuite/binutils-all/windres/windres.exp --- binutils-2.15.90.0.3/binutils/testsuite/binutils-all/windres/windres.exp 2003-05-05 14:46:47.000000000 -0700 +++ binutils-2.15.91.0.1/binutils/testsuite/binutils-all/windres/windres.exp 2004-05-27 11:26:03.029379087 -0700 @@ -74,7 +74,7 @@ foreach res $res_list { } if [regexp "\[xp\]fail *(\[^ \]*)" $line junk sys] { setup_xfail $sys - continue; + continue } } @@ -89,7 +89,7 @@ foreach res $res_list { send_log "$err\n" verbose "$err" 1 fail "windres/$broot (parse)" - continue; + continue } pass "windres/$broot (parse)" @@ -101,15 +101,15 @@ foreach res $res_list { if [regexp "parse-only" $line] { file delete "tmpdir/$broot.res" set done 1 - break; + break } if [regexp "\[xc\]fail *(\[^ \]*)" $line junk sys] { setup_xfail $sys - continue; + continue } } if { $done != 0 } { - continue; + continue } if { "$broot" != "bmpalign" && "$target_xfail" == "yes" } { @@ -123,7 +123,7 @@ foreach res $res_list { send_log "$err\n" verbose "$err" 1 fail "windres/$broot (compare)" - continue; + continue } set pat [open "$sroot.rsd"] @@ -135,11 +135,11 @@ foreach res $res_list { set outline [oneline $out] if ![string match $patline $outline] { - send_log "< $patline\n"; - send_log "> $outline\n"; - fail "windres/$broot (compare)"; + send_log "< $patline\n" + send_log "> $outline\n" + fail "windres/$broot (compare)" set done 1 - break; + break } } if { $done == 0 } { diff -uprN binutils-2.15.90.0.3/binutils/testsuite/lib/utils-lib.exp binutils-2.15.91.0.1/binutils/testsuite/lib/utils-lib.exp --- binutils-2.15.90.0.3/binutils/testsuite/lib/utils-lib.exp 2004-01-14 13:07:44.000000000 -0800 +++ binutils-2.15.91.0.1/binutils/testsuite/lib/utils-lib.exp 2004-05-27 11:26:03.035378311 -0700 @@ -23,7 +23,7 @@ proc binutil_version { prog } { if ![is_remote host] { - set path [which $prog]; + set path [which $prog] if {$path == 0} then { perror "$prog can't be run, file not found." return "" @@ -31,8 +31,8 @@ proc binutil_version { prog } { } else { set path $prog } - set state [remote_exec host $prog --version]; - set tmp "[lindex $state 1]\n"; + set state [remote_exec host $prog --version] + set tmp "[lindex $state 1]\n" # Should find a way to discard constant parts, keep whatever's # left, so the version string could be almost anything at all... regexp "\[^\n\]* (cygnus-|)(\[-0-9.a-zA-Z-\]+)\[\r\n\].*" "$tmp" version cyg number @@ -69,7 +69,7 @@ proc default_binutils_run { prog progarg regsub -all "\\$" "$progargs" "\\$" progargs set state [remote_exec host $prog $progargs] - set exec_output [prune_warnings [lindex $state 1]]; + set exec_output [prune_warnings [lindex $state 1]] if {![string match "" $exec_output]} then { send_log "$exec_output\n" verbose "$exec_output" @@ -95,11 +95,11 @@ proc default_binutils_assemble { source set sed_file $srcdir/config/hppa.sed send_log "sed -f $sed_file < $source > asm.s\n" verbose "sed -f $sed_file < $source > asm.s" - catch "exec sed -f $sed_file < $source > asm.s"; + catch "exec sed -f $sed_file < $source > asm.s" set source asm.s } - set exec_output [target_assemble $source $object ""]; + set exec_output [target_assemble $source $object ""] set exec_output [prune_warnings $exec_output] if [string match "" $exec_output] { diff -uprN binutils-2.15.90.0.3/binutils.spec binutils-2.15.91.0.1/binutils.spec --- binutils-2.15.90.0.3/binutils.spec 2004-04-14 21:11:35.000000000 -0700 +++ binutils-2.15.91.0.1/binutils.spec 2004-05-27 10:28:07.943635211 -0700 @@ -12,7 +12,7 @@ Summary: A GNU collection of binary utilities. Name: binutils -Version: 2.15.90.0.3 +Version: 2.15.91.0.1 Release: 1 Copyright: GPL Group: Development/Tools diff -uprN binutils-2.15.90.0.3/config/ChangeLog binutils-2.15.91.0.1/config/ChangeLog --- binutils-2.15.90.0.3/config/ChangeLog 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/config/ChangeLog 2004-05-27 11:26:03.036378182 -0700 @@ -1,3 +1,14 @@ +2004-05-23 Paolo Bonzini + + * acx.m4 (ACX_HEADER_STDBOOL, ACX_HEADER_STRING): + From gcc. + +2004-04-16 Rainer Orth + + * acx.m4 (ACX_PROG_GNAT): Check if ${CC} produces object file for + Ada compilation. + Fix acx_cv_cc_gcc_supports_ada spelling. + 2004-03-08 Paolo Bonzini PR ada/14131 diff -uprN binutils-2.15.90.0.3/config/acx.m4 binutils-2.15.91.0.1/config/acx.m4 --- binutils-2.15.90.0.3/config/acx.m4 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/config/acx.m4 2004-05-27 11:26:03.055375725 -0700 @@ -177,16 +177,84 @@ acx_cv_cc_gcc_supports_ada=no # has not been installed. This is fixed in 2.95.4, 3.0.2, and 3.1. # Therefore we must check for the error message as well as an # unsuccessful exit. +# Other compilers, like HP Tru64 UNIX cc, exit successfully when +# given a .adb file, but produce no object file. So we must check +# if an object file was really produced to guard against this. errors=`(${CC} -c conftest.adb) 2>&1 || echo failure` -if test x"$errors" = x; then +if test x"$errors" = x && test -f conftest.$ac_objext; then acx_cv_cc_gcc_supports_ada=yes break fi rm -f conftest.*]) -if test x$GNATBIND != xno && test x$acx_cv_gcc_supports_ada != xno; then +if test x$GNATBIND != xno && test x$acx_cv_cc_gcc_supports_ada != xno; then have_gnat=yes else have_gnat=no fi ]) + +dnl 'make compare' can be significantly faster, if cmp itself can +dnl skip bytes instead of using tail. The test being performed is +dnl "if cmp --ignore-initial=2 t1 t2 && ! cmp --ignore-initial=1 t1 t2" +dnl but we need to sink errors and handle broken shells. We also test +dnl for the parameter format "cmp file1 file2 skip1 skip2" which is +dnl accepted by cmp on some systems. +AC_DEFUN([ACX_PROG_CMP_IGNORE_INITIAL], +[AC_CACHE_CHECK([how to compare bootstrapped objects], gcc_cv_prog_cmp_skip, +[ echo abfoo >t1 + echo cdfoo >t2 + gcc_cv_prog_cmp_skip='tail +16c $$f1 > tmp-foo1; tail +16c $$f2 > tmp-foo2; cmp tmp-foo1 tmp-foo2' + if cmp t1 t2 2 2 > /dev/null 2>&1; then + if cmp t1 t2 1 1 > /dev/null 2>&1; then + : + else + gcc_cv_prog_cmp_skip='cmp $$f1 $$f2 16 16' + fi + fi + if cmp --ignore-initial=2 t1 t2 > /dev/null 2>&1; then + if cmp --ignore-initial=1 t1 t2 > /dev/null 2>&1; then + : + else + gcc_cv_prog_cmp_skip='cmp --ignore-initial=16 $$f1 $$f2' + fi + fi + rm t1 t2 +]) +do_compare="$gcc_cv_prog_cmp_skip" +AC_SUBST(do_compare) +]) + +dnl See whether we can include both string.h and strings.h. +AC_DEFUN([ACX_HEADER_STRING], +[AC_CACHE_CHECK([whether string.h and strings.h may both be included], + gcc_cv_header_string, +[AC_TRY_COMPILE([#include +#include ], , gcc_cv_header_string=yes, gcc_cv_header_string=no)]) +if test $gcc_cv_header_string = yes; then + AC_DEFINE(STRING_WITH_STRINGS, 1, [Define if you can safely include both and .]) +fi +]) + +dnl See if stdbool.h properly defines bool and true/false. +dnl Check whether _Bool is built-in. +AC_DEFUN([ACX_HEADER_STDBOOL], +[AC_CACHE_CHECK([for working stdbool.h], + ac_cv_header_stdbool_h, +[AC_TRY_COMPILE([#include ], +[bool foo = false;], +ac_cv_header_stdbool_h=yes, ac_cv_header_stdbool_h=no)]) +if test $ac_cv_header_stdbool_h = yes; then + AC_DEFINE(HAVE_STDBOOL_H, 1, + [Define if you have a working header file.]) +fi +AC_CACHE_CHECK(for built-in _Bool, gcc_cv_c__bool, +[AC_TRY_COMPILE(, +[_Bool foo;], +gcc_cv_c__bool=yes, gcc_cv_c__bool=no) +]) +if test $gcc_cv_c__bool = yes; then + AC_DEFINE(HAVE__BOOL, 1, [Define if the \`_Bool' type is built-in.]) +fi +]) + diff -uprN binutils-2.15.90.0.3/configure binutils-2.15.91.0.1/configure --- binutils-2.15.90.0.3/configure 2004-04-12 12:56:33.000000000 -0700 +++ binutils-2.15.91.0.1/configure 2004-05-27 11:26:01.680553515 -0700 @@ -12,8 +12,14 @@ ac_help= ac_default_prefix=/usr/local # Any additions from configure.in: ac_help="$ac_help + --without-libbanshee Don't build with libbanshee" +ac_help="$ac_help --enable-libada Builds libada directory" ac_help="$ac_help + --with-gmp-dir=PATH Specify source directory for GMP library" +ac_help="$ac_help + --with-gmp=PATH Specify directory for installed GMP library" +ac_help="$ac_help --enable-serial-[{host,target,build}-]configure Force sequential configuration of sub-packages for the host, target or build @@ -581,7 +587,7 @@ else { echo "configure: error: can not r fi echo $ac_n "checking host system type""... $ac_c" 1>&6 -echo "configure:585: checking host system type" >&5 +echo "configure:591: checking host system type" >&5 host_alias=$host case "$host_alias" in @@ -602,7 +608,7 @@ host_os=`echo $host | sed 's/^\([^-]*\)- echo "$ac_t""$host" 1>&6 echo $ac_n "checking target system type""... $ac_c" 1>&6 -echo "configure:606: checking target system type" >&5 +echo "configure:612: checking target system type" >&5 target_alias=$target case "$target_alias" in @@ -620,7 +626,7 @@ target_os=`echo $target | sed 's/^\([^-] echo "$ac_t""$target" 1>&6 echo $ac_n "checking build system type""... $ac_c" 1>&6 -echo "configure:624: checking build system type" >&5 +echo "configure:630: checking build system type" >&5 build_alias=$build case "$build_alias" in @@ -675,7 +681,7 @@ test "$program_transform_name" = "" && p # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # ./install, which can be erroneously created by make from ./install.sh. echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 -echo "configure:679: checking for a BSD compatible install" >&5 +echo "configure:685: checking for a BSD compatible install" >&5 if test -z "$INSTALL"; then if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -727,6 +733,27 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCR test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' +echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6 +echo "configure:738: checking whether ln -s works" >&5 +if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + rm -f conftestdata +if ln -s X conftestdata 2>/dev/null +then + rm -f conftestdata + ac_cv_prog_LN_S="ln -s" +else + ac_cv_prog_LN_S=ln +fi +fi +LN_S="$ac_cv_prog_LN_S" +if test "$ac_cv_prog_LN_S" = "ln -s"; then + echo "$ac_t""yes" 1>&6 +else + echo "$ac_t""no" 1>&6 +fi + # Autoconf M4 include file defining utility macros for complex Canadian # cross builds. @@ -780,6 +807,13 @@ test -z "$INSTALL_DATA" && INSTALL_DATA= + + + + + + + ### we might need to use some other shell than /bin/sh for running subshells ### If we are on Windows, search for the shell. This will permit people ### to not have /bin/sh, but to be able to see /SOME/PATH/sh configure @@ -878,7 +912,7 @@ fi # these libraries are used by various programs built for the host environment # -host_libs="intl mmalloc libiberty opcodes bfd readline tcl tk itcl tix libgui zlib" +host_libs="intl mmalloc libiberty opcodes bfd readline tcl tk itcl tix libgui zlib libbanshee libcpp" # these tools are built for the host environment # Note, the powerpc-eabi build depends on sim occurring before gdb in order to @@ -901,7 +935,8 @@ target_libraries="target-libiberty \ target-libgloss \ target-newlib \ target-libstdc++-v3 \ - target-libf2c \ + target-libmudflap \ + target-libgfortran \ ${libgcj} \ target-libobjc \ target-libada" @@ -1080,6 +1115,22 @@ case "${host}" in ;; esac +# Check whether --with-libbanshee or --without-libbanshee was given. +if test "${with_libbanshee+set}" = set; then + withval="$with_libbanshee" + : +fi + +case ${with_libbanshee} in + no) + noconfigdirs="$noconfigdirs libbanshee" ;; + yes|"") + with_libbanshee=yes + ;; + *) + { echo "configure: error: --with-libbanshee can only be empty, "yes" or "no" (empty defaults to "yes"." 1>&2; exit 1; } +esac + # Check whether --enable-libada or --disable-libada was given. if test "${enable_libada+set}" = set; then enableval="$enable_libada" @@ -1108,6 +1159,18 @@ no) ;; esac + +# Allow --disable-libmudflap to exclude target-libmudflap +case $enable_libmudflap in +yes | "") + # By default it's enabled + ;; +no) + noconfigdirs="$noconfigdirs target-libmudflap" + ;; +esac + + case "${target}" in *-*-chorusos) noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}" @@ -1123,9 +1186,25 @@ case "${target}" in *-*-freebsd[12] | *-*-freebsd[12].* | *-*-freebsd*aout*) noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}" ;; + *-*-freebsd* | *-*-kfreebsd*-gnu) + noconfigdirs="$noconfigdirs target-newlib target-libgloss" + if test "x$with_gmp" = x && test "x$with_gmp_dir" = x \ + && test -f /usr/local/include/gmp.h; then + with_gmp=/usr/local + fi + + # Skip some stuff that's unsupported on some FreeBSD configurations. + case "${target}" in + i*86-*-*) ;; + alpha*-*-*) ;; + *) + noconfigdirs="$noconfigdirs ${libgcj}" + ;; + esac + ;; *-*-kaos*) # Remove unsupported stuff on all kaOS configurations. - skipdirs="target-libiberty ${libgcj} target-libstdc++-v3 target-libf2c target-librx" + skipdirs="target-libiberty ${libgcj} target-libstdc++-v3 target-librx" skipdirs="$skipdirs target-libobjc target-examples target-groff target-gperf" skipdirs="$skipdirs zlib fastjar target-libjava target-boehm-gc target-zlib" noconfigdirs="$noconfigdirs target-libgloss" @@ -1148,12 +1227,6 @@ case "${target}" in ;; *-*-rtems*) noconfigdirs="$noconfigdirs target-libgloss ${libgcj}" - case ${target} in - h8300*-*-* | h8500-*-*) - noconfigdirs="$noconfigdirs target-libf2c" - ;; - *) ;; - esac ;; *-*-uclinux*) noconfigdirs="$noconfigdirs target-newlib target-libgloss target-rda ${libgcj}" @@ -1174,9 +1247,6 @@ case "${target}" in # newlib is not 64 bit ready noconfigdirs="$noconfigdirs target-newlib target-libgloss" ;; - alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu) - noconfigdirs="$noconfigdirs target-newlib target-libgloss" - ;; alpha*-*-*) # newlib is not 64 bit ready noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}" @@ -1257,10 +1327,10 @@ case "${target}" in noconfigdirs="$noconfigdirs ${libgcj}" ;; h8300*-*-*) - noconfigdirs="$noconfigdirs target-libgloss ${libgcj} target-libf2c" + noconfigdirs="$noconfigdirs target-libgloss ${libgcj}" ;; h8500-*-*) - noconfigdirs="$noconfigdirs target-libstdc++-v3 target-libgloss ${libgcj} target-libf2c" + noconfigdirs="$noconfigdirs target-libstdc++-v3 target-libgloss ${libgcj}" ;; hppa*64*-*-linux* | parisc*64*-*-linux*) # In this case, it's because the hppa64-linux target is for @@ -1295,9 +1365,6 @@ case "${target}" in i[3456789]86-*-coff | i[3456789]86-*-elf) noconfigdirs="$noconfigdirs ${libgcj}" ;; - i[3456789]86-*-freebsd* | i[3456789]86-*-kfreebsd*-gnu) - noconfigdirs="$noconfigdirs target-newlib target-libgloss" - ;; i[3456789]86-*-linux*) # The GCC port for glibc1 has no MD_FALLBACK_FRAME_STATE_FOR, so let's # not build java stuff by default. @@ -1347,7 +1414,7 @@ case "${target}" in i[3456789]86-*-sco3.2v5*) # The linker does not yet know about weak symbols in COFF, # and is not configured to handle mixed ELF and COFF. - noconfigdirs="$noconfigdirs ld target-libgloss ${libgcj}" + noconfigdirs="$noconfigdirs target-libgloss ${libgcj}" ;; i[3456789]86-*-sco*) noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}" @@ -1420,8 +1487,7 @@ case "${target}" in noconfigdirs="$noconfigdirs ld binutils gprof target-libgloss ${libgcj}" ;; mips*-*-irix5*) - # The GNU linker does not support shared libraries. - noconfigdirs="$noconfigdirs ld gprof target-libgloss ${libgcj}" + noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}" ;; mips*-*-irix6*) # Linking libjava exceeds command-line length limits on at least @@ -1854,7 +1920,7 @@ fi # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1858: checking for $ac_word" >&5 +echo "configure:1924: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1884,7 +1950,7 @@ if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1888: checking for $ac_word" >&5 +echo "configure:1954: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1935,7 +2001,7 @@ fi # Extract the first word of "cl", so it can be a program name with args. set dummy cl; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1939: checking for $ac_word" >&5 +echo "configure:2005: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1967,7 +2033,7 @@ fi fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 -echo "configure:1971: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 +echo "configure:2037: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 ac_ext=c # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. @@ -1978,12 +2044,12 @@ cross_compiling=$ac_cv_prog_cc_cross cat > conftest.$ac_ext << EOF -#line 1982 "configure" +#line 2048 "configure" #include "confdefs.h" main(){return(0);} EOF -if { (eval echo configure:1987: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2053: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then ac_cv_prog_cc_works=yes # If we can't run a trivial program, we are probably using a cross compiler. if (./conftest; exit) 2>/dev/null; then @@ -2009,12 +2075,12 @@ if test $ac_cv_prog_cc_works = no; then { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; } fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 -echo "configure:2013: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 +echo "configure:2079: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 cross_compiling=$ac_cv_prog_cc_cross echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 -echo "configure:2018: checking whether we are using GNU C" >&5 +echo "configure:2084: checking whether we are using GNU C" >&5 if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2023,7 +2089,7 @@ else yes; #endif EOF -if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:2027: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then +if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:2093: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then ac_cv_prog_gcc=yes else ac_cv_prog_gcc=no @@ -2042,7 +2108,7 @@ ac_test_CFLAGS="${CFLAGS+set}" ac_save_CFLAGS="$CFLAGS" CFLAGS= echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 -echo "configure:2046: checking whether ${CC-cc} accepts -g" >&5 +echo "configure:2112: checking whether ${CC-cc} accepts -g" >&5 if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2078,7 +2144,7 @@ fi # Extract the first word of "${ac_tool_prefix}gnatbind", so it can be a program name with args. set dummy ${ac_tool_prefix}gnatbind; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:2082: checking for $ac_word" >&5 +echo "configure:2148: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_GNATBIND'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2110,7 +2176,7 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "gnatbind", so it can be a program name with args. set dummy gnatbind; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:2114: checking for $ac_word" >&5 +echo "configure:2180: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_GNATBIND'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2143,7 +2209,7 @@ fi fi echo $ac_n "checking whether compiler driver understands Ada""... $ac_c" 1>&6 -echo "configure:2147: checking whether compiler driver understands Ada" >&5 +echo "configure:2213: checking whether compiler driver understands Ada" >&5 if eval "test \"`echo '$''{'acx_cv_cc_gcc_supports_ada'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2156,8 +2222,11 @@ acx_cv_cc_gcc_supports_ada=no # has not been installed. This is fixed in 2.95.4, 3.0.2, and 3.1. # Therefore we must check for the error message as well as an # unsuccessful exit. +# Other compilers, like HP Tru64 UNIX cc, exit successfully when +# given a .adb file, but produce no object file. So we must check +# if an object file was really produced to guard against this. errors=`(${CC} -c conftest.adb) 2>&1 || echo failure` -if test x"$errors" = x; then +if test x"$errors" = x && test -f conftest.$ac_objext; then acx_cv_cc_gcc_supports_ada=yes break fi @@ -2166,12 +2235,140 @@ fi echo "$ac_t""$acx_cv_cc_gcc_supports_ada" 1>&6 -if test x$GNATBIND != xno && test x$acx_cv_gcc_supports_ada != xno; then +if test x$GNATBIND != xno && test x$acx_cv_cc_gcc_supports_ada != xno; then have_gnat=yes else have_gnat=no fi +echo $ac_n "checking how to compare bootstrapped objects""... $ac_c" 1>&6 +echo "configure:2246: checking how to compare bootstrapped objects" >&5 +if eval "test \"`echo '$''{'gcc_cv_prog_cmp_skip'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + echo abfoo >t1 + echo cdfoo >t2 + gcc_cv_prog_cmp_skip='tail +16c $$f1 > tmp-foo1; tail +16c $$f2 > tmp-foo2; cmp tmp-foo1 tmp-foo2' + if cmp t1 t2 2 2 > /dev/null 2>&1; then + if cmp t1 t2 1 1 > /dev/null 2>&1; then + : + else + gcc_cv_prog_cmp_skip='cmp $$f1 $$f2 16 16' + fi + fi + if cmp --ignore-initial=2 t1 t2 > /dev/null 2>&1; then + if cmp --ignore-initial=1 t1 t2 > /dev/null 2>&1; then + : + else + gcc_cv_prog_cmp_skip='cmp --ignore-initial=16 $$f1 $$f2' + fi + fi + rm t1 t2 + +fi + +echo "$ac_t""$gcc_cv_prog_cmp_skip" 1>&6 +do_compare="$gcc_cv_prog_cmp_skip" + + + +# Check for GMP +gmplibs= +gmpinc= +have_gmp=yes +# Specify a location for gmp +# Check whether --with-gmp-dir or --without-gmp-dir was given. +if test "${with_gmp_dir+set}" = set; then + withval="$with_gmp_dir" + : +fi + + +if test "x$with_gmp_dir" != x && test -f "$with_gmp_dir/gmp.h"; then + gmpinc="-I$with_gmp_dir" + if test -f "$with_gmp_dir/.libs/libgmp.a"; then + gmplibs="$with_gmp_dir/.libs/libgmp.a" + elif test -f "$with_gmp_dir/_libs/libgmp.a"; then + gmplibs="$with_gmp_dir/_libs/libgmp.a" + fi + # One of the later tests will catch the error if neither library is present. +fi + +# Check whether --with-gmp or --without-gmp was given. +if test "${with_gmp+set}" = set; then + withval="$with_gmp" + : +fi + + +if test "x$with_gmp" != x && test -d "$with_gmp"; then + gmplibs="-L$with_gmp/lib -lgmp" + gmpinc="-I$with_gmp/include" +fi + +# Use system gmp if nothing else specified +if test "x$gmplibs" = x; then + gmplibs="-lgmp" +fi + +saved_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $gmpinc" +# Check GMP actually works +echo $ac_n "checking for correct version of gmp.h""... $ac_c" 1>&6 +echo "configure:2319: checking for correct version of gmp.h" >&5 +cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then + rm -rf conftest* + echo "$ac_t""yes" 1>&6 +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + echo "$ac_t""no" 1>&6; have_gmp=no +fi +rm -f conftest* + +if test x"$have_gmp" = xyes; then + echo $ac_n "checking for mpf_init in -lgmp""... $ac_c" 1>&6 +echo "configure:2345: checking for mpf_init in -lgmp" >&5 + + saved_LIBS="$LIBS" + LIBS="$LIBS $gmplibs" + cat > conftest.$ac_ext < +int main() { +mpf_t n; mpf_init(n); +; return 0; } +EOF +if { (eval echo configure:2357: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + echo "$ac_t""yes" 1>&6 +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + echo "$ac_t""no" 1>&6; have_gmp=no +fi +rm -f conftest* + LIBS="$saved_LIBS" + CFLAGS="$saved_CFLAGS" +fi + + + # By default, C is the only stage 1 language. stage1_languages=c @@ -2245,6 +2442,7 @@ if test -d ${srcdir}/gcc; then lang_dirs= boot_language= build_by_default= + need_gmp= . ${lang_frag} # This is quite sensitive to the ordering of the case statement arms. case ,${enable_languages},:${language}:${have_gnat}:${build_by_default} in @@ -2273,7 +2471,13 @@ if test -d ${srcdir}/gcc; then add_this_lang=no ;; esac - case $add_this_lang in + + # Disable language that need GMP if it isn't available. + if test x"$need_gmp" = xyes && test x"$have_gmp" = xno; then + add_this_lang=no + fi + + case $add_this_lang in no) # Remove language-dependent dirs. eval noconfigdirs='"$noconfigdirs "'\"$target_libs $lang_dirs\" @@ -2574,6 +2778,9 @@ if test x${with_newlib} != xno && echo " extra_host_args="$extra_host_args --with-newlib" fi +if test x${with_libbanshee} = xyes && echo " ${configdirs} " | grep " libbanshee " >/dev/null 2>&1; then + extra_host_args="$extra_host_args --with-libbanshee" +fi # Default to using --with-stabs for certain targets. if test x${with_stabs} = x ; then @@ -2608,7 +2815,7 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:2612: checking for $ac_word" >&5 +echo "configure:2819: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_DEFAULT_YACC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2643,7 +2850,7 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:2647: checking for $ac_word" >&5 +echo "configure:2854: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_DEFAULT_M4'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2678,7 +2885,7 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:2682: checking for $ac_word" >&5 +echo "configure:2889: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_DEFAULT_LEX'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2828,31 +3035,28 @@ case "$enable_gdbtk" in ;; esac -# Create the 'maybe dependencies'. This uses a temporary file. +# Strip out unwanted targets. # While at that, we remove Makefiles if we were started for recursive # configuration, so that the top-level Makefile reconfigures them, # like we used to do when configure itself was recursive. -rm -f maybedep.tmp -echo '# maybedep.tmp' > maybedep.tmp -# Make-targets which may need maybe dependencies. -mts="configure all install check clean distclean dvi info install-info" -mts="${mts} installcheck mostlyclean maintainer-clean TAGS" +# Loop over modules. $extrasub must be used with care, limiting as +# much as possible the usage of range addresses. That's because autoconf +# splits the sed script to overcome limits in the number of commands, +# and relying on carefully-timed sed passes may turn out to be very hard +# to maintain later. In this particular case, you just have to be careful +# not to nest @if/@endif pairs, because configure will not warn you at all. -# Loop over modules and make-targets. for module in ${build_modules} ; do if test -z "${no_recursion}" \ && test -f ${build_subdir}/${module}/Makefile; then echo 1>&2 "*** removing ${build_subdir}/${module}/Makefile to force reconfigure" rm -f ${build_subdir}/${module}/Makefile fi - for mt in ${mts} ; do - case ${mt} in - install) ;; # No installing build modules. - *) echo "maybe-${mt}-build-${module}: ${mt}-build-${module}" >> maybedep.tmp ;; - esac - done + extrasub="$extrasub +/^@if build-$module\$/d +/^@endif build-$module\$/d" done for module in ${configdirs} ; do if test -z "${no_recursion}" \ @@ -2860,9 +3064,9 @@ for module in ${configdirs} ; do echo 1>&2 "*** removing ${module}/Makefile to force reconfigure" rm -f ${module}/Makefile fi - for mt in ${mts} ; do - echo "maybe-${mt}-${module}: ${mt}-${module}" >> maybedep.tmp - done + extrasub="$extrasub +/^@if $module\$/d +/^@endif $module\$/d" done for module in ${target_configdirs} ; do if test -z "${no_recursion}" \ @@ -2870,12 +3074,12 @@ for module in ${target_configdirs} ; do echo 1>&2 "*** removing ${target_subdir}/${module}/Makefile to force reconfigure" rm -f ${target_subdir}/${module}/Makefile fi - for mt in ${mts} ; do - echo "maybe-${mt}-target-${module}: ${mt}-target-${module}" >> maybedep.tmp - done + extrasub="$extrasub +/^@if target-$module\$/d +/^@endif target-$module\$/d" done -maybe_dependencies=maybedep.tmp - +extrasub="$extrasub +/^@if /,/^@endif /d" # Create the serialization dependencies. This uses a temporary file. @@ -3141,6 +3345,20 @@ else fi GCJ_FOR_TARGET=$GCJ_FOR_TARGET' $(FLAGS_FOR_TARGET)' +if test "x${GFORTRAN_FOR_TARGET+set}" = xset; then + : +elif test -d ${srcdir}/gcc; then + GFORTRAN_FOR_TARGET='$$r/gcc/gfortran -B$$r/gcc/' +elif test "$host" = "$target"; then + GFORTRAN_FOR_TARGET='gfortran' +else + GFORTRAN_FOR_TARGET=`echo gfortran | sed -e 's/x/x/' ${program_transform_name}` +fi +case $GFORTRAN_FOR_TARGET in +*' $(FLAGS_FOR_TARGET)') ;; +*) GFORTRAN_FOR_TARGET=$GFORTRAN_FOR_TARGET' $(FLAGS_FOR_TARGET)' ;; +esac + # Don't use libstdc++-v3's flags to configure/build itself. libstdcxx_flags='`test ! -f $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags || $(SHELL) $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags --build-includes` -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs' raw_libstdcxx_flags='-L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs' @@ -3182,6 +3400,7 @@ qqRAW_CXX_FOR_TARGET=`echo "$qRAW_CXX_FO # Wrap CC_FOR_TARGET and friends, for certain types of builds. CC_FOR_TARGET="\$(STAGE_CC_WRAPPER) ${CC_FOR_TARGET}" GCJ_FOR_TARGET="\$(STAGE_CC_WRAPPER) ${GCJ_FOR_TARGET}" +GFORTRAN_FOR_TARGET="\$(STAGE_CC_WRAPPER) ${GFORTRAN_FOR_TARGET}" CXX_FOR_TARGET="\$(STAGE_CC_WRAPPER) ${qCXX_FOR_TARGET}" RAW_CXX_FOR_TARGET="\$(STAGE_CC_WRAPPER) ${qRAW_CXX_FOR_TARGET}" CXX_FOR_TARGET_FOR_RECURSIVE_MAKE="\$(STAGE_CC_WRAPPER) ${qqCXX_FOR_TARGET}" @@ -3241,7 +3460,7 @@ test -n "$target_alias" && ncn_target_to # Extract the first word of "${ncn_tool_prefix}ar", so it can be a program name with args. set dummy ${ncn_tool_prefix}ar; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:3245: checking for $ac_word" >&5 +echo "configure:3464: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3274,7 +3493,7 @@ if test -z "$ac_cv_prog_AR" ; then # Extract the first word of "ar", so it can be a program name with args. set dummy ar; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:3278: checking for $ac_word" >&5 +echo "configure:3497: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_AR'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3313,7 +3532,7 @@ fi # Extract the first word of "${ncn_tool_prefix}as", so it can be a program name with args. set dummy ${ncn_tool_prefix}as; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:3317: checking for $ac_word" >&5 +echo "configure:3536: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_AS'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3346,7 +3565,7 @@ if test -z "$ac_cv_prog_AS" ; then # Extract the first word of "as", so it can be a program name with args. set dummy as; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:3350: checking for $ac_word" >&5 +echo "configure:3569: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_AS'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3385,7 +3604,7 @@ fi # Extract the first word of "${ncn_tool_prefix}dlltool", so it can be a program name with args. set dummy ${ncn_tool_prefix}dlltool; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:3389: checking for $ac_word" >&5 +echo "configure:3608: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_DLLTOOL'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3418,7 +3637,7 @@ if test -z "$ac_cv_prog_DLLTOOL" ; then # Extract the first word of "dlltool", so it can be a program name with args. set dummy dlltool; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:3422: checking for $ac_word" >&5 +echo "configure:3641: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_DLLTOOL'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3457,7 +3676,7 @@ fi # Extract the first word of "${ncn_tool_prefix}ld", so it can be a program name with args. set dummy ${ncn_tool_prefix}ld; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:3461: checking for $ac_word" >&5 +echo "configure:3680: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_LD'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3490,7 +3709,7 @@ if test -z "$ac_cv_prog_LD" ; then # Extract the first word of "ld", so it can be a program name with args. set dummy ld; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:3494: checking for $ac_word" >&5 +echo "configure:3713: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_LD'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3529,7 +3748,7 @@ fi # Extract the first word of "${ncn_tool_prefix}nm", so it can be a program name with args. set dummy ${ncn_tool_prefix}nm; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:3533: checking for $ac_word" >&5 +echo "configure:3752: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_NM'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3562,7 +3781,7 @@ if test -z "$ac_cv_prog_NM" ; then # Extract the first word of "nm", so it can be a program name with args. set dummy nm; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:3566: checking for $ac_word" >&5 +echo "configure:3785: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_NM'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3601,7 +3820,7 @@ fi # Extract the first word of "${ncn_tool_prefix}ranlib", so it can be a program name with args. set dummy ${ncn_tool_prefix}ranlib; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:3605: checking for $ac_word" >&5 +echo "configure:3824: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3634,7 +3853,7 @@ if test -z "$ac_cv_prog_RANLIB" ; then # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:3638: checking for $ac_word" >&5 +echo "configure:3857: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_RANLIB'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3673,7 +3892,7 @@ fi # Extract the first word of "${ncn_tool_prefix}windres", so it can be a program name with args. set dummy ${ncn_tool_prefix}windres; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:3677: checking for $ac_word" >&5 +echo "configure:3896: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_WINDRES'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3706,7 +3925,7 @@ if test -z "$ac_cv_prog_WINDRES" ; then # Extract the first word of "windres", so it can be a program name with args. set dummy windres; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:3710: checking for $ac_word" >&5 +echo "configure:3929: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_WINDRES'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3745,7 +3964,7 @@ fi # Extract the first word of "${ncn_tool_prefix}objcopy", so it can be a program name with args. set dummy ${ncn_tool_prefix}objcopy; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:3749: checking for $ac_word" >&5 +echo "configure:3968: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_OBJCOPY'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3778,7 +3997,7 @@ if test -z "$ac_cv_prog_OBJCOPY" ; then # Extract the first word of "objcopy", so it can be a program name with args. set dummy objcopy; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:3782: checking for $ac_word" >&5 +echo "configure:4001: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_OBJCOPY'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3817,7 +4036,7 @@ fi # Extract the first word of "${ncn_tool_prefix}objdump", so it can be a program name with args. set dummy ${ncn_tool_prefix}objdump; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:3821: checking for $ac_word" >&5 +echo "configure:4040: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_OBJDUMP'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3850,7 +4069,7 @@ if test -z "$ac_cv_prog_OBJDUMP" ; then # Extract the first word of "objdump", so it can be a program name with args. set dummy objdump; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:3854: checking for $ac_word" >&5 +echo "configure:4073: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_OBJDUMP'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3899,7 +4118,7 @@ fi # Extract the first word of "${ncn_target_tool_prefix}ar", so it can be a program name with args. set dummy ${ncn_target_tool_prefix}ar; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:3903: checking for $ac_word" >&5 +echo "configure:4122: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_AR_FOR_TARGET'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3932,7 +4151,7 @@ if test -z "$ac_cv_prog_CONFIGURED_AR_FO # Extract the first word of "ar", so it can be a program name with args. set dummy ar; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:3936: checking for $ac_word" >&5 +echo "configure:4155: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_CONFIGURED_AR_FOR_TARGET'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3971,7 +4190,7 @@ fi # Extract the first word of "${ncn_target_tool_prefix}as", so it can be a program name with args. set dummy ${ncn_target_tool_prefix}as; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:3975: checking for $ac_word" >&5 +echo "configure:4194: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_AS_FOR_TARGET'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4004,7 +4223,7 @@ if test -z "$ac_cv_prog_CONFIGURED_AS_FO # Extract the first word of "as", so it can be a program name with args. set dummy as; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:4008: checking for $ac_word" >&5 +echo "configure:4227: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_CONFIGURED_AS_FOR_TARGET'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4043,7 +4262,7 @@ fi # Extract the first word of "${ncn_target_tool_prefix}dlltool", so it can be a program name with args. set dummy ${ncn_target_tool_prefix}dlltool; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:4047: checking for $ac_word" >&5 +echo "configure:4266: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_DLLTOOL_FOR_TARGET'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4076,7 +4295,7 @@ if test -z "$ac_cv_prog_CONFIGURED_DLLTO # Extract the first word of "dlltool", so it can be a program name with args. set dummy dlltool; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:4080: checking for $ac_word" >&5 +echo "configure:4299: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_CONFIGURED_DLLTOOL_FOR_TARGET'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4115,7 +4334,7 @@ fi # Extract the first word of "${ncn_target_tool_prefix}ld", so it can be a program name with args. set dummy ${ncn_target_tool_prefix}ld; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:4119: checking for $ac_word" >&5 +echo "configure:4338: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_LD_FOR_TARGET'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4148,7 +4367,7 @@ if test -z "$ac_cv_prog_CONFIGURED_LD_FO # Extract the first word of "ld", so it can be a program name with args. set dummy ld; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:4152: checking for $ac_word" >&5 +echo "configure:4371: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_CONFIGURED_LD_FOR_TARGET'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4187,7 +4406,7 @@ fi # Extract the first word of "${ncn_target_tool_prefix}nm", so it can be a program name with args. set dummy ${ncn_target_tool_prefix}nm; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:4191: checking for $ac_word" >&5 +echo "configure:4410: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_NM_FOR_TARGET'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4220,7 +4439,7 @@ if test -z "$ac_cv_prog_CONFIGURED_NM_FO # Extract the first word of "nm", so it can be a program name with args. set dummy nm; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:4224: checking for $ac_word" >&5 +echo "configure:4443: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_CONFIGURED_NM_FOR_TARGET'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4259,7 +4478,7 @@ fi # Extract the first word of "${ncn_target_tool_prefix}ranlib", so it can be a program name with args. set dummy ${ncn_target_tool_prefix}ranlib; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:4263: checking for $ac_word" >&5 +echo "configure:4482: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_RANLIB_FOR_TARGET'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4292,7 +4511,7 @@ if test -z "$ac_cv_prog_CONFIGURED_RANLI # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:4296: checking for $ac_word" >&5 +echo "configure:4515: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_CONFIGURED_RANLIB_FOR_TARGET'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4331,7 +4550,7 @@ fi # Extract the first word of "${ncn_target_tool_prefix}windres", so it can be a program name with args. set dummy ${ncn_target_tool_prefix}windres; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:4335: checking for $ac_word" >&5 +echo "configure:4554: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CONFIGURED_WINDRES_FOR_TARGET'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4364,7 +4583,7 @@ if test -z "$ac_cv_prog_CONFIGURED_WINDR # Extract the first word of "windres", so it can be a program name with args. set dummy windres; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:4368: checking for $ac_word" >&5 +echo "configure:4587: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_ncn_cv_CONFIGURED_WINDRES_FOR_TARGET'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4409,6 +4628,7 @@ fi + # Fix up target tools. if test "x${build}" = "x${host}" ; then # In this case, the newly built tools can and should be used, @@ -4448,7 +4668,7 @@ RANLIB_FOR_TARGET=${RANLIB_FOR_TARGET}${ NM_FOR_TARGET=${NM_FOR_TARGET}${extra_nmflags_for_target} echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6 -echo "configure:4452: checking whether to enable maintainer-specific portions of Makefiles" >&5 +echo "configure:4672: checking whether to enable maintainer-specific portions of Makefiles" >&5 # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given. if test "${enable_maintainer_mode+set}" = set; then enableval="$enable_maintainer_mode" @@ -4491,6 +4711,42 @@ case $build in esac +# It makes debugging easier if we create as symlinks the stage directories +# gcc for stageN-gcc and stage-prev for stage(N-1). In case this is not +# possible, however, we can resort to mv. +echo $ac_n "checking if symbolic links between directories work""... $ac_c" 1>&6 +echo "configure:4719: checking if symbolic links between directories work" >&5 +if eval "test \"`echo '$''{'gcc_cv_prog_ln_s_dir'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + if test "${LN_S}" = "ln -s" \ + && mkdir confdir.s1 \ + && ln -s confdir.s1 confdir.s2 \ + && echo timestamp1 > confdir.s1/conftest.1 \ + && cmp confdir.s1/conftest.1 confdir.s2/conftest.1 \ + && echo timestamp2 > confdir.s2/conftest.2 \ + && cmp confdir.s1/conftest.2 confdir.s1/conftest.2 \ + && rm -f confdir.s2; then + gcc_cv_prog_ln_s_dir=yes +else + gcc_cv_prog_ln_s_dir=yes +fi +rm -rf confdir.s1 confdir.s2 +fi + +echo "$ac_t""$gcc_cv_prog_ln_s_dir" 1>&6 + +case ${gcc_cv_prog_ln_s_dir} in + yes) + CREATE_LINK_TO_DIR='ln -s $$1 $$2' + UNDO_LINK_TO_DIR='rm -f $$1' ;; + *) + CREATE_LINK_TO_DIR='mv $$1 $$2' + UNDO_LINK_TO_DIR='mv $$1 $$2' ;; +esac + + + # Enable -Werror in bootstrap stage2 and later. # Change the default to "no" on release branches. # Check whether --enable-werror or --disable-werror was given. @@ -4670,18 +4926,20 @@ s%@build_os@%$build_os%g s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g s%@INSTALL_SCRIPT@%$INSTALL_SCRIPT%g s%@INSTALL_DATA@%$INSTALL_DATA%g +s%@LN_S@%$LN_S%g s%@TOPLEVEL_CONFIGURE_ARGUMENTS@%$TOPLEVEL_CONFIGURE_ARGUMENTS%g s%@build_subdir@%$build_subdir%g s%@host_subdir@%$host_subdir%g s%@target_subdir@%$target_subdir%g s%@CC@%$CC%g s%@GNATBIND@%$GNATBIND%g +s%@do_compare@%$do_compare%g +s%@gmplibs@%$gmplibs%g +s%@gmpinc@%$gmpinc%g s%@stage1_languages@%$stage1_languages%g s%@DEFAULT_YACC@%$DEFAULT_YACC%g s%@DEFAULT_M4@%$DEFAULT_M4%g s%@DEFAULT_LEX@%$DEFAULT_LEX%g -/@maybe_dependencies@/r $maybe_dependencies -s%@maybe_dependencies@%%g /@serialization_dependencies@/r $serialization_dependencies s%@serialization_dependencies@%%g /@host_makefile_frag@/r $host_makefile_frag @@ -4754,6 +5012,7 @@ s%@GCC_FOR_TARGET@%$GCC_FOR_TARGET%g s%@FLAGS_FOR_TARGET@%$FLAGS_FOR_TARGET%g s%@CC_FOR_TARGET@%$CC_FOR_TARGET%g s%@GCJ_FOR_TARGET@%$GCJ_FOR_TARGET%g +s%@GFORTRAN_FOR_TARGET@%$GFORTRAN_FOR_TARGET%g s%@CXX_FOR_TARGET@%$CXX_FOR_TARGET%g s%@RAW_CXX_FOR_TARGET@%$RAW_CXX_FOR_TARGET%g s%@CXX_FOR_TARGET_FOR_RECURSIVE_MAKE@%$CXX_FOR_TARGET_FOR_RECURSIVE_MAKE%g @@ -4769,6 +5028,8 @@ s%@MAINTAINER_MODE_TRUE@%$MAINTAINER_MOD s%@MAINTAINER_MODE_FALSE@%$MAINTAINER_MODE_FALSE%g s%@MAINT@%$MAINT%g s%@stage1_cflags@%$stage1_cflags%g +s%@CREATE_LINK_TO_DIR@%$CREATE_LINK_TO_DIR%g +s%@UNDO_LINK_TO_DIR@%$UNDO_LINK_TO_DIR%g s%@stage2_werror_flag@%$stage2_werror_flag%g CEOF diff -uprN binutils-2.15.90.0.3/configure.in binutils-2.15.91.0.1/configure.in --- binutils-2.15.90.0.3/configure.in 2004-04-12 12:56:33.000000000 -0700 +++ binutils-2.15.91.0.1/configure.in 2004-05-27 11:26:01.707550024 -0700 @@ -25,6 +25,7 @@ AC_ARG_PROGRAM # Get 'install' or 'install-sh' and its variants. AC_PROG_INSTALL +AC_PROG_LN_S sinclude(config/acx.m4) @@ -126,7 +127,7 @@ fi # these libraries are used by various programs built for the host environment # -host_libs="intl mmalloc libiberty opcodes bfd readline tcl tk itcl tix libgui zlib" +host_libs="intl mmalloc libiberty opcodes bfd readline tcl tk itcl tix libgui zlib libbanshee libcpp" # these tools are built for the host environment # Note, the powerpc-eabi build depends on sim occurring before gdb in order to @@ -149,7 +150,8 @@ target_libraries="target-libiberty \ target-libgloss \ target-newlib \ target-libstdc++-v3 \ - target-libf2c \ + target-libmudflap \ + target-libgfortran \ ${libgcj} \ target-libobjc \ target-libada" @@ -307,6 +309,18 @@ case "${host}" in ;; esac +AC_ARG_WITH(libbanshee, +[ --without-libbanshee Don't build with libbanshee]) +case ${with_libbanshee} in + no) + noconfigdirs="$noconfigdirs libbanshee" ;; + yes|"") + with_libbanshee=yes + ;; + *) + AC_MSG_ERROR([--with-libbanshee can only be empty, "yes" or "no" (empty defaults to "yes".]) +esac + AC_ARG_ENABLE(libada, [ --enable-libada Builds libada directory], ENABLE_LIBADA=$enableval, @@ -331,6 +345,18 @@ no) ;; esac + +# Allow --disable-libmudflap to exclude target-libmudflap +case $enable_libmudflap in +yes | "") + # By default it's enabled + ;; +no) + noconfigdirs="$noconfigdirs target-libmudflap" + ;; +esac + + case "${target}" in *-*-chorusos) noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}" @@ -346,9 +372,25 @@ case "${target}" in *-*-freebsd[[12]] | *-*-freebsd[[12]].* | *-*-freebsd*aout*) noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}" ;; + *-*-freebsd* | *-*-kfreebsd*-gnu) + noconfigdirs="$noconfigdirs target-newlib target-libgloss" + if test "x$with_gmp" = x && test "x$with_gmp_dir" = x \ + && test -f /usr/local/include/gmp.h; then + with_gmp=/usr/local + fi + + # Skip some stuff that's unsupported on some FreeBSD configurations. + case "${target}" in + i*86-*-*) ;; + alpha*-*-*) ;; + *) + noconfigdirs="$noconfigdirs ${libgcj}" + ;; + esac + ;; *-*-kaos*) # Remove unsupported stuff on all kaOS configurations. - skipdirs="target-libiberty ${libgcj} target-libstdc++-v3 target-libf2c target-librx" + skipdirs="target-libiberty ${libgcj} target-libstdc++-v3 target-librx" skipdirs="$skipdirs target-libobjc target-examples target-groff target-gperf" skipdirs="$skipdirs zlib fastjar target-libjava target-boehm-gc target-zlib" noconfigdirs="$noconfigdirs target-libgloss" @@ -371,12 +413,6 @@ case "${target}" in ;; *-*-rtems*) noconfigdirs="$noconfigdirs target-libgloss ${libgcj}" - case ${target} in - h8300*-*-* | h8500-*-*) - noconfigdirs="$noconfigdirs target-libf2c" - ;; - *) ;; - esac ;; *-*-uclinux*) noconfigdirs="$noconfigdirs target-newlib target-libgloss target-rda ${libgcj}" @@ -397,9 +433,6 @@ case "${target}" in # newlib is not 64 bit ready noconfigdirs="$noconfigdirs target-newlib target-libgloss" ;; - alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu) - noconfigdirs="$noconfigdirs target-newlib target-libgloss" - ;; alpha*-*-*) # newlib is not 64 bit ready noconfigdirs="$noconfigdirs target-newlib target-libgloss ${libgcj}" @@ -480,10 +513,10 @@ case "${target}" in noconfigdirs="$noconfigdirs ${libgcj}" ;; h8300*-*-*) - noconfigdirs="$noconfigdirs target-libgloss ${libgcj} target-libf2c" + noconfigdirs="$noconfigdirs target-libgloss ${libgcj}" ;; h8500-*-*) - noconfigdirs="$noconfigdirs target-libstdc++-v3 target-libgloss ${libgcj} target-libf2c" + noconfigdirs="$noconfigdirs target-libstdc++-v3 target-libgloss ${libgcj}" ;; hppa*64*-*-linux* | parisc*64*-*-linux*) # In this case, it's because the hppa64-linux target is for @@ -518,9 +551,6 @@ case "${target}" in i[[3456789]]86-*-coff | i[[3456789]]86-*-elf) noconfigdirs="$noconfigdirs ${libgcj}" ;; - i[[3456789]]86-*-freebsd* | i[[3456789]]86-*-kfreebsd*-gnu) - noconfigdirs="$noconfigdirs target-newlib target-libgloss" - ;; i[[3456789]]86-*-linux*) # The GCC port for glibc1 has no MD_FALLBACK_FRAME_STATE_FOR, so let's # not build java stuff by default. @@ -643,8 +673,7 @@ case "${target}" in noconfigdirs="$noconfigdirs ld binutils gprof target-libgloss ${libgcj}" ;; mips*-*-irix5*) - # The GNU linker does not support shared libraries. - noconfigdirs="$noconfigdirs ld gprof target-libgloss ${libgcj}" + noconfigdirs="$noconfigdirs gprof target-libgloss ${libgcj}" ;; mips*-*-irix6*) # Linking libjava exceeds command-line length limits on at least @@ -1069,6 +1098,61 @@ EOF fi ACX_PROG_GNAT +ACX_PROG_CMP_IGNORE_INITIAL + +# Check for GMP +gmplibs= +gmpinc= +have_gmp=yes +# Specify a location for gmp +AC_ARG_WITH(gmp-dir, [ --with-gmp-dir=PATH Specify source directory for GMP library]) + +if test "x$with_gmp_dir" != x && test -f "$with_gmp_dir/gmp.h"; then + gmpinc="-I$with_gmp_dir" + if test -f "$with_gmp_dir/.libs/libgmp.a"; then + gmplibs="$with_gmp_dir/.libs/libgmp.a" + elif test -f "$with_gmp_dir/_libs/libgmp.a"; then + gmplibs="$with_gmp_dir/_libs/libgmp.a" + fi + # One of the later tests will catch the error if neither library is present. +fi + +AC_ARG_WITH(gmp, [ --with-gmp=PATH Specify directory for installed GMP library]) + +if test "x$with_gmp" != x && test -d "$with_gmp"; then + gmplibs="-L$with_gmp/lib -lgmp" + gmpinc="-I$with_gmp/include" +fi + +# Use system gmp if nothing else specified +if test "x$gmplibs" = x; then + gmplibs="-lgmp" +fi + +saved_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $gmpinc" +# Check GMP actually works +AC_MSG_CHECKING([for correct version of gmp.h]) +AC_TRY_COMPILE([#include "gmp.h"],[ +#if __GNU_MP_VERSION < 3 +choke me +#endif +], [AC_MSG_RESULT([yes])], + [AC_MSG_RESULT([no]); have_gmp=no]) + +if test x"$have_gmp" = xyes; then + AC_MSG_CHECKING([for mpf_init in -lgmp]) + + saved_LIBS="$LIBS" + LIBS="$LIBS $gmplibs" + AC_TRY_LINK([#include ], [mpf_t n; mpf_init(n);], + [AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no]); have_gmp=no]) + LIBS="$saved_LIBS" + CFLAGS="$saved_CFLAGS" +fi + +AC_SUBST(gmplibs) +AC_SUBST(gmpinc) # By default, C is the only stage 1 language. stage1_languages=c @@ -1142,6 +1226,7 @@ if test -d ${srcdir}/gcc; then lang_dirs= boot_language= build_by_default= + need_gmp= . ${lang_frag} # This is quite sensitive to the ordering of the case statement arms. case ,${enable_languages},:${language}:${have_gnat}:${build_by_default} in @@ -1170,7 +1255,13 @@ if test -d ${srcdir}/gcc; then add_this_lang=no ;; esac - case $add_this_lang in + + # Disable language that need GMP if it isn't available. + if test x"$need_gmp" = xyes && test x"$have_gmp" = xno; then + add_this_lang=no + fi + + case $add_this_lang in no) # Remove language-dependent dirs. eval noconfigdirs='"$noconfigdirs "'\"$target_libs $lang_dirs\" @@ -1471,6 +1562,9 @@ if test x${with_newlib} != xno && echo " extra_host_args="$extra_host_args --with-newlib" fi +if test x${with_libbanshee} = xyes && echo " ${configdirs} " | grep " libbanshee " >/dev/null 2>&1; then + extra_host_args="$extra_host_args --with-libbanshee" +fi # Default to using --with-stabs for certain targets. if test x${with_stabs} = x ; then @@ -1623,31 +1717,28 @@ case "$enable_gdbtk" in ;; esac -# Create the 'maybe dependencies'. This uses a temporary file. +# Strip out unwanted targets. # While at that, we remove Makefiles if we were started for recursive # configuration, so that the top-level Makefile reconfigures them, # like we used to do when configure itself was recursive. -rm -f maybedep.tmp -echo '# maybedep.tmp' > maybedep.tmp -# Make-targets which may need maybe dependencies. -mts="configure all install check clean distclean dvi info install-info" -mts="${mts} installcheck mostlyclean maintainer-clean TAGS" +# Loop over modules. $extrasub must be used with care, limiting as +# much as possible the usage of range addresses. That's because autoconf +# splits the sed script to overcome limits in the number of commands, +# and relying on carefully-timed sed passes may turn out to be very hard +# to maintain later. In this particular case, you just have to be careful +# not to nest @if/@endif pairs, because configure will not warn you at all. -# Loop over modules and make-targets. for module in ${build_modules} ; do if test -z "${no_recursion}" \ && test -f ${build_subdir}/${module}/Makefile; then echo 1>&2 "*** removing ${build_subdir}/${module}/Makefile to force reconfigure" rm -f ${build_subdir}/${module}/Makefile fi - for mt in ${mts} ; do - case ${mt} in - install) ;; # No installing build modules. - *) echo "maybe-${mt}-build-${module}: ${mt}-build-${module}" >> maybedep.tmp ;; - esac - done + extrasub="$extrasub +/^@if build-$module\$/d +/^@endif build-$module\$/d" done for module in ${configdirs} ; do if test -z "${no_recursion}" \ @@ -1655,9 +1746,9 @@ for module in ${configdirs} ; do echo 1>&2 "*** removing ${module}/Makefile to force reconfigure" rm -f ${module}/Makefile fi - for mt in ${mts} ; do - echo "maybe-${mt}-${module}: ${mt}-${module}" >> maybedep.tmp - done + extrasub="$extrasub +/^@if $module\$/d +/^@endif $module\$/d" done for module in ${target_configdirs} ; do if test -z "${no_recursion}" \ @@ -1665,12 +1756,12 @@ for module in ${target_configdirs} ; do echo 1>&2 "*** removing ${target_subdir}/${module}/Makefile to force reconfigure" rm -f ${target_subdir}/${module}/Makefile fi - for mt in ${mts} ; do - echo "maybe-${mt}-target-${module}: ${mt}-target-${module}" >> maybedep.tmp - done + extrasub="$extrasub +/^@if target-$module\$/d +/^@endif target-$module\$/d" done -maybe_dependencies=maybedep.tmp -AC_SUBST_FILE(maybe_dependencies) +extrasub="$extrasub +/^@if /,/^@endif /d" # Create the serialization dependencies. This uses a temporary file. @@ -1935,6 +2026,20 @@ else fi GCJ_FOR_TARGET=$GCJ_FOR_TARGET' $(FLAGS_FOR_TARGET)' +if test "x${GFORTRAN_FOR_TARGET+set}" = xset; then + : +elif test -d ${srcdir}/gcc; then + GFORTRAN_FOR_TARGET='$$r/gcc/gfortran -B$$r/gcc/' +elif test "$host" = "$target"; then + GFORTRAN_FOR_TARGET='gfortran' +else + GFORTRAN_FOR_TARGET=`echo gfortran | sed -e 's/x/x/' ${program_transform_name}` +fi +case $GFORTRAN_FOR_TARGET in +*' $(FLAGS_FOR_TARGET)') ;; +*) GFORTRAN_FOR_TARGET=$GFORTRAN_FOR_TARGET' $(FLAGS_FOR_TARGET)' ;; +esac + # Don't use libstdc++-v3's flags to configure/build itself. libstdcxx_flags='`test ! -f $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags || $(SHELL) $$r/$(TARGET_SUBDIR)/libstdc++-v3/scripts/testsuite_flags --build-includes` -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs' raw_libstdcxx_flags='-L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src -L$$r/$(TARGET_SUBDIR)/libstdc++-v3/src/.libs' @@ -1976,6 +2081,7 @@ qqRAW_CXX_FOR_TARGET=`echo "$qRAW_CXX_FO # Wrap CC_FOR_TARGET and friends, for certain types of builds. CC_FOR_TARGET="\$(STAGE_CC_WRAPPER) ${CC_FOR_TARGET}" GCJ_FOR_TARGET="\$(STAGE_CC_WRAPPER) ${GCJ_FOR_TARGET}" +GFORTRAN_FOR_TARGET="\$(STAGE_CC_WRAPPER) ${GFORTRAN_FOR_TARGET}" CXX_FOR_TARGET="\$(STAGE_CC_WRAPPER) ${qCXX_FOR_TARGET}" RAW_CXX_FOR_TARGET="\$(STAGE_CC_WRAPPER) ${qRAW_CXX_FOR_TARGET}" CXX_FOR_TARGET_FOR_RECURSIVE_MAKE="\$(STAGE_CC_WRAPPER) ${qqCXX_FOR_TARGET}" @@ -2057,6 +2163,7 @@ AC_SUBST(GCC_FOR_TARGET) AC_SUBST(FLAGS_FOR_TARGET) AC_SUBST(CC_FOR_TARGET) AC_SUBST(GCJ_FOR_TARGET) +AC_SUBST(GFORTRAN_FOR_TARGET) AC_SUBST(CXX_FOR_TARGET) AC_SUBST(RAW_CXX_FOR_TARGET) AC_SUBST(CXX_FOR_TARGET_FOR_RECURSIVE_MAKE) @@ -2141,6 +2248,36 @@ case $build in esac AC_SUBST(stage1_cflags) +# It makes debugging easier if we create as symlinks the stage directories +# gcc for stageN-gcc and stage-prev for stage(N-1). In case this is not +# possible, however, we can resort to mv. +AC_CACHE_CHECK([if symbolic links between directories work], +[gcc_cv_prog_ln_s_dir], +[if test "${LN_S}" = "ln -s" \ + && mkdir confdir.s1 \ + && ln -s confdir.s1 confdir.s2 \ + && echo timestamp1 > confdir.s1/conftest.1 \ + && cmp confdir.s1/conftest.1 confdir.s2/conftest.1 \ + && echo timestamp2 > confdir.s2/conftest.2 \ + && cmp confdir.s1/conftest.2 confdir.s1/conftest.2 \ + && rm -f confdir.s2; then + gcc_cv_prog_ln_s_dir=yes +else + gcc_cv_prog_ln_s_dir=yes +fi +rm -rf confdir.s1 confdir.s2]) + +case ${gcc_cv_prog_ln_s_dir} in + yes) + CREATE_LINK_TO_DIR='ln -s $$1 $$2' + UNDO_LINK_TO_DIR='rm -f $$1' ;; + *) + CREATE_LINK_TO_DIR='mv $$1 $$2' + UNDO_LINK_TO_DIR='mv $$1 $$2' ;; +esac +AC_SUBST(CREATE_LINK_TO_DIR) +AC_SUBST(UNDO_LINK_TO_DIR) + # Enable -Werror in bootstrap stage2 and later. # Change the default to "no" on release branches. AC_ARG_ENABLE(werror, diff -uprN binutils-2.15.90.0.3/cpu/ChangeLog binutils-2.15.91.0.1/cpu/ChangeLog --- binutils-2.15.90.0.3/cpu/ChangeLog 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/cpu/ChangeLog 2004-05-27 11:26:03.069373915 -0700 @@ -1,3 +1,7 @@ +2004-05-15 Nick Clifton + + * iq2000.opc (iq2000_cgen_insn_supported): Make 'insn' argument const. + 2004-03-30 Kazuhiro Inaoka * m32r.opc (parse_hi16): Fixed shigh(0xffff8000) bug. diff -uprN binutils-2.15.90.0.3/cpu/iq2000.opc binutils-2.15.91.0.1/cpu/iq2000.opc --- binutils-2.15.90.0.3/cpu/iq2000.opc 2004-01-14 13:07:45.000000000 -0800 +++ binutils-2.15.91.0.1/cpu/iq2000.opc 2004-05-27 11:26:03.078372751 -0700 @@ -52,7 +52,7 @@ instructions have same mnemonics but different functionality. */ #define CGEN_VALIDATE_INSN_SUPPORTED -extern int iq2000_cgen_insn_supported (CGEN_CPU_DESC cd, CGEN_INSN *insn); +extern int iq2000_cgen_insn_supported (CGEN_CPU_DESC cd, const CGEN_INSN *insn); /* -- asm.c */ static const char * parse_mimm PARAMS ((CGEN_CPU_DESC, const char **, int, long *)); @@ -60,11 +60,11 @@ static const char * parse_imm PARAMS (( static const char * parse_hi16 PARAMS ((CGEN_CPU_DESC, const char **, int, unsigned long *)); static const char * parse_lo16 PARAMS ((CGEN_CPU_DESC, const char **, int, long *)); -/* Special check to ensure that instruction exists for given machine */ +/* Special check to ensure that instruction exists for given machine. */ int iq2000_cgen_insn_supported (cd, insn) CGEN_CPU_DESC cd; - CGEN_INSN *insn; + const CGEN_INSN *insn; { int machs = cd->machs; diff -uprN binutils-2.15.90.0.3/gas/ChangeLog binutils-2.15.91.0.1/gas/ChangeLog --- binutils-2.15.90.0.3/gas/ChangeLog 2004-04-14 21:26:05.000000000 -0700 +++ binutils-2.15.91.0.1/gas/ChangeLog 2004-05-27 11:26:03.079372622 -0700 @@ -1,3 +1,327 @@ +2004-05-27 Peter Barada + + * config/tc-m68k.c (md_begin): Sort the opcode table into + alphabetical order. + (m68k_compare_opcode): New function to do the sorting. + +2004-05-24 Peter Barada + + * config/m68k-parse.y(operand): Allow for MAC/EMAC mask + addressing on MIT style operands. + * config/m68k-parse.y(yylex): Allow '-&' for predecrement + w/mask addressing. + * config/tc-m68k.c(install_operand): Comment 'G' and 'H' type + operands. + +2004-05-23 Alan Modra + + * expr.c (operand, operator): Don't reject '++' and '--'. + +2004-05-20 Richard Sandiford + + * config/tc-mips.c (append_insn): Use ISA-encoded addresses in MIPS16 + dwarf tables. + +2004-05-17 Adam Nemet + + * configure.in: Add ppc-*-lynxos*. Update i386-*-lynxos* to ELF. + * configure: Regenerate. + +2004-05-13 Paul Brook + + * dw2gencfi.c (output_cie): Handle dwarf3 format CIE entries. + +2004-05-13 Joel Sherrill + + * configure.in (or32-*-rtems*): Switch to elf. + * configure: Regenerate. + +2004-05-13 Nick Clifton + + * po/fr.po: Updated French translation. + +2004-05-11 Nick Clifton + + * doc/as.texinfo (Section): Document G and T flags to .section + directive. Document the extra arguments that the G flag + requires. Document the #tls flag. + +2004-05-11 H.J. Lu + + * subsegs.c (section_symbol): Create a new section symbol if + the existing one doesn't match. + * symbols.c (symbol_set_bfdsym): Don't reset BFD section symbol. + +2004-05-07 Richard Sandiford + + * config/tc-mips.c (append_insn, mips_emit_delays): Extend -mfix-vr4120 + to cope with VR4181A errata MD(1) and MD(4). + +2004-05-07 Brian Ford + + * NEWS: Mention .secrel32 for pe[i]-i386. + +2004-05-07 Alexandre Oliva + + * config/tc-frv.h (MAX_MEM_FOR_RS_ALIGN_CODE): New. + (HANDLE_ALIGN): New. + +2004-05-06 Daniel Jacobowitz + + * Makefile.am (DIST_SUBDIRS): Define. + * aclocal.m4: Regenerate with automake 1.8.4. + * Makefile.in: Likewise. + * doc/Makefile.in: Likewise. + +2004-05-06 David Mosberger-Tang + + * config/tc-ia64.c (dot_serialize): Declare. + (dot_serialize): New function. + (md_pseudo_table): Add ".serialize.data" and + ".serialize.instruction" directives. + +2004-05-06 Nick Clifton + + * messages (as_internal_value_out_of_range): Print a message about + a value being out of range. Be consistent about whether the + values are printed in decimal or hexadecimal. + (as_warn_value_out_of_range): Generate a warning message about an + out of range value. + (as_bad_value_out_of_range): Generate an error message about an + out of range value. + * as.h: Prototype the new functions. + * config/tc-alpha.c (insert_operand): Use new function. + * config/tc-arc.c (arc_insert_operand): Likewise. + * config/tc-mn10200.c (mn10200_insert_operand): Likewise. + * config/tc-mn10300.c (mn10300_insert_operand): Likewise. + * config/tc-ppc.c (ppc_insert_operand): Likewise. + * config/tc-s390.c (s390_insert_operand): Likewise. + * config/tc-v850.c (v850_insert_operand): Likewise. + +2004-05-05 Alexandre Oliva + + * configure.in: Set em=linux for frv-*-*linux*. + * configure: Rebuilt. + * config/tc-frv.h (TARGET_FORMAT): Use elf32-frvfdpic if... + (frv_md_fdpic_enabled): New. + * config/tc-frv.c (frv_md_fdpic_enabled): New. + (DEFAULT_FDPIC): New. + (frv_flags): Use DEFAULT_FDPIC. + (frv_pic_flag): Likewise. + (OPTION_NOPIC): New. + (md_longopts): Add -mnopic. + (md_parse_option): Handle it. + (md_show_usage): Add -mfdpic and -mnopic. + +2004-05-05 Peter Barada + + * config/tc-m68k.c: Add find_cf_chip to print list of valid + chips for invalid coldfire instructions, rename selectors + for ColdFire sub-variants, add 521x,5249,547x,548x and aliases, + add current_chip to track which chip is referred to(including save/restore), + use current_chip to select control registers, not current_arch. + (md_show_usage): Add new chips. + * doc/c-m68k.texi: Document new command line switches. + +2004-05-05 Jakub Jelinek + + * tc-s390.h (md_do_align, HANDLE_ALIGN): Remove. + (NOP_OPCODE): Define. + (s390_align_code): Remove prototype. + * tc-s390.c (s390_align_code): Remove. + +2004-05-04 H.J. Lu + + * config/tc-ia64.c (make_unw_section_name): Removed. + (start_unwind_section): New function. + (generate_unwind_image): Take const segT instead of const + char *. + (dot_handlerdata): Adjusted. + (dot_endp): Likewise. + +2004-05-02 H.J. Lu + + * config/obj-elf.c (obj_elf_change_section): Allow the + ".note.GNU-stack" section has SHF_EXECINSTR. + +2004-05-02 H.J. Lu + + * config/obj-elf.c (get_section): Return bfd_boolean. + (obj_elf_change_section): Call bfd_get_section_by_name_if + instead of bfd_map_over_sections. + +2004-04-30 H.J. Lu + + * config/obj-elf.c (get_section): New function. + (obj_elf_change_section): Support multiple sections with same + name. + +2004-04-30 Nick Clifton + + * config/tc-arm.c (create_register_alias): Fix typo checking for + case sensitive register aliases. + (co_proc_number): Use error message string in all_reg_maps[] + array. + (cp_reg_required_here): Likewise. + (fp_reg_required_here): Likewise. + +2004-04-29 Brian Ford + + * dwarf2dbg.c (dwarf2_finish): Add SEC_DEBUGGING to section flags. + +2004-04-28 Chris Demetriou + + * config/tc-mips.c (HAVE_32BIT_ADDRESSES, append_insn, macro_build) + (load_address, macro, mips_ip, md_parse_option) + (mips_force_relocation, mips_validate_fix, md_apply_fix3) + (s_change_sec, pic_need_relax, tc_gen_reloc): Remove all + embedded-PIC handling, and update comments. + (SWITCH_TABLE): Remove. + * config/tc-mips.h (DIFF_EXPR_OK): Delete. + (enum mips_pic_level): Remove EMBEDDED_PIC. + (EXTERN_FORCE_RELOC): Remove embedded-PIC handling. + (TC_FORCE_RELOCATION): Update comment. + * ecoff.c (ecoff_build_lineno): Add comment about some code that + might be safe to remove now that MIPS embedded-PIC is gone. + +2004-04-28 John David Anglin + + * config/obj-som.c (obj_som_init_stab_section): Add new arguments in + call to obj_set_subsection_attributes. + (obj_som_init_stab_section): Likewise. + * config/tc-hppa.c (default_subspace_dict): Add comdat field. + (pa_def_subspaces): Provide comdat default. + (pa_subspace): Handle new "comdat" parameter. Set SEC_LINK_ONCE and + not SEC_IS_COMMON if section is comdat, common or dup_common. Update + calls to create_new_subspace and update_subspace to pass comdat flag. + (create_new_subspace, update_subspace): Add new comdat argument. Use + it in calls to obj_set_subsection_attributes. + * doc/c-hppa.texi (.subspa, .nsubspa): Document new comdat parameter + and use of comdat, common and dup_comm parameters. + +2004-04-26 H.J. Lu + + * config/obj-elf.c (obj_elf_change_section): Check if the old + group name is NULL before comparison. + +2004-04-23 Chris Demetriou + + * config/tc-mips.h (mips_dwarf2_addr_size): Prototype. + +2004-04-23 Thiemo Seufer + + * config/tc-mips.c (s_mipsset): Set default CPU type for .set mipsN. + +2004-04-23 Chris Demetriou + + * config/tc-mips.c (md_longopts): Remove -membedded-pic option. + (OPTION_MEMBEDDED_PIC): Remove. + (OPTION_TRAP, OPTION_BREAK, OPTION_EB, OPTION_EL) + (OPTION_FP32, OPTION_GP32, OPTION_CONSTRUCT_FLOATS) + (OPTION_NO_CONSTRUCT_FLOATS, OPTIONS_FP64, OPTION_GP64) + (OPTION_RELAX_BRANCH, OPTION_NO_RELAX_BRANCH) + (OPTION_ELF_BASE): Renumber. + (md_parse_option): Remove OPTION_MEMBEDDED_PIC handling. + (md_show_usage): Remove mention of -membedded-pic. + * doc/as.texinfo: Remove mention of -membedded-pic. + +2004-04-23 Thiemo Seufer + + * config/tc-mips.h (USE_GLOBAL_POINTER_OPT): Remove. + * config/tc-mips.c (RDATA_SECTION_NAME, mips_target_format): Remove + a.out support. + (md_begin, mips_ip, md_parse_option, s_change_sec, s_option, + s_abicalls, nopic_need_relax, tc_gen_reloc): Remove uses of + USE_GLOBAL_POINTER_OPT. + +2004-04-22 Thiemo Seufer + + * config/tc-mips.c (macro): One more use of load_delay_nop. + +2004-04-22 Atsushi Nemoto + + * config/tc-mips.c (load_delay_nop): New function. + (load_address, macro): Use load_delay_nop() to build a nop + which can be omitted with gpr_interlocks. + +2004-04-22 Thiemo Seufer + + * config/tc-mips.c (hilo_interlocks, gpr_interlocks, + cop_interlocks): Remove superfluous CPU entries. + +2004-04-22 Paul Brook + + * config/tc-arm.c (mav_parse_offset): Value must be multiple of 4. + +2004-04-22 Peter Barada + + * NEWS: Added support for EMAC instructions and MAC/EMAC + Motorola syntax. + * config/m68k-parse.h: Add ACC[123], ACCEXT{01,23}, MAC/EMAC + scale factor tokens, trailing_ampersand to mark mask addressing + for MAC/EMAC instructions. + * config/m68k-parse.y: Add options_ampersand clause, '<<', + '>>'. + (yylex): Handle '>', '<', and '&' following '+'. + * config/tc-m68k.c: Set mcfmac/mcfemac on appropriate ColdFire + architectures in archs[]. + (m68k-ip): Add '4', 'e', 'g', 'i', cases to handle mask addressing + for MAC/EMAC instructions, ACC[0123], ACCEXT{01,23}, and '<<'/'>>' + respectively. + (m68k_ip): Handle trailing '&' on MAC/EMAC insns. + (install_operand): Fix 'n' case, Add 'F', 'f', 'G', 'H', 'I', ']' + cases. + Add EMAC operands to init_table[]. + +2004-04-22 Bruno De Bus + + * config/tc-arm.h (enum mstate): Move here, add MAP_UNDEFINED + state. + (TC_SEGMENT_INFO_TYPE): Define to enum mstate. + * config/tc-arm.c (enum mstate): Delete from here. + (mapping_state): Remove the static mapstate variable and instead + store the state in the segment. This allows a per-section mapping + state. Handle and ignore MAP_UNDEFINED states. + (arm_elf_change_section): Get the current mapping state from the + new section. + (s_ltorg): Set the mapping state to MAP_DATA. + (arm_cleanup): Use arm_elf_change_section to get the mapping state + for each pool as it is emitted. + +2004-04-22 Nick Clifton + + * config/tc-arm.h: Formatting tidy ups. + +2004-04-20 Chris Demetriou + + * NEWS: Note that MIPS -membedded-pic option is deprecated. + +2004-04-20 DJ Delorie + + * config/tc-i386.h [TE_PE] (TC_CONS_FIX_NEW): Define. + * config/tc-i386.c (md_pseudo_table) [TE_PE]: Add "secrel32". + [TE_PE] (O_secrel): Define. + [TE_PE] (x86_pe_cons_fix_new): New. + [TE_PE] (pe_directive_secrel): Likewise. + (tc_gen_reloc) [TE_PE]: Support BFD_RELOC_32_SECREL. + +2004-04-19 Eric Christopher + + * config/tc-mips.c (mips_dwarf2_addr_size): Revert part + of previous patch for fix in gcc. + +2004-04-19 Jakub Jelinek + + * config/tc-xtensa.c (xg_assembler_literal): Fix a typo. + +2004-04-19 Nathan Sidwell + + * read.c (do_align): Call md_flush_pending_output, if defined. + +2004-04-16 Alan Modra + + * expr.c (operand): Correct checks for ++ and --. + 2004-04-14 H.J. Lu * config/tc-generic.c: Add some comments. diff -uprN binutils-2.15.90.0.3/gas/Makefile.am binutils-2.15.91.0.1/gas/Makefile.am --- binutils-2.15.90.0.3/gas/Makefile.am 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/gas/Makefile.am 2004-05-27 11:26:03.100369906 -0700 @@ -6,6 +6,9 @@ INTLLIBS = @INTLLIBS@ AUTOMAKE_OPTIONS = 1.8 cygnus dejagnu SUBDIRS = doc po +# Automake should figure this out on its own. It doesn't, because +# of the "cygnus" option. But distclean still wants it. +DIST_SUBDIRS = $(SUBDIRS) tooldir = $(exec_prefix)/$(target_alias) diff -uprN binutils-2.15.90.0.3/gas/Makefile.in binutils-2.15.91.0.1/gas/Makefile.in --- binutils-2.15.90.0.3/gas/Makefile.in 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/gas/Makefile.in 2004-05-27 11:26:03.111368484 -0700 @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.8.2 from Makefile.am. +# Makefile.in generated by automake 1.8.4 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -244,6 +244,9 @@ target_vendor = @target_vendor@ te_file = @te_file@ AUTOMAKE_OPTIONS = 1.8 cygnus dejagnu SUBDIRS = doc po +# Automake should figure this out on its own. It doesn't, because +# of the "cygnus" option. But distclean still wants it. +DIST_SUBDIRS = $(SUBDIRS) tooldir = $(exec_prefix)/$(target_alias) AM_CFLAGS = $(WARN_CFLAGS) MKDEP = gcc -MM @@ -2725,10 +2728,12 @@ TAGS: tags-recursive $(HEADERS) $(SOURCE $(TAGS_FILES) $(LISP) tags=; \ here=`pwd`; \ - if (etags --etags-include --version) >/dev/null 2>&1; then \ + if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ include_option=--etags-include; \ + empty_fix=.; \ else \ include_option=--include; \ + empty_fix=; \ fi; \ list='$(SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ @@ -2742,9 +2747,11 @@ TAGS: tags-recursive $(HEADERS) $(SOURCE done | \ $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ - test -z "$(ETAGS_ARGS)$$tags$$unique" \ - || $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$tags $$unique + if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ + test -z "$$unique" && unique=$$empty_fix; \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$tags $$unique; \ + fi ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.in $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) diff -uprN binutils-2.15.90.0.3/gas/NEWS binutils-2.15.91.0.1/gas/NEWS --- binutils-2.15.90.0.3/gas/NEWS 2004-01-14 13:07:45.000000000 -0800 +++ binutils-2.15.91.0.1/gas/NEWS 2004-05-27 11:26:03.127366415 -0700 @@ -1,5 +1,16 @@ -*- text -*- +* Added a pseudo-op (.secrel32) to generate 32 bit section relative relocations + on pe[i]-i386; required for this target's DWARF 2 support. + +* Support for Motorola MCF521x/5249/547x/548x added. + +* Support for ColdFire EMAC instructions added and Motorola syntax for MAC/EMAC + instrucitons. + +* The MIPS -membedded-pic option (Embedded-PIC code generation) is + deprecated and will be removed in a future release. + * Added PIC m32r Linux (ELF) and support to M32R assembler. * Added support for ARM V6. diff -uprN binutils-2.15.90.0.3/gas/aclocal.m4 binutils-2.15.91.0.1/gas/aclocal.m4 --- binutils-2.15.90.0.3/gas/aclocal.m4 2004-03-05 17:18:21.000000000 -0800 +++ binutils-2.15.91.0.1/gas/aclocal.m4 2004-05-27 11:26:03.142364476 -0700 @@ -1,4 +1,4 @@ -# generated automatically by aclocal 1.8.2 -*- Autoconf -*- +# generated automatically by aclocal 1.8.4 -*- Autoconf -*- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 # Free Software Foundation, Inc. @@ -40,7 +40,7 @@ AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api # Call AM_AUTOMAKE_VERSION so it can be traced. # This function is AC_REQUIREd by AC_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], - [AM_AUTOMAKE_VERSION([1.8.2])]) + [AM_AUTOMAKE_VERSION([1.8.4])]) # AM_AUX_DIR_EXPAND @@ -149,7 +149,7 @@ AC_CONFIG_COMMANDS_PRE( Usually this means the macro was only invoked conditionally.]) fi])]) -# serial 6 -*- Autoconf -*- +# serial 7 -*- Autoconf -*- # Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004 # Free Software Foundation, Inc. @@ -236,7 +236,9 @@ AC_CACHE_CHECK([dependency style of $dep : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c - : > sub/conftst$i.h + # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with + # Solaris 8's {/usr,}/bin/sh. + touch sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf @@ -264,9 +266,14 @@ AC_CACHE_CHECK([dependency style of $dep grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings - # (even with -Werror). So we grep stderr for any message - # that says an option was ignored. - if grep 'ignoring option' conftest.err >/dev/null 2>&1; then :; else + # or remarks (even with -Werror). So we grep stderr for any message + # that says an option was ignored or not supported. + # When given -MP, icc 7.0 and 7.1 complain thusly: + # icc: Command line warning: ignoring option '-M'; no argument required + # The diagnosis changed in icc 8.0: + # icc: Command line remark: option '-MP' not supported + if (grep 'ignoring option' conftest.err || + grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_$1_dependencies_compiler_type=$depmode break fi @@ -312,7 +319,7 @@ AC_SUBST([AMDEPBACKSLASH]) # Generate code to set up dependency tracking. -*- Autoconf -*- -# Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. +# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -351,14 +358,14 @@ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS grep '^DEP_FILES *= *[[^ @%:@]]' < "$mf" > /dev/null || continue # Extract the definition of DEP_FILES from the Makefile without # running `make'. - DEPDIR=`sed -n -e '/^DEPDIR = / s///p' < "$mf"` + DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` test -z "$DEPDIR" && continue # When using ansi2knr, U may be empty or an underscore; expand it - U=`sed -n -e '/^U = / s///p' < "$mf"` + U=`sed -n 's/^U = //p' < "$mf"` test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR" # We invoke sed twice because it is the simplest approach to # changing $(DEPDIR) to its actual value in the expansion. - for file in `sed -n -e ' + for file in `sed -n ' /^DEP_FILES = .*\\\\$/ { s/^DEP_FILES = // :loop @@ -814,8 +821,16 @@ fi # # Do not use -m 0755 and let people choose whatever they expect by # setting umask. +# +# We cannot accept any implementation of `mkdir' that recognizes `-p'. +# Some implementations (such as Solaris 8's) are not thread-safe: if a +# parallel make tries to run `mkdir -p a/b' and `mkdir -p a/c' +# concurrently, both version can detect that a/ is missing, but only +# one can create it and the other will error out. Consequently we +# restrict ourselves to GNU make (using the --version option ensures +# this.) AC_DEFUN([AM_PROG_MKDIR_P], -[if mkdir -p -- . 2>/dev/null; then +[if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then # Keeping the `.' argument allows $(mkdir_p) to be used without # argument. Indeed, we sometimes output rules like # $(mkdir_p) $(somedir) @@ -828,7 +843,7 @@ else # recognize any option. It will interpret all options as # directories to create, and then abort because `.' already # exists. - for d in ./-p ./--; + for d in ./-p ./--version; do test -d $d && rmdir $d done diff -uprN binutils-2.15.90.0.3/gas/as.h binutils-2.15.91.0.1/gas/as.h --- binutils-2.15.90.0.3/gas/as.h 2004-01-14 13:07:45.000000000 -0800 +++ binutils-2.15.91.0.1/gas/as.h 2004-05-27 11:26:03.158362407 -0700 @@ -562,6 +562,9 @@ void sprint_value (char *buf, addressT v int had_errors (void); int had_warnings (void); +void as_warn_value_out_of_range (char *, offsetT, offsetT, offsetT, char *, unsigned); +void as_bad_value_out_of_range (char *, offsetT, offsetT, offsetT, char *, unsigned); + void print_version_id (void); char *app_push (void); char *atof_ieee (char *str, int what_kind, LITTLENUM_TYPE * words); diff -uprN binutils-2.15.90.0.3/gas/config/m68k-parse.h binutils-2.15.91.0.1/gas/config/m68k-parse.h --- binutils-2.15.90.0.3/gas/config/m68k-parse.h 2004-01-14 13:07:45.000000000 -0800 +++ binutils-2.15.91.0.1/gas/config/m68k-parse.h 2004-05-27 11:26:03.309342883 -0700 @@ -1,6 +1,6 @@ /* m68k-parse.h -- header file for m68k assembler Copyright 1987, 1991, 1992, 1993, 1994, 1995, 1996, 1999, 2000, - 2003 Free Software Foundation, Inc. + 2003, 2004 Free Software Foundation, Inc. This file is part of GAS, the GNU Assembler. @@ -84,7 +84,12 @@ enum m68k_register ZPC, /* Hack for Program space, but 0 addressing */ SR, /* Status Reg */ CCR, /* Condition code Reg */ - ACC, /* Accumulator Reg */ + ACC, /* Accumulator Reg0 (EMAC or ACC on MAC). */ + ACC1, /* Accumulator Reg 1 (EMAC). */ + ACC2, /* Accumulator Reg 2 (EMAC). */ + ACC3, /* Accumulator Reg 3 (EMAC). */ + ACCEXT01, /* Accumulator extension 0&1 (EMAC). */ + ACCEXT23, /* Accumulator extension 2&3 (EMAC). */ MACSR, /* MAC Status Reg */ MASK, /* Modulus Reg */ @@ -295,6 +300,8 @@ enum m68k_operand_type BASE, POST, PRE, + LSH, /* MAC/EMAC scalefactor '<<'. */ + RSH, /* MAC/EMAC scalefactor '>>'. */ REGLST }; @@ -322,6 +329,9 @@ struct m68k_op /* The outer displacement. */ struct m68k_exp odisp; + + /* Is a trailing '&' added to an ? (for MAC/EMAC mask addressing). */ + int trailing_ampersand; }; #endif /* ! defined (M68K_PARSE_H) */ diff -uprN binutils-2.15.90.0.3/gas/config/m68k-parse.y binutils-2.15.91.0.1/gas/config/m68k-parse.y --- binutils-2.15.90.0.3/gas/config/m68k-parse.y 2004-01-14 13:07:45.000000000 -0800 +++ binutils-2.15.91.0.1/gas/config/m68k-parse.y 2004-05-27 11:26:03.310342753 -0700 @@ -1,5 +1,5 @@ /* m68k.y -- bison grammar for m68k operand parsing - Copyright 1995, 1996, 1997, 1998, 2001 Free Software Foundation, Inc. + Copyright 1995, 1996, 1997, 1998, 2001, 2004 Free Software Foundation, Inc. Written by Ken Raeburn and Ian Lance Taylor, Cygnus Support This file is part of GAS, the GNU Assembler. @@ -35,7 +35,7 @@ etc), as well as gratuitously global symbol names If other parser generators (bison, byacc, etc) produce additional global names that conflict at link time, then those parser generators need to be - fixed instead of adding those names to this list. */ + fixed instead of adding those names to this list. */ #define yymaxdepth m68k_maxdepth #define yyparse m68k_parse @@ -98,6 +98,7 @@ static struct m68k_op *op; struct m68k_exp exp; unsigned long mask; int onereg; + int trailing_ampersand; } %token DR AR FPR FPCR LPC ZAR ZDR LZPC CREG @@ -109,6 +110,7 @@ static struct m68k_op *op; %type optcexpr optexprc %type reglist ireglist reglistpair %type reglistreg +%type optional_ampersand %% @@ -116,14 +118,38 @@ static struct m68k_op *op; operand: generic_operand - | motorola_operand - | mit_operand + | motorola_operand optional_ampersand + { + op->trailing_ampersand = $2; + } + | mit_operand optional_ampersand + { + op->trailing_ampersand = $2; + } + ; + +/* A trailing ampersand(for MAC/EMAC mask addressing). */ +optional_ampersand: + /* empty */ + { $$ = 0; } + | '&' + { $$ = 1; } ; /* A generic operand. */ generic_operand: - DR + '<' '<' + { + op->mode = LSH; + } + + | '>' '>' + { + op->mode = RSH; + } + + | DR { op->mode = DREG; op->reg = $1; @@ -757,19 +783,21 @@ yylex () case '/': case '[': case ']': + case '<': + case '>': return *str++; case '+': /* It so happens that a '+' can only appear at the end of an - operand. If it appears anywhere else, it must be a unary - plus on an expression. */ - if (str[1] == '\0') + operand, or if it is trailed by an '&'(see mac load insn). + If it appears anywhere else, it must be a unary. */ + if (str[1] == '\0' || (str[1] == '&' && str[2] == '\0')) return *str++; break; case '-': /* A '-' can only appear in -(ar), rn-rn, or ar@-. If it appears anywhere else, it must be a unary minus on an - expression. */ - if (str[1] == '\0') + expression, unless it it trailed by a '&'(see mac load insn). */ + if (str[1] == '\0' || (str[1] == '&' && str[2] == '\0')) return *str++; s = str + 1; if (*s == '(') diff -uprN binutils-2.15.90.0.3/gas/config/obj-elf.c binutils-2.15.91.0.1/gas/config/obj-elf.c --- binutils-2.15.90.0.3/gas/config/obj-elf.c 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/gas/config/obj-elf.c 2004-05-27 11:26:03.333339779 -0700 @@ -469,6 +469,18 @@ struct section_stack static struct section_stack *section_stack; +static bfd_boolean +get_section (bfd *abfd ATTRIBUTE_UNUSED, asection *sec, void *inf) +{ + const char *gname = inf; + const char *group_name = elf_group_name (sec); + + return (group_name == gname + || (group_name != NULL + && gname != NULL + && strcmp (group_name, gname) == 0)); +} + /* Handle the .section pseudo-op. This code supports two different syntaxes. @@ -520,8 +532,16 @@ obj_elf_change_section (const char *name previous_section = now_seg; previous_subsection = now_subseg; - old_sec = bfd_get_section_by_name (stdoutput, name); - sec = subseg_new (name, 0); + old_sec = bfd_get_section_by_name_if (stdoutput, name, get_section, + (void *) group_name); + if (old_sec) + { + sec = old_sec; + subseg_set (sec, 0); + } + else + sec = subseg_force_new (name, 0); + ssect = _bfd_elf_get_sec_type_attr (stdoutput, name); if (ssect != NULL) @@ -580,10 +600,15 @@ obj_elf_change_section (const char *name || strcmp (name, ".strtab") == 0 || strcmp (name, ".symtab") == 0)) override = TRUE; + /* .note.GNU-stack can have SHF_EXECINSTR. */ + else if (attr == SHF_EXECINSTR + && strcmp (name, ".note.GNU-stack") == 0) + override = TRUE; else { - as_warn (_("setting incorrect section attributes for %s"), - name); + if (group_name == NULL) + as_warn (_("setting incorrect section attributes for %s"), + name); override = TRUE; } } @@ -609,6 +634,9 @@ obj_elf_change_section (const char *name flags = md_elf_section_flags (flags, attr, type); #endif + if (linkonce) + flags |= SEC_LINK_ONCE | SEC_LINK_DUPLICATES_DISCARD; + if (old_sec == NULL) { symbolS *secsym; @@ -617,8 +645,6 @@ obj_elf_change_section (const char *name if (type == SHT_NOBITS) seg_info (sec)->bss = 1; - if (linkonce) - flags |= SEC_LINK_ONCE | SEC_LINK_DUPLICATES_DISCARD; bfd_set_section_flags (stdoutput, sec, flags); if (flags & SEC_MERGE) sec->entsize = entsize; @@ -644,9 +670,6 @@ obj_elf_change_section (const char *name as_warn (_("ignoring changed section attributes for %s"), name); if ((flags & SEC_MERGE) && old_sec->entsize != (unsigned) entsize) as_warn (_("ignoring changed section entity size for %s"), name); - if ((attr & SHF_GROUP) != 0 - && strcmp (elf_group_name (old_sec), group_name) != 0) - as_warn (_("ignoring new section group for %s"), name); } #ifdef md_elf_section_change_hook diff -uprN binutils-2.15.90.0.3/gas/config/obj-som.c binutils-2.15.91.0.1/gas/config/obj-som.c --- binutils-2.15.90.0.3/gas/config/obj-som.c 2004-01-14 13:07:45.000000000 -0800 +++ binutils-2.15.91.0.1/gas/config/obj-som.c 2004-05-27 11:26:03.352337323 -0700 @@ -248,7 +248,7 @@ obj_som_init_stab_section (seg) (just created above). Also set some attributes which BFD does not understand. In particular, access bits, sort keys, and load quadrant. */ - obj_set_subsection_attributes (seg, space, 0x1f, 73, 0); + obj_set_subsection_attributes (seg, space, 0x1f, 73, 0, 0, 0, 0); bfd_set_section_alignment (stdoutput, seg, 2); /* Make some space for the first special stab entry and zero the memory. @@ -271,7 +271,7 @@ obj_som_init_stab_section (seg) not understand. In particular, access bits, sort keys, and load quadrant. */ seg = bfd_get_section_by_name (stdoutput, "$GDB_STRINGS$"); - obj_set_subsection_attributes (seg, space, 0x1f, 72, 0); + obj_set_subsection_attributes (seg, space, 0x1f, 72, 0, 0, 0, 0); bfd_set_section_alignment (stdoutput, seg, 2); subseg_set (saved_seg, saved_subseg); diff -uprN binutils-2.15.90.0.3/gas/config/tc-alpha.c binutils-2.15.91.0.1/gas/config/tc-alpha.c --- binutils-2.15.90.0.3/gas/config/tc-alpha.c 2004-01-14 13:07:45.000000000 -0800 +++ binutils-2.15.91.0.1/gas/config/tc-alpha.c 2004-05-27 11:26:03.363335900 -0700 @@ -2373,17 +2373,7 @@ insert_operand (insn, operand, val, file } if (val < min || val > max) - { - const char *err = - _("operand out of range (%s not between %d and %d)"); - char buf[sizeof (val) * 3 + 2]; - - sprint_value (buf, val); - if (file) - as_warn_where (file, line, err, buf, min, max); - else - as_warn (err, buf, min, max); - } + as_warn_value_out_of_range (_("operand"), val, min, max, file, line); } if (operand->insert) diff -uprN binutils-2.15.90.0.3/gas/config/tc-arc.c binutils-2.15.91.0.1/gas/config/tc-arc.c --- binutils-2.15.90.0.3/gas/config/tc-arc.c 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/gas/config/tc-arc.c 2004-05-27 11:26:03.411329694 -0700 @@ -328,17 +328,7 @@ arc_insert_operand (insn, operand, mods, test = val; if (test < (offsetT) min || test > (offsetT) max) - { - const char *err = - "operand out of range (%s not between %ld and %ld)"; - char buf[100]; - - sprint_value (buf, test); - if (file == (char *) NULL) - as_warn (err, buf, min, max); - else - as_warn_where (file, line, err, buf, min, max); - } + as_warn_value_out_of_range (_("operand"), test, (offsetT) min, (offsetT) max, file, line); } if (operand->insert) diff -uprN binutils-2.15.90.0.3/gas/config/tc-arm.c binutils-2.15.91.0.1/gas/config/tc-arm.c --- binutils-2.15.90.0.3/gas/config/tc-arm.c 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/gas/config/tc-arm.c 2004-05-27 11:26:03.470322065 -0700 @@ -1,5 +1,5 @@ /* tc-arm.c -- Assemble for the ARM - Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 + Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. Contributed by Richard Earnshaw (rwe@pegasus.esprit.ec.org) Modified by David Taylor (dtaylor@armltd.co.uk) @@ -2829,13 +2829,6 @@ validate_offset_imm (val, hwse) #ifdef OBJ_ELF -enum mstate -{ - MAP_DATA, - MAP_ARM, - MAP_THUMB -}; - /* This code is to handle mapping symbols as defined in the ARM ELF spec. (This text is taken from version B-02 of the spec): @@ -2910,10 +2903,11 @@ enum mstate the EABI (which is still under development), so they are not implemented here. */ +static enum mstate mapstate = MAP_UNDEFINED; + static void mapping_state (enum mstate state) { - static enum mstate mapstate = MAP_DATA; symbolS * symbolP; const char * symname; int type; @@ -2939,10 +2933,14 @@ mapping_state (enum mstate state) symname = "$t"; type = BSF_FUNCTION; break; + case MAP_UNDEFINED: + return; default: abort (); } + seg_info (now_seg)->tc_segment_info_data = state; + symbolP = symbol_new (symname, now_seg, (valueT) frag_now_fix (), frag_now); symbol_table_insert (symbolP); symbol_get_bfdsym (symbolP)->flags |= type | BSF_LOCAL; @@ -2983,16 +2981,7 @@ arm_elf_change_section (void) if ((flags & SEC_ALLOC) == 0) return; - if (flags & SEC_CODE) - { - if (thumb_mode) - mapping_state (MAP_THUMB); - else - mapping_state (MAP_ARM); - } - else - /* This section does not contain code. Therefore it must contain data. */ - mapping_state (MAP_DATA); + mapstate = seg_info (now_seg)->tc_segment_info_data; } #else #define mapping_state(a) @@ -3115,6 +3104,8 @@ s_ltorg (ignored) || pool->next_free_entry == 0) return; + mapping_state (MAP_DATA); + /* Align pool as you have word accesses. Only make a frag if we have to. */ if (!need_pass_2) @@ -3604,7 +3595,7 @@ co_proc_number (str) } else { - inst.error = _("bad or missing co-processor number"); + inst.error = all_reg_maps[REG_TYPE_CP].expected; return FAIL; } } @@ -3659,7 +3650,7 @@ cp_reg_required_here (str, where) /* In the few cases where we might be able to accept something else this error can be overridden. */ - inst.error = _("co-processor register expected"); + inst.error = all_reg_maps[REG_TYPE_CN].expected; /* Restore the start point. */ *str = start; @@ -3682,7 +3673,7 @@ fp_reg_required_here (str, where) /* In the few cases where we might be able to accept something else this error can be overridden. */ - inst.error = _("floating point register expected"); + inst.error = all_reg_maps[REG_TYPE_FN].expected; /* Restore the start point. */ *str = start; @@ -10862,11 +10853,16 @@ mav_parse_offset (str, negative) for (offset = 0; *p && ISDIGIT (*p); ++p) offset = offset * 10 + *p - '0'; - if (offset > 0xff) + if (offset > 0x3fc) { inst.error = _("offset out of range"); return 0; } + if (offset & 0x3) + { + inst.error = _("offset not a multiple of 4"); + return 0; + } *str = p; @@ -11443,7 +11439,7 @@ create_register_alias (newname, p) char *copy_of_str; char *r; -#ifdef IGNORE_OPCODE_CASE +#ifndef IGNORE_OPCODE_CASE newname = original_case_string; #endif copy_of_str = newname; @@ -13878,6 +13874,9 @@ arm_cleanup () { /* Put it at the end of the relevent section. */ subseg_set (pool->section, pool->sub_section); +#ifdef OBJ_ELF + arm_elf_change_section (); +#endif s_ltorg (0); } } diff -uprN binutils-2.15.90.0.3/gas/config/tc-arm.h binutils-2.15.91.0.1/gas/config/tc-arm.h --- binutils-2.15.90.0.3/gas/config/tc-arm.h 2004-01-14 13:07:45.000000000 -0800 +++ binutils-2.15.91.0.1/gas/config/tc-arm.h 2004-05-27 11:26:03.487319867 -0700 @@ -1,5 +1,5 @@ /* This file is tc-arm.h - Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002 + Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2004 Free Software Foundation, Inc. Contributed by Richard Earnshaw (rwe@pegasus.esprit.ec.org) Modified by David Taylor (dtaylor@armltd.co.uk) @@ -47,67 +47,47 @@ #define LITTLE_ENDIAN 1234 #define BIG_ENDIAN 4321 -#if defined OBJ_AOUT -#if defined TE_RISCIX -# define TARGET_FORMAT "a.out-riscix" -#elif defined TE_LINUX -# define ARM_BI_ENDIAN -# define TARGET_FORMAT "a.out-arm-linux" -#elif defined TE_NetBSD -# define TARGET_FORMAT "a.out-arm-netbsd" -#else -# define ARM_BI_ENDIAN -# define TARGET_FORMAT \ - (target_big_endian ? "a.out-arm-big" : "a.out-arm-little") -#endif -#endif /* OBJ_AOUT */ - -#ifdef OBJ_AIF -#define TARGET_FORMAT "aif" -#endif - struct fix; -#if defined OBJ_COFF || defined OBJ_ELF +#if defined OBJ_AOUT +# if defined TE_RISCIX +# define TARGET_FORMAT "a.out-riscix" +# elif defined TE_LINUX +# define ARM_BI_ENDIAN +# define TARGET_FORMAT "a.out-arm-linux" +# elif defined TE_NetBSD +# define TARGET_FORMAT "a.out-arm-netbsd" +# else +# define ARM_BI_ENDIAN +# define TARGET_FORMAT (target_big_endian ? "a.out-arm-big" : "a.out-arm-little") +# endif +#elif defined OBJ_AIF +# define TARGET_FORMAT "aif" +#elif defined OBJ_COFF # define ARM_BI_ENDIAN - -# define TC_VALIDATE_FIX(FIX, SEGTYPE, LABEL) arm_validate_fix (FIX) - extern void arm_validate_fix PARAMS ((struct fix *)); -#endif - -#ifdef OBJ_COFF # if defined TE_PE -# ifdef TE_EPOC -# define TARGET_FORMAT (target_big_endian ? "epoc-pe-arm-big" : "epoc-pe-arm-little") -# else -# define TARGET_FORMAT (target_big_endian ? "pe-arm-big" : "pe-arm-little") -# endif +# if defined TE_EPOC +# define TARGET_FORMAT (target_big_endian ? "epoc-pe-arm-big" : "epoc-pe-arm-little") +# else +# define TARGET_FORMAT (target_big_endian ? "pe-arm-big" : "pe-arm-little") +# endif # else # define TARGET_FORMAT (target_big_endian ? "coff-arm-big" : "coff-arm-little") # endif -#endif - -#ifdef OBJ_ELF -# define TARGET_FORMAT elf32_arm_target_format() - extern const char * elf32_arm_target_format PARAMS ((void)); - -# define md_elf_section_change_hook() arm_elf_change_section - extern void arm_elf_change_section (void); +#elif defined OBJ_ELF +# define ARM_BI_ENDIAN +# define TARGET_FORMAT elf32_arm_target_format () #endif #define TC_FORCE_RELOCATION(FIX) arm_force_relocation (FIX) -extern int arm_force_relocation PARAMS ((struct fix *)); -#define md_convert_frag(b, s, f) {as_fatal (_("arm convert_frag\n"));} +#define md_convert_frag(b, s, f) { as_fatal (_("arm convert_frag\n")); } #define md_cleanup() arm_cleanup () - extern void arm_cleanup PARAMS ((void)); #define md_start_line_hook() arm_start_line_hook () - extern void arm_start_line_hook PARAMS ((void)); #define tc_frob_label(S) arm_frob_label (S) - extern void arm_frob_label PARAMS ((symbolS *)); /* We also need to mark assembler created symbols: */ #define tc_frob_fake_label(S) arm_frob_label (S) @@ -119,19 +99,9 @@ extern int arm_force_relocation PARAMS ( #define TC_FIX_TYPE PTR #define TC_INIT_FIX_DATA(FIX) ((FIX)->tc_fix_data = NULL) -#if defined OBJ_ELF || defined OBJ_COFF -#define EXTERN_FORCE_RELOC 1 - -#define tc_fix_adjustable(FIX) arm_fix_adjustable (FIX) -bfd_boolean arm_fix_adjustable PARAMS ((struct fix *)); - -/* Values passed to md_apply_fix3 don't include the symbol value. */ -#define MD_APPLY_SYM_VALUE(FIX) 0 -#endif - /* We need to keep some local information on symbols. */ -#define TC_SYMFIELD_TYPE unsigned int +#define TC_SYMFIELD_TYPE unsigned int #define ARM_GET_FLAG(s) (*symbol_get_tc (s)) #define ARM_SET_FLAG(s,v) (*symbol_get_tc (s) |= (v)) #define ARM_RESET_FLAG(s,v) (*symbol_get_tc (s) &= ~(v)) @@ -148,23 +118,10 @@ bfd_boolean arm_fix_adjustable PARAMS (( #define ARM_SET_INTERWORK(s,t) ((t) ? ARM_SET_FLAG (s, ARM_FLAG_INTERWORK) : ARM_RESET_FLAG (s, ARM_FLAG_INTERWORK)) #define THUMB_SET_FUNC(s,t) ((t) ? ARM_SET_FLAG (s, THUMB_FLAG_FUNC) : ARM_RESET_FLAG (s, THUMB_FLAG_FUNC)) -#define TC_START_LABEL(C,STR) \ - (c == ':' || (c == '/' && arm_data_in_code ())) -int arm_data_in_code PARAMS ((void)); - -#define tc_canonicalize_symbol_name(str) \ - arm_canonicalize_symbol_name (str); -char * arm_canonicalize_symbol_name PARAMS ((char *)); - -#define obj_adjust_symtab() arm_adjust_symtab () - extern void arm_adjust_symtab PARAMS ((void)); - -#ifdef OBJ_ELF -#define obj_frob_symbol(sym, punt) armelf_frob_symbol ((sym), & (punt)) -void armelf_frob_symbol PARAMS ((symbolS *, int *)); -#endif - -#define tc_aout_pre_write_hook(x) {;} /* not used */ +#define TC_START_LABEL(C,STR) (c == ':' || (c == '/' && arm_data_in_code ())) +#define tc_canonicalize_symbol_name(str) arm_canonicalize_symbol_name (str); +#define obj_adjust_symtab() arm_adjust_symtab () +#define tc_aout_pre_write_hook(x) {;} /* not used */ #define LISTING_HEADER "ARM GAS " @@ -172,9 +129,6 @@ void armelf_frob_symbol PARAMS ((symbolS #define LOCAL_LABEL(name) (name[0] == '.' && (name[1] == 'L')) #define LOCAL_LABELS_FB 1 -#ifdef OBJ_ELF -#define LOCAL_LABEL_PREFIX '.' -#endif /* This expression evaluates to true if the relocation is for a local object for which we still want to do the relocation at runtime. @@ -192,29 +146,15 @@ void armelf_frob_symbol PARAMS ((symbolS || TC_FORCE_RELOCATION (FIX)) #define TC_CONS_FIX_NEW cons_fix_new_arm - extern void cons_fix_new_arm PARAMS ((fragS *, int, int, expressionS *)); - -#ifdef OBJ_ELF -#define GLOBAL_OFFSET_TABLE_NAME "_GLOBAL_OFFSET_TABLE_" -#else -#define GLOBAL_OFFSET_TABLE_NAME "__GLOBAL_OFFSET_TABLE_" -#endif - -#ifdef OBJ_ELF -#define DWARF2_LINE_MIN_INSN_LENGTH 2 -#endif #define MAX_MEM_FOR_RS_ALIGN_CODE 31 /* For frags in code sections we need to record whether they contain ARM code or THUMB code. This is that if they have to be aligned, they can contain the correct type of no-op instruction. */ -#define TC_FRAG_TYPE int +#define TC_FRAG_TYPE int #define TC_FRAG_INIT(fragp) arm_init_frag (fragp) -extern void arm_init_frag PARAMS ((struct frag *)); - -#define HANDLE_ALIGN(fragp) arm_handle_align (fragp) -extern void arm_handle_align PARAMS ((struct frag *)); +#define HANDLE_ALIGN(fragp) arm_handle_align (fragp) #define md_do_align(N, FILL, LEN, MAX, LABEL) \ if (FILL == NULL && (N) != 0 && ! need_pass_2 && subseg_text_p (now_seg)) \ @@ -222,4 +162,50 @@ extern void arm_handle_align PARAMS ((st arm_frag_align_code (N, MAX); \ goto LABEL; \ } -extern void arm_frag_align_code PARAMS ((int, int)); + +#ifdef OBJ_ELF +# define DWARF2_LINE_MIN_INSN_LENGTH 2 +# define obj_frob_symbol(sym, punt) armelf_frob_symbol ((sym), & (punt)) +# define md_elf_section_change_hook() arm_elf_change_section () +# define GLOBAL_OFFSET_TABLE_NAME "_GLOBAL_OFFSET_TABLE_" +# define LOCAL_LABEL_PREFIX '.' +# define TC_SEGMENT_INFO_TYPE enum mstate + +enum mstate +{ + MAP_UNDEFINED = 0, /* Must be zero, for seginfo in new sections. */ + MAP_DATA, + MAP_ARM, + MAP_THUMB +}; + +#else /* Not OBJ_ELF. */ +#define GLOBAL_OFFSET_TABLE_NAME "__GLOBAL_OFFSET_TABLE_" +#endif + +#if defined OBJ_ELF || defined OBJ_COFF + +# define EXTERN_FORCE_RELOC 1 +# define tc_fix_adjustable(FIX) arm_fix_adjustable (FIX) +/* Values passed to md_apply_fix3 don't include the symbol value. */ +# define MD_APPLY_SYM_VALUE(FIX) 0 +# define TC_VALIDATE_FIX(FIX, SEGTYPE, LABEL) arm_validate_fix (FIX) + +#endif + +extern void arm_frag_align_code (int, int); +extern void arm_validate_fix (struct fix *); +extern const char * elf32_arm_target_format (void); +extern void arm_elf_change_section (void); +extern int arm_force_relocation (struct fix *); +extern void arm_cleanup (void); +extern void arm_start_line_hook (void); +extern void arm_frob_label (symbolS *); +extern int arm_data_in_code (void); +extern char * arm_canonicalize_symbol_name (char *); +extern void arm_adjust_symtab (void); +extern void armelf_frob_symbol (symbolS *, int *); +extern void cons_fix_new_arm (fragS *, int, int, expressionS *); +extern void arm_init_frag (struct frag *); +extern void arm_handle_align (struct frag *); +extern bfd_boolean arm_fix_adjustable (struct fix *); diff -uprN binutils-2.15.90.0.3/gas/config/tc-frv.c binutils-2.15.91.0.1/gas/config/tc-frv.c --- binutils-2.15.90.0.3/gas/config/tc-frv.c 2004-03-03 12:24:34.000000000 -0800 +++ binutils-2.15.91.0.1/gas/config/tc-frv.c 2004-05-27 11:26:03.499318315 -0700 @@ -162,15 +162,21 @@ static FRV_VLIW vliw; #endif #endif +#ifdef TE_LINUX +# define DEFAULT_FDPIC EF_FRV_FDPIC +#else +# define DEFAULT_FDPIC 0 +#endif + static unsigned long frv_mach = bfd_mach_frv; static bfd_boolean fr400_audio; /* Flags to set in the elf header */ -static flagword frv_flags = DEFAULT_FLAGS; +static flagword frv_flags = DEFAULT_FLAGS | DEFAULT_FDPIC; static int frv_user_set_flags_p = 0; static int frv_pic_p = 0; -static const char *frv_pic_flag = (const char *)0; +static const char *frv_pic_flag = DEFAULT_FDPIC ? "-mfdpic" : (const char *)0; /* Print tomcat-specific debugging info. */ static int tomcat_debug = 0; @@ -220,6 +226,7 @@ const char * md_shortopts = FRV_SHORTOPT #define OPTION_PACK (OPTION_MD_BASE + 19) #define OPTION_NO_PACK (OPTION_MD_BASE + 20) #define OPTION_FDPIC (OPTION_MD_BASE + 21) +#define OPTION_NOPIC (OPTION_MD_BASE + 22) struct option md_longopts[] = { @@ -246,6 +253,7 @@ struct option md_longopts[] = { "mpack", no_argument, NULL, OPTION_PACK }, { "mno-pack", no_argument, NULL, OPTION_NO_PACK }, { "mfdpic", no_argument, NULL, OPTION_FDPIC }, + { "mnopic", no_argument, NULL, OPTION_NOPIC }, { NULL, no_argument, NULL, 0 }, }; @@ -428,6 +436,12 @@ md_parse_option (c, arg) frv_pic_flag = "-mfdpic"; break; + case OPTION_NOPIC: + frv_flags &= ~(EF_FRV_FDPIC | EF_FRV_PIC + | EF_FRV_BIGPIC | EF_FRV_LIBPIC); + frv_pic_flag = 0; + break; + case OPTION_TOMCAT_DEBUG: tomcat_debug = 1; break; @@ -461,6 +475,8 @@ md_show_usage (stream) fprintf (stream, _("-mpic Note small position independent code\n")); fprintf (stream, _("-mPIC Note large position independent code\n")); fprintf (stream, _("-mlibrary-pic Compile library for large position indepedent code\n")); + fprintf (stream, _("-mfdpic Assemble for the FDPIC ABI\n")); + fprintf (stream, _("-mnopic Disable -mpic, -mPIC, -mlibrary-pic and -mfdpic\n")); fprintf (stream, _("-mcpu={fr500|fr550|fr400|fr405|fr450|fr300|frv|simple|tomcat}\n")); fprintf (stream, _(" Record the cpu type\n")); fprintf (stream, _("-mtomcat-stats Print out stats for tomcat workarounds\n")); @@ -496,6 +512,12 @@ md_begin () frv_vliw_reset (& vliw, frv_mach, frv_flags); } +bfd_boolean +frv_md_fdpic_enabled (void) +{ + return (frv_flags & EF_FRV_FDPIC) != 0; +} + int chain_num = 0; struct vliw_insn_list *frv_insert_vliw_insn PARAMS ((bfd_boolean)); diff -uprN binutils-2.15.90.0.3/gas/config/tc-frv.h binutils-2.15.91.0.1/gas/config/tc-frv.h --- binutils-2.15.90.0.3/gas/config/tc-frv.h 2004-01-14 13:07:45.000000000 -0800 +++ binutils-2.15.91.0.1/gas/config/tc-frv.h 2004-05-27 11:26:03.512316635 -0700 @@ -30,7 +30,9 @@ /* The target BFD architecture. */ #define TARGET_ARCH bfd_arch_frv -#define TARGET_FORMAT "elf32-frv" +#define TARGET_FORMAT (frv_md_fdpic_enabled () \ + ? "elf32-frvfdpic" : "elf32-frv") +extern bfd_boolean frv_md_fdpic_enabled (void); #define TARGET_BYTES_BIG_ENDIAN 1 @@ -84,3 +86,44 @@ extern long md_pcrel_from_section PARAMS for any relocations that pic won't support. */ #define tc_frob_file() frv_frob_file () extern void frv_frob_file PARAMS ((void)); + +/* We don't want 0x00 for code alignment because this generates `add.p + gr0, gr0, gr0' patterns. Although it's fine as a nop instruction, + it has the VLIW packing bit set, which means if you have a bunch of + them in a row and attempt to execute them, you'll exceed the VLIW + capacity and fail. This also gets GDB confused sometimes, because + it won't set breakpoints in instructions other than the first of a + VLIW pack, so you used to be unable to set a breakpoint in the + initial instruction of a function that followed such + alignment-introduced instructions. + + We could have arranged to emit `nop' instructions (0x80880000), + maybe even VLIW-pack sequences of nop instructions as much as + possible for the selected machine type, just in case the alignment + code actually happens to run, but this is probably too much effort + for little gain. This code is not meant to be run anyway, so just + emit nops. */ +#define MAX_MEM_FOR_RS_ALIGN_CODE (3 + 4) +#define HANDLE_ALIGN(FRAGP) do \ + if ((FRAGP)->fr_type == rs_align_code) \ + { \ + valueT count = ((FRAGP)->fr_next->fr_address \ + - ((FRAGP)->fr_address + (FRAGP)->fr_fix)); \ + unsigned char *dest = (FRAGP)->fr_literal + (FRAGP)->fr_fix; \ + if ((count & 3) != 0) \ + { \ + memset (dest, 0, (count & 3)); \ + (FRAGP)->fr_fix += (count & 3); \ + dest += (count & 3); \ + count -= (count & 3); \ + } \ + if (count) \ + { \ + (FRAGP)->fr_var = 4; \ + *dest++ = 0x80; \ + *dest++ = 0x88; \ + *dest++ = 0x00; \ + *dest++ = 0x00; \ + } \ + } \ + while (0) diff -uprN binutils-2.15.90.0.3/gas/config/tc-hppa.c binutils-2.15.91.0.1/gas/config/tc-hppa.c --- binutils-2.15.90.0.3/gas/config/tc-hppa.c 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/gas/config/tc-hppa.c 2004-05-27 11:26:03.556310945 -0700 @@ -363,6 +363,9 @@ struct default_subspace_dict /* Nonzero if this subspace contains only code. */ char code_only; + /* Nonzero if this is a comdat subspace. */ + char comdat; + /* Nonzero if this is a common subspace. */ char common; @@ -555,13 +558,13 @@ static sd_chain_struct *create_new_space asection *, int)); static ssd_chain_struct *create_new_subspace PARAMS ((sd_chain_struct *, char *, int, int, - int, int, int, + int, int, int, int, int, int, int, int, int, asection *)); static ssd_chain_struct *update_subspace PARAMS ((sd_chain_struct *, char *, int, int, int, int, int, int, int, - int, int, int, + int, int, int, int, asection *)); static sd_chain_struct *is_defined_space PARAMS ((char *)); static ssd_chain_struct *is_defined_subspace PARAMS ((char *)); @@ -1117,12 +1120,12 @@ static const struct selector_entry selec static struct default_subspace_dict pa_def_subspaces[] = { - {"$CODE$", 1, 1, 1, 0, 0, 0, 24, 0x2c, 0, 8, 0, 0, SUBSEG_CODE}, - {"$DATA$", 1, 1, 0, 0, 0, 0, 24, 0x1f, 1, 8, 1, 1, SUBSEG_DATA}, - {"$LIT$", 1, 1, 0, 0, 0, 0, 16, 0x2c, 0, 8, 0, 0, SUBSEG_LIT}, - {"$MILLICODE$", 1, 1, 0, 0, 0, 0, 8, 0x2c, 0, 8, 0, 0, SUBSEG_MILLI}, - {"$BSS$", 1, 1, 0, 0, 0, 1, 80, 0x1f, 1, 8, 1, 1, SUBSEG_BSS}, - {NULL, 0, 1, 0, 0, 0, 0, 255, 0x1f, 0, 4, 0, 0, 0} + {"$CODE$", 1, 1, 1, 0, 0, 0, 0, 24, 0x2c, 0, 8, 0, 0, SUBSEG_CODE}, + {"$DATA$", 1, 1, 0, 0, 0, 0, 0, 24, 0x1f, 1, 8, 1, 1, SUBSEG_DATA}, + {"$LIT$", 1, 1, 0, 0, 0, 0, 0, 16, 0x2c, 0, 8, 0, 0, SUBSEG_LIT}, + {"$MILLICODE$", 1, 1, 0, 0, 0, 0, 0, 8, 0x2c, 0, 8, 0, 0, SUBSEG_MILLI}, + {"$BSS$", 1, 1, 0, 0, 0, 0, 1, 80, 0x1f, 1, 8, 1, 1, SUBSEG_BSS}, + {NULL, 0, 1, 0, 0, 0, 0, 0, 255, 0x1f, 0, 4, 0, 0, 0} }; static struct default_space_dict pa_def_spaces[] = @@ -7454,7 +7457,7 @@ pa_subspace (create_new) int create_new; { char *name, *ss_name, c; - char loadable, code_only, common, dup_common, zero, sort; + char loadable, code_only, comdat, common, dup_common, zero, sort; int i, access, space_index, alignment, quadrant, applicable, flags; sd_chain_struct *space; ssd_chain_struct *ssd; @@ -7480,6 +7483,7 @@ pa_subspace (create_new) sort = 0; access = 0x7f; loadable = 1; + comdat = 0; common = 0; dup_common = 0; code_only = 0; @@ -7514,6 +7518,7 @@ pa_subspace (create_new) if (strcasecmp (pa_def_subspaces[i].name, ss_name) == 0) { loadable = pa_def_subspaces[i].loadable; + comdat = pa_def_subspaces[i].comdat; common = pa_def_subspaces[i].common; dup_common = pa_def_subspaces[i].dup_common; code_only = pa_def_subspaces[i].code_only; @@ -7577,6 +7582,11 @@ pa_subspace (create_new) *input_line_pointer = c; loadable = 0; } + else if ((strncasecmp (name, "comdat", 6) == 0)) + { + *input_line_pointer = c; + comdat = 1; + } else if ((strncasecmp (name, "common", 6) == 0)) { *input_line_pointer = c; @@ -7609,8 +7619,17 @@ pa_subspace (create_new) flags |= (SEC_ALLOC | SEC_LOAD); if (code_only) flags |= SEC_CODE; - if (common || dup_common) - flags |= SEC_IS_COMMON; + + /* These flags are used to implement various flavors of initialized + common. The SOM linker discards duplicate subspaces when they + have the same "key" symbol name. This support is more like + GNU linkonce than BFD common. Further, pc-relative relocations + are converted to section relative relocations in BFD common + sections. This complicates the handling of relocations in + common sections containing text and isn't currently supported + correctly in the SOM BFD backend. */ + if (comdat || common || dup_common) + flags |= SEC_LINK_ONCE; flags |= SEC_RELOC | SEC_HAS_CONTENTS; @@ -7652,16 +7671,16 @@ pa_subspace (create_new) if (ssd) current_subspace = update_subspace (space, ss_name, loadable, - code_only, common, dup_common, - sort, zero, access, space_index, - alignment, quadrant, + code_only, comdat, common, + dup_common, sort, zero, access, + space_index, alignment, quadrant, section); else current_subspace = create_new_subspace (space, ss_name, loadable, - code_only, common, + code_only, comdat, common, dup_common, zero, sort, access, space_index, - alignment, quadrant, section); + alignment, quadrant, section); demand_empty_rest_of_line (); current_subspace->ssd_seg = section; @@ -7782,6 +7801,7 @@ pa_spaces_begin () create_new_subspace (space, name, pa_def_subspaces[i].loadable, pa_def_subspaces[i].code_only, + pa_def_subspaces[i].comdat, pa_def_subspaces[i].common, pa_def_subspaces[i].dup_common, pa_def_subspaces[i].zero, @@ -7883,12 +7903,12 @@ create_new_space (name, spnum, loadable, order as defined by the SORT entries. */ static ssd_chain_struct * -create_new_subspace (space, name, loadable, code_only, common, +create_new_subspace (space, name, loadable, code_only, comdat, common, dup_common, is_zero, sort, access, space_index, alignment, quadrant, seg) sd_chain_struct *space; char *name; - int loadable, code_only, common, dup_common, is_zero; + int loadable, code_only, comdat, common, dup_common, is_zero; int sort; int access; int space_index; @@ -7945,8 +7965,8 @@ create_new_subspace (space, name, loadab } #ifdef obj_set_subsection_attributes - obj_set_subsection_attributes (seg, space->sd_seg, access, - sort, quadrant); + obj_set_subsection_attributes (seg, space->sd_seg, access, sort, + quadrant, comdat, common, dup_common); #endif return chain_entry; @@ -7956,12 +7976,13 @@ create_new_subspace (space, name, loadab various arguments. Return the modified subspace chain entry. */ static ssd_chain_struct * -update_subspace (space, name, loadable, code_only, common, dup_common, sort, - zero, access, space_index, alignment, quadrant, section) +update_subspace (space, name, loadable, code_only, comdat, common, dup_common, + sort, zero, access, space_index, alignment, quadrant, section) sd_chain_struct *space; char *name; int loadable; int code_only; + int comdat; int common; int dup_common; int zero; @@ -7977,8 +7998,8 @@ update_subspace (space, name, loadable, chain_entry = is_defined_subspace (name); #ifdef obj_set_subsection_attributes - obj_set_subsection_attributes (section, space->sd_seg, access, - sort, quadrant); + obj_set_subsection_attributes (section, space->sd_seg, access, sort, + quadrant, comdat, common, dup_common); #endif return chain_entry; diff -uprN binutils-2.15.90.0.3/gas/config/tc-i386.c binutils-2.15.91.0.1/gas/config/tc-i386.c --- binutils-2.15.90.0.3/gas/config/tc-i386.c 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/gas/config/tc-i386.c 2004-05-27 11:26:03.580307842 -0700 @@ -76,6 +76,9 @@ static void set_code_flag PARAMS ((int)) static void set_16bit_gcc_code_flag PARAMS ((int)); static void set_intel_syntax PARAMS ((int)); static void set_cpu_arch PARAMS ((int)); +#ifdef TE_PE +static void pe_directive_secrel PARAMS ((int)); +#endif static char *output_invalid PARAMS ((int c)); static int i386_operand PARAMS ((char *operand_string)); static int i386_intel_operand PARAMS ((char *operand_string, int got_a_float)); @@ -444,6 +447,9 @@ const pseudo_typeS md_pseudo_table[] = {"att_syntax", set_intel_syntax, 0}, {"file", (void (*) PARAMS ((int))) dwarf2_directive_file, 0}, {"loc", dwarf2_directive_loc, 0}, +#ifdef TE_PE + {"secrel32", pe_directive_secrel, 0}, +#endif {0, 0, 0} }; @@ -3638,6 +3644,50 @@ x86_cons (exp, size) } #endif +#ifdef TE_PE + +#define O_secrel (O_max + 1) + +void +x86_pe_cons_fix_new (frag, off, len, exp) + fragS *frag; + unsigned int off; + unsigned int len; + expressionS *exp; +{ + enum bfd_reloc_code_real r = reloc (len, 0, 0, NO_RELOC); + + if (exp->X_op == O_secrel) + { + exp->X_op = O_symbol; + r = BFD_RELOC_32_SECREL; + } + + fix_new_exp (frag, off, len, exp, 0, r); +} + +static void +pe_directive_secrel (dummy) + int dummy ATTRIBUTE_UNUSED; +{ + expressionS exp; + + do + { + expression (&exp); + if (exp.X_op == O_symbol) + exp.X_op = O_secrel; + + emit_expr (&exp, 4); + } + while (*input_line_pointer++ == ','); + + input_line_pointer--; + demand_empty_rest_of_line (); +} + +#endif + static int i386_immediate PARAMS ((char *)); static int @@ -5165,6 +5215,9 @@ tc_gen_reloc (section, fixp) case BFD_RELOC_RVA: case BFD_RELOC_VTABLE_ENTRY: case BFD_RELOC_VTABLE_INHERIT: +#ifdef TE_PE + case BFD_RELOC_32_SECREL: +#endif code = fixp->fx_r_type; break; default: diff -uprN binutils-2.15.90.0.3/gas/config/tc-i386.h binutils-2.15.91.0.1/gas/config/tc-i386.h --- binutils-2.15.90.0.3/gas/config/tc-i386.h 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/gas/config/tc-i386.h 2004-05-27 11:26:03.581307713 -0700 @@ -408,6 +408,12 @@ extern void x86_cons_fix_new PARAMS ((fragS *, unsigned int, unsigned int, expressionS *)); #endif +#ifdef TE_PE +#define TC_CONS_FIX_NEW(FRAG,OFF,LEN,EXP) x86_pe_cons_fix_new(FRAG, OFF, LEN, EXP) +extern void x86_pe_cons_fix_new + PARAMS ((fragS *, unsigned int, unsigned int, expressionS *)); +#endif + #define DIFF_EXPR_OK /* foo-. gets turned into PC relative relocs */ #define NO_RELOC BFD_RELOC_NONE diff -uprN binutils-2.15.90.0.3/gas/config/tc-ia64.c binutils-2.15.91.0.1/gas/config/tc-ia64.c --- binutils-2.15.90.0.3/gas/config/tc-ia64.c 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/gas/config/tc-ia64.c 2004-05-27 11:26:03.638300343 -0700 @@ -571,11 +571,6 @@ static char special_section_name[][20] = {".init_array"}, {".fini_array"} }; -static char *special_linkonce_name[] = - { - ".gnu.linkonce.ia64unw.", ".gnu.linkonce.ia64unwi." - }; - /* The best template for a particular sequence of up to three instructions: */ #define N IA64_NUM_TYPES @@ -755,6 +750,7 @@ static void dot_xfloat_cons_ua PARAMS (( static void print_prmask PARAMS ((valueT mask)); static void dot_pred_rel PARAMS ((int)); static void dot_reg_val PARAMS ((int)); +static void dot_serialize PARAMS ((int)); static void dot_dv_mode PARAMS ((int)); static void dot_entry PARAMS ((int)); static void dot_mem_offset PARAMS ((int)); @@ -908,36 +904,10 @@ static unw_rec_list *optimize_unw_record static void fixup_unw_records PARAMS ((unw_rec_list *, int)); static int convert_expr_to_ab_reg PARAMS ((expressionS *, unsigned int *, unsigned int *)); static int convert_expr_to_xy_reg PARAMS ((expressionS *, unsigned int *, unsigned int *)); -static void generate_unwind_image PARAMS ((const char *)); static unsigned int get_saved_prologue_count PARAMS ((unsigned long)); static void save_prologue_count PARAMS ((unsigned long, unsigned int)); static void free_saved_prologue_counts PARAMS ((void)); -/* Build the unwind section name by appending the (possibly stripped) - text section NAME to the unwind PREFIX. The resulting string - pointer is assigned to RESULT. The string is allocated on the - stack, so this must be a macro... */ -#define make_unw_section_name(special, text_name, result) \ - { \ - const char *_prefix = special_section_name[special]; \ - const char *_suffix = text_name; \ - size_t _prefix_len, _suffix_len; \ - char *_result; \ - if (strncmp (text_name, ".gnu.linkonce.t.", \ - sizeof (".gnu.linkonce.t.") - 1) == 0) \ - { \ - _prefix = special_linkonce_name[special - SPECIAL_SECTION_UNWIND]; \ - _suffix += sizeof (".gnu.linkonce.t.") - 1; \ - } \ - _prefix_len = strlen (_prefix), _suffix_len = strlen (_suffix); \ - _result = alloca (_prefix_len + _suffix_len + 1); \ - memcpy (_result, _prefix, _prefix_len); \ - memcpy (_result + _prefix_len, _suffix, _suffix_len); \ - _result[_prefix_len + _suffix_len] = '\0'; \ - result = _result; \ - } \ -while (0) - /* Determine if application register REGNUM resides in the integer unit (as opposed to the memory unit). */ static int @@ -3315,9 +3285,122 @@ dot_restorereg_p (dummy) add_unwind_entry (output_spill_reg_p (ab, reg, 0, 0, qp)); } +static char *special_linkonce_name[] = + { + ".gnu.linkonce.ia64unw.", ".gnu.linkonce.ia64unwi." + }; + static void -generate_unwind_image (text_name) - const char *text_name; +start_unwind_section (const segT text_seg, int sec_index) +{ + /* + Use a slightly ugly scheme to derive the unwind section names from + the text section name: + + text sect. unwind table sect. + name: name: comments: + ---------- ----------------- -------------------------------- + .text .IA_64.unwind + .text.foo .IA_64.unwind.text.foo + .foo .IA_64.unwind.foo + .gnu.linkonce.t.foo + .gnu.linkonce.ia64unw.foo + _info .IA_64.unwind_info gas issues error message (ditto) + _infoFOO .IA_64.unwind_infoFOO gas issues error message (ditto) + + This mapping is done so that: + + (a) An object file with unwind info only in .text will use + unwind section names .IA_64.unwind and .IA_64.unwind_info. + This follows the letter of the ABI and also ensures backwards + compatibility with older toolchains. + + (b) An object file with unwind info in multiple text sections + will use separate unwind sections for each text section. + This allows us to properly set the "sh_info" and "sh_link" + fields in SHT_IA_64_UNWIND as required by the ABI and also + lets GNU ld support programs with multiple segments + containing unwind info (as might be the case for certain + embedded applications). + + (c) An error is issued if there would be a name clash. + */ + + const char *text_name, *sec_text_name; + char *sec_name; + const char *prefix = special_section_name [sec_index]; + const char *suffix; + size_t prefix_len, suffix_len, sec_name_len; + + sec_text_name = segment_name (text_seg); + text_name = sec_text_name; + if (strncmp (text_name, "_info", 5) == 0) + { + as_bad ("Illegal section name `%s' (causes unwind section name clash)", + text_name); + ignore_rest_of_line (); + return; + } + if (strcmp (text_name, ".text") == 0) + text_name = ""; + + /* Build the unwind section name by appending the (possibly stripped) + text section name to the unwind prefix. */ + suffix = text_name; + if (strncmp (text_name, ".gnu.linkonce.t.", + sizeof (".gnu.linkonce.t.") - 1) == 0) + { + prefix = special_linkonce_name [sec_index - SPECIAL_SECTION_UNWIND]; + suffix += sizeof (".gnu.linkonce.t.") - 1; + } + + prefix_len = strlen (prefix); + suffix_len = strlen (suffix); + sec_name_len = prefix_len + suffix_len; + sec_name = alloca (sec_name_len + 1); + memcpy (sec_name, prefix, prefix_len); + memcpy (sec_name + prefix_len, suffix, suffix_len); + sec_name [sec_name_len] = '\0'; + + /* Handle COMDAT group. */ + if (suffix == text_name && (text_seg->flags & SEC_LINK_ONCE) != 0) + { + char *section; + size_t len, group_name_len; + const char *group_name = elf_group_name (text_seg); + + if (group_name == NULL) + { + as_bad ("Group section `%s' has no group signature", + sec_text_name); + ignore_rest_of_line (); + return; + } + /* We have to construct a fake section directive. */ + group_name_len = strlen (group_name); + len = (sec_name_len + + 16 /* ,"aG",@progbits, */ + + group_name_len /* ,group_name */ + + 7); /* ,comdat */ + + section = alloca (len + 1); + memcpy (section, sec_name, sec_name_len); + memcpy (section + sec_name_len, ",\"aG\",@progbits,", 16); + memcpy (section + sec_name_len + 16, group_name, group_name_len); + memcpy (section + len - 7, ",comdat", 7); + section [len] = '\0'; + set_section (section); + } + else + { + set_section (sec_name); + bfd_set_section_flags (stdoutput, now_seg, + SEC_LOAD | SEC_ALLOC | SEC_READONLY); + } +} + +static void +generate_unwind_image (const segT text_seg) { int size, pad; unw_rec_list *list; @@ -3350,14 +3433,10 @@ generate_unwind_image (text_name) /* If there are unwind records, switch sections, and output the info. */ if (size != 0) { - char *sec_name; expressionS exp; bfd_reloc_code_real_type reloc; - make_unw_section_name (SPECIAL_SECTION_UNWIND_INFO, text_name, sec_name); - set_section (sec_name); - bfd_set_section_flags (stdoutput, now_seg, - SEC_LOAD | SEC_ALLOC | SEC_READONLY); + start_unwind_section (text_seg, SPECIAL_SECTION_UNWIND_INFO); /* Make sure the section has 4 byte alignment for ILP32 and 8 byte alignment for LP64. */ @@ -3406,13 +3485,6 @@ static void dot_handlerdata (dummy) int dummy ATTRIBUTE_UNUSED; { - const char *text_name = segment_name (now_seg); - - /* If text section name starts with ".text" (which it should), - strip this prefix off. */ - if (strcmp (text_name, ".text") == 0) - text_name = ""; - unwind.force_unwind_entry = 1; /* Remember which segment we're in so we can switch back after .endp */ @@ -3422,7 +3494,7 @@ dot_handlerdata (dummy) /* Generate unwind info into unwind-info section and then leave that section as the currently active one so dataXX directives go into the language specific data area of the unwind info block. */ - generate_unwind_image (text_name); + generate_unwind_image (now_seg); demand_empty_rest_of_line (); } @@ -4057,7 +4129,6 @@ dot_endp (dummy) long where; segT saved_seg; subsegT saved_subseg; - const char *sec_name, *text_name; char *name, *p, c; symbolS *sym; @@ -4073,64 +4144,18 @@ dot_endp (dummy) saved_subseg = now_subseg; } - /* - Use a slightly ugly scheme to derive the unwind section names from - the text section name: - - text sect. unwind table sect. - name: name: comments: - ---------- ----------------- -------------------------------- - .text .IA_64.unwind - .text.foo .IA_64.unwind.text.foo - .foo .IA_64.unwind.foo - .gnu.linkonce.t.foo - .gnu.linkonce.ia64unw.foo - _info .IA_64.unwind_info gas issues error message (ditto) - _infoFOO .IA_64.unwind_infoFOO gas issues error message (ditto) - - This mapping is done so that: - - (a) An object file with unwind info only in .text will use - unwind section names .IA_64.unwind and .IA_64.unwind_info. - This follows the letter of the ABI and also ensures backwards - compatibility with older toolchains. - - (b) An object file with unwind info in multiple text sections - will use separate unwind sections for each text section. - This allows us to properly set the "sh_info" and "sh_link" - fields in SHT_IA_64_UNWIND as required by the ABI and also - lets GNU ld support programs with multiple segments - containing unwind info (as might be the case for certain - embedded applications). - - (c) An error is issued if there would be a name clash. - */ - text_name = segment_name (saved_seg); - if (strncmp (text_name, "_info", 5) == 0) - { - as_bad ("Illegal section name `%s' (causes unwind section name clash)", - text_name); - ignore_rest_of_line (); - return; - } - if (strcmp (text_name, ".text") == 0) - text_name = ""; - insn_group_break (1, 0, 0); /* If there wasn't a .handlerdata, we haven't generated an image yet. */ if (!unwind.info) - generate_unwind_image (text_name); + generate_unwind_image (saved_seg); if (unwind.info || unwind.force_unwind_entry) { subseg_set (md.last_text_seg, 0); unwind.proc_end = expr_build_dot (); - make_unw_section_name (SPECIAL_SECTION_UNWIND, text_name, sec_name); - set_section ((char *) sec_name); - bfd_set_section_flags (stdoutput, now_seg, - SEC_LOAD | SEC_ALLOC | SEC_READONLY); + start_unwind_section (saved_seg, SPECIAL_SECTION_UNWIND); /* Make sure that section has 4 byte alignment for ILP32 and 8 byte alignment for LP64. */ @@ -4627,6 +4652,23 @@ dot_reg_val (dummy) demand_empty_rest_of_line (); } +/* + .serialize.data + .serialize.instruction + */ +static void +dot_serialize (type) + int type; +{ + insn_group_break (0, 0, 0); + if (type) + instruction_serialization (); + else + data_serialization (); + insn_group_break (0, 0, 0); + demand_empty_rest_of_line (); +} + /* select dv checking mode .auto .explicit @@ -5009,6 +5051,8 @@ const pseudo_typeS md_pseudo_table[] = { "pred.rel.mutex", dot_pred_rel, 'm' }, { "pred.safe_across_calls", dot_pred_rel, 's' }, { "reg.val", dot_reg_val, 0 }, + { "serialize.data", dot_serialize, 0 }, + { "serialize.instruction", dot_serialize, 1 }, { "auto", dot_dv_mode, 'a' }, { "explicit", dot_dv_mode, 'e' }, { "default", dot_dv_mode, 'd' }, diff -uprN binutils-2.15.90.0.3/gas/config/tc-m68k.c binutils-2.15.91.0.1/gas/config/tc-m68k.c --- binutils-2.15.90.0.3/gas/config/tc-m68k.c 2004-03-03 12:24:34.000000000 -0800 +++ binutils-2.15.91.0.1/gas/config/tc-m68k.c 2004-05-27 11:26:03.662297239 -0700 @@ -130,6 +130,9 @@ static struct label_line *labels; static struct label_line *current_label; +/* Pointer to list holding the opcodes sorted by name. */ +static struct m68k_opcode const ** m68k_sorted_opcodes; + /* Its an arbitrary name: This means I don't approve of it. See flames below. */ static struct obstack robyn; @@ -235,14 +238,14 @@ struct m68k_it reloc[5]; /* Five is enough??? */ }; -#define cpu_of_arch(x) ((x) & (m68000up | mcf)) +#define cpu_of_arch(x) ((x) & (m68000up | mcfisa_a)) #define float_of_arch(x) ((x) & mfloat) #define mmu_of_arch(x) ((x) & mmmu) -#define arch_coldfire_p(x) ((x) & mcf) -#define arch_coldfire_v4e_p(x) ((x) & mcfv4e) +#define arch_coldfire_p(x) ((x) & mcfisa_a) +#define arch_coldfire_fpu(x) ((x) & cfloat) /* Macros for determining if cpu supports a specific addressing mode. */ -#define HAVE_LONG_BRANCH(x) ((x) & (m68020|m68030|m68040|m68060|cpu32|mcf5407|mcfv4e)) +#define HAVE_LONG_BRANCH(x) ((x) & (m68020|m68030|m68040|m68060|cpu32|mcfisa_b)) static struct m68k_it the_ins; /* The instruction being assembled. */ @@ -361,62 +364,85 @@ static void s_mri_endw PARAMS ((int)); static void md_convert_frag_1 PARAMS ((fragS *)); static int current_architecture; +static int current_chip; struct m68k_cpu { unsigned long arch; + unsigned long chip; const char *name; int alias; }; static const struct m68k_cpu archs[] = { - { m68000, "68000", 0 }, - { m68010, "68010", 0 }, - { m68020, "68020", 0 }, - { m68030, "68030", 0 }, - { m68040, "68040", 0 }, - { m68060, "68060", 0 }, - { cpu32, "cpu32", 0 }, - { m68881, "68881", 0 }, - { m68851, "68851", 0 }, - { mcf5200, "5200", 0 }, - { mcf5206e,"5206e", 0 }, - { mcf528x, "528x", 0 }, - { mcf5307, "5307", 0 }, - { mcf5407, "5407", 0 }, - { mcfv4e, "cfv4e", 0 }, + { m68000, m68000, "68000", 0 }, + { m68010, m68010, "68010", 0 }, + { m68020, m68020, "68020", 0 }, + { m68030, m68030, "68030", 0 }, + { m68040, m68040, "68040", 0 }, + { m68060, m68060, "68060", 0 }, + { cpu32, cpu32, "cpu32", 0 }, + { m68881, m68881, "68881", 0 }, + { m68851, m68851, "68851", 0 }, + { mcfisa_a, mcf5200, "5200", 0 }, + { mcfisa_a|mcfhwdiv|mcfmac, mcf5206e, "5206e", 0 }, + { mcfisa_a|mcfisa_aa|mcfhwdiv|mcfemac|mcfusp, mcf521x, "521x", 0 }, + { mcfisa_a|mcfhwdiv|mcfemac, mcf5249, "5249", 0 }, + { mcfisa_a|mcfisa_aa|mcfhwdiv|mcfemac|mcfusp, mcf528x, "528x", 0 }, + { mcfisa_a|mcfhwdiv|mcfmac, mcf5307, "5307", 0 }, + { mcfisa_a|mcfhwdiv|mcfisa_b|mcfmac, mcf5407, "5407", 0 }, + { mcfisa_a|mcfhwdiv|mcfisa_b|mcfemac|mcfusp|cfloat, mcf5470, "547x", 0 }, + { mcfisa_a|mcfhwdiv|mcfisa_b|mcfemac|mcfusp|cfloat, mcf5480, "548x", 0 }, /* Aliases (effectively, so far as gas is concerned) for the above cpus. */ - { m68020, "68k", 1 }, - { m68000, "68008", 1 }, - { m68000, "68302", 1 }, - { m68000, "68306", 1 }, - { m68000, "68307", 1 }, - { m68000, "68322", 1 }, - { m68000, "68356", 1 }, - { m68000, "68ec000", 1 }, - { m68000, "68hc000", 1 }, - { m68000, "68hc001", 1 }, - { m68020, "68ec020", 1 }, - { m68030, "68ec030", 1 }, - { m68040, "68ec040", 1 }, - { m68060, "68ec060", 1 }, - { cpu32, "68330", 1 }, - { cpu32, "68331", 1 }, - { cpu32, "68332", 1 }, - { cpu32, "68333", 1 }, - { cpu32, "68334", 1 }, - { cpu32, "68336", 1 }, - { cpu32, "68340", 1 }, - { cpu32, "68341", 1 }, - { cpu32, "68349", 1 }, - { cpu32, "68360", 1 }, - { m68881, "68882", 1 }, - { mcf5200, "5202", 1 }, - { mcf5200, "5204", 1 }, - { mcf5200, "5206", 1 }, - { mcf5407, "cfv4", 1 }, + { m68020, m68020, "68k", 1 }, + { m68000, m68000, "68008", 1 }, + { m68000, m68000, "68302", 1 }, + { m68000, m68000, "68306", 1 }, + { m68000, m68000, "68307", 1 }, + { m68000, m68000, "68322", 1 }, + { m68000, m68000, "68356", 1 }, + { m68000, m68000, "68ec000", 1 }, + { m68000, m68000, "68hc000", 1 }, + { m68000, m68000, "68hc001", 1 }, + { m68020, m68020, "68ec020", 1 }, + { m68030, m68030, "68ec030", 1 }, + { m68040, m68040, "68ec040", 1 }, + { m68060, m68060, "68ec060", 1 }, + { cpu32, cpu32, "68330", 1 }, + { cpu32, cpu32, "68331", 1 }, + { cpu32, cpu32, "68332", 1 }, + { cpu32, cpu32, "68333", 1 }, + { cpu32, cpu32, "68334", 1 }, + { cpu32, cpu32, "68336", 1 }, + { cpu32, cpu32, "68340", 1 }, + { cpu32, cpu32, "68341", 1 }, + { cpu32, cpu32, "68349", 1 }, + { cpu32, cpu32, "68360", 1 }, + { m68881, m68881, "68882", 1 }, + { mcfisa_a, mcf5200, "5202", 1 }, + { mcfisa_a, mcf5200, "5204", 1 }, + { mcfisa_a, mcf5200, "5206", 1 }, + { mcfisa_a|mcfhwdiv|mcfisa_aa|mcfemac, mcf521x, "5214", 1 }, + { mcfisa_a|mcfhwdiv|mcfisa_aa|mcfemac, mcf521x, "5216", 1 }, + { mcfisa_a|mcfisa_aa|mcfhwdiv|mcfemac, mcf528x, "5280", 1 }, + { mcfisa_a|mcfisa_aa|mcfhwdiv|mcfemac, mcf528x, "5281", 1 }, + { mcfisa_a|mcfisa_aa|mcfhwdiv|mcfemac, mcf528x, "5282", 1 }, + { mcfisa_a|mcfhwdiv|mcfisa_b|mcfmac, mcf5407, "cfv4", 1 }, + { mcfisa_a|mcfhwdiv|mcfisa_b|mcfemac|mcfusp|cfloat, mcf5470, "5470", 1 }, + { mcfisa_a|mcfhwdiv|mcfisa_b|mcfemac|mcfusp|cfloat, mcf5470, "5471", 1 }, + { mcfisa_a|mcfhwdiv|mcfisa_b|mcfemac|mcfusp|cfloat, mcf5470, "5472", 1 }, + { mcfisa_a|mcfhwdiv|mcfisa_b|mcfemac|mcfusp|cfloat, mcf5470, "5473", 1 }, + { mcfisa_a|mcfhwdiv|mcfisa_b|mcfemac|mcfusp|cfloat, mcf5470, "5474", 1 }, + { mcfisa_a|mcfhwdiv|mcfisa_b|mcfemac|mcfusp|cfloat, mcf5470, "5475", 1 }, + { mcfisa_a|mcfhwdiv|mcfisa_b|mcfemac|mcfusp|cfloat, mcf5470, "5480", 1 }, + { mcfisa_a|mcfhwdiv|mcfisa_b|mcfemac|mcfusp|cfloat, mcf5470, "5481", 1 }, + { mcfisa_a|mcfhwdiv|mcfisa_b|mcfemac|mcfusp|cfloat, mcf5470, "5482", 1 }, + { mcfisa_a|mcfhwdiv|mcfisa_b|mcfemac|mcfusp|cfloat, mcf5470, "5483", 1 }, + { mcfisa_a|mcfhwdiv|mcfisa_b|mcfemac|mcfusp|cfloat, mcf5470, "5484", 1 }, + { mcfisa_a|mcfhwdiv|mcfisa_b|mcfemac|mcfusp|cfloat, mcf5470, "5485", 1 }, + { mcfisa_a|mcfhwdiv|mcfisa_b|mcfemac|mcfusp|cfloat, mcf5470, "cfv4e", 1 }, }; static const int n_archs = sizeof (archs) / sizeof (archs[0]); @@ -660,12 +686,80 @@ static char alt_notend_table[256]; || (*s == ':' \ && alt_notend_table[(unsigned char) s[1]]))) +/* Return a human readable string holding the list of chips that are + valid for a particular architecture, suppressing aliases (unless + there is only one of them). */ + +static char * +find_cf_chip (int architecture) +{ + static char buf[1024]; + int i, j, n_chips, n_alias; + char *cp; + + strcpy (buf, " ("); + cp = buf + strlen (buf); + + for (i = 0, n_chips = 0, n_alias = 0; i < n_archs; ++i) + if (archs[i].arch & architecture) + { + n_chips++; + if (archs[i].alias) + n_alias++; + } + + if (n_chips == 0) + as_fatal (_("no matching ColdFire architectures found")); + + if (n_alias > 1) + n_chips -= n_alias; + + for (i = 0, j = 0; i < n_archs && j < n_chips; ++i) + if (archs[i].arch & architecture) + { + if (j) + { + if (((j == n_chips - 1) && !(n_alias > 1))|| ! n_alias) + { + if (n_chips == 2) + { + strncpy (cp, _(" or "), (sizeof (buf) - (cp - buf))); + cp += strlen (cp); + } + else + { + strncpy (cp, _(", or "), (sizeof (buf) - (cp - buf))); + cp += strlen (cp); + } + } + else + { + strncpy (cp, ", ", (sizeof (buf) - (cp - buf))); + cp += strlen (cp); + } + } + strncpy (cp, archs[i].name, (sizeof (buf) - (cp - buf))); + cp += strlen (cp); + j++; + } + + if (n_alias > 1) + { + strncpy (cp, _(", or aliases"), (sizeof (buf) - (cp - buf))); + cp += strlen (cp); + } + + strncpy (cp, ")", (sizeof (buf) - (cp - buf))); + + return buf; +} + #if defined (M68KCOFF) && !defined (BFD_ASSEMBLER) #ifdef NO_PCREL_RELOCS int -make_pcrel_absolute(fixP, add_number) +make_pcrel_absolute (fixP, add_number) fixS *fixP; long *add_number; { @@ -677,14 +771,14 @@ make_pcrel_absolute(fixP, add_number) if (opcode[0] == 0x60 && opcode[1] == 0xff) /* BRA -> JMP. */ { if (flag_keep_pcrel) - as_fatal(_("Tried to convert PC relative branch to absolute jump")); + as_fatal (_("Tried to convert PC relative branch to absolute jump")); opcode[0] = 0x4e; opcode[1] = 0xf9; } else if (opcode[0] == 0x61 && opcode[1] == 0xff) /* BSR -> JSR. */ { if (flag_keep_pcrel) - as_fatal(_("Tried to convert PC relative BSR to absolute JSR")); + as_fatal (_("Tried to convert PC relative BSR to absolute JSR")); opcode[0] = 0x4e; opcode[1] = 0xb9; } @@ -1505,6 +1599,14 @@ m68k_ip (instring) ++losing; break; + case '4': + if (opP->mode != AINDR && opP->mode != AINC && opP->mode != ADEC + && (opP->mode != DISP + || opP->reg < ADDR0 + || opP->reg > ADDR7)) + ++losing; + break; + case 'B': /* FOO */ if (opP->mode != ABSL || (flag_long_jumps @@ -1552,6 +1654,12 @@ m68k_ip (instring) losing++; break; + case 'e': + if (opP->reg != ACC && opP->reg != ACC1 + && opP->reg != ACC2 && opP->reg != ACC3) + losing++; + break; + case 'F': if (opP->mode != FPREG) losing++; @@ -1562,6 +1670,11 @@ m68k_ip (instring) losing++; break; + case 'g': + if (opP->reg != ACCEXT01 && opP->reg != ACCEXT23) + losing++; + break; + case 'H': if (opP->reg != MASK) losing++; @@ -1574,6 +1687,11 @@ m68k_ip (instring) losing++; break; + case 'i': + if (opP->mode != LSH && opP->mode != RSH) + losing++; + break; + case 'J': if (opP->mode != CONTROL || opP->reg < USP @@ -1901,13 +2019,40 @@ m68k_ip (instring) { char buf[200], *cp; - strcpy (buf, - _("invalid instruction for this architecture; needs ")); + strncpy (buf, + _("invalid instruction for this architecture; needs "), sizeof (buf)); cp = buf + strlen (buf); switch (ok_arch) { + case mcfisa_a: + strncpy (cp, _("ColdFire ISA_A"), (sizeof (buf) - (cp - buf))); + cp += strlen (cp); + strncpy (cp, find_cf_chip (ok_arch), (sizeof (buf) - (cp - buf))); + cp += strlen (cp); + break; + case mcfhwdiv: + strncpy (cp, _("ColdFire hardware divide"), (sizeof (buf) - (cp - buf))); + cp += strlen (cp); + strncpy (cp, find_cf_chip (ok_arch), (sizeof (buf) - (cp - buf))); + cp += strlen (cp); + break; + case mcfisa_aa: + strncpy (cp, _("ColdFire ISA_A+"), (sizeof (buf) - (cp - buf))); + cp += strlen (cp); + strncpy (cp, find_cf_chip (ok_arch), (sizeof (buf) - (cp - buf))); + cp += strlen (cp); + break; + case mcfisa_b: + strncpy (cp, _("ColdFire ISA_B"), (sizeof (buf) - (cp - buf))); + cp += strlen (cp); + strncpy (cp, find_cf_chip (ok_arch), (sizeof (buf) - (cp - buf))); + cp += strlen (cp); + break; case cfloat: - strcpy (cp, _("ColdFire fpu (cfv4e)")); + strncpy (cp, _("ColdFire fpu"), (sizeof (buf) - (cp - buf))); + cp += strlen (cp); + strncpy (cp, find_cf_chip (ok_arch), (sizeof (buf) - (cp - buf))); + cp += strlen (cp); break; case mfloat: strcpy (cp, _("fpu (68040, 68060 or 68881/68882)")); @@ -1927,9 +2072,8 @@ m68k_ip (instring) default: { int got_one = 0, idx; - for (idx = 0; - idx < (int) (sizeof (archs) / sizeof (archs[0])); - idx++) + + for (idx = 0; idx < n_archs; idx++) { if ((archs[idx].arch & ok_arch) && ! archs[idx].alias) @@ -1994,6 +2138,7 @@ m68k_ip (instring) case 'w': case 'y': case 'z': + case '4': #ifndef NO_68851 case '|': #endif @@ -2256,7 +2401,7 @@ m68k_ip (instring) && cpu_of_arch (current_architecture) < m68020) || (opP->index.scale == 8 && (arch_coldfire_p (current_architecture) - && !arch_coldfire_v4e_p(current_architecture)))) + && !arch_coldfire_fpu (current_architecture)))) { opP->error = _("scale factor invalid on this architecture; needs cpu32 or 68020 or higher"); @@ -2519,6 +2664,16 @@ m68k_ip (instring) as_bad (_("unknown/incorrect operand")); /* abort (); */ } + + /* If s[0] is '4', then this is for the mac instructions + that can have a trailing_ampersand set. If so, set 0x100 + bit on tmpreg so install_gen_operand can check for it and + set the appropriate bit (word2, bit 5). */ + if (s[0] == '4') + { + if (opP->trailing_ampersand) + tmpreg |= 0x100; + } install_gen_operand (s[1], tmpreg); break; @@ -2737,6 +2892,10 @@ m68k_ip (instring) install_operand (s[1], opP->reg - DATA); break; + case 'e': /* EMAC ACCx, reg/reg. */ + install_operand (s[1], opP->reg - ACC); + break; + case 'E': /* Ignore it. */ break; @@ -2744,6 +2903,10 @@ m68k_ip (instring) install_operand (s[1], opP->reg - FP0); break; + case 'g': /* EMAC ACCEXTx. */ + install_operand (s[1], opP->reg - ACCEXT01); + break; + case 'G': /* Ignore it. */ case 'H': break; @@ -2753,6 +2916,10 @@ m68k_ip (instring) install_operand (s[1], tmpreg); break; + case 'i': /* MAC/EMAC scale factor. */ + install_operand (s[1], opP->mode == LSH ? 0x1 : 0x3); + break; + case 'J': /* JF foo. */ switch (opP->reg) { @@ -3286,30 +3453,51 @@ install_operand (mode, val) the_ins.opcode[0] |= ((val & 0x7) << 9); the_ins.opcode[1] |= ((val & 0x10) << (7 - 4)); break; - case 'n': + case 'n': /* MAC/EMAC Rx on !load. */ the_ins.opcode[0] |= ((val & 0x8) << (6 - 3)); the_ins.opcode[0] |= ((val & 0x7) << 9); + the_ins.opcode[1] |= ((val & 0x10) << (7 - 4)); break; - case 'o': + case 'o': /* MAC/EMAC Rx on load. */ the_ins.opcode[1] |= val << 12; the_ins.opcode[1] |= ((val & 0x10) << (7 - 4)); break; - case 'M': + case 'M': /* MAC/EMAC Ry on !load. */ the_ins.opcode[0] |= (val & 0xF); the_ins.opcode[1] |= ((val & 0x10) << (6 - 4)); break; - case 'N': + case 'N': /* MAC/EMAC Ry on load. */ the_ins.opcode[1] |= (val & 0xF); the_ins.opcode[1] |= ((val & 0x10) << (6 - 4)); break; case 'h': the_ins.opcode[1] |= ((val != 1) << 10); break; + case 'F': + the_ins.opcode[0] |= ((val & 0x3) << 9); + break; + case 'f': + the_ins.opcode[0] |= ((val & 0x3) << 0); + break; + case 'G': /* EMAC accumulator in a EMAC load instruction. */ + the_ins.opcode[0] |= ((~val & 0x1) << 7); + the_ins.opcode[1] |= ((val & 0x2) << (4 - 1)); + break; + case 'H': /* EMAC accumulator in a EMAC non-load instruction. */ + the_ins.opcode[0] |= ((val & 0x1) << 7); + the_ins.opcode[1] |= ((val & 0x2) << (4 - 1)); + break; + case 'I': + the_ins.opcode[1] |= ((val & 0x3) << 9); + break; + case ']': + the_ins.opcode[0] |= (val & 0x1) <<10; + break; case 'c': default: as_fatal (_("failed sanity check.")); } -} /* install_operand() */ +} static void install_gen_operand (mode, val) @@ -3318,6 +3506,11 @@ install_gen_operand (mode, val) { switch (mode) { + case '/': /* Special for mask loads for mac/msac insns with + possible mask; trailing_ampersend set in bit 8. */ + the_ins.opcode[0] |= (val & 0x3f); + the_ins.opcode[1] |= (((val & 0x100) >> 8) << 5); + break; case 's': the_ins.opcode[0] |= val; break; @@ -3338,12 +3531,10 @@ install_gen_operand (mode, val) default: as_fatal (_("failed sanity check.")); } -} /* install_gen_operand() */ +} -/* - * verify that we have some number of paren pairs, do m68k_ip_op(), and - * then deal with the bitfield hack. - */ +/* Verify that we have some number of paren pairs, do m68k_ip_op(), and + then deal with the bitfield hack. */ static char * crack_operand (str, opP) @@ -3507,6 +3698,12 @@ static const struct init_entry init_tabl { "cc", CCR }, { "acc", ACC }, + { "acc0", ACC }, + { "acc1", ACC1 }, + { "acc2", ACC2 }, + { "acc3", ACC3 }, + { "accext01", ACCEXT01 }, + { "accext23", ACCEXT23 }, { "macsr", MACSR }, { "mask", MASK }, @@ -3919,13 +4116,37 @@ md_assemble (str) } } +/* Comparison function used by qsort to rank the opcode entries by name. */ + +static int +m68k_compare_opcode (const void * v1, const void * v2) +{ + struct m68k_opcode * op1, * op2; + int ret; + + op1 = *(struct m68k_opcode **) v1; + op2 = *(struct m68k_opcode **) v2; + + /* Compare the two names. If different, return the comparison. + If the same, return the order they are in the opcode table. */ + ret = strcmp (op1->name, op2->name); + if (ret) + return ret; + if (op1 < op2) + return -1; + return 0; +} + void -md_begin () +md_begin (void) { - /* - * md_begin -- set up hash tables with 68000 instructions. - * similar to what the vax assembler does. ---phr - */ + const struct m68k_opcode *ins; + struct m68k_incant *hack, *slak; + const char *retval = 0; /* Empty string, or error msg text. */ + int i; + + /* Set up hash tables with 68000 instructions. + similar to what the vax assembler does. */ /* RMS claims the thing to do is take the m68k-opcode.h table, and make a copy of it at runtime, adding in the information we want but isn't there. I think it'd be better to have an awk script hack the table @@ -3933,11 +4154,6 @@ md_begin () my lord ghod hath spoken, so we do it this way. Excuse the ugly var names. */ - const struct m68k_opcode *ins; - struct m68k_incant *hack, *slak; - const char *retval = 0; /* Empty string, or error msg text. */ - int i; - if (flag_mri) { flag_reg_prefix_optional = 1; @@ -3946,6 +4162,20 @@ md_begin () m68k_rel32 = 0; } + /* First sort the opcode table into alphabetical order to seperate + the order that the assembler wants to see the opcodes from the + order that the disassembler wants to see them. */ + m68k_sorted_opcodes = xmalloc (m68k_numopcodes * sizeof (* m68k_sorted_opcodes)); + if (!m68k_sorted_opcodes) + as_fatal (_("Internal Error: Can't allocate m68k_sorted_opcodes of size %d"), + m68k_numopcodes * sizeof (* m68k_sorted_opcodes)); + + for (i = m68k_numopcodes; i--;) + m68k_sorted_opcodes[i] = m68k_opcodes + i; + + qsort (m68k_sorted_opcodes, m68k_numopcodes, + sizeof (m68k_sorted_opcodes[0]), m68k_compare_opcode); + op_hash = hash_new (); obstack_begin (&robyn, 4000); @@ -3954,9 +4184,10 @@ md_begin () hack = slak = (struct m68k_incant *) obstack_alloc (&robyn, sizeof (struct m68k_incant)); do { - ins = &m68k_opcodes[i]; - /* We *could* ignore insns that don't match our arch here - but just leaving them out of the hash. */ + ins = m68k_sorted_opcodes[i]; + + /* We *could* ignore insns that don't match our + arch here by just leaving them out of the hash. */ slak->m_operands = ins->args; slak->m_opnum = strlen (slak->m_operands) / 2; slak->m_arch = ins->arch; @@ -3964,9 +4195,9 @@ md_begin () /* This is kludgey. */ slak->m_codenum = ((ins->match) & 0xffffL) ? 2 : 1; if (i + 1 != m68k_numopcodes - && !strcmp (ins->name, m68k_opcodes[i + 1].name)) + && !strcmp (ins->name, m68k_sorted_opcodes[i + 1]->name)) { - slak->m_next = (struct m68k_incant *) obstack_alloc (&robyn, sizeof (struct m68k_incant)); + slak->m_next = obstack_alloc (&robyn, sizeof (struct m68k_incant)); i++; } else @@ -3985,6 +4216,7 @@ md_begin () const char *name = m68k_opcode_aliases[i].primary; const char *alias = m68k_opcode_aliases[i].alias; PTR val = hash_find (op_hash, name); + if (!val) as_fatal (_("Internal Error: Can't find %s in hash table"), name); retval = hash_insert (op_hash, alias, val); @@ -4023,6 +4255,7 @@ md_begin () const char *name = mri_aliases[i].primary; const char *alias = mri_aliases[i].alias; PTR val = hash_find (op_hash, name); + if (!val) as_fatal (_("Internal Error: Can't find %s in hash table"), name); retval = hash_jam (op_hash, alias, val); @@ -4036,6 +4269,7 @@ md_begin () notend_table[i] = 0; alt_notend_table[i] = 0; } + notend_table[','] = 1; notend_table['{'] = 1; notend_table['}'] = 1; @@ -4052,18 +4286,15 @@ md_begin () #endif /* We need to put '(' in alt_notend_table to handle - cas2 %d0:%d2,%d3:%d4,(%a0):(%a1) - */ + cas2 %d0:%d2,%d3:%d4,(%a0):(%a1) */ alt_notend_table['('] = 1; /* We need to put '@' in alt_notend_table to handle - cas2 %d0:%d2,%d3:%d4,@(%d0):@(%d1) - */ + cas2 %d0:%d2,%d3:%d4,@(%d0):@(%d1) */ alt_notend_table['@'] = 1; /* We need to put digits in alt_notend_table to handle - bfextu %d0{24:1},%d0 - */ + bfextu %d0{24:1},%d0 */ alt_notend_table['0'] = 1; alt_notend_table['1'] = 1; alt_notend_table['2'] = 1; @@ -4080,10 +4311,10 @@ md_begin () gas expects pseudo ops to start with a dot. */ { int n = 0; + while (mote_pseudo_table[n].poc_name) { - hack = (struct m68k_incant *) - obstack_alloc (&robyn, sizeof (struct m68k_incant)); + hack = obstack_alloc (&robyn, sizeof (struct m68k_incant)); hash_insert (op_hash, mote_pseudo_table[n].poc_name, (char *) hack); hack->m_operands = 0; @@ -4106,10 +4337,11 @@ static void select_control_regs () { /* Note which set of "movec" control registers is available. */ - switch (cpu_of_arch (current_architecture)) + switch (current_chip) { case 0: - as_warn (_("architecture not yet selected: defaulting to 68020")); + if (verbose) + as_warn (_("architecture not yet selected: defaulting to 68020")); control_regs = m68020_control_regs; break; @@ -4139,9 +4371,11 @@ select_control_regs () control_regs = mcf_control_regs; break; case mcf528x: + case mcf521x: control_regs = mcf528x_control_regs; break; - case mcfv4e: + case mcf5470: + case mcf5480: control_regs = mcfv4e_control_regs; break; default: @@ -4175,9 +4409,7 @@ m68k_init_after_args () if (current_architecture & m68851) { if (current_architecture & m68040) - { - as_warn (_("68040 and 68851 specified; mmu instructions may assemble incorrectly")); - } + as_warn (_("68040 and 68851 specified; mmu instructions may assemble incorrectly")); } /* What other incompatibilities could we check for? */ @@ -4186,17 +4418,16 @@ m68k_init_after_args () && (cpu_of_arch (current_architecture) /* Can CPU32 have a 68881 coprocessor?? */ & (m68020 | m68030 | cpu32))) - { - current_architecture |= m68881; - } + current_architecture |= m68881; + if (!no_68851 && (cpu_of_arch (current_architecture) & m68020up) != 0 && (cpu_of_arch (current_architecture) & m68040up) == 0) - { - current_architecture |= m68851; - } + current_architecture |= m68851; + if (no_68881 && (current_architecture & m68881)) as_bad (_("options for 68881 and no-68881 both given")); + if (no_68851 && (current_architecture & m68851)) as_bad (_("options for 68851 and no-68851 both given")); @@ -4549,7 +4780,7 @@ md_convert_frag_1 (fragP) if (fragP->fr_opcode[0] == 0x61) /* jbsr */ { if (flag_keep_pcrel) - as_fatal(_("Tried to convert PC relative BSR to absolute JSR")); + as_fatal (_("Tried to convert PC relative BSR to absolute JSR")); fragP->fr_opcode[0] = 0x4E; fragP->fr_opcode[1] = (char) 0xB9; /* JSR with ABSL LONG operand. */ fix_new (fragP, fragP->fr_fix, 4, fragP->fr_symbol, fragP->fr_offset, @@ -4559,7 +4790,7 @@ md_convert_frag_1 (fragP) else if (fragP->fr_opcode[0] == 0x60) /* jbra */ { if (flag_keep_pcrel) - as_fatal(_("Tried to convert PC relative branch to absolute jump")); + as_fatal (_("Tried to convert PC relative branch to absolute jump")); fragP->fr_opcode[0] = 0x4E; fragP->fr_opcode[1] = (char) 0xF9; /* JMP with ABSL LONG operand. */ fix_new (fragP, fragP->fr_fix, 4, fragP->fr_symbol, fragP->fr_offset, @@ -4575,7 +4806,7 @@ md_convert_frag_1 (fragP) break; case TAB (BRABSJCOND, LONG): if (flag_keep_pcrel) - as_fatal(_("Tried to convert PC relative conditional branch to absolute jump")); + as_fatal (_("Tried to convert PC relative conditional branch to absolute jump")); /* Only Bcc 68000 instructions can come here Change bcc into b!cc/jmp absl long. */ @@ -4615,7 +4846,7 @@ md_convert_frag_1 (fragP) Change dbcc into dbcc/bral. JF: these used to be fr_opcode[2-7], but that's wrong. */ if (flag_keep_pcrel) - as_fatal(_("Tried to convert DBcc to absolute jump")); + as_fatal (_("Tried to convert DBcc to absolute jump")); *buffer_address++ = 0x00; /* Branch offset = 4. */ *buffer_address++ = 0x04; @@ -4634,7 +4865,7 @@ md_convert_frag_1 (fragP) Change dbcc into dbcc/jmp. JF: these used to be fr_opcode[2-7], but that's wrong. */ if (flag_keep_pcrel) - as_fatal(_("Tried to convert PC relative conditional branch to absolute jump")); + as_fatal (_("Tried to convert PC relative conditional branch to absolute jump")); *buffer_address++ = 0x00; /* Branch offset = 4. */ *buffer_address++ = 0x04; @@ -4698,7 +4929,7 @@ md_convert_frag_1 (fragP) break; case TAB (ABSTOPCREL, LONG): if (flag_keep_pcrel) - as_fatal(_("Tried to convert PC relative conditional branch to absolute jump")); + as_fatal (_("Tried to convert PC relative conditional branch to absolute jump")); /* The thing to do here is force it to ABSOLUTE LONG, since ABSTOPCREL is really trying to shorten an ABSOLUTE address anyway. */ if ((fragP->fr_opcode[1] & 0x3F) != 0x3A) @@ -4958,10 +5189,10 @@ md_create_long_jump (ptr, from_addr, to_ { valueT offset; - if (!HAVE_LONG_BRANCH(current_architecture)) + if (!HAVE_LONG_BRANCH (current_architecture)) { if (flag_keep_pcrel) - as_fatal(_("Tried to convert PC relative branch to absolute jump")); + as_fatal (_("Tried to convert PC relative branch to absolute jump")); offset = to_addr - S_GET_VALUE (to_symbol); md_number_to_chars (ptr, (valueT) 0x4EF9, 2); md_number_to_chars (ptr + 2, (valueT) offset, 4); @@ -5227,6 +5458,7 @@ mri_chip () else current_architecture &= m68881 | m68851; current_architecture |= archs[i].arch; + current_chip |= archs[i].chip; while (*input_line_pointer == '/') { @@ -5605,6 +5837,7 @@ struct save_opts int keep_locals; int short_refs; int architecture; + int chip; int quick; int rel32; int listing; @@ -5630,6 +5863,7 @@ s_save (ignore) s->keep_locals = flag_keep_locals; s->short_refs = flag_short_refs; s->architecture = current_architecture; + s->chip = current_chip; s->quick = m68k_quick; s->rel32 = m68k_rel32; s->listing = listing; @@ -5664,6 +5898,7 @@ s_restore (ignore) flag_keep_locals = s->keep_locals; flag_short_refs = s->short_refs; current_architecture = s->architecture; + current_chip = s->chip; m68k_quick = s->quick; m68k_rel32 = s->rel32; listing = s->listing; @@ -7016,6 +7251,7 @@ md_parse_option (c, arg) { current_architecture &= ~m68000up; current_architecture |= arch; + current_chip |= archs[i].chip; } else if (arch == m68881) { @@ -7133,8 +7369,8 @@ md_show_usage (stream) -l use 1 word for refs to undefined symbols [default 2]\n\ -m68000 | -m68008 | -m68010 | -m68020 | -m68030 | -m68040 | -m68060 |\n\ -m68302 | -m68331 | -m68332 | -m68333 | -m68340 | -m68360 | -mcpu32 |\n\ --m5200 | -m5202 | -m5204 | -m5206 | -m5206e | -m528x | -m5307 |\n\ --m5407 | -mcfv4 | -mcfv4e\n\ +-m5200 | -m5202 | -m5204 | -m5206 | -m5206e | -m521x | -m5249 |\n\ +-m528x | -m5307 | -m5407 | -m547x | -m548x | -mcfv4 | -mcfv4e\n\ specify variant of 680X0 architecture [default %s]\n\ -m68881 | -m68882 | -mno-68881 | -mno-68882\n\ target has/lacks floating-point coprocessor\n\ diff -uprN binutils-2.15.90.0.3/gas/config/tc-mips.c binutils-2.15.91.0.1/gas/config/tc-mips.c --- binutils-2.15.90.0.3/gas/config/tc-mips.c 2004-04-14 21:26:05.000000000 -0700 +++ binutils-2.15.91.0.1/gas/config/tc-mips.c 2004-05-27 11:26:03.765283921 -0700 @@ -111,9 +111,7 @@ static char *mips_regmask_frag; extern int target_big_endian; /* The name of the readonly data section. */ -#define RDATA_SECTION_NAME (OUTPUT_FLAVOR == bfd_target_aout_flavour \ - ? ".data" \ - : OUTPUT_FLAVOR == bfd_target_ecoff_flavour \ +#define RDATA_SECTION_NAME (OUTPUT_FLAVOR == bfd_target_ecoff_flavour \ ? ".rdata" \ : OUTPUT_FLAVOR == bfd_target_coff_flavour \ ? ".rdata" \ @@ -281,13 +279,11 @@ static int mips_32bitmode = 0; #define HAVE_64BIT_OBJECTS (mips_abi == N64_ABI) -/* We can only have 64bit addresses if the object file format - supports it. */ +/* We can only have 64bit addresses if the object file format supports it. */ #define HAVE_32BIT_ADDRESSES \ (HAVE_32BIT_GPRS \ - || ((bfd_arch_bits_per_address (stdoutput) == 32 \ - || ! HAVE_64BIT_OBJECTS) \ - && mips_pic != EMBEDDED_PIC)) + || (bfd_arch_bits_per_address (stdoutput) == 32 \ + || ! HAVE_64BIT_OBJECTS)) \ #define HAVE_64BIT_ADDRESSES (! HAVE_32BIT_ADDRESSES) @@ -346,7 +342,6 @@ static int mips_32bitmode = 0; || mips_opts.arch == CPU_R10000 \ || mips_opts.arch == CPU_R12000 \ || mips_opts.arch == CPU_RM7000 \ - || mips_opts.arch == CPU_SB1 \ || mips_opts.arch == CPU_VR5500 \ ) @@ -357,8 +352,6 @@ static int mips_32bitmode = 0; level I. */ #define gpr_interlocks \ (mips_opts.isa != ISA_MIPS1 \ - || mips_opts.arch == CPU_VR5400 \ - || mips_opts.arch == CPU_VR5500 \ || mips_opts.arch == CPU_R3900) /* Whether the processor uses hardware interlocks to avoid delays @@ -374,9 +367,6 @@ static int mips_32bitmode = 0; && mips_opts.isa != ISA_MIPS2 \ && mips_opts.isa != ISA_MIPS3) \ || mips_opts.arch == CPU_R4300 \ - || mips_opts.arch == CPU_VR5400 \ - || mips_opts.arch == CPU_VR5500 \ - || mips_opts.arch == CPU_SB1 \ ) /* Whether the processor uses hardware interlocks to protect reads @@ -1089,8 +1079,6 @@ mips_target_format (void) { switch (OUTPUT_FLAVOR) { - case bfd_target_aout_flavour: - return target_big_endian ? "a.out-mips-big" : "a.out-mips-little"; case bfd_target_ecoff_flavour: return target_big_endian ? "ecoff-bigmips" : ECOFF_LITTLE_FORMAT; case bfd_target_coff_flavour: @@ -1247,8 +1235,7 @@ md_begin (void) /* set the default alignment for the text section (2**2) */ record_alignment (text_section, 2); - if (USE_GLOBAL_POINTER_OPT) - bfd_set_gp_size (stdoutput, g_switch_value); + bfd_set_gp_size (stdoutput, g_switch_value); if (OUTPUT_FLAVOR == bfd_target_elf_flavour) { @@ -1871,38 +1858,49 @@ append_insn (struct mips_cl_insn *ip, ex int min_nops = 0; const char *pn = prev_insn.insn_mo->name; const char *tn = ip->insn_mo->name; - if (strncmp(pn, "macc", 4) == 0 - || strncmp(pn, "dmacc", 5) == 0) + if (strncmp (pn, "macc", 4) == 0 + || strncmp (pn, "dmacc", 5) == 0) { /* Errata 21 - [D]DIV[U] after [D]MACC */ if (strstr (tn, "div")) - { - min_nops = 1; - } + min_nops = 1; - /* Errata 23 - Continuous DMULT[U]/DMACC instructions */ - if (pn[0] == 'd' /* dmacc */ - && (strncmp(tn, "dmult", 5) == 0 - || strncmp(tn, "dmacc", 5) == 0)) - { - min_nops = 1; - } + /* VR4181A errata MD(1): "If a MULT, MULTU, DMULT or DMULTU + instruction is executed immediately after a MACC or + DMACC instruction, the result of [either instruction] + is incorrect." */ + if (strncmp (tn, "mult", 4) == 0 + || strncmp (tn, "dmult", 5) == 0) + min_nops = 1; + + /* Errata 23 - Continuous DMULT[U]/DMACC instructions. + Applies on top of VR4181A MD(1) errata. */ + if (pn[0] == 'd' && strncmp (tn, "dmacc", 5) == 0) + min_nops = 1; /* Errata 24 - MT{LO,HI} after [D]MACC */ if (strcmp (tn, "mtlo") == 0 || strcmp (tn, "mthi") == 0) - { - min_nops = 1; - } - + min_nops = 1; } - else if (strncmp(pn, "dmult", 5) == 0 - && (strncmp(tn, "dmult", 5) == 0 - || strncmp(tn, "dmacc", 5) == 0)) + else if (strncmp (pn, "dmult", 5) == 0 + && (strncmp (tn, "dmult", 5) == 0 + || strncmp (tn, "dmacc", 5) == 0)) { /* Here is the rest of errata 23. */ min_nops = 1; } + else if ((strncmp (pn, "dmult", 5) == 0 || strstr (pn, "div")) + && (strncmp (tn, "macc", 4) == 0 + || strncmp (tn, "dmacc", 5) == 0)) + { + /* VR4181A errata MD(4): "If a MACC or DMACC instruction is + executed immediately after a DMULT, DMULTU, DIV, DIVU, + DDIV or DDIVU instruction, the result of the MACC or + DMACC instruction is incorrect.". This partly overlaps + the workaround for errata 23. */ + min_nops = 1; + } if (nops < min_nops) nops = min_nops; } @@ -2244,7 +2242,12 @@ append_insn (struct mips_cl_insn *ip, ex md_number_to_chars (f, ip->insn_opcode >> 16, 2); md_number_to_chars (f + 2, ip->insn_opcode & 0xffff, 2); #ifdef OBJ_ELF - dwarf2_emit_insn (4); + /* The value passed to dwarf2_emit_insn is the distance between + the end of the current instruction and the address that should + be recorded in the debug tables. Since we want to use ISA-encoded + addresses in MIPS16 debug info, the value is one byte less than + the real instruction length. */ + dwarf2_emit_insn (3); #endif } else @@ -2256,7 +2259,7 @@ append_insn (struct mips_cl_insn *ip, ex } md_number_to_chars (f, ip->insn_opcode, 2); #ifdef OBJ_ELF - dwarf2_emit_insn (ip->use_extend ? 4 : 2); + dwarf2_emit_insn (ip->use_extend ? 3 : 1); #endif } @@ -2494,11 +2497,6 @@ append_insn (struct mips_cl_insn *ip, ex || (mips_opts.mips16 && (pinfo & MIPS16_INSN_WRITE_31) && insn_uses_reg (&prev_insn, RA, MIPS_GR_REG)) - /* If we are generating embedded PIC code, the branch - might be expanded into a sequence which uses $at, so - we can't swap with an instruction which reads it. */ - || (mips_pic == EMBEDDED_PIC - && insn_uses_reg (&prev_insn, AT, MIPS_GR_REG)) /* If the previous previous instruction has a load delay, and sets a register that the branch reads, we can not swap. */ @@ -2845,12 +2843,11 @@ mips_emit_delays (bfd_boolean insns) { int min_nops = 0; const char *pn = prev_insn.insn_mo->name; - if (strncmp(pn, "macc", 4) == 0 - || strncmp(pn, "dmacc", 5) == 0 - || strncmp(pn, "dmult", 5) == 0) - { - min_nops = 1; - } + if (strncmp (pn, "macc", 4) == 0 + || strncmp (pn, "dmacc", 5) == 0 + || strncmp (pn, "dmult", 5) == 0 + || strstr (pn, "div")) + min_nops = 1; if (nops < min_nops) nops = min_nops; } @@ -3143,9 +3140,7 @@ macro_build (expressionS *ep, const char || *r == BFD_RELOC_MIPS_GOT_PAGE || *r == BFD_RELOC_MIPS_GOT_OFST || *r == BFD_RELOC_MIPS_GOT_LO16 - || *r == BFD_RELOC_MIPS_CALL_LO16 - || (ep->X_op == O_subtract - && *r == BFD_RELOC_PCREL_LO16)); + || *r == BFD_RELOC_MIPS_CALL_LO16); continue; case 'u': @@ -3158,9 +3153,7 @@ macro_build (expressionS *ep, const char || *r == BFD_RELOC_HI16 || *r == BFD_RELOC_GPREL16 || *r == BFD_RELOC_MIPS_GOT_HI16 - || *r == BFD_RELOC_MIPS_CALL_HI16)) - || (ep->X_op == O_subtract - && *r == BFD_RELOC_PCREL_HI16_S))); + || *r == BFD_RELOC_MIPS_CALL_HI16)))); continue; case 'p': @@ -3789,6 +3782,13 @@ load_register (int reg, expressionS *ep, macro_build (&lo32, "ori", "t,r,i", reg, freg, BFD_RELOC_LO16); } +static inline void +load_delay_nop (void) +{ + if (!gpr_interlocks) + macro_build (NULL, "nop", ""); +} + /* Load an address into a register. */ static void @@ -3922,7 +3922,7 @@ load_address (int reg, expressionS *ep, ep->X_add_number = 0; macro_build (ep, ADDRESS_LOAD_INSN, "t,o(b)", reg, BFD_RELOC_MIPS_GOT16, mips_gp_register); - macro_build (NULL, "nop", ""); + load_delay_nop (); relax_start (ep->X_add_symbol); relax_switch (); macro_build (ep, ADDRESS_ADDI_INSN, "t,r,j", reg, reg, @@ -4007,7 +4007,7 @@ load_address (int reg, expressionS *ep, } macro_build (ep, ADDRESS_LOAD_INSN, "t,o(b)", reg, BFD_RELOC_MIPS_GOT16, mips_gp_register); - macro_build (NULL, "nop", ""); + load_delay_nop (); macro_build (ep, ADDRESS_ADDI_INSN, "t,r,j", reg, reg, BFD_RELOC_LO16); relax_end (); @@ -4022,14 +4022,6 @@ load_address (int reg, expressionS *ep, } } } - else if (mips_pic == EMBEDDED_PIC) - { - /* We always do - addiu $reg,$gp, (BFD_RELOC_GPREL16) - */ - macro_build (ep, ADDRESS_ADDI_INSN, "t,r,j", - reg, mips_gp_register, BFD_RELOC_GPREL16); - } else abort (); } @@ -4888,50 +4880,6 @@ macro (struct mips_cl_insn *ip) used_at = 0; } - /* When generating embedded PIC code, we permit expressions of - the form - la $treg,foo-bar - la $treg,foo-bar($breg) - where bar is an address in the current section. These are used - when getting the addresses of functions. We don't permit - X_add_number to be non-zero, because if the symbol is - external the relaxing code needs to know that any addend is - purely the offset to X_op_symbol. */ - if (mips_pic == EMBEDDED_PIC - && offset_expr.X_op == O_subtract - && (symbol_constant_p (offset_expr.X_op_symbol) - ? S_GET_SEGMENT (offset_expr.X_op_symbol) == now_seg - : (symbol_equated_p (offset_expr.X_op_symbol) - && (S_GET_SEGMENT - (symbol_get_value_expression (offset_expr.X_op_symbol) - ->X_add_symbol) - == now_seg))) - && (offset_expr.X_add_number == 0 - || OUTPUT_FLAVOR == bfd_target_elf_flavour)) - { - if (breg == 0) - { - tempreg = treg; - used_at = 0; - macro_build (&offset_expr, "lui", "t,u", - tempreg, BFD_RELOC_PCREL_HI16_S); - } - else - { - macro_build (&offset_expr, "lui", "t,u", - tempreg, BFD_RELOC_PCREL_HI16_S); - macro_build (NULL, - (dbl || HAVE_64BIT_ADDRESSES) ? "daddu" : "addu", - "d,v,t", tempreg, tempreg, breg); - } - macro_build (&offset_expr, - (dbl || HAVE_64BIT_ADDRESSES) ? "daddiu" : "addiu", - "t,r,j", treg, tempreg, BFD_RELOC_PCREL_LO16); - if (! used_at) - return; - break; - } - if (offset_expr.X_op != O_symbol && offset_expr.X_op != O_constant) { @@ -4941,7 +4889,7 @@ macro (struct mips_cl_insn *ip) if (offset_expr.X_op == O_constant) load_register (tempreg, &offset_expr, - ((mips_pic == EMBEDDED_PIC || mips_pic == NO_PIC) + (mips_pic == NO_PIC ? (dbl || HAVE_64BIT_ADDRESSES) : HAVE_64BIT_ADDRESSES)); else if (mips_pic == NO_PIC) @@ -5069,12 +5017,12 @@ macro (struct mips_cl_insn *ip) /* We're going to put in an addu instruction using tempreg, so we may as well insert the nop right now. */ - macro_build (NULL, "nop", ""); + load_delay_nop (); } relax_switch (); macro_build (&offset_expr, ADDRESS_LOAD_INSN, "t,o(b)", tempreg, BFD_RELOC_MIPS_GOT16, mips_gp_register); - macro_build (NULL, "nop", ""); + load_delay_nop (); macro_build (&offset_expr, ADDRESS_ADDI_INSN, "t,r,j", tempreg, tempreg, BFD_RELOC_LO16); relax_end (); @@ -5086,7 +5034,7 @@ macro (struct mips_cl_insn *ip) && offset_expr.X_add_number < 0x8000) { load_got_offset (tempreg, &offset_expr); - macro_build (NULL, "nop", ""); + load_delay_nop (); add_got_offset (tempreg, &offset_expr); } else @@ -5105,7 +5053,7 @@ macro (struct mips_cl_insn *ip) not using a base register. */ if (breg == treg) { - macro_build (NULL, "nop", ""); + load_delay_nop (); macro_build (NULL, ADDRESS_ADD_INSN, "d,v,t", treg, AT, breg); breg = 0; @@ -5288,13 +5236,13 @@ macro (struct mips_cl_insn *ip) /* We're going to put in an addu instruction using tempreg, so we may as well insert the nop right now. */ - macro_build (NULL, "nop", ""); + load_delay_nop (); } } else if (expr1.X_add_number >= -0x8000 && expr1.X_add_number < 0x8000) { - macro_build (NULL, "nop", ""); + load_delay_nop (); macro_build (&expr1, ADDRESS_ADDI_INSN, "t,r,j", tempreg, tempreg, BFD_RELOC_LO16); } @@ -5314,7 +5262,7 @@ macro (struct mips_cl_insn *ip) else { assert (tempreg == AT); - macro_build (NULL, "nop", ""); + load_delay_nop (); macro_build (NULL, ADDRESS_ADD_INSN, "d,v,t", treg, AT, breg); dreg = treg; @@ -5341,7 +5289,7 @@ macro (struct mips_cl_insn *ip) if (expr1.X_add_number >= -0x8000 && expr1.X_add_number < 0x8000) { - macro_build (NULL, "nop", ""); + load_delay_nop (); macro_build (&offset_expr, ADDRESS_ADDI_INSN, "t,r,j", tempreg, tempreg, BFD_RELOC_LO16); /* FIXME: If add_number is 0, and there was no base @@ -5357,7 +5305,7 @@ macro (struct mips_cl_insn *ip) /* We must add in the base register now, as in the external symbol case. */ assert (tempreg == AT); - macro_build (NULL, "nop", ""); + load_delay_nop (); macro_build (NULL, ADDRESS_ADD_INSN, "d,v,t", treg, AT, breg); tempreg = treg; @@ -5481,14 +5429,6 @@ macro (struct mips_cl_insn *ip) } relax_end (); } - else if (mips_pic == EMBEDDED_PIC) - { - /* We use - addiu $tempreg,$gp, (BFD_RELOC_GPREL16) - */ - macro_build (&offset_expr, ADDRESS_ADDI_INSN, "t,r,j", tempreg, - mips_gp_register, BFD_RELOC_GPREL16); - } else abort (); @@ -5496,7 +5436,7 @@ macro (struct mips_cl_insn *ip) { char *s; - if (mips_pic == EMBEDDED_PIC || mips_pic == NO_PIC) + if (mips_pic == NO_PIC) s = (dbl || HAVE_64BIT_ADDRESSES) ? "daddu" : "addu"; else s = ADDRESS_ADD_INSN; @@ -5526,8 +5466,7 @@ macro (struct mips_cl_insn *ip) dreg = RA; /* Fall through. */ case M_JAL_2: - if (mips_pic == NO_PIC - || mips_pic == EMBEDDED_PIC) + if (mips_pic == NO_PIC) macro_build (NULL, "jalr", "d,s", dreg, sreg); else if (mips_pic == SVR4_PIC) { @@ -5643,7 +5582,7 @@ macro (struct mips_cl_insn *ip) macro_build (&offset_expr, ADDRESS_LOAD_INSN, "t,o(b)", PIC_CALL_REG, BFD_RELOC_MIPS_CALL16, mips_gp_register); - macro_build (NULL, "nop", ""); + load_delay_nop (); relax_switch (); } else @@ -5658,7 +5597,7 @@ macro (struct mips_cl_insn *ip) macro_build (&offset_expr, ADDRESS_LOAD_INSN, "t,o(b)", PIC_CALL_REG, BFD_RELOC_MIPS_CALL_LO16, PIC_CALL_REG); - macro_build (NULL, "nop", ""); + load_delay_nop (); relax_switch (); if (gpdelay) macro_build (NULL, "nop", ""); @@ -5666,7 +5605,7 @@ macro (struct mips_cl_insn *ip) macro_build (&offset_expr, ADDRESS_LOAD_INSN, "t,o(b)", PIC_CALL_REG, BFD_RELOC_MIPS_GOT16, mips_gp_register); - macro_build (NULL, "nop", ""); + load_delay_nop (); macro_build (&offset_expr, ADDRESS_ADDI_INSN, "t,r,j", PIC_CALL_REG, PIC_CALL_REG, BFD_RELOC_LO16); relax_end (); @@ -5698,13 +5637,6 @@ macro (struct mips_cl_insn *ip) } } } - else if (mips_pic == EMBEDDED_PIC) - { - macro_build (&offset_expr, "bal", "p"); - /* The linker may expand the call to a longer sequence which - uses $at, so we must break rather than return. */ - break; - } else abort (); @@ -5900,46 +5832,6 @@ macro (struct mips_cl_insn *ip) ^ 0x80000000) - 0x80000000); } - /* For embedded PIC, we allow loads where the offset is calculated - by subtracting a symbol in the current segment from an unknown - symbol, relative to a base register, e.g.: - $treg, -($breg) - This is used by the compiler for switch statements. */ - if (mips_pic == EMBEDDED_PIC - && offset_expr.X_op == O_subtract - && (symbol_constant_p (offset_expr.X_op_symbol) - ? S_GET_SEGMENT (offset_expr.X_op_symbol) == now_seg - : (symbol_equated_p (offset_expr.X_op_symbol) - && (S_GET_SEGMENT - (symbol_get_value_expression (offset_expr.X_op_symbol) - ->X_add_symbol) - == now_seg))) - && breg != 0 - && (offset_expr.X_add_number == 0 - || OUTPUT_FLAVOR == bfd_target_elf_flavour)) - { - /* For this case, we output the instructions: - lui $tempreg, (BFD_RELOC_PCREL_HI16_S) - addiu $tempreg,$tempreg,$breg - $treg,($tempreg) (BFD_RELOC_PCREL_LO16) - If the relocation would fit entirely in 16 bits, it would be - nice to emit: - $treg,($breg) (BFD_RELOC_PCREL_LO16) - instead, but that seems quite difficult. */ - macro_build (&offset_expr, "lui", "t,u", tempreg, - BFD_RELOC_PCREL_HI16_S); - macro_build (NULL, - ((bfd_arch_bits_per_address (stdoutput) == 32 - || ! ISA_HAS_64BIT_REGS (mips_opts.isa)) - ? "addu" : "daddu"), - "d,v,t", tempreg, tempreg, breg); - macro_build (&offset_expr, s, fmt, treg, - BFD_RELOC_PCREL_LO16, tempreg); - if (! used_at) - return; - break; - } - if (offset_expr.X_op != O_constant && offset_expr.X_op != O_symbol) { @@ -6166,7 +6058,7 @@ macro (struct mips_cl_insn *ip) as_bad (_("PIC code offset overflow (max 16 signed bits)")); macro_build (&offset_expr, ADDRESS_LOAD_INSN, "t,o(b)", tempreg, lw_reloc_type, mips_gp_register); - macro_build (NULL, "nop", ""); + load_delay_nop (); relax_start (offset_expr.X_add_symbol); relax_switch (); macro_build (&offset_expr, ADDRESS_ADDI_INSN, "t,r,j", tempreg, @@ -6216,7 +6108,7 @@ macro (struct mips_cl_insn *ip) macro_build (NULL, "nop", ""); macro_build (&offset_expr, ADDRESS_LOAD_INSN, "t,o(b)", tempreg, BFD_RELOC_MIPS_GOT16, mips_gp_register); - macro_build (NULL, "nop", ""); + load_delay_nop (); macro_build (&offset_expr, ADDRESS_ADDI_INSN, "t,r,j", tempreg, tempreg, BFD_RELOC_LO16); relax_end (); @@ -6265,29 +6157,6 @@ macro (struct mips_cl_insn *ip) BFD_RELOC_MIPS_GOT_OFST, tempreg); relax_end (); } - else if (mips_pic == EMBEDDED_PIC) - { - /* If there is no base register, we want - $treg,($gp) (BFD_RELOC_GPREL16) - If there is a base register, we want - addu $tempreg,$breg,$gp - $treg,($tempreg) (BFD_RELOC_GPREL16) - */ - assert (offset_expr.X_op == O_symbol); - if (breg == 0) - { - macro_build (&offset_expr, s, fmt, treg, BFD_RELOC_GPREL16, - mips_gp_register); - used_at = 0; - } - else - { - macro_build (NULL, ADDRESS_ADD_INSN, "d,v,t", - tempreg, breg, mips_gp_register); - macro_build (&offset_expr, s, fmt, treg, - BFD_RELOC_GPREL16, tempreg); - } - } else abort (); @@ -6375,15 +6244,6 @@ macro (struct mips_cl_insn *ip) macro_build (&offset_expr, ADDRESS_LOAD_INSN, "t,o(b)", AT, BFD_RELOC_MIPS_GOT16, mips_gp_register); } - else if (mips_pic == EMBEDDED_PIC) - { - /* For embedded PIC we pick up the entire address off $gp in - a single instruction. */ - macro_build (&offset_expr, ADDRESS_ADDI_INSN, "t,r,j", AT, - mips_gp_register, BFD_RELOC_GPREL16); - offset_expr.X_op = O_constant; - offset_expr.X_add_number = 0; - } else abort (); @@ -6564,11 +6424,6 @@ macro (struct mips_cl_insn *ip) fmt = "t,o(b)"; ldd_std: - /* We do _not_ bother to allow embedded PIC (symbol-local_symbol) - loads for the case of doing a pair of loads to simulate an 'ld'. - This is not currently done by the compiler, and assembly coders - writing embedded-pic code can cope. */ - if (offset_expr.X_op != O_symbol && offset_expr.X_op != O_constant) { @@ -6691,7 +6546,7 @@ macro (struct mips_cl_insn *ip) || expr1.X_add_number >= 0x8000 - 4) as_bad (_("PIC code offset overflow (max 16 signed bits)")); load_got_offset (AT, &offset_expr); - macro_build (NULL, "nop", ""); + load_delay_nop (); if (breg != 0) macro_build (NULL, ADDRESS_ADD_INSN, "d,v,t", AT, breg, AT); @@ -6750,7 +6605,7 @@ macro (struct mips_cl_insn *ip) AT, AT, mips_gp_register); macro_build (&offset_expr, ADDRESS_LOAD_INSN, "t,o(b)", AT, BFD_RELOC_MIPS_GOT_LO16, AT); - macro_build (NULL, "nop", ""); + load_delay_nop (); if (breg != 0) macro_build (NULL, ADDRESS_ADD_INSN, "d,v,t", AT, breg, AT); /* Itbl support may require additional care here. */ @@ -6774,7 +6629,7 @@ macro (struct mips_cl_insn *ip) macro_build (NULL, "nop", ""); macro_build (&offset_expr, ADDRESS_LOAD_INSN, "t,o(b)", AT, BFD_RELOC_MIPS_GOT16, mips_gp_register); - macro_build (NULL, "nop", ""); + load_delay_nop (); if (breg != 0) macro_build (NULL, ADDRESS_ADD_INSN, "d,v,t", AT, breg, AT); /* Itbl support may require additional care here. */ @@ -6792,37 +6647,6 @@ macro (struct mips_cl_insn *ip) mips_optimize = hold_mips_optimize; relax_end (); } - else if (mips_pic == EMBEDDED_PIC) - { - /* If there is no base register, we use - $treg,($gp) (BFD_RELOC_GPREL16) - $treg+1,+4($gp) (BFD_RELOC_GPREL16) - If we have a base register, we use - addu $at,$breg,$gp - $treg,($at) (BFD_RELOC_GPREL16) - $treg+1,+4($at) (BFD_RELOC_GPREL16) - */ - if (breg == 0) - { - tempreg = mips_gp_register; - used_at = 0; - } - else - { - macro_build (NULL, ADDRESS_ADD_INSN, "d,v,t", - AT, breg, mips_gp_register); - tempreg = AT; - used_at = 1; - } - - /* Itbl support may require additional care here. */ - macro_build (&offset_expr, s, fmt, coproc ? treg + 1 : treg, - BFD_RELOC_GPREL16, tempreg); - offset_expr.X_add_number += 4; - /* Itbl support may require additional care here. */ - macro_build (&offset_expr, s, fmt, coproc ? treg : treg + 1, - BFD_RELOC_GPREL16, tempreg); - } else abort (); @@ -7553,8 +7377,7 @@ macro2 (struct mips_cl_insn *ip) if (treg == tempreg) return; /* Protect second load's delay slot. */ - if (!gpr_interlocks) - macro_build (NULL, "nop", ""); + load_delay_nop (); move_register (treg, tempreg); break; @@ -8862,13 +8685,6 @@ do_msbd: The .lit4 and .lit8 sections are only used if permitted by the -G argument. - When generating embedded PIC code, we use the - .lit8 section but not the .lit4 section (we can do - .lit4 inline easily; we need to put .lit8 - somewhere in the data segment, and using .lit8 - permits the linker to eventually combine identical - .lit8 entries). - The code below needs to know whether the target register is 32 or 64 bits wide. It relies on the fact 'f' and 'F' are used with GPR-based instructions and 'l' and @@ -8894,9 +8710,7 @@ do_msbd: if (*args == 'f' || (*args == 'l' - && (! USE_GLOBAL_POINTER_OPT - || mips_pic == EMBEDDED_PIC - || g_switch_value < 4 + && (g_switch_value < 4 || (temp[0] == 0 && temp[1] == 0) || (temp[2] == 0 && temp[3] == 0)))) { @@ -8983,19 +8797,14 @@ do_msbd: default: /* unused default case avoids warnings. */ case 'L': newname = RDATA_SECTION_NAME; - if ((USE_GLOBAL_POINTER_OPT && g_switch_value >= 8) - || mips_pic == EMBEDDED_PIC) + if (g_switch_value >= 8) newname = ".lit8"; break; case 'F': - if (mips_pic == EMBEDDED_PIC) - newname = ".lit8"; - else - newname = RDATA_SECTION_NAME; + newname = RDATA_SECTION_NAME; break; case 'l': - assert (!USE_GLOBAL_POINTER_OPT - || g_switch_value >= 4); + assert (g_switch_value >= 4); newname = ".lit4"; break; } @@ -10261,38 +10070,36 @@ struct option md_longopts[] = /* Miscellaneous options. */ #define OPTION_MISC_BASE (OPTION_FIX_BASE + 4) -#define OPTION_MEMBEDDED_PIC (OPTION_MISC_BASE + 0) - {"membedded-pic", no_argument, NULL, OPTION_MEMBEDDED_PIC}, -#define OPTION_TRAP (OPTION_MISC_BASE + 1) +#define OPTION_TRAP (OPTION_MISC_BASE + 0) {"trap", no_argument, NULL, OPTION_TRAP}, {"no-break", no_argument, NULL, OPTION_TRAP}, -#define OPTION_BREAK (OPTION_MISC_BASE + 2) +#define OPTION_BREAK (OPTION_MISC_BASE + 1) {"break", no_argument, NULL, OPTION_BREAK}, {"no-trap", no_argument, NULL, OPTION_BREAK}, -#define OPTION_EB (OPTION_MISC_BASE + 3) +#define OPTION_EB (OPTION_MISC_BASE + 2) {"EB", no_argument, NULL, OPTION_EB}, -#define OPTION_EL (OPTION_MISC_BASE + 4) +#define OPTION_EL (OPTION_MISC_BASE + 3) {"EL", no_argument, NULL, OPTION_EL}, -#define OPTION_FP32 (OPTION_MISC_BASE + 5) +#define OPTION_FP32 (OPTION_MISC_BASE + 4) {"mfp32", no_argument, NULL, OPTION_FP32}, -#define OPTION_GP32 (OPTION_MISC_BASE + 6) +#define OPTION_GP32 (OPTION_MISC_BASE + 5) {"mgp32", no_argument, NULL, OPTION_GP32}, -#define OPTION_CONSTRUCT_FLOATS (OPTION_MISC_BASE + 7) +#define OPTION_CONSTRUCT_FLOATS (OPTION_MISC_BASE + 6) {"construct-floats", no_argument, NULL, OPTION_CONSTRUCT_FLOATS}, -#define OPTION_NO_CONSTRUCT_FLOATS (OPTION_MISC_BASE + 8) +#define OPTION_NO_CONSTRUCT_FLOATS (OPTION_MISC_BASE + 7) {"no-construct-floats", no_argument, NULL, OPTION_NO_CONSTRUCT_FLOATS}, -#define OPTION_FP64 (OPTION_MISC_BASE + 9) +#define OPTION_FP64 (OPTION_MISC_BASE + 8) {"mfp64", no_argument, NULL, OPTION_FP64}, -#define OPTION_GP64 (OPTION_MISC_BASE + 10) +#define OPTION_GP64 (OPTION_MISC_BASE + 9) {"mgp64", no_argument, NULL, OPTION_GP64}, -#define OPTION_RELAX_BRANCH (OPTION_MISC_BASE + 11) -#define OPTION_NO_RELAX_BRANCH (OPTION_MISC_BASE + 12) +#define OPTION_RELAX_BRANCH (OPTION_MISC_BASE + 10) +#define OPTION_NO_RELAX_BRANCH (OPTION_MISC_BASE + 11) {"relax-branch", no_argument, NULL, OPTION_RELAX_BRANCH}, {"no-relax-branch", no_argument, NULL, OPTION_NO_RELAX_BRANCH}, /* ELF-specific options. */ #ifdef OBJ_ELF -#define OPTION_ELF_BASE (OPTION_MISC_BASE + 13) +#define OPTION_ELF_BASE (OPTION_MISC_BASE + 12) #define OPTION_CALL_SHARED (OPTION_ELF_BASE + 0) {"KPIC", no_argument, NULL, OPTION_CALL_SHARED}, {"call_shared", no_argument, NULL, OPTION_CALL_SHARED}, @@ -10489,16 +10296,6 @@ md_parse_option (int c, char *arg) mips_opts.ase_mips3d = 0; break; - case OPTION_MEMBEDDED_PIC: - mips_pic = EMBEDDED_PIC; - if (USE_GLOBAL_POINTER_OPT && g_switch_seen) - { - as_bad (_("-G may not be used with embedded PIC code")); - return 0; - } - g_switch_value = 0x7fffffff; - break; - case OPTION_FIX_VR4120: mips_fix_vr4120 = 1; break; @@ -10554,14 +10351,9 @@ md_parse_option (int c, char *arg) #endif /* OBJ_ELF */ case 'G': - if (! USE_GLOBAL_POINTER_OPT) + if (mips_pic == SVR4_PIC) { - as_bad (_("-G is not supported for this configuration")); - return 0; - } - else if (mips_pic == SVR4_PIC || mips_pic == EMBEDDED_PIC) - { - as_bad (_("-G may not be used with SVR4 or embedded PIC code")); + as_bad (_("-G may not be used with SVR4 PIC code")); return 0; } else @@ -10962,24 +10754,7 @@ mips_frob_file (void) } } -/* When generating embedded PIC code we need to use a special - relocation to represent the difference of two symbols in the .text - section (switch tables use a difference of this sort). See - include/coff/mips.h for details. This macro checks whether this - fixup requires the special reloc. */ -#define SWITCH_TABLE(fixp) \ - ((fixp)->fx_r_type == BFD_RELOC_32 \ - && OUTPUT_FLAVOR != bfd_target_elf_flavour \ - && (fixp)->fx_addsy != NULL \ - && (fixp)->fx_subsy != NULL \ - && S_GET_SEGMENT ((fixp)->fx_addsy) == text_section \ - && S_GET_SEGMENT ((fixp)->fx_subsy) == text_section) - -/* When generating embedded PIC code we must keep all PC relative - relocations, in case the linker has to relax a call. We also need - to keep relocations for switch table entries. - - We may have combined relocations without symbols in the N32/N64 ABI. +/* We may have combined relocations without symbols in the N32/N64 ABI. We have to prevent gas from dropping them. */ int @@ -10995,11 +10770,7 @@ mips_force_relocation (fixS *fixp) || fixp->fx_r_type == BFD_RELOC_LO16)) return 1; - return (mips_pic == EMBEDDED_PIC - && (fixp->fx_pcrel - || SWITCH_TABLE (fixp) - || fixp->fx_r_type == BFD_RELOC_PCREL_HI16_S - || fixp->fx_r_type == BFD_RELOC_PCREL_LO16)); + return 0; } /* This hook is called before a fix is simplified. We don't really @@ -11039,9 +10810,8 @@ mips_validate_fix (struct fix *fixP, ase whole function). */ if (fixP->fx_r_type == BFD_RELOC_16_PCREL_S2 - && (((OUTPUT_FLAVOR == bfd_target_ecoff_flavour - || OUTPUT_FLAVOR == bfd_target_elf_flavour) - && mips_pic != EMBEDDED_PIC) + && ((OUTPUT_FLAVOR == bfd_target_ecoff_flavour + || OUTPUT_FLAVOR == bfd_target_elf_flavour) || bfd_reloc_type_lookup (stdoutput, BFD_RELOC_16_PCREL_S2) == NULL) && fixP->fx_addsy) { @@ -11106,7 +10876,8 @@ md_apply_fix3 (fixS *fixP, valueT *valP, buf = (bfd_byte *) (fixP->fx_frag->fr_literal + fixP->fx_where); /* We are not done if this is a composite relocation to set up gp. */ - if (fixP->fx_addsy == NULL && ! fixP->fx_pcrel + assert (! fixP->fx_pcrel); + if (fixP->fx_addsy == NULL && !(fixP->fx_r_type == BFD_RELOC_MIPS_SUB || (fixP->fx_r_type == BFD_RELOC_64 && (previous_fx_r_type == BFD_RELOC_GPREL32 @@ -11147,9 +10918,7 @@ md_apply_fix3 (fixS *fixP, valueT *valP, case BFD_RELOC_MIPS_CALL_HI16: case BFD_RELOC_MIPS_CALL_LO16: case BFD_RELOC_MIPS16_GPREL: - if (fixP->fx_pcrel) - as_bad_where (fixP->fx_file, fixP->fx_line, - _("Invalid PC relative reloc")); + assert (! fixP->fx_pcrel); /* Nothing needed to do. The value comes from the reloc entry */ break; @@ -11160,44 +10929,10 @@ md_apply_fix3 (fixS *fixP, valueT *valP, *valP = 0; break; - case BFD_RELOC_PCREL_HI16_S: - /* The addend for this is tricky if it is internal, so we just - do everything here rather than in bfd_install_relocation. */ - if (OUTPUT_FLAVOR == bfd_target_elf_flavour && !fixP->fx_done) - break; - if (fixP->fx_addsy - && (symbol_get_bfdsym (fixP->fx_addsy)->flags & BSF_SECTION_SYM) == 0) - { - /* For an external symbol adjust by the address to make it - pcrel_offset. We use the address of the RELLO reloc - which follows this one. */ - *valP += (fixP->fx_next->fx_frag->fr_address - + fixP->fx_next->fx_where); - } - *valP = ((*valP + 0x8000) >> 16) & 0xffff; - if (target_big_endian) - buf += 2; - md_number_to_chars (buf, *valP, 2); - break; - - case BFD_RELOC_PCREL_LO16: - /* The addend for this is tricky if it is internal, so we just - do everything here rather than in bfd_install_relocation. */ - if (OUTPUT_FLAVOR == bfd_target_elf_flavour && !fixP->fx_done) - break; - if (fixP->fx_addsy - && (symbol_get_bfdsym (fixP->fx_addsy)->flags & BSF_SECTION_SYM) == 0) - *valP += fixP->fx_frag->fr_address + fixP->fx_where; - if (target_big_endian) - buf += 2; - md_number_to_chars (buf, *valP, 2); - break; - case BFD_RELOC_64: /* This is handled like BFD_RELOC_32, but we output a sign extended value if we are only 32 bits. */ - if (fixP->fx_done - || (mips_pic == EMBEDDED_PIC && SWITCH_TABLE (fixP))) + if (fixP->fx_done) { if (8 <= sizeof (valueT)) md_number_to_chars (buf, *valP, 8); @@ -11221,11 +10956,8 @@ md_apply_fix3 (fixS *fixP, valueT *valP, case BFD_RELOC_32: /* If we are deleting this reloc entry, we must fill in the value now. This can happen if we have a .word which is not - resolved when it appears but is later defined. We also need - to fill in the value if this is an embedded PIC switch table - entry. */ - if (fixP->fx_done - || (mips_pic == EMBEDDED_PIC && SWITCH_TABLE (fixP))) + resolved when it appears but is later defined. */ + if (fixP->fx_done) md_number_to_chars (buf, *valP, 4); break; @@ -11238,6 +10970,8 @@ md_apply_fix3 (fixS *fixP, valueT *valP, break; case BFD_RELOC_LO16: + /* FIXME: Now that embedded-PIC is gone, some of this code/comment + may be safe to remove, but if so it's not obvious. */ /* When handling an embedded PIC switch statement, we can wind up deleting a LO16 reloc. See the 'o' case in mips_ip. */ if (fixP->fx_done) @@ -11508,13 +11242,6 @@ s_change_sec (int sec) { segT seg; - /* When generating embedded PIC code, we only use the .text, .lit8, - .sdata and .sbss sections. We change the .data and .rdata - pseudo-ops to use .sdata. */ - if (mips_pic == EMBEDDED_PIC - && (sec == 'd' || sec == 'r')) - sec = 's'; - #ifdef OBJ_ELF /* The ELF backend needs to know that we are changing sections, so that .previous works correctly. We could do something like check @@ -11540,52 +11267,30 @@ s_change_sec (int sec) break; case 'r': - if (USE_GLOBAL_POINTER_OPT) - { - seg = subseg_new (RDATA_SECTION_NAME, - (subsegT) get_absolute_expression ()); - if (OUTPUT_FLAVOR == bfd_target_elf_flavour) - { - bfd_set_section_flags (stdoutput, seg, - (SEC_ALLOC - | SEC_LOAD - | SEC_READONLY - | SEC_RELOC - | SEC_DATA)); - if (strcmp (TARGET_OS, "elf") != 0) - record_alignment (seg, 4); - } - demand_empty_rest_of_line (); - } - else + seg = subseg_new (RDATA_SECTION_NAME, + (subsegT) get_absolute_expression ()); + if (OUTPUT_FLAVOR == bfd_target_elf_flavour) { - as_bad (_("No read only data section in this object file format")); - demand_empty_rest_of_line (); - return; + bfd_set_section_flags (stdoutput, seg, (SEC_ALLOC | SEC_LOAD + | SEC_READONLY | SEC_RELOC + | SEC_DATA)); + if (strcmp (TARGET_OS, "elf") != 0) + record_alignment (seg, 4); } + demand_empty_rest_of_line (); break; case 's': - if (USE_GLOBAL_POINTER_OPT) - { - seg = subseg_new (".sdata", (subsegT) get_absolute_expression ()); - if (OUTPUT_FLAVOR == bfd_target_elf_flavour) - { - bfd_set_section_flags (stdoutput, seg, - SEC_ALLOC | SEC_LOAD | SEC_RELOC - | SEC_DATA); - if (strcmp (TARGET_OS, "elf") != 0) - record_alignment (seg, 4); - } - demand_empty_rest_of_line (); - break; - } - else + seg = subseg_new (".sdata", (subsegT) get_absolute_expression ()); + if (OUTPUT_FLAVOR == bfd_target_elf_flavour) { - as_bad (_("Global pointers not supported; recompile -G 0")); - demand_empty_rest_of_line (); - return; + bfd_set_section_flags (stdoutput, seg, + SEC_ALLOC | SEC_LOAD | SEC_RELOC | SEC_DATA); + if (strcmp (TARGET_OS, "elf") != 0) + record_alignment (seg, 4); } + demand_empty_rest_of_line (); + break; } auto_align = 1; @@ -11781,7 +11486,7 @@ s_option (int x ATTRIBUTE_UNUSED) else as_bad (_(".option pic%d not supported"), i); - if (USE_GLOBAL_POINTER_OPT && mips_pic == SVR4_PIC) + if (mips_pic == SVR4_PIC) { if (g_switch_seen && g_switch_value != 0) as_warn (_("-G may not be used with SVR4 PIC code")); @@ -11891,34 +11596,11 @@ s_mipsset (int x ATTRIBUTE_UNUSED) /* Permit the user to change the ISA and architecture on the fly. Needless to say, misuse can cause serious problems. */ - if (strcmp (name, "mips0") == 0) + if (strcmp (name, "mips0") == 0 || strcmp (name, "arch=default") == 0) { reset = 1; mips_opts.isa = file_mips_isa; - } - else if (strcmp (name, "mips1") == 0) - mips_opts.isa = ISA_MIPS1; - else if (strcmp (name, "mips2") == 0) - mips_opts.isa = ISA_MIPS2; - else if (strcmp (name, "mips3") == 0) - mips_opts.isa = ISA_MIPS3; - else if (strcmp (name, "mips4") == 0) - mips_opts.isa = ISA_MIPS4; - else if (strcmp (name, "mips5") == 0) - mips_opts.isa = ISA_MIPS5; - else if (strcmp (name, "mips32") == 0) - mips_opts.isa = ISA_MIPS32; - else if (strcmp (name, "mips32r2") == 0) - mips_opts.isa = ISA_MIPS32R2; - else if (strcmp (name, "mips64") == 0) - mips_opts.isa = ISA_MIPS64; - else if (strcmp (name, "mips64r2") == 0) - mips_opts.isa = ISA_MIPS64R2; - else if (strcmp (name, "arch=default") == 0) - { - reset = 1; mips_opts.arch = file_mips_arch; - mips_opts.isa = file_mips_isa; } else if (strncmp (name, "arch=", 5) == 0) { @@ -11933,8 +11615,21 @@ s_mipsset (int x ATTRIBUTE_UNUSED) mips_opts.isa = p->isa; } } + else if (strncmp (name, "mips", 4) == 0) + { + const struct mips_cpu_info *p; + + p = mips_parse_cpu("internal use", name); + if (!p) + as_bad (_("unknown ISA level %s"), name + 4); + else + { + mips_opts.arch = p->cpu; + mips_opts.isa = p->isa; + } + } else - as_bad (_("unknown ISA level %s"), name + 4); + as_bad (_("unknown ISA or architecture %s"), name); switch (mips_opts.isa) { @@ -12022,12 +11717,11 @@ s_abicalls (int ignore ATTRIBUTE_UNUSED) { mips_pic = SVR4_PIC; mips_abicalls = TRUE; - if (USE_GLOBAL_POINTER_OPT) - { - if (g_switch_seen && g_switch_value != 0) - as_warn (_("-G may not be used with SVR4 PIC code")); - g_switch_value = 0; - } + + if (g_switch_seen && g_switch_value != 0) + as_warn (_("-G may not be used with SVR4 PIC code")); + g_switch_value = 0; + bfd_set_gp_size (stdoutput, 0); demand_empty_rest_of_line (); } @@ -12584,7 +12278,7 @@ nopic_need_relax (symbolS *sym, int befo if (sym == 0) return 0; - if (USE_GLOBAL_POINTER_OPT && g_switch_value > 0) + if (g_switch_value > 0) { const char *symname; int change; @@ -12691,9 +12385,7 @@ pic_need_relax (symbolS *sym, asection * #ifdef OBJ_ELF /* A global or weak symbol is treated as external. */ && (OUTPUT_FLAVOR != bfd_target_elf_flavour - || (! S_IS_WEAK (sym) - && (! S_IS_EXTERNAL (sym) - || mips_pic == EMBEDDED_PIC))) + || (! S_IS_WEAK (sym) && ! S_IS_EXTERNAL (sym))) #endif ); } @@ -13046,60 +12738,8 @@ tc_gen_reloc (asection *section ATTRIBUT *reloc->sym_ptr_ptr = symbol_get_bfdsym (fixp->fx_addsy); reloc->address = fixp->fx_frag->fr_address + fixp->fx_where; - if (mips_pic == EMBEDDED_PIC - && SWITCH_TABLE (fixp)) - { - /* For a switch table entry we use a special reloc. The addend - is actually the difference between the reloc address and the - subtrahend. */ - reloc->addend = reloc->address - S_GET_VALUE (fixp->fx_subsy); - if (OUTPUT_FLAVOR != bfd_target_ecoff_flavour) - as_fatal (_("Double check fx_r_type in tc-mips.c:tc_gen_reloc")); - fixp->fx_r_type = BFD_RELOC_GPREL32; - } - else if (fixp->fx_pcrel) - { - bfd_vma pcrel_address; - - /* Set PCREL_ADDRESS to this relocation's "PC". The PC for high - high-part relocs is the address of the low-part reloc. */ - if (fixp->fx_r_type == BFD_RELOC_PCREL_HI16_S) - { - assert (fixp->fx_next != NULL - && fixp->fx_next->fx_r_type == BFD_RELOC_PCREL_LO16); - pcrel_address = (fixp->fx_next->fx_where - + fixp->fx_next->fx_frag->fr_address); - } - else - pcrel_address = reloc->address; - - if (OUTPUT_FLAVOR == bfd_target_elf_flavour) - { - /* At this point, fx_addnumber is "symbol offset - pcrel_address". - Relocations want only the symbol offset. */ - reloc->addend = fixp->fx_addnumber + pcrel_address; - } - else if (fixp->fx_r_type == BFD_RELOC_PCREL_LO16 - || fixp->fx_r_type == BFD_RELOC_PCREL_HI16_S) - { - /* We use a special addend for an internal RELLO or RELHI reloc. */ - if (symbol_section_p (fixp->fx_addsy)) - reloc->addend = pcrel_address - S_GET_VALUE (fixp->fx_subsy); - else - reloc->addend = fixp->fx_addnumber + pcrel_address; - } - else - { - if (OUTPUT_FLAVOR != bfd_target_aout_flavour) - /* A gruesome hack which is a result of the gruesome gas reloc - handling. */ - reloc->addend = pcrel_address; - else - reloc->addend = -pcrel_address; - } - } - else - reloc->addend = fixp->fx_addnumber; + assert (! fixp->fx_pcrel); + reloc->addend = fixp->fx_addnumber; /* Since the old MIPS ELF ABI uses Rel instead of Rela, encode the vtable entry to be used in the relocation's section offset. */ @@ -13109,49 +12749,16 @@ tc_gen_reloc (asection *section ATTRIBUT reloc->addend = 0; } - /* Since DIFF_EXPR_OK is defined in tc-mips.h, it is possible that - fixup_segment converted a non-PC relative reloc into a PC - relative reloc. In such a case, we need to convert the reloc - code. */ code = fixp->fx_r_type; - if (fixp->fx_pcrel) - { - switch (code) - { - case BFD_RELOC_8: - code = BFD_RELOC_8_PCREL; - break; - case BFD_RELOC_16: - code = BFD_RELOC_16_PCREL; - break; - case BFD_RELOC_32: - code = BFD_RELOC_32_PCREL; - break; - case BFD_RELOC_64: - code = BFD_RELOC_64_PCREL; - break; - case BFD_RELOC_8_PCREL: - case BFD_RELOC_16_PCREL: - case BFD_RELOC_32_PCREL: - case BFD_RELOC_64_PCREL: - case BFD_RELOC_16_PCREL_S2: - case BFD_RELOC_PCREL_HI16_S: - case BFD_RELOC_PCREL_LO16: - break; - default: - as_bad_where (fixp->fx_file, fixp->fx_line, - _("Cannot make %s relocation PC relative"), - bfd_get_reloc_code_name (code)); - } - } - /* To support a PC relative reloc when generating embedded PIC code - for ECOFF, we use a Cygnus extension. We check for that here to - make sure that we don't let such a reloc escape normally. */ + /* To support a PC relative reloc, we used a Cygnus extension. + We check for that here to make sure that we don't let such a + reloc escape normally. (FIXME: This was formerly used by + embedded-PIC support, but is now used by branch handling in + general. That probably should be fixed.) */ if ((OUTPUT_FLAVOR == bfd_target_ecoff_flavour || OUTPUT_FLAVOR == bfd_target_elf_flavour) - && code == BFD_RELOC_16_PCREL_S2 - && mips_pic != EMBEDDED_PIC) + && code == BFD_RELOC_16_PCREL_S2) reloc->howto = NULL; else reloc->howto = bfd_reloc_type_lookup (stdoutput, code); @@ -14331,7 +13938,6 @@ md_show_usage (FILE *stream) fprintf (stream, _("\ MIPS options:\n\ --membedded-pic generate embedded position independent code\n\ -EB generate big endian output\n\ -EL generate little endian output\n\ -g, -g2 do not remove unneeded NOPs or swap branches\n\ @@ -14426,10 +14032,6 @@ mips_dwarf2_addr_size (void) { if (mips_abi == N64_ABI) return 8; - /* GCC for 64-bit targets turns on mlong64 giving - us 64-bit addresses. */ - else if (mips_abi == EABI_ABI && !file_mips_gp32) - return 8; else return 4; } diff -uprN binutils-2.15.90.0.3/gas/config/tc-mips.h binutils-2.15.91.0.1/gas/config/tc-mips.h --- binutils-2.15.90.0.3/gas/config/tc-mips.h 2004-03-03 12:24:34.000000000 -0800 +++ binutils-2.15.91.0.1/gas/config/tc-mips.h 2004-05-27 11:26:03.776282499 -0700 @@ -58,10 +58,6 @@ extern void mips_handle_align (struct fr #define MAX_MEM_FOR_RS_ALIGN_CODE (1 + 2) -/* We permit PC relative difference expressions when generating - embedded PIC code. */ -#define DIFF_EXPR_OK - /* Tell assembler that we have an itbl_mips.h header file to include. */ #define HAVE_ITBL_CPU @@ -79,12 +75,6 @@ enum mips_pic_level /* Generate PIC code as in the SVR4 MIPS ABI. */ SVR4_PIC, - - /* Generate PIC code without using a global offset table: the data - segment has a maximum size of 64K, all data references are off - the $gp register, and all text references are PC relative. This - is used on some embedded systems. */ - EMBEDDED_PIC }; extern enum mips_pic_level mips_pic; @@ -129,14 +119,12 @@ extern int mips_fix_adjustable (struct f /* Values passed to md_apply_fix3 don't include symbol values. */ #define MD_APPLY_SYM_VALUE(FIX) 0 -/* Global syms must not be resolved, to support ELF shared libraries. - When generating embedded code, we don't have shared libs. */ +/* Global syms must not be resolved, to support ELF shared libraries. */ #define EXTERN_FORCE_RELOC \ - (OUTPUT_FLAVOR == bfd_target_elf_flavour \ - && mips_pic != EMBEDDED_PIC) + (OUTPUT_FLAVOR == bfd_target_elf_flavour) -/* When generating embedded PIC code we must keep PC relative - relocations. */ +/* When generating NEWABI code, we may need to have to keep combined + relocations which don't have symbols. */ #define TC_FORCE_RELOCATION(FIX) mips_force_relocation (FIX) extern int mips_force_relocation (struct fix *); @@ -167,10 +155,6 @@ extern void mips_elf_final_processing (v extern void md_mips_end (void); #define md_end() md_mips_end() -#define USE_GLOBAL_POINTER_OPT (OUTPUT_FLAVOR == bfd_target_ecoff_flavour \ - || OUTPUT_FLAVOR == bfd_target_coff_flavour \ - || OUTPUT_FLAVOR == bfd_target_elf_flavour) - extern void mips_pop_insert (void); #define md_pop_insert() mips_pop_insert() @@ -183,6 +167,7 @@ extern void mips_enable_auto_align (void extern enum dwarf2_format mips_dwarf2_format (void); #define DWARF2_FORMAT() mips_dwarf2_format () +extern int mips_dwarf2_addr_size (void); #define DWARF2_ADDR_SIZE(bfd) mips_dwarf2_addr_size () #endif /* TC_MIPS */ diff -uprN binutils-2.15.90.0.3/gas/config/tc-mn10200.c binutils-2.15.91.0.1/gas/config/tc-mn10200.c --- binutils-2.15.90.0.3/gas/config/tc-mn10200.c 2004-01-14 13:07:45.000000000 -0800 +++ binutils-2.15.91.0.1/gas/config/tc-mn10200.c 2004-05-27 11:26:03.789280818 -0700 @@ -1342,17 +1342,7 @@ mn10200_insert_operand (insnp, extension test = val; if (test < (offsetT) min || test > (offsetT) max) - { - const char *err = - _("operand out of range (%s not between %ld and %ld)"); - char buf[100]; - - sprint_value (buf, test); - if (file == (char *) NULL) - as_warn (err, buf, min, max); - else - as_warn_where (file, line, err, buf, min, max); - } + as_warn_value_out_of_range (_("operand"), test, (offsetT) min, (offsetT) max, file, line); } if ((operand->flags & MN10200_OPERAND_EXTENDED) == 0) diff -uprN binutils-2.15.90.0.3/gas/config/tc-mn10300.c binutils-2.15.91.0.1/gas/config/tc-mn10300.c --- binutils-2.15.90.0.3/gas/config/tc-mn10300.c 2004-01-14 13:07:45.000000000 -0800 +++ binutils-2.15.91.0.1/gas/config/tc-mn10300.c 2004-05-27 11:26:03.792280430 -0700 @@ -2584,17 +2584,7 @@ mn10300_insert_operand (insnp, extension test = val; if (test < (offsetT) min || test > (offsetT) max) - { - const char *err = - _("operand out of range (%s not between %ld and %ld)"); - char buf[100]; - - sprint_value (buf, test); - if (file == (char *) NULL) - as_warn (err, buf, min, max); - else - as_warn_where (file, line, err, buf, min, max); - } + as_warn_value_out_of_range (_("operand"), test, (offsetT) min, (offsetT) max, file, line); } if ((operand->flags & MN10300_OPERAND_SPLIT) != 0) diff -uprN binutils-2.15.90.0.3/gas/config/tc-ppc.c binutils-2.15.91.0.1/gas/config/tc-ppc.c --- binutils-2.15.90.0.3/gas/config/tc-ppc.c 2004-04-12 12:56:35.000000000 -0700 +++ binutils-2.15.91.0.1/gas/config/tc-ppc.c 2004-05-27 11:26:03.832275258 -0700 @@ -1457,14 +1457,7 @@ ppc_insert_operand (insn, operand, val, test = val; if (test < (offsetT) min || test > (offsetT) max) - { - const char *err = - _("operand out of range (%s not between %ld and %ld)"); - char buf[100]; - - sprint_value (buf, test); - as_bad_where (file, line, err, buf, min, max); - } + as_bad_value_out_of_range (_("operand"), test, (offsetT) min, (offsetT) max, file, line); } if (operand->insert) diff -uprN binutils-2.15.90.0.3/gas/config/tc-s390.c binutils-2.15.91.0.1/gas/config/tc-s390.c --- binutils-2.15.90.0.3/gas/config/tc-s390.c 2004-03-03 12:24:34.000000000 -0800 +++ binutils-2.15.91.0.1/gas/config/tc-s390.c 2004-05-27 11:26:03.845273577 -0700 @@ -1,5 +1,5 @@ /* tc-s390.c -- Assemble for the S390 - Copyright 2000, 2001, 2002, 2003 Free Software Foundation, Inc. + Copyright 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com). This file is part of GAS, the GNU Assembler. @@ -540,19 +540,6 @@ s390_md_end () bfd_set_arch_mach (stdoutput, bfd_arch_s390, bfd_mach_s390_31); } -void -s390_align_code (fragP, count) - fragS *fragP; - int count; -{ - /* We use nop pattern 0x0707. */ - if (count > 0) - { - memset (fragP->fr_literal + fragP->fr_fix, 0x07, count); - fragP->fr_var = count; - } -} - /* Insert an operand value into an instruction. */ static void @@ -614,21 +601,15 @@ s390_insert_operand (insn, operand, val, /* Check for underflow / overflow. */ if (uval < min || uval > max) { - const char *err = - "operand out of range (%s not between %ld and %ld)"; - char buf[100]; - if (operand->flags & S390_OPERAND_LENGTH) { uval++; min++; max++; } - sprint_value (buf, uval); - if (file == (char *) NULL) - as_bad (err, buf, (int) min, (int) max); - else - as_bad_where (file, line, err, buf, (int) min, (int) max); + + as_bad_value_out_of_range (_("operand"), uval, (offsetT) min, (offsetT) max, file, line); + return; } } diff -uprN binutils-2.15.90.0.3/gas/config/tc-s390.h binutils-2.15.91.0.1/gas/config/tc-s390.h --- binutils-2.15.90.0.3/gas/config/tc-s390.h 2004-01-14 13:07:45.000000000 -0800 +++ binutils-2.15.91.0.1/gas/config/tc-s390.h 2004-05-27 11:26:03.858271896 -0700 @@ -1,5 +1,5 @@ /* tc-s390.h -- Header file for tc-s390.c. - Copyright 2000, 2001, 2002 Free Software Foundation, Inc. + Copyright 2000, 2001, 2002, 2004 Free Software Foundation, Inc. Written by Martin Schwidefsky (schwidefsky@de.ibm.com). This file is part of GAS, the GNU Assembler. @@ -76,23 +76,7 @@ extern int target_big_endian; #define md_number_to_chars number_to_chars_bigendian -#define md_do_align(n, fill, len, max, around) \ -if ((n) && !need_pass_2 && (fill == 0) && \ - (bfd_get_section_flags (stdoutput, now_seg) & SEC_CODE) != 0) { \ - char *p; \ - p = frag_var (rs_align_code, 15, 1, (relax_substateT) max, \ - (symbolS *) 0, (offsetT) (n), (char *) 0); \ - *p = 0x07; \ - goto around; \ -} - -extern void s390_align_code PARAMS ((fragS *, int)); - -#define HANDLE_ALIGN(fragP) \ -if (fragP->fr_type == rs_align_code) \ - s390_align_code (fragP, (fragP->fr_next->fr_address \ - - fragP->fr_address \ - - fragP->fr_fix)); +#define NOP_OPCODE 0x07 /* call md_pcrel_from_section, not md_pcrel_from */ #define MD_PCREL_FROM_SECTION(FIX, SEC) md_pcrel_from_section(FIX, SEC) diff -uprN binutils-2.15.90.0.3/gas/config/tc-v850.c binutils-2.15.91.0.1/gas/config/tc-v850.c --- binutils-2.15.90.0.3/gas/config/tc-v850.c 2004-01-14 13:07:46.000000000 -0800 +++ binutils-2.15.91.0.1/gas/config/tc-v850.c 2004-05-27 11:26:03.873269957 -0700 @@ -1618,10 +1618,7 @@ v850_insert_operand (insn, operand, val, if (val < (offsetT) min || val > (offsetT) max) { - /* xgettext:c-format */ - const char *err = - _("operand out of range (%s not between %ld and %ld)"); - char buf[100]; + char buf [128]; /* Restore min and mix to expected values for decimal ranges. */ if ((operand->flags & V850_OPERAND_SIGNED) @@ -1633,18 +1630,12 @@ v850_insert_operand (insn, operand, val, min = 0; if (str) - { - sprintf (buf, "%s: ", str); - - sprint_value (buf + strlen (buf), val); - } + sprintf (buf, "%s: ", str); else - sprint_value (buf, val); + buf[0] = 0; + strcat (buf, _("operand")); - if (file == (char *) NULL) - as_warn (err, buf, min, max); - else - as_warn_where (file, line, err, buf, min, max); + as_bad_value_out_of_range (buf, val, (offsetT) min, (offsetT) max, file, line); } } diff -uprN binutils-2.15.90.0.3/gas/config/tc-xtensa.c binutils-2.15.91.0.1/gas/config/tc-xtensa.c --- binutils-2.15.90.0.3/gas/config/tc-xtensa.c 2004-04-12 12:56:35.000000000 -0700 +++ binutils-2.15.91.0.1/gas/config/tc-xtensa.c 2004-05-27 11:26:03.908265431 -0700 @@ -3721,7 +3721,7 @@ xg_assemble_literal (insn) set_expr_symbol_offset (&saved_loc, frag_now->fr_symbol, frag_now_fix ()); assert (insn->insn_type == ITYPE_LITERAL); - assert (insn->ntok = 1); /* must be only one token here */ + assert (insn->ntok == 1); /* must be only one token here */ xtensa_switch_to_literal_fragment (&state); diff -uprN binutils-2.15.90.0.3/gas/configure binutils-2.15.91.0.1/gas/configure --- binutils-2.15.90.0.3/gas/configure 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/gas/configure 2004-05-27 11:26:03.190358269 -0700 @@ -2636,7 +2636,7 @@ else echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;} fi -if mkdir -p -- . 2>/dev/null; then +if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then # Keeping the `.' argument allows $(mkdir_p) to be used without # argument. Indeed, we sometimes output rules like # $(mkdir_p) $(somedir) @@ -2649,7 +2649,7 @@ else # recognize any option. It will interpret all options as # directories to create, and then abort because `.' already # exists. - for d in ./-p ./--; + for d in ./-p ./--version; do test -d $d && rmdir $d done @@ -2990,7 +2990,9 @@ else : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c - : > sub/conftst$i.h + # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with + # Solaris 8's {/usr,}/bin/sh. + touch sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf @@ -3018,9 +3020,14 @@ else grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings - # (even with -Werror). So we grep stderr for any message - # that says an option was ignored. - if grep 'ignoring option' conftest.err >/dev/null 2>&1; then :; else + # or remarks (even with -Werror). So we grep stderr for any message + # that says an option was ignored or not supported. + # When given -MP, icc 7.0 and 7.1 complain thusly: + # icc: Command line warning: ignoring option '-M'; no argument required + # The diagnosis changed in icc 8.0: + # icc: Command line remark: option '-MP' not supported + if (grep 'ignoring option' conftest.err || + grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_CC_dependencies_compiler_type=$depmode break fi @@ -3792,7 +3799,7 @@ test x"$pic_mode" = xno && libtool_flags case $host in *-*-irix6*) # Find out which ABI we are using. - echo '#line 3795 "configure"' > conftest.$ac_ext + echo '#line 3802 "configure"' > conftest.$ac_ext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? @@ -4262,6 +4269,7 @@ for this_target in $target $canon_target dlx-*-*) fmt=elf ;; fr30-*-*) fmt=elf ;; + frv-*-*linux*) fmt=elf em=linux;; frv-*-*) fmt=elf ;; hppa-*-linux*) case ${cpu} in @@ -4312,7 +4320,7 @@ for this_target in $target $canon_target i386-*-linux*coff*) fmt=coff em=linux ;; i386-*-linux-gnu*) fmt=elf em=linux ;; x86_64-*-linux-gnu*) fmt=elf em=linux ;; - i386-*-lynxos*) fmt=coff em=lynx ;; + i386-*-lynxos*) fmt=elf em=lynx bfd_gas=yes ;; i386-*-sysv[45]*) fmt=elf ;; i386-*-solaris*) fmt=elf ;; i386-*-freebsdaout*) fmt=aout em=386bsd ;; @@ -4441,7 +4449,7 @@ echo "$as_me: error: Unknown vendor for mn10300-*-*) fmt=elf ;; msp430-*-*) fmt=elf ;; openrisc-*-*) fmt=elf ;; - or32-*-rtems*) fmt=coff ;; + or32-*-rtems*) fmt=elf ;; or32-*-coff) fmt=coff ;; or32-*-elf) fmt=elf ;; pj*) fmt=elf ;; @@ -4483,8 +4491,9 @@ echo "$as_me: error: Solaris must be con ppc-*-rtems*) fmt=elf ;; ppc-*-macos*) fmt=coff em=macos ;; ppc-*-netware*) fmt=elf em=ppcnw ;; - ppc-**-nto*) fmt=elf ;; + ppc-*-nto*) fmt=elf ;; ppc-*-kaos*) fmt=elf ;; + ppc-*-lynxos*) fmt=elf em=lynx bfd_gas=yes ;; s390x-*-linux-gnu*) fmt=elf em=linux ;; s390-*-linux-gnu*) fmt=elf em=linux ;; @@ -12302,14 +12311,14 @@ echo X"$mf" | grep '^DEP_FILES *= *[^ #]' < "$mf" > /dev/null || continue # Extract the definition of DEP_FILES from the Makefile without # running `make'. - DEPDIR=`sed -n -e '/^DEPDIR = / s///p' < "$mf"` + DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` test -z "$DEPDIR" && continue # When using ansi2knr, U may be empty or an underscore; expand it - U=`sed -n -e '/^U = / s///p' < "$mf"` + U=`sed -n 's/^U = //p' < "$mf"` test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR" # We invoke sed twice because it is the simplest approach to # changing $(DEPDIR) to its actual value in the expansion. - for file in `sed -n -e ' + for file in `sed -n ' /^DEP_FILES = .*\\\\$/ { s/^DEP_FILES = // :loop diff -uprN binutils-2.15.90.0.3/gas/configure.in binutils-2.15.91.0.1/gas/configure.in --- binutils-2.15.90.0.3/gas/configure.in 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/gas/configure.in 2004-05-27 11:26:03.201356847 -0700 @@ -230,6 +230,7 @@ changequote([,])dnl dlx-*-*) fmt=elf ;; fr30-*-*) fmt=elf ;; + frv-*-*linux*) fmt=elf em=linux;; frv-*-*) fmt=elf ;; hppa-*-linux*) case ${cpu} in @@ -280,7 +281,7 @@ changequote([,])dnl i386-*-linux*coff*) fmt=coff em=linux ;; i386-*-linux-gnu*) fmt=elf em=linux ;; x86_64-*-linux-gnu*) fmt=elf em=linux ;; - i386-*-lynxos*) fmt=coff em=lynx ;; + i386-*-lynxos*) fmt=elf em=lynx bfd_gas=yes ;; changequote(,)dnl i386-*-sysv[45]*) fmt=elf ;; i386-*-solaris*) fmt=elf ;; @@ -400,7 +401,7 @@ changequote([,])dnl mn10300-*-*) fmt=elf ;; msp430-*-*) fmt=elf ;; openrisc-*-*) fmt=elf ;; - or32-*-rtems*) fmt=coff ;; + or32-*-rtems*) fmt=elf ;; or32-*-coff) fmt=coff ;; or32-*-elf) fmt=elf ;; pj*) fmt=elf ;; @@ -434,8 +435,9 @@ changequote([,])dnl ppc-*-rtems*) fmt=elf ;; ppc-*-macos*) fmt=coff em=macos ;; ppc-*-netware*) fmt=elf em=ppcnw ;; - ppc-**-nto*) fmt=elf ;; + ppc-*-nto*) fmt=elf ;; ppc-*-kaos*) fmt=elf ;; + ppc-*-lynxos*) fmt=elf em=lynx bfd_gas=yes ;; s390x-*-linux-gnu*) fmt=elf em=linux ;; s390-*-linux-gnu*) fmt=elf em=linux ;; diff -uprN binutils-2.15.90.0.3/gas/doc/Makefile.in binutils-2.15.91.0.1/gas/doc/Makefile.in --- binutils-2.15.90.0.3/gas/doc/Makefile.in 2004-04-12 12:56:35.000000000 -0700 +++ binutils-2.15.91.0.1/gas/doc/Makefile.in 2004-05-27 11:26:03.922263621 -0700 @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.8.2 from Makefile.am. +# Makefile.in generated by automake 1.8.4 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, @@ -69,7 +69,7 @@ MAKEINFOHTML = $(MAKEINFO) --html AM_MAKEINFOHTMLFLAGS = $(AM_MAKEINFOFLAGS) DVIPS = dvips man1dir = $(mandir)/man1 -am__installdirs = $(DESTDIR)$(man1dir) +am__installdirs = "$(DESTDIR)$(man1dir)" NROFF = nroff MANS = $(man_MANS) ACLOCAL = @ACLOCAL@ @@ -351,8 +351,8 @@ uninstall-info-am: list='$(INFO_DEPS)'; \ for file in $$list; do \ relfile=`echo "$$file" | sed 's|^.*/||'`; \ - echo " install-info --info-dir=$(DESTDIR)$(infodir) --remove $(DESTDIR)$(infodir)/$$relfile"; \ - install-info --info-dir=$(DESTDIR)$(infodir) --remove $(DESTDIR)$(infodir)/$$relfile; \ + echo " install-info --info-dir='$(DESTDIR)$(infodir)' --remove '$(DESTDIR)$(infodir)/$$relfile'"; \ + install-info --info-dir="$(DESTDIR)$(infodir)" --remove "$(DESTDIR)$(infodir)/$$relfile"; \ done; \ else :; fi @$(NORMAL_UNINSTALL) @@ -360,7 +360,7 @@ uninstall-info-am: for file in $$list; do \ relfile=`echo "$$file" | sed 's|^.*/||'`; \ relfile_i=`echo "$$relfile" | sed 's|\.info$$||;s|$$|.i|'`; \ - (if cd $(DESTDIR)$(infodir); then \ + (if cd "$(DESTDIR)$(infodir)"; then \ echo " rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9])"; \ rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9]; \ else :; fi); \ @@ -395,7 +395,7 @@ maintainer-clean-aminfo: clean-info: mostlyclean-aminfo install-man1: $(man1_MANS) $(man_MANS) @$(NORMAL_INSTALL) - $(mkdir_p) $(DESTDIR)$(man1dir) + test -z "$(man1dir)" || $(mkdir_p) "$(DESTDIR)$(man1dir)" @list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \ l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \ for i in $$l2; do \ @@ -414,8 +414,8 @@ install-man1: $(man1_MANS) $(man_MANS) inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ inst=`echo $$inst | sed -e 's/^.*\///'`; \ inst=`echo $$inst | sed '$(transform)'`.$$ext; \ - echo " $(INSTALL_DATA) $$file $(DESTDIR)$(man1dir)/$$inst"; \ - $(INSTALL_DATA) $$file $(DESTDIR)$(man1dir)/$$inst; \ + echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \ + $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst"; \ done uninstall-man1: @$(NORMAL_UNINSTALL) @@ -435,8 +435,8 @@ uninstall-man1: inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ inst=`echo $$inst | sed -e 's/^.*\///'`; \ inst=`echo $$inst | sed '$(transform)'`.$$ext; \ - echo " rm -f $(DESTDIR)$(man1dir)/$$inst"; \ - rm -f $(DESTDIR)$(man1dir)/$$inst; \ + echo " rm -f '$(DESTDIR)$(man1dir)/$$inst'"; \ + rm -f "$(DESTDIR)$(man1dir)/$$inst"; \ done tags: TAGS TAGS: @@ -448,7 +448,9 @@ check-am: check: check-am all-am: Makefile $(MANS) installdirs: - $(mkdir_p) $(DESTDIR)$(man1dir) + for dir in "$(DESTDIR)$(man1dir)"; do \ + test -z "$$dir" || $(mkdir_p) "$$dir"; \ + done install: install-am install-exec: install-exec-am install-data: install-data-am @@ -501,7 +503,7 @@ install-info: install-info-am install-info-am: $(INFO_DEPS) @$(NORMAL_INSTALL) - $(mkdir_p) $(DESTDIR)$(infodir) + test -z "$(infodir)" || $(mkdir_p) "$(DESTDIR)$(infodir)" @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ list='$(INFO_DEPS)'; \ for file in $$list; do \ @@ -514,8 +516,8 @@ install-info-am: $(INFO_DEPS) $$d/$$file_i[0-9] $$d/$$file_i[0-9][0-9] ; do \ if test -f $$ifile; then \ relfile=`echo "$$ifile" | sed 's|^.*/||'`; \ - echo " $(INSTALL_DATA) $$ifile $(DESTDIR)$(infodir)/$$relfile"; \ - $(INSTALL_DATA) $$ifile $(DESTDIR)$(infodir)/$$relfile; \ + echo " $(INSTALL_DATA) '$$ifile' '$(DESTDIR)$(infodir)/$$relfile'"; \ + $(INSTALL_DATA) "$$ifile" "$(DESTDIR)$(infodir)/$$relfile"; \ else : ; fi; \ done; \ done @@ -525,8 +527,8 @@ install-info-am: $(INFO_DEPS) list='$(INFO_DEPS)'; \ for file in $$list; do \ relfile=`echo "$$file" | sed 's|^.*/||'`; \ - echo " install-info --info-dir=$(DESTDIR)$(infodir) $(DESTDIR)$(infodir)/$$relfile";\ - install-info --info-dir=$(DESTDIR)$(infodir) $(DESTDIR)$(infodir)/$$relfile || :;\ + echo " install-info --info-dir='$(DESTDIR)$(infodir)' '$(DESTDIR)$(infodir)/$$relfile'";\ + install-info --info-dir="$(DESTDIR)$(infodir)" "$(DESTDIR)$(infodir)/$$relfile" || :;\ done; \ else : ; fi install-man: install-man1 diff -uprN binutils-2.15.90.0.3/gas/doc/as.texinfo binutils-2.15.91.0.1/gas/doc/as.texinfo --- binutils-2.15.90.0.3/gas/doc/as.texinfo 2004-04-14 21:26:05.000000000 -0700 +++ binutils-2.15.91.0.1/gas/doc/as.texinfo 2004-05-27 11:26:03.981255992 -0700 @@ -353,7 +353,7 @@ gcc(1), ld(1), and the Info entries for @emph{Target MIPS options:} [@b{-nocpp}] [@b{-EL}] [@b{-EB}] [@b{-O}[@var{optimization level}]] [@b{-g}[@var{debug level}]] [@b{-G} @var{num}] [@b{-KPIC}] [@b{-call_shared}] - [@b{-non_shared}] [@b{-xgot}] [@b{--membedded-pic}] + [@b{-non_shared}] [@b{-xgot}] [@b{-mabi}=@var{ABI}] [@b{-32}] [@b{-n32}] [@b{-64}] [@b{-mfp32}] [@b{-mgp32}] [@b{-march}=@var{CPU}] [@b{-mtune}=@var{CPU}] [@b{-mips1}] [@b{-mips2}] [@b{-mips3}] [@b{-mips4}] [@b{-mips5}] [@b{-mips32}] [@b{-mips32r2}] @@ -5211,7 +5211,7 @@ This is one of the ELF section stack man For ELF targets, the @code{.section} directive is used like this: @smallexample -.section @var{name} [, "@var{flags}"[, @@@var{type}[, @@@var{entsize}]]] +.section @var{name} [, "@var{flags}"[, @@@var{type}[,@var{flag_specific_arguments}]] @end smallexample The optional @var{flags} argument is a quoted string which may contain any @@ -5227,6 +5227,10 @@ section is executable section is mergeable @item S section contains zero terminated strings +@item G +section is a member of a section group +@item T +section is used for thread-local-storage @end table The optional @var{type} argument may contain one of the following constants: @@ -5235,18 +5239,50 @@ The optional @var{type} argument may con section contains data @item @@nobits section does not contain data (i.e., section only occupies space) +@item @@note +section contains data which is used by things other than the program @end table Note on targets where the @code{@@} character is the start of a comment (eg ARM) then another character is used instead. For example the ARM port uses the @code{%} character. -If @var{flags} contains @code{M} flag, @var{type} argument must be specified -as well as @var{entsize} argument. Sections with @code{M} flag but not -@code{S} flag must contain fixed size constants, each @var{entsize} octets -long. Sections with both @code{M} and @code{S} must contain zero terminated -strings where each character is @var{entsize} bytes long. The linker may remove -duplicates within sections with the same name, same entity size and same flags. +If @var{flags} contains the @code{M} symbol then the @var{type} argument must +be specified as well as an extra argument - @var{entsize} - like this: + +@smallexample +.section @var{name} , "@var{flags}"M, @@@var{type}, @var{entsize} +@end smallexample + +Sections with the @code{M} flag but not @code{S} flag must contain fixed size +constants, each @var{entsize} octets long. Sections with both @code{M} and +@code{S} must contain zero terminated strings where each character is +@var{entsize} bytes long. The linker may remove duplicates within sections with +the same name, same entity size and same flags. @var{entsize} must be an +absolute expression. + +If @var{flags} contains the @code{G} symbol then the @var{type} argument must +be present along with an additional field like this: + +@smallexample +.section @var{name} , "@var{flags}"G, @@@var{type}, @var{GroupName}[, @var{linkage}] +@end smallexample + +The @var{GroupName} field specifies the name of the section group to which this +particular section belongs. The optional linkage field can contain: +@table @code +@item comdat +indicates that only one copy of this section should be retained +@item .gnu.linkonce +an alias for comdat +@end table + +Note - if both the @var{M} and @var{G} flags are present then the fields for +the Merge flag should come first, like this: + +@smallexample +.section @var{name} , "@var{flags}"MG, @@@var{type}, @var{entsize}, @var{GroupName}[, @var{linkage}] +@end smallexample If no flags are specified, the default flags depend upon the section name. If the section name is not recognized, the default will be for the section to have @@ -5269,6 +5305,8 @@ section is allocatable section is writable @item #execinstr section is executable +@item #tls +section is used for thread local storage @end table This directive replaces the current section and subsection. The replaced diff -uprN binutils-2.15.90.0.3/gas/doc/c-hppa.texi binutils-2.15.91.0.1/gas/doc/c-hppa.texi --- binutils-2.15.90.0.3/gas/doc/c-hppa.texi 2004-04-12 12:56:35.000000000 -0700 +++ binutils-2.15.91.0.1/gas/doc/c-hppa.texi 2004-05-27 11:26:03.994254312 -0700 @@ -245,14 +245,51 @@ identified by keywords. The keywords re beginning of this subsection; a power of two), @samp{access=@var{expr}} (value for ``access rights'' field), @samp{sort=@var{expr}} (sorting order for this subspace in link), @samp{code_only} (subsection contains only code), -@samp{unloadable} (subsection cannot be loaded into memory), @samp{common} -(subsection is common block), @samp{dup_comm} (initialized data may have -duplicate names), or @samp{zero} (subsection is all zeros, do not write in -object file). +@samp{unloadable} (subsection cannot be loaded into memory), @samp{comdat} +(subsection is comdat), @samp{common} (subsection is common block), +@samp{dup_comm} (subsection may have duplicate names), or @samp{zero} +(subsection is all zeros, do not write in object file). @code{.nsubspa} always creates a new subspace with the given name, even if one with the same name already exists. +@samp{comdat}, @samp{common} and @samp{dup_comm} can be used to implement +various flavors of one-only support when using the SOM linker. The SOM +linker only supports specific combinations of these flags. The details +are not documented. A brief description is provided here. + +@samp{comdat} provides a form of linkonce support. It is useful for +both code and data subspaces. A @samp{comdat} subspace has a key symbol +marked by the @samp{is_comdat} flag or @samp{ST_COMDAT}. Only the first +subspace for any given key is selected. The key symbol becomes universal +in shared links. This is similar to the behavior of @samp{secondary_def} +symbols. + +@samp{common} provides Fortran named common support. It is only useful +for data subspaces. Symbols with the flag @samp{is_common} retain this +flag in shared links. Referencing a @samp{is_common} symbol in a shared +library from outside the library doesn't work. Thus, @samp{is_common} +symbols must be output whenever they are needed. + +@samp{common} and @samp{dup_comm} together provide Cobol common support. +The subspaces in this case must all be the same length. Otherwise, this +support is similar to the Fortran common support. + +@samp{dup_comm} by itself provides a type of one-only support for code. +Only the first @samp{dup_comm} subspace is selected. There is a rather +complex algorithm to compare subspaces. Code symbols marked with the +@samp{dup_common} flag are hidden. This support was intended for "C++ +duplicate inlines". + +A simplified technique is used to mark the flags of symbols based on +the flags of their subspace. A symbol with the scope SS_UNIVERSAL and +type ST_ENTRY, ST_CODE or ST_DATA is marked with the corresponding +settings of @samp{comdat}, @samp{common} and @samp{dup_comm} from the +subspace, respectively. This avoids having to introduce additional +directives to mark these symbols. The HP assembler sets @samp{is_common} +from @samp{common}. However, it doesn't set the @samp{dup_common} from +@samp{dup_comm}. It doesn't have @samp{comdat} support. + @item .version "@var{str}" Write @var{str} as version identifier in object code. @end table diff -uprN binutils-2.15.90.0.3/gas/doc/c-m68k.texi binutils-2.15.91.0.1/gas/doc/c-m68k.texi --- binutils-2.15.90.0.3/gas/doc/c-m68k.texi 2004-01-14 13:07:46.000000000 -0800 +++ binutils-2.15.91.0.1/gas/doc/c-m68k.texi 2004-05-27 11:26:04.008252501 -0700 @@ -1,4 +1,4 @@ -@c Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 2000, 2003 +@c Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 2000, 2003, 2004 @c Free Software Foundation, Inc. @c This is part of the GAS manual. @c For copying conditions, see the file as.texinfo. @@ -169,9 +169,13 @@ Assemble for the CPU32 family of chips. @item -m5204 @item -m5206 @item -m5206e +@item -m521x +@item -m5249 @item -m528x @item -m5307 @item -m5407 +@item -m547x +@item -m548x @item -mcfv4 @item -mcfv4e Assemble for the ColdFire family of chips. diff -uprN binutils-2.15.90.0.3/gas/dw2gencfi.c binutils-2.15.91.0.1/gas/dw2gencfi.c --- binutils-2.15.90.0.3/gas/dw2gencfi.c 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/gas/dw2gencfi.c 2004-05-27 11:26:03.203356589 -0700 @@ -845,7 +845,10 @@ output_cie (struct cie_entry *cie) out_one (0); out_uleb128 (DWARF2_LINE_MIN_INSN_LENGTH); /* Code alignment */ out_sleb128 (DWARF2_CIE_DATA_ALIGNMENT); /* Data alignment */ - out_one (cie->return_column); /* Return column */ + if (DW_CIE_VERSION == 1) /* Return column. */ + out_one (cie->return_column); + else + out_uleb128 (cie->return_column); out_uleb128 (1); /* Augmentation size */ #if defined DIFF_EXPR_OK || defined tc_cfi_emit_pcrel_expr out_one (DW_EH_PE_pcrel | DW_EH_PE_sdata4); diff -uprN binutils-2.15.90.0.3/gas/dwarf2dbg.c binutils-2.15.91.0.1/gas/dwarf2dbg.c --- binutils-2.15.90.0.3/gas/dwarf2dbg.c 2004-03-03 12:24:34.000000000 -0800 +++ binutils-2.15.91.0.1/gas/dwarf2dbg.c 2004-05-27 11:26:03.224353873 -0700 @@ -1371,7 +1371,7 @@ dwarf2_finish (void) /* Create and switch to the line number section. */ line_seg = subseg_new (".debug_line", 0); - bfd_set_section_flags (stdoutput, line_seg, SEC_READONLY); + bfd_set_section_flags (stdoutput, line_seg, SEC_READONLY | SEC_DEBUGGING); /* For each subsection, chain the debug entries together. */ for (s = all_segs; s; s = s->next) @@ -1400,9 +1400,12 @@ dwarf2_finish (void) abbrev_seg = subseg_new (".debug_abbrev", 0); aranges_seg = subseg_new (".debug_aranges", 0); - bfd_set_section_flags (stdoutput, info_seg, SEC_READONLY); - bfd_set_section_flags (stdoutput, abbrev_seg, SEC_READONLY); - bfd_set_section_flags (stdoutput, aranges_seg, SEC_READONLY); + bfd_set_section_flags (stdoutput, info_seg, + SEC_READONLY | SEC_DEBUGGING); + bfd_set_section_flags (stdoutput, abbrev_seg, + SEC_READONLY | SEC_DEBUGGING); + bfd_set_section_flags (stdoutput, aranges_seg, + SEC_READONLY | SEC_DEBUGGING); record_alignment (aranges_seg, ffs (2 * sizeof_address) - 1); diff -uprN binutils-2.15.90.0.3/gas/ecoff.c binutils-2.15.91.0.1/gas/ecoff.c --- binutils-2.15.90.0.3/gas/ecoff.c 2004-01-14 13:07:45.000000000 -0800 +++ binutils-2.15.91.0.1/gas/ecoff.c 2004-05-27 11:26:03.242351546 -0700 @@ -3685,6 +3685,8 @@ ecoff_build_lineno (const struct ecoff_d iline = 0; totcount = 0; + /* FIXME? Now that MIPS embedded-PIC is gone, it may be safe to + remove this code. */ /* For some reason the address of the first procedure is ignored when reading line numbers. This doesn't matter if the address of the first procedure is 0, but when gcc is generating MIPS diff -uprN binutils-2.15.90.0.3/gas/expr.c binutils-2.15.91.0.1/gas/expr.c --- binutils-2.15.90.0.3/gas/expr.c 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/gas/expr.c 2004-05-27 11:26:03.251350382 -0700 @@ -1021,8 +1021,9 @@ operand (expressionS *expressionP) break; case '+': - /* Do not accept ++e as +(+e) */ - if (input_line_pointer[1] == '+') + /* Do not accept ++e as +(+e). + Disabled, since the preprocessor removes whitespace. */ + if (0 && *input_line_pointer == '+') goto target_op; (void) operand (expressionP); break; @@ -1041,8 +1042,9 @@ operand (expressionS *expressionP) case '!': case '-': { - /* Do not accept --e as -(-e) */ - if (c == '-' && input_line_pointer[1] == '-') + /* Do not accept --e as -(-e) + Disabled, since the preprocessor removes whitespace. */ + if (0 && c == '-' && *input_line_pointer == '-') goto target_op; operand (expressionP); @@ -1551,8 +1553,9 @@ operator (int *num_chars) case '+': case '-': - /* Do not allow a++b and a--b to be a + (+b) and a - (-b) */ - if (input_line_pointer[1] != c) + /* Do not allow a++b and a--b to be a + (+b) and a - (-b) + Disabled, since the preprocessor removes whitespace. */ + if (1 || input_line_pointer[1] != c) return op_encoding[c]; return O_illegal; diff -uprN binutils-2.15.90.0.3/gas/messages.c binutils-2.15.91.0.1/gas/messages.c --- binutils-2.15.90.0.3/gas/messages.c 2004-01-14 13:07:45.000000000 -0800 +++ binutils-2.15.91.0.1/gas/messages.c 2004-05-27 11:26:03.259349348 -0700 @@ -503,3 +503,84 @@ sprint_value (char *buf, valueT val) #endif abort (); } + +#define HEX_MAX_THRESHOLD 1024 +#define HEX_MIN_THRESHOLD -(HEX_MAX_THRESHOLD) + +static void +as_internal_value_out_of_range (char * prefix, + offsetT val, + offsetT min, + offsetT max, + char * file, + unsigned line, + int bad) +{ + const char * err; + + if (prefix == NULL) + prefix = ""; + +#ifdef BFD_ASSEMBLER + if ( val < HEX_MAX_THRESHOLD + && min < HEX_MAX_THRESHOLD + && max < HEX_MAX_THRESHOLD + && val > HEX_MIN_THRESHOLD + && min > HEX_MIN_THRESHOLD + && max > HEX_MIN_THRESHOLD) +#endif + { + /* xgettext:c-format */ + err = _("%s out of range (%d is not between %d and %d)"); + + if (bad) + as_bad_where (file, line, err, prefix, val, min, max); + else + as_warn_where (file, line, err, prefix, val, min, max); + } +#ifdef BFD_ASSEMBLER + else + { + char val_buf [sizeof (val) * 3 + 2]; + char min_buf [sizeof (val) * 3 + 2]; + char max_buf [sizeof (val) * 3 + 2]; + + if (sizeof (val) > sizeof (bfd_vma)) + abort (); + + sprintf_vma (val_buf, val); + sprintf_vma (min_buf, min); + sprintf_vma (max_buf, max); + + /* xgettext:c-format. */ + err = _("%s out of range (0x%s is not between 0x%s and 0x%s)"); + + if (bad) + as_bad_where (file, line, err, prefix, val_buf, min_buf, max_buf); + else + as_warn_where (file, line, err, prefix, val_buf, min_buf, max_buf); + } +#endif +} + +void +as_warn_value_out_of_range (char * prefix, + offsetT value, + offsetT min, + offsetT max, + char * file, + unsigned line) +{ + as_internal_value_out_of_range (prefix, value, min, max, file, line, 0); +} + +void +as_bad_value_out_of_range (char * prefix, + offsetT value, + offsetT min, + offsetT max, + char * file, + unsigned line) +{ + as_internal_value_out_of_range (prefix, value, min, max, file, line, 1); +} diff -uprN binutils-2.15.90.0.3/gas/po/fr.po binutils-2.15.91.0.1/gas/po/fr.po --- binutils-2.15.90.0.3/gas/po/fr.po 2004-01-14 13:07:46.000000000 -0800 +++ binutils-2.15.91.0.1/gas/po/fr.po 2004-05-27 11:26:04.054246554 -0700 @@ -1,17 +1,18 @@ # Messages français pour GNU concernant gas. -# Copyright © 2001 Free Software Foundation, Inc. +# Copyright © 2004 Free Software Foundation, Inc. # Michel Robitaille , traducteur depuis/since 1996. # msgid "" msgstr "" "Project-Id-Version: GNU gas 2.14rel030712\n" "POT-Creation-Date: 2003-07-11 13:57+0930\n" -"PO-Revision-Date: 2003-08-05 08:00-0500\n" +"PO-Revision-Date: 2004-05-10 08:00-0500\n" "Last-Translator: Michel Robitaille \n" "Language-Team: French \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-1\n" "Content-Transfer-Encoding: 8-bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" #: app.c:474 app.c:488 msgid "end of file in comment" @@ -906,7 +907,7 @@ msgstr "ERREUR d'E/S lors de l'écriture #: config/obj-vms.c:1292 #, c-format -msgid "Couldn't find source file \"%s\", dUmMy=%%X%x" +msgid "Couldn't find source file \"%s\", status=%%X%x" msgstr "Ne peut repérer le fichier source « %s », état=%%X%x" #: config/obj-vms.c:1790 config/obj-vms.c:2967 diff -uprN binutils-2.15.90.0.3/gas/read.c binutils-2.15.91.0.1/gas/read.c --- binutils-2.15.90.0.3/gas/read.c 2004-04-12 12:56:34.000000000 -0700 +++ binutils-2.15.91.0.1/gas/read.c 2004-05-27 11:26:03.282346374 -0700 @@ -1155,6 +1155,9 @@ do_align (int n, char *fill, int len, in len = 0; } +#ifdef md_flush_pending_output + md_flush_pending_output (); +#endif #ifdef md_do_align md_do_align (n, fill, len, max, just_record_alignment); #endif diff -uprN binutils-2.15.90.0.3/gas/subsegs.c binutils-2.15.91.0.1/gas/subsegs.c --- binutils-2.15.90.0.3/gas/subsegs.c 2004-01-14 13:07:45.000000000 -0800 +++ binutils-2.15.91.0.1/gas/subsegs.c 2004-05-27 11:26:03.299344176 -0700 @@ -1,6 +1,6 @@ /* subsegs.c - subsegments - Copyright 1987, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2002 + 1999, 2000, 2002, 2004 Free Software Foundation, Inc. This file is part of GAS, the GNU Assembler. @@ -524,7 +524,9 @@ section_symbol (segT sec) else { s = symbol_find_base (sec->symbol->name, 0); - if (s == NULL) + /* We have to make sure it is the right symbol when we + have multiple sections with the same section name. */ + if (s == NULL || S_GET_SEGMENT (s) != sec) s = symbol_new (sec->symbol->name, sec, 0, &zero_address_frag); else { diff -uprN binutils-2.15.90.0.3/gas/symbols.c binutils-2.15.91.0.1/gas/symbols.c --- binutils-2.15.90.0.3/gas/symbols.c 2004-01-14 13:07:45.000000000 -0800 +++ binutils-2.15.91.0.1/gas/symbols.c 2004-05-27 11:26:03.302343788 -0700 @@ -1,6 +1,6 @@ /* symbols.c -symbol table- Copyright 1987, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003 + 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. This file is part of GAS, the GNU Assembler. @@ -2260,7 +2260,16 @@ symbol_set_bfdsym (symbolS *s, asymbol * { if (LOCAL_SYMBOL_CHECK (s)) s = local_symbol_convert ((struct local_symbol *) s); - s->bsym = bsym; + /* Usually, it is harmless to reset a symbol to a BFD section + symbol. For example, obj_elf_change_section sets the BFD symbol + of an old symbol with the newly created section symbol. But when + we have multiple sections with the same name, the newly created + section may have the same name as an old section. We check if the + old symbol has been already marked as a section symbol before + resetting it. */ + if ((s->bsym->flags & BSF_SECTION_SYM) == 0) + s->bsym = bsym; + /* else XXX - What do we do now ? */ } #endif /* BFD_ASSEMBLER */ diff -uprN binutils-2.15.90.0.3/gas/testsuite/ChangeLog binutils-2.15.91.0.1/gas/testsuite/ChangeLog --- binutils-2.15.90.0.3/gas/testsuite/ChangeLog 2004-04-14 21:26:05.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/ChangeLog 2004-05-27 11:26:04.055246424 -0700 @@ -1,3 +1,181 @@ +2004-05-26 H.J. Lu + + * gas/ia64/ia64.exp: Run invalid-ar. + + * gas/ia64/invalid-ar.l: New file. Test invalid AR access. + * gas/ia64/invalid-ar.s: Likewise. + +2004-05-24 Peter Barada + + * gas/m68k/mcf-emac.d: Provide correct disassembler results. + * gas/m68k/mcf-mac.d: Provide correct disassembler results. + +2004-05-20 H.J. Lu + + * gas/ia64/dv-srlz.d: Fix a typo. + +2004-05-12 Ben Elliston + + * gas/h8300/t03_add.exp: Remove stray semicolons. + * gas/h8300/t04_sub.exp: Likewise. + * gas/h8300/t05_cmp.exp: Likewise. + * gas/h8300/t08_or.exp: Likewise. + * gas/h8300/t09_xor.exp: Likewise. + * gas/h8300/t10_and.exp: Likewise. + * gas/hppa/reloc/reloc.exp: Likewise. + * gas/hppa/unsorted/unsorted.exp: Likewise. + * gas/i386/i386.exp: Likewise. + * gas/m68hc11/m68hc11.exp: Likewise. + * gas/mips/mips.exp: Likewise. + * gas/sparc/sparc.exp: Likewise. + * lib/gas-defs.exp: Likewise. + +2004-05-11 Nick Clifton + + * gas/elf/section4.s: New test. Checks label arithmetic when + multiple same-name sections exist. + * gas/elf/section4.d: New file: Expected section list + * gas/elf/elf.exp: Run the new test. + * gas/elf/group0.s: Use % instead of @ for type argument to + .section directive (for compatability with ARM port). + * gas/elf/group1.s: Likewise. + +2004-05-07 Richard Sandiford + + * gas/mips/vr4122.[sd]: Rename to... + * gas/mips/vr4120-2.[sd]: ...and add tests for VR4181A errata + MD(1) and MD(4). + * gas/mips/mips.exp: Update accordingly. + +2004-05-05 Alexandre Oliva + + * gas/frv/reloc1.d: Match elf32-frvfdpic as well. + * gas/frv/fr405-insn.d: Likewise. + * gas/frv/fr450-insn.d: Likewise. + +2004-04-30 H.J. Lu + + * gas/elf/elf.exp: Remove group1, add group1a and group1b for + section group. + + * gas/elf/group1a.d: New file. + * gas/elf/group1b.d: Likewise. + + * gas/elf/group1.e: Removed. + +2004-04-30 Nick Clifton + + * gas/arm/reg-alias.s: New file: Test case sensitive register + aliases. + * gas/arm/reg-alias.d: New file: Expected test output. + * gas/arm/arm.exp: Run reg-alias test. + Arrange tests in a more orderly fashion. + +2004-04-30 Ben Elliston + + * gas/ppc/power4.s: Add dcbz and dcbzl test cases. + * gas/ppc/power4.d: Update accordingly. + +2004-04-26 H.J. Lu + + * gas/elf/elf.exp: Add group0a, group0b and group1 for section + group. + + * gas/elf/group0.s: New file. + * gas/elf/group0a.d: Likewise. + * gas/elf/group0b.d: Likewise. + * gas/elf/group1.e: Likewise. + * gas/elf/group1.s: Likewise. + +2004-04-23 Nick Clifton + + * gas/symver/symver1.d: Cope with extra symbols inserted by + arm-elf toolchains. + * gas/symver/symver0.d: Likewise + * gas/elf/symver.d: Likewise. + +2004-04-22 Kaz Kojima + + * gas/sh/pcrel2.d: Update. + * gas/sh/tlsd.d: Update. + * gas/sh/tlsnopic.d: Update. + * gas/sh/tlspic.d: Update. + +2004-04-22 Mark Kettenis + + * lib/gas-defs.exp (is_elf_format): Add OpenBSD support. + +2004-04-22 Atsushi Nemoto + + * gas/mips/lb-xgot-ilocks.d: Remove nops in load delay slot. + * gas/mips/mips-abi32-pic.d: Likewise. + * gas/mips/mips-abi32-pic2.d: Likewise. + * gas/mips/mips-gp32-fp32-pic.d: Likewise. + * gas/mips/mips-gp32-fp64-pic.d: Likewise. + * gas/mips/mips-gp64-fp32-pic.d: Likewise. + * gas/mips/mips-gp64-fp64-pic.d: Likewise. + * gas/mips/relax-swap1-mips2.d: Likewise. + * gas/mips/lb-svr4pic-ilocks.d: New test. + * gas/mips/mips.exp: Run it. + +2004-04-22 Paul Brook + + * maverick.c (off8s): Test full shifted operand range. + (MCC2): Define. + (MVDSPACC, MVACCDSP): Use it. + * maverick.d, maverick.s: Regenerate. + +2004-04-22 Peter Barada + + * gas/m68k/mcf-mac.s: New test: Check ColdFire MAC instructions. + * gas/m68k/mcf-emac.s: New test: Similar checks. + * gas/m68k/mcf-mac.d: New test: Expected output. + * gas/m68k/mcf-emac.d: New test: Likewise. + * gas/m68k/all.exp: Run new tests. + +2004-04-21 Chris Demetriou + + * gas/mips/elempic.d: File removed as part of -membedded-pic removal. + * gas/mips/empic.d: Likewise. + * gas/mips/empic.l: Likewise. + * gas/mips/empic.s: Likewise. + * gas/mips/empic2.d: Likewise. + * gas/mips/empic2.s: Likewise. + * gas/mips/empic3_e.d: Likewise. + * gas/mips/empic3_e.s: Likewise. + * gas/mips/empic3_g1.d: Likewise. + * gas/mips/empic3_g1.s: Likewise. + * gas/mips/empic3_g2.d: Likewise. + * gas/mips/empic3_g2.s: Likewise. + * gas/mips/jal-empic-elf-2.d: Likewise. + * gas/mips/jal-empic-elf-2.s: Likewise. + * gas/mips/jal-empic-elf-3.d: Likewise. + * gas/mips/jal-empic-elf-3.s: Likewise. + * gas/mips/jal-empic-elf.d: Likewise. + * gas/mips/jal-empic.d: Likewise. + * gas/mips/la-empic.d: Likewise. + * gas/mips/la-empic.s: Likewise. + * gas/mips/lb-empic.d: Likewise. + * gas/mips/ld-empic.d: Likewise. + * gas/mips/lif-empic.d: Likewise. + * gas/mips/telempic.d: Likewise. + * gas/mips/tempic.d: Likewise. + * gas/mips/ulh-empic.d: Likewise. + * gas/mips/ld-pic.s: Remove code conditional on EMPIC. + * gas/mips/lifloat.s: Likewise. + * gas/mips/mips.exp: Remove -membedded-pic tests and related comments. + +2004-04-20 Brian Ford + DJ Delorie + + * gas/i386/secrel.s: New test for .secrel32. + * gas/i386/secrel.d: Likewise. + * gas/i386/i386.exp: Call it for PE targets. + +2004-04-19 Jakub Jelinek + + * gas/cfi/cfi-sparc64-1.d: Update. + 2004-04-14 Richard Sandiford * gas/mips/vr4122.[sd]: Change option to -mfix-vr4120. diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/arm/arm.exp binutils-2.15.91.0.1/gas/testsuite/gas/arm/arm.exp --- binutils-2.15.90.0.3/gas/testsuite/gas/arm/arm.exp 2004-03-03 12:24:34.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/arm/arm.exp 2004-05-27 11:26:04.062245519 -0700 @@ -28,66 +28,44 @@ if {[istarget *arm*-*-*] || [istarget "x run_dump_test "copro" } - run_dump_test "armv1" - - run_errors_test "armv1-bad" "-mcpu=arm7m" "ARM v1 errors" - gas_test "arm3.s" "-mcpu=arm3" $stdoptlist "Arm 3 instructions" - gas_test "arm6.s" "-mcpu=arm6" $stdoptlist "Arm 6 instructions" - gas_test "arm7dm.s" "-mcpu=arm7dm" $stdoptlist "Arm 7DM instructions" - - if {! [istarget arm*-*-aout] && ![istarget arm-*-pe]} then { - # The arm-aout port does not support Thumb mode. - gas_test "thumb.s" "-mcpu=arm7t" $stdoptlist "Thumb instructions" - } - gas_test "arch4t.s" "-march=armv4t" $stdoptlist "Arm architecture 4t instructions" - - run_dump_test "arch5tej" - gas_test "immed.s" "" $stdoptlist "immediate expressions" - gas_test "float.s" "-mcpu=arm7tdmi -mfpu=fpa" $stdoptlist "Core floating point instructions" + gas_test "offset.s" "" $stdoptlist "OFFSET_IMM regression" + run_dump_test "armv1" + run_dump_test "arch5tej" run_dump_test "fpa-monadic" - run_dump_test "fpa-dyadic" - run_dump_test "fpa-mem" - run_dump_test "vfp1xD" - run_dump_test "vfp1" - run_dump_test "vfp2" - - run_errors_test "vfp-bad" "-mfpu=vfp" "VFP errors" - run_dump_test "xscale" - run_dump_test "adrl" - - run_errors_test "req" "-mcpu=arm7m" ".req errors" - - run_dump_test "maverick" - + run_dump_test "reg-alias" + run_dump_test "maverick" run_dump_test "archv6" - run_dump_test "thumbv6" - + + run_errors_test "vfp-bad" "-mfpu=vfp" "VFP errors" + run_errors_test "req" "-mcpu=arm7m" ".req errors" + run_errors_test "armv1-bad" "-mcpu=arm7m" "ARM v1 errors" run_errors_test "r15-bad" "" "Invalid use of r15 errors" + run_errors_test "undefined" "" "Undefined local label error" if {[istarget *-*-elf*] || [istarget *-*-linux*]} then { run_dump_test "pic" - run_dump_test "mapping" } - gas_test "offset.s" "" $stdoptlist "OFFSET_IMM regression" - - run_errors_test "undefined" "" "Undefined local label error" + if {! [istarget arm*-*-aout] && ![istarget arm-*-pe]} then { + # The arm-aout port does not support Thumb mode. + gas_test "thumb.s" "-mcpu=arm7t" $stdoptlist "Thumb instructions" + } } # Not all arm targets are bi-endian, so only run this test on ones diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/arm/maverick.c binutils-2.15.91.0.1/gas/testsuite/gas/arm/maverick.c --- binutils-2.15.90.0.3/gas/testsuite/gas/arm/maverick.c 2004-03-03 12:24:34.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/arm/maverick.c 2004-05-27 11:26:04.063245390 -0700 @@ -75,16 +75,16 @@ arm_cond (func_arg * arg, insn_data * da /* The sign of an offset is actually used to determined whether the absolute value of the offset should be added or subtracted, so we - must adjust negative values so that they do not overflow: -256 is + must adjust negative values so that they do not overflow: -1024 is not valid, but -0 is distinct from +0. */ int off8s (func_arg * arg, insn_data * data) #define off8s { off8s } { int val; - char value[6]; + char value[9]; - /* Values less that -255 or between -3 and 0 are problematical. + /* Zero values are problematical. The assembler performs translations on the addressing modes for these values, meaning that we cannot just recreate the disassembler string in the LDST macro without knowing what @@ -93,26 +93,23 @@ off8s (func_arg * arg, insn_data * data) { val = get_bits (9s); } - while (val < -255 || (val > -4 && val < 1)); + while (val == -1 || val == 0); + val <<= 2; if (val < 0) { - val = - val; - val &= ~3; + val = -4 - val; sprintf (value, ", #-%i", val); data->dis_out = strdup (value); sprintf (value, ", #-%i", val); data->as_in = strdup (value); - val >>= 2; - data->bits = val; + data->bits = val >> 2; } else { - val &= ~3; sprintf (value, ", #%i", val); data->as_in = data->dis_out = strdup (value); - val >>= 2; - data->bits = val | (1 << 23); + data->bits = (val >> 2) | (1 << 23); } return 0; @@ -273,13 +270,20 @@ imm7 (func_arg *arg, insn_data *data) MCRC2 (mv ## insname, cpnum, 0, 1, opcode2, \ armreg (12), mvreg (regDSPname, 16)) +/* Move between coprocessor registers. A two operand CDP insn. */ +#define MCC2(insname, opcode1, opcode2, reg1spec, reg2spec) \ + mv_insn (insname, , \ + ((14 << 24) | ((opcode1) << 20) | \ + (4 << 8) | ((opcode2) << 5)), \ + reg1spec, comma, reg2spec) + /* Define a move from a DSP register to a DSP accumulator. */ #define MVDSPACC(insname, opcode2, regDSPname) \ - MCRC2 (mv ## insname, 6, 0, 1, opcode2, acreg (0), mvreg (regDSPname, 16)) + MCC2 (mv ## insname, 2, opcode2, acreg (12), mvreg (regDSPname, 16)) /* Define a move from a DSP accumulator to a DSP register. */ #define MVACCDSP(insname, opcode2, regDSPname) \ - MCRC2 (mv ## insname, 6, 0, 0, opcode2, mvreg (regDSPname, 0), acreg (16)) + MCC2 (mv ## insname, 1, opcode2, mvreg (regDSPname, 12), acreg (16)) /* Define move insns between a float DSP register and an ARM register. */ @@ -355,13 +359,13 @@ MVd (dlr, rdl, 0); MVd (dhr, rdh, 1); MVdx (64lr, r64l, 0); MVdx (64hr, r64h, 1); -MVfxa (al32, 32al, 0); -MVfxa (am32, 32am, 1); -MVfxa (ah32, 32ah, 2); -MVfxa (a32, 32a, 3); -MVdxa (a64, 64a, 4); -MCRC2 (mvsc32, 4, 1, 0, 7, dspsc, mvreg ("dx", 12)); -MCRC2 (mv32sc, 4, 0, 1, 7, mvreg ("dx", 12), dspsc); +MVfxa (al32, 32al, 2); +MVfxa (am32, 32am, 3); +MVfxa (ah32, 32ah, 4); +MVfxa (a32, 32a, 5); +MVdxa (a64, 64a, 6); +MCC2 (mvsc32, 2, 7, dspsc, mvreg ("dx", 12)); +MCC2 (mv32sc, 1, 7, mvreg ("dx", 12), dspsc); CDP2 (cpys, , 4, 0, 0, "f", "f"); CDP2 (cpyd, , 4, 0, 1, "d", "d"); diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/arm/maverick.d binutils-2.15.91.0.1/gas/testsuite/gas/arm/maverick.d --- binutils-2.15.90.0.3/gas/testsuite/gas/arm/maverick.d 2004-03-03 12:24:34.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/arm/maverick.d 2004-05-27 11:26:04.076243709 -0700 @@ -8,470 +8,470 @@ Disassembly of section .text: # load_store: -0*0 0d ?9d ?54 ?3f ? * cfldrseq mvf5, ?\[sp, #252\] -0*4 4d ?9b ?e4 ?12 ? * cfldrsmi mvf14, ?\[fp, #72\] -0*8 7d ?1c ?24 ?3c ? * cfldrsvc mvf2, ?\[ip, #-240\] -0*c bd ?9a ?04 ?3f ? * cfldrslt mvf0, ?\[sl, #252\] -0*10 cd ?9b ?a4 ?12 ? * cfldrsgt mvf10, ?\[fp, #72\] -0*14 dd ?3c ?64 ?3c ? * cfldrsle mvf6, ?\[ip, #-240\]! -0*18 9d ?ba ?04 ?3f ? * cfldrsls mvf0, ?\[sl, #252\]! -0*1c 4d ?bb ?e4 ?12 ? * cfldrsmi mvf14, ?\[fp, #72\]! -0*20 7d ?3c ?24 ?3c ? * cfldrsvc mvf2, ?\[ip, #-240\]! -0*24 bd ?ba ?04 ?3f ? * cfldrslt mvf0, ?\[sl, #252\]! -0*28 cc ?bb ?a4 ?12 ? * cfldrsgt mvf10, ?\[fp\], #72 -0*2c dc ?3c ?64 ?3c ? * cfldrsle mvf6, ?\[ip\], #-240 -0*30 9c ?ba ?04 ?3f ? * cfldrsls mvf0, ?\[sl\], #252 -0*34 4c ?bb ?e4 ?12 ? * cfldrsmi mvf14, ?\[fp\], #72 -0*38 7c ?3c ?24 ?3c ? * cfldrsvc mvf2, ?\[ip\], #-240 -0*3c bd ?da ?04 ?3f ? * cfldrdlt mvd0, ?\[sl, #252\] -0*40 cd ?db ?a4 ?12 ? * cfldrdgt mvd10, ?\[fp, #72\] -0*44 dd ?5c ?64 ?3c ? * cfldrdle mvd6, ?\[ip, #-240\] -0*48 9d ?da ?04 ?3f ? * cfldrdls mvd0, ?\[sl, #252\] -0*4c 4d ?db ?e4 ?12 ? * cfldrdmi mvd14, ?\[fp, #72\] -0*50 7d ?7c ?24 ?3c ? * cfldrdvc mvd2, ?\[ip, #-240\]! -0*54 bd ?fa ?04 ?3f ? * cfldrdlt mvd0, ?\[sl, #252\]! -0*58 cd ?fb ?a4 ?12 ? * cfldrdgt mvd10, ?\[fp, #72\]! -0*5c dd ?7c ?64 ?3c ? * cfldrdle mvd6, ?\[ip, #-240\]! -0*60 9d ?fa ?04 ?3f ? * cfldrdls mvd0, ?\[sl, #252\]! -0*64 4c ?fb ?e4 ?12 ? * cfldrdmi mvd14, ?\[fp\], #72 -0*68 7c ?7c ?24 ?3c ? * cfldrdvc mvd2, ?\[ip\], #-240 -0*6c bc ?fa ?04 ?3f ? * cfldrdlt mvd0, ?\[sl\], #252 -0*70 cc ?fb ?a4 ?12 ? * cfldrdgt mvd10, ?\[fp\], #72 -0*74 dc ?7c ?64 ?3c ? * cfldrdle mvd6, ?\[ip\], #-240 -0*78 9d ?9a ?05 ?3f ? * cfldr32ls mvfx0, ?\[sl, #252\] -0*7c 4d ?9b ?e5 ?12 ? * cfldr32mi mvfx14, ?\[fp, #72\] -0*80 7d ?1c ?25 ?3c ? * cfldr32vc mvfx2, ?\[ip, #-240\] -0*84 bd ?9a ?05 ?3f ? * cfldr32lt mvfx0, ?\[sl, #252\] -0*88 cd ?9b ?a5 ?12 ? * cfldr32gt mvfx10, ?\[fp, #72\] -0*8c dd ?3c ?65 ?3c ? * cfldr32le mvfx6, ?\[ip, #-240\]! -0*90 9d ?ba ?05 ?3f ? * cfldr32ls mvfx0, ?\[sl, #252\]! -0*94 4d ?bb ?e5 ?12 ? * cfldr32mi mvfx14, ?\[fp, #72\]! -0*98 7d ?3c ?25 ?3c ? * cfldr32vc mvfx2, ?\[ip, #-240\]! -0*9c bd ?ba ?05 ?3f ? * cfldr32lt mvfx0, ?\[sl, #252\]! -0*a0 cc ?bb ?a5 ?12 ? * cfldr32gt mvfx10, ?\[fp\], #72 -0*a4 dc ?3c ?65 ?3c ? * cfldr32le mvfx6, ?\[ip\], #-240 -0*a8 9c ?ba ?05 ?3f ? * cfldr32ls mvfx0, ?\[sl\], #252 -0*ac 4c ?bb ?e5 ?12 ? * cfldr32mi mvfx14, ?\[fp\], #72 -0*b0 7c ?3c ?25 ?3c ? * cfldr32vc mvfx2, ?\[ip\], #-240 -0*b4 bd ?da ?05 ?3f ? * cfldr64lt mvdx0, ?\[sl, #252\] -0*b8 cd ?db ?a5 ?12 ? * cfldr64gt mvdx10, ?\[fp, #72\] -0*bc dd ?5c ?65 ?3c ? * cfldr64le mvdx6, ?\[ip, #-240\] -0*c0 9d ?da ?05 ?3f ? * cfldr64ls mvdx0, ?\[sl, #252\] -0*c4 4d ?db ?e5 ?12 ? * cfldr64mi mvdx14, ?\[fp, #72\] -0*c8 7d ?7c ?25 ?3c ? * cfldr64vc mvdx2, ?\[ip, #-240\]! -0*cc bd ?fa ?05 ?3f ? * cfldr64lt mvdx0, ?\[sl, #252\]! -0*d0 cd ?fb ?a5 ?12 ? * cfldr64gt mvdx10, ?\[fp, #72\]! -0*d4 dd ?7c ?65 ?3c ? * cfldr64le mvdx6, ?\[ip, #-240\]! -0*d8 9d ?fa ?05 ?3f ? * cfldr64ls mvdx0, ?\[sl, #252\]! -0*dc 4c ?fb ?e5 ?12 ? * cfldr64mi mvdx14, ?\[fp\], #72 -0*e0 7c ?7c ?25 ?3c ? * cfldr64vc mvdx2, ?\[ip\], #-240 -0*e4 bc ?fa ?05 ?3f ? * cfldr64lt mvdx0, ?\[sl\], #252 -0*e8 cc ?fb ?a5 ?12 ? * cfldr64gt mvdx10, ?\[fp\], #72 -0*ec dc ?7c ?65 ?3c ? * cfldr64le mvdx6, ?\[ip\], #-240 -0*f0 9d ?8a ?04 ?3f ? * cfstrsls mvf0, ?\[sl, #252\] -0*f4 4d ?8b ?e4 ?12 ? * cfstrsmi mvf14, ?\[fp, #72\] -0*f8 7d ?0c ?24 ?3c ? * cfstrsvc mvf2, ?\[ip, #-240\] -0*fc bd ?8a ?04 ?3f ? * cfstrslt mvf0, ?\[sl, #252\] -0*100 cd ?8b ?a4 ?12 ? * cfstrsgt mvf10, ?\[fp, #72\] -0*104 dd ?2c ?64 ?3c ? * cfstrsle mvf6, ?\[ip, #-240\]! -0*108 9d ?aa ?04 ?3f ? * cfstrsls mvf0, ?\[sl, #252\]! -0*10c 4d ?ab ?e4 ?12 ? * cfstrsmi mvf14, ?\[fp, #72\]! -0*110 7d ?2c ?24 ?3c ? * cfstrsvc mvf2, ?\[ip, #-240\]! -0*114 bd ?aa ?04 ?3f ? * cfstrslt mvf0, ?\[sl, #252\]! -0*118 cc ?ab ?a4 ?12 ? * cfstrsgt mvf10, ?\[fp\], #72 -0*11c dc ?2c ?64 ?3c ? * cfstrsle mvf6, ?\[ip\], #-240 -0*120 9c ?aa ?04 ?3f ? * cfstrsls mvf0, ?\[sl\], #252 -0*124 4c ?ab ?e4 ?12 ? * cfstrsmi mvf14, ?\[fp\], #72 -0*128 7c ?2c ?24 ?3c ? * cfstrsvc mvf2, ?\[ip\], #-240 -0*12c bd ?ca ?04 ?3f ? * cfstrdlt mvd0, ?\[sl, #252\] -0*130 cd ?cb ?a4 ?12 ? * cfstrdgt mvd10, ?\[fp, #72\] -0*134 dd ?4c ?64 ?3c ? * cfstrdle mvd6, ?\[ip, #-240\] -0*138 9d ?ca ?04 ?3f ? * cfstrdls mvd0, ?\[sl, #252\] -0*13c 4d ?cb ?e4 ?12 ? * cfstrdmi mvd14, ?\[fp, #72\] -0*140 7d ?6c ?24 ?3c ? * cfstrdvc mvd2, ?\[ip, #-240\]! -0*144 bd ?ea ?04 ?3f ? * cfstrdlt mvd0, ?\[sl, #252\]! -0*148 cd ?eb ?a4 ?12 ? * cfstrdgt mvd10, ?\[fp, #72\]! -0*14c dd ?6c ?64 ?3c ? * cfstrdle mvd6, ?\[ip, #-240\]! -0*150 9d ?ea ?04 ?3f ? * cfstrdls mvd0, ?\[sl, #252\]! -0*154 4c ?eb ?e4 ?12 ? * cfstrdmi mvd14, ?\[fp\], #72 -0*158 7c ?6c ?24 ?3c ? * cfstrdvc mvd2, ?\[ip\], #-240 -0*15c bc ?ea ?04 ?3f ? * cfstrdlt mvd0, ?\[sl\], #252 -0*160 cc ?eb ?a4 ?12 ? * cfstrdgt mvd10, ?\[fp\], #72 -0*164 dc ?6c ?64 ?3c ? * cfstrdle mvd6, ?\[ip\], #-240 -0*168 9d ?8a ?05 ?3f ? * cfstr32ls mvfx0, ?\[sl, #252\] -0*16c 4d ?8b ?e5 ?12 ? * cfstr32mi mvfx14, ?\[fp, #72\] -0*170 7d ?0c ?25 ?3c ? * cfstr32vc mvfx2, ?\[ip, #-240\] -0*174 bd ?8a ?05 ?3f ? * cfstr32lt mvfx0, ?\[sl, #252\] -0*178 cd ?8b ?a5 ?12 ? * cfstr32gt mvfx10, ?\[fp, #72\] -0*17c dd ?2c ?65 ?3c ? * cfstr32le mvfx6, ?\[ip, #-240\]! -0*180 9d ?aa ?05 ?3f ? * cfstr32ls mvfx0, ?\[sl, #252\]! -0*184 4d ?ab ?e5 ?12 ? * cfstr32mi mvfx14, ?\[fp, #72\]! -0*188 7d ?2c ?25 ?3c ? * cfstr32vc mvfx2, ?\[ip, #-240\]! -0*18c bd ?aa ?05 ?3f ? * cfstr32lt mvfx0, ?\[sl, #252\]! -0*190 cc ?ab ?a5 ?12 ? * cfstr32gt mvfx10, ?\[fp\], #72 -0*194 dc ?2c ?65 ?3c ? * cfstr32le mvfx6, ?\[ip\], #-240 -0*198 9c ?aa ?05 ?3f ? * cfstr32ls mvfx0, ?\[sl\], #252 -0*19c 4c ?ab ?e5 ?12 ? * cfstr32mi mvfx14, ?\[fp\], #72 -0*1a0 7c ?2c ?25 ?3c ? * cfstr32vc mvfx2, ?\[ip\], #-240 -0*1a4 bd ?ca ?05 ?3f ? * cfstr64lt mvdx0, ?\[sl, #252\] -0*1a8 cd ?cb ?a5 ?12 ? * cfstr64gt mvdx10, ?\[fp, #72\] -0*1ac dd ?4c ?65 ?3c ? * cfstr64le mvdx6, ?\[ip, #-240\] -0*1b0 9d ?ca ?05 ?3f ? * cfstr64ls mvdx0, ?\[sl, #252\] -0*1b4 4d ?cb ?e5 ?12 ? * cfstr64mi mvdx14, ?\[fp, #72\] -0*1b8 7d ?6c ?25 ?3c ? * cfstr64vc mvdx2, ?\[ip, #-240\]! -0*1bc bd ?ea ?05 ?3f ? * cfstr64lt mvdx0, ?\[sl, #252\]! -0*1c0 cd ?eb ?a5 ?12 ? * cfstr64gt mvdx10, ?\[fp, #72\]! -0*1c4 dd ?6c ?65 ?3c ? * cfstr64le mvdx6, ?\[ip, #-240\]! -0*1c8 9d ?ea ?05 ?3f ? * cfstr64ls mvdx0, ?\[sl, #252\]! -0*1cc 4c ?eb ?e5 ?12 ? * cfstr64mi mvdx14, ?\[fp\], #72 -0*1d0 7c ?6c ?25 ?3c ? * cfstr64vc mvdx2, ?\[ip\], #-240 -0*1d4 bc ?ea ?05 ?3f ? * cfstr64lt mvdx0, ?\[sl\], #252 -0*1d8 cc ?eb ?a5 ?12 ? * cfstr64gt mvdx10, ?\[fp\], #72 -0*1dc dc ?6c ?65 ?3c ? * cfstr64le mvdx6, ?\[ip\], #-240 +0*0 0d ?9d ?54 ?ff ? * cfldrseq mvf5, ?\[sp, #1020\] +0*4 4d ?9b ?e4 ?49 ? * cfldrsmi mvf14, ?\[fp, #292\] +0*8 7d ?1c ?24 ?ef ? * cfldrsvc mvf2, ?\[ip, #-956\] +0*c bd ?1a ?04 ?ff ? * cfldrslt mvf0, ?\[sl, #-1020\] +0*10 3d ?11 ?c4 ?27 ? * cfldrscc mvf12, ?\[r1, #-156\] +0*14 ed ?bf ?d4 ?68 ? * cfldrs mvf13, ?\[pc, #416\]! +0*18 2d ?30 ?94 ?ff ? * cfldrscs mvf9, ?\[r0, #-1020\]! +0*1c 9d ?31 ?44 ?27 ? * cfldrsls mvf4, ?\[r1, #-156\]! +0*20 dd ?bf ?74 ?68 ? * cfldrsle mvf7, ?\[pc, #416\]! +0*24 6d ?30 ?b4 ?ff ? * cfldrsvs mvf11, ?\[r0, #-1020\]! +0*28 3c ?31 ?c4 ?27 ? * cfldrscc mvf12, ?\[r1\], #-156 +0*2c ec ?bf ?d4 ?68 ? * cfldrs mvf13, ?\[pc\], #416 +0*30 2c ?30 ?94 ?ff ? * cfldrscs mvf9, ?\[r0\], #-1020 +0*34 9c ?31 ?44 ?27 ? * cfldrsls mvf4, ?\[r1\], #-156 +0*38 dc ?bf ?74 ?68 ? * cfldrsle mvf7, ?\[pc\], #416 +0*3c 6d ?50 ?b4 ?ff ? * cfldrdvs mvd11, ?\[r0, #-1020\] +0*40 3d ?51 ?c4 ?27 ? * cfldrdcc mvd12, ?\[r1, #-156\] +0*44 ed ?df ?d4 ?68 ? * cfldrd mvd13, ?\[pc, #416\] +0*48 2d ?50 ?94 ?ff ? * cfldrdcs mvd9, ?\[r0, #-1020\] +0*4c 9d ?51 ?44 ?27 ? * cfldrdls mvd4, ?\[r1, #-156\] +0*50 dd ?ff ?74 ?68 ? * cfldrdle mvd7, ?\[pc, #416\]! +0*54 6d ?70 ?b4 ?ff ? * cfldrdvs mvd11, ?\[r0, #-1020\]! +0*58 3d ?71 ?c4 ?27 ? * cfldrdcc mvd12, ?\[r1, #-156\]! +0*5c ed ?ff ?d4 ?68 ? * cfldrd mvd13, ?\[pc, #416\]! +0*60 2d ?70 ?94 ?ff ? * cfldrdcs mvd9, ?\[r0, #-1020\]! +0*64 9c ?71 ?44 ?27 ? * cfldrdls mvd4, ?\[r1\], #-156 +0*68 dc ?ff ?74 ?68 ? * cfldrdle mvd7, ?\[pc\], #416 +0*6c 6c ?70 ?b4 ?ff ? * cfldrdvs mvd11, ?\[r0\], #-1020 +0*70 3c ?71 ?c4 ?27 ? * cfldrdcc mvd12, ?\[r1\], #-156 +0*74 ec ?ff ?d4 ?68 ? * cfldrd mvd13, ?\[pc\], #416 +0*78 2d ?10 ?95 ?ff ? * cfldr32cs mvfx9, ?\[r0, #-1020\] +0*7c 9d ?11 ?45 ?27 ? * cfldr32ls mvfx4, ?\[r1, #-156\] +0*80 dd ?9f ?75 ?68 ? * cfldr32le mvfx7, ?\[pc, #416\] +0*84 6d ?10 ?b5 ?ff ? * cfldr32vs mvfx11, ?\[r0, #-1020\] +0*88 3d ?11 ?c5 ?27 ? * cfldr32cc mvfx12, ?\[r1, #-156\] +0*8c ed ?bf ?d5 ?68 ? * cfldr32 mvfx13, ?\[pc, #416\]! +0*90 2d ?30 ?95 ?ff ? * cfldr32cs mvfx9, ?\[r0, #-1020\]! +0*94 9d ?31 ?45 ?27 ? * cfldr32ls mvfx4, ?\[r1, #-156\]! +0*98 dd ?bf ?75 ?68 ? * cfldr32le mvfx7, ?\[pc, #416\]! +0*9c 6d ?30 ?b5 ?ff ? * cfldr32vs mvfx11, ?\[r0, #-1020\]! +0*a0 3c ?31 ?c5 ?27 ? * cfldr32cc mvfx12, ?\[r1\], #-156 +0*a4 ec ?bf ?d5 ?68 ? * cfldr32 mvfx13, ?\[pc\], #416 +0*a8 2c ?30 ?95 ?ff ? * cfldr32cs mvfx9, ?\[r0\], #-1020 +0*ac 9c ?31 ?45 ?27 ? * cfldr32ls mvfx4, ?\[r1\], #-156 +0*b0 dc ?bf ?75 ?68 ? * cfldr32le mvfx7, ?\[pc\], #416 +0*b4 6d ?50 ?b5 ?ff ? * cfldr64vs mvdx11, ?\[r0, #-1020\] +0*b8 3d ?51 ?c5 ?27 ? * cfldr64cc mvdx12, ?\[r1, #-156\] +0*bc ed ?df ?d5 ?68 ? * cfldr64 mvdx13, ?\[pc, #416\] +0*c0 2d ?50 ?95 ?ff ? * cfldr64cs mvdx9, ?\[r0, #-1020\] +0*c4 9d ?51 ?45 ?27 ? * cfldr64ls mvdx4, ?\[r1, #-156\] +0*c8 dd ?ff ?75 ?68 ? * cfldr64le mvdx7, ?\[pc, #416\]! +0*cc 6d ?70 ?b5 ?ff ? * cfldr64vs mvdx11, ?\[r0, #-1020\]! +0*d0 3d ?71 ?c5 ?27 ? * cfldr64cc mvdx12, ?\[r1, #-156\]! +0*d4 ed ?ff ?d5 ?68 ? * cfldr64 mvdx13, ?\[pc, #416\]! +0*d8 2d ?70 ?95 ?ff ? * cfldr64cs mvdx9, ?\[r0, #-1020\]! +0*dc 9c ?71 ?45 ?27 ? * cfldr64ls mvdx4, ?\[r1\], #-156 +0*e0 dc ?ff ?75 ?68 ? * cfldr64le mvdx7, ?\[pc\], #416 +0*e4 6c ?70 ?b5 ?ff ? * cfldr64vs mvdx11, ?\[r0\], #-1020 +0*e8 3c ?71 ?c5 ?27 ? * cfldr64cc mvdx12, ?\[r1\], #-156 +0*ec ec ?ff ?d5 ?68 ? * cfldr64 mvdx13, ?\[pc\], #416 +0*f0 2d ?00 ?94 ?ff ? * cfstrscs mvf9, ?\[r0, #-1020\] +0*f4 9d ?01 ?44 ?27 ? * cfstrsls mvf4, ?\[r1, #-156\] +0*f8 dd ?8f ?74 ?68 ? * cfstrsle mvf7, ?\[pc, #416\] +0*fc 6d ?00 ?b4 ?ff ? * cfstrsvs mvf11, ?\[r0, #-1020\] +0*100 3d ?01 ?c4 ?27 ? * cfstrscc mvf12, ?\[r1, #-156\] +0*104 ed ?af ?d4 ?68 ? * cfstrs mvf13, ?\[pc, #416\]! +0*108 2d ?20 ?94 ?ff ? * cfstrscs mvf9, ?\[r0, #-1020\]! +0*10c 9d ?21 ?44 ?27 ? * cfstrsls mvf4, ?\[r1, #-156\]! +0*110 dd ?af ?74 ?68 ? * cfstrsle mvf7, ?\[pc, #416\]! +0*114 6d ?20 ?b4 ?ff ? * cfstrsvs mvf11, ?\[r0, #-1020\]! +0*118 3c ?21 ?c4 ?27 ? * cfstrscc mvf12, ?\[r1\], #-156 +0*11c ec ?af ?d4 ?68 ? * cfstrs mvf13, ?\[pc\], #416 +0*120 2c ?20 ?94 ?ff ? * cfstrscs mvf9, ?\[r0\], #-1020 +0*124 9c ?21 ?44 ?27 ? * cfstrsls mvf4, ?\[r1\], #-156 +0*128 dc ?af ?74 ?68 ? * cfstrsle mvf7, ?\[pc\], #416 +0*12c 6d ?40 ?b4 ?ff ? * cfstrdvs mvd11, ?\[r0, #-1020\] +0*130 3d ?41 ?c4 ?27 ? * cfstrdcc mvd12, ?\[r1, #-156\] +0*134 ed ?cf ?d4 ?68 ? * cfstrd mvd13, ?\[pc, #416\] +0*138 2d ?40 ?94 ?ff ? * cfstrdcs mvd9, ?\[r0, #-1020\] +0*13c 9d ?41 ?44 ?27 ? * cfstrdls mvd4, ?\[r1, #-156\] +0*140 dd ?ef ?74 ?68 ? * cfstrdle mvd7, ?\[pc, #416\]! +0*144 6d ?60 ?b4 ?ff ? * cfstrdvs mvd11, ?\[r0, #-1020\]! +0*148 3d ?61 ?c4 ?27 ? * cfstrdcc mvd12, ?\[r1, #-156\]! +0*14c ed ?ef ?d4 ?68 ? * cfstrd mvd13, ?\[pc, #416\]! +0*150 2d ?60 ?94 ?ff ? * cfstrdcs mvd9, ?\[r0, #-1020\]! +0*154 9c ?61 ?44 ?27 ? * cfstrdls mvd4, ?\[r1\], #-156 +0*158 dc ?ef ?74 ?68 ? * cfstrdle mvd7, ?\[pc\], #416 +0*15c 6c ?60 ?b4 ?ff ? * cfstrdvs mvd11, ?\[r0\], #-1020 +0*160 3c ?61 ?c4 ?27 ? * cfstrdcc mvd12, ?\[r1\], #-156 +0*164 ec ?ef ?d4 ?68 ? * cfstrd mvd13, ?\[pc\], #416 +0*168 2d ?00 ?95 ?ff ? * cfstr32cs mvfx9, ?\[r0, #-1020\] +0*16c 9d ?01 ?45 ?27 ? * cfstr32ls mvfx4, ?\[r1, #-156\] +0*170 dd ?8f ?75 ?68 ? * cfstr32le mvfx7, ?\[pc, #416\] +0*174 6d ?00 ?b5 ?ff ? * cfstr32vs mvfx11, ?\[r0, #-1020\] +0*178 3d ?01 ?c5 ?27 ? * cfstr32cc mvfx12, ?\[r1, #-156\] +0*17c ed ?af ?d5 ?68 ? * cfstr32 mvfx13, ?\[pc, #416\]! +0*180 2d ?20 ?95 ?ff ? * cfstr32cs mvfx9, ?\[r0, #-1020\]! +0*184 9d ?21 ?45 ?27 ? * cfstr32ls mvfx4, ?\[r1, #-156\]! +0*188 dd ?af ?75 ?68 ? * cfstr32le mvfx7, ?\[pc, #416\]! +0*18c 6d ?20 ?b5 ?ff ? * cfstr32vs mvfx11, ?\[r0, #-1020\]! +0*190 3c ?21 ?c5 ?27 ? * cfstr32cc mvfx12, ?\[r1\], #-156 +0*194 ec ?af ?d5 ?68 ? * cfstr32 mvfx13, ?\[pc\], #416 +0*198 2c ?20 ?95 ?ff ? * cfstr32cs mvfx9, ?\[r0\], #-1020 +0*19c 9c ?21 ?45 ?27 ? * cfstr32ls mvfx4, ?\[r1\], #-156 +0*1a0 dc ?af ?75 ?68 ? * cfstr32le mvfx7, ?\[pc\], #416 +0*1a4 6d ?40 ?b5 ?ff ? * cfstr64vs mvdx11, ?\[r0, #-1020\] +0*1a8 3d ?41 ?c5 ?27 ? * cfstr64cc mvdx12, ?\[r1, #-156\] +0*1ac ed ?cf ?d5 ?68 ? * cfstr64 mvdx13, ?\[pc, #416\] +0*1b0 2d ?40 ?95 ?ff ? * cfstr64cs mvdx9, ?\[r0, #-1020\] +0*1b4 9d ?41 ?45 ?27 ? * cfstr64ls mvdx4, ?\[r1, #-156\] +0*1b8 dd ?ef ?75 ?68 ? * cfstr64le mvdx7, ?\[pc, #416\]! +0*1bc 6d ?60 ?b5 ?ff ? * cfstr64vs mvdx11, ?\[r0, #-1020\]! +0*1c0 3d ?61 ?c5 ?27 ? * cfstr64cc mvdx12, ?\[r1, #-156\]! +0*1c4 ed ?ef ?d5 ?68 ? * cfstr64 mvdx13, ?\[pc, #416\]! +0*1c8 2d ?60 ?95 ?ff ? * cfstr64cs mvdx9, ?\[r0, #-1020\]! +0*1cc 9c ?61 ?45 ?27 ? * cfstr64ls mvdx4, ?\[r1\], #-156 +0*1d0 dc ?ef ?75 ?68 ? * cfstr64le mvdx7, ?\[pc\], #416 +0*1d4 6c ?60 ?b5 ?ff ? * cfstr64vs mvdx11, ?\[r0\], #-1020 +0*1d8 3c ?61 ?c5 ?27 ? * cfstr64cc mvdx12, ?\[r1\], #-156 +0*1dc ec ?ef ?d5 ?68 ? * cfstr64 mvdx13, ?\[pc\], #416 # move: -0*1e0 9e ?00 ?a4 ?50 ? * cfmvsrls mvf0, ?sl -0*1e4 ee ?0a ?44 ?50 ? * cfmvsr mvf10, ?r4 -0*1e8 4e ?0e ?b4 ?50 ? * cfmvsrmi mvf14, ?fp -0*1ec 8e ?0d ?54 ?50 ? * cfmvsrhi mvf13, ?r5 -0*1f0 2e ?01 ?64 ?50 ? * cfmvsrcs mvf1, ?r6 -0*1f4 6e ?10 ?34 ?50 ? * cfmvrsvs r3, ?mvf0 -0*1f8 7e ?1e ?d4 ?50 ? * cfmvrsvc sp, ?mvf14 -0*1fc 3e ?1a ?e4 ?50 ? * cfmvrscc lr, ?mvf10 -0*200 1e ?1f ?84 ?50 ? * cfmvrsne r8, ?mvf15 -0*204 de ?1b ?f4 ?50 ? * cfmvrsle pc, ?mvf11 -0*208 4e ?02 ?34 ?10 ? * cfmvdlrmi mvd2, ?r3 -0*20c 0e ?05 ?d4 ?10 ? * cfmvdlreq mvd5, ?sp -0*210 ae ?09 ?e4 ?10 ? * cfmvdlrge mvd9, ?lr -0*214 ee ?03 ?84 ?10 ? * cfmvdlr mvd3, ?r8 -0*218 de ?07 ?f4 ?10 ? * cfmvdlrle mvd7, ?pc -0*21c 1e ?16 ?64 ?10 ? * cfmvrdlne r6, ?mvd6 -0*220 be ?17 ?04 ?10 ? * cfmvrdllt r0, ?mvd7 -0*224 5e ?13 ?74 ?10 ? * cfmvrdlpl r7, ?mvd3 -0*228 ce ?11 ?14 ?10 ? * cfmvrdlgt r1, ?mvd1 -0*22c 8e ?1d ?24 ?10 ? * cfmvrdlhi r2, ?mvd13 -0*230 6e ?0b ?64 ?30 ? * cfmvdhrvs mvd11, ?r6 -0*234 2e ?09 ?04 ?30 ? * cfmvdhrcs mvd9, ?r0 -0*238 5e ?0f ?74 ?30 ? * cfmvdhrpl mvd15, ?r7 -0*23c 9e ?04 ?14 ?30 ? * cfmvdhrls mvd4, ?r1 -0*240 3e ?08 ?24 ?30 ? * cfmvdhrcc mvd8, ?r2 -0*244 7e ?11 ?f4 ?30 ? * cfmvrdhvc pc, ?mvd1 -0*248 ce ?1b ?94 ?30 ? * cfmvrdhgt r9, ?mvd11 -0*24c 0e ?15 ?a4 ?30 ? * cfmvrdheq sl, ?mvd5 -0*250 ee ?1c ?44 ?30 ? * cfmvrdh r4, ?mvd12 -0*254 ae ?18 ?b4 ?30 ? * cfmvrdhge fp, ?mvd8 -0*258 ee ?0d ?f5 ?10 ? * cfmv64lr mvdx13, ?pc -0*25c be ?04 ?95 ?10 ? * cfmv64lrlt mvdx4, ?r9 -0*260 9e ?00 ?a5 ?10 ? * cfmv64lrls mvdx0, ?sl -0*264 ee ?0a ?45 ?10 ? * cfmv64lr mvdx10, ?r4 -0*268 4e ?0e ?b5 ?10 ? * cfmv64lrmi mvdx14, ?fp -0*26c 8e ?17 ?25 ?10 ? * cfmvr64lhi r2, ?mvdx7 -0*270 2e ?1c ?c5 ?10 ? * cfmvr64lcs ip, ?mvdx12 -0*274 6e ?10 ?35 ?10 ? * cfmvr64lvs r3, ?mvdx0 -0*278 7e ?1e ?d5 ?10 ? * cfmvr64lvc sp, ?mvdx14 -0*27c 3e ?1a ?e5 ?10 ? * cfmvr64lcc lr, ?mvdx10 -0*280 1e ?08 ?25 ?30 ? * cfmv64hrne mvdx8, ?r2 -0*284 de ?06 ?c5 ?30 ? * cfmv64hrle mvdx6, ?ip -0*288 4e ?02 ?35 ?30 ? * cfmv64hrmi mvdx2, ?r3 -0*28c 0e ?05 ?d5 ?30 ? * cfmv64hreq mvdx5, ?sp -0*290 ae ?09 ?e5 ?30 ? * cfmv64hrge mvdx9, ?lr -0*294 ee ?18 ?b5 ?30 ? * cfmvr64h fp, ?mvdx8 -0*298 de ?12 ?55 ?30 ? * cfmvr64hle r5, ?mvdx2 -0*29c 1e ?16 ?65 ?30 ? * cfmvr64hne r6, ?mvdx6 -0*2a0 be ?17 ?05 ?30 ? * cfmvr64hlt r0, ?mvdx7 -0*2a4 5e ?13 ?75 ?30 ? * cfmvr64hpl r7, ?mvdx3 -0*2a8 ce ?21 ?14 ?40 ? * cfmval32gt mvax1, ?mvfx1 -0*2ac 8e ?2d ?34 ?40 ? * cfmval32hi mvax3, ?mvfx13 -0*2b0 6e ?24 ?34 ?40 ? * cfmval32vs mvax3, ?mvfx4 -0*2b4 2e ?20 ?14 ?40 ? * cfmval32cs mvax1, ?mvfx0 -0*2b8 5e ?2a ?34 ?40 ? * cfmval32pl mvax3, ?mvfx10 -0*2bc 9e ?11 ?44 ?40 ? * cfmv32alls mvfx4, ?mvax1 -0*2c0 3e ?13 ?84 ?40 ? * cfmv32alcc mvfx8, ?mvax3 -0*2c4 7e ?13 ?24 ?40 ? * cfmv32alvc mvfx2, ?mvax3 -0*2c8 ce ?11 ?64 ?40 ? * cfmv32algt mvfx6, ?mvax1 -0*2cc 0e ?13 ?74 ?40 ? * cfmv32aleq mvfx7, ?mvax3 -0*2d0 ee ?2c ?24 ?60 ? * cfmvam32 mvax2, ?mvfx12 -0*2d4 ae ?28 ?34 ?60 ? * cfmvam32ge mvax3, ?mvfx8 -0*2d8 ee ?26 ?24 ?60 ? * cfmvam32 mvax2, ?mvfx6 -0*2dc be ?22 ?24 ?60 ? * cfmvam32lt mvax2, ?mvfx2 -0*2e0 9e ?25 ?04 ?60 ? * cfmvam32ls mvax0, ?mvfx5 -0*2e4 ee ?12 ?a4 ?60 ? * cfmv32am mvfx10, ?mvax2 -0*2e8 4e ?13 ?e4 ?60 ? * cfmv32ammi mvfx14, ?mvax3 -0*2ec 8e ?12 ?d4 ?60 ? * cfmv32amhi mvfx13, ?mvax2 -0*2f0 2e ?12 ?14 ?60 ? * cfmv32amcs mvfx1, ?mvax2 -0*2f4 6e ?10 ?b4 ?60 ? * cfmv32amvs mvfx11, ?mvax0 -0*2f8 7e ?2e ?34 ?80 ? * cfmvah32vc mvax3, ?mvfx14 -0*2fc 3e ?2a ?04 ?80 ? * cfmvah32cc mvax0, ?mvfx10 -0*300 1e ?2f ?14 ?80 ? * cfmvah32ne mvax1, ?mvfx15 -0*304 de ?2b ?04 ?80 ? * cfmvah32le mvax0, ?mvfx11 -0*308 4e ?29 ?04 ?80 ? * cfmvah32mi mvax0, ?mvfx9 -0*30c 0e ?13 ?54 ?80 ? * cfmv32aheq mvfx5, ?mvax3 -0*310 ae ?10 ?94 ?80 ? * cfmv32ahge mvfx9, ?mvax0 -0*314 ee ?11 ?34 ?80 ? * cfmv32ah mvfx3, ?mvax1 -0*318 de ?10 ?74 ?80 ? * cfmv32ahle mvfx7, ?mvax0 -0*31c 1e ?10 ?c4 ?80 ? * cfmv32ahne mvfx12, ?mvax0 -0*320 be ?27 ?04 ?a0 ? * cfmva32lt mvax0, ?mvfx7 -0*324 5e ?23 ?24 ?a0 ? * cfmva32pl mvax2, ?mvfx3 -0*328 ce ?21 ?14 ?a0 ? * cfmva32gt mvax1, ?mvfx1 -0*32c 8e ?2d ?34 ?a0 ? * cfmva32hi mvax3, ?mvfx13 -0*330 6e ?24 ?34 ?a0 ? * cfmva32vs mvax3, ?mvfx4 -0*334 2e ?10 ?94 ?a0 ? * cfmv32acs mvfx9, ?mvax0 -0*338 5e ?12 ?f4 ?a0 ? * cfmv32apl mvfx15, ?mvax2 -0*33c 9e ?11 ?44 ?a0 ? * cfmv32als mvfx4, ?mvax1 -0*340 3e ?13 ?84 ?a0 ? * cfmv32acc mvfx8, ?mvax3 -0*344 7e ?13 ?24 ?a0 ? * cfmv32avc mvfx2, ?mvax3 -0*348 ce ?2b ?04 ?c0 ? * cfmva64gt mvax0, ?mvdx11 -0*34c 0e ?25 ?14 ?c0 ? * cfmva64eq mvax1, ?mvdx5 -0*350 ee ?2c ?24 ?c0 ? * cfmva64 mvax2, ?mvdx12 -0*354 ae ?28 ?34 ?c0 ? * cfmva64ge mvax3, ?mvdx8 -0*358 ee ?26 ?24 ?c0 ? * cfmva64 mvax2, ?mvdx6 -0*35c be ?10 ?44 ?c0 ? * cfmv64alt mvdx4, ?mvax0 -0*360 9e ?11 ?04 ?c0 ? * cfmv64als mvdx0, ?mvax1 -0*364 ee ?12 ?a4 ?c0 ? * cfmv64a mvdx10, ?mvax2 -0*368 4e ?13 ?e4 ?c0 ? * cfmv64ami mvdx14, ?mvax3 -0*36c 8e ?12 ?d4 ?c0 ? * cfmv64ahi mvdx13, ?mvax2 -0*370 2e ?20 ?c4 ?e0 ? * cfmvsc32cs dspsc, ?mvdx12 -0*374 6e ?20 ?04 ?e0 ? * cfmvsc32vs dspsc, ?mvdx0 -0*378 7e ?20 ?e4 ?e0 ? * cfmvsc32vc dspsc, ?mvdx14 -0*37c 3e ?20 ?a4 ?e0 ? * cfmvsc32cc dspsc, ?mvdx10 -0*380 1e ?20 ?f4 ?e0 ? * cfmvsc32ne dspsc, ?mvdx15 -0*384 de ?10 ?64 ?e0 ? * cfmv32scle mvdx6, ?dspsc -0*388 4e ?10 ?24 ?e0 ? * cfmv32scmi mvdx2, ?dspsc -0*38c 0e ?10 ?54 ?e0 ? * cfmv32sceq mvdx5, ?dspsc -0*390 ae ?10 ?94 ?e0 ? * cfmv32scge mvdx9, ?dspsc -0*394 ee ?10 ?34 ?e0 ? * cfmv32sc mvdx3, ?dspsc -0*398 de ?02 ?74 ?00 ? * cfcpysle mvf7, ?mvf2 -0*39c 1e ?06 ?c4 ?00 ? * cfcpysne mvf12, ?mvf6 -0*3a0 be ?07 ?04 ?00 ? * cfcpyslt mvf0, ?mvf7 -0*3a4 5e ?03 ?e4 ?00 ? * cfcpyspl mvf14, ?mvf3 -0*3a8 ce ?01 ?a4 ?00 ? * cfcpysgt mvf10, ?mvf1 -0*3ac 8e ?0d ?f4 ?20 ? * cfcpydhi mvd15, ?mvd13 -0*3b0 6e ?04 ?b4 ?20 ? * cfcpydvs mvd11, ?mvd4 -0*3b4 2e ?00 ?94 ?20 ? * cfcpydcs mvd9, ?mvd0 -0*3b8 5e ?0a ?f4 ?20 ? * cfcpydpl mvd15, ?mvd10 -0*3bc 9e ?0e ?44 ?20 ? * cfcpydls mvd4, ?mvd14 +0*1e0 2e ?09 ?04 ?50 ? * cfmvsrcs mvf9, ?r0 +0*1e4 5e ?0f ?74 ?50 ? * cfmvsrpl mvf15, ?r7 +0*1e8 9e ?04 ?14 ?50 ? * cfmvsrls mvf4, ?r1 +0*1ec 3e ?08 ?24 ?50 ? * cfmvsrcc mvf8, ?r2 +0*1f0 7e ?02 ?c4 ?50 ? * cfmvsrvc mvf2, ?ip +0*1f4 ce ?1b ?94 ?50 ? * cfmvrsgt r9, ?mvf11 +0*1f8 0e ?15 ?a4 ?50 ? * cfmvrseq sl, ?mvf5 +0*1fc ee ?1c ?44 ?50 ? * cfmvrs r4, ?mvf12 +0*200 ae ?18 ?b4 ?50 ? * cfmvrsge fp, ?mvf8 +0*204 ee ?16 ?54 ?50 ? * cfmvrs r5, ?mvf6 +0*208 be ?04 ?94 ?10 ? * cfmvdlrlt mvd4, ?r9 +0*20c 9e ?00 ?a4 ?10 ? * cfmvdlrls mvd0, ?sl +0*210 ee ?0a ?44 ?10 ? * cfmvdlr mvd10, ?r4 +0*214 4e ?0e ?b4 ?10 ? * cfmvdlrmi mvd14, ?fp +0*218 8e ?0d ?54 ?10 ? * cfmvdlrhi mvd13, ?r5 +0*21c 2e ?1c ?c4 ?10 ? * cfmvrdlcs ip, ?mvd12 +0*220 6e ?10 ?34 ?10 ? * cfmvrdlvs r3, ?mvd0 +0*224 7e ?1e ?d4 ?10 ? * cfmvrdlvc sp, ?mvd14 +0*228 3e ?1a ?e4 ?10 ? * cfmvrdlcc lr, ?mvd10 +0*22c 1e ?1f ?84 ?10 ? * cfmvrdlne r8, ?mvd15 +0*230 de ?06 ?c4 ?30 ? * cfmvdhrle mvd6, ?ip +0*234 4e ?02 ?34 ?30 ? * cfmvdhrmi mvd2, ?r3 +0*238 0e ?05 ?d4 ?30 ? * cfmvdhreq mvd5, ?sp +0*23c ae ?09 ?e4 ?30 ? * cfmvdhrge mvd9, ?lr +0*240 ee ?03 ?84 ?30 ? * cfmvdhr mvd3, ?r8 +0*244 de ?12 ?54 ?30 ? * cfmvrdhle r5, ?mvd2 +0*248 1e ?16 ?64 ?30 ? * cfmvrdhne r6, ?mvd6 +0*24c be ?17 ?04 ?30 ? * cfmvrdhlt r0, ?mvd7 +0*250 5e ?13 ?74 ?30 ? * cfmvrdhpl r7, ?mvd3 +0*254 ce ?11 ?14 ?30 ? * cfmvrdhgt r1, ?mvd1 +0*258 8e ?0f ?55 ?10 ? * cfmv64lrhi mvdx15, ?r5 +0*25c 6e ?0b ?65 ?10 ? * cfmv64lrvs mvdx11, ?r6 +0*260 2e ?09 ?05 ?10 ? * cfmv64lrcs mvdx9, ?r0 +0*264 5e ?0f ?75 ?10 ? * cfmv64lrpl mvdx15, ?r7 +0*268 9e ?04 ?15 ?10 ? * cfmv64lrls mvdx4, ?r1 +0*26c 3e ?1d ?85 ?10 ? * cfmvr64lcc r8, ?mvdx13 +0*270 7e ?11 ?f5 ?10 ? * cfmvr64lvc pc, ?mvdx1 +0*274 ce ?1b ?95 ?10 ? * cfmvr64lgt r9, ?mvdx11 +0*278 0e ?15 ?a5 ?10 ? * cfmvr64leq sl, ?mvdx5 +0*27c ee ?1c ?45 ?10 ? * cfmvr64l r4, ?mvdx12 +0*280 ae ?01 ?85 ?30 ? * cfmv64hrge mvdx1, ?r8 +0*284 ee ?0d ?f5 ?30 ? * cfmv64hr mvdx13, ?pc +0*288 be ?04 ?95 ?30 ? * cfmv64hrlt mvdx4, ?r9 +0*28c 9e ?00 ?a5 ?30 ? * cfmv64hrls mvdx0, ?sl +0*290 ee ?0a ?45 ?30 ? * cfmv64hr mvdx10, ?r4 +0*294 4e ?13 ?15 ?30 ? * cfmvr64hmi r1, ?mvdx3 +0*298 8e ?17 ?25 ?30 ? * cfmvr64hhi r2, ?mvdx7 +0*29c 2e ?1c ?c5 ?30 ? * cfmvr64hcs ip, ?mvdx12 +0*2a0 6e ?10 ?35 ?30 ? * cfmvr64hvs r3, ?mvdx0 +0*2a4 7e ?1e ?d5 ?30 ? * cfmvr64hvc sp, ?mvdx14 +0*2a8 3e ?2a ?04 ?40 ? * cfmval32cc mvax0, ?mvfx10 +0*2ac 1e ?2f ?14 ?40 ? * cfmval32ne mvax1, ?mvfx15 +0*2b0 de ?2b ?04 ?40 ? * cfmval32le mvax0, ?mvfx11 +0*2b4 4e ?29 ?04 ?40 ? * cfmval32mi mvax0, ?mvfx9 +0*2b8 0e ?2f ?14 ?40 ? * cfmval32eq mvax1, ?mvfx15 +0*2bc ae ?10 ?94 ?40 ? * cfmv32alge mvfx9, ?mvax0 +0*2c0 ee ?11 ?34 ?40 ? * cfmv32al mvfx3, ?mvax1 +0*2c4 de ?10 ?74 ?40 ? * cfmv32alle mvfx7, ?mvax0 +0*2c8 1e ?10 ?c4 ?40 ? * cfmv32alne mvfx12, ?mvax0 +0*2cc be ?11 ?04 ?40 ? * cfmv32allt mvfx0, ?mvax1 +0*2d0 5e ?23 ?24 ?60 ? * cfmvam32pl mvax2, ?mvfx3 +0*2d4 ce ?21 ?14 ?60 ? * cfmvam32gt mvax1, ?mvfx1 +0*2d8 8e ?2d ?34 ?60 ? * cfmvam32hi mvax3, ?mvfx13 +0*2dc 6e ?24 ?34 ?60 ? * cfmvam32vs mvax3, ?mvfx4 +0*2e0 2e ?20 ?14 ?60 ? * cfmvam32cs mvax1, ?mvfx0 +0*2e4 5e ?12 ?f4 ?60 ? * cfmv32ampl mvfx15, ?mvax2 +0*2e8 9e ?11 ?44 ?60 ? * cfmv32amls mvfx4, ?mvax1 +0*2ec 3e ?13 ?84 ?60 ? * cfmv32amcc mvfx8, ?mvax3 +0*2f0 7e ?13 ?24 ?60 ? * cfmv32amvc mvfx2, ?mvax3 +0*2f4 ce ?11 ?64 ?60 ? * cfmv32amgt mvfx6, ?mvax1 +0*2f8 0e ?25 ?14 ?80 ? * cfmvah32eq mvax1, ?mvfx5 +0*2fc ee ?2c ?24 ?80 ? * cfmvah32 mvax2, ?mvfx12 +0*300 ae ?28 ?34 ?80 ? * cfmvah32ge mvax3, ?mvfx8 +0*304 ee ?26 ?24 ?80 ? * cfmvah32 mvax2, ?mvfx6 +0*308 be ?22 ?24 ?80 ? * cfmvah32lt mvax2, ?mvfx2 +0*30c 9e ?11 ?04 ?80 ? * cfmv32ahls mvfx0, ?mvax1 +0*310 ee ?12 ?a4 ?80 ? * cfmv32ah mvfx10, ?mvax2 +0*314 4e ?13 ?e4 ?80 ? * cfmv32ahmi mvfx14, ?mvax3 +0*318 8e ?12 ?d4 ?80 ? * cfmv32ahhi mvfx13, ?mvax2 +0*31c 2e ?12 ?14 ?80 ? * cfmv32ahcs mvfx1, ?mvax2 +0*320 6e ?20 ?14 ?a0 ? * cfmva32vs mvax1, ?mvfx0 +0*324 7e ?2e ?34 ?a0 ? * cfmva32vc mvax3, ?mvfx14 +0*328 3e ?2a ?04 ?a0 ? * cfmva32cc mvax0, ?mvfx10 +0*32c 1e ?2f ?14 ?a0 ? * cfmva32ne mvax1, ?mvfx15 +0*330 de ?2b ?04 ?a0 ? * cfmva32le mvax0, ?mvfx11 +0*334 4e ?11 ?24 ?a0 ? * cfmv32ami mvfx2, ?mvax1 +0*338 0e ?13 ?54 ?a0 ? * cfmv32aeq mvfx5, ?mvax3 +0*33c ae ?10 ?94 ?a0 ? * cfmv32age mvfx9, ?mvax0 +0*340 ee ?11 ?34 ?a0 ? * cfmv32a mvfx3, ?mvax1 +0*344 de ?10 ?74 ?a0 ? * cfmv32ale mvfx7, ?mvax0 +0*348 1e ?26 ?24 ?c0 ? * cfmva64ne mvax2, ?mvdx6 +0*34c be ?27 ?04 ?c0 ? * cfmva64lt mvax0, ?mvdx7 +0*350 5e ?23 ?24 ?c0 ? * cfmva64pl mvax2, ?mvdx3 +0*354 ce ?21 ?14 ?c0 ? * cfmva64gt mvax1, ?mvdx1 +0*358 8e ?2d ?34 ?c0 ? * cfmva64hi mvax3, ?mvdx13 +0*35c 6e ?12 ?b4 ?c0 ? * cfmv64avs mvdx11, ?mvax2 +0*360 2e ?10 ?94 ?c0 ? * cfmv64acs mvdx9, ?mvax0 +0*364 5e ?12 ?f4 ?c0 ? * cfmv64apl mvdx15, ?mvax2 +0*368 9e ?11 ?44 ?c0 ? * cfmv64als mvdx4, ?mvax1 +0*36c 3e ?13 ?84 ?c0 ? * cfmv64acc mvdx8, ?mvax3 +0*370 7e ?20 ?14 ?e0 ? * cfmvsc32vc dspsc, ?mvdx1 +0*374 ce ?20 ?b4 ?e0 ? * cfmvsc32gt dspsc, ?mvdx11 +0*378 0e ?20 ?54 ?e0 ? * cfmvsc32eq dspsc, ?mvdx5 +0*37c ee ?20 ?c4 ?e0 ? * cfmvsc32 dspsc, ?mvdx12 +0*380 ae ?20 ?84 ?e0 ? * cfmvsc32ge dspsc, ?mvdx8 +0*384 ee ?10 ?d4 ?e0 ? * cfmv32sc mvdx13, ?dspsc +0*388 be ?10 ?44 ?e0 ? * cfmv32sclt mvdx4, ?dspsc +0*38c 9e ?10 ?04 ?e0 ? * cfmv32scls mvdx0, ?dspsc +0*390 ee ?10 ?a4 ?e0 ? * cfmv32sc mvdx10, ?dspsc +0*394 4e ?10 ?e4 ?e0 ? * cfmv32scmi mvdx14, ?dspsc +0*398 8e ?07 ?d4 ?00 ? * cfcpyshi mvf13, ?mvf7 +0*39c 2e ?0c ?14 ?00 ? * cfcpyscs mvf1, ?mvf12 +0*3a0 6e ?00 ?b4 ?00 ? * cfcpysvs mvf11, ?mvf0 +0*3a4 7e ?0e ?54 ?00 ? * cfcpysvc mvf5, ?mvf14 +0*3a8 3e ?0a ?c4 ?00 ? * cfcpyscc mvf12, ?mvf10 +0*3ac 1e ?0f ?84 ?20 ? * cfcpydne mvd8, ?mvd15 +0*3b0 de ?0b ?64 ?20 ? * cfcpydle mvd6, ?mvd11 +0*3b4 4e ?09 ?24 ?20 ? * cfcpydmi mvd2, ?mvd9 +0*3b8 0e ?0f ?54 ?20 ? * cfcpydeq mvd5, ?mvd15 +0*3bc ae ?04 ?94 ?20 ? * cfcpydge mvd9, ?mvd4 # conv: -0*3c0 3e ?0d ?84 ?60 ? * cfcvtsdcc mvd8, ?mvf13 -0*3c4 7e ?01 ?24 ?60 ? * cfcvtsdvc mvd2, ?mvf1 -0*3c8 ce ?0b ?64 ?60 ? * cfcvtsdgt mvd6, ?mvf11 -0*3cc 0e ?05 ?74 ?60 ? * cfcvtsdeq mvd7, ?mvf5 -0*3d0 ee ?0c ?34 ?60 ? * cfcvtsd mvd3, ?mvf12 -0*3d4 ae ?08 ?14 ?40 ? * cfcvtdsge mvf1, ?mvd8 -0*3d8 ee ?06 ?d4 ?40 ? * cfcvtds mvf13, ?mvd6 -0*3dc be ?02 ?44 ?40 ? * cfcvtdslt mvf4, ?mvd2 -0*3e0 9e ?05 ?04 ?40 ? * cfcvtdsls mvf0, ?mvd5 -0*3e4 ee ?09 ?a4 ?40 ? * cfcvtds mvf10, ?mvd9 -0*3e8 4e ?03 ?e4 ?80 ? * cfcvt32smi mvf14, ?mvfx3 -0*3ec 8e ?07 ?d4 ?80 ? * cfcvt32shi mvf13, ?mvfx7 -0*3f0 2e ?0c ?14 ?80 ? * cfcvt32scs mvf1, ?mvfx12 -0*3f4 6e ?00 ?b4 ?80 ? * cfcvt32svs mvf11, ?mvfx0 -0*3f8 7e ?0e ?54 ?80 ? * cfcvt32svc mvf5, ?mvfx14 -0*3fc 3e ?0a ?c4 ?a0 ? * cfcvt32dcc mvd12, ?mvfx10 -0*400 1e ?0f ?84 ?a0 ? * cfcvt32dne mvd8, ?mvfx15 -0*404 de ?0b ?64 ?a0 ? * cfcvt32dle mvd6, ?mvfx11 -0*408 4e ?09 ?24 ?a0 ? * cfcvt32dmi mvd2, ?mvfx9 -0*40c 0e ?0f ?54 ?a0 ? * cfcvt32deq mvd5, ?mvfx15 -0*410 ae ?04 ?94 ?c0 ? * cfcvt64sge mvf9, ?mvdx4 -0*414 ee ?08 ?34 ?c0 ? * cfcvt64s mvf3, ?mvdx8 -0*418 de ?02 ?74 ?c0 ? * cfcvt64sle mvf7, ?mvdx2 -0*41c 1e ?06 ?c4 ?c0 ? * cfcvt64sne mvf12, ?mvdx6 -0*420 be ?07 ?04 ?c0 ? * cfcvt64slt mvf0, ?mvdx7 -0*424 5e ?03 ?e4 ?e0 ? * cfcvt64dpl mvd14, ?mvdx3 -0*428 ce ?01 ?a4 ?e0 ? * cfcvt64dgt mvd10, ?mvdx1 -0*42c 8e ?0d ?f4 ?e0 ? * cfcvt64dhi mvd15, ?mvdx13 -0*430 6e ?04 ?b4 ?e0 ? * cfcvt64dvs mvd11, ?mvdx4 -0*434 2e ?00 ?94 ?e0 ? * cfcvt64dcs mvd9, ?mvdx0 -0*438 5e ?1a ?f5 ?80 ? * cfcvts32pl mvfx15, ?mvf10 -0*43c 9e ?1e ?45 ?80 ? * cfcvts32ls mvfx4, ?mvf14 -0*440 3e ?1d ?85 ?80 ? * cfcvts32cc mvfx8, ?mvf13 -0*444 7e ?11 ?25 ?80 ? * cfcvts32vc mvfx2, ?mvf1 -0*448 ce ?1b ?65 ?80 ? * cfcvts32gt mvfx6, ?mvf11 -0*44c 0e ?15 ?75 ?a0 ? * cfcvtd32eq mvfx7, ?mvd5 -0*450 ee ?1c ?35 ?a0 ? * cfcvtd32 mvfx3, ?mvd12 -0*454 ae ?18 ?15 ?a0 ? * cfcvtd32ge mvfx1, ?mvd8 -0*458 ee ?16 ?d5 ?a0 ? * cfcvtd32 mvfx13, ?mvd6 -0*45c be ?12 ?45 ?a0 ? * cfcvtd32lt mvfx4, ?mvd2 -0*460 9e ?15 ?05 ?c0 ? * cftruncs32ls mvfx0, ?mvf5 -0*464 ee ?19 ?a5 ?c0 ? * cftruncs32 mvfx10, ?mvf9 -0*468 4e ?13 ?e5 ?c0 ? * cftruncs32mi mvfx14, ?mvf3 -0*46c 8e ?17 ?d5 ?c0 ? * cftruncs32hi mvfx13, ?mvf7 -0*470 2e ?1c ?15 ?c0 ? * cftruncs32cs mvfx1, ?mvf12 -0*474 6e ?10 ?b5 ?e0 ? * cftruncd32vs mvfx11, ?mvd0 -0*478 7e ?1e ?55 ?e0 ? * cftruncd32vc mvfx5, ?mvd14 -0*47c 3e ?1a ?c5 ?e0 ? * cftruncd32cc mvfx12, ?mvd10 -0*480 1e ?1f ?85 ?e0 ? * cftruncd32ne mvfx8, ?mvd15 -0*484 de ?1b ?65 ?e0 ? * cftruncd32le mvfx6, ?mvd11 +0*3c0 ee ?08 ?34 ?60 ? * cfcvtsd mvd3, ?mvf8 +0*3c4 de ?02 ?74 ?60 ? * cfcvtsdle mvd7, ?mvf2 +0*3c8 1e ?06 ?c4 ?60 ? * cfcvtsdne mvd12, ?mvf6 +0*3cc be ?07 ?04 ?60 ? * cfcvtsdlt mvd0, ?mvf7 +0*3d0 5e ?03 ?e4 ?60 ? * cfcvtsdpl mvd14, ?mvf3 +0*3d4 ce ?01 ?a4 ?40 ? * cfcvtdsgt mvf10, ?mvd1 +0*3d8 8e ?0d ?f4 ?40 ? * cfcvtdshi mvf15, ?mvd13 +0*3dc 6e ?04 ?b4 ?40 ? * cfcvtdsvs mvf11, ?mvd4 +0*3e0 2e ?00 ?94 ?40 ? * cfcvtdscs mvf9, ?mvd0 +0*3e4 5e ?0a ?f4 ?40 ? * cfcvtdspl mvf15, ?mvd10 +0*3e8 9e ?0e ?44 ?80 ? * cfcvt32sls mvf4, ?mvfx14 +0*3ec 3e ?0d ?84 ?80 ? * cfcvt32scc mvf8, ?mvfx13 +0*3f0 7e ?01 ?24 ?80 ? * cfcvt32svc mvf2, ?mvfx1 +0*3f4 ce ?0b ?64 ?80 ? * cfcvt32sgt mvf6, ?mvfx11 +0*3f8 0e ?05 ?74 ?80 ? * cfcvt32seq mvf7, ?mvfx5 +0*3fc ee ?0c ?34 ?a0 ? * cfcvt32d mvd3, ?mvfx12 +0*400 ae ?08 ?14 ?a0 ? * cfcvt32dge mvd1, ?mvfx8 +0*404 ee ?06 ?d4 ?a0 ? * cfcvt32d mvd13, ?mvfx6 +0*408 be ?02 ?44 ?a0 ? * cfcvt32dlt mvd4, ?mvfx2 +0*40c 9e ?05 ?04 ?a0 ? * cfcvt32dls mvd0, ?mvfx5 +0*410 ee ?09 ?a4 ?c0 ? * cfcvt64s mvf10, ?mvdx9 +0*414 4e ?03 ?e4 ?c0 ? * cfcvt64smi mvf14, ?mvdx3 +0*418 8e ?07 ?d4 ?c0 ? * cfcvt64shi mvf13, ?mvdx7 +0*41c 2e ?0c ?14 ?c0 ? * cfcvt64scs mvf1, ?mvdx12 +0*420 6e ?00 ?b4 ?c0 ? * cfcvt64svs mvf11, ?mvdx0 +0*424 7e ?0e ?54 ?e0 ? * cfcvt64dvc mvd5, ?mvdx14 +0*428 3e ?0a ?c4 ?e0 ? * cfcvt64dcc mvd12, ?mvdx10 +0*42c 1e ?0f ?84 ?e0 ? * cfcvt64dne mvd8, ?mvdx15 +0*430 de ?0b ?64 ?e0 ? * cfcvt64dle mvd6, ?mvdx11 +0*434 4e ?09 ?24 ?e0 ? * cfcvt64dmi mvd2, ?mvdx9 +0*438 0e ?1f ?55 ?80 ? * cfcvts32eq mvfx5, ?mvf15 +0*43c ae ?14 ?95 ?80 ? * cfcvts32ge mvfx9, ?mvf4 +0*440 ee ?18 ?35 ?80 ? * cfcvts32 mvfx3, ?mvf8 +0*444 de ?12 ?75 ?80 ? * cfcvts32le mvfx7, ?mvf2 +0*448 1e ?16 ?c5 ?80 ? * cfcvts32ne mvfx12, ?mvf6 +0*44c be ?17 ?05 ?a0 ? * cfcvtd32lt mvfx0, ?mvd7 +0*450 5e ?13 ?e5 ?a0 ? * cfcvtd32pl mvfx14, ?mvd3 +0*454 ce ?11 ?a5 ?a0 ? * cfcvtd32gt mvfx10, ?mvd1 +0*458 8e ?1d ?f5 ?a0 ? * cfcvtd32hi mvfx15, ?mvd13 +0*45c 6e ?14 ?b5 ?a0 ? * cfcvtd32vs mvfx11, ?mvd4 +0*460 2e ?10 ?95 ?c0 ? * cftruncs32cs mvfx9, ?mvf0 +0*464 5e ?1a ?f5 ?c0 ? * cftruncs32pl mvfx15, ?mvf10 +0*468 9e ?1e ?45 ?c0 ? * cftruncs32ls mvfx4, ?mvf14 +0*46c 3e ?1d ?85 ?c0 ? * cftruncs32cc mvfx8, ?mvf13 +0*470 7e ?11 ?25 ?c0 ? * cftruncs32vc mvfx2, ?mvf1 +0*474 ce ?1b ?65 ?e0 ? * cftruncd32gt mvfx6, ?mvd11 +0*478 0e ?15 ?75 ?e0 ? * cftruncd32eq mvfx7, ?mvd5 +0*47c ee ?1c ?35 ?e0 ? * cftruncd32 mvfx3, ?mvd12 +0*480 ae ?18 ?15 ?e0 ? * cftruncd32ge mvfx1, ?mvd8 +0*484 ee ?16 ?d5 ?e0 ? * cftruncd32 mvfx13, ?mvd6 # shift: -0*488 4e ?02 ?05 ?59 ? * cfrshl32mi mvfx2, ?mvfx9, ?r0 -0*48c ee ?0a ?e5 ?59 ? * cfrshl32 mvfx10, ?mvfx9, ?lr -0*490 3e ?08 ?55 ?5d ? * cfrshl32cc mvfx8, ?mvfx13, ?r5 -0*494 1e ?0c ?35 ?56 ? * cfrshl32ne mvfx12, ?mvfx6, ?r3 -0*498 7e ?05 ?45 ?5e ? * cfrshl32vc mvfx5, ?mvfx14, ?r4 -0*49c ae ?01 ?25 ?78 ? * cfrshl64ge mvdx1, ?mvdx8, ?r2 -0*4a0 6e ?0b ?95 ?74 ? * cfrshl64vs mvdx11, ?mvdx4, ?r9 -0*4a4 0e ?05 ?75 ?7f ? * cfrshl64eq mvdx5, ?mvdx15, ?r7 -0*4a8 4e ?0e ?85 ?73 ? * cfrshl64mi mvdx14, ?mvdx3, ?r8 -0*4ac 7e ?02 ?65 ?71 ? * cfrshl64vc mvdx2, ?mvdx1, ?r6 -0*4b0 be ?07 ?05 ?80 ? * cfsh32lt mvfx0, ?mvfx7, ?#-64 -0*4b4 3e ?0a ?c5 ?cc ? * cfsh32cc mvfx12, ?mvfx10, ?#-20 -0*4b8 ee ?06 ?d5 ?48 ? * cfsh32 mvfx13, ?mvfx6, ?#40 -0*4bc 2e ?00 ?95 ?ef ? * cfsh32cs mvfx9, ?mvfx0, ?#-1 -0*4c0 ae ?04 ?95 ?28 ? * cfsh32ge mvfx9, ?mvfx4, ?#24 -0*4c4 8e ?27 ?d5 ?41 ? * cfsh64hi mvdx13, ?mvdx7, ?#33 -0*4c8 ce ?2b ?65 ?00 ? * cfsh64gt mvdx6, ?mvdx11, ?#0 -0*4cc 5e ?23 ?e5 ?40 ? * cfsh64pl mvdx14, ?mvdx3, ?#32 -0*4d0 1e ?2f ?85 ?c1 ? * cfsh64ne mvdx8, ?mvdx15, ?#-31 -0*4d4 be ?22 ?45 ?01 ? * cfsh64lt mvdx4, ?mvdx2, ?#1 +0*488 be ?04 ?35 ?52 ? * cfrshl32lt mvfx4, ?mvfx2, ?r3 +0*48c 5e ?0f ?45 ?5a ? * cfrshl32pl mvfx15, ?mvfx10, ?r4 +0*490 ee ?03 ?25 ?58 ? * cfrshl32 mvfx3, ?mvfx8, ?r2 +0*494 2e ?01 ?95 ?5c ? * cfrshl32cs mvfx1, ?mvfx12, ?r9 +0*498 0e ?07 ?75 ?55 ? * cfrshl32eq mvfx7, ?mvfx5, ?r7 +0*49c ce ?0a ?85 ?71 ? * cfrshl64gt mvdx10, ?mvdx1, ?r8 +0*4a0 de ?06 ?65 ?7b ? * cfrshl64le mvdx6, ?mvdx11, ?r6 +0*4a4 9e ?00 ?d5 ?75 ? * cfrshl64ls mvdx0, ?mvdx5, ?sp +0*4a8 9e ?04 ?b5 ?7e ? * cfrshl64ls mvdx4, ?mvdx14, ?fp +0*4ac de ?07 ?c5 ?72 ? * cfrshl64le mvdx7, ?mvdx2, ?ip +0*4b0 6e ?00 ?b5 ?ef ? * cfsh32vs mvfx11, ?mvfx0, ?#-1 +0*4b4 ee ?0c ?35 ?28 ? * cfsh32 mvfx3, ?mvfx12, ?#24 +0*4b8 8e ?0d ?f5 ?41 ? * cfsh32hi mvfx15, ?mvfx13, ?#33 +0*4bc 4e ?09 ?25 ?00 ? * cfsh32mi mvfx2, ?mvfx9, ?#0 +0*4c0 ee ?09 ?a5 ?40 ? * cfsh32 mvfx10, ?mvfx9, ?#32 +0*4c4 3e ?2d ?85 ?c1 ? * cfsh64cc mvdx8, ?mvdx13, ?#-31 +0*4c8 1e ?26 ?c5 ?01 ? * cfsh64ne mvdx12, ?mvdx6, ?#1 +0*4cc 7e ?2e ?55 ?c0 ? * cfsh64vc mvdx5, ?mvdx14, ?#-32 +0*4d0 ae ?28 ?15 ?c5 ? * cfsh64ge mvdx1, ?mvdx8, ?#-27 +0*4d4 6e ?24 ?b5 ?eb ? * cfsh64vs mvdx11, ?mvdx4, ?#-5 # comp: -0*4d8 5e ?1a ?d4 ?99 ? * cfcmpspl sp, ?mvf10, ?mvf9 -0*4dc ee ?18 ?b4 ?9d ? * cfcmps fp, ?mvf8, ?mvf13 -0*4e0 2e ?1c ?c4 ?96 ? * cfcmpscs ip, ?mvf12, ?mvf6 -0*4e4 0e ?15 ?a4 ?9e ? * cfcmpseq sl, ?mvf5, ?mvf14 -0*4e8 ce ?11 ?14 ?98 ? * cfcmpsgt r1, ?mvf1, ?mvf8 -0*4ec de ?1b ?f4 ?b4 ? * cfcmpdle pc, ?mvd11, ?mvd4 -0*4f0 9e ?15 ?04 ?bf ? * cfcmpdls r0, ?mvd5, ?mvd15 -0*4f4 9e ?1e ?e4 ?b3 ? * cfcmpdls lr, ?mvd14, ?mvd3 -0*4f8 de ?12 ?54 ?b1 ? * cfcmpdle r5, ?mvd2, ?mvd1 -0*4fc 6e ?10 ?34 ?b7 ? * cfcmpdvs r3, ?mvd0, ?mvd7 -0*500 ee ?1c ?45 ?9a ? * cfcmp32 r4, ?mvfx12, ?mvfx10 -0*504 8e ?1d ?25 ?96 ? * cfcmp32hi r2, ?mvfx13, ?mvfx6 -0*508 4e ?19 ?95 ?90 ? * cfcmp32mi r9, ?mvfx9, ?mvfx0 -0*50c ee ?19 ?75 ?94 ? * cfcmp32 r7, ?mvfx9, ?mvfx4 -0*510 3e ?1d ?85 ?97 ? * cfcmp32cc r8, ?mvfx13, ?mvfx7 -0*514 1e ?16 ?65 ?bb ? * cfcmp64ne r6, ?mvdx6, ?mvdx11 -0*518 7e ?1e ?d5 ?b3 ? * cfcmp64vc sp, ?mvdx14, ?mvdx3 -0*51c ae ?18 ?b5 ?bf ? * cfcmp64ge fp, ?mvdx8, ?mvdx15 -0*520 6e ?14 ?c5 ?b2 ? * cfcmp64vs ip, ?mvdx4, ?mvdx2 -0*524 0e ?1f ?a5 ?ba ? * cfcmp64eq sl, ?mvdx15, ?mvdx10 +0*4d8 0e ?1f ?a4 ?9a ? * cfcmpseq sl, ?mvf15, ?mvf10 +0*4dc 4e ?13 ?14 ?98 ? * cfcmpsmi r1, ?mvf3, ?mvf8 +0*4e0 7e ?11 ?f4 ?9c ? * cfcmpsvc pc, ?mvf1, ?mvf12 +0*4e4 be ?17 ?04 ?95 ? * cfcmpslt r0, ?mvf7, ?mvf5 +0*4e8 3e ?1a ?e4 ?91 ? * cfcmpscc lr, ?mvf10, ?mvf1 +0*4ec ee ?16 ?54 ?bb ? * cfcmpd r5, ?mvd6, ?mvd11 +0*4f0 2e ?10 ?34 ?b5 ? * cfcmpdcs r3, ?mvd0, ?mvd5 +0*4f4 ae ?14 ?44 ?be ? * cfcmpdge r4, ?mvd4, ?mvd14 +0*4f8 8e ?17 ?24 ?b2 ? * cfcmpdhi r2, ?mvd7, ?mvd2 +0*4fc ce ?1b ?94 ?b0 ? * cfcmpdgt r9, ?mvd11, ?mvd0 +0*500 5e ?13 ?75 ?9c ? * cfcmp32pl r7, ?mvfx3, ?mvfx12 +0*504 1e ?1f ?85 ?9d ? * cfcmp32ne r8, ?mvfx15, ?mvfx13 +0*508 be ?12 ?65 ?99 ? * cfcmp32lt r6, ?mvfx2, ?mvfx9 +0*50c 5e ?1a ?d5 ?99 ? * cfcmp32pl sp, ?mvfx10, ?mvfx9 +0*510 ee ?18 ?b5 ?9d ? * cfcmp32 fp, ?mvfx8, ?mvfx13 +0*514 2e ?1c ?c5 ?b6 ? * cfcmp64cs ip, ?mvdx12, ?mvdx6 +0*518 0e ?15 ?a5 ?be ? * cfcmp64eq sl, ?mvdx5, ?mvdx14 +0*51c ce ?11 ?15 ?b8 ? * cfcmp64gt r1, ?mvdx1, ?mvdx8 +0*520 de ?1b ?f5 ?b4 ? * cfcmp64le pc, ?mvdx11, ?mvdx4 +0*524 9e ?15 ?05 ?bf ? * cfcmp64ls r0, ?mvdx5, ?mvdx15 # fp_arith: -0*528 4e ?33 ?e4 ?00 ? * cfabssmi mvf14, ?mvf3 -0*52c 8e ?37 ?d4 ?00 ? * cfabsshi mvf13, ?mvf7 -0*530 2e ?3c ?14 ?00 ? * cfabsscs mvf1, ?mvf12 -0*534 6e ?30 ?b4 ?00 ? * cfabssvs mvf11, ?mvf0 -0*538 7e ?3e ?54 ?00 ? * cfabssvc mvf5, ?mvf14 -0*53c 3e ?3a ?c4 ?20 ? * cfabsdcc mvd12, ?mvd10 -0*540 1e ?3f ?84 ?20 ? * cfabsdne mvd8, ?mvd15 -0*544 de ?3b ?64 ?20 ? * cfabsdle mvd6, ?mvd11 -0*548 4e ?39 ?24 ?20 ? * cfabsdmi mvd2, ?mvd9 -0*54c 0e ?3f ?54 ?20 ? * cfabsdeq mvd5, ?mvd15 -0*550 ae ?34 ?94 ?40 ? * cfnegsge mvf9, ?mvf4 -0*554 ee ?38 ?34 ?40 ? * cfnegs mvf3, ?mvf8 -0*558 de ?32 ?74 ?40 ? * cfnegsle mvf7, ?mvf2 -0*55c 1e ?36 ?c4 ?40 ? * cfnegsne mvf12, ?mvf6 -0*560 be ?37 ?04 ?40 ? * cfnegslt mvf0, ?mvf7 -0*564 5e ?33 ?e4 ?60 ? * cfnegdpl mvd14, ?mvd3 -0*568 ce ?31 ?a4 ?60 ? * cfnegdgt mvd10, ?mvd1 -0*56c 8e ?3d ?f4 ?60 ? * cfnegdhi mvd15, ?mvd13 -0*570 6e ?34 ?b4 ?60 ? * cfnegdvs mvd11, ?mvd4 -0*574 2e ?30 ?94 ?60 ? * cfnegdcs mvd9, ?mvd0 -0*578 5e ?3a ?f4 ?89 ? * cfaddspl mvf15, ?mvf10, ?mvf9 -0*57c ee ?38 ?34 ?8d ? * cfadds mvf3, ?mvf8, ?mvf13 -0*580 2e ?3c ?14 ?86 ? * cfaddscs mvf1, ?mvf12, ?mvf6 -0*584 0e ?35 ?74 ?8e ? * cfaddseq mvf7, ?mvf5, ?mvf14 -0*588 ce ?31 ?a4 ?88 ? * cfaddsgt mvf10, ?mvf1, ?mvf8 -0*58c de ?3b ?64 ?a4 ? * cfadddle mvd6, ?mvd11, ?mvd4 -0*590 9e ?35 ?04 ?af ? * cfadddls mvd0, ?mvd5, ?mvd15 -0*594 9e ?3e ?44 ?a3 ? * cfadddls mvd4, ?mvd14, ?mvd3 -0*598 de ?32 ?74 ?a1 ? * cfadddle mvd7, ?mvd2, ?mvd1 -0*59c 6e ?30 ?b4 ?a7 ? * cfadddvs mvd11, ?mvd0, ?mvd7 -0*5a0 ee ?3c ?34 ?ca ? * cfsubs mvf3, ?mvf12, ?mvf10 -0*5a4 8e ?3d ?f4 ?c6 ? * cfsubshi mvf15, ?mvf13, ?mvf6 -0*5a8 4e ?39 ?24 ?c0 ? * cfsubsmi mvf2, ?mvf9, ?mvf0 -0*5ac ee ?39 ?a4 ?c4 ? * cfsubs mvf10, ?mvf9, ?mvf4 -0*5b0 3e ?3d ?84 ?c7 ? * cfsubscc mvf8, ?mvf13, ?mvf7 -0*5b4 1e ?36 ?c4 ?eb ? * cfsubdne mvd12, ?mvd6, ?mvd11 -0*5b8 7e ?3e ?54 ?e3 ? * cfsubdvc mvd5, ?mvd14, ?mvd3 -0*5bc ae ?38 ?14 ?ef ? * cfsubdge mvd1, ?mvd8, ?mvd15 -0*5c0 6e ?34 ?b4 ?e2 ? * cfsubdvs mvd11, ?mvd4, ?mvd2 -0*5c4 0e ?3f ?54 ?ea ? * cfsubdeq mvd5, ?mvd15, ?mvd10 -0*5c8 4e ?13 ?e4 ?08 ? * cfmulsmi mvf14, ?mvf3, ?mvf8 -0*5cc 7e ?11 ?24 ?0c ? * cfmulsvc mvf2, ?mvf1, ?mvf12 -0*5d0 be ?17 ?04 ?05 ? * cfmulslt mvf0, ?mvf7, ?mvf5 -0*5d4 3e ?1a ?c4 ?01 ? * cfmulscc mvf12, ?mvf10, ?mvf1 -0*5d8 ee ?16 ?d4 ?0b ? * cfmuls mvf13, ?mvf6, ?mvf11 -0*5dc 2e ?10 ?94 ?25 ? * cfmuldcs mvd9, ?mvd0, ?mvd5 -0*5e0 ae ?14 ?94 ?2e ? * cfmuldge mvd9, ?mvd4, ?mvd14 -0*5e4 8e ?17 ?d4 ?22 ? * cfmuldhi mvd13, ?mvd7, ?mvd2 -0*5e8 ce ?1b ?64 ?20 ? * cfmuldgt mvd6, ?mvd11, ?mvd0 -0*5ec 5e ?13 ?e4 ?2c ? * cfmuldpl mvd14, ?mvd3, ?mvd12 +0*528 9e ?3e ?44 ?00 ? * cfabssls mvf4, ?mvf14 +0*52c 3e ?3d ?84 ?00 ? * cfabsscc mvf8, ?mvf13 +0*530 7e ?31 ?24 ?00 ? * cfabssvc mvf2, ?mvf1 +0*534 ce ?3b ?64 ?00 ? * cfabssgt mvf6, ?mvf11 +0*538 0e ?35 ?74 ?00 ? * cfabsseq mvf7, ?mvf5 +0*53c ee ?3c ?34 ?20 ? * cfabsd mvd3, ?mvd12 +0*540 ae ?38 ?14 ?20 ? * cfabsdge mvd1, ?mvd8 +0*544 ee ?36 ?d4 ?20 ? * cfabsd mvd13, ?mvd6 +0*548 be ?32 ?44 ?20 ? * cfabsdlt mvd4, ?mvd2 +0*54c 9e ?35 ?04 ?20 ? * cfabsdls mvd0, ?mvd5 +0*550 ee ?39 ?a4 ?40 ? * cfnegs mvf10, ?mvf9 +0*554 4e ?33 ?e4 ?40 ? * cfnegsmi mvf14, ?mvf3 +0*558 8e ?37 ?d4 ?40 ? * cfnegshi mvf13, ?mvf7 +0*55c 2e ?3c ?14 ?40 ? * cfnegscs mvf1, ?mvf12 +0*560 6e ?30 ?b4 ?40 ? * cfnegsvs mvf11, ?mvf0 +0*564 7e ?3e ?54 ?60 ? * cfnegdvc mvd5, ?mvd14 +0*568 3e ?3a ?c4 ?60 ? * cfnegdcc mvd12, ?mvd10 +0*56c 1e ?3f ?84 ?60 ? * cfnegdne mvd8, ?mvd15 +0*570 de ?3b ?64 ?60 ? * cfnegdle mvd6, ?mvd11 +0*574 4e ?39 ?24 ?60 ? * cfnegdmi mvd2, ?mvd9 +0*578 0e ?3f ?54 ?8a ? * cfaddseq mvf5, ?mvf15, ?mvf10 +0*57c 4e ?33 ?e4 ?88 ? * cfaddsmi mvf14, ?mvf3, ?mvf8 +0*580 7e ?31 ?24 ?8c ? * cfaddsvc mvf2, ?mvf1, ?mvf12 +0*584 be ?37 ?04 ?85 ? * cfaddslt mvf0, ?mvf7, ?mvf5 +0*588 3e ?3a ?c4 ?81 ? * cfaddscc mvf12, ?mvf10, ?mvf1 +0*58c ee ?36 ?d4 ?ab ? * cfaddd mvd13, ?mvd6, ?mvd11 +0*590 2e ?30 ?94 ?a5 ? * cfadddcs mvd9, ?mvd0, ?mvd5 +0*594 ae ?34 ?94 ?ae ? * cfadddge mvd9, ?mvd4, ?mvd14 +0*598 8e ?37 ?d4 ?a2 ? * cfadddhi mvd13, ?mvd7, ?mvd2 +0*59c ce ?3b ?64 ?a0 ? * cfadddgt mvd6, ?mvd11, ?mvd0 +0*5a0 5e ?33 ?e4 ?cc ? * cfsubspl mvf14, ?mvf3, ?mvf12 +0*5a4 1e ?3f ?84 ?cd ? * cfsubsne mvf8, ?mvf15, ?mvf13 +0*5a8 be ?32 ?44 ?c9 ? * cfsubslt mvf4, ?mvf2, ?mvf9 +0*5ac 5e ?3a ?f4 ?c9 ? * cfsubspl mvf15, ?mvf10, ?mvf9 +0*5b0 ee ?38 ?34 ?cd ? * cfsubs mvf3, ?mvf8, ?mvf13 +0*5b4 2e ?3c ?14 ?e6 ? * cfsubdcs mvd1, ?mvd12, ?mvd6 +0*5b8 0e ?35 ?74 ?ee ? * cfsubdeq mvd7, ?mvd5, ?mvd14 +0*5bc ce ?31 ?a4 ?e8 ? * cfsubdgt mvd10, ?mvd1, ?mvd8 +0*5c0 de ?3b ?64 ?e4 ? * cfsubdle mvd6, ?mvd11, ?mvd4 +0*5c4 9e ?35 ?04 ?ef ? * cfsubdls mvd0, ?mvd5, ?mvd15 +0*5c8 9e ?1e ?44 ?03 ? * cfmulsls mvf4, ?mvf14, ?mvf3 +0*5cc de ?12 ?74 ?01 ? * cfmulsle mvf7, ?mvf2, ?mvf1 +0*5d0 6e ?10 ?b4 ?07 ? * cfmulsvs mvf11, ?mvf0, ?mvf7 +0*5d4 ee ?1c ?34 ?0a ? * cfmuls mvf3, ?mvf12, ?mvf10 +0*5d8 8e ?1d ?f4 ?06 ? * cfmulshi mvf15, ?mvf13, ?mvf6 +0*5dc 4e ?19 ?24 ?20 ? * cfmuldmi mvd2, ?mvd9, ?mvd0 +0*5e0 ee ?19 ?a4 ?24 ? * cfmuld mvd10, ?mvd9, ?mvd4 +0*5e4 3e ?1d ?84 ?27 ? * cfmuldcc mvd8, ?mvd13, ?mvd7 +0*5e8 1e ?16 ?c4 ?2b ? * cfmuldne mvd12, ?mvd6, ?mvd11 +0*5ec 7e ?1e ?54 ?23 ? * cfmuldvc mvd5, ?mvd14, ?mvd3 # int_arith: -0*5f0 1e ?3f ?85 ?00 ? * cfabs32ne mvfx8, ?mvfx15 -0*5f4 de ?3b ?65 ?00 ? * cfabs32le mvfx6, ?mvfx11 -0*5f8 4e ?39 ?25 ?00 ? * cfabs32mi mvfx2, ?mvfx9 -0*5fc 0e ?3f ?55 ?00 ? * cfabs32eq mvfx5, ?mvfx15 -0*600 ae ?34 ?95 ?00 ? * cfabs32ge mvfx9, ?mvfx4 -0*604 ee ?38 ?35 ?20 ? * cfabs64 mvdx3, ?mvdx8 -0*608 de ?32 ?75 ?20 ? * cfabs64le mvdx7, ?mvdx2 -0*60c 1e ?36 ?c5 ?20 ? * cfabs64ne mvdx12, ?mvdx6 -0*610 be ?37 ?05 ?20 ? * cfabs64lt mvdx0, ?mvdx7 -0*614 5e ?33 ?e5 ?20 ? * cfabs64pl mvdx14, ?mvdx3 -0*618 ce ?31 ?a5 ?40 ? * cfneg32gt mvfx10, ?mvfx1 -0*61c 8e ?3d ?f5 ?40 ? * cfneg32hi mvfx15, ?mvfx13 -0*620 6e ?34 ?b5 ?40 ? * cfneg32vs mvfx11, ?mvfx4 -0*624 2e ?30 ?95 ?40 ? * cfneg32cs mvfx9, ?mvfx0 -0*628 5e ?3a ?f5 ?40 ? * cfneg32pl mvfx15, ?mvfx10 -0*62c 9e ?3e ?45 ?60 ? * cfneg64ls mvdx4, ?mvdx14 -0*630 3e ?3d ?85 ?60 ? * cfneg64cc mvdx8, ?mvdx13 -0*634 7e ?31 ?25 ?60 ? * cfneg64vc mvdx2, ?mvdx1 -0*638 ce ?3b ?65 ?60 ? * cfneg64gt mvdx6, ?mvdx11 -0*63c 0e ?35 ?75 ?60 ? * cfneg64eq mvdx7, ?mvdx5 -0*640 ee ?3c ?35 ?8a ? * cfadd32 mvfx3, ?mvfx12, ?mvfx10 -0*644 8e ?3d ?f5 ?86 ? * cfadd32hi mvfx15, ?mvfx13, ?mvfx6 -0*648 4e ?39 ?25 ?80 ? * cfadd32mi mvfx2, ?mvfx9, ?mvfx0 -0*64c ee ?39 ?a5 ?84 ? * cfadd32 mvfx10, ?mvfx9, ?mvfx4 -0*650 3e ?3d ?85 ?87 ? * cfadd32cc mvfx8, ?mvfx13, ?mvfx7 -0*654 1e ?36 ?c5 ?ab ? * cfadd64ne mvdx12, ?mvdx6, ?mvdx11 -0*658 7e ?3e ?55 ?a3 ? * cfadd64vc mvdx5, ?mvdx14, ?mvdx3 -0*65c ae ?38 ?15 ?af ? * cfadd64ge mvdx1, ?mvdx8, ?mvdx15 -0*660 6e ?34 ?b5 ?a2 ? * cfadd64vs mvdx11, ?mvdx4, ?mvdx2 -0*664 0e ?3f ?55 ?aa ? * cfadd64eq mvdx5, ?mvdx15, ?mvdx10 -0*668 4e ?33 ?e5 ?c8 ? * cfsub32mi mvfx14, ?mvfx3, ?mvfx8 -0*66c 7e ?31 ?25 ?cc ? * cfsub32vc mvfx2, ?mvfx1, ?mvfx12 -0*670 be ?37 ?05 ?c5 ? * cfsub32lt mvfx0, ?mvfx7, ?mvfx5 -0*674 3e ?3a ?c5 ?c1 ? * cfsub32cc mvfx12, ?mvfx10, ?mvfx1 -0*678 ee ?36 ?d5 ?cb ? * cfsub32 mvfx13, ?mvfx6, ?mvfx11 -0*67c 2e ?30 ?95 ?e5 ? * cfsub64cs mvdx9, ?mvdx0, ?mvdx5 -0*680 ae ?34 ?95 ?ee ? * cfsub64ge mvdx9, ?mvdx4, ?mvdx14 -0*684 8e ?37 ?d5 ?e2 ? * cfsub64hi mvdx13, ?mvdx7, ?mvdx2 -0*688 ce ?3b ?65 ?e0 ? * cfsub64gt mvdx6, ?mvdx11, ?mvdx0 -0*68c 5e ?33 ?e5 ?ec ? * cfsub64pl mvdx14, ?mvdx3, ?mvdx12 -0*690 1e ?1f ?85 ?0d ? * cfmul32ne mvfx8, ?mvfx15, ?mvfx13 -0*694 be ?12 ?45 ?09 ? * cfmul32lt mvfx4, ?mvfx2, ?mvfx9 -0*698 5e ?1a ?f5 ?09 ? * cfmul32pl mvfx15, ?mvfx10, ?mvfx9 -0*69c ee ?18 ?35 ?0d ? * cfmul32 mvfx3, ?mvfx8, ?mvfx13 -0*6a0 2e ?1c ?15 ?06 ? * cfmul32cs mvfx1, ?mvfx12, ?mvfx6 -0*6a4 0e ?15 ?75 ?2e ? * cfmul64eq mvdx7, ?mvdx5, ?mvdx14 -0*6a8 ce ?11 ?a5 ?28 ? * cfmul64gt mvdx10, ?mvdx1, ?mvdx8 -0*6ac de ?1b ?65 ?24 ? * cfmul64le mvdx6, ?mvdx11, ?mvdx4 -0*6b0 9e ?15 ?05 ?2f ? * cfmul64ls mvdx0, ?mvdx5, ?mvdx15 -0*6b4 9e ?1e ?45 ?23 ? * cfmul64ls mvdx4, ?mvdx14, ?mvdx3 -0*6b8 de ?12 ?75 ?41 ? * cfmac32le mvfx7, ?mvfx2, ?mvfx1 -0*6bc 6e ?10 ?b5 ?47 ? * cfmac32vs mvfx11, ?mvfx0, ?mvfx7 -0*6c0 ee ?1c ?35 ?4a ? * cfmac32 mvfx3, ?mvfx12, ?mvfx10 -0*6c4 8e ?1d ?f5 ?46 ? * cfmac32hi mvfx15, ?mvfx13, ?mvfx6 -0*6c8 4e ?19 ?25 ?40 ? * cfmac32mi mvfx2, ?mvfx9, ?mvfx0 -0*6cc ee ?19 ?a5 ?64 ? * cfmsc32 mvfx10, ?mvfx9, ?mvfx4 -0*6d0 3e ?1d ?85 ?67 ? * cfmsc32cc mvfx8, ?mvfx13, ?mvfx7 -0*6d4 1e ?16 ?c5 ?6b ? * cfmsc32ne mvfx12, ?mvfx6, ?mvfx11 -0*6d8 7e ?1e ?55 ?63 ? * cfmsc32vc mvfx5, ?mvfx14, ?mvfx3 -0*6dc ae ?18 ?15 ?6f ? * cfmsc32ge mvfx1, ?mvfx8, ?mvfx15 +0*5f0 ae ?38 ?15 ?00 ? * cfabs32ge mvfx1, ?mvfx8 +0*5f4 ee ?36 ?d5 ?00 ? * cfabs32 mvfx13, ?mvfx6 +0*5f8 be ?32 ?45 ?00 ? * cfabs32lt mvfx4, ?mvfx2 +0*5fc 9e ?35 ?05 ?00 ? * cfabs32ls mvfx0, ?mvfx5 +0*600 ee ?39 ?a5 ?00 ? * cfabs32 mvfx10, ?mvfx9 +0*604 4e ?33 ?e5 ?20 ? * cfabs64mi mvdx14, ?mvdx3 +0*608 8e ?37 ?d5 ?20 ? * cfabs64hi mvdx13, ?mvdx7 +0*60c 2e ?3c ?15 ?20 ? * cfabs64cs mvdx1, ?mvdx12 +0*610 6e ?30 ?b5 ?20 ? * cfabs64vs mvdx11, ?mvdx0 +0*614 7e ?3e ?55 ?20 ? * cfabs64vc mvdx5, ?mvdx14 +0*618 3e ?3a ?c5 ?40 ? * cfneg32cc mvfx12, ?mvfx10 +0*61c 1e ?3f ?85 ?40 ? * cfneg32ne mvfx8, ?mvfx15 +0*620 de ?3b ?65 ?40 ? * cfneg32le mvfx6, ?mvfx11 +0*624 4e ?39 ?25 ?40 ? * cfneg32mi mvfx2, ?mvfx9 +0*628 0e ?3f ?55 ?40 ? * cfneg32eq mvfx5, ?mvfx15 +0*62c ae ?34 ?95 ?60 ? * cfneg64ge mvdx9, ?mvdx4 +0*630 ee ?38 ?35 ?60 ? * cfneg64 mvdx3, ?mvdx8 +0*634 de ?32 ?75 ?60 ? * cfneg64le mvdx7, ?mvdx2 +0*638 1e ?36 ?c5 ?60 ? * cfneg64ne mvdx12, ?mvdx6 +0*63c be ?37 ?05 ?60 ? * cfneg64lt mvdx0, ?mvdx7 +0*640 5e ?33 ?e5 ?8c ? * cfadd32pl mvfx14, ?mvfx3, ?mvfx12 +0*644 1e ?3f ?85 ?8d ? * cfadd32ne mvfx8, ?mvfx15, ?mvfx13 +0*648 be ?32 ?45 ?89 ? * cfadd32lt mvfx4, ?mvfx2, ?mvfx9 +0*64c 5e ?3a ?f5 ?89 ? * cfadd32pl mvfx15, ?mvfx10, ?mvfx9 +0*650 ee ?38 ?35 ?8d ? * cfadd32 mvfx3, ?mvfx8, ?mvfx13 +0*654 2e ?3c ?15 ?a6 ? * cfadd64cs mvdx1, ?mvdx12, ?mvdx6 +0*658 0e ?35 ?75 ?ae ? * cfadd64eq mvdx7, ?mvdx5, ?mvdx14 +0*65c ce ?31 ?a5 ?a8 ? * cfadd64gt mvdx10, ?mvdx1, ?mvdx8 +0*660 de ?3b ?65 ?a4 ? * cfadd64le mvdx6, ?mvdx11, ?mvdx4 +0*664 9e ?35 ?05 ?af ? * cfadd64ls mvdx0, ?mvdx5, ?mvdx15 +0*668 9e ?3e ?45 ?c3 ? * cfsub32ls mvfx4, ?mvfx14, ?mvfx3 +0*66c de ?32 ?75 ?c1 ? * cfsub32le mvfx7, ?mvfx2, ?mvfx1 +0*670 6e ?30 ?b5 ?c7 ? * cfsub32vs mvfx11, ?mvfx0, ?mvfx7 +0*674 ee ?3c ?35 ?ca ? * cfsub32 mvfx3, ?mvfx12, ?mvfx10 +0*678 8e ?3d ?f5 ?c6 ? * cfsub32hi mvfx15, ?mvfx13, ?mvfx6 +0*67c 4e ?39 ?25 ?e0 ? * cfsub64mi mvdx2, ?mvdx9, ?mvdx0 +0*680 ee ?39 ?a5 ?e4 ? * cfsub64 mvdx10, ?mvdx9, ?mvdx4 +0*684 3e ?3d ?85 ?e7 ? * cfsub64cc mvdx8, ?mvdx13, ?mvdx7 +0*688 1e ?36 ?c5 ?eb ? * cfsub64ne mvdx12, ?mvdx6, ?mvdx11 +0*68c 7e ?3e ?55 ?e3 ? * cfsub64vc mvdx5, ?mvdx14, ?mvdx3 +0*690 ae ?18 ?15 ?0f ? * cfmul32ge mvfx1, ?mvfx8, ?mvfx15 +0*694 6e ?14 ?b5 ?02 ? * cfmul32vs mvfx11, ?mvfx4, ?mvfx2 +0*698 0e ?1f ?55 ?0a ? * cfmul32eq mvfx5, ?mvfx15, ?mvfx10 +0*69c 4e ?13 ?e5 ?08 ? * cfmul32mi mvfx14, ?mvfx3, ?mvfx8 +0*6a0 7e ?11 ?25 ?0c ? * cfmul32vc mvfx2, ?mvfx1, ?mvfx12 +0*6a4 be ?17 ?05 ?25 ? * cfmul64lt mvdx0, ?mvdx7, ?mvdx5 +0*6a8 3e ?1a ?c5 ?21 ? * cfmul64cc mvdx12, ?mvdx10, ?mvdx1 +0*6ac ee ?16 ?d5 ?2b ? * cfmul64 mvdx13, ?mvdx6, ?mvdx11 +0*6b0 2e ?10 ?95 ?25 ? * cfmul64cs mvdx9, ?mvdx0, ?mvdx5 +0*6b4 ae ?14 ?95 ?2e ? * cfmul64ge mvdx9, ?mvdx4, ?mvdx14 +0*6b8 8e ?17 ?d5 ?42 ? * cfmac32hi mvfx13, ?mvfx7, ?mvfx2 +0*6bc ce ?1b ?65 ?40 ? * cfmac32gt mvfx6, ?mvfx11, ?mvfx0 +0*6c0 5e ?13 ?e5 ?4c ? * cfmac32pl mvfx14, ?mvfx3, ?mvfx12 +0*6c4 1e ?1f ?85 ?4d ? * cfmac32ne mvfx8, ?mvfx15, ?mvfx13 +0*6c8 be ?12 ?45 ?49 ? * cfmac32lt mvfx4, ?mvfx2, ?mvfx9 +0*6cc 5e ?1a ?f5 ?69 ? * cfmsc32pl mvfx15, ?mvfx10, ?mvfx9 +0*6d0 ee ?18 ?35 ?6d ? * cfmsc32 mvfx3, ?mvfx8, ?mvfx13 +0*6d4 2e ?1c ?15 ?66 ? * cfmsc32cs mvfx1, ?mvfx12, ?mvfx6 +0*6d8 0e ?15 ?75 ?6e ? * cfmsc32eq mvfx7, ?mvfx5, ?mvfx14 +0*6dc ce ?11 ?a5 ?68 ? * cfmsc32gt mvfx10, ?mvfx1, ?mvfx8 # acc_arith: -0*6e0 6e ?02 ?46 ?69 ? * cfmadd32vs mvax3, ?mvfx4, ?mvfx2, ?mvfx9 -0*6e4 0e ?0a ?f6 ?29 ? * cfmadd32eq mvax1, ?mvfx15, ?mvfx10, ?mvfx9 -0*6e8 4e ?08 ?36 ?2d ? * cfmadd32mi mvax1, ?mvfx3, ?mvfx8, ?mvfx13 -0*6ec 7e ?0c ?16 ?06 ? * cfmadd32vc mvax0, ?mvfx1, ?mvfx12, ?mvfx6 -0*6f0 be ?05 ?76 ?0e ? * cfmadd32lt mvax0, ?mvfx7, ?mvfx5, ?mvfx14 -0*6f4 3e ?11 ?a6 ?08 ? * cfmsub32cc mvax0, ?mvfx10, ?mvfx1, ?mvfx8 -0*6f8 ee ?1b ?66 ?44 ? * cfmsub32 mvax2, ?mvfx6, ?mvfx11, ?mvfx4 -0*6fc 2e ?15 ?06 ?2f ? * cfmsub32cs mvax1, ?mvfx0, ?mvfx5, ?mvfx15 -0*700 ae ?1e ?46 ?43 ? * cfmsub32ge mvax2, ?mvfx4, ?mvfx14, ?mvfx3 -0*704 8e ?12 ?76 ?61 ? * cfmsub32hi mvax3, ?mvfx7, ?mvfx2, ?mvfx1 -0*708 ce ?20 ?16 ?07 ? * cfmadda32gt mvax0, ?mvax1, ?mvfx0, ?mvfx7 -0*70c 5e ?2c ?26 ?4a ? * cfmadda32pl mvax2, ?mvax2, ?mvfx12, ?mvfx10 -0*710 1e ?2d ?36 ?26 ? * cfmadda32ne mvax1, ?mvax3, ?mvfx13, ?mvfx6 -0*714 be ?29 ?06 ?40 ? * cfmadda32lt mvax2, ?mvax0, ?mvfx9, ?mvfx0 -0*718 5e ?29 ?26 ?64 ? * cfmadda32pl mvax3, ?mvax2, ?mvfx9, ?mvfx4 -0*71c ee ?3d ?16 ?67 ? * cfmsuba32 mvax3, ?mvax1, ?mvfx13, ?mvfx7 -0*720 2e ?36 ?26 ?6b ? * cfmsuba32cs mvax3, ?mvax2, ?mvfx6, ?mvfx11 -0*724 0e ?3e ?36 ?23 ? * cfmsuba32eq mvax1, ?mvax3, ?mvfx14, ?mvfx3 -0*728 ce ?38 ?36 ?2f ? * cfmsuba32gt mvax1, ?mvax3, ?mvfx8, ?mvfx15 -0*72c de ?34 ?36 ?02 ? * cfmsuba32le mvax0, ?mvax3, ?mvfx4, ?mvfx2 +0*6e0 de ?04 ?b6 ?02 ? * cfmadd32le mvax0, ?mvfx11, ?mvfx4, ?mvfx2 +0*6e4 9e ?0f ?56 ?0a ? * cfmadd32ls mvax0, ?mvfx5, ?mvfx15, ?mvfx10 +0*6e8 9e ?03 ?e6 ?08 ? * cfmadd32ls mvax0, ?mvfx14, ?mvfx3, ?mvfx8 +0*6ec de ?01 ?26 ?4c ? * cfmadd32le mvax2, ?mvfx2, ?mvfx1, ?mvfx12 +0*6f0 6e ?07 ?06 ?25 ? * cfmadd32vs mvax1, ?mvfx0, ?mvfx7, ?mvfx5 +0*6f4 ee ?1a ?c6 ?41 ? * cfmsub32 mvax2, ?mvfx12, ?mvfx10, ?mvfx1 +0*6f8 8e ?16 ?d6 ?6b ? * cfmsub32hi mvax3, ?mvfx13, ?mvfx6, ?mvfx11 +0*6fc 4e ?10 ?96 ?05 ? * cfmsub32mi mvax0, ?mvfx9, ?mvfx0, ?mvfx5 +0*700 ee ?14 ?96 ?4e ? * cfmsub32 mvax2, ?mvfx9, ?mvfx4, ?mvfx14 +0*704 3e ?17 ?d6 ?22 ? * cfmsub32cc mvax1, ?mvfx13, ?mvfx7, ?mvfx2 +0*708 1e ?2b ?06 ?40 ? * cfmadda32ne mvax2, ?mvax0, ?mvfx11, ?mvfx0 +0*70c 7e ?23 ?26 ?6c ? * cfmadda32vc mvax3, ?mvax2, ?mvfx3, ?mvfx12 +0*710 ae ?2f ?16 ?6d ? * cfmadda32ge mvax3, ?mvax1, ?mvfx15, ?mvfx13 +0*714 6e ?22 ?26 ?69 ? * cfmadda32vs mvax3, ?mvax2, ?mvfx2, ?mvfx9 +0*718 0e ?2a ?36 ?29 ? * cfmadda32eq mvax1, ?mvax3, ?mvfx10, ?mvfx9 +0*71c 4e ?38 ?36 ?2d ? * cfmsuba32mi mvax1, ?mvax3, ?mvfx8, ?mvfx13 +0*720 7e ?3c ?36 ?06 ? * cfmsuba32vc mvax0, ?mvax3, ?mvfx12, ?mvfx6 +0*724 be ?35 ?16 ?0e ? * cfmsuba32lt mvax0, ?mvax1, ?mvfx5, ?mvfx14 +0*728 3e ?31 ?16 ?08 ? * cfmsuba32cc mvax0, ?mvax1, ?mvfx1, ?mvfx8 +0*72c ee ?3b ?06 ?44 ? * cfmsuba32 mvax2, ?mvax0, ?mvfx11, ?mvfx4 diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/arm/maverick.s binutils-2.15.91.0.1/gas/testsuite/gas/arm/maverick.s --- binutils-2.15.90.0.3/gas/testsuite/gas/arm/maverick.s 2004-03-03 12:24:34.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/arm/maverick.s 2004-05-27 11:26:04.078243450 -0700 @@ -1,470 +1,470 @@ .text .align load_store: - cfldrseq mvf5, [sp, #252] - cfldrsmi mvf14, [r11, #72] - cfldrsvc mvf2, [r12, #-240] - cfldrslt mvf0, [sl, #252] - cfldrsgt mvf10, [fp, #72] - cfldrsle mvf6, [ip, #-240]! - cfldrsls mvf0, [r10, #252]! - cfldrsmi mvf14, [r11, #72]! - cfldrsvc mvf2, [r12, #-240]! - cfldrslt mvf0, [sl, #252]! - cfldrsgt mvf10, [fp], #72 - cfldrsle mvf6, [ip], #-240 - cfldrsls mvf0, [r10], #252 - cfldrsmi mvf14, [r11], #72 - cfldrsvc mvf2, [r12], #-240 - cfldrdlt mvd0, [sl, #252] - cfldrdgt mvd10, [fp, #72] - cfldrdle mvd6, [ip, #-240] - cfldrdls mvd0, [r10, #252] - cfldrdmi mvd14, [r11, #72] - cfldrdvc mvd2, [r12, #-240]! - cfldrdlt mvd0, [sl, #252]! - cfldrdgt mvd10, [fp, #72]! - cfldrdle mvd6, [ip, #-240]! - cfldrdls mvd0, [r10, #252]! - cfldrdmi mvd14, [r11], #72 - cfldrdvc mvd2, [r12], #-240 - cfldrdlt mvd0, [sl], #252 - cfldrdgt mvd10, [fp], #72 - cfldrdle mvd6, [ip], #-240 - cfldr32ls mvfx0, [r10, #252] - cfldr32mi mvfx14, [r11, #72] - cfldr32vc mvfx2, [r12, #-240] - cfldr32lt mvfx0, [sl, #252] - cfldr32gt mvfx10, [fp, #72] - cfldr32le mvfx6, [ip, #-240]! - cfldr32ls mvfx0, [r10, #252]! - cfldr32mi mvfx14, [r11, #72]! - cfldr32vc mvfx2, [r12, #-240]! - cfldr32lt mvfx0, [sl, #252]! - cfldr32gt mvfx10, [fp], #72 - cfldr32le mvfx6, [ip], #-240 - cfldr32ls mvfx0, [r10], #252 - cfldr32mi mvfx14, [r11], #72 - cfldr32vc mvfx2, [r12], #-240 - cfldr64lt mvdx0, [sl, #252] - cfldr64gt mvdx10, [fp, #72] - cfldr64le mvdx6, [ip, #-240] - cfldr64ls mvdx0, [r10, #252] - cfldr64mi mvdx14, [r11, #72] - cfldr64vc mvdx2, [r12, #-240]! - cfldr64lt mvdx0, [sl, #252]! - cfldr64gt mvdx10, [fp, #72]! - cfldr64le mvdx6, [ip, #-240]! - cfldr64ls mvdx0, [r10, #252]! - cfldr64mi mvdx14, [r11], #72 - cfldr64vc mvdx2, [r12], #-240 - cfldr64lt mvdx0, [sl], #252 - cfldr64gt mvdx10, [fp], #72 - cfldr64le mvdx6, [ip], #-240 - cfstrsls mvf0, [r10, #252] - cfstrsmi mvf14, [r11, #72] - cfstrsvc mvf2, [r12, #-240] - cfstrslt mvf0, [sl, #252] - cfstrsgt mvf10, [fp, #72] - cfstrsle mvf6, [ip, #-240]! - cfstrsls mvf0, [r10, #252]! - cfstrsmi mvf14, [r11, #72]! - cfstrsvc mvf2, [r12, #-240]! - cfstrslt mvf0, [sl, #252]! - cfstrsgt mvf10, [fp], #72 - cfstrsle mvf6, [ip], #-240 - cfstrsls mvf0, [r10], #252 - cfstrsmi mvf14, [r11], #72 - cfstrsvc mvf2, [r12], #-240 - cfstrdlt mvd0, [sl, #252] - cfstrdgt mvd10, [fp, #72] - cfstrdle mvd6, [ip, #-240] - cfstrdls mvd0, [r10, #252] - cfstrdmi mvd14, [r11, #72] - cfstrdvc mvd2, [r12, #-240]! - cfstrdlt mvd0, [sl, #252]! - cfstrdgt mvd10, [fp, #72]! - cfstrdle mvd6, [ip, #-240]! - cfstrdls mvd0, [r10, #252]! - cfstrdmi mvd14, [r11], #72 - cfstrdvc mvd2, [r12], #-240 - cfstrdlt mvd0, [sl], #252 - cfstrdgt mvd10, [fp], #72 - cfstrdle mvd6, [ip], #-240 - cfstr32ls mvfx0, [r10, #252] - cfstr32mi mvfx14, [r11, #72] - cfstr32vc mvfx2, [r12, #-240] - cfstr32lt mvfx0, [sl, #252] - cfstr32gt mvfx10, [fp, #72] - cfstr32le mvfx6, [ip, #-240]! - cfstr32ls mvfx0, [r10, #252]! - cfstr32mi mvfx14, [r11, #72]! - cfstr32vc mvfx2, [r12, #-240]! - cfstr32lt mvfx0, [sl, #252]! - cfstr32gt mvfx10, [fp], #72 - cfstr32le mvfx6, [ip], #-240 - cfstr32ls mvfx0, [r10], #252 - cfstr32mi mvfx14, [r11], #72 - cfstr32vc mvfx2, [r12], #-240 - cfstr64lt mvdx0, [sl, #252] - cfstr64gt mvdx10, [fp, #72] - cfstr64le mvdx6, [ip, #-240] - cfstr64ls mvdx0, [r10, #252] - cfstr64mi mvdx14, [r11, #72] - cfstr64vc mvdx2, [r12, #-240]! - cfstr64lt mvdx0, [sl, #252]! - cfstr64gt mvdx10, [fp, #72]! - cfstr64le mvdx6, [ip, #-240]! - cfstr64ls mvdx0, [r10, #252]! - cfstr64mi mvdx14, [r11], #72 - cfstr64vc mvdx2, [r12], #-240 - cfstr64lt mvdx0, [sl], #252 - cfstr64gt mvdx10, [fp], #72 - cfstr64le mvdx6, [ip], #-240 + cfldrseq mvf5, [sp, #1020] + cfldrsmi mvf14, [r11, #292] + cfldrsvc mvf2, [r12, #-956] + cfldrslt mvf0, [sl, #-1020] + cfldrscc mvf12, [r1, #-156] + cfldrs mvf13, [r15, #416]! + cfldrscs mvf9, [r0, #-1020]! + cfldrsls mvf4, [r1, #-156]! + cfldrsle mvf7, [pc, #416]! + cfldrsvs mvf11, [r0, #-1020]! + cfldrscc mvf12, [r1], #-156 + cfldrs mvf13, [r15], #416 + cfldrscs mvf9, [r0], #-1020 + cfldrsls mvf4, [r1], #-156 + cfldrsle mvf7, [pc], #416 + cfldrdvs mvd11, [r0, #-1020] + cfldrdcc mvd12, [r1, #-156] + cfldrd mvd13, [r15, #416] + cfldrdcs mvd9, [r0, #-1020] + cfldrdls mvd4, [r1, #-156] + cfldrdle mvd7, [pc, #416]! + cfldrdvs mvd11, [r0, #-1020]! + cfldrdcc mvd12, [r1, #-156]! + cfldrd mvd13, [r15, #416]! + cfldrdcs mvd9, [r0, #-1020]! + cfldrdls mvd4, [r1], #-156 + cfldrdle mvd7, [pc], #416 + cfldrdvs mvd11, [r0], #-1020 + cfldrdcc mvd12, [r1], #-156 + cfldrd mvd13, [r15], #416 + cfldr32cs mvfx9, [r0, #-1020] + cfldr32ls mvfx4, [r1, #-156] + cfldr32le mvfx7, [pc, #416] + cfldr32vs mvfx11, [r0, #-1020] + cfldr32cc mvfx12, [r1, #-156] + cfldr32 mvfx13, [r15, #416]! + cfldr32cs mvfx9, [r0, #-1020]! + cfldr32ls mvfx4, [r1, #-156]! + cfldr32le mvfx7, [pc, #416]! + cfldr32vs mvfx11, [r0, #-1020]! + cfldr32cc mvfx12, [r1], #-156 + cfldr32 mvfx13, [r15], #416 + cfldr32cs mvfx9, [r0], #-1020 + cfldr32ls mvfx4, [r1], #-156 + cfldr32le mvfx7, [pc], #416 + cfldr64vs mvdx11, [r0, #-1020] + cfldr64cc mvdx12, [r1, #-156] + cfldr64 mvdx13, [r15, #416] + cfldr64cs mvdx9, [r0, #-1020] + cfldr64ls mvdx4, [r1, #-156] + cfldr64le mvdx7, [pc, #416]! + cfldr64vs mvdx11, [r0, #-1020]! + cfldr64cc mvdx12, [r1, #-156]! + cfldr64 mvdx13, [r15, #416]! + cfldr64cs mvdx9, [r0, #-1020]! + cfldr64ls mvdx4, [r1], #-156 + cfldr64le mvdx7, [pc], #416 + cfldr64vs mvdx11, [r0], #-1020 + cfldr64cc mvdx12, [r1], #-156 + cfldr64 mvdx13, [r15], #416 + cfstrscs mvf9, [r0, #-1020] + cfstrsls mvf4, [r1, #-156] + cfstrsle mvf7, [pc, #416] + cfstrsvs mvf11, [r0, #-1020] + cfstrscc mvf12, [r1, #-156] + cfstrs mvf13, [r15, #416]! + cfstrscs mvf9, [r0, #-1020]! + cfstrsls mvf4, [r1, #-156]! + cfstrsle mvf7, [pc, #416]! + cfstrsvs mvf11, [r0, #-1020]! + cfstrscc mvf12, [r1], #-156 + cfstrs mvf13, [r15], #416 + cfstrscs mvf9, [r0], #-1020 + cfstrsls mvf4, [r1], #-156 + cfstrsle mvf7, [pc], #416 + cfstrdvs mvd11, [r0, #-1020] + cfstrdcc mvd12, [r1, #-156] + cfstrd mvd13, [r15, #416] + cfstrdcs mvd9, [r0, #-1020] + cfstrdls mvd4, [r1, #-156] + cfstrdle mvd7, [pc, #416]! + cfstrdvs mvd11, [r0, #-1020]! + cfstrdcc mvd12, [r1, #-156]! + cfstrd mvd13, [r15, #416]! + cfstrdcs mvd9, [r0, #-1020]! + cfstrdls mvd4, [r1], #-156 + cfstrdle mvd7, [pc], #416 + cfstrdvs mvd11, [r0], #-1020 + cfstrdcc mvd12, [r1], #-156 + cfstrd mvd13, [r15], #416 + cfstr32cs mvfx9, [r0, #-1020] + cfstr32ls mvfx4, [r1, #-156] + cfstr32le mvfx7, [pc, #416] + cfstr32vs mvfx11, [r0, #-1020] + cfstr32cc mvfx12, [r1, #-156] + cfstr32 mvfx13, [r15, #416]! + cfstr32cs mvfx9, [r0, #-1020]! + cfstr32ls mvfx4, [r1, #-156]! + cfstr32le mvfx7, [pc, #416]! + cfstr32vs mvfx11, [r0, #-1020]! + cfstr32cc mvfx12, [r1], #-156 + cfstr32 mvfx13, [r15], #416 + cfstr32cs mvfx9, [r0], #-1020 + cfstr32ls mvfx4, [r1], #-156 + cfstr32le mvfx7, [pc], #416 + cfstr64vs mvdx11, [r0, #-1020] + cfstr64cc mvdx12, [r1, #-156] + cfstr64 mvdx13, [r15, #416] + cfstr64cs mvdx9, [r0, #-1020] + cfstr64ls mvdx4, [r1, #-156] + cfstr64le mvdx7, [pc, #416]! + cfstr64vs mvdx11, [r0, #-1020]! + cfstr64cc mvdx12, [r1, #-156]! + cfstr64 mvdx13, [r15, #416]! + cfstr64cs mvdx9, [r0, #-1020]! + cfstr64ls mvdx4, [r1], #-156 + cfstr64le mvdx7, [pc], #416 + cfstr64vs mvdx11, [r0], #-1020 + cfstr64cc mvdx12, [r1], #-156 + cfstr64 mvdx13, [r15], #416 move: - cfmvsrls mvf0, r10 - cfmvsr mvf10, r4 - cfmvsrmi mvf14, r11 - cfmvsrhi mvf13, r5 - cfmvsrcs mvf1, r6 - cfmvrsvs r3, mvf0 - cfmvrsvc r13, mvf14 - cfmvrscc r14, mvf10 - cfmvrsne r8, mvf15 - cfmvrsle r15, mvf11 - cfmvdlrmi mvd2, r3 - cfmvdlreq mvd5, sp - cfmvdlrge mvd9, lr - cfmvdlral mvd3, r8 - cfmvdlrle mvd7, pc - cfmvrdlne r6, mvd6 - cfmvrdllt r0, mvd7 - cfmvrdlpl r7, mvd3 - cfmvrdlgt r1, mvd1 - cfmvrdlhi r2, mvd13 - cfmvdhrvs mvd11, r6 - cfmvdhrcs mvd9, r0 - cfmvdhrpl mvd15, r7 - cfmvdhrls mvd4, r1 - cfmvdhrcc mvd8, r2 - cfmvrdhvc pc, mvd1 - cfmvrdhgt r9, mvd11 - cfmvrdheq sl, mvd5 - cfmvrdhal r4, mvd12 - cfmvrdhge fp, mvd8 - cfmv64lr mvdx13, r15 - cfmv64lrlt mvdx4, r9 - cfmv64lrls mvdx0, r10 - cfmv64lr mvdx10, r4 - cfmv64lrmi mvdx14, r11 - cfmvr64lhi r2, mvdx7 - cfmvr64lcs r12, mvdx12 - cfmvr64lvs r3, mvdx0 - cfmvr64lvc r13, mvdx14 - cfmvr64lcc r14, mvdx10 - cfmv64hrne mvdx8, r2 - cfmv64hrle mvdx6, ip - cfmv64hrmi mvdx2, r3 - cfmv64hreq mvdx5, sp - cfmv64hrge mvdx9, lr - cfmvr64hal r11, mvdx8 - cfmvr64hle r5, mvdx2 - cfmvr64hne r6, mvdx6 - cfmvr64hlt r0, mvdx7 - cfmvr64hpl r7, mvdx3 - cfmval32gt mvax1, mvfx1 - cfmval32hi mvax3, mvfx13 - cfmval32vs mvax3, mvfx4 - cfmval32cs mvax1, mvfx0 - cfmval32pl mvax3, mvfx10 - cfmv32alls mvfx4, mvax1 - cfmv32alcc mvfx8, mvax3 - cfmv32alvc mvfx2, mvax3 - cfmv32algt mvfx6, mvax1 - cfmv32aleq mvfx7, mvax3 - cfmvam32al mvax2, mvfx12 - cfmvam32ge mvax3, mvfx8 - cfmvam32 mvax2, mvfx6 - cfmvam32lt mvax2, mvfx2 - cfmvam32ls mvax0, mvfx5 - cfmv32am mvfx10, mvax2 - cfmv32ammi mvfx14, mvax3 - cfmv32amhi mvfx13, mvax2 - cfmv32amcs mvfx1, mvax2 - cfmv32amvs mvfx11, mvax0 - cfmvah32vc mvax3, mvfx14 - cfmvah32cc mvax0, mvfx10 - cfmvah32ne mvax1, mvfx15 - cfmvah32le mvax0, mvfx11 - cfmvah32mi mvax0, mvfx9 - cfmv32aheq mvfx5, mvax3 - cfmv32ahge mvfx9, mvax0 - cfmv32ahal mvfx3, mvax1 - cfmv32ahle mvfx7, mvax0 - cfmv32ahne mvfx12, mvax0 - cfmva32lt mvax0, mvfx7 - cfmva32pl mvax2, mvfx3 - cfmva32gt mvax1, mvfx1 - cfmva32hi mvax3, mvfx13 - cfmva32vs mvax3, mvfx4 - cfmv32acs mvfx9, mvax0 - cfmv32apl mvfx15, mvax2 - cfmv32als mvfx4, mvax1 - cfmv32acc mvfx8, mvax3 - cfmv32avc mvfx2, mvax3 - cfmva64gt mvax0, mvdx11 - cfmva64eq mvax1, mvdx5 - cfmva64al mvax2, mvdx12 - cfmva64ge mvax3, mvdx8 - cfmva64 mvax2, mvdx6 - cfmv64alt mvdx4, mvax0 - cfmv64als mvdx0, mvax1 - cfmv64a mvdx10, mvax2 - cfmv64ami mvdx14, mvax3 - cfmv64ahi mvdx13, mvax2 - cfmvsc32cs dspsc, mvdx12 - cfmvsc32vs dspsc, mvdx0 - cfmvsc32vc dspsc, mvdx14 - cfmvsc32cc dspsc, mvdx10 - cfmvsc32ne dspsc, mvdx15 - cfmv32scle mvdx6, dspsc - cfmv32scmi mvdx2, dspsc - cfmv32sceq mvdx5, dspsc - cfmv32scge mvdx9, dspsc - cfmv32scal mvdx3, dspsc - cfcpysle mvf7, mvf2 - cfcpysne mvf12, mvf6 - cfcpyslt mvf0, mvf7 - cfcpyspl mvf14, mvf3 - cfcpysgt mvf10, mvf1 - cfcpydhi mvd15, mvd13 - cfcpydvs mvd11, mvd4 - cfcpydcs mvd9, mvd0 - cfcpydpl mvd15, mvd10 - cfcpydls mvd4, mvd14 + cfmvsrcs mvf9, r0 + cfmvsrpl mvf15, r7 + cfmvsrls mvf4, r1 + cfmvsrcc mvf8, r2 + cfmvsrvc mvf2, r12 + cfmvrsgt r9, mvf11 + cfmvrseq sl, mvf5 + cfmvrsal r4, mvf12 + cfmvrsge fp, mvf8 + cfmvrs r5, mvf6 + cfmvdlrlt mvd4, r9 + cfmvdlrls mvd0, r10 + cfmvdlr mvd10, r4 + cfmvdlrmi mvd14, r11 + cfmvdlrhi mvd13, r5 + cfmvrdlcs r12, mvd12 + cfmvrdlvs r3, mvd0 + cfmvrdlvc r13, mvd14 + cfmvrdlcc r14, mvd10 + cfmvrdlne r8, mvd15 + cfmvdhrle mvd6, ip + cfmvdhrmi mvd2, r3 + cfmvdhreq mvd5, sp + cfmvdhrge mvd9, lr + cfmvdhral mvd3, r8 + cfmvrdhle r5, mvd2 + cfmvrdhne r6, mvd6 + cfmvrdhlt r0, mvd7 + cfmvrdhpl r7, mvd3 + cfmvrdhgt r1, mvd1 + cfmv64lrhi mvdx15, r5 + cfmv64lrvs mvdx11, r6 + cfmv64lrcs mvdx9, r0 + cfmv64lrpl mvdx15, r7 + cfmv64lrls mvdx4, r1 + cfmvr64lcc r8, mvdx13 + cfmvr64lvc pc, mvdx1 + cfmvr64lgt r9, mvdx11 + cfmvr64leq sl, mvdx5 + cfmvr64lal r4, mvdx12 + cfmv64hrge mvdx1, r8 + cfmv64hr mvdx13, r15 + cfmv64hrlt mvdx4, r9 + cfmv64hrls mvdx0, r10 + cfmv64hr mvdx10, r4 + cfmvr64hmi r1, mvdx3 + cfmvr64hhi r2, mvdx7 + cfmvr64hcs r12, mvdx12 + cfmvr64hvs r3, mvdx0 + cfmvr64hvc r13, mvdx14 + cfmval32cc mvax0, mvfx10 + cfmval32ne mvax1, mvfx15 + cfmval32le mvax0, mvfx11 + cfmval32mi mvax0, mvfx9 + cfmval32eq mvax1, mvfx15 + cfmv32alge mvfx9, mvax0 + cfmv32alal mvfx3, mvax1 + cfmv32alle mvfx7, mvax0 + cfmv32alne mvfx12, mvax0 + cfmv32allt mvfx0, mvax1 + cfmvam32pl mvax2, mvfx3 + cfmvam32gt mvax1, mvfx1 + cfmvam32hi mvax3, mvfx13 + cfmvam32vs mvax3, mvfx4 + cfmvam32cs mvax1, mvfx0 + cfmv32ampl mvfx15, mvax2 + cfmv32amls mvfx4, mvax1 + cfmv32amcc mvfx8, mvax3 + cfmv32amvc mvfx2, mvax3 + cfmv32amgt mvfx6, mvax1 + cfmvah32eq mvax1, mvfx5 + cfmvah32al mvax2, mvfx12 + cfmvah32ge mvax3, mvfx8 + cfmvah32 mvax2, mvfx6 + cfmvah32lt mvax2, mvfx2 + cfmv32ahls mvfx0, mvax1 + cfmv32ah mvfx10, mvax2 + cfmv32ahmi mvfx14, mvax3 + cfmv32ahhi mvfx13, mvax2 + cfmv32ahcs mvfx1, mvax2 + cfmva32vs mvax1, mvfx0 + cfmva32vc mvax3, mvfx14 + cfmva32cc mvax0, mvfx10 + cfmva32ne mvax1, mvfx15 + cfmva32le mvax0, mvfx11 + cfmv32ami mvfx2, mvax1 + cfmv32aeq mvfx5, mvax3 + cfmv32age mvfx9, mvax0 + cfmv32aal mvfx3, mvax1 + cfmv32ale mvfx7, mvax0 + cfmva64ne mvax2, mvdx6 + cfmva64lt mvax0, mvdx7 + cfmva64pl mvax2, mvdx3 + cfmva64gt mvax1, mvdx1 + cfmva64hi mvax3, mvdx13 + cfmv64avs mvdx11, mvax2 + cfmv64acs mvdx9, mvax0 + cfmv64apl mvdx15, mvax2 + cfmv64als mvdx4, mvax1 + cfmv64acc mvdx8, mvax3 + cfmvsc32vc dspsc, mvdx1 + cfmvsc32gt dspsc, mvdx11 + cfmvsc32eq dspsc, mvdx5 + cfmvsc32al dspsc, mvdx12 + cfmvsc32ge dspsc, mvdx8 + cfmv32sc mvdx13, dspsc + cfmv32sclt mvdx4, dspsc + cfmv32scls mvdx0, dspsc + cfmv32sc mvdx10, dspsc + cfmv32scmi mvdx14, dspsc + cfcpyshi mvf13, mvf7 + cfcpyscs mvf1, mvf12 + cfcpysvs mvf11, mvf0 + cfcpysvc mvf5, mvf14 + cfcpyscc mvf12, mvf10 + cfcpydne mvd8, mvd15 + cfcpydle mvd6, mvd11 + cfcpydmi mvd2, mvd9 + cfcpydeq mvd5, mvd15 + cfcpydge mvd9, mvd4 conv: - cfcvtsdcc mvd8, mvf13 - cfcvtsdvc mvd2, mvf1 - cfcvtsdgt mvd6, mvf11 - cfcvtsdeq mvd7, mvf5 - cfcvtsdal mvd3, mvf12 - cfcvtdsge mvf1, mvd8 - cfcvtds mvf13, mvd6 - cfcvtdslt mvf4, mvd2 - cfcvtdsls mvf0, mvd5 - cfcvtds mvf10, mvd9 - cfcvt32smi mvf14, mvfx3 - cfcvt32shi mvf13, mvfx7 - cfcvt32scs mvf1, mvfx12 - cfcvt32svs mvf11, mvfx0 - cfcvt32svc mvf5, mvfx14 - cfcvt32dcc mvd12, mvfx10 - cfcvt32dne mvd8, mvfx15 - cfcvt32dle mvd6, mvfx11 - cfcvt32dmi mvd2, mvfx9 - cfcvt32deq mvd5, mvfx15 - cfcvt64sge mvf9, mvdx4 - cfcvt64sal mvf3, mvdx8 - cfcvt64sle mvf7, mvdx2 - cfcvt64sne mvf12, mvdx6 - cfcvt64slt mvf0, mvdx7 - cfcvt64dpl mvd14, mvdx3 - cfcvt64dgt mvd10, mvdx1 - cfcvt64dhi mvd15, mvdx13 - cfcvt64dvs mvd11, mvdx4 - cfcvt64dcs mvd9, mvdx0 - cfcvts32pl mvfx15, mvf10 - cfcvts32ls mvfx4, mvf14 - cfcvts32cc mvfx8, mvf13 - cfcvts32vc mvfx2, mvf1 - cfcvts32gt mvfx6, mvf11 - cfcvtd32eq mvfx7, mvd5 - cfcvtd32al mvfx3, mvd12 - cfcvtd32ge mvfx1, mvd8 - cfcvtd32 mvfx13, mvd6 - cfcvtd32lt mvfx4, mvd2 - cftruncs32ls mvfx0, mvf5 - cftruncs32 mvfx10, mvf9 - cftruncs32mi mvfx14, mvf3 - cftruncs32hi mvfx13, mvf7 - cftruncs32cs mvfx1, mvf12 - cftruncd32vs mvfx11, mvd0 - cftruncd32vc mvfx5, mvd14 - cftruncd32cc mvfx12, mvd10 - cftruncd32ne mvfx8, mvd15 - cftruncd32le mvfx6, mvd11 + cfcvtsdal mvd3, mvf8 + cfcvtsdle mvd7, mvf2 + cfcvtsdne mvd12, mvf6 + cfcvtsdlt mvd0, mvf7 + cfcvtsdpl mvd14, mvf3 + cfcvtdsgt mvf10, mvd1 + cfcvtdshi mvf15, mvd13 + cfcvtdsvs mvf11, mvd4 + cfcvtdscs mvf9, mvd0 + cfcvtdspl mvf15, mvd10 + cfcvt32sls mvf4, mvfx14 + cfcvt32scc mvf8, mvfx13 + cfcvt32svc mvf2, mvfx1 + cfcvt32sgt mvf6, mvfx11 + cfcvt32seq mvf7, mvfx5 + cfcvt32dal mvd3, mvfx12 + cfcvt32dge mvd1, mvfx8 + cfcvt32d mvd13, mvfx6 + cfcvt32dlt mvd4, mvfx2 + cfcvt32dls mvd0, mvfx5 + cfcvt64s mvf10, mvdx9 + cfcvt64smi mvf14, mvdx3 + cfcvt64shi mvf13, mvdx7 + cfcvt64scs mvf1, mvdx12 + cfcvt64svs mvf11, mvdx0 + cfcvt64dvc mvd5, mvdx14 + cfcvt64dcc mvd12, mvdx10 + cfcvt64dne mvd8, mvdx15 + cfcvt64dle mvd6, mvdx11 + cfcvt64dmi mvd2, mvdx9 + cfcvts32eq mvfx5, mvf15 + cfcvts32ge mvfx9, mvf4 + cfcvts32al mvfx3, mvf8 + cfcvts32le mvfx7, mvf2 + cfcvts32ne mvfx12, mvf6 + cfcvtd32lt mvfx0, mvd7 + cfcvtd32pl mvfx14, mvd3 + cfcvtd32gt mvfx10, mvd1 + cfcvtd32hi mvfx15, mvd13 + cfcvtd32vs mvfx11, mvd4 + cftruncs32cs mvfx9, mvf0 + cftruncs32pl mvfx15, mvf10 + cftruncs32ls mvfx4, mvf14 + cftruncs32cc mvfx8, mvf13 + cftruncs32vc mvfx2, mvf1 + cftruncd32gt mvfx6, mvd11 + cftruncd32eq mvfx7, mvd5 + cftruncd32al mvfx3, mvd12 + cftruncd32ge mvfx1, mvd8 + cftruncd32 mvfx13, mvd6 shift: - cfrshl32mi mvfx2, mvfx9, r0 - cfrshl32 mvfx10, mvfx9, lr - cfrshl32cc mvfx8, mvfx13, r5 - cfrshl32ne mvfx12, mvfx6, r3 - cfrshl32vc mvfx5, mvfx14, r4 - cfrshl64ge mvdx1, mvdx8, r2 - cfrshl64vs mvdx11, mvdx4, r9 - cfrshl64eq mvdx5, mvdx15, r7 - cfrshl64mi mvdx14, mvdx3, r8 - cfrshl64vc mvdx2, mvdx1, r6 - cfsh32lt mvfx0, mvfx7, #-64 - cfsh32cc mvfx12, mvfx10, #-20 - cfsh32 mvfx13, mvfx6, #40 - cfsh32cs mvfx9, mvfx0, #-1 - cfsh32ge mvfx9, mvfx4, #24 - cfsh64hi mvdx13, mvdx7, #33 - cfsh64gt mvdx6, mvdx11, #0 - cfsh64pl mvdx14, mvdx3, #32 - cfsh64ne mvdx8, mvdx15, #-31 - cfsh64lt mvdx4, mvdx2, #1 + cfrshl32lt mvfx4, mvfx2, r3 + cfrshl32pl mvfx15, mvfx10, r4 + cfrshl32al mvfx3, mvfx8, r2 + cfrshl32cs mvfx1, mvfx12, r9 + cfrshl32eq mvfx7, mvfx5, r7 + cfrshl64gt mvdx10, mvdx1, r8 + cfrshl64le mvdx6, mvdx11, r6 + cfrshl64ls mvdx0, mvdx5, sp + cfrshl64ls mvdx4, mvdx14, r11 + cfrshl64le mvdx7, mvdx2, r12 + cfsh32vs mvfx11, mvfx0, #-1 + cfsh32al mvfx3, mvfx12, #24 + cfsh32hi mvfx15, mvfx13, #33 + cfsh32mi mvfx2, mvfx9, #0 + cfsh32 mvfx10, mvfx9, #32 + cfsh64cc mvdx8, mvdx13, #-31 + cfsh64ne mvdx12, mvdx6, #1 + cfsh64vc mvdx5, mvdx14, #-32 + cfsh64ge mvdx1, mvdx8, #-27 + cfsh64vs mvdx11, mvdx4, #-5 comp: - cfcmpspl sp, mvf10, mvf9 - cfcmpsal r11, mvf8, mvf13 - cfcmpscs r12, mvf12, mvf6 - cfcmpseq sl, mvf5, mvf14 - cfcmpsgt r1, mvf1, mvf8 - cfcmpdle r15, mvd11, mvd4 - cfcmpdls r0, mvd5, mvd15 - cfcmpdls lr, mvd14, mvd3 - cfcmpdle r5, mvd2, mvd1 - cfcmpdvs r3, mvd0, mvd7 - cfcmp32al r4, mvfx12, mvfx10 - cfcmp32hi r2, mvfx13, mvfx6 - cfcmp32mi r9, mvfx9, mvfx0 - cfcmp32 r7, mvfx9, mvfx4 - cfcmp32cc r8, mvfx13, mvfx7 - cfcmp64ne r6, mvdx6, mvdx11 - cfcmp64vc r13, mvdx14, mvdx3 - cfcmp64ge fp, mvdx8, mvdx15 - cfcmp64vs ip, mvdx4, mvdx2 - cfcmp64eq r10, mvdx15, mvdx10 + cfcmpseq r10, mvf15, mvf10 + cfcmpsmi r1, mvf3, mvf8 + cfcmpsvc pc, mvf1, mvf12 + cfcmpslt r0, mvf7, mvf5 + cfcmpscc r14, mvf10, mvf1 + cfcmpd r5, mvd6, mvd11 + cfcmpdcs r3, mvd0, mvd5 + cfcmpdge r4, mvd4, mvd14 + cfcmpdhi r2, mvd7, mvd2 + cfcmpdgt r9, mvd11, mvd0 + cfcmp32pl r7, mvfx3, mvfx12 + cfcmp32ne r8, mvfx15, mvfx13 + cfcmp32lt r6, mvfx2, mvfx9 + cfcmp32pl sp, mvfx10, mvfx9 + cfcmp32al r11, mvfx8, mvfx13 + cfcmp64cs r12, mvdx12, mvdx6 + cfcmp64eq sl, mvdx5, mvdx14 + cfcmp64gt r1, mvdx1, mvdx8 + cfcmp64le r15, mvdx11, mvdx4 + cfcmp64ls r0, mvdx5, mvdx15 fp_arith: - cfabssmi mvf14, mvf3 - cfabsshi mvf13, mvf7 - cfabsscs mvf1, mvf12 - cfabssvs mvf11, mvf0 - cfabssvc mvf5, mvf14 - cfabsdcc mvd12, mvd10 - cfabsdne mvd8, mvd15 - cfabsdle mvd6, mvd11 - cfabsdmi mvd2, mvd9 - cfabsdeq mvd5, mvd15 - cfnegsge mvf9, mvf4 - cfnegsal mvf3, mvf8 - cfnegsle mvf7, mvf2 - cfnegsne mvf12, mvf6 - cfnegslt mvf0, mvf7 - cfnegdpl mvd14, mvd3 - cfnegdgt mvd10, mvd1 - cfnegdhi mvd15, mvd13 - cfnegdvs mvd11, mvd4 - cfnegdcs mvd9, mvd0 - cfaddspl mvf15, mvf10, mvf9 - cfaddsal mvf3, mvf8, mvf13 - cfaddscs mvf1, mvf12, mvf6 - cfaddseq mvf7, mvf5, mvf14 - cfaddsgt mvf10, mvf1, mvf8 - cfadddle mvd6, mvd11, mvd4 - cfadddls mvd0, mvd5, mvd15 - cfadddls mvd4, mvd14, mvd3 - cfadddle mvd7, mvd2, mvd1 - cfadddvs mvd11, mvd0, mvd7 - cfsubsal mvf3, mvf12, mvf10 - cfsubshi mvf15, mvf13, mvf6 - cfsubsmi mvf2, mvf9, mvf0 - cfsubs mvf10, mvf9, mvf4 - cfsubscc mvf8, mvf13, mvf7 - cfsubdne mvd12, mvd6, mvd11 - cfsubdvc mvd5, mvd14, mvd3 - cfsubdge mvd1, mvd8, mvd15 - cfsubdvs mvd11, mvd4, mvd2 - cfsubdeq mvd5, mvd15, mvd10 - cfmulsmi mvf14, mvf3, mvf8 - cfmulsvc mvf2, mvf1, mvf12 - cfmulslt mvf0, mvf7, mvf5 - cfmulscc mvf12, mvf10, mvf1 - cfmuls mvf13, mvf6, mvf11 - cfmuldcs mvd9, mvd0, mvd5 - cfmuldge mvd9, mvd4, mvd14 - cfmuldhi mvd13, mvd7, mvd2 - cfmuldgt mvd6, mvd11, mvd0 - cfmuldpl mvd14, mvd3, mvd12 + cfabssls mvf4, mvf14 + cfabsscc mvf8, mvf13 + cfabssvc mvf2, mvf1 + cfabssgt mvf6, mvf11 + cfabsseq mvf7, mvf5 + cfabsdal mvd3, mvd12 + cfabsdge mvd1, mvd8 + cfabsd mvd13, mvd6 + cfabsdlt mvd4, mvd2 + cfabsdls mvd0, mvd5 + cfnegs mvf10, mvf9 + cfnegsmi mvf14, mvf3 + cfnegshi mvf13, mvf7 + cfnegscs mvf1, mvf12 + cfnegsvs mvf11, mvf0 + cfnegdvc mvd5, mvd14 + cfnegdcc mvd12, mvd10 + cfnegdne mvd8, mvd15 + cfnegdle mvd6, mvd11 + cfnegdmi mvd2, mvd9 + cfaddseq mvf5, mvf15, mvf10 + cfaddsmi mvf14, mvf3, mvf8 + cfaddsvc mvf2, mvf1, mvf12 + cfaddslt mvf0, mvf7, mvf5 + cfaddscc mvf12, mvf10, mvf1 + cfaddd mvd13, mvd6, mvd11 + cfadddcs mvd9, mvd0, mvd5 + cfadddge mvd9, mvd4, mvd14 + cfadddhi mvd13, mvd7, mvd2 + cfadddgt mvd6, mvd11, mvd0 + cfsubspl mvf14, mvf3, mvf12 + cfsubsne mvf8, mvf15, mvf13 + cfsubslt mvf4, mvf2, mvf9 + cfsubspl mvf15, mvf10, mvf9 + cfsubsal mvf3, mvf8, mvf13 + cfsubdcs mvd1, mvd12, mvd6 + cfsubdeq mvd7, mvd5, mvd14 + cfsubdgt mvd10, mvd1, mvd8 + cfsubdle mvd6, mvd11, mvd4 + cfsubdls mvd0, mvd5, mvd15 + cfmulsls mvf4, mvf14, mvf3 + cfmulsle mvf7, mvf2, mvf1 + cfmulsvs mvf11, mvf0, mvf7 + cfmulsal mvf3, mvf12, mvf10 + cfmulshi mvf15, mvf13, mvf6 + cfmuldmi mvd2, mvd9, mvd0 + cfmuld mvd10, mvd9, mvd4 + cfmuldcc mvd8, mvd13, mvd7 + cfmuldne mvd12, mvd6, mvd11 + cfmuldvc mvd5, mvd14, mvd3 int_arith: - cfabs32ne mvfx8, mvfx15 - cfabs32le mvfx6, mvfx11 - cfabs32mi mvfx2, mvfx9 - cfabs32eq mvfx5, mvfx15 - cfabs32ge mvfx9, mvfx4 - cfabs64al mvdx3, mvdx8 - cfabs64le mvdx7, mvdx2 - cfabs64ne mvdx12, mvdx6 - cfabs64lt mvdx0, mvdx7 - cfabs64pl mvdx14, mvdx3 - cfneg32gt mvfx10, mvfx1 - cfneg32hi mvfx15, mvfx13 - cfneg32vs mvfx11, mvfx4 - cfneg32cs mvfx9, mvfx0 - cfneg32pl mvfx15, mvfx10 - cfneg64ls mvdx4, mvdx14 - cfneg64cc mvdx8, mvdx13 - cfneg64vc mvdx2, mvdx1 - cfneg64gt mvdx6, mvdx11 - cfneg64eq mvdx7, mvdx5 - cfadd32al mvfx3, mvfx12, mvfx10 - cfadd32hi mvfx15, mvfx13, mvfx6 - cfadd32mi mvfx2, mvfx9, mvfx0 - cfadd32 mvfx10, mvfx9, mvfx4 - cfadd32cc mvfx8, mvfx13, mvfx7 - cfadd64ne mvdx12, mvdx6, mvdx11 - cfadd64vc mvdx5, mvdx14, mvdx3 - cfadd64ge mvdx1, mvdx8, mvdx15 - cfadd64vs mvdx11, mvdx4, mvdx2 - cfadd64eq mvdx5, mvdx15, mvdx10 - cfsub32mi mvfx14, mvfx3, mvfx8 - cfsub32vc mvfx2, mvfx1, mvfx12 - cfsub32lt mvfx0, mvfx7, mvfx5 - cfsub32cc mvfx12, mvfx10, mvfx1 - cfsub32 mvfx13, mvfx6, mvfx11 - cfsub64cs mvdx9, mvdx0, mvdx5 - cfsub64ge mvdx9, mvdx4, mvdx14 - cfsub64hi mvdx13, mvdx7, mvdx2 - cfsub64gt mvdx6, mvdx11, mvdx0 - cfsub64pl mvdx14, mvdx3, mvdx12 - cfmul32ne mvfx8, mvfx15, mvfx13 - cfmul32lt mvfx4, mvfx2, mvfx9 - cfmul32pl mvfx15, mvfx10, mvfx9 - cfmul32al mvfx3, mvfx8, mvfx13 - cfmul32cs mvfx1, mvfx12, mvfx6 - cfmul64eq mvdx7, mvdx5, mvdx14 - cfmul64gt mvdx10, mvdx1, mvdx8 - cfmul64le mvdx6, mvdx11, mvdx4 - cfmul64ls mvdx0, mvdx5, mvdx15 - cfmul64ls mvdx4, mvdx14, mvdx3 - cfmac32le mvfx7, mvfx2, mvfx1 - cfmac32vs mvfx11, mvfx0, mvfx7 - cfmac32al mvfx3, mvfx12, mvfx10 - cfmac32hi mvfx15, mvfx13, mvfx6 - cfmac32mi mvfx2, mvfx9, mvfx0 - cfmsc32 mvfx10, mvfx9, mvfx4 - cfmsc32cc mvfx8, mvfx13, mvfx7 - cfmsc32ne mvfx12, mvfx6, mvfx11 - cfmsc32vc mvfx5, mvfx14, mvfx3 - cfmsc32ge mvfx1, mvfx8, mvfx15 + cfabs32ge mvfx1, mvfx8 + cfabs32 mvfx13, mvfx6 + cfabs32lt mvfx4, mvfx2 + cfabs32ls mvfx0, mvfx5 + cfabs32 mvfx10, mvfx9 + cfabs64mi mvdx14, mvdx3 + cfabs64hi mvdx13, mvdx7 + cfabs64cs mvdx1, mvdx12 + cfabs64vs mvdx11, mvdx0 + cfabs64vc mvdx5, mvdx14 + cfneg32cc mvfx12, mvfx10 + cfneg32ne mvfx8, mvfx15 + cfneg32le mvfx6, mvfx11 + cfneg32mi mvfx2, mvfx9 + cfneg32eq mvfx5, mvfx15 + cfneg64ge mvdx9, mvdx4 + cfneg64al mvdx3, mvdx8 + cfneg64le mvdx7, mvdx2 + cfneg64ne mvdx12, mvdx6 + cfneg64lt mvdx0, mvdx7 + cfadd32pl mvfx14, mvfx3, mvfx12 + cfadd32ne mvfx8, mvfx15, mvfx13 + cfadd32lt mvfx4, mvfx2, mvfx9 + cfadd32pl mvfx15, mvfx10, mvfx9 + cfadd32al mvfx3, mvfx8, mvfx13 + cfadd64cs mvdx1, mvdx12, mvdx6 + cfadd64eq mvdx7, mvdx5, mvdx14 + cfadd64gt mvdx10, mvdx1, mvdx8 + cfadd64le mvdx6, mvdx11, mvdx4 + cfadd64ls mvdx0, mvdx5, mvdx15 + cfsub32ls mvfx4, mvfx14, mvfx3 + cfsub32le mvfx7, mvfx2, mvfx1 + cfsub32vs mvfx11, mvfx0, mvfx7 + cfsub32al mvfx3, mvfx12, mvfx10 + cfsub32hi mvfx15, mvfx13, mvfx6 + cfsub64mi mvdx2, mvdx9, mvdx0 + cfsub64 mvdx10, mvdx9, mvdx4 + cfsub64cc mvdx8, mvdx13, mvdx7 + cfsub64ne mvdx12, mvdx6, mvdx11 + cfsub64vc mvdx5, mvdx14, mvdx3 + cfmul32ge mvfx1, mvfx8, mvfx15 + cfmul32vs mvfx11, mvfx4, mvfx2 + cfmul32eq mvfx5, mvfx15, mvfx10 + cfmul32mi mvfx14, mvfx3, mvfx8 + cfmul32vc mvfx2, mvfx1, mvfx12 + cfmul64lt mvdx0, mvdx7, mvdx5 + cfmul64cc mvdx12, mvdx10, mvdx1 + cfmul64 mvdx13, mvdx6, mvdx11 + cfmul64cs mvdx9, mvdx0, mvdx5 + cfmul64ge mvdx9, mvdx4, mvdx14 + cfmac32hi mvfx13, mvfx7, mvfx2 + cfmac32gt mvfx6, mvfx11, mvfx0 + cfmac32pl mvfx14, mvfx3, mvfx12 + cfmac32ne mvfx8, mvfx15, mvfx13 + cfmac32lt mvfx4, mvfx2, mvfx9 + cfmsc32pl mvfx15, mvfx10, mvfx9 + cfmsc32al mvfx3, mvfx8, mvfx13 + cfmsc32cs mvfx1, mvfx12, mvfx6 + cfmsc32eq mvfx7, mvfx5, mvfx14 + cfmsc32gt mvfx10, mvfx1, mvfx8 acc_arith: - cfmadd32vs mvax3, mvfx4, mvfx2, mvfx9 - cfmadd32eq mvax1, mvfx15, mvfx10, mvfx9 - cfmadd32mi mvax1, mvfx3, mvfx8, mvfx13 - cfmadd32vc mvax0, mvfx1, mvfx12, mvfx6 - cfmadd32lt mvax0, mvfx7, mvfx5, mvfx14 - cfmsub32cc mvax0, mvfx10, mvfx1, mvfx8 - cfmsub32 mvax2, mvfx6, mvfx11, mvfx4 - cfmsub32cs mvax1, mvfx0, mvfx5, mvfx15 - cfmsub32ge mvax2, mvfx4, mvfx14, mvfx3 - cfmsub32hi mvax3, mvfx7, mvfx2, mvfx1 - cfmadda32gt mvax0, mvax1, mvfx0, mvfx7 - cfmadda32pl mvax2, mvax2, mvfx12, mvfx10 - cfmadda32ne mvax1, mvax3, mvfx13, mvfx6 - cfmadda32lt mvax2, mvax0, mvfx9, mvfx0 - cfmadda32pl mvax3, mvax2, mvfx9, mvfx4 - cfmsuba32al mvax3, mvax1, mvfx13, mvfx7 - cfmsuba32cs mvax3, mvax2, mvfx6, mvfx11 - cfmsuba32eq mvax1, mvax3, mvfx14, mvfx3 - cfmsuba32gt mvax1, mvax3, mvfx8, mvfx15 - cfmsuba32le mvax0, mvax3, mvfx4, mvfx2 + cfmadd32le mvax0, mvfx11, mvfx4, mvfx2 + cfmadd32ls mvax0, mvfx5, mvfx15, mvfx10 + cfmadd32ls mvax0, mvfx14, mvfx3, mvfx8 + cfmadd32le mvax2, mvfx2, mvfx1, mvfx12 + cfmadd32vs mvax1, mvfx0, mvfx7, mvfx5 + cfmsub32al mvax2, mvfx12, mvfx10, mvfx1 + cfmsub32hi mvax3, mvfx13, mvfx6, mvfx11 + cfmsub32mi mvax0, mvfx9, mvfx0, mvfx5 + cfmsub32 mvax2, mvfx9, mvfx4, mvfx14 + cfmsub32cc mvax1, mvfx13, mvfx7, mvfx2 + cfmadda32ne mvax2, mvax0, mvfx11, mvfx0 + cfmadda32vc mvax3, mvax2, mvfx3, mvfx12 + cfmadda32ge mvax3, mvax1, mvfx15, mvfx13 + cfmadda32vs mvax3, mvax2, mvfx2, mvfx9 + cfmadda32eq mvax1, mvax3, mvfx10, mvfx9 + cfmsuba32mi mvax1, mvax3, mvfx8, mvfx13 + cfmsuba32vc mvax0, mvax3, mvfx12, mvfx6 + cfmsuba32lt mvax0, mvax1, mvfx5, mvfx14 + cfmsuba32cc mvax0, mvax1, mvfx1, mvfx8 + cfmsuba32 mvax2, mvax0, mvfx11, mvfx4 diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/arm/reg-alias.d binutils-2.15.91.0.1/gas/testsuite/gas/arm/reg-alias.d --- binutils-2.15.90.0.3/gas/testsuite/gas/arm/reg-alias.d 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/arm/reg-alias.d 2004-05-27 11:26:04.079243321 -0700 @@ -0,0 +1,10 @@ +#objdump: -dr --prefix-addresses --show-raw-insn +#name: Case Sensitive Register Aliases + +.*: +file format .*arm.* + +Disassembly of section .text: +0+0 <.*> ee060f10 mcr 15, 0, r0, cr6, cr0, \{0\} +0+4 <.*> e1a00000 nop \(mov r0,r0\) +0+8 <.*> e1a00000 nop \(mov r0,r0\) +0+c <.*> e1a00000 nop \(mov r0,r0\) diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/arm/reg-alias.s binutils-2.15.91.0.1/gas/testsuite/gas/arm/reg-alias.s --- binutils-2.15.90.0.3/gas/testsuite/gas/arm/reg-alias.s 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/arm/reg-alias.s 2004-05-27 11:26:04.079243321 -0700 @@ -0,0 +1,14 @@ + @ Test case-sensitive register aliases + .text + .global fred +fred: + +MMUPurgeTLBReg .req c6 +MMUCP .req p15 + +MCR MMUCP, 0, a1, MMUPurgeTLBReg, c0, 0 + @ The NOPs are here for ports like arm-aout which will pad + @ the .text section to a 16 byte boundary. + nop + nop + nop diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/cfi/cfi-sparc64-1.d binutils-2.15.91.0.1/gas/testsuite/gas/cfi/cfi-sparc64-1.d --- binutils-2.15.90.0.3/gas/testsuite/gas/cfi/cfi-sparc64-1.d 2004-01-14 13:07:46.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/cfi/cfi-sparc64-1.d 2004-05-27 11:26:04.095241252 -0700 @@ -4,7 +4,7 @@ The section .eh_frame contains: -00000000 00000011 00000000 CIE +00000000 00000014 00000000 CIE Version: 1 Augmentation: "zR" Code alignment factor: 4 @@ -13,13 +13,13 @@ The section .eh_frame contains: Augmentation data: 1b DW_CFA_def_cfa: r14 ofs 2047 + DW_CFA_nop + DW_CFA_nop + DW_CFA_nop -00000015 00000017 00000019 FDE cie=00000000 pc=0000001d..0000004d - DW_CFA_advance_loc: 4 to 00000021 +00000018 00000014 0000001c FDE cie=00000000 pc=00000020..00000050 + DW_CFA_advance_loc: 4 to 00000024 DW_CFA_def_cfa_reg: r30 DW_CFA_GNU_window_save DW_CFA_register: r15 in r31 - DW_CFA_nop - DW_CFA_nop - DW_CFA_nop diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/elf/elf.exp binutils-2.15.91.0.1/gas/testsuite/gas/elf/elf.exp --- binutils-2.15.90.0.3/gas/testsuite/gas/elf/elf.exp 2004-01-14 13:07:46.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/elf/elf.exp 2004-05-27 11:26:04.108239571 -0700 @@ -48,10 +48,15 @@ if { ([istarget "*-*-elf*"] set target_machine -m32r } run_dump_test "ehopt0" + run_dump_test "group0a" + run_dump_test "group0b" + run_dump_test "group1a" + run_dump_test "group1b" run_dump_test "section0" run_dump_test "section1" run_list_test "section2" "$target_machine" "-al" "" - run_dump_test "section3" + run_dump_test "section3" + run_dump_test "section4" run_dump_test "symver" run_list_test "type" "" "" "| grep \"1 \\\[FONT\\\]\"" } diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/elf/group0.s binutils-2.15.91.0.1/gas/testsuite/gas/elf/group0.s --- binutils-2.15.90.0.3/gas/testsuite/gas/elf/group0.s 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/elf/group0.s 2004-05-27 11:26:04.109239442 -0700 @@ -0,0 +1,4 @@ + .section .foo,"axG",%progbits,.foo_group,comdat + .byte 1 + .section .bar,"aG",%progbits,.foo_group,comdat + .byte 1 diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/elf/group0a.d binutils-2.15.91.0.1/gas/testsuite/gas/elf/group0a.d --- binutils-2.15.90.0.3/gas/testsuite/gas/elf/group0a.d 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/elf/group0a.d 2004-05-27 11:26:04.109239442 -0700 @@ -0,0 +1,9 @@ +#readelf: -SW +#name: group section +#source: group0.s + +#... +[ ]*\[.*\][ ]+\.foo[ ]+PROGBITS.*[ ]+AXG[ ]+.* +[ ]*\[.*\][ ]+\.bar[ ]+PROGBITS.*[ ]+AG[ ]+.* +[ ]*\[.*\][ ]+\.foo_group[ ]+GROUP.* +#pass diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/elf/group0b.d binutils-2.15.91.0.1/gas/testsuite/gas/elf/group0b.d --- binutils-2.15.90.0.3/gas/testsuite/gas/elf/group0b.d 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/elf/group0b.d 2004-05-27 11:26:04.109239442 -0700 @@ -0,0 +1,10 @@ +#readelf: -g +#name: group section +#source: group0.s + +#... +COMDAT group section `.foo_group' \[.foo_group\] contains 2 sections: +[ ]+\[Index\][ ]+Name +[ ]+\[.*\][ ]+.foo +[ ]+\[.*\][ ]+.bar +#pass diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/elf/group1.s binutils-2.15.91.0.1/gas/testsuite/gas/elf/group1.s --- binutils-2.15.90.0.3/gas/testsuite/gas/elf/group1.s 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/elf/group1.s 2004-05-27 11:26:04.110239313 -0700 @@ -0,0 +1,2 @@ + .section .text,"axG",%progbits,.foo_group,comdat + .byte 1 diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/elf/group1a.d binutils-2.15.91.0.1/gas/testsuite/gas/elf/group1a.d --- binutils-2.15.90.0.3/gas/testsuite/gas/elf/group1a.d 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/elf/group1a.d 2004-05-27 11:26:04.110239313 -0700 @@ -0,0 +1,10 @@ +#readelf: -SW +#name: group section with multiple sections of same name +#source: group1.s + +#... +[ ]*\[.*\][ ]+\.text[ ]+PROGBITS.*[ ]+AX[ ]+.* +#... +[ ]*\[.*\][ ]+\.text[ ]+PROGBITS.*[ ]+AXG[ ]+.* +[ ]*\[.*\][ ]+\.foo_group[ ]+GROUP.* +#pass diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/elf/group1b.d binutils-2.15.91.0.1/gas/testsuite/gas/elf/group1b.d --- binutils-2.15.90.0.3/gas/testsuite/gas/elf/group1b.d 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/elf/group1b.d 2004-05-27 11:26:04.111239184 -0700 @@ -0,0 +1,9 @@ +#readelf: -g +#name: group section with multiple sections of same name +#source: group1.s + +#... +COMDAT group section `.foo_group' \[.foo_group\] contains 1 sections: +[ ]+\[Index\][ ]+Name +[ ]+\[.*\][ ]+.text +#pass diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/elf/section4.d binutils-2.15.91.0.1/gas/testsuite/gas/elf/section4.d --- binutils-2.15.90.0.3/gas/testsuite/gas/elf/section4.d 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/elf/section4.d 2004-05-27 11:26:04.111239184 -0700 @@ -0,0 +1,12 @@ +#readelf: --sections +#name: label arithmetic with multiple same-name sections + +#... +[ ]*\[.*\][ ]+\.text[ ]+PROGBITS.* +#... +[ ]*\[.*\][ ]+\.data[ ]+PROGBITS.* +#... +[ ]*\[.*\][ ]+\.text[ ]+PROGBITS.* +#... +[ ]*\[.*\][ ]+foo[ ]+GROUP.* +#pass diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/elf/section4.s binutils-2.15.91.0.1/gas/testsuite/gas/elf/section4.s --- binutils-2.15.90.0.3/gas/testsuite/gas/elf/section4.s 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/elf/section4.s 2004-05-27 11:26:04.112239054 -0700 @@ -0,0 +1,11 @@ + .text +.L1: + .align 4 +.L2: +.L3: + .section .data,"",%progbits + .long .L3 - .L1 + .section .text,"axG",%progbits,foo,comdat + .word 0 + + \ No newline at end of file diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/elf/symver.d binutils-2.15.91.0.1/gas/testsuite/gas/elf/symver.d --- binutils-2.15.90.0.3/gas/testsuite/gas/elf/symver.d 2003-05-05 14:46:48.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/elf/symver.d 2004-05-27 11:26:04.112239054 -0700 @@ -3,6 +3,7 @@ # # The #... and #pass are there to match extra symbols inserted by # some toolchains, eg the mips-elf port will add .reginfo and .ptrd +# and the arm-elf toolchain will add $d. dump.o: file format .* @@ -13,5 +14,6 @@ SYMBOL TABLE: 0+000 l.*d.*\.bss.*0+000.* #... 0+000 l.*O.*\.data.*0+004 x +#... 0+000 l.*O.*\.data.*0+004 x@VERS\.0 #pass diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/frv/fr405-insn.d binutils-2.15.91.0.1/gas/testsuite/gas/frv/fr405-insn.d --- binutils-2.15.90.0.3/gas/testsuite/gas/frv/fr405-insn.d 2004-03-03 12:24:34.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/frv/fr405-insn.d 2004-05-27 11:26:04.120238020 -0700 @@ -1,7 +1,7 @@ #as: -mcpu=fr405 #objdump: -dr -.*: file format elf32-frv +.*: file format elf32-frv(|fdpic) Disassembly of section \.text: diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/frv/fr450-insn.d binutils-2.15.91.0.1/gas/testsuite/gas/frv/fr450-insn.d --- binutils-2.15.90.0.3/gas/testsuite/gas/frv/fr450-insn.d 2004-03-03 12:24:34.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/frv/fr450-insn.d 2004-05-27 11:26:04.120238020 -0700 @@ -1,7 +1,7 @@ #as: -mcpu=fr450 #objdump: -dr -.*: file format elf32-frv +.*: file format elf32-frv(|fdpic) Disassembly of section \.text: diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/frv/reloc1.d binutils-2.15.91.0.1/gas/testsuite/gas/frv/reloc1.d --- binutils-2.15.90.0.3/gas/testsuite/gas/frv/reloc1.d 2004-01-14 13:07:46.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/frv/reloc1.d 2004-05-27 11:26:04.132236468 -0700 @@ -1,6 +1,6 @@ #objdump: -Dr -.* elf32-frv +.* elf32-frv(|fdpic) Disassembly.*\.text: diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/h8300/t03_add.exp binutils-2.15.91.0.1/gas/testsuite/gas/h8300/t03_add.exp --- binutils-2.15.90.0.3/gas/testsuite/gas/h8300/t03_add.exp 2004-01-14 13:07:46.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/h8300/t03_add.exp 2004-05-27 11:26:04.155233494 -0700 @@ -2940,7 +2940,7 @@ proc do_t03_add_test {} { default { fail "$testname: add.l @0x1234:16, ... ($x)" } } # FIXME return early, expect bombs out on the next group. - return; + return set x 0 expect { -re ".* 960 1f44 01046B2C" { set x [expr $x+1]; exp_continue; } diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/h8300/t04_sub.exp binutils-2.15.91.0.1/gas/testsuite/gas/h8300/t04_sub.exp --- binutils-2.15.90.0.3/gas/testsuite/gas/h8300/t04_sub.exp 2004-01-14 13:07:47.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/h8300/t04_sub.exp 2004-05-27 11:26:04.168231813 -0700 @@ -2939,7 +2939,7 @@ proc do_t04_sub_test {} { default { fail "$testname: sub.l @0x1234:16, ... ($x)" } } # FIXME return early, expect bombs out on the next group. - return; + return set x 0 expect { -re ".* 959 1f42 01046B2C" { set x [expr $x+1]; exp_continue; } diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/h8300/t05_cmp.exp binutils-2.15.91.0.1/gas/testsuite/gas/h8300/t05_cmp.exp --- binutils-2.15.90.0.3/gas/testsuite/gas/h8300/t05_cmp.exp 2004-01-14 13:07:47.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/h8300/t05_cmp.exp 2004-05-27 11:26:04.182230003 -0700 @@ -2800,7 +2800,7 @@ proc do_t05_cmp_test {} { default { fail "$testname: cmp.l @0x1234:16, ... ($x)" } } # FIXME return early, expect bombs out on the next group. - return; + return set x 0 expect { -re ".* 903 1e00 01046B2C" { set x [expr $x+1]; exp_continue; } diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/h8300/t08_or.exp binutils-2.15.91.0.1/gas/testsuite/gas/h8300/t08_or.exp --- binutils-2.15.90.0.3/gas/testsuite/gas/h8300/t08_or.exp 2004-01-14 13:07:47.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/h8300/t08_or.exp 2004-05-27 11:26:04.199227805 -0700 @@ -2921,7 +2921,7 @@ proc do_t08_or_test {} { default { fail "$testname: or.l @0x1234:16, ... ($x)" } } # FIXME return early, expect bombs out on the next group. - return; + return set x 0 expect { -re ".* 954 1f30 01046B2C" { set x [expr $x+1]; exp_continue; } diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/h8300/t09_xor.exp binutils-2.15.91.0.1/gas/testsuite/gas/h8300/t09_xor.exp --- binutils-2.15.90.0.3/gas/testsuite/gas/h8300/t09_xor.exp 2004-01-14 13:07:47.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/h8300/t09_xor.exp 2004-05-27 11:26:04.214225866 -0700 @@ -2921,7 +2921,7 @@ proc do_t09_xor_test {} { default { fail "$testname: xor.l @0x1234:16, ... ($x)" } } # FIXME return early, expect bombs out on the next group. - return; + return set x 0 expect { -re ".* 954 1f30 01046B2C" { set x [expr $x+1]; exp_continue; } diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/h8300/t10_and.exp binutils-2.15.91.0.1/gas/testsuite/gas/h8300/t10_and.exp --- binutils-2.15.90.0.3/gas/testsuite/gas/h8300/t10_and.exp 2004-01-14 13:07:47.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/h8300/t10_and.exp 2004-05-27 11:26:04.229223926 -0700 @@ -2921,7 +2921,7 @@ proc do_t10_and_test {} { default { fail "$testname: and.l @0x1234:16, ... ($x)" } } # FIXME return early, expect bombs out on the next group. - return; + return set x 0 expect { -re ".* 954 1f30 01046B2C" { set x [expr $x+1]; exp_continue; } diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/hppa/reloc/reloc.exp binutils-2.15.91.0.1/gas/testsuite/gas/hppa/reloc/reloc.exp --- binutils-2.15.90.0.3/gas/testsuite/gas/hppa/reloc/reloc.exp 2002-09-27 08:33:09.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/hppa/reloc/reloc.exp 2004-05-27 11:26:04.241222375 -0700 @@ -68,7 +68,7 @@ proc do_relocation_reduction_tests {} { if {[istarget hppa*64*-*-*] || [istarget hppa*-*-*elf*] || [istarget hppa*-*-linux*]} then { - return; + return } if [gas_test_old "reduce.s" "" "Relocation reductions (part1)"] then { @@ -245,7 +245,7 @@ proc do_selector_scope_test {} { set x 0 if [istarget hppa*64*-*-*] then { - return; + return } if [gas_test_old "selectorbug.s" "" "Test scope of field selector (part 1)"] { @@ -348,7 +348,7 @@ proc do_exit_relocation_test {} { if {[istarget hppa*64*-*-*] || [istarget hppa*-*-*elf*] || [istarget hppa*-*-linux*]} then { gas_test_old "exitbug.s" "" "Test for bogus R_EXIT relocation (part 1)" - return; + return } if [gas_test_old "exitbug.s" "" "Test for bogus R_EXIT relocation (part 1)"] { @@ -381,7 +381,7 @@ proc do_cross_space_fixup_test_1 {} { # ELF doesn't really handle extra sections too well... if {[istarget hppa*64*-*-*] || [istarget hppa*-*-*elf*] || [istarget hppa*-*-linux*]} then { - return; + return } if [gas_test_old "fixupbug.s" "" "Test cross space jump/call fixup bug (part 1)"] { @@ -415,7 +415,7 @@ proc do_cross_space_fixup_test_2 {} { # ELF doesn't really handle extra sections too well... if {[istarget hppa*64*-*-*] || [istarget hppa*-*-*elf*] || [istarget hppa*-*-linux*]} then { - return; + return } gas_start "fixupbug.s" "-al" @@ -600,7 +600,7 @@ proc do_pic_relocation_test {} { # ELF doesn't really handle extra sections too well... if {[istarget hppa*64*-*-*] || [istarget hppa*-*-*elf*] || [istarget hppa*-*-linux*]} then { - return; + return } gas_start "picreloc.s" "-al" @@ -629,7 +629,7 @@ proc do_apply_test {} { # ELF doesn't really handle extra sections too well... if {[istarget hppa*64*-*-*] || [istarget hppa*-*-*elf*] || [istarget hppa*-*-linux*]} then { - return; + return } gas_start "applybug.s" "-al" diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/hppa/unsorted/unsorted.exp binutils-2.15.91.0.1/gas/testsuite/gas/hppa/unsorted/unsorted.exp --- binutils-2.15.90.0.3/gas/testsuite/gas/hppa/unsorted/unsorted.exp 2002-09-27 08:33:09.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/hppa/unsorted/unsorted.exp 2004-05-27 11:26:04.244221987 -0700 @@ -197,7 +197,7 @@ proc do_import_test {} { proc do_common_test {} { # linux has a different .comm syntax if [istarget hppa*-*-linux*] then { - return; + return } set testname "common.s: Test for bug in .comm handling (part2)" diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/i386/i386.exp binutils-2.15.91.0.1/gas/testsuite/gas/i386/i386.exp --- binutils-2.15.90.0.3/gas/testsuite/gas/i386/i386.exp 2004-04-12 12:56:35.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/i386/i386.exp 2004-05-27 11:26:04.258220176 -0700 @@ -20,7 +20,7 @@ proc gas_64_check { } { global srcdir catch "exec $srcdir/lib/run $NM $NMFLAGS --help" nm_help - return [regexp "targets:.*x86-64" $nm_help]; + return [regexp "targets:.*x86-64" $nm_help] } proc gas_32_check { } { @@ -29,7 +29,7 @@ proc gas_32_check { } { global srcdir catch "exec $srcdir/lib/run $NM $NMFLAGS --help" nm_help - return [regexp "targets:.*i386" $nm_help]; + return [regexp "targets:.*i386" $nm_help] } @@ -88,6 +88,13 @@ if [expr ([istarget "i*86-*-*"] || [ist run_dump_test "tlsnopic" } + # This is a PE specific test. + if { [istarget "*-*-cygwin*"] || [istarget "*-*-pe"] + || [istarget "*-*-mingw*"] + } then { + run_dump_test "secrel" + } + set ASFLAGS "$old_ASFLAGS" } diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/i386/secrel.d binutils-2.15.91.0.1/gas/testsuite/gas/i386/secrel.d --- binutils-2.15.90.0.3/gas/testsuite/gas/i386/secrel.d 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/i386/secrel.d 2004-05-27 11:26:04.258220176 -0700 @@ -0,0 +1,43 @@ +#objdump: -rs +#name: i386 secrel reloc + +.*: +file format pe-i386 + +RELOCATION RECORDS FOR \[\.data\]: +OFFSET TYPE VALUE +00000024 secrel32 \.text +00000029 secrel32 \.text +0000002e secrel32 \.text +00000033 secrel32 \.text +00000044 secrel32 \.data +00000049 secrel32 \.data +0000004e secrel32 \.data +00000053 secrel32 \.data +00000064 secrel32 \.rdata +00000069 secrel32 \.rdata +0000006e secrel32 \.rdata +00000073 secrel32 \.rdata +00000084 secrel32 ext24 +00000089 secrel32 ext2d +0000008e secrel32 ext36 +00000093 secrel32 ext3f + + +Contents of section \.text: + 0000 3e3e3e3e 3c3c3c3c 3e3e3e3e 3e3c3c3c >>>><<<<>>>>><<< + 0010 3e3e3e3e 3e3e3c3c 3e3e3e3e 3e3e3e3c >>>>>><<>>>>>>>< +Contents of section \.data: + 0000 3e3e3e3e 3c3c3c3c 3e3e3e3e 3e3c3c3c >>>><<<<>>>>><<< + 0010 3e3e3e3e 3e3e3c3c 3e3e3e3e 3e3e3e3c >>>>>><<>>>>>>>< + 0020 3e3e3e3e 04000000 110d0000 00111600 >>>>............ + 0030 0000111f 00000011 3c3c3c3c 3c3c3c3c ........<<<<<<<< + 0040 3e3e3e3e 04000000 110d0000 00111600 >>>>............ + 0050 0000111f 00000011 3c3c3c3c 3c3c3c3c ........<<<<<<<< + 0060 3e3e3e3e 04000000 110d0000 00111600 >>>>............ + 0070 0000111f 00000011 3c3c3c3c 3c3c3c3c ........<<<<<<<< + 0080 3e3e3e3e 00000000 11000000 00110000 >>>>............ + 0090 00001100 00000011 3c3c3c3c 3c3c3c3c ........<<<<<<<< +Contents of section \.rdata: + 0000 3e3e3e3e 3c3c3c3c 3e3e3e3e 3e3c3c3c >>>><<<<>>>>><<< + 0010 3e3e3e3e 3e3e3c3c 3e3e3e3e 3e3e3e3c >>>>>><<>>>>>>>< + 0020 3e3e3e3e >>>> diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/i386/secrel.s binutils-2.15.91.0.1/gas/testsuite/gas/i386/secrel.s --- binutils-2.15.90.0.3/gas/testsuite/gas/i386/secrel.s 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/i386/secrel.s 2004-05-27 11:26:04.259220047 -0700 @@ -0,0 +1,77 @@ +.text + + .ascii ">>>>" +pre04: .ascii "<<<<" + .ascii ">>>>>" +pre0d: .ascii "<<<" + .ascii ">>>>>>" +pre16: .ascii "<<" + .ascii ">>>>>>>" +pre1f: .ascii "<" + +.data + + .ascii ">>>>" +sam04: .ascii "<<<<" + .ascii ">>>>>" +sam0d: .ascii "<<<" + .ascii ">>>>>>" +sam16: .ascii "<<" + .ascii ">>>>>>>" +sam1f: .ascii "<" + + .ascii ">>>>" + .secrel32 pre04 + .byte 0x11 + .secrel32 pre0d + .byte 0x11 + .secrel32 pre16 + .byte 0x11 + .secrel32 pre1f + .byte 0x11 + .ascii "<<<<<<<<" + + .ascii ">>>>" + .secrel32 sam04 + .byte 0x11 + .secrel32 sam0d + .byte 0x11 + .secrel32 sam16 + .byte 0x11 + .secrel32 sam1f + .byte 0x11 + .ascii "<<<<<<<<" + + .ascii ">>>>" + .secrel32 nex04 + .byte 0x11 + .secrel32 nex0d + .byte 0x11 + .secrel32 nex16 + .byte 0x11 + .secrel32 nex1f + .byte 0x11 + .ascii "<<<<<<<<" + + .ascii ">>>>" + .secrel32 ext24 + .byte 0x11 + .secrel32 ext2d + .byte 0x11 + .secrel32 ext36 + .byte 0x11 + .secrel32 ext3f + .byte 0x11 + .ascii "<<<<<<<<" + +.section .rdata + + .ascii ">>>>" +nex04: .ascii "<<<<" + .ascii ">>>>>" +nex0d: .ascii "<<<" + .ascii ">>>>>>" +nex16: .ascii "<<" + .ascii ">>>>>>>" +nex1f: .ascii "<" + .ascii ">>>>" diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/ia64/dv-srlz.d binutils-2.15.91.0.1/gas/testsuite/gas/ia64/dv-srlz.d --- binutils-2.15.90.0.3/gas/testsuite/gas/ia64/dv-srlz.d 2004-01-14 13:07:47.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/ia64/dv-srlz.d 2004-05-27 11:26:04.271218496 -0700 @@ -10,7 +10,7 @@ Disassembly of section \.text: 0: 0a 00 00 02 34 04 \[MMI\] ptc\.e r1;; 6: 00 00 00 60 00 00 srlz\.d c: 00 00 04 00 nop\.i 0x0 - 10: 1d 00 00 00 18 10 \[MFB\] ld8 r0=\[r0\] + 10: 1d 08 00 04 18 10 \[MFB\] ld8 r1=\[r2\] 16: 00 00 00 02 00 00 nop\.f 0x0 1c: 00 00 20 00 rfi;; 20: 0b 00 00 02 34 04 \[MMI\] ptc\.e r1;; diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/ia64/ia64.exp binutils-2.15.91.0.1/gas/testsuite/gas/ia64/ia64.exp --- binutils-2.15.90.0.3/gas/testsuite/gas/ia64/ia64.exp 2004-01-14 13:07:47.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/ia64/ia64.exp 2004-05-27 11:26:04.273218237 -0700 @@ -40,6 +40,8 @@ if [istarget "ia64-*"] then { run_list_test "ldxmov-2" "" run_dump_test "ltoff22x-1" + run_list_test "invalid-ar" "" + run_dump_test "dependency-1" run_dump_test "real" diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/ia64/invalid-ar.l binutils-2.15.91.0.1/gas/testsuite/gas/ia64/invalid-ar.l --- binutils-2.15.90.0.3/gas/testsuite/gas/ia64/invalid-ar.l 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/ia64/invalid-ar.l 2004-05-27 11:26:04.274218108 -0700 @@ -0,0 +1,124 @@ +.*: Assembler messages: +.*:2: Error: AR 0 cannot be accessed by M-unit +.*:3: Error: AR 1 cannot be accessed by M-unit +.*:4: Error: AR 2 cannot be accessed by M-unit +.*:5: Error: AR 3 cannot be accessed by M-unit +.*:6: Error: AR 4 cannot be accessed by M-unit +.*:7: Error: AR 5 cannot be accessed by M-unit +.*:8: Error: AR 6 cannot be accessed by M-unit +.*:9: Error: AR 7 cannot be accessed by M-unit +.*:10: Error: AR 8 cannot be accessed by M-unit +.*:11: Error: AR 9 cannot be accessed by M-unit +.*:12: Error: AR 10 cannot be accessed by M-unit +.*:13: Error: AR 11 cannot be accessed by M-unit +.*:14: Error: AR 12 cannot be accessed by M-unit +.*:15: Error: AR 13 cannot be accessed by M-unit +.*:16: Error: AR 14 cannot be accessed by M-unit +.*:17: Error: AR 15 cannot be accessed by M-unit +.*:18: Error: AR 16 cannot be accessed by M-unit +.*:19: Error: AR 17 cannot be accessed by M-unit +.*:20: Error: AR 18 cannot be accessed by M-unit +.*:21: Error: AR 19 cannot be accessed by M-unit +.*:22: Error: AR 20 cannot be accessed by M-unit +.*:23: Error: AR 21 cannot be accessed by M-unit +.*:24: Error: AR 22 cannot be accessed by M-unit +.*:25: Error: AR 23 cannot be accessed by M-unit +.*:26: Error: AR 24 cannot be accessed by M-unit +.*:27: Error: AR 25 cannot be accessed by M-unit +.*:28: Error: AR 26 cannot be accessed by M-unit +.*:29: Error: AR 27 cannot be accessed by M-unit +.*:30: Error: AR 28 cannot be accessed by M-unit +.*:31: Error: AR 29 cannot be accessed by M-unit +.*:32: Error: AR 30 cannot be accessed by M-unit +.*:33: Error: AR 31 cannot be accessed by M-unit +.*:34: Error: AR 32 cannot be accessed by M-unit +.*:35: Error: AR 33 cannot be accessed by M-unit +.*:36: Error: AR 34 cannot be accessed by M-unit +.*:37: Error: AR 35 cannot be accessed by M-unit +.*:38: Error: AR 36 cannot be accessed by M-unit +.*:39: Error: AR 37 cannot be accessed by M-unit +.*:40: Error: AR 38 cannot be accessed by M-unit +.*:41: Error: AR 39 cannot be accessed by M-unit +.*:42: Error: AR 40 cannot be accessed by M-unit +.*:43: Error: AR 41 cannot be accessed by M-unit +.*:44: Error: AR 42 cannot be accessed by M-unit +.*:45: Error: AR 43 cannot be accessed by M-unit +.*:46: Error: AR 44 cannot be accessed by M-unit +.*:47: Error: AR 45 cannot be accessed by M-unit +.*:48: Error: AR 46 cannot be accessed by M-unit +.*:49: Error: AR 47 cannot be accessed by M-unit +.*:54: Error: AR 64 cannot be accessed by I-unit +.*:55: Error: AR 65 cannot be accessed by I-unit +.*:56: Error: AR 66 cannot be accessed by I-unit +.*:57: Error: AR 67 cannot be accessed by I-unit +.*:58: Error: AR 68 cannot be accessed by I-unit +.*:59: Error: AR 69 cannot be accessed by I-unit +.*:60: Error: AR 70 cannot be accessed by I-unit +.*:61: Error: AR 71 cannot be accessed by I-unit +.*:62: Error: AR 72 cannot be accessed by I-unit +.*:63: Error: AR 73 cannot be accessed by I-unit +.*:64: Error: AR 74 cannot be accessed by I-unit +.*:65: Error: AR 75 cannot be accessed by I-unit +.*:66: Error: AR 76 cannot be accessed by I-unit +.*:67: Error: AR 77 cannot be accessed by I-unit +.*:68: Error: AR 78 cannot be accessed by I-unit +.*:69: Error: AR 79 cannot be accessed by I-unit +.*:70: Error: AR 80 cannot be accessed by I-unit +.*:71: Error: AR 81 cannot be accessed by I-unit +.*:72: Error: AR 82 cannot be accessed by I-unit +.*:73: Error: AR 83 cannot be accessed by I-unit +.*:74: Error: AR 84 cannot be accessed by I-unit +.*:75: Error: AR 85 cannot be accessed by I-unit +.*:76: Error: AR 86 cannot be accessed by I-unit +.*:77: Error: AR 87 cannot be accessed by I-unit +.*:78: Error: AR 88 cannot be accessed by I-unit +.*:79: Error: AR 89 cannot be accessed by I-unit +.*:80: Error: AR 90 cannot be accessed by I-unit +.*:81: Error: AR 91 cannot be accessed by I-unit +.*:82: Error: AR 92 cannot be accessed by I-unit +.*:83: Error: AR 93 cannot be accessed by I-unit +.*:84: Error: AR 94 cannot be accessed by I-unit +.*:85: Error: AR 95 cannot be accessed by I-unit +.*:86: Error: AR 96 cannot be accessed by I-unit +.*:87: Error: AR 97 cannot be accessed by I-unit +.*:88: Error: AR 98 cannot be accessed by I-unit +.*:89: Error: AR 99 cannot be accessed by I-unit +.*:90: Error: AR 100 cannot be accessed by I-unit +.*:91: Error: AR 101 cannot be accessed by I-unit +.*:92: Error: AR 102 cannot be accessed by I-unit +.*:93: Error: AR 103 cannot be accessed by I-unit +.*:94: Error: AR 104 cannot be accessed by I-unit +.*:95: Error: AR 105 cannot be accessed by I-unit +.*:96: Error: AR 106 cannot be accessed by I-unit +.*:97: Error: AR 107 cannot be accessed by I-unit +.*:98: Error: AR 108 cannot be accessed by I-unit +.*:99: Error: AR 109 cannot be accessed by I-unit +.*:100: Error: AR 110 cannot be accessed by I-unit +.*:101: Error: AR 111 cannot be accessed by I-unit +.*:106: Error: AR 0 cannot be accessed by M-unit +.*:107: Error: AR 1 cannot be accessed by M-unit +.*:108: Error: AR 2 cannot be accessed by M-unit +.*:109: Error: AR 3 cannot be accessed by M-unit +.*:110: Error: AR 4 cannot be accessed by M-unit +.*:111: Error: AR 5 cannot be accessed by M-unit +.*:112: Error: AR 6 cannot be accessed by M-unit +.*:113: Error: AR 7 cannot be accessed by M-unit +.*:114: Error: AR 16 cannot be accessed by M-unit +.*:115: Error: AR 17 cannot be accessed by M-unit +.*:116: Error: AR 18 cannot be accessed by M-unit +.*:117: Error: AR 19 cannot be accessed by M-unit +.*:118: Error: AR 21 cannot be accessed by M-unit +.*:119: Error: AR 24 cannot be accessed by M-unit +.*:120: Error: AR 25 cannot be accessed by M-unit +.*:121: Error: AR 26 cannot be accessed by M-unit +.*:122: Error: AR 27 cannot be accessed by M-unit +.*:123: Error: AR 28 cannot be accessed by M-unit +.*:124: Error: AR 29 cannot be accessed by M-unit +.*:125: Error: AR 30 cannot be accessed by M-unit +.*:126: Error: AR 32 cannot be accessed by M-unit +.*:127: Error: AR 36 cannot be accessed by M-unit +.*:128: Error: AR 40 cannot be accessed by M-unit +.*:129: Error: AR 44 cannot be accessed by M-unit +.*:132: Error: AR 64 cannot be accessed by I-unit +.*:133: Error: AR 65 cannot be accessed by I-unit +.*:134: Error: AR 66 cannot be accessed by I-unit diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/ia64/invalid-ar.s binutils-2.15.91.0.1/gas/testsuite/gas/ia64/invalid-ar.s --- binutils-2.15.90.0.3/gas/testsuite/gas/ia64/invalid-ar.s 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/ia64/invalid-ar.s 2004-05-27 11:26:04.274218108 -0700 @@ -0,0 +1,134 @@ +// AR 0 to AR 47 can be accessed only by M unit. + mov.i r1 = ar0 + mov.i r1 = ar1 + mov.i r1 = ar2 + mov.i r1 = ar3 + mov.i r1 = ar4 + mov.i r1 = ar5 + mov.i r1 = ar6 + mov.i r1 = ar7 + mov.i r1 = ar8 + mov.i r1 = ar9 + mov.i r1 = ar10 + mov.i r1 = ar11 + mov.i r1 = ar12 + mov.i r1 = ar13 + mov.i r1 = ar14 + mov.i r1 = ar15 + mov.i r1 = ar16 + mov.i r1 = ar17 + mov.i r1 = ar18 + mov.i r1 = ar19 + mov.i r1 = ar20 + mov.i r1 = ar21 + mov.i r1 = ar22 + mov.i r1 = ar23 + mov.i r1 = ar24 + mov.i r1 = ar25 + mov.i r1 = ar26 + mov.i r1 = ar27 + mov.i r1 = ar28 + mov.i r1 = ar29 + mov.i r1 = ar30 + mov.i r1 = ar31 + mov.i r1 = ar32 + mov.i r1 = ar33 + mov.i r1 = ar34 + mov.i r1 = ar35 + mov.i r1 = ar36 + mov.i r1 = ar37 + mov.i r1 = ar38 + mov.i r1 = ar39 + mov.i r1 = ar40 + mov.i r1 = ar41 + mov.i r1 = ar42 + mov.i r1 = ar43 + mov.i r1 = ar44 + mov.i r1 = ar45 + mov.i r1 = ar46 + mov.i r1 = ar47 + +// AR 48 to 63 can be accessed by I or M units. + +// AR 64 to AR 111 can be accessed only by I unit. + mov.m r1 = ar64 + mov.m r1 = ar65 + mov.m r1 = ar66 + mov.m r1 = ar67 + mov.m r1 = ar68 + mov.m r1 = ar69 + mov.m r1 = ar70 + mov.m r1 = ar71 + mov.m r1 = ar72 + mov.m r1 = ar73 + mov.m r1 = ar74 + mov.m r1 = ar75 + mov.m r1 = ar76 + mov.m r1 = ar77 + mov.m r1 = ar78 + mov.m r1 = ar79 + mov.m r1 = ar80 + mov.m r1 = ar81 + mov.m r1 = ar82 + mov.m r1 = ar83 + mov.m r1 = ar84 + mov.m r1 = ar85 + mov.m r1 = ar86 + mov.m r1 = ar87 + mov.m r1 = ar88 + mov.m r1 = ar89 + mov.m r1 = ar90 + mov.m r1 = ar91 + mov.m r1 = ar92 + mov.m r1 = ar93 + mov.m r1 = ar94 + mov.m r1 = ar95 + mov.m r1 = ar96 + mov.m r1 = ar97 + mov.m r1 = ar98 + mov.m r1 = ar99 + mov.m r1 = ar100 + mov.m r1 = ar101 + mov.m r1 = ar102 + mov.m r1 = ar103 + mov.m r1 = ar104 + mov.m r1 = ar105 + mov.m r1 = ar106 + mov.m r1 = ar107 + mov.m r1 = ar108 + mov.m r1 = ar109 + mov.m r1 = ar110 + mov.m r1 = ar111 + +// AR 112 to 127 can be accessed by I or M units. + +// AR K0 to AR ITC can be accessed only by M unit. + mov.i r1 = ar.k0 + mov.i r1 = ar.k1 + mov.i r1 = ar.k2 + mov.i r1 = ar.k3 + mov.i r1 = ar.k4 + mov.i r1 = ar.k5 + mov.i r1 = ar.k6 + mov.i r1 = ar.k7 + mov.i r1 = ar.rsc + mov.i r1 = ar.bsp + mov.i r1 = ar.bspstore + mov.i r1 = ar.rnat + mov.i r1 = ar.fcr + mov.i r1 = ar.eflag + mov.i r1 = ar.csd + mov.i r1 = ar.ssd + mov.i r1 = ar.cflg + mov.i r1 = ar.fsr + mov.i r1 = ar.fir + mov.i r1 = ar.fdr + mov.i r1 = ar.ccv + mov.i r1 = ar.unat + mov.i r1 = ar.fpsr + mov.i r1 = ar.itc + +// AR PFS, LC and EC can be accessed only by I unit. + mov.m r1 = ar.pfs + mov.m r1 = ar.lc + mov.m r1 = ar.ec diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/m68hc11/m68hc11.exp binutils-2.15.91.0.1/gas/testsuite/gas/m68hc11/m68hc11.exp --- binutils-2.15.90.0.3/gas/testsuite/gas/m68hc11/m68hc11.exp 2004-04-12 12:56:35.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/m68hc11/m68hc11.exp 2004-05-27 11:26:04.275217978 -0700 @@ -43,7 +43,7 @@ proc gas_m68hc11_message { kind options regsub -all "\n" "$line: $expect" " " title # Make a file containing the instructions to assemble. - set fd [open "$srcdir/$subdir/tst-m68hc1x.s" "w"]; + set fd [open "$srcdir/$subdir/tst-m68hc1x.s" "w"] puts -nonewline $fd "$line" close $fd diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/m68k/all.exp binutils-2.15.91.0.1/gas/testsuite/gas/m68k/all.exp --- binutils-2.15.90.0.3/gas/testsuite/gas/m68k/all.exp 2004-01-14 13:07:47.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/m68k/all.exp 2004-05-27 11:26:04.292215780 -0700 @@ -35,6 +35,8 @@ if [istarget m68*-*-*] then { run_dump_test link run_dump_test fmoveml run_dump_test mcf-mov3q + run_dump_test mcf-mac + run_dump_test mcf-emac set testname "68000 operands" gas_run "operands.s" "-m68000" "2>err.out" diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/m68k/mcf-emac.d binutils-2.15.91.0.1/gas/testsuite/gas/m68k/mcf-emac.d --- binutils-2.15.90.0.3/gas/testsuite/gas/m68k/mcf-emac.d 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/m68k/mcf-emac.d 2004-05-27 11:26:04.309213582 -0700 @@ -0,0 +1,6654 @@ +#name: mcf-emac +#objdump: -d --architecture=m68k:cfv4e +#as: -mcfv4e + +.*: file format .* + +Disassembly of section .text: + +00000000 <.text>: + 0: a241 0280 macw %d1l,%a1u,<<,%acc0 + 4: a2d0 d281 macw %d1l,%a5u,<<,%a0@,%a1,%acc0 + 8: a490 b2a5 macw %d5l,%a3u,<<,%a0@&,%d2,%acc0 + c: a13c 00bc 614e movel #12345678,%acc0 + 12: a301 movel %d1,%acc1 + 14: a33c 00bc 614e movel #12345678,%acc1 + 1a: a53c 00bc 614e movel #12345678,%acc2 + 20: a309 movel %a1,%acc1 + 22: a73c 00bc 614e movel #12345678,%acc3 + 28: a8c3 0640 macw %d3u,%a4l,>>,%acc1 + 2c: acc5 0040 macw %d5u,%a6l,%acc1 + 30: a602 0800 macl %d2,%d3,%acc0 + 34: a682 0800 macl %d2,%d3,%acc1 + 38: a602 0810 macl %d2,%d3,%acc2 + 3c: a682 0810 macl %d2,%d3,%acc3 + 40: a1c1 movclrl %acc0,%d1 + 42: a3ca movclrl %acc1,%a2 + 44: a5c3 movclrl %acc2,%d3 + 46: a7cd movclrl %acc3,%a5 + 48: a381 movel %acc1,%d1 + 4a: a78b movel %acc3,%a3 + 4c: a185 movel %acc0,%d5 + 4e: a38f movel %acc1,%sp + 50: a110 movel %acc0,%acc0 + 52: a310 movel %acc0,%acc1 + 54: a510 movel %acc0,%acc2 + 56: a710 movel %acc0,%acc3 + 58: a111 movel %acc1,%acc0 + 5a: a311 movel %acc1,%acc1 + 5c: a511 movel %acc1,%acc2 + 5e: a711 movel %acc1,%acc3 + 60: a112 movel %acc2,%acc0 + 62: a312 movel %acc2,%acc1 + 64: a512 movel %acc2,%acc2 + 66: a712 movel %acc2,%acc3 + 68: a113 movel %acc3,%acc0 + 6a: a313 movel %acc3,%acc1 + 6c: a513 movel %acc3,%acc2 + 6e: a713 movel %acc3,%acc3 + 70: ab88 movel %accext01,%a0 + 72: af8f movel %accext23,%sp + 74: a180 movel %acc0,%d0 + 76: a389 movel %acc1,%a1 + 78: a582 movel %acc2,%d2 + 7a: a78b movel %acc3,%a3 + 7c: a4c9 0080 macw %a1l,%a2u,%acc1 + 80: a449 0090 macw %a1l,%a2u,%acc2 + 84: a4c9 0280 macw %a1l,%a2u,<<,%acc1 + 88: a449 0290 macw %a1l,%a2u,<<,%acc2 + 8c: a4c9 0680 macw %a1l,%a2u,>>,%acc1 + 90: a449 0690 macw %a1l,%a2u,>>,%acc2 + 94: a4c9 0280 macw %a1l,%a2u,<<,%acc1 + 98: a449 0290 macw %a1l,%a2u,<<,%acc2 + 9c: a4c9 0680 macw %a1l,%a2u,>>,%acc1 + a0: a449 0690 macw %a1l,%a2u,>>,%acc2 + a4: a689 0000 macw %a1l,%d3l,%acc1 + a8: a609 0010 macw %a1l,%d3l,%acc2 + ac: a689 0200 macw %a1l,%d3l,<<,%acc1 + b0: a609 0210 macw %a1l,%d3l,<<,%acc2 + b4: a689 0600 macw %a1l,%d3l,>>,%acc1 + b8: a609 0610 macw %a1l,%d3l,>>,%acc2 + bc: a689 0200 macw %a1l,%d3l,<<,%acc1 + c0: a609 0210 macw %a1l,%d3l,<<,%acc2 + c4: a689 0600 macw %a1l,%d3l,>>,%acc1 + c8: a609 0610 macw %a1l,%d3l,>>,%acc2 + cc: aec9 0080 macw %a1l,%a7u,%acc1 + d0: ae49 0090 macw %a1l,%a7u,%acc2 + d4: aec9 0280 macw %a1l,%a7u,<<,%acc1 + d8: ae49 0290 macw %a1l,%a7u,<<,%acc2 + dc: aec9 0680 macw %a1l,%a7u,>>,%acc1 + e0: ae49 0690 macw %a1l,%a7u,>>,%acc2 + e4: aec9 0280 macw %a1l,%a7u,<<,%acc1 + e8: ae49 0290 macw %a1l,%a7u,<<,%acc2 + ec: aec9 0680 macw %a1l,%a7u,>>,%acc1 + f0: ae49 0690 macw %a1l,%a7u,>>,%acc2 + f4: a289 0000 macw %a1l,%d1l,%acc1 + f8: a209 0010 macw %a1l,%d1l,%acc2 + fc: a289 0200 macw %a1l,%d1l,<<,%acc1 + 100: a209 0210 macw %a1l,%d1l,<<,%acc2 + 104: a289 0600 macw %a1l,%d1l,>>,%acc1 + 108: a209 0610 macw %a1l,%d1l,>>,%acc2 + 10c: a289 0200 macw %a1l,%d1l,<<,%acc1 + 110: a209 0210 macw %a1l,%d1l,<<,%acc2 + 114: a289 0600 macw %a1l,%d1l,>>,%acc1 + 118: a209 0610 macw %a1l,%d1l,>>,%acc2 + 11c: a4c2 00c0 macw %d2u,%a2u,%acc1 + 120: a442 00d0 macw %d2u,%a2u,%acc2 + 124: a4c2 02c0 macw %d2u,%a2u,<<,%acc1 + 128: a442 02d0 macw %d2u,%a2u,<<,%acc2 + 12c: a4c2 06c0 macw %d2u,%a2u,>>,%acc1 + 130: a442 06d0 macw %d2u,%a2u,>>,%acc2 + 134: a4c2 02c0 macw %d2u,%a2u,<<,%acc1 + 138: a442 02d0 macw %d2u,%a2u,<<,%acc2 + 13c: a4c2 06c0 macw %d2u,%a2u,>>,%acc1 + 140: a442 06d0 macw %d2u,%a2u,>>,%acc2 + 144: a682 0040 macw %d2u,%d3l,%acc1 + 148: a602 0050 macw %d2u,%d3l,%acc2 + 14c: a682 0240 macw %d2u,%d3l,<<,%acc1 + 150: a602 0250 macw %d2u,%d3l,<<,%acc2 + 154: a682 0640 macw %d2u,%d3l,>>,%acc1 + 158: a602 0650 macw %d2u,%d3l,>>,%acc2 + 15c: a682 0240 macw %d2u,%d3l,<<,%acc1 + 160: a602 0250 macw %d2u,%d3l,<<,%acc2 + 164: a682 0640 macw %d2u,%d3l,>>,%acc1 + 168: a602 0650 macw %d2u,%d3l,>>,%acc2 + 16c: aec2 00c0 macw %d2u,%a7u,%acc1 + 170: ae42 00d0 macw %d2u,%a7u,%acc2 + 174: aec2 02c0 macw %d2u,%a7u,<<,%acc1 + 178: ae42 02d0 macw %d2u,%a7u,<<,%acc2 + 17c: aec2 06c0 macw %d2u,%a7u,>>,%acc1 + 180: ae42 06d0 macw %d2u,%a7u,>>,%acc2 + 184: aec2 02c0 macw %d2u,%a7u,<<,%acc1 + 188: ae42 02d0 macw %d2u,%a7u,<<,%acc2 + 18c: aec2 06c0 macw %d2u,%a7u,>>,%acc1 + 190: ae42 06d0 macw %d2u,%a7u,>>,%acc2 + 194: a282 0040 macw %d2u,%d1l,%acc1 + 198: a202 0050 macw %d2u,%d1l,%acc2 + 19c: a282 0240 macw %d2u,%d1l,<<,%acc1 + 1a0: a202 0250 macw %d2u,%d1l,<<,%acc2 + 1a4: a282 0640 macw %d2u,%d1l,>>,%acc1 + 1a8: a202 0650 macw %d2u,%d1l,>>,%acc2 + 1ac: a282 0240 macw %d2u,%d1l,<<,%acc1 + 1b0: a202 0250 macw %d2u,%d1l,<<,%acc2 + 1b4: a282 0640 macw %d2u,%d1l,>>,%acc1 + 1b8: a202 0650 macw %d2u,%d1l,>>,%acc2 + 1bc: a4cd 0080 macw %a5l,%a2u,%acc1 + 1c0: a44d 0090 macw %a5l,%a2u,%acc2 + 1c4: a4cd 0280 macw %a5l,%a2u,<<,%acc1 + 1c8: a44d 0290 macw %a5l,%a2u,<<,%acc2 + 1cc: a4cd 0680 macw %a5l,%a2u,>>,%acc1 + 1d0: a44d 0690 macw %a5l,%a2u,>>,%acc2 + 1d4: a4cd 0280 macw %a5l,%a2u,<<,%acc1 + 1d8: a44d 0290 macw %a5l,%a2u,<<,%acc2 + 1dc: a4cd 0680 macw %a5l,%a2u,>>,%acc1 + 1e0: a44d 0690 macw %a5l,%a2u,>>,%acc2 + 1e4: a68d 0000 macw %a5l,%d3l,%acc1 + 1e8: a60d 0010 macw %a5l,%d3l,%acc2 + 1ec: a68d 0200 macw %a5l,%d3l,<<,%acc1 + 1f0: a60d 0210 macw %a5l,%d3l,<<,%acc2 + 1f4: a68d 0600 macw %a5l,%d3l,>>,%acc1 + 1f8: a60d 0610 macw %a5l,%d3l,>>,%acc2 + 1fc: a68d 0200 macw %a5l,%d3l,<<,%acc1 + 200: a60d 0210 macw %a5l,%d3l,<<,%acc2 + 204: a68d 0600 macw %a5l,%d3l,>>,%acc1 + 208: a60d 0610 macw %a5l,%d3l,>>,%acc2 + 20c: aecd 0080 macw %a5l,%a7u,%acc1 + 210: ae4d 0090 macw %a5l,%a7u,%acc2 + 214: aecd 0280 macw %a5l,%a7u,<<,%acc1 + 218: ae4d 0290 macw %a5l,%a7u,<<,%acc2 + 21c: aecd 0680 macw %a5l,%a7u,>>,%acc1 + 220: ae4d 0690 macw %a5l,%a7u,>>,%acc2 + 224: aecd 0280 macw %a5l,%a7u,<<,%acc1 + 228: ae4d 0290 macw %a5l,%a7u,<<,%acc2 + 22c: aecd 0680 macw %a5l,%a7u,>>,%acc1 + 230: ae4d 0690 macw %a5l,%a7u,>>,%acc2 + 234: a28d 0000 macw %a5l,%d1l,%acc1 + 238: a20d 0010 macw %a5l,%d1l,%acc2 + 23c: a28d 0200 macw %a5l,%d1l,<<,%acc1 + 240: a20d 0210 macw %a5l,%d1l,<<,%acc2 + 244: a28d 0600 macw %a5l,%d1l,>>,%acc1 + 248: a20d 0610 macw %a5l,%d1l,>>,%acc2 + 24c: a28d 0200 macw %a5l,%d1l,<<,%acc1 + 250: a20d 0210 macw %a5l,%d1l,<<,%acc2 + 254: a28d 0600 macw %a5l,%d1l,>>,%acc1 + 258: a20d 0610 macw %a5l,%d1l,>>,%acc2 + 25c: a4c6 00c0 macw %d6u,%a2u,%acc1 + 260: a446 00d0 macw %d6u,%a2u,%acc2 + 264: a4c6 02c0 macw %d6u,%a2u,<<,%acc1 + 268: a446 02d0 macw %d6u,%a2u,<<,%acc2 + 26c: a4c6 06c0 macw %d6u,%a2u,>>,%acc1 + 270: a446 06d0 macw %d6u,%a2u,>>,%acc2 + 274: a4c6 02c0 macw %d6u,%a2u,<<,%acc1 + 278: a446 02d0 macw %d6u,%a2u,<<,%acc2 + 27c: a4c6 06c0 macw %d6u,%a2u,>>,%acc1 + 280: a446 06d0 macw %d6u,%a2u,>>,%acc2 + 284: a686 0040 macw %d6u,%d3l,%acc1 + 288: a606 0050 macw %d6u,%d3l,%acc2 + 28c: a686 0240 macw %d6u,%d3l,<<,%acc1 + 290: a606 0250 macw %d6u,%d3l,<<,%acc2 + 294: a686 0640 macw %d6u,%d3l,>>,%acc1 + 298: a606 0650 macw %d6u,%d3l,>>,%acc2 + 29c: a686 0240 macw %d6u,%d3l,<<,%acc1 + 2a0: a606 0250 macw %d6u,%d3l,<<,%acc2 + 2a4: a686 0640 macw %d6u,%d3l,>>,%acc1 + 2a8: a606 0650 macw %d6u,%d3l,>>,%acc2 + 2ac: aec6 00c0 macw %d6u,%a7u,%acc1 + 2b0: ae46 00d0 macw %d6u,%a7u,%acc2 + 2b4: aec6 02c0 macw %d6u,%a7u,<<,%acc1 + 2b8: ae46 02d0 macw %d6u,%a7u,<<,%acc2 + 2bc: aec6 06c0 macw %d6u,%a7u,>>,%acc1 + 2c0: ae46 06d0 macw %d6u,%a7u,>>,%acc2 + 2c4: aec6 02c0 macw %d6u,%a7u,<<,%acc1 + 2c8: ae46 02d0 macw %d6u,%a7u,<<,%acc2 + 2cc: aec6 06c0 macw %d6u,%a7u,>>,%acc1 + 2d0: ae46 06d0 macw %d6u,%a7u,>>,%acc2 + 2d4: a286 0040 macw %d6u,%d1l,%acc1 + 2d8: a206 0050 macw %d6u,%d1l,%acc2 + 2dc: a286 0240 macw %d6u,%d1l,<<,%acc1 + 2e0: a206 0250 macw %d6u,%d1l,<<,%acc2 + 2e4: a286 0640 macw %d6u,%d1l,>>,%acc1 + 2e8: a206 0650 macw %d6u,%d1l,>>,%acc2 + 2ec: a286 0240 macw %d6u,%d1l,<<,%acc1 + 2f0: a206 0250 macw %d6u,%d1l,<<,%acc2 + 2f4: a286 0640 macw %d6u,%d1l,>>,%acc1 + 2f8: a206 0650 macw %d6u,%d1l,>>,%acc2 + 2fc: a213 a089 macw %a1l,%a2u,%a3@,%d1,%acc1 + 300: a293 a099 macw %a1l,%a2u,%a3@,%d1,%acc2 + 304: a653 a089 macw %a1l,%a2u,%a3@,%a3,%acc1 + 308: a6d3 a099 macw %a1l,%a2u,%a3@,%a3,%acc2 + 30c: a413 a089 macw %a1l,%a2u,%a3@,%d2,%acc1 + 310: a493 a099 macw %a1l,%a2u,%a3@,%d2,%acc2 + 314: ae53 a089 macw %a1l,%a2u,%a3@,%sp,%acc1 + 318: aed3 a099 macw %a1l,%a2u,%a3@,%sp,%acc2 + 31c: a213 a0a9 macw %a1l,%a2u,%a3@&,%d1,%acc1 + 320: a293 a0b9 macw %a1l,%a2u,%a3@&,%d1,%acc2 + 324: a653 a0a9 macw %a1l,%a2u,%a3@&,%a3,%acc1 + 328: a6d3 a0b9 macw %a1l,%a2u,%a3@&,%a3,%acc2 + 32c: a413 a0a9 macw %a1l,%a2u,%a3@&,%d2,%acc1 + 330: a493 a0b9 macw %a1l,%a2u,%a3@&,%d2,%acc2 + 334: ae53 a0a9 macw %a1l,%a2u,%a3@&,%sp,%acc1 + 338: aed3 a0b9 macw %a1l,%a2u,%a3@&,%sp,%acc2 + 33c: a21a a089 macw %a1l,%a2u,%a2@\+,%d1,%acc1 + 340: a29a a099 macw %a1l,%a2u,%a2@\+,%d1,%acc2 + 344: a65a a089 macw %a1l,%a2u,%a2@\+,%a3,%acc1 + 348: a6da a099 macw %a1l,%a2u,%a2@\+,%a3,%acc2 + 34c: a41a a089 macw %a1l,%a2u,%a2@\+,%d2,%acc1 + 350: a49a a099 macw %a1l,%a2u,%a2@\+,%d2,%acc2 + 354: ae5a a089 macw %a1l,%a2u,%a2@\+,%sp,%acc1 + 358: aeda a099 macw %a1l,%a2u,%a2@\+,%sp,%acc2 + 35c: a21a a0a9 macw %a1l,%a2u,%a2@\+&,%d1,%acc1 + 360: a29a a0b9 macw %a1l,%a2u,%a2@\+&,%d1,%acc2 + 364: a65a a0a9 macw %a1l,%a2u,%a2@\+&,%a3,%acc1 + 368: a6da a0b9 macw %a1l,%a2u,%a2@\+&,%a3,%acc2 + 36c: a41a a0a9 macw %a1l,%a2u,%a2@\+&,%d2,%acc1 + 370: a49a a0b9 macw %a1l,%a2u,%a2@\+&,%d2,%acc2 + 374: ae5a a0a9 macw %a1l,%a2u,%a2@\+&,%sp,%acc1 + 378: aeda a0b9 macw %a1l,%a2u,%a2@\+&,%sp,%acc2 + 37c: a22e a089 000a macw %a1l,%a2u,%fp@\(10\),%d1,%acc1 + 382: a2ae a099 000a macw %a1l,%a2u,%fp@\(10\),%d1,%acc2 + 388: a66e a089 000a macw %a1l,%a2u,%fp@\(10\),%a3,%acc1 + 38e: a6ee a099 000a macw %a1l,%a2u,%fp@\(10\),%a3,%acc2 + 394: a42e a089 000a macw %a1l,%a2u,%fp@\(10\),%d2,%acc1 + 39a: a4ae a099 000a macw %a1l,%a2u,%fp@\(10\),%d2,%acc2 + 3a0: ae6e a089 000a macw %a1l,%a2u,%fp@\(10\),%sp,%acc1 + 3a6: aeee a099 000a macw %a1l,%a2u,%fp@\(10\),%sp,%acc2 + 3ac: a22e a0a9 000a macw %a1l,%a2u,%fp@\(10\)&,%d1,%acc1 + 3b2: a2ae a0b9 000a macw %a1l,%a2u,%fp@\(10\)&,%d1,%acc2 + 3b8: a66e a0a9 000a macw %a1l,%a2u,%fp@\(10\)&,%a3,%acc1 + 3be: a6ee a0b9 000a macw %a1l,%a2u,%fp@\(10\)&,%a3,%acc2 + 3c4: a42e a0a9 000a macw %a1l,%a2u,%fp@\(10\)&,%d2,%acc1 + 3ca: a4ae a0b9 000a macw %a1l,%a2u,%fp@\(10\)&,%d2,%acc2 + 3d0: ae6e a0a9 000a macw %a1l,%a2u,%fp@\(10\)&,%sp,%acc1 + 3d6: aeee a0b9 000a macw %a1l,%a2u,%fp@\(10\)&,%sp,%acc2 + 3dc: a221 a089 macw %a1l,%a2u,%a1@-,%d1,%acc1 + 3e0: a2a1 a099 macw %a1l,%a2u,%a1@-,%d1,%acc2 + 3e4: a661 a089 macw %a1l,%a2u,%a1@-,%a3,%acc1 + 3e8: a6e1 a099 macw %a1l,%a2u,%a1@-,%a3,%acc2 + 3ec: a421 a089 macw %a1l,%a2u,%a1@-,%d2,%acc1 + 3f0: a4a1 a099 macw %a1l,%a2u,%a1@-,%d2,%acc2 + 3f4: ae61 a089 macw %a1l,%a2u,%a1@-,%sp,%acc1 + 3f8: aee1 a099 macw %a1l,%a2u,%a1@-,%sp,%acc2 + 3fc: a221 a0a9 macw %a1l,%a2u,%a1@-&,%d1,%acc1 + 400: a2a1 a0b9 macw %a1l,%a2u,%a1@-&,%d1,%acc2 + 404: a661 a0a9 macw %a1l,%a2u,%a1@-&,%a3,%acc1 + 408: a6e1 a0b9 macw %a1l,%a2u,%a1@-&,%a3,%acc2 + 40c: a421 a0a9 macw %a1l,%a2u,%a1@-&,%d2,%acc1 + 410: a4a1 a0b9 macw %a1l,%a2u,%a1@-&,%d2,%acc2 + 414: ae61 a0a9 macw %a1l,%a2u,%a1@-&,%sp,%acc1 + 418: aee1 a0b9 macw %a1l,%a2u,%a1@-&,%sp,%acc2 + 41c: a213 a289 macw %a1l,%a2u,<<,%a3@,%d1,%acc1 + 420: a293 a299 macw %a1l,%a2u,<<,%a3@,%d1,%acc2 + 424: a653 a289 macw %a1l,%a2u,<<,%a3@,%a3,%acc1 + 428: a6d3 a299 macw %a1l,%a2u,<<,%a3@,%a3,%acc2 + 42c: a413 a289 macw %a1l,%a2u,<<,%a3@,%d2,%acc1 + 430: a493 a299 macw %a1l,%a2u,<<,%a3@,%d2,%acc2 + 434: ae53 a289 macw %a1l,%a2u,<<,%a3@,%sp,%acc1 + 438: aed3 a299 macw %a1l,%a2u,<<,%a3@,%sp,%acc2 + 43c: a213 a2a9 macw %a1l,%a2u,<<,%a3@&,%d1,%acc1 + 440: a293 a2b9 macw %a1l,%a2u,<<,%a3@&,%d1,%acc2 + 444: a653 a2a9 macw %a1l,%a2u,<<,%a3@&,%a3,%acc1 + 448: a6d3 a2b9 macw %a1l,%a2u,<<,%a3@&,%a3,%acc2 + 44c: a413 a2a9 macw %a1l,%a2u,<<,%a3@&,%d2,%acc1 + 450: a493 a2b9 macw %a1l,%a2u,<<,%a3@&,%d2,%acc2 + 454: ae53 a2a9 macw %a1l,%a2u,<<,%a3@&,%sp,%acc1 + 458: aed3 a2b9 macw %a1l,%a2u,<<,%a3@&,%sp,%acc2 + 45c: a21a a289 macw %a1l,%a2u,<<,%a2@\+,%d1,%acc1 + 460: a29a a299 macw %a1l,%a2u,<<,%a2@\+,%d1,%acc2 + 464: a65a a289 macw %a1l,%a2u,<<,%a2@\+,%a3,%acc1 + 468: a6da a299 macw %a1l,%a2u,<<,%a2@\+,%a3,%acc2 + 46c: a41a a289 macw %a1l,%a2u,<<,%a2@\+,%d2,%acc1 + 470: a49a a299 macw %a1l,%a2u,<<,%a2@\+,%d2,%acc2 + 474: ae5a a289 macw %a1l,%a2u,<<,%a2@\+,%sp,%acc1 + 478: aeda a299 macw %a1l,%a2u,<<,%a2@\+,%sp,%acc2 + 47c: a21a a2a9 macw %a1l,%a2u,<<,%a2@\+&,%d1,%acc1 + 480: a29a a2b9 macw %a1l,%a2u,<<,%a2@\+&,%d1,%acc2 + 484: a65a a2a9 macw %a1l,%a2u,<<,%a2@\+&,%a3,%acc1 + 488: a6da a2b9 macw %a1l,%a2u,<<,%a2@\+&,%a3,%acc2 + 48c: a41a a2a9 macw %a1l,%a2u,<<,%a2@\+&,%d2,%acc1 + 490: a49a a2b9 macw %a1l,%a2u,<<,%a2@\+&,%d2,%acc2 + 494: ae5a a2a9 macw %a1l,%a2u,<<,%a2@\+&,%sp,%acc1 + 498: aeda a2b9 macw %a1l,%a2u,<<,%a2@\+&,%sp,%acc2 + 49c: a22e a289 000a macw %a1l,%a2u,<<,%fp@\(10\),%d1,%acc1 + 4a2: a2ae a299 000a macw %a1l,%a2u,<<,%fp@\(10\),%d1,%acc2 + 4a8: a66e a289 000a macw %a1l,%a2u,<<,%fp@\(10\),%a3,%acc1 + 4ae: a6ee a299 000a macw %a1l,%a2u,<<,%fp@\(10\),%a3,%acc2 + 4b4: a42e a289 000a macw %a1l,%a2u,<<,%fp@\(10\),%d2,%acc1 + 4ba: a4ae a299 000a macw %a1l,%a2u,<<,%fp@\(10\),%d2,%acc2 + 4c0: ae6e a289 000a macw %a1l,%a2u,<<,%fp@\(10\),%sp,%acc1 + 4c6: aeee a299 000a macw %a1l,%a2u,<<,%fp@\(10\),%sp,%acc2 + 4cc: a22e a2a9 000a macw %a1l,%a2u,<<,%fp@\(10\)&,%d1,%acc1 + 4d2: a2ae a2b9 000a macw %a1l,%a2u,<<,%fp@\(10\)&,%d1,%acc2 + 4d8: a66e a2a9 000a macw %a1l,%a2u,<<,%fp@\(10\)&,%a3,%acc1 + 4de: a6ee a2b9 000a macw %a1l,%a2u,<<,%fp@\(10\)&,%a3,%acc2 + 4e4: a42e a2a9 000a macw %a1l,%a2u,<<,%fp@\(10\)&,%d2,%acc1 + 4ea: a4ae a2b9 000a macw %a1l,%a2u,<<,%fp@\(10\)&,%d2,%acc2 + 4f0: ae6e a2a9 000a macw %a1l,%a2u,<<,%fp@\(10\)&,%sp,%acc1 + 4f6: aeee a2b9 000a macw %a1l,%a2u,<<,%fp@\(10\)&,%sp,%acc2 + 4fc: a221 a289 macw %a1l,%a2u,<<,%a1@-,%d1,%acc1 + 500: a2a1 a299 macw %a1l,%a2u,<<,%a1@-,%d1,%acc2 + 504: a661 a289 macw %a1l,%a2u,<<,%a1@-,%a3,%acc1 + 508: a6e1 a299 macw %a1l,%a2u,<<,%a1@-,%a3,%acc2 + 50c: a421 a289 macw %a1l,%a2u,<<,%a1@-,%d2,%acc1 + 510: a4a1 a299 macw %a1l,%a2u,<<,%a1@-,%d2,%acc2 + 514: ae61 a289 macw %a1l,%a2u,<<,%a1@-,%sp,%acc1 + 518: aee1 a299 macw %a1l,%a2u,<<,%a1@-,%sp,%acc2 + 51c: a221 a2a9 macw %a1l,%a2u,<<,%a1@-&,%d1,%acc1 + 520: a2a1 a2b9 macw %a1l,%a2u,<<,%a1@-&,%d1,%acc2 + 524: a661 a2a9 macw %a1l,%a2u,<<,%a1@-&,%a3,%acc1 + 528: a6e1 a2b9 macw %a1l,%a2u,<<,%a1@-&,%a3,%acc2 + 52c: a421 a2a9 macw %a1l,%a2u,<<,%a1@-&,%d2,%acc1 + 530: a4a1 a2b9 macw %a1l,%a2u,<<,%a1@-&,%d2,%acc2 + 534: ae61 a2a9 macw %a1l,%a2u,<<,%a1@-&,%sp,%acc1 + 538: aee1 a2b9 macw %a1l,%a2u,<<,%a1@-&,%sp,%acc2 + 53c: a213 a689 macw %a1l,%a2u,>>,%a3@,%d1,%acc1 + 540: a293 a699 macw %a1l,%a2u,>>,%a3@,%d1,%acc2 + 544: a653 a689 macw %a1l,%a2u,>>,%a3@,%a3,%acc1 + 548: a6d3 a699 macw %a1l,%a2u,>>,%a3@,%a3,%acc2 + 54c: a413 a689 macw %a1l,%a2u,>>,%a3@,%d2,%acc1 + 550: a493 a699 macw %a1l,%a2u,>>,%a3@,%d2,%acc2 + 554: ae53 a689 macw %a1l,%a2u,>>,%a3@,%sp,%acc1 + 558: aed3 a699 macw %a1l,%a2u,>>,%a3@,%sp,%acc2 + 55c: a213 a6a9 macw %a1l,%a2u,>>,%a3@&,%d1,%acc1 + 560: a293 a6b9 macw %a1l,%a2u,>>,%a3@&,%d1,%acc2 + 564: a653 a6a9 macw %a1l,%a2u,>>,%a3@&,%a3,%acc1 + 568: a6d3 a6b9 macw %a1l,%a2u,>>,%a3@&,%a3,%acc2 + 56c: a413 a6a9 macw %a1l,%a2u,>>,%a3@&,%d2,%acc1 + 570: a493 a6b9 macw %a1l,%a2u,>>,%a3@&,%d2,%acc2 + 574: ae53 a6a9 macw %a1l,%a2u,>>,%a3@&,%sp,%acc1 + 578: aed3 a6b9 macw %a1l,%a2u,>>,%a3@&,%sp,%acc2 + 57c: a21a a689 macw %a1l,%a2u,>>,%a2@\+,%d1,%acc1 + 580: a29a a699 macw %a1l,%a2u,>>,%a2@\+,%d1,%acc2 + 584: a65a a689 macw %a1l,%a2u,>>,%a2@\+,%a3,%acc1 + 588: a6da a699 macw %a1l,%a2u,>>,%a2@\+,%a3,%acc2 + 58c: a41a a689 macw %a1l,%a2u,>>,%a2@\+,%d2,%acc1 + 590: a49a a699 macw %a1l,%a2u,>>,%a2@\+,%d2,%acc2 + 594: ae5a a689 macw %a1l,%a2u,>>,%a2@\+,%sp,%acc1 + 598: aeda a699 macw %a1l,%a2u,>>,%a2@\+,%sp,%acc2 + 59c: a21a a6a9 macw %a1l,%a2u,>>,%a2@\+&,%d1,%acc1 + 5a0: a29a a6b9 macw %a1l,%a2u,>>,%a2@\+&,%d1,%acc2 + 5a4: a65a a6a9 macw %a1l,%a2u,>>,%a2@\+&,%a3,%acc1 + 5a8: a6da a6b9 macw %a1l,%a2u,>>,%a2@\+&,%a3,%acc2 + 5ac: a41a a6a9 macw %a1l,%a2u,>>,%a2@\+&,%d2,%acc1 + 5b0: a49a a6b9 macw %a1l,%a2u,>>,%a2@\+&,%d2,%acc2 + 5b4: ae5a a6a9 macw %a1l,%a2u,>>,%a2@\+&,%sp,%acc1 + 5b8: aeda a6b9 macw %a1l,%a2u,>>,%a2@\+&,%sp,%acc2 + 5bc: a22e a689 000a macw %a1l,%a2u,>>,%fp@\(10\),%d1,%acc1 + 5c2: a2ae a699 000a macw %a1l,%a2u,>>,%fp@\(10\),%d1,%acc2 + 5c8: a66e a689 000a macw %a1l,%a2u,>>,%fp@\(10\),%a3,%acc1 + 5ce: a6ee a699 000a macw %a1l,%a2u,>>,%fp@\(10\),%a3,%acc2 + 5d4: a42e a689 000a macw %a1l,%a2u,>>,%fp@\(10\),%d2,%acc1 + 5da: a4ae a699 000a macw %a1l,%a2u,>>,%fp@\(10\),%d2,%acc2 + 5e0: ae6e a689 000a macw %a1l,%a2u,>>,%fp@\(10\),%sp,%acc1 + 5e6: aeee a699 000a macw %a1l,%a2u,>>,%fp@\(10\),%sp,%acc2 + 5ec: a22e a6a9 000a macw %a1l,%a2u,>>,%fp@\(10\)&,%d1,%acc1 + 5f2: a2ae a6b9 000a macw %a1l,%a2u,>>,%fp@\(10\)&,%d1,%acc2 + 5f8: a66e a6a9 000a macw %a1l,%a2u,>>,%fp@\(10\)&,%a3,%acc1 + 5fe: a6ee a6b9 000a macw %a1l,%a2u,>>,%fp@\(10\)&,%a3,%acc2 + 604: a42e a6a9 000a macw %a1l,%a2u,>>,%fp@\(10\)&,%d2,%acc1 + 60a: a4ae a6b9 000a macw %a1l,%a2u,>>,%fp@\(10\)&,%d2,%acc2 + 610: ae6e a6a9 000a macw %a1l,%a2u,>>,%fp@\(10\)&,%sp,%acc1 + 616: aeee a6b9 000a macw %a1l,%a2u,>>,%fp@\(10\)&,%sp,%acc2 + 61c: a221 a689 macw %a1l,%a2u,>>,%a1@-,%d1,%acc1 + 620: a2a1 a699 macw %a1l,%a2u,>>,%a1@-,%d1,%acc2 + 624: a661 a689 macw %a1l,%a2u,>>,%a1@-,%a3,%acc1 + 628: a6e1 a699 macw %a1l,%a2u,>>,%a1@-,%a3,%acc2 + 62c: a421 a689 macw %a1l,%a2u,>>,%a1@-,%d2,%acc1 + 630: a4a1 a699 macw %a1l,%a2u,>>,%a1@-,%d2,%acc2 + 634: ae61 a689 macw %a1l,%a2u,>>,%a1@-,%sp,%acc1 + 638: aee1 a699 macw %a1l,%a2u,>>,%a1@-,%sp,%acc2 + 63c: a221 a6a9 macw %a1l,%a2u,>>,%a1@-&,%d1,%acc1 + 640: a2a1 a6b9 macw %a1l,%a2u,>>,%a1@-&,%d1,%acc2 + 644: a661 a6a9 macw %a1l,%a2u,>>,%a1@-&,%a3,%acc1 + 648: a6e1 a6b9 macw %a1l,%a2u,>>,%a1@-&,%a3,%acc2 + 64c: a421 a6a9 macw %a1l,%a2u,>>,%a1@-&,%d2,%acc1 + 650: a4a1 a6b9 macw %a1l,%a2u,>>,%a1@-&,%d2,%acc2 + 654: ae61 a6a9 macw %a1l,%a2u,>>,%a1@-&,%sp,%acc1 + 658: aee1 a6b9 macw %a1l,%a2u,>>,%a1@-&,%sp,%acc2 + 65c: a213 a289 macw %a1l,%a2u,<<,%a3@,%d1,%acc1 + 660: a293 a299 macw %a1l,%a2u,<<,%a3@,%d1,%acc2 + 664: a653 a289 macw %a1l,%a2u,<<,%a3@,%a3,%acc1 + 668: a6d3 a299 macw %a1l,%a2u,<<,%a3@,%a3,%acc2 + 66c: a413 a289 macw %a1l,%a2u,<<,%a3@,%d2,%acc1 + 670: a493 a299 macw %a1l,%a2u,<<,%a3@,%d2,%acc2 + 674: ae53 a289 macw %a1l,%a2u,<<,%a3@,%sp,%acc1 + 678: aed3 a299 macw %a1l,%a2u,<<,%a3@,%sp,%acc2 + 67c: a213 a2a9 macw %a1l,%a2u,<<,%a3@&,%d1,%acc1 + 680: a293 a2b9 macw %a1l,%a2u,<<,%a3@&,%d1,%acc2 + 684: a653 a2a9 macw %a1l,%a2u,<<,%a3@&,%a3,%acc1 + 688: a6d3 a2b9 macw %a1l,%a2u,<<,%a3@&,%a3,%acc2 + 68c: a413 a2a9 macw %a1l,%a2u,<<,%a3@&,%d2,%acc1 + 690: a493 a2b9 macw %a1l,%a2u,<<,%a3@&,%d2,%acc2 + 694: ae53 a2a9 macw %a1l,%a2u,<<,%a3@&,%sp,%acc1 + 698: aed3 a2b9 macw %a1l,%a2u,<<,%a3@&,%sp,%acc2 + 69c: a21a a289 macw %a1l,%a2u,<<,%a2@\+,%d1,%acc1 + 6a0: a29a a299 macw %a1l,%a2u,<<,%a2@\+,%d1,%acc2 + 6a4: a65a a289 macw %a1l,%a2u,<<,%a2@\+,%a3,%acc1 + 6a8: a6da a299 macw %a1l,%a2u,<<,%a2@\+,%a3,%acc2 + 6ac: a41a a289 macw %a1l,%a2u,<<,%a2@\+,%d2,%acc1 + 6b0: a49a a299 macw %a1l,%a2u,<<,%a2@\+,%d2,%acc2 + 6b4: ae5a a289 macw %a1l,%a2u,<<,%a2@\+,%sp,%acc1 + 6b8: aeda a299 macw %a1l,%a2u,<<,%a2@\+,%sp,%acc2 + 6bc: a21a a2a9 macw %a1l,%a2u,<<,%a2@\+&,%d1,%acc1 + 6c0: a29a a2b9 macw %a1l,%a2u,<<,%a2@\+&,%d1,%acc2 + 6c4: a65a a2a9 macw %a1l,%a2u,<<,%a2@\+&,%a3,%acc1 + 6c8: a6da a2b9 macw %a1l,%a2u,<<,%a2@\+&,%a3,%acc2 + 6cc: a41a a2a9 macw %a1l,%a2u,<<,%a2@\+&,%d2,%acc1 + 6d0: a49a a2b9 macw %a1l,%a2u,<<,%a2@\+&,%d2,%acc2 + 6d4: ae5a a2a9 macw %a1l,%a2u,<<,%a2@\+&,%sp,%acc1 + 6d8: aeda a2b9 macw %a1l,%a2u,<<,%a2@\+&,%sp,%acc2 + 6dc: a22e a289 000a macw %a1l,%a2u,<<,%fp@\(10\),%d1,%acc1 + 6e2: a2ae a299 000a macw %a1l,%a2u,<<,%fp@\(10\),%d1,%acc2 + 6e8: a66e a289 000a macw %a1l,%a2u,<<,%fp@\(10\),%a3,%acc1 + 6ee: a6ee a299 000a macw %a1l,%a2u,<<,%fp@\(10\),%a3,%acc2 + 6f4: a42e a289 000a macw %a1l,%a2u,<<,%fp@\(10\),%d2,%acc1 + 6fa: a4ae a299 000a macw %a1l,%a2u,<<,%fp@\(10\),%d2,%acc2 + 700: ae6e a289 000a macw %a1l,%a2u,<<,%fp@\(10\),%sp,%acc1 + 706: aeee a299 000a macw %a1l,%a2u,<<,%fp@\(10\),%sp,%acc2 + 70c: a22e a2a9 000a macw %a1l,%a2u,<<,%fp@\(10\)&,%d1,%acc1 + 712: a2ae a2b9 000a macw %a1l,%a2u,<<,%fp@\(10\)&,%d1,%acc2 + 718: a66e a2a9 000a macw %a1l,%a2u,<<,%fp@\(10\)&,%a3,%acc1 + 71e: a6ee a2b9 000a macw %a1l,%a2u,<<,%fp@\(10\)&,%a3,%acc2 + 724: a42e a2a9 000a macw %a1l,%a2u,<<,%fp@\(10\)&,%d2,%acc1 + 72a: a4ae a2b9 000a macw %a1l,%a2u,<<,%fp@\(10\)&,%d2,%acc2 + 730: ae6e a2a9 000a macw %a1l,%a2u,<<,%fp@\(10\)&,%sp,%acc1 + 736: aeee a2b9 000a macw %a1l,%a2u,<<,%fp@\(10\)&,%sp,%acc2 + 73c: a221 a289 macw %a1l,%a2u,<<,%a1@-,%d1,%acc1 + 740: a2a1 a299 macw %a1l,%a2u,<<,%a1@-,%d1,%acc2 + 744: a661 a289 macw %a1l,%a2u,<<,%a1@-,%a3,%acc1 + 748: a6e1 a299 macw %a1l,%a2u,<<,%a1@-,%a3,%acc2 + 74c: a421 a289 macw %a1l,%a2u,<<,%a1@-,%d2,%acc1 + 750: a4a1 a299 macw %a1l,%a2u,<<,%a1@-,%d2,%acc2 + 754: ae61 a289 macw %a1l,%a2u,<<,%a1@-,%sp,%acc1 + 758: aee1 a299 macw %a1l,%a2u,<<,%a1@-,%sp,%acc2 + 75c: a221 a2a9 macw %a1l,%a2u,<<,%a1@-&,%d1,%acc1 + 760: a2a1 a2b9 macw %a1l,%a2u,<<,%a1@-&,%d1,%acc2 + 764: a661 a2a9 macw %a1l,%a2u,<<,%a1@-&,%a3,%acc1 + 768: a6e1 a2b9 macw %a1l,%a2u,<<,%a1@-&,%a3,%acc2 + 76c: a421 a2a9 macw %a1l,%a2u,<<,%a1@-&,%d2,%acc1 + 770: a4a1 a2b9 macw %a1l,%a2u,<<,%a1@-&,%d2,%acc2 + 774: ae61 a2a9 macw %a1l,%a2u,<<,%a1@-&,%sp,%acc1 + 778: aee1 a2b9 macw %a1l,%a2u,<<,%a1@-&,%sp,%acc2 + 77c: a213 a689 macw %a1l,%a2u,>>,%a3@,%d1,%acc1 + 780: a293 a699 macw %a1l,%a2u,>>,%a3@,%d1,%acc2 + 784: a653 a689 macw %a1l,%a2u,>>,%a3@,%a3,%acc1 + 788: a6d3 a699 macw %a1l,%a2u,>>,%a3@,%a3,%acc2 + 78c: a413 a689 macw %a1l,%a2u,>>,%a3@,%d2,%acc1 + 790: a493 a699 macw %a1l,%a2u,>>,%a3@,%d2,%acc2 + 794: ae53 a689 macw %a1l,%a2u,>>,%a3@,%sp,%acc1 + 798: aed3 a699 macw %a1l,%a2u,>>,%a3@,%sp,%acc2 + 79c: a213 a6a9 macw %a1l,%a2u,>>,%a3@&,%d1,%acc1 + 7a0: a293 a6b9 macw %a1l,%a2u,>>,%a3@&,%d1,%acc2 + 7a4: a653 a6a9 macw %a1l,%a2u,>>,%a3@&,%a3,%acc1 + 7a8: a6d3 a6b9 macw %a1l,%a2u,>>,%a3@&,%a3,%acc2 + 7ac: a413 a6a9 macw %a1l,%a2u,>>,%a3@&,%d2,%acc1 + 7b0: a493 a6b9 macw %a1l,%a2u,>>,%a3@&,%d2,%acc2 + 7b4: ae53 a6a9 macw %a1l,%a2u,>>,%a3@&,%sp,%acc1 + 7b8: aed3 a6b9 macw %a1l,%a2u,>>,%a3@&,%sp,%acc2 + 7bc: a21a a689 macw %a1l,%a2u,>>,%a2@\+,%d1,%acc1 + 7c0: a29a a699 macw %a1l,%a2u,>>,%a2@\+,%d1,%acc2 + 7c4: a65a a689 macw %a1l,%a2u,>>,%a2@\+,%a3,%acc1 + 7c8: a6da a699 macw %a1l,%a2u,>>,%a2@\+,%a3,%acc2 + 7cc: a41a a689 macw %a1l,%a2u,>>,%a2@\+,%d2,%acc1 + 7d0: a49a a699 macw %a1l,%a2u,>>,%a2@\+,%d2,%acc2 + 7d4: ae5a a689 macw %a1l,%a2u,>>,%a2@\+,%sp,%acc1 + 7d8: aeda a699 macw %a1l,%a2u,>>,%a2@\+,%sp,%acc2 + 7dc: a21a a6a9 macw %a1l,%a2u,>>,%a2@\+&,%d1,%acc1 + 7e0: a29a a6b9 macw %a1l,%a2u,>>,%a2@\+&,%d1,%acc2 + 7e4: a65a a6a9 macw %a1l,%a2u,>>,%a2@\+&,%a3,%acc1 + 7e8: a6da a6b9 macw %a1l,%a2u,>>,%a2@\+&,%a3,%acc2 + 7ec: a41a a6a9 macw %a1l,%a2u,>>,%a2@\+&,%d2,%acc1 + 7f0: a49a a6b9 macw %a1l,%a2u,>>,%a2@\+&,%d2,%acc2 + 7f4: ae5a a6a9 macw %a1l,%a2u,>>,%a2@\+&,%sp,%acc1 + 7f8: aeda a6b9 macw %a1l,%a2u,>>,%a2@\+&,%sp,%acc2 + 7fc: a22e a689 000a macw %a1l,%a2u,>>,%fp@\(10\),%d1,%acc1 + 802: a2ae a699 000a macw %a1l,%a2u,>>,%fp@\(10\),%d1,%acc2 + 808: a66e a689 000a macw %a1l,%a2u,>>,%fp@\(10\),%a3,%acc1 + 80e: a6ee a699 000a macw %a1l,%a2u,>>,%fp@\(10\),%a3,%acc2 + 814: a42e a689 000a macw %a1l,%a2u,>>,%fp@\(10\),%d2,%acc1 + 81a: a4ae a699 000a macw %a1l,%a2u,>>,%fp@\(10\),%d2,%acc2 + 820: ae6e a689 000a macw %a1l,%a2u,>>,%fp@\(10\),%sp,%acc1 + 826: aeee a699 000a macw %a1l,%a2u,>>,%fp@\(10\),%sp,%acc2 + 82c: a22e a6a9 000a macw %a1l,%a2u,>>,%fp@\(10\)&,%d1,%acc1 + 832: a2ae a6b9 000a macw %a1l,%a2u,>>,%fp@\(10\)&,%d1,%acc2 + 838: a66e a6a9 000a macw %a1l,%a2u,>>,%fp@\(10\)&,%a3,%acc1 + 83e: a6ee a6b9 000a macw %a1l,%a2u,>>,%fp@\(10\)&,%a3,%acc2 + 844: a42e a6a9 000a macw %a1l,%a2u,>>,%fp@\(10\)&,%d2,%acc1 + 84a: a4ae a6b9 000a macw %a1l,%a2u,>>,%fp@\(10\)&,%d2,%acc2 + 850: ae6e a6a9 000a macw %a1l,%a2u,>>,%fp@\(10\)&,%sp,%acc1 + 856: aeee a6b9 000a macw %a1l,%a2u,>>,%fp@\(10\)&,%sp,%acc2 + 85c: a221 a689 macw %a1l,%a2u,>>,%a1@-,%d1,%acc1 + 860: a2a1 a699 macw %a1l,%a2u,>>,%a1@-,%d1,%acc2 + 864: a661 a689 macw %a1l,%a2u,>>,%a1@-,%a3,%acc1 + 868: a6e1 a699 macw %a1l,%a2u,>>,%a1@-,%a3,%acc2 + 86c: a421 a689 macw %a1l,%a2u,>>,%a1@-,%d2,%acc1 + 870: a4a1 a699 macw %a1l,%a2u,>>,%a1@-,%d2,%acc2 + 874: ae61 a689 macw %a1l,%a2u,>>,%a1@-,%sp,%acc1 + 878: aee1 a699 macw %a1l,%a2u,>>,%a1@-,%sp,%acc2 + 87c: a221 a6a9 macw %a1l,%a2u,>>,%a1@-&,%d1,%acc1 + 880: a2a1 a6b9 macw %a1l,%a2u,>>,%a1@-&,%d1,%acc2 + 884: a661 a6a9 macw %a1l,%a2u,>>,%a1@-&,%a3,%acc1 + 888: a6e1 a6b9 macw %a1l,%a2u,>>,%a1@-&,%a3,%acc2 + 88c: a421 a6a9 macw %a1l,%a2u,>>,%a1@-&,%d2,%acc1 + 890: a4a1 a6b9 macw %a1l,%a2u,>>,%a1@-&,%d2,%acc2 + 894: ae61 a6a9 macw %a1l,%a2u,>>,%a1@-&,%sp,%acc1 + 898: aee1 a6b9 macw %a1l,%a2u,>>,%a1@-&,%sp,%acc2 + 89c: a213 3009 macw %a1l,%d3l,%a3@,%d1,%acc1 + 8a0: a293 3019 macw %a1l,%d3l,%a3@,%d1,%acc2 + 8a4: a653 3009 macw %a1l,%d3l,%a3@,%a3,%acc1 + 8a8: a6d3 3019 macw %a1l,%d3l,%a3@,%a3,%acc2 + 8ac: a413 3009 macw %a1l,%d3l,%a3@,%d2,%acc1 + 8b0: a493 3019 macw %a1l,%d3l,%a3@,%d2,%acc2 + 8b4: ae53 3009 macw %a1l,%d3l,%a3@,%sp,%acc1 + 8b8: aed3 3019 macw %a1l,%d3l,%a3@,%sp,%acc2 + 8bc: a213 3029 macw %a1l,%d3l,%a3@&,%d1,%acc1 + 8c0: a293 3039 macw %a1l,%d3l,%a3@&,%d1,%acc2 + 8c4: a653 3029 macw %a1l,%d3l,%a3@&,%a3,%acc1 + 8c8: a6d3 3039 macw %a1l,%d3l,%a3@&,%a3,%acc2 + 8cc: a413 3029 macw %a1l,%d3l,%a3@&,%d2,%acc1 + 8d0: a493 3039 macw %a1l,%d3l,%a3@&,%d2,%acc2 + 8d4: ae53 3029 macw %a1l,%d3l,%a3@&,%sp,%acc1 + 8d8: aed3 3039 macw %a1l,%d3l,%a3@&,%sp,%acc2 + 8dc: a21a 3009 macw %a1l,%d3l,%a2@\+,%d1,%acc1 + 8e0: a29a 3019 macw %a1l,%d3l,%a2@\+,%d1,%acc2 + 8e4: a65a 3009 macw %a1l,%d3l,%a2@\+,%a3,%acc1 + 8e8: a6da 3019 macw %a1l,%d3l,%a2@\+,%a3,%acc2 + 8ec: a41a 3009 macw %a1l,%d3l,%a2@\+,%d2,%acc1 + 8f0: a49a 3019 macw %a1l,%d3l,%a2@\+,%d2,%acc2 + 8f4: ae5a 3009 macw %a1l,%d3l,%a2@\+,%sp,%acc1 + 8f8: aeda 3019 macw %a1l,%d3l,%a2@\+,%sp,%acc2 + 8fc: a21a 3029 macw %a1l,%d3l,%a2@\+&,%d1,%acc1 + 900: a29a 3039 macw %a1l,%d3l,%a2@\+&,%d1,%acc2 + 904: a65a 3029 macw %a1l,%d3l,%a2@\+&,%a3,%acc1 + 908: a6da 3039 macw %a1l,%d3l,%a2@\+&,%a3,%acc2 + 90c: a41a 3029 macw %a1l,%d3l,%a2@\+&,%d2,%acc1 + 910: a49a 3039 macw %a1l,%d3l,%a2@\+&,%d2,%acc2 + 914: ae5a 3029 macw %a1l,%d3l,%a2@\+&,%sp,%acc1 + 918: aeda 3039 macw %a1l,%d3l,%a2@\+&,%sp,%acc2 + 91c: a22e 3009 000a macw %a1l,%d3l,%fp@\(10\),%d1,%acc1 + 922: a2ae 3019 000a macw %a1l,%d3l,%fp@\(10\),%d1,%acc2 + 928: a66e 3009 000a macw %a1l,%d3l,%fp@\(10\),%a3,%acc1 + 92e: a6ee 3019 000a macw %a1l,%d3l,%fp@\(10\),%a3,%acc2 + 934: a42e 3009 000a macw %a1l,%d3l,%fp@\(10\),%d2,%acc1 + 93a: a4ae 3019 000a macw %a1l,%d3l,%fp@\(10\),%d2,%acc2 + 940: ae6e 3009 000a macw %a1l,%d3l,%fp@\(10\),%sp,%acc1 + 946: aeee 3019 000a macw %a1l,%d3l,%fp@\(10\),%sp,%acc2 + 94c: a22e 3029 000a macw %a1l,%d3l,%fp@\(10\)&,%d1,%acc1 + 952: a2ae 3039 000a macw %a1l,%d3l,%fp@\(10\)&,%d1,%acc2 + 958: a66e 3029 000a macw %a1l,%d3l,%fp@\(10\)&,%a3,%acc1 + 95e: a6ee 3039 000a macw %a1l,%d3l,%fp@\(10\)&,%a3,%acc2 + 964: a42e 3029 000a macw %a1l,%d3l,%fp@\(10\)&,%d2,%acc1 + 96a: a4ae 3039 000a macw %a1l,%d3l,%fp@\(10\)&,%d2,%acc2 + 970: ae6e 3029 000a macw %a1l,%d3l,%fp@\(10\)&,%sp,%acc1 + 976: aeee 3039 000a macw %a1l,%d3l,%fp@\(10\)&,%sp,%acc2 + 97c: a221 3009 macw %a1l,%d3l,%a1@-,%d1,%acc1 + 980: a2a1 3019 macw %a1l,%d3l,%a1@-,%d1,%acc2 + 984: a661 3009 macw %a1l,%d3l,%a1@-,%a3,%acc1 + 988: a6e1 3019 macw %a1l,%d3l,%a1@-,%a3,%acc2 + 98c: a421 3009 macw %a1l,%d3l,%a1@-,%d2,%acc1 + 990: a4a1 3019 macw %a1l,%d3l,%a1@-,%d2,%acc2 + 994: ae61 3009 macw %a1l,%d3l,%a1@-,%sp,%acc1 + 998: aee1 3019 macw %a1l,%d3l,%a1@-,%sp,%acc2 + 99c: a221 3029 macw %a1l,%d3l,%a1@-&,%d1,%acc1 + 9a0: a2a1 3039 macw %a1l,%d3l,%a1@-&,%d1,%acc2 + 9a4: a661 3029 macw %a1l,%d3l,%a1@-&,%a3,%acc1 + 9a8: a6e1 3039 macw %a1l,%d3l,%a1@-&,%a3,%acc2 + 9ac: a421 3029 macw %a1l,%d3l,%a1@-&,%d2,%acc1 + 9b0: a4a1 3039 macw %a1l,%d3l,%a1@-&,%d2,%acc2 + 9b4: ae61 3029 macw %a1l,%d3l,%a1@-&,%sp,%acc1 + 9b8: aee1 3039 macw %a1l,%d3l,%a1@-&,%sp,%acc2 + 9bc: a213 3209 macw %a1l,%d3l,<<,%a3@,%d1,%acc1 + 9c0: a293 3219 macw %a1l,%d3l,<<,%a3@,%d1,%acc2 + 9c4: a653 3209 macw %a1l,%d3l,<<,%a3@,%a3,%acc1 + 9c8: a6d3 3219 macw %a1l,%d3l,<<,%a3@,%a3,%acc2 + 9cc: a413 3209 macw %a1l,%d3l,<<,%a3@,%d2,%acc1 + 9d0: a493 3219 macw %a1l,%d3l,<<,%a3@,%d2,%acc2 + 9d4: ae53 3209 macw %a1l,%d3l,<<,%a3@,%sp,%acc1 + 9d8: aed3 3219 macw %a1l,%d3l,<<,%a3@,%sp,%acc2 + 9dc: a213 3229 macw %a1l,%d3l,<<,%a3@&,%d1,%acc1 + 9e0: a293 3239 macw %a1l,%d3l,<<,%a3@&,%d1,%acc2 + 9e4: a653 3229 macw %a1l,%d3l,<<,%a3@&,%a3,%acc1 + 9e8: a6d3 3239 macw %a1l,%d3l,<<,%a3@&,%a3,%acc2 + 9ec: a413 3229 macw %a1l,%d3l,<<,%a3@&,%d2,%acc1 + 9f0: a493 3239 macw %a1l,%d3l,<<,%a3@&,%d2,%acc2 + 9f4: ae53 3229 macw %a1l,%d3l,<<,%a3@&,%sp,%acc1 + 9f8: aed3 3239 macw %a1l,%d3l,<<,%a3@&,%sp,%acc2 + 9fc: a21a 3209 macw %a1l,%d3l,<<,%a2@\+,%d1,%acc1 + a00: a29a 3219 macw %a1l,%d3l,<<,%a2@\+,%d1,%acc2 + a04: a65a 3209 macw %a1l,%d3l,<<,%a2@\+,%a3,%acc1 + a08: a6da 3219 macw %a1l,%d3l,<<,%a2@\+,%a3,%acc2 + a0c: a41a 3209 macw %a1l,%d3l,<<,%a2@\+,%d2,%acc1 + a10: a49a 3219 macw %a1l,%d3l,<<,%a2@\+,%d2,%acc2 + a14: ae5a 3209 macw %a1l,%d3l,<<,%a2@\+,%sp,%acc1 + a18: aeda 3219 macw %a1l,%d3l,<<,%a2@\+,%sp,%acc2 + a1c: a21a 3229 macw %a1l,%d3l,<<,%a2@\+&,%d1,%acc1 + a20: a29a 3239 macw %a1l,%d3l,<<,%a2@\+&,%d1,%acc2 + a24: a65a 3229 macw %a1l,%d3l,<<,%a2@\+&,%a3,%acc1 + a28: a6da 3239 macw %a1l,%d3l,<<,%a2@\+&,%a3,%acc2 + a2c: a41a 3229 macw %a1l,%d3l,<<,%a2@\+&,%d2,%acc1 + a30: a49a 3239 macw %a1l,%d3l,<<,%a2@\+&,%d2,%acc2 + a34: ae5a 3229 macw %a1l,%d3l,<<,%a2@\+&,%sp,%acc1 + a38: aeda 3239 macw %a1l,%d3l,<<,%a2@\+&,%sp,%acc2 + a3c: a22e 3209 000a macw %a1l,%d3l,<<,%fp@\(10\),%d1,%acc1 + a42: a2ae 3219 000a macw %a1l,%d3l,<<,%fp@\(10\),%d1,%acc2 + a48: a66e 3209 000a macw %a1l,%d3l,<<,%fp@\(10\),%a3,%acc1 + a4e: a6ee 3219 000a macw %a1l,%d3l,<<,%fp@\(10\),%a3,%acc2 + a54: a42e 3209 000a macw %a1l,%d3l,<<,%fp@\(10\),%d2,%acc1 + a5a: a4ae 3219 000a macw %a1l,%d3l,<<,%fp@\(10\),%d2,%acc2 + a60: ae6e 3209 000a macw %a1l,%d3l,<<,%fp@\(10\),%sp,%acc1 + a66: aeee 3219 000a macw %a1l,%d3l,<<,%fp@\(10\),%sp,%acc2 + a6c: a22e 3229 000a macw %a1l,%d3l,<<,%fp@\(10\)&,%d1,%acc1 + a72: a2ae 3239 000a macw %a1l,%d3l,<<,%fp@\(10\)&,%d1,%acc2 + a78: a66e 3229 000a macw %a1l,%d3l,<<,%fp@\(10\)&,%a3,%acc1 + a7e: a6ee 3239 000a macw %a1l,%d3l,<<,%fp@\(10\)&,%a3,%acc2 + a84: a42e 3229 000a macw %a1l,%d3l,<<,%fp@\(10\)&,%d2,%acc1 + a8a: a4ae 3239 000a macw %a1l,%d3l,<<,%fp@\(10\)&,%d2,%acc2 + a90: ae6e 3229 000a macw %a1l,%d3l,<<,%fp@\(10\)&,%sp,%acc1 + a96: aeee 3239 000a macw %a1l,%d3l,<<,%fp@\(10\)&,%sp,%acc2 + a9c: a221 3209 macw %a1l,%d3l,<<,%a1@-,%d1,%acc1 + aa0: a2a1 3219 macw %a1l,%d3l,<<,%a1@-,%d1,%acc2 + aa4: a661 3209 macw %a1l,%d3l,<<,%a1@-,%a3,%acc1 + aa8: a6e1 3219 macw %a1l,%d3l,<<,%a1@-,%a3,%acc2 + aac: a421 3209 macw %a1l,%d3l,<<,%a1@-,%d2,%acc1 + ab0: a4a1 3219 macw %a1l,%d3l,<<,%a1@-,%d2,%acc2 + ab4: ae61 3209 macw %a1l,%d3l,<<,%a1@-,%sp,%acc1 + ab8: aee1 3219 macw %a1l,%d3l,<<,%a1@-,%sp,%acc2 + abc: a221 3229 macw %a1l,%d3l,<<,%a1@-&,%d1,%acc1 + ac0: a2a1 3239 macw %a1l,%d3l,<<,%a1@-&,%d1,%acc2 + ac4: a661 3229 macw %a1l,%d3l,<<,%a1@-&,%a3,%acc1 + ac8: a6e1 3239 macw %a1l,%d3l,<<,%a1@-&,%a3,%acc2 + acc: a421 3229 macw %a1l,%d3l,<<,%a1@-&,%d2,%acc1 + ad0: a4a1 3239 macw %a1l,%d3l,<<,%a1@-&,%d2,%acc2 + ad4: ae61 3229 macw %a1l,%d3l,<<,%a1@-&,%sp,%acc1 + ad8: aee1 3239 macw %a1l,%d3l,<<,%a1@-&,%sp,%acc2 + adc: a213 3609 macw %a1l,%d3l,>>,%a3@,%d1,%acc1 + ae0: a293 3619 macw %a1l,%d3l,>>,%a3@,%d1,%acc2 + ae4: a653 3609 macw %a1l,%d3l,>>,%a3@,%a3,%acc1 + ae8: a6d3 3619 macw %a1l,%d3l,>>,%a3@,%a3,%acc2 + aec: a413 3609 macw %a1l,%d3l,>>,%a3@,%d2,%acc1 + af0: a493 3619 macw %a1l,%d3l,>>,%a3@,%d2,%acc2 + af4: ae53 3609 macw %a1l,%d3l,>>,%a3@,%sp,%acc1 + af8: aed3 3619 macw %a1l,%d3l,>>,%a3@,%sp,%acc2 + afc: a213 3629 macw %a1l,%d3l,>>,%a3@&,%d1,%acc1 + b00: a293 3639 macw %a1l,%d3l,>>,%a3@&,%d1,%acc2 + b04: a653 3629 macw %a1l,%d3l,>>,%a3@&,%a3,%acc1 + b08: a6d3 3639 macw %a1l,%d3l,>>,%a3@&,%a3,%acc2 + b0c: a413 3629 macw %a1l,%d3l,>>,%a3@&,%d2,%acc1 + b10: a493 3639 macw %a1l,%d3l,>>,%a3@&,%d2,%acc2 + b14: ae53 3629 macw %a1l,%d3l,>>,%a3@&,%sp,%acc1 + b18: aed3 3639 macw %a1l,%d3l,>>,%a3@&,%sp,%acc2 + b1c: a21a 3609 macw %a1l,%d3l,>>,%a2@\+,%d1,%acc1 + b20: a29a 3619 macw %a1l,%d3l,>>,%a2@\+,%d1,%acc2 + b24: a65a 3609 macw %a1l,%d3l,>>,%a2@\+,%a3,%acc1 + b28: a6da 3619 macw %a1l,%d3l,>>,%a2@\+,%a3,%acc2 + b2c: a41a 3609 macw %a1l,%d3l,>>,%a2@\+,%d2,%acc1 + b30: a49a 3619 macw %a1l,%d3l,>>,%a2@\+,%d2,%acc2 + b34: ae5a 3609 macw %a1l,%d3l,>>,%a2@\+,%sp,%acc1 + b38: aeda 3619 macw %a1l,%d3l,>>,%a2@\+,%sp,%acc2 + b3c: a21a 3629 macw %a1l,%d3l,>>,%a2@\+&,%d1,%acc1 + b40: a29a 3639 macw %a1l,%d3l,>>,%a2@\+&,%d1,%acc2 + b44: a65a 3629 macw %a1l,%d3l,>>,%a2@\+&,%a3,%acc1 + b48: a6da 3639 macw %a1l,%d3l,>>,%a2@\+&,%a3,%acc2 + b4c: a41a 3629 macw %a1l,%d3l,>>,%a2@\+&,%d2,%acc1 + b50: a49a 3639 macw %a1l,%d3l,>>,%a2@\+&,%d2,%acc2 + b54: ae5a 3629 macw %a1l,%d3l,>>,%a2@\+&,%sp,%acc1 + b58: aeda 3639 macw %a1l,%d3l,>>,%a2@\+&,%sp,%acc2 + b5c: a22e 3609 000a macw %a1l,%d3l,>>,%fp@\(10\),%d1,%acc1 + b62: a2ae 3619 000a macw %a1l,%d3l,>>,%fp@\(10\),%d1,%acc2 + b68: a66e 3609 000a macw %a1l,%d3l,>>,%fp@\(10\),%a3,%acc1 + b6e: a6ee 3619 000a macw %a1l,%d3l,>>,%fp@\(10\),%a3,%acc2 + b74: a42e 3609 000a macw %a1l,%d3l,>>,%fp@\(10\),%d2,%acc1 + b7a: a4ae 3619 000a macw %a1l,%d3l,>>,%fp@\(10\),%d2,%acc2 + b80: ae6e 3609 000a macw %a1l,%d3l,>>,%fp@\(10\),%sp,%acc1 + b86: aeee 3619 000a macw %a1l,%d3l,>>,%fp@\(10\),%sp,%acc2 + b8c: a22e 3629 000a macw %a1l,%d3l,>>,%fp@\(10\)&,%d1,%acc1 + b92: a2ae 3639 000a macw %a1l,%d3l,>>,%fp@\(10\)&,%d1,%acc2 + b98: a66e 3629 000a macw %a1l,%d3l,>>,%fp@\(10\)&,%a3,%acc1 + b9e: a6ee 3639 000a macw %a1l,%d3l,>>,%fp@\(10\)&,%a3,%acc2 + ba4: a42e 3629 000a macw %a1l,%d3l,>>,%fp@\(10\)&,%d2,%acc1 + baa: a4ae 3639 000a macw %a1l,%d3l,>>,%fp@\(10\)&,%d2,%acc2 + bb0: ae6e 3629 000a macw %a1l,%d3l,>>,%fp@\(10\)&,%sp,%acc1 + bb6: aeee 3639 000a macw %a1l,%d3l,>>,%fp@\(10\)&,%sp,%acc2 + bbc: a221 3609 macw %a1l,%d3l,>>,%a1@-,%d1,%acc1 + bc0: a2a1 3619 macw %a1l,%d3l,>>,%a1@-,%d1,%acc2 + bc4: a661 3609 macw %a1l,%d3l,>>,%a1@-,%a3,%acc1 + bc8: a6e1 3619 macw %a1l,%d3l,>>,%a1@-,%a3,%acc2 + bcc: a421 3609 macw %a1l,%d3l,>>,%a1@-,%d2,%acc1 + bd0: a4a1 3619 macw %a1l,%d3l,>>,%a1@-,%d2,%acc2 + bd4: ae61 3609 macw %a1l,%d3l,>>,%a1@-,%sp,%acc1 + bd8: aee1 3619 macw %a1l,%d3l,>>,%a1@-,%sp,%acc2 + bdc: a221 3629 macw %a1l,%d3l,>>,%a1@-&,%d1,%acc1 + be0: a2a1 3639 macw %a1l,%d3l,>>,%a1@-&,%d1,%acc2 + be4: a661 3629 macw %a1l,%d3l,>>,%a1@-&,%a3,%acc1 + be8: a6e1 3639 macw %a1l,%d3l,>>,%a1@-&,%a3,%acc2 + bec: a421 3629 macw %a1l,%d3l,>>,%a1@-&,%d2,%acc1 + bf0: a4a1 3639 macw %a1l,%d3l,>>,%a1@-&,%d2,%acc2 + bf4: ae61 3629 macw %a1l,%d3l,>>,%a1@-&,%sp,%acc1 + bf8: aee1 3639 macw %a1l,%d3l,>>,%a1@-&,%sp,%acc2 + bfc: a213 3209 macw %a1l,%d3l,<<,%a3@,%d1,%acc1 + c00: a293 3219 macw %a1l,%d3l,<<,%a3@,%d1,%acc2 + c04: a653 3209 macw %a1l,%d3l,<<,%a3@,%a3,%acc1 + c08: a6d3 3219 macw %a1l,%d3l,<<,%a3@,%a3,%acc2 + c0c: a413 3209 macw %a1l,%d3l,<<,%a3@,%d2,%acc1 + c10: a493 3219 macw %a1l,%d3l,<<,%a3@,%d2,%acc2 + c14: ae53 3209 macw %a1l,%d3l,<<,%a3@,%sp,%acc1 + c18: aed3 3219 macw %a1l,%d3l,<<,%a3@,%sp,%acc2 + c1c: a213 3229 macw %a1l,%d3l,<<,%a3@&,%d1,%acc1 + c20: a293 3239 macw %a1l,%d3l,<<,%a3@&,%d1,%acc2 + c24: a653 3229 macw %a1l,%d3l,<<,%a3@&,%a3,%acc1 + c28: a6d3 3239 macw %a1l,%d3l,<<,%a3@&,%a3,%acc2 + c2c: a413 3229 macw %a1l,%d3l,<<,%a3@&,%d2,%acc1 + c30: a493 3239 macw %a1l,%d3l,<<,%a3@&,%d2,%acc2 + c34: ae53 3229 macw %a1l,%d3l,<<,%a3@&,%sp,%acc1 + c38: aed3 3239 macw %a1l,%d3l,<<,%a3@&,%sp,%acc2 + c3c: a21a 3209 macw %a1l,%d3l,<<,%a2@\+,%d1,%acc1 + c40: a29a 3219 macw %a1l,%d3l,<<,%a2@\+,%d1,%acc2 + c44: a65a 3209 macw %a1l,%d3l,<<,%a2@\+,%a3,%acc1 + c48: a6da 3219 macw %a1l,%d3l,<<,%a2@\+,%a3,%acc2 + c4c: a41a 3209 macw %a1l,%d3l,<<,%a2@\+,%d2,%acc1 + c50: a49a 3219 macw %a1l,%d3l,<<,%a2@\+,%d2,%acc2 + c54: ae5a 3209 macw %a1l,%d3l,<<,%a2@\+,%sp,%acc1 + c58: aeda 3219 macw %a1l,%d3l,<<,%a2@\+,%sp,%acc2 + c5c: a21a 3229 macw %a1l,%d3l,<<,%a2@\+&,%d1,%acc1 + c60: a29a 3239 macw %a1l,%d3l,<<,%a2@\+&,%d1,%acc2 + c64: a65a 3229 macw %a1l,%d3l,<<,%a2@\+&,%a3,%acc1 + c68: a6da 3239 macw %a1l,%d3l,<<,%a2@\+&,%a3,%acc2 + c6c: a41a 3229 macw %a1l,%d3l,<<,%a2@\+&,%d2,%acc1 + c70: a49a 3239 macw %a1l,%d3l,<<,%a2@\+&,%d2,%acc2 + c74: ae5a 3229 macw %a1l,%d3l,<<,%a2@\+&,%sp,%acc1 + c78: aeda 3239 macw %a1l,%d3l,<<,%a2@\+&,%sp,%acc2 + c7c: a22e 3209 000a macw %a1l,%d3l,<<,%fp@\(10\),%d1,%acc1 + c82: a2ae 3219 000a macw %a1l,%d3l,<<,%fp@\(10\),%d1,%acc2 + c88: a66e 3209 000a macw %a1l,%d3l,<<,%fp@\(10\),%a3,%acc1 + c8e: a6ee 3219 000a macw %a1l,%d3l,<<,%fp@\(10\),%a3,%acc2 + c94: a42e 3209 000a macw %a1l,%d3l,<<,%fp@\(10\),%d2,%acc1 + c9a: a4ae 3219 000a macw %a1l,%d3l,<<,%fp@\(10\),%d2,%acc2 + ca0: ae6e 3209 000a macw %a1l,%d3l,<<,%fp@\(10\),%sp,%acc1 + ca6: aeee 3219 000a macw %a1l,%d3l,<<,%fp@\(10\),%sp,%acc2 + cac: a22e 3229 000a macw %a1l,%d3l,<<,%fp@\(10\)&,%d1,%acc1 + cb2: a2ae 3239 000a macw %a1l,%d3l,<<,%fp@\(10\)&,%d1,%acc2 + cb8: a66e 3229 000a macw %a1l,%d3l,<<,%fp@\(10\)&,%a3,%acc1 + cbe: a6ee 3239 000a macw %a1l,%d3l,<<,%fp@\(10\)&,%a3,%acc2 + cc4: a42e 3229 000a macw %a1l,%d3l,<<,%fp@\(10\)&,%d2,%acc1 + cca: a4ae 3239 000a macw %a1l,%d3l,<<,%fp@\(10\)&,%d2,%acc2 + cd0: ae6e 3229 000a macw %a1l,%d3l,<<,%fp@\(10\)&,%sp,%acc1 + cd6: aeee 3239 000a macw %a1l,%d3l,<<,%fp@\(10\)&,%sp,%acc2 + cdc: a221 3209 macw %a1l,%d3l,<<,%a1@-,%d1,%acc1 + ce0: a2a1 3219 macw %a1l,%d3l,<<,%a1@-,%d1,%acc2 + ce4: a661 3209 macw %a1l,%d3l,<<,%a1@-,%a3,%acc1 + ce8: a6e1 3219 macw %a1l,%d3l,<<,%a1@-,%a3,%acc2 + cec: a421 3209 macw %a1l,%d3l,<<,%a1@-,%d2,%acc1 + cf0: a4a1 3219 macw %a1l,%d3l,<<,%a1@-,%d2,%acc2 + cf4: ae61 3209 macw %a1l,%d3l,<<,%a1@-,%sp,%acc1 + cf8: aee1 3219 macw %a1l,%d3l,<<,%a1@-,%sp,%acc2 + cfc: a221 3229 macw %a1l,%d3l,<<,%a1@-&,%d1,%acc1 + d00: a2a1 3239 macw %a1l,%d3l,<<,%a1@-&,%d1,%acc2 + d04: a661 3229 macw %a1l,%d3l,<<,%a1@-&,%a3,%acc1 + d08: a6e1 3239 macw %a1l,%d3l,<<,%a1@-&,%a3,%acc2 + d0c: a421 3229 macw %a1l,%d3l,<<,%a1@-&,%d2,%acc1 + d10: a4a1 3239 macw %a1l,%d3l,<<,%a1@-&,%d2,%acc2 + d14: ae61 3229 macw %a1l,%d3l,<<,%a1@-&,%sp,%acc1 + d18: aee1 3239 macw %a1l,%d3l,<<,%a1@-&,%sp,%acc2 + d1c: a213 3609 macw %a1l,%d3l,>>,%a3@,%d1,%acc1 + d20: a293 3619 macw %a1l,%d3l,>>,%a3@,%d1,%acc2 + d24: a653 3609 macw %a1l,%d3l,>>,%a3@,%a3,%acc1 + d28: a6d3 3619 macw %a1l,%d3l,>>,%a3@,%a3,%acc2 + d2c: a413 3609 macw %a1l,%d3l,>>,%a3@,%d2,%acc1 + d30: a493 3619 macw %a1l,%d3l,>>,%a3@,%d2,%acc2 + d34: ae53 3609 macw %a1l,%d3l,>>,%a3@,%sp,%acc1 + d38: aed3 3619 macw %a1l,%d3l,>>,%a3@,%sp,%acc2 + d3c: a213 3629 macw %a1l,%d3l,>>,%a3@&,%d1,%acc1 + d40: a293 3639 macw %a1l,%d3l,>>,%a3@&,%d1,%acc2 + d44: a653 3629 macw %a1l,%d3l,>>,%a3@&,%a3,%acc1 + d48: a6d3 3639 macw %a1l,%d3l,>>,%a3@&,%a3,%acc2 + d4c: a413 3629 macw %a1l,%d3l,>>,%a3@&,%d2,%acc1 + d50: a493 3639 macw %a1l,%d3l,>>,%a3@&,%d2,%acc2 + d54: ae53 3629 macw %a1l,%d3l,>>,%a3@&,%sp,%acc1 + d58: aed3 3639 macw %a1l,%d3l,>>,%a3@&,%sp,%acc2 + d5c: a21a 3609 macw %a1l,%d3l,>>,%a2@\+,%d1,%acc1 + d60: a29a 3619 macw %a1l,%d3l,>>,%a2@\+,%d1,%acc2 + d64: a65a 3609 macw %a1l,%d3l,>>,%a2@\+,%a3,%acc1 + d68: a6da 3619 macw %a1l,%d3l,>>,%a2@\+,%a3,%acc2 + d6c: a41a 3609 macw %a1l,%d3l,>>,%a2@\+,%d2,%acc1 + d70: a49a 3619 macw %a1l,%d3l,>>,%a2@\+,%d2,%acc2 + d74: ae5a 3609 macw %a1l,%d3l,>>,%a2@\+,%sp,%acc1 + d78: aeda 3619 macw %a1l,%d3l,>>,%a2@\+,%sp,%acc2 + d7c: a21a 3629 macw %a1l,%d3l,>>,%a2@\+&,%d1,%acc1 + d80: a29a 3639 macw %a1l,%d3l,>>,%a2@\+&,%d1,%acc2 + d84: a65a 3629 macw %a1l,%d3l,>>,%a2@\+&,%a3,%acc1 + d88: a6da 3639 macw %a1l,%d3l,>>,%a2@\+&,%a3,%acc2 + d8c: a41a 3629 macw %a1l,%d3l,>>,%a2@\+&,%d2,%acc1 + d90: a49a 3639 macw %a1l,%d3l,>>,%a2@\+&,%d2,%acc2 + d94: ae5a 3629 macw %a1l,%d3l,>>,%a2@\+&,%sp,%acc1 + d98: aeda 3639 macw %a1l,%d3l,>>,%a2@\+&,%sp,%acc2 + d9c: a22e 3609 000a macw %a1l,%d3l,>>,%fp@\(10\),%d1,%acc1 + da2: a2ae 3619 000a macw %a1l,%d3l,>>,%fp@\(10\),%d1,%acc2 + da8: a66e 3609 000a macw %a1l,%d3l,>>,%fp@\(10\),%a3,%acc1 + dae: a6ee 3619 000a macw %a1l,%d3l,>>,%fp@\(10\),%a3,%acc2 + db4: a42e 3609 000a macw %a1l,%d3l,>>,%fp@\(10\),%d2,%acc1 + dba: a4ae 3619 000a macw %a1l,%d3l,>>,%fp@\(10\),%d2,%acc2 + dc0: ae6e 3609 000a macw %a1l,%d3l,>>,%fp@\(10\),%sp,%acc1 + dc6: aeee 3619 000a macw %a1l,%d3l,>>,%fp@\(10\),%sp,%acc2 + dcc: a22e 3629 000a macw %a1l,%d3l,>>,%fp@\(10\)&,%d1,%acc1 + dd2: a2ae 3639 000a macw %a1l,%d3l,>>,%fp@\(10\)&,%d1,%acc2 + dd8: a66e 3629 000a macw %a1l,%d3l,>>,%fp@\(10\)&,%a3,%acc1 + dde: a6ee 3639 000a macw %a1l,%d3l,>>,%fp@\(10\)&,%a3,%acc2 + de4: a42e 3629 000a macw %a1l,%d3l,>>,%fp@\(10\)&,%d2,%acc1 + dea: a4ae 3639 000a macw %a1l,%d3l,>>,%fp@\(10\)&,%d2,%acc2 + df0: ae6e 3629 000a macw %a1l,%d3l,>>,%fp@\(10\)&,%sp,%acc1 + df6: aeee 3639 000a macw %a1l,%d3l,>>,%fp@\(10\)&,%sp,%acc2 + dfc: a221 3609 macw %a1l,%d3l,>>,%a1@-,%d1,%acc1 + e00: a2a1 3619 macw %a1l,%d3l,>>,%a1@-,%d1,%acc2 + e04: a661 3609 macw %a1l,%d3l,>>,%a1@-,%a3,%acc1 + e08: a6e1 3619 macw %a1l,%d3l,>>,%a1@-,%a3,%acc2 + e0c: a421 3609 macw %a1l,%d3l,>>,%a1@-,%d2,%acc1 + e10: a4a1 3619 macw %a1l,%d3l,>>,%a1@-,%d2,%acc2 + e14: ae61 3609 macw %a1l,%d3l,>>,%a1@-,%sp,%acc1 + e18: aee1 3619 macw %a1l,%d3l,>>,%a1@-,%sp,%acc2 + e1c: a221 3629 macw %a1l,%d3l,>>,%a1@-&,%d1,%acc1 + e20: a2a1 3639 macw %a1l,%d3l,>>,%a1@-&,%d1,%acc2 + e24: a661 3629 macw %a1l,%d3l,>>,%a1@-&,%a3,%acc1 + e28: a6e1 3639 macw %a1l,%d3l,>>,%a1@-&,%a3,%acc2 + e2c: a421 3629 macw %a1l,%d3l,>>,%a1@-&,%d2,%acc1 + e30: a4a1 3639 macw %a1l,%d3l,>>,%a1@-&,%d2,%acc2 + e34: ae61 3629 macw %a1l,%d3l,>>,%a1@-&,%sp,%acc1 + e38: aee1 3639 macw %a1l,%d3l,>>,%a1@-&,%sp,%acc2 + e3c: a213 f089 macw %a1l,%a7u,%a3@,%d1,%acc1 + e40: a293 f099 macw %a1l,%a7u,%a3@,%d1,%acc2 + e44: a653 f089 macw %a1l,%a7u,%a3@,%a3,%acc1 + e48: a6d3 f099 macw %a1l,%a7u,%a3@,%a3,%acc2 + e4c: a413 f089 macw %a1l,%a7u,%a3@,%d2,%acc1 + e50: a493 f099 macw %a1l,%a7u,%a3@,%d2,%acc2 + e54: ae53 f089 macw %a1l,%a7u,%a3@,%sp,%acc1 + e58: aed3 f099 macw %a1l,%a7u,%a3@,%sp,%acc2 + e5c: a213 f0a9 macw %a1l,%a7u,%a3@&,%d1,%acc1 + e60: a293 f0b9 macw %a1l,%a7u,%a3@&,%d1,%acc2 + e64: a653 f0a9 macw %a1l,%a7u,%a3@&,%a3,%acc1 + e68: a6d3 f0b9 macw %a1l,%a7u,%a3@&,%a3,%acc2 + e6c: a413 f0a9 macw %a1l,%a7u,%a3@&,%d2,%acc1 + e70: a493 f0b9 macw %a1l,%a7u,%a3@&,%d2,%acc2 + e74: ae53 f0a9 macw %a1l,%a7u,%a3@&,%sp,%acc1 + e78: aed3 f0b9 macw %a1l,%a7u,%a3@&,%sp,%acc2 + e7c: a21a f089 macw %a1l,%a7u,%a2@\+,%d1,%acc1 + e80: a29a f099 macw %a1l,%a7u,%a2@\+,%d1,%acc2 + e84: a65a f089 macw %a1l,%a7u,%a2@\+,%a3,%acc1 + e88: a6da f099 macw %a1l,%a7u,%a2@\+,%a3,%acc2 + e8c: a41a f089 macw %a1l,%a7u,%a2@\+,%d2,%acc1 + e90: a49a f099 macw %a1l,%a7u,%a2@\+,%d2,%acc2 + e94: ae5a f089 macw %a1l,%a7u,%a2@\+,%sp,%acc1 + e98: aeda f099 macw %a1l,%a7u,%a2@\+,%sp,%acc2 + e9c: a21a f0a9 macw %a1l,%a7u,%a2@\+&,%d1,%acc1 + ea0: a29a f0b9 macw %a1l,%a7u,%a2@\+&,%d1,%acc2 + ea4: a65a f0a9 macw %a1l,%a7u,%a2@\+&,%a3,%acc1 + ea8: a6da f0b9 macw %a1l,%a7u,%a2@\+&,%a3,%acc2 + eac: a41a f0a9 macw %a1l,%a7u,%a2@\+&,%d2,%acc1 + eb0: a49a f0b9 macw %a1l,%a7u,%a2@\+&,%d2,%acc2 + eb4: ae5a f0a9 macw %a1l,%a7u,%a2@\+&,%sp,%acc1 + eb8: aeda f0b9 macw %a1l,%a7u,%a2@\+&,%sp,%acc2 + ebc: a22e f089 000a macw %a1l,%a7u,%fp@\(10\),%d1,%acc1 + ec2: a2ae f099 000a macw %a1l,%a7u,%fp@\(10\),%d1,%acc2 + ec8: a66e f089 000a macw %a1l,%a7u,%fp@\(10\),%a3,%acc1 + ece: a6ee f099 000a macw %a1l,%a7u,%fp@\(10\),%a3,%acc2 + ed4: a42e f089 000a macw %a1l,%a7u,%fp@\(10\),%d2,%acc1 + eda: a4ae f099 000a macw %a1l,%a7u,%fp@\(10\),%d2,%acc2 + ee0: ae6e f089 000a macw %a1l,%a7u,%fp@\(10\),%sp,%acc1 + ee6: aeee f099 000a macw %a1l,%a7u,%fp@\(10\),%sp,%acc2 + eec: a22e f0a9 000a macw %a1l,%a7u,%fp@\(10\)&,%d1,%acc1 + ef2: a2ae f0b9 000a macw %a1l,%a7u,%fp@\(10\)&,%d1,%acc2 + ef8: a66e f0a9 000a macw %a1l,%a7u,%fp@\(10\)&,%a3,%acc1 + efe: a6ee f0b9 000a macw %a1l,%a7u,%fp@\(10\)&,%a3,%acc2 + f04: a42e f0a9 000a macw %a1l,%a7u,%fp@\(10\)&,%d2,%acc1 + f0a: a4ae f0b9 000a macw %a1l,%a7u,%fp@\(10\)&,%d2,%acc2 + f10: ae6e f0a9 000a macw %a1l,%a7u,%fp@\(10\)&,%sp,%acc1 + f16: aeee f0b9 000a macw %a1l,%a7u,%fp@\(10\)&,%sp,%acc2 + f1c: a221 f089 macw %a1l,%a7u,%a1@-,%d1,%acc1 + f20: a2a1 f099 macw %a1l,%a7u,%a1@-,%d1,%acc2 + f24: a661 f089 macw %a1l,%a7u,%a1@-,%a3,%acc1 + f28: a6e1 f099 macw %a1l,%a7u,%a1@-,%a3,%acc2 + f2c: a421 f089 macw %a1l,%a7u,%a1@-,%d2,%acc1 + f30: a4a1 f099 macw %a1l,%a7u,%a1@-,%d2,%acc2 + f34: ae61 f089 macw %a1l,%a7u,%a1@-,%sp,%acc1 + f38: aee1 f099 macw %a1l,%a7u,%a1@-,%sp,%acc2 + f3c: a221 f0a9 macw %a1l,%a7u,%a1@-&,%d1,%acc1 + f40: a2a1 f0b9 macw %a1l,%a7u,%a1@-&,%d1,%acc2 + f44: a661 f0a9 macw %a1l,%a7u,%a1@-&,%a3,%acc1 + f48: a6e1 f0b9 macw %a1l,%a7u,%a1@-&,%a3,%acc2 + f4c: a421 f0a9 macw %a1l,%a7u,%a1@-&,%d2,%acc1 + f50: a4a1 f0b9 macw %a1l,%a7u,%a1@-&,%d2,%acc2 + f54: ae61 f0a9 macw %a1l,%a7u,%a1@-&,%sp,%acc1 + f58: aee1 f0b9 macw %a1l,%a7u,%a1@-&,%sp,%acc2 + f5c: a213 f289 macw %a1l,%a7u,<<,%a3@,%d1,%acc1 + f60: a293 f299 macw %a1l,%a7u,<<,%a3@,%d1,%acc2 + f64: a653 f289 macw %a1l,%a7u,<<,%a3@,%a3,%acc1 + f68: a6d3 f299 macw %a1l,%a7u,<<,%a3@,%a3,%acc2 + f6c: a413 f289 macw %a1l,%a7u,<<,%a3@,%d2,%acc1 + f70: a493 f299 macw %a1l,%a7u,<<,%a3@,%d2,%acc2 + f74: ae53 f289 macw %a1l,%a7u,<<,%a3@,%sp,%acc1 + f78: aed3 f299 macw %a1l,%a7u,<<,%a3@,%sp,%acc2 + f7c: a213 f2a9 macw %a1l,%a7u,<<,%a3@&,%d1,%acc1 + f80: a293 f2b9 macw %a1l,%a7u,<<,%a3@&,%d1,%acc2 + f84: a653 f2a9 macw %a1l,%a7u,<<,%a3@&,%a3,%acc1 + f88: a6d3 f2b9 macw %a1l,%a7u,<<,%a3@&,%a3,%acc2 + f8c: a413 f2a9 macw %a1l,%a7u,<<,%a3@&,%d2,%acc1 + f90: a493 f2b9 macw %a1l,%a7u,<<,%a3@&,%d2,%acc2 + f94: ae53 f2a9 macw %a1l,%a7u,<<,%a3@&,%sp,%acc1 + f98: aed3 f2b9 macw %a1l,%a7u,<<,%a3@&,%sp,%acc2 + f9c: a21a f289 macw %a1l,%a7u,<<,%a2@\+,%d1,%acc1 + fa0: a29a f299 macw %a1l,%a7u,<<,%a2@\+,%d1,%acc2 + fa4: a65a f289 macw %a1l,%a7u,<<,%a2@\+,%a3,%acc1 + fa8: a6da f299 macw %a1l,%a7u,<<,%a2@\+,%a3,%acc2 + fac: a41a f289 macw %a1l,%a7u,<<,%a2@\+,%d2,%acc1 + fb0: a49a f299 macw %a1l,%a7u,<<,%a2@\+,%d2,%acc2 + fb4: ae5a f289 macw %a1l,%a7u,<<,%a2@\+,%sp,%acc1 + fb8: aeda f299 macw %a1l,%a7u,<<,%a2@\+,%sp,%acc2 + fbc: a21a f2a9 macw %a1l,%a7u,<<,%a2@\+&,%d1,%acc1 + fc0: a29a f2b9 macw %a1l,%a7u,<<,%a2@\+&,%d1,%acc2 + fc4: a65a f2a9 macw %a1l,%a7u,<<,%a2@\+&,%a3,%acc1 + fc8: a6da f2b9 macw %a1l,%a7u,<<,%a2@\+&,%a3,%acc2 + fcc: a41a f2a9 macw %a1l,%a7u,<<,%a2@\+&,%d2,%acc1 + fd0: a49a f2b9 macw %a1l,%a7u,<<,%a2@\+&,%d2,%acc2 + fd4: ae5a f2a9 macw %a1l,%a7u,<<,%a2@\+&,%sp,%acc1 + fd8: aeda f2b9 macw %a1l,%a7u,<<,%a2@\+&,%sp,%acc2 + fdc: a22e f289 000a macw %a1l,%a7u,<<,%fp@\(10\),%d1,%acc1 + fe2: a2ae f299 000a macw %a1l,%a7u,<<,%fp@\(10\),%d1,%acc2 + fe8: a66e f289 000a macw %a1l,%a7u,<<,%fp@\(10\),%a3,%acc1 + fee: a6ee f299 000a macw %a1l,%a7u,<<,%fp@\(10\),%a3,%acc2 + ff4: a42e f289 000a macw %a1l,%a7u,<<,%fp@\(10\),%d2,%acc1 + ffa: a4ae f299 000a macw %a1l,%a7u,<<,%fp@\(10\),%d2,%acc2 + 1000: ae6e f289 000a macw %a1l,%a7u,<<,%fp@\(10\),%sp,%acc1 + 1006: aeee f299 000a macw %a1l,%a7u,<<,%fp@\(10\),%sp,%acc2 + 100c: a22e f2a9 000a macw %a1l,%a7u,<<,%fp@\(10\)&,%d1,%acc1 + 1012: a2ae f2b9 000a macw %a1l,%a7u,<<,%fp@\(10\)&,%d1,%acc2 + 1018: a66e f2a9 000a macw %a1l,%a7u,<<,%fp@\(10\)&,%a3,%acc1 + 101e: a6ee f2b9 000a macw %a1l,%a7u,<<,%fp@\(10\)&,%a3,%acc2 + 1024: a42e f2a9 000a macw %a1l,%a7u,<<,%fp@\(10\)&,%d2,%acc1 + 102a: a4ae f2b9 000a macw %a1l,%a7u,<<,%fp@\(10\)&,%d2,%acc2 + 1030: ae6e f2a9 000a macw %a1l,%a7u,<<,%fp@\(10\)&,%sp,%acc1 + 1036: aeee f2b9 000a macw %a1l,%a7u,<<,%fp@\(10\)&,%sp,%acc2 + 103c: a221 f289 macw %a1l,%a7u,<<,%a1@-,%d1,%acc1 + 1040: a2a1 f299 macw %a1l,%a7u,<<,%a1@-,%d1,%acc2 + 1044: a661 f289 macw %a1l,%a7u,<<,%a1@-,%a3,%acc1 + 1048: a6e1 f299 macw %a1l,%a7u,<<,%a1@-,%a3,%acc2 + 104c: a421 f289 macw %a1l,%a7u,<<,%a1@-,%d2,%acc1 + 1050: a4a1 f299 macw %a1l,%a7u,<<,%a1@-,%d2,%acc2 + 1054: ae61 f289 macw %a1l,%a7u,<<,%a1@-,%sp,%acc1 + 1058: aee1 f299 macw %a1l,%a7u,<<,%a1@-,%sp,%acc2 + 105c: a221 f2a9 macw %a1l,%a7u,<<,%a1@-&,%d1,%acc1 + 1060: a2a1 f2b9 macw %a1l,%a7u,<<,%a1@-&,%d1,%acc2 + 1064: a661 f2a9 macw %a1l,%a7u,<<,%a1@-&,%a3,%acc1 + 1068: a6e1 f2b9 macw %a1l,%a7u,<<,%a1@-&,%a3,%acc2 + 106c: a421 f2a9 macw %a1l,%a7u,<<,%a1@-&,%d2,%acc1 + 1070: a4a1 f2b9 macw %a1l,%a7u,<<,%a1@-&,%d2,%acc2 + 1074: ae61 f2a9 macw %a1l,%a7u,<<,%a1@-&,%sp,%acc1 + 1078: aee1 f2b9 macw %a1l,%a7u,<<,%a1@-&,%sp,%acc2 + 107c: a213 f689 macw %a1l,%a7u,>>,%a3@,%d1,%acc1 + 1080: a293 f699 macw %a1l,%a7u,>>,%a3@,%d1,%acc2 + 1084: a653 f689 macw %a1l,%a7u,>>,%a3@,%a3,%acc1 + 1088: a6d3 f699 macw %a1l,%a7u,>>,%a3@,%a3,%acc2 + 108c: a413 f689 macw %a1l,%a7u,>>,%a3@,%d2,%acc1 + 1090: a493 f699 macw %a1l,%a7u,>>,%a3@,%d2,%acc2 + 1094: ae53 f689 macw %a1l,%a7u,>>,%a3@,%sp,%acc1 + 1098: aed3 f699 macw %a1l,%a7u,>>,%a3@,%sp,%acc2 + 109c: a213 f6a9 macw %a1l,%a7u,>>,%a3@&,%d1,%acc1 + 10a0: a293 f6b9 macw %a1l,%a7u,>>,%a3@&,%d1,%acc2 + 10a4: a653 f6a9 macw %a1l,%a7u,>>,%a3@&,%a3,%acc1 + 10a8: a6d3 f6b9 macw %a1l,%a7u,>>,%a3@&,%a3,%acc2 + 10ac: a413 f6a9 macw %a1l,%a7u,>>,%a3@&,%d2,%acc1 + 10b0: a493 f6b9 macw %a1l,%a7u,>>,%a3@&,%d2,%acc2 + 10b4: ae53 f6a9 macw %a1l,%a7u,>>,%a3@&,%sp,%acc1 + 10b8: aed3 f6b9 macw %a1l,%a7u,>>,%a3@&,%sp,%acc2 + 10bc: a21a f689 macw %a1l,%a7u,>>,%a2@\+,%d1,%acc1 + 10c0: a29a f699 macw %a1l,%a7u,>>,%a2@\+,%d1,%acc2 + 10c4: a65a f689 macw %a1l,%a7u,>>,%a2@\+,%a3,%acc1 + 10c8: a6da f699 macw %a1l,%a7u,>>,%a2@\+,%a3,%acc2 + 10cc: a41a f689 macw %a1l,%a7u,>>,%a2@\+,%d2,%acc1 + 10d0: a49a f699 macw %a1l,%a7u,>>,%a2@\+,%d2,%acc2 + 10d4: ae5a f689 macw %a1l,%a7u,>>,%a2@\+,%sp,%acc1 + 10d8: aeda f699 macw %a1l,%a7u,>>,%a2@\+,%sp,%acc2 + 10dc: a21a f6a9 macw %a1l,%a7u,>>,%a2@\+&,%d1,%acc1 + 10e0: a29a f6b9 macw %a1l,%a7u,>>,%a2@\+&,%d1,%acc2 + 10e4: a65a f6a9 macw %a1l,%a7u,>>,%a2@\+&,%a3,%acc1 + 10e8: a6da f6b9 macw %a1l,%a7u,>>,%a2@\+&,%a3,%acc2 + 10ec: a41a f6a9 macw %a1l,%a7u,>>,%a2@\+&,%d2,%acc1 + 10f0: a49a f6b9 macw %a1l,%a7u,>>,%a2@\+&,%d2,%acc2 + 10f4: ae5a f6a9 macw %a1l,%a7u,>>,%a2@\+&,%sp,%acc1 + 10f8: aeda f6b9 macw %a1l,%a7u,>>,%a2@\+&,%sp,%acc2 + 10fc: a22e f689 000a macw %a1l,%a7u,>>,%fp@\(10\),%d1,%acc1 + 1102: a2ae f699 000a macw %a1l,%a7u,>>,%fp@\(10\),%d1,%acc2 + 1108: a66e f689 000a macw %a1l,%a7u,>>,%fp@\(10\),%a3,%acc1 + 110e: a6ee f699 000a macw %a1l,%a7u,>>,%fp@\(10\),%a3,%acc2 + 1114: a42e f689 000a macw %a1l,%a7u,>>,%fp@\(10\),%d2,%acc1 + 111a: a4ae f699 000a macw %a1l,%a7u,>>,%fp@\(10\),%d2,%acc2 + 1120: ae6e f689 000a macw %a1l,%a7u,>>,%fp@\(10\),%sp,%acc1 + 1126: aeee f699 000a macw %a1l,%a7u,>>,%fp@\(10\),%sp,%acc2 + 112c: a22e f6a9 000a macw %a1l,%a7u,>>,%fp@\(10\)&,%d1,%acc1 + 1132: a2ae f6b9 000a macw %a1l,%a7u,>>,%fp@\(10\)&,%d1,%acc2 + 1138: a66e f6a9 000a macw %a1l,%a7u,>>,%fp@\(10\)&,%a3,%acc1 + 113e: a6ee f6b9 000a macw %a1l,%a7u,>>,%fp@\(10\)&,%a3,%acc2 + 1144: a42e f6a9 000a macw %a1l,%a7u,>>,%fp@\(10\)&,%d2,%acc1 + 114a: a4ae f6b9 000a macw %a1l,%a7u,>>,%fp@\(10\)&,%d2,%acc2 + 1150: ae6e f6a9 000a macw %a1l,%a7u,>>,%fp@\(10\)&,%sp,%acc1 + 1156: aeee f6b9 000a macw %a1l,%a7u,>>,%fp@\(10\)&,%sp,%acc2 + 115c: a221 f689 macw %a1l,%a7u,>>,%a1@-,%d1,%acc1 + 1160: a2a1 f699 macw %a1l,%a7u,>>,%a1@-,%d1,%acc2 + 1164: a661 f689 macw %a1l,%a7u,>>,%a1@-,%a3,%acc1 + 1168: a6e1 f699 macw %a1l,%a7u,>>,%a1@-,%a3,%acc2 + 116c: a421 f689 macw %a1l,%a7u,>>,%a1@-,%d2,%acc1 + 1170: a4a1 f699 macw %a1l,%a7u,>>,%a1@-,%d2,%acc2 + 1174: ae61 f689 macw %a1l,%a7u,>>,%a1@-,%sp,%acc1 + 1178: aee1 f699 macw %a1l,%a7u,>>,%a1@-,%sp,%acc2 + 117c: a221 f6a9 macw %a1l,%a7u,>>,%a1@-&,%d1,%acc1 + 1180: a2a1 f6b9 macw %a1l,%a7u,>>,%a1@-&,%d1,%acc2 + 1184: a661 f6a9 macw %a1l,%a7u,>>,%a1@-&,%a3,%acc1 + 1188: a6e1 f6b9 macw %a1l,%a7u,>>,%a1@-&,%a3,%acc2 + 118c: a421 f6a9 macw %a1l,%a7u,>>,%a1@-&,%d2,%acc1 + 1190: a4a1 f6b9 macw %a1l,%a7u,>>,%a1@-&,%d2,%acc2 + 1194: ae61 f6a9 macw %a1l,%a7u,>>,%a1@-&,%sp,%acc1 + 1198: aee1 f6b9 macw %a1l,%a7u,>>,%a1@-&,%sp,%acc2 + 119c: a213 f289 macw %a1l,%a7u,<<,%a3@,%d1,%acc1 + 11a0: a293 f299 macw %a1l,%a7u,<<,%a3@,%d1,%acc2 + 11a4: a653 f289 macw %a1l,%a7u,<<,%a3@,%a3,%acc1 + 11a8: a6d3 f299 macw %a1l,%a7u,<<,%a3@,%a3,%acc2 + 11ac: a413 f289 macw %a1l,%a7u,<<,%a3@,%d2,%acc1 + 11b0: a493 f299 macw %a1l,%a7u,<<,%a3@,%d2,%acc2 + 11b4: ae53 f289 macw %a1l,%a7u,<<,%a3@,%sp,%acc1 + 11b8: aed3 f299 macw %a1l,%a7u,<<,%a3@,%sp,%acc2 + 11bc: a213 f2a9 macw %a1l,%a7u,<<,%a3@&,%d1,%acc1 + 11c0: a293 f2b9 macw %a1l,%a7u,<<,%a3@&,%d1,%acc2 + 11c4: a653 f2a9 macw %a1l,%a7u,<<,%a3@&,%a3,%acc1 + 11c8: a6d3 f2b9 macw %a1l,%a7u,<<,%a3@&,%a3,%acc2 + 11cc: a413 f2a9 macw %a1l,%a7u,<<,%a3@&,%d2,%acc1 + 11d0: a493 f2b9 macw %a1l,%a7u,<<,%a3@&,%d2,%acc2 + 11d4: ae53 f2a9 macw %a1l,%a7u,<<,%a3@&,%sp,%acc1 + 11d8: aed3 f2b9 macw %a1l,%a7u,<<,%a3@&,%sp,%acc2 + 11dc: a21a f289 macw %a1l,%a7u,<<,%a2@\+,%d1,%acc1 + 11e0: a29a f299 macw %a1l,%a7u,<<,%a2@\+,%d1,%acc2 + 11e4: a65a f289 macw %a1l,%a7u,<<,%a2@\+,%a3,%acc1 + 11e8: a6da f299 macw %a1l,%a7u,<<,%a2@\+,%a3,%acc2 + 11ec: a41a f289 macw %a1l,%a7u,<<,%a2@\+,%d2,%acc1 + 11f0: a49a f299 macw %a1l,%a7u,<<,%a2@\+,%d2,%acc2 + 11f4: ae5a f289 macw %a1l,%a7u,<<,%a2@\+,%sp,%acc1 + 11f8: aeda f299 macw %a1l,%a7u,<<,%a2@\+,%sp,%acc2 + 11fc: a21a f2a9 macw %a1l,%a7u,<<,%a2@\+&,%d1,%acc1 + 1200: a29a f2b9 macw %a1l,%a7u,<<,%a2@\+&,%d1,%acc2 + 1204: a65a f2a9 macw %a1l,%a7u,<<,%a2@\+&,%a3,%acc1 + 1208: a6da f2b9 macw %a1l,%a7u,<<,%a2@\+&,%a3,%acc2 + 120c: a41a f2a9 macw %a1l,%a7u,<<,%a2@\+&,%d2,%acc1 + 1210: a49a f2b9 macw %a1l,%a7u,<<,%a2@\+&,%d2,%acc2 + 1214: ae5a f2a9 macw %a1l,%a7u,<<,%a2@\+&,%sp,%acc1 + 1218: aeda f2b9 macw %a1l,%a7u,<<,%a2@\+&,%sp,%acc2 + 121c: a22e f289 000a macw %a1l,%a7u,<<,%fp@\(10\),%d1,%acc1 + 1222: a2ae f299 000a macw %a1l,%a7u,<<,%fp@\(10\),%d1,%acc2 + 1228: a66e f289 000a macw %a1l,%a7u,<<,%fp@\(10\),%a3,%acc1 + 122e: a6ee f299 000a macw %a1l,%a7u,<<,%fp@\(10\),%a3,%acc2 + 1234: a42e f289 000a macw %a1l,%a7u,<<,%fp@\(10\),%d2,%acc1 + 123a: a4ae f299 000a macw %a1l,%a7u,<<,%fp@\(10\),%d2,%acc2 + 1240: ae6e f289 000a macw %a1l,%a7u,<<,%fp@\(10\),%sp,%acc1 + 1246: aeee f299 000a macw %a1l,%a7u,<<,%fp@\(10\),%sp,%acc2 + 124c: a22e f2a9 000a macw %a1l,%a7u,<<,%fp@\(10\)&,%d1,%acc1 + 1252: a2ae f2b9 000a macw %a1l,%a7u,<<,%fp@\(10\)&,%d1,%acc2 + 1258: a66e f2a9 000a macw %a1l,%a7u,<<,%fp@\(10\)&,%a3,%acc1 + 125e: a6ee f2b9 000a macw %a1l,%a7u,<<,%fp@\(10\)&,%a3,%acc2 + 1264: a42e f2a9 000a macw %a1l,%a7u,<<,%fp@\(10\)&,%d2,%acc1 + 126a: a4ae f2b9 000a macw %a1l,%a7u,<<,%fp@\(10\)&,%d2,%acc2 + 1270: ae6e f2a9 000a macw %a1l,%a7u,<<,%fp@\(10\)&,%sp,%acc1 + 1276: aeee f2b9 000a macw %a1l,%a7u,<<,%fp@\(10\)&,%sp,%acc2 + 127c: a221 f289 macw %a1l,%a7u,<<,%a1@-,%d1,%acc1 + 1280: a2a1 f299 macw %a1l,%a7u,<<,%a1@-,%d1,%acc2 + 1284: a661 f289 macw %a1l,%a7u,<<,%a1@-,%a3,%acc1 + 1288: a6e1 f299 macw %a1l,%a7u,<<,%a1@-,%a3,%acc2 + 128c: a421 f289 macw %a1l,%a7u,<<,%a1@-,%d2,%acc1 + 1290: a4a1 f299 macw %a1l,%a7u,<<,%a1@-,%d2,%acc2 + 1294: ae61 f289 macw %a1l,%a7u,<<,%a1@-,%sp,%acc1 + 1298: aee1 f299 macw %a1l,%a7u,<<,%a1@-,%sp,%acc2 + 129c: a221 f2a9 macw %a1l,%a7u,<<,%a1@-&,%d1,%acc1 + 12a0: a2a1 f2b9 macw %a1l,%a7u,<<,%a1@-&,%d1,%acc2 + 12a4: a661 f2a9 macw %a1l,%a7u,<<,%a1@-&,%a3,%acc1 + 12a8: a6e1 f2b9 macw %a1l,%a7u,<<,%a1@-&,%a3,%acc2 + 12ac: a421 f2a9 macw %a1l,%a7u,<<,%a1@-&,%d2,%acc1 + 12b0: a4a1 f2b9 macw %a1l,%a7u,<<,%a1@-&,%d2,%acc2 + 12b4: ae61 f2a9 macw %a1l,%a7u,<<,%a1@-&,%sp,%acc1 + 12b8: aee1 f2b9 macw %a1l,%a7u,<<,%a1@-&,%sp,%acc2 + 12bc: a213 f689 macw %a1l,%a7u,>>,%a3@,%d1,%acc1 + 12c0: a293 f699 macw %a1l,%a7u,>>,%a3@,%d1,%acc2 + 12c4: a653 f689 macw %a1l,%a7u,>>,%a3@,%a3,%acc1 + 12c8: a6d3 f699 macw %a1l,%a7u,>>,%a3@,%a3,%acc2 + 12cc: a413 f689 macw %a1l,%a7u,>>,%a3@,%d2,%acc1 + 12d0: a493 f699 macw %a1l,%a7u,>>,%a3@,%d2,%acc2 + 12d4: ae53 f689 macw %a1l,%a7u,>>,%a3@,%sp,%acc1 + 12d8: aed3 f699 macw %a1l,%a7u,>>,%a3@,%sp,%acc2 + 12dc: a213 f6a9 macw %a1l,%a7u,>>,%a3@&,%d1,%acc1 + 12e0: a293 f6b9 macw %a1l,%a7u,>>,%a3@&,%d1,%acc2 + 12e4: a653 f6a9 macw %a1l,%a7u,>>,%a3@&,%a3,%acc1 + 12e8: a6d3 f6b9 macw %a1l,%a7u,>>,%a3@&,%a3,%acc2 + 12ec: a413 f6a9 macw %a1l,%a7u,>>,%a3@&,%d2,%acc1 + 12f0: a493 f6b9 macw %a1l,%a7u,>>,%a3@&,%d2,%acc2 + 12f4: ae53 f6a9 macw %a1l,%a7u,>>,%a3@&,%sp,%acc1 + 12f8: aed3 f6b9 macw %a1l,%a7u,>>,%a3@&,%sp,%acc2 + 12fc: a21a f689 macw %a1l,%a7u,>>,%a2@\+,%d1,%acc1 + 1300: a29a f699 macw %a1l,%a7u,>>,%a2@\+,%d1,%acc2 + 1304: a65a f689 macw %a1l,%a7u,>>,%a2@\+,%a3,%acc1 + 1308: a6da f699 macw %a1l,%a7u,>>,%a2@\+,%a3,%acc2 + 130c: a41a f689 macw %a1l,%a7u,>>,%a2@\+,%d2,%acc1 + 1310: a49a f699 macw %a1l,%a7u,>>,%a2@\+,%d2,%acc2 + 1314: ae5a f689 macw %a1l,%a7u,>>,%a2@\+,%sp,%acc1 + 1318: aeda f699 macw %a1l,%a7u,>>,%a2@\+,%sp,%acc2 + 131c: a21a f6a9 macw %a1l,%a7u,>>,%a2@\+&,%d1,%acc1 + 1320: a29a f6b9 macw %a1l,%a7u,>>,%a2@\+&,%d1,%acc2 + 1324: a65a f6a9 macw %a1l,%a7u,>>,%a2@\+&,%a3,%acc1 + 1328: a6da f6b9 macw %a1l,%a7u,>>,%a2@\+&,%a3,%acc2 + 132c: a41a f6a9 macw %a1l,%a7u,>>,%a2@\+&,%d2,%acc1 + 1330: a49a f6b9 macw %a1l,%a7u,>>,%a2@\+&,%d2,%acc2 + 1334: ae5a f6a9 macw %a1l,%a7u,>>,%a2@\+&,%sp,%acc1 + 1338: aeda f6b9 macw %a1l,%a7u,>>,%a2@\+&,%sp,%acc2 + 133c: a22e f689 000a macw %a1l,%a7u,>>,%fp@\(10\),%d1,%acc1 + 1342: a2ae f699 000a macw %a1l,%a7u,>>,%fp@\(10\),%d1,%acc2 + 1348: a66e f689 000a macw %a1l,%a7u,>>,%fp@\(10\),%a3,%acc1 + 134e: a6ee f699 000a macw %a1l,%a7u,>>,%fp@\(10\),%a3,%acc2 + 1354: a42e f689 000a macw %a1l,%a7u,>>,%fp@\(10\),%d2,%acc1 + 135a: a4ae f699 000a macw %a1l,%a7u,>>,%fp@\(10\),%d2,%acc2 + 1360: ae6e f689 000a macw %a1l,%a7u,>>,%fp@\(10\),%sp,%acc1 + 1366: aeee f699 000a macw %a1l,%a7u,>>,%fp@\(10\),%sp,%acc2 + 136c: a22e f6a9 000a macw %a1l,%a7u,>>,%fp@\(10\)&,%d1,%acc1 + 1372: a2ae f6b9 000a macw %a1l,%a7u,>>,%fp@\(10\)&,%d1,%acc2 + 1378: a66e f6a9 000a macw %a1l,%a7u,>>,%fp@\(10\)&,%a3,%acc1 + 137e: a6ee f6b9 000a macw %a1l,%a7u,>>,%fp@\(10\)&,%a3,%acc2 + 1384: a42e f6a9 000a macw %a1l,%a7u,>>,%fp@\(10\)&,%d2,%acc1 + 138a: a4ae f6b9 000a macw %a1l,%a7u,>>,%fp@\(10\)&,%d2,%acc2 + 1390: ae6e f6a9 000a macw %a1l,%a7u,>>,%fp@\(10\)&,%sp,%acc1 + 1396: aeee f6b9 000a macw %a1l,%a7u,>>,%fp@\(10\)&,%sp,%acc2 + 139c: a221 f689 macw %a1l,%a7u,>>,%a1@-,%d1,%acc1 + 13a0: a2a1 f699 macw %a1l,%a7u,>>,%a1@-,%d1,%acc2 + 13a4: a661 f689 macw %a1l,%a7u,>>,%a1@-,%a3,%acc1 + 13a8: a6e1 f699 macw %a1l,%a7u,>>,%a1@-,%a3,%acc2 + 13ac: a421 f689 macw %a1l,%a7u,>>,%a1@-,%d2,%acc1 + 13b0: a4a1 f699 macw %a1l,%a7u,>>,%a1@-,%d2,%acc2 + 13b4: ae61 f689 macw %a1l,%a7u,>>,%a1@-,%sp,%acc1 + 13b8: aee1 f699 macw %a1l,%a7u,>>,%a1@-,%sp,%acc2 + 13bc: a221 f6a9 macw %a1l,%a7u,>>,%a1@-&,%d1,%acc1 + 13c0: a2a1 f6b9 macw %a1l,%a7u,>>,%a1@-&,%d1,%acc2 + 13c4: a661 f6a9 macw %a1l,%a7u,>>,%a1@-&,%a3,%acc1 + 13c8: a6e1 f6b9 macw %a1l,%a7u,>>,%a1@-&,%a3,%acc2 + 13cc: a421 f6a9 macw %a1l,%a7u,>>,%a1@-&,%d2,%acc1 + 13d0: a4a1 f6b9 macw %a1l,%a7u,>>,%a1@-&,%d2,%acc2 + 13d4: ae61 f6a9 macw %a1l,%a7u,>>,%a1@-&,%sp,%acc1 + 13d8: aee1 f6b9 macw %a1l,%a7u,>>,%a1@-&,%sp,%acc2 + 13dc: a213 1009 macw %a1l,%d1l,%a3@,%d1,%acc1 + 13e0: a293 1019 macw %a1l,%d1l,%a3@,%d1,%acc2 + 13e4: a653 1009 macw %a1l,%d1l,%a3@,%a3,%acc1 + 13e8: a6d3 1019 macw %a1l,%d1l,%a3@,%a3,%acc2 + 13ec: a413 1009 macw %a1l,%d1l,%a3@,%d2,%acc1 + 13f0: a493 1019 macw %a1l,%d1l,%a3@,%d2,%acc2 + 13f4: ae53 1009 macw %a1l,%d1l,%a3@,%sp,%acc1 + 13f8: aed3 1019 macw %a1l,%d1l,%a3@,%sp,%acc2 + 13fc: a213 1029 macw %a1l,%d1l,%a3@&,%d1,%acc1 + 1400: a293 1039 macw %a1l,%d1l,%a3@&,%d1,%acc2 + 1404: a653 1029 macw %a1l,%d1l,%a3@&,%a3,%acc1 + 1408: a6d3 1039 macw %a1l,%d1l,%a3@&,%a3,%acc2 + 140c: a413 1029 macw %a1l,%d1l,%a3@&,%d2,%acc1 + 1410: a493 1039 macw %a1l,%d1l,%a3@&,%d2,%acc2 + 1414: ae53 1029 macw %a1l,%d1l,%a3@&,%sp,%acc1 + 1418: aed3 1039 macw %a1l,%d1l,%a3@&,%sp,%acc2 + 141c: a21a 1009 macw %a1l,%d1l,%a2@\+,%d1,%acc1 + 1420: a29a 1019 macw %a1l,%d1l,%a2@\+,%d1,%acc2 + 1424: a65a 1009 macw %a1l,%d1l,%a2@\+,%a3,%acc1 + 1428: a6da 1019 macw %a1l,%d1l,%a2@\+,%a3,%acc2 + 142c: a41a 1009 macw %a1l,%d1l,%a2@\+,%d2,%acc1 + 1430: a49a 1019 macw %a1l,%d1l,%a2@\+,%d2,%acc2 + 1434: ae5a 1009 macw %a1l,%d1l,%a2@\+,%sp,%acc1 + 1438: aeda 1019 macw %a1l,%d1l,%a2@\+,%sp,%acc2 + 143c: a21a 1029 macw %a1l,%d1l,%a2@\+&,%d1,%acc1 + 1440: a29a 1039 macw %a1l,%d1l,%a2@\+&,%d1,%acc2 + 1444: a65a 1029 macw %a1l,%d1l,%a2@\+&,%a3,%acc1 + 1448: a6da 1039 macw %a1l,%d1l,%a2@\+&,%a3,%acc2 + 144c: a41a 1029 macw %a1l,%d1l,%a2@\+&,%d2,%acc1 + 1450: a49a 1039 macw %a1l,%d1l,%a2@\+&,%d2,%acc2 + 1454: ae5a 1029 macw %a1l,%d1l,%a2@\+&,%sp,%acc1 + 1458: aeda 1039 macw %a1l,%d1l,%a2@\+&,%sp,%acc2 + 145c: a22e 1009 000a macw %a1l,%d1l,%fp@\(10\),%d1,%acc1 + 1462: a2ae 1019 000a macw %a1l,%d1l,%fp@\(10\),%d1,%acc2 + 1468: a66e 1009 000a macw %a1l,%d1l,%fp@\(10\),%a3,%acc1 + 146e: a6ee 1019 000a macw %a1l,%d1l,%fp@\(10\),%a3,%acc2 + 1474: a42e 1009 000a macw %a1l,%d1l,%fp@\(10\),%d2,%acc1 + 147a: a4ae 1019 000a macw %a1l,%d1l,%fp@\(10\),%d2,%acc2 + 1480: ae6e 1009 000a macw %a1l,%d1l,%fp@\(10\),%sp,%acc1 + 1486: aeee 1019 000a macw %a1l,%d1l,%fp@\(10\),%sp,%acc2 + 148c: a22e 1029 000a macw %a1l,%d1l,%fp@\(10\)&,%d1,%acc1 + 1492: a2ae 1039 000a macw %a1l,%d1l,%fp@\(10\)&,%d1,%acc2 + 1498: a66e 1029 000a macw %a1l,%d1l,%fp@\(10\)&,%a3,%acc1 + 149e: a6ee 1039 000a macw %a1l,%d1l,%fp@\(10\)&,%a3,%acc2 + 14a4: a42e 1029 000a macw %a1l,%d1l,%fp@\(10\)&,%d2,%acc1 + 14aa: a4ae 1039 000a macw %a1l,%d1l,%fp@\(10\)&,%d2,%acc2 + 14b0: ae6e 1029 000a macw %a1l,%d1l,%fp@\(10\)&,%sp,%acc1 + 14b6: aeee 1039 000a macw %a1l,%d1l,%fp@\(10\)&,%sp,%acc2 + 14bc: a221 1009 macw %a1l,%d1l,%a1@-,%d1,%acc1 + 14c0: a2a1 1019 macw %a1l,%d1l,%a1@-,%d1,%acc2 + 14c4: a661 1009 macw %a1l,%d1l,%a1@-,%a3,%acc1 + 14c8: a6e1 1019 macw %a1l,%d1l,%a1@-,%a3,%acc2 + 14cc: a421 1009 macw %a1l,%d1l,%a1@-,%d2,%acc1 + 14d0: a4a1 1019 macw %a1l,%d1l,%a1@-,%d2,%acc2 + 14d4: ae61 1009 macw %a1l,%d1l,%a1@-,%sp,%acc1 + 14d8: aee1 1019 macw %a1l,%d1l,%a1@-,%sp,%acc2 + 14dc: a221 1029 macw %a1l,%d1l,%a1@-&,%d1,%acc1 + 14e0: a2a1 1039 macw %a1l,%d1l,%a1@-&,%d1,%acc2 + 14e4: a661 1029 macw %a1l,%d1l,%a1@-&,%a3,%acc1 + 14e8: a6e1 1039 macw %a1l,%d1l,%a1@-&,%a3,%acc2 + 14ec: a421 1029 macw %a1l,%d1l,%a1@-&,%d2,%acc1 + 14f0: a4a1 1039 macw %a1l,%d1l,%a1@-&,%d2,%acc2 + 14f4: ae61 1029 macw %a1l,%d1l,%a1@-&,%sp,%acc1 + 14f8: aee1 1039 macw %a1l,%d1l,%a1@-&,%sp,%acc2 + 14fc: a213 1209 macw %a1l,%d1l,<<,%a3@,%d1,%acc1 + 1500: a293 1219 macw %a1l,%d1l,<<,%a3@,%d1,%acc2 + 1504: a653 1209 macw %a1l,%d1l,<<,%a3@,%a3,%acc1 + 1508: a6d3 1219 macw %a1l,%d1l,<<,%a3@,%a3,%acc2 + 150c: a413 1209 macw %a1l,%d1l,<<,%a3@,%d2,%acc1 + 1510: a493 1219 macw %a1l,%d1l,<<,%a3@,%d2,%acc2 + 1514: ae53 1209 macw %a1l,%d1l,<<,%a3@,%sp,%acc1 + 1518: aed3 1219 macw %a1l,%d1l,<<,%a3@,%sp,%acc2 + 151c: a213 1229 macw %a1l,%d1l,<<,%a3@&,%d1,%acc1 + 1520: a293 1239 macw %a1l,%d1l,<<,%a3@&,%d1,%acc2 + 1524: a653 1229 macw %a1l,%d1l,<<,%a3@&,%a3,%acc1 + 1528: a6d3 1239 macw %a1l,%d1l,<<,%a3@&,%a3,%acc2 + 152c: a413 1229 macw %a1l,%d1l,<<,%a3@&,%d2,%acc1 + 1530: a493 1239 macw %a1l,%d1l,<<,%a3@&,%d2,%acc2 + 1534: ae53 1229 macw %a1l,%d1l,<<,%a3@&,%sp,%acc1 + 1538: aed3 1239 macw %a1l,%d1l,<<,%a3@&,%sp,%acc2 + 153c: a21a 1209 macw %a1l,%d1l,<<,%a2@\+,%d1,%acc1 + 1540: a29a 1219 macw %a1l,%d1l,<<,%a2@\+,%d1,%acc2 + 1544: a65a 1209 macw %a1l,%d1l,<<,%a2@\+,%a3,%acc1 + 1548: a6da 1219 macw %a1l,%d1l,<<,%a2@\+,%a3,%acc2 + 154c: a41a 1209 macw %a1l,%d1l,<<,%a2@\+,%d2,%acc1 + 1550: a49a 1219 macw %a1l,%d1l,<<,%a2@\+,%d2,%acc2 + 1554: ae5a 1209 macw %a1l,%d1l,<<,%a2@\+,%sp,%acc1 + 1558: aeda 1219 macw %a1l,%d1l,<<,%a2@\+,%sp,%acc2 + 155c: a21a 1229 macw %a1l,%d1l,<<,%a2@\+&,%d1,%acc1 + 1560: a29a 1239 macw %a1l,%d1l,<<,%a2@\+&,%d1,%acc2 + 1564: a65a 1229 macw %a1l,%d1l,<<,%a2@\+&,%a3,%acc1 + 1568: a6da 1239 macw %a1l,%d1l,<<,%a2@\+&,%a3,%acc2 + 156c: a41a 1229 macw %a1l,%d1l,<<,%a2@\+&,%d2,%acc1 + 1570: a49a 1239 macw %a1l,%d1l,<<,%a2@\+&,%d2,%acc2 + 1574: ae5a 1229 macw %a1l,%d1l,<<,%a2@\+&,%sp,%acc1 + 1578: aeda 1239 macw %a1l,%d1l,<<,%a2@\+&,%sp,%acc2 + 157c: a22e 1209 000a macw %a1l,%d1l,<<,%fp@\(10\),%d1,%acc1 + 1582: a2ae 1219 000a macw %a1l,%d1l,<<,%fp@\(10\),%d1,%acc2 + 1588: a66e 1209 000a macw %a1l,%d1l,<<,%fp@\(10\),%a3,%acc1 + 158e: a6ee 1219 000a macw %a1l,%d1l,<<,%fp@\(10\),%a3,%acc2 + 1594: a42e 1209 000a macw %a1l,%d1l,<<,%fp@\(10\),%d2,%acc1 + 159a: a4ae 1219 000a macw %a1l,%d1l,<<,%fp@\(10\),%d2,%acc2 + 15a0: ae6e 1209 000a macw %a1l,%d1l,<<,%fp@\(10\),%sp,%acc1 + 15a6: aeee 1219 000a macw %a1l,%d1l,<<,%fp@\(10\),%sp,%acc2 + 15ac: a22e 1229 000a macw %a1l,%d1l,<<,%fp@\(10\)&,%d1,%acc1 + 15b2: a2ae 1239 000a macw %a1l,%d1l,<<,%fp@\(10\)&,%d1,%acc2 + 15b8: a66e 1229 000a macw %a1l,%d1l,<<,%fp@\(10\)&,%a3,%acc1 + 15be: a6ee 1239 000a macw %a1l,%d1l,<<,%fp@\(10\)&,%a3,%acc2 + 15c4: a42e 1229 000a macw %a1l,%d1l,<<,%fp@\(10\)&,%d2,%acc1 + 15ca: a4ae 1239 000a macw %a1l,%d1l,<<,%fp@\(10\)&,%d2,%acc2 + 15d0: ae6e 1229 000a macw %a1l,%d1l,<<,%fp@\(10\)&,%sp,%acc1 + 15d6: aeee 1239 000a macw %a1l,%d1l,<<,%fp@\(10\)&,%sp,%acc2 + 15dc: a221 1209 macw %a1l,%d1l,<<,%a1@-,%d1,%acc1 + 15e0: a2a1 1219 macw %a1l,%d1l,<<,%a1@-,%d1,%acc2 + 15e4: a661 1209 macw %a1l,%d1l,<<,%a1@-,%a3,%acc1 + 15e8: a6e1 1219 macw %a1l,%d1l,<<,%a1@-,%a3,%acc2 + 15ec: a421 1209 macw %a1l,%d1l,<<,%a1@-,%d2,%acc1 + 15f0: a4a1 1219 macw %a1l,%d1l,<<,%a1@-,%d2,%acc2 + 15f4: ae61 1209 macw %a1l,%d1l,<<,%a1@-,%sp,%acc1 + 15f8: aee1 1219 macw %a1l,%d1l,<<,%a1@-,%sp,%acc2 + 15fc: a221 1229 macw %a1l,%d1l,<<,%a1@-&,%d1,%acc1 + 1600: a2a1 1239 macw %a1l,%d1l,<<,%a1@-&,%d1,%acc2 + 1604: a661 1229 macw %a1l,%d1l,<<,%a1@-&,%a3,%acc1 + 1608: a6e1 1239 macw %a1l,%d1l,<<,%a1@-&,%a3,%acc2 + 160c: a421 1229 macw %a1l,%d1l,<<,%a1@-&,%d2,%acc1 + 1610: a4a1 1239 macw %a1l,%d1l,<<,%a1@-&,%d2,%acc2 + 1614: ae61 1229 macw %a1l,%d1l,<<,%a1@-&,%sp,%acc1 + 1618: aee1 1239 macw %a1l,%d1l,<<,%a1@-&,%sp,%acc2 + 161c: a213 1609 macw %a1l,%d1l,>>,%a3@,%d1,%acc1 + 1620: a293 1619 macw %a1l,%d1l,>>,%a3@,%d1,%acc2 + 1624: a653 1609 macw %a1l,%d1l,>>,%a3@,%a3,%acc1 + 1628: a6d3 1619 macw %a1l,%d1l,>>,%a3@,%a3,%acc2 + 162c: a413 1609 macw %a1l,%d1l,>>,%a3@,%d2,%acc1 + 1630: a493 1619 macw %a1l,%d1l,>>,%a3@,%d2,%acc2 + 1634: ae53 1609 macw %a1l,%d1l,>>,%a3@,%sp,%acc1 + 1638: aed3 1619 macw %a1l,%d1l,>>,%a3@,%sp,%acc2 + 163c: a213 1629 macw %a1l,%d1l,>>,%a3@&,%d1,%acc1 + 1640: a293 1639 macw %a1l,%d1l,>>,%a3@&,%d1,%acc2 + 1644: a653 1629 macw %a1l,%d1l,>>,%a3@&,%a3,%acc1 + 1648: a6d3 1639 macw %a1l,%d1l,>>,%a3@&,%a3,%acc2 + 164c: a413 1629 macw %a1l,%d1l,>>,%a3@&,%d2,%acc1 + 1650: a493 1639 macw %a1l,%d1l,>>,%a3@&,%d2,%acc2 + 1654: ae53 1629 macw %a1l,%d1l,>>,%a3@&,%sp,%acc1 + 1658: aed3 1639 macw %a1l,%d1l,>>,%a3@&,%sp,%acc2 + 165c: a21a 1609 macw %a1l,%d1l,>>,%a2@\+,%d1,%acc1 + 1660: a29a 1619 macw %a1l,%d1l,>>,%a2@\+,%d1,%acc2 + 1664: a65a 1609 macw %a1l,%d1l,>>,%a2@\+,%a3,%acc1 + 1668: a6da 1619 macw %a1l,%d1l,>>,%a2@\+,%a3,%acc2 + 166c: a41a 1609 macw %a1l,%d1l,>>,%a2@\+,%d2,%acc1 + 1670: a49a 1619 macw %a1l,%d1l,>>,%a2@\+,%d2,%acc2 + 1674: ae5a 1609 macw %a1l,%d1l,>>,%a2@\+,%sp,%acc1 + 1678: aeda 1619 macw %a1l,%d1l,>>,%a2@\+,%sp,%acc2 + 167c: a21a 1629 macw %a1l,%d1l,>>,%a2@\+&,%d1,%acc1 + 1680: a29a 1639 macw %a1l,%d1l,>>,%a2@\+&,%d1,%acc2 + 1684: a65a 1629 macw %a1l,%d1l,>>,%a2@\+&,%a3,%acc1 + 1688: a6da 1639 macw %a1l,%d1l,>>,%a2@\+&,%a3,%acc2 + 168c: a41a 1629 macw %a1l,%d1l,>>,%a2@\+&,%d2,%acc1 + 1690: a49a 1639 macw %a1l,%d1l,>>,%a2@\+&,%d2,%acc2 + 1694: ae5a 1629 macw %a1l,%d1l,>>,%a2@\+&,%sp,%acc1 + 1698: aeda 1639 macw %a1l,%d1l,>>,%a2@\+&,%sp,%acc2 + 169c: a22e 1609 000a macw %a1l,%d1l,>>,%fp@\(10\),%d1,%acc1 + 16a2: a2ae 1619 000a macw %a1l,%d1l,>>,%fp@\(10\),%d1,%acc2 + 16a8: a66e 1609 000a macw %a1l,%d1l,>>,%fp@\(10\),%a3,%acc1 + 16ae: a6ee 1619 000a macw %a1l,%d1l,>>,%fp@\(10\),%a3,%acc2 + 16b4: a42e 1609 000a macw %a1l,%d1l,>>,%fp@\(10\),%d2,%acc1 + 16ba: a4ae 1619 000a macw %a1l,%d1l,>>,%fp@\(10\),%d2,%acc2 + 16c0: ae6e 1609 000a macw %a1l,%d1l,>>,%fp@\(10\),%sp,%acc1 + 16c6: aeee 1619 000a macw %a1l,%d1l,>>,%fp@\(10\),%sp,%acc2 + 16cc: a22e 1629 000a macw %a1l,%d1l,>>,%fp@\(10\)&,%d1,%acc1 + 16d2: a2ae 1639 000a macw %a1l,%d1l,>>,%fp@\(10\)&,%d1,%acc2 + 16d8: a66e 1629 000a macw %a1l,%d1l,>>,%fp@\(10\)&,%a3,%acc1 + 16de: a6ee 1639 000a macw %a1l,%d1l,>>,%fp@\(10\)&,%a3,%acc2 + 16e4: a42e 1629 000a macw %a1l,%d1l,>>,%fp@\(10\)&,%d2,%acc1 + 16ea: a4ae 1639 000a macw %a1l,%d1l,>>,%fp@\(10\)&,%d2,%acc2 + 16f0: ae6e 1629 000a macw %a1l,%d1l,>>,%fp@\(10\)&,%sp,%acc1 + 16f6: aeee 1639 000a macw %a1l,%d1l,>>,%fp@\(10\)&,%sp,%acc2 + 16fc: a221 1609 macw %a1l,%d1l,>>,%a1@-,%d1,%acc1 + 1700: a2a1 1619 macw %a1l,%d1l,>>,%a1@-,%d1,%acc2 + 1704: a661 1609 macw %a1l,%d1l,>>,%a1@-,%a3,%acc1 + 1708: a6e1 1619 macw %a1l,%d1l,>>,%a1@-,%a3,%acc2 + 170c: a421 1609 macw %a1l,%d1l,>>,%a1@-,%d2,%acc1 + 1710: a4a1 1619 macw %a1l,%d1l,>>,%a1@-,%d2,%acc2 + 1714: ae61 1609 macw %a1l,%d1l,>>,%a1@-,%sp,%acc1 + 1718: aee1 1619 macw %a1l,%d1l,>>,%a1@-,%sp,%acc2 + 171c: a221 1629 macw %a1l,%d1l,>>,%a1@-&,%d1,%acc1 + 1720: a2a1 1639 macw %a1l,%d1l,>>,%a1@-&,%d1,%acc2 + 1724: a661 1629 macw %a1l,%d1l,>>,%a1@-&,%a3,%acc1 + 1728: a6e1 1639 macw %a1l,%d1l,>>,%a1@-&,%a3,%acc2 + 172c: a421 1629 macw %a1l,%d1l,>>,%a1@-&,%d2,%acc1 + 1730: a4a1 1639 macw %a1l,%d1l,>>,%a1@-&,%d2,%acc2 + 1734: ae61 1629 macw %a1l,%d1l,>>,%a1@-&,%sp,%acc1 + 1738: aee1 1639 macw %a1l,%d1l,>>,%a1@-&,%sp,%acc2 + 173c: a213 1209 macw %a1l,%d1l,<<,%a3@,%d1,%acc1 + 1740: a293 1219 macw %a1l,%d1l,<<,%a3@,%d1,%acc2 + 1744: a653 1209 macw %a1l,%d1l,<<,%a3@,%a3,%acc1 + 1748: a6d3 1219 macw %a1l,%d1l,<<,%a3@,%a3,%acc2 + 174c: a413 1209 macw %a1l,%d1l,<<,%a3@,%d2,%acc1 + 1750: a493 1219 macw %a1l,%d1l,<<,%a3@,%d2,%acc2 + 1754: ae53 1209 macw %a1l,%d1l,<<,%a3@,%sp,%acc1 + 1758: aed3 1219 macw %a1l,%d1l,<<,%a3@,%sp,%acc2 + 175c: a213 1229 macw %a1l,%d1l,<<,%a3@&,%d1,%acc1 + 1760: a293 1239 macw %a1l,%d1l,<<,%a3@&,%d1,%acc2 + 1764: a653 1229 macw %a1l,%d1l,<<,%a3@&,%a3,%acc1 + 1768: a6d3 1239 macw %a1l,%d1l,<<,%a3@&,%a3,%acc2 + 176c: a413 1229 macw %a1l,%d1l,<<,%a3@&,%d2,%acc1 + 1770: a493 1239 macw %a1l,%d1l,<<,%a3@&,%d2,%acc2 + 1774: ae53 1229 macw %a1l,%d1l,<<,%a3@&,%sp,%acc1 + 1778: aed3 1239 macw %a1l,%d1l,<<,%a3@&,%sp,%acc2 + 177c: a21a 1209 macw %a1l,%d1l,<<,%a2@\+,%d1,%acc1 + 1780: a29a 1219 macw %a1l,%d1l,<<,%a2@\+,%d1,%acc2 + 1784: a65a 1209 macw %a1l,%d1l,<<,%a2@\+,%a3,%acc1 + 1788: a6da 1219 macw %a1l,%d1l,<<,%a2@\+,%a3,%acc2 + 178c: a41a 1209 macw %a1l,%d1l,<<,%a2@\+,%d2,%acc1 + 1790: a49a 1219 macw %a1l,%d1l,<<,%a2@\+,%d2,%acc2 + 1794: ae5a 1209 macw %a1l,%d1l,<<,%a2@\+,%sp,%acc1 + 1798: aeda 1219 macw %a1l,%d1l,<<,%a2@\+,%sp,%acc2 + 179c: a21a 1229 macw %a1l,%d1l,<<,%a2@\+&,%d1,%acc1 + 17a0: a29a 1239 macw %a1l,%d1l,<<,%a2@\+&,%d1,%acc2 + 17a4: a65a 1229 macw %a1l,%d1l,<<,%a2@\+&,%a3,%acc1 + 17a8: a6da 1239 macw %a1l,%d1l,<<,%a2@\+&,%a3,%acc2 + 17ac: a41a 1229 macw %a1l,%d1l,<<,%a2@\+&,%d2,%acc1 + 17b0: a49a 1239 macw %a1l,%d1l,<<,%a2@\+&,%d2,%acc2 + 17b4: ae5a 1229 macw %a1l,%d1l,<<,%a2@\+&,%sp,%acc1 + 17b8: aeda 1239 macw %a1l,%d1l,<<,%a2@\+&,%sp,%acc2 + 17bc: a22e 1209 000a macw %a1l,%d1l,<<,%fp@\(10\),%d1,%acc1 + 17c2: a2ae 1219 000a macw %a1l,%d1l,<<,%fp@\(10\),%d1,%acc2 + 17c8: a66e 1209 000a macw %a1l,%d1l,<<,%fp@\(10\),%a3,%acc1 + 17ce: a6ee 1219 000a macw %a1l,%d1l,<<,%fp@\(10\),%a3,%acc2 + 17d4: a42e 1209 000a macw %a1l,%d1l,<<,%fp@\(10\),%d2,%acc1 + 17da: a4ae 1219 000a macw %a1l,%d1l,<<,%fp@\(10\),%d2,%acc2 + 17e0: ae6e 1209 000a macw %a1l,%d1l,<<,%fp@\(10\),%sp,%acc1 + 17e6: aeee 1219 000a macw %a1l,%d1l,<<,%fp@\(10\),%sp,%acc2 + 17ec: a22e 1229 000a macw %a1l,%d1l,<<,%fp@\(10\)&,%d1,%acc1 + 17f2: a2ae 1239 000a macw %a1l,%d1l,<<,%fp@\(10\)&,%d1,%acc2 + 17f8: a66e 1229 000a macw %a1l,%d1l,<<,%fp@\(10\)&,%a3,%acc1 + 17fe: a6ee 1239 000a macw %a1l,%d1l,<<,%fp@\(10\)&,%a3,%acc2 + 1804: a42e 1229 000a macw %a1l,%d1l,<<,%fp@\(10\)&,%d2,%acc1 + 180a: a4ae 1239 000a macw %a1l,%d1l,<<,%fp@\(10\)&,%d2,%acc2 + 1810: ae6e 1229 000a macw %a1l,%d1l,<<,%fp@\(10\)&,%sp,%acc1 + 1816: aeee 1239 000a macw %a1l,%d1l,<<,%fp@\(10\)&,%sp,%acc2 + 181c: a221 1209 macw %a1l,%d1l,<<,%a1@-,%d1,%acc1 + 1820: a2a1 1219 macw %a1l,%d1l,<<,%a1@-,%d1,%acc2 + 1824: a661 1209 macw %a1l,%d1l,<<,%a1@-,%a3,%acc1 + 1828: a6e1 1219 macw %a1l,%d1l,<<,%a1@-,%a3,%acc2 + 182c: a421 1209 macw %a1l,%d1l,<<,%a1@-,%d2,%acc1 + 1830: a4a1 1219 macw %a1l,%d1l,<<,%a1@-,%d2,%acc2 + 1834: ae61 1209 macw %a1l,%d1l,<<,%a1@-,%sp,%acc1 + 1838: aee1 1219 macw %a1l,%d1l,<<,%a1@-,%sp,%acc2 + 183c: a221 1229 macw %a1l,%d1l,<<,%a1@-&,%d1,%acc1 + 1840: a2a1 1239 macw %a1l,%d1l,<<,%a1@-&,%d1,%acc2 + 1844: a661 1229 macw %a1l,%d1l,<<,%a1@-&,%a3,%acc1 + 1848: a6e1 1239 macw %a1l,%d1l,<<,%a1@-&,%a3,%acc2 + 184c: a421 1229 macw %a1l,%d1l,<<,%a1@-&,%d2,%acc1 + 1850: a4a1 1239 macw %a1l,%d1l,<<,%a1@-&,%d2,%acc2 + 1854: ae61 1229 macw %a1l,%d1l,<<,%a1@-&,%sp,%acc1 + 1858: aee1 1239 macw %a1l,%d1l,<<,%a1@-&,%sp,%acc2 + 185c: a213 1609 macw %a1l,%d1l,>>,%a3@,%d1,%acc1 + 1860: a293 1619 macw %a1l,%d1l,>>,%a3@,%d1,%acc2 + 1864: a653 1609 macw %a1l,%d1l,>>,%a3@,%a3,%acc1 + 1868: a6d3 1619 macw %a1l,%d1l,>>,%a3@,%a3,%acc2 + 186c: a413 1609 macw %a1l,%d1l,>>,%a3@,%d2,%acc1 + 1870: a493 1619 macw %a1l,%d1l,>>,%a3@,%d2,%acc2 + 1874: ae53 1609 macw %a1l,%d1l,>>,%a3@,%sp,%acc1 + 1878: aed3 1619 macw %a1l,%d1l,>>,%a3@,%sp,%acc2 + 187c: a213 1629 macw %a1l,%d1l,>>,%a3@&,%d1,%acc1 + 1880: a293 1639 macw %a1l,%d1l,>>,%a3@&,%d1,%acc2 + 1884: a653 1629 macw %a1l,%d1l,>>,%a3@&,%a3,%acc1 + 1888: a6d3 1639 macw %a1l,%d1l,>>,%a3@&,%a3,%acc2 + 188c: a413 1629 macw %a1l,%d1l,>>,%a3@&,%d2,%acc1 + 1890: a493 1639 macw %a1l,%d1l,>>,%a3@&,%d2,%acc2 + 1894: ae53 1629 macw %a1l,%d1l,>>,%a3@&,%sp,%acc1 + 1898: aed3 1639 macw %a1l,%d1l,>>,%a3@&,%sp,%acc2 + 189c: a21a 1609 macw %a1l,%d1l,>>,%a2@\+,%d1,%acc1 + 18a0: a29a 1619 macw %a1l,%d1l,>>,%a2@\+,%d1,%acc2 + 18a4: a65a 1609 macw %a1l,%d1l,>>,%a2@\+,%a3,%acc1 + 18a8: a6da 1619 macw %a1l,%d1l,>>,%a2@\+,%a3,%acc2 + 18ac: a41a 1609 macw %a1l,%d1l,>>,%a2@\+,%d2,%acc1 + 18b0: a49a 1619 macw %a1l,%d1l,>>,%a2@\+,%d2,%acc2 + 18b4: ae5a 1609 macw %a1l,%d1l,>>,%a2@\+,%sp,%acc1 + 18b8: aeda 1619 macw %a1l,%d1l,>>,%a2@\+,%sp,%acc2 + 18bc: a21a 1629 macw %a1l,%d1l,>>,%a2@\+&,%d1,%acc1 + 18c0: a29a 1639 macw %a1l,%d1l,>>,%a2@\+&,%d1,%acc2 + 18c4: a65a 1629 macw %a1l,%d1l,>>,%a2@\+&,%a3,%acc1 + 18c8: a6da 1639 macw %a1l,%d1l,>>,%a2@\+&,%a3,%acc2 + 18cc: a41a 1629 macw %a1l,%d1l,>>,%a2@\+&,%d2,%acc1 + 18d0: a49a 1639 macw %a1l,%d1l,>>,%a2@\+&,%d2,%acc2 + 18d4: ae5a 1629 macw %a1l,%d1l,>>,%a2@\+&,%sp,%acc1 + 18d8: aeda 1639 macw %a1l,%d1l,>>,%a2@\+&,%sp,%acc2 + 18dc: a22e 1609 000a macw %a1l,%d1l,>>,%fp@\(10\),%d1,%acc1 + 18e2: a2ae 1619 000a macw %a1l,%d1l,>>,%fp@\(10\),%d1,%acc2 + 18e8: a66e 1609 000a macw %a1l,%d1l,>>,%fp@\(10\),%a3,%acc1 + 18ee: a6ee 1619 000a macw %a1l,%d1l,>>,%fp@\(10\),%a3,%acc2 + 18f4: a42e 1609 000a macw %a1l,%d1l,>>,%fp@\(10\),%d2,%acc1 + 18fa: a4ae 1619 000a macw %a1l,%d1l,>>,%fp@\(10\),%d2,%acc2 + 1900: ae6e 1609 000a macw %a1l,%d1l,>>,%fp@\(10\),%sp,%acc1 + 1906: aeee 1619 000a macw %a1l,%d1l,>>,%fp@\(10\),%sp,%acc2 + 190c: a22e 1629 000a macw %a1l,%d1l,>>,%fp@\(10\)&,%d1,%acc1 + 1912: a2ae 1639 000a macw %a1l,%d1l,>>,%fp@\(10\)&,%d1,%acc2 + 1918: a66e 1629 000a macw %a1l,%d1l,>>,%fp@\(10\)&,%a3,%acc1 + 191e: a6ee 1639 000a macw %a1l,%d1l,>>,%fp@\(10\)&,%a3,%acc2 + 1924: a42e 1629 000a macw %a1l,%d1l,>>,%fp@\(10\)&,%d2,%acc1 + 192a: a4ae 1639 000a macw %a1l,%d1l,>>,%fp@\(10\)&,%d2,%acc2 + 1930: ae6e 1629 000a macw %a1l,%d1l,>>,%fp@\(10\)&,%sp,%acc1 + 1936: aeee 1639 000a macw %a1l,%d1l,>>,%fp@\(10\)&,%sp,%acc2 + 193c: a221 1609 macw %a1l,%d1l,>>,%a1@-,%d1,%acc1 + 1940: a2a1 1619 macw %a1l,%d1l,>>,%a1@-,%d1,%acc2 + 1944: a661 1609 macw %a1l,%d1l,>>,%a1@-,%a3,%acc1 + 1948: a6e1 1619 macw %a1l,%d1l,>>,%a1@-,%a3,%acc2 + 194c: a421 1609 macw %a1l,%d1l,>>,%a1@-,%d2,%acc1 + 1950: a4a1 1619 macw %a1l,%d1l,>>,%a1@-,%d2,%acc2 + 1954: ae61 1609 macw %a1l,%d1l,>>,%a1@-,%sp,%acc1 + 1958: aee1 1619 macw %a1l,%d1l,>>,%a1@-,%sp,%acc2 + 195c: a221 1629 macw %a1l,%d1l,>>,%a1@-&,%d1,%acc1 + 1960: a2a1 1639 macw %a1l,%d1l,>>,%a1@-&,%d1,%acc2 + 1964: a661 1629 macw %a1l,%d1l,>>,%a1@-&,%a3,%acc1 + 1968: a6e1 1639 macw %a1l,%d1l,>>,%a1@-&,%a3,%acc2 + 196c: a421 1629 macw %a1l,%d1l,>>,%a1@-&,%d2,%acc1 + 1970: a4a1 1639 macw %a1l,%d1l,>>,%a1@-&,%d2,%acc2 + 1974: ae61 1629 macw %a1l,%d1l,>>,%a1@-&,%sp,%acc1 + 1978: aee1 1639 macw %a1l,%d1l,>>,%a1@-&,%sp,%acc2 + 197c: a213 a0c2 macw %d2u,%a2u,%a3@,%d1,%acc1 + 1980: a293 a0d2 macw %d2u,%a2u,%a3@,%d1,%acc2 + 1984: a653 a0c2 macw %d2u,%a2u,%a3@,%a3,%acc1 + 1988: a6d3 a0d2 macw %d2u,%a2u,%a3@,%a3,%acc2 + 198c: a413 a0c2 macw %d2u,%a2u,%a3@,%d2,%acc1 + 1990: a493 a0d2 macw %d2u,%a2u,%a3@,%d2,%acc2 + 1994: ae53 a0c2 macw %d2u,%a2u,%a3@,%sp,%acc1 + 1998: aed3 a0d2 macw %d2u,%a2u,%a3@,%sp,%acc2 + 199c: a213 a0e2 macw %d2u,%a2u,%a3@&,%d1,%acc1 + 19a0: a293 a0f2 macw %d2u,%a2u,%a3@&,%d1,%acc2 + 19a4: a653 a0e2 macw %d2u,%a2u,%a3@&,%a3,%acc1 + 19a8: a6d3 a0f2 macw %d2u,%a2u,%a3@&,%a3,%acc2 + 19ac: a413 a0e2 macw %d2u,%a2u,%a3@&,%d2,%acc1 + 19b0: a493 a0f2 macw %d2u,%a2u,%a3@&,%d2,%acc2 + 19b4: ae53 a0e2 macw %d2u,%a2u,%a3@&,%sp,%acc1 + 19b8: aed3 a0f2 macw %d2u,%a2u,%a3@&,%sp,%acc2 + 19bc: a21a a0c2 macw %d2u,%a2u,%a2@\+,%d1,%acc1 + 19c0: a29a a0d2 macw %d2u,%a2u,%a2@\+,%d1,%acc2 + 19c4: a65a a0c2 macw %d2u,%a2u,%a2@\+,%a3,%acc1 + 19c8: a6da a0d2 macw %d2u,%a2u,%a2@\+,%a3,%acc2 + 19cc: a41a a0c2 macw %d2u,%a2u,%a2@\+,%d2,%acc1 + 19d0: a49a a0d2 macw %d2u,%a2u,%a2@\+,%d2,%acc2 + 19d4: ae5a a0c2 macw %d2u,%a2u,%a2@\+,%sp,%acc1 + 19d8: aeda a0d2 macw %d2u,%a2u,%a2@\+,%sp,%acc2 + 19dc: a21a a0e2 macw %d2u,%a2u,%a2@\+&,%d1,%acc1 + 19e0: a29a a0f2 macw %d2u,%a2u,%a2@\+&,%d1,%acc2 + 19e4: a65a a0e2 macw %d2u,%a2u,%a2@\+&,%a3,%acc1 + 19e8: a6da a0f2 macw %d2u,%a2u,%a2@\+&,%a3,%acc2 + 19ec: a41a a0e2 macw %d2u,%a2u,%a2@\+&,%d2,%acc1 + 19f0: a49a a0f2 macw %d2u,%a2u,%a2@\+&,%d2,%acc2 + 19f4: ae5a a0e2 macw %d2u,%a2u,%a2@\+&,%sp,%acc1 + 19f8: aeda a0f2 macw %d2u,%a2u,%a2@\+&,%sp,%acc2 + 19fc: a22e a0c2 000a macw %d2u,%a2u,%fp@\(10\),%d1,%acc1 + 1a02: a2ae a0d2 000a macw %d2u,%a2u,%fp@\(10\),%d1,%acc2 + 1a08: a66e a0c2 000a macw %d2u,%a2u,%fp@\(10\),%a3,%acc1 + 1a0e: a6ee a0d2 000a macw %d2u,%a2u,%fp@\(10\),%a3,%acc2 + 1a14: a42e a0c2 000a macw %d2u,%a2u,%fp@\(10\),%d2,%acc1 + 1a1a: a4ae a0d2 000a macw %d2u,%a2u,%fp@\(10\),%d2,%acc2 + 1a20: ae6e a0c2 000a macw %d2u,%a2u,%fp@\(10\),%sp,%acc1 + 1a26: aeee a0d2 000a macw %d2u,%a2u,%fp@\(10\),%sp,%acc2 + 1a2c: a22e a0e2 000a macw %d2u,%a2u,%fp@\(10\)&,%d1,%acc1 + 1a32: a2ae a0f2 000a macw %d2u,%a2u,%fp@\(10\)&,%d1,%acc2 + 1a38: a66e a0e2 000a macw %d2u,%a2u,%fp@\(10\)&,%a3,%acc1 + 1a3e: a6ee a0f2 000a macw %d2u,%a2u,%fp@\(10\)&,%a3,%acc2 + 1a44: a42e a0e2 000a macw %d2u,%a2u,%fp@\(10\)&,%d2,%acc1 + 1a4a: a4ae a0f2 000a macw %d2u,%a2u,%fp@\(10\)&,%d2,%acc2 + 1a50: ae6e a0e2 000a macw %d2u,%a2u,%fp@\(10\)&,%sp,%acc1 + 1a56: aeee a0f2 000a macw %d2u,%a2u,%fp@\(10\)&,%sp,%acc2 + 1a5c: a221 a0c2 macw %d2u,%a2u,%a1@-,%d1,%acc1 + 1a60: a2a1 a0d2 macw %d2u,%a2u,%a1@-,%d1,%acc2 + 1a64: a661 a0c2 macw %d2u,%a2u,%a1@-,%a3,%acc1 + 1a68: a6e1 a0d2 macw %d2u,%a2u,%a1@-,%a3,%acc2 + 1a6c: a421 a0c2 macw %d2u,%a2u,%a1@-,%d2,%acc1 + 1a70: a4a1 a0d2 macw %d2u,%a2u,%a1@-,%d2,%acc2 + 1a74: ae61 a0c2 macw %d2u,%a2u,%a1@-,%sp,%acc1 + 1a78: aee1 a0d2 macw %d2u,%a2u,%a1@-,%sp,%acc2 + 1a7c: a221 a0e2 macw %d2u,%a2u,%a1@-&,%d1,%acc1 + 1a80: a2a1 a0f2 macw %d2u,%a2u,%a1@-&,%d1,%acc2 + 1a84: a661 a0e2 macw %d2u,%a2u,%a1@-&,%a3,%acc1 + 1a88: a6e1 a0f2 macw %d2u,%a2u,%a1@-&,%a3,%acc2 + 1a8c: a421 a0e2 macw %d2u,%a2u,%a1@-&,%d2,%acc1 + 1a90: a4a1 a0f2 macw %d2u,%a2u,%a1@-&,%d2,%acc2 + 1a94: ae61 a0e2 macw %d2u,%a2u,%a1@-&,%sp,%acc1 + 1a98: aee1 a0f2 macw %d2u,%a2u,%a1@-&,%sp,%acc2 + 1a9c: a213 a2c2 macw %d2u,%a2u,<<,%a3@,%d1,%acc1 + 1aa0: a293 a2d2 macw %d2u,%a2u,<<,%a3@,%d1,%acc2 + 1aa4: a653 a2c2 macw %d2u,%a2u,<<,%a3@,%a3,%acc1 + 1aa8: a6d3 a2d2 macw %d2u,%a2u,<<,%a3@,%a3,%acc2 + 1aac: a413 a2c2 macw %d2u,%a2u,<<,%a3@,%d2,%acc1 + 1ab0: a493 a2d2 macw %d2u,%a2u,<<,%a3@,%d2,%acc2 + 1ab4: ae53 a2c2 macw %d2u,%a2u,<<,%a3@,%sp,%acc1 + 1ab8: aed3 a2d2 macw %d2u,%a2u,<<,%a3@,%sp,%acc2 + 1abc: a213 a2e2 macw %d2u,%a2u,<<,%a3@&,%d1,%acc1 + 1ac0: a293 a2f2 macw %d2u,%a2u,<<,%a3@&,%d1,%acc2 + 1ac4: a653 a2e2 macw %d2u,%a2u,<<,%a3@&,%a3,%acc1 + 1ac8: a6d3 a2f2 macw %d2u,%a2u,<<,%a3@&,%a3,%acc2 + 1acc: a413 a2e2 macw %d2u,%a2u,<<,%a3@&,%d2,%acc1 + 1ad0: a493 a2f2 macw %d2u,%a2u,<<,%a3@&,%d2,%acc2 + 1ad4: ae53 a2e2 macw %d2u,%a2u,<<,%a3@&,%sp,%acc1 + 1ad8: aed3 a2f2 macw %d2u,%a2u,<<,%a3@&,%sp,%acc2 + 1adc: a21a a2c2 macw %d2u,%a2u,<<,%a2@\+,%d1,%acc1 + 1ae0: a29a a2d2 macw %d2u,%a2u,<<,%a2@\+,%d1,%acc2 + 1ae4: a65a a2c2 macw %d2u,%a2u,<<,%a2@\+,%a3,%acc1 + 1ae8: a6da a2d2 macw %d2u,%a2u,<<,%a2@\+,%a3,%acc2 + 1aec: a41a a2c2 macw %d2u,%a2u,<<,%a2@\+,%d2,%acc1 + 1af0: a49a a2d2 macw %d2u,%a2u,<<,%a2@\+,%d2,%acc2 + 1af4: ae5a a2c2 macw %d2u,%a2u,<<,%a2@\+,%sp,%acc1 + 1af8: aeda a2d2 macw %d2u,%a2u,<<,%a2@\+,%sp,%acc2 + 1afc: a21a a2e2 macw %d2u,%a2u,<<,%a2@\+&,%d1,%acc1 + 1b00: a29a a2f2 macw %d2u,%a2u,<<,%a2@\+&,%d1,%acc2 + 1b04: a65a a2e2 macw %d2u,%a2u,<<,%a2@\+&,%a3,%acc1 + 1b08: a6da a2f2 macw %d2u,%a2u,<<,%a2@\+&,%a3,%acc2 + 1b0c: a41a a2e2 macw %d2u,%a2u,<<,%a2@\+&,%d2,%acc1 + 1b10: a49a a2f2 macw %d2u,%a2u,<<,%a2@\+&,%d2,%acc2 + 1b14: ae5a a2e2 macw %d2u,%a2u,<<,%a2@\+&,%sp,%acc1 + 1b18: aeda a2f2 macw %d2u,%a2u,<<,%a2@\+&,%sp,%acc2 + 1b1c: a22e a2c2 000a macw %d2u,%a2u,<<,%fp@\(10\),%d1,%acc1 + 1b22: a2ae a2d2 000a macw %d2u,%a2u,<<,%fp@\(10\),%d1,%acc2 + 1b28: a66e a2c2 000a macw %d2u,%a2u,<<,%fp@\(10\),%a3,%acc1 + 1b2e: a6ee a2d2 000a macw %d2u,%a2u,<<,%fp@\(10\),%a3,%acc2 + 1b34: a42e a2c2 000a macw %d2u,%a2u,<<,%fp@\(10\),%d2,%acc1 + 1b3a: a4ae a2d2 000a macw %d2u,%a2u,<<,%fp@\(10\),%d2,%acc2 + 1b40: ae6e a2c2 000a macw %d2u,%a2u,<<,%fp@\(10\),%sp,%acc1 + 1b46: aeee a2d2 000a macw %d2u,%a2u,<<,%fp@\(10\),%sp,%acc2 + 1b4c: a22e a2e2 000a macw %d2u,%a2u,<<,%fp@\(10\)&,%d1,%acc1 + 1b52: a2ae a2f2 000a macw %d2u,%a2u,<<,%fp@\(10\)&,%d1,%acc2 + 1b58: a66e a2e2 000a macw %d2u,%a2u,<<,%fp@\(10\)&,%a3,%acc1 + 1b5e: a6ee a2f2 000a macw %d2u,%a2u,<<,%fp@\(10\)&,%a3,%acc2 + 1b64: a42e a2e2 000a macw %d2u,%a2u,<<,%fp@\(10\)&,%d2,%acc1 + 1b6a: a4ae a2f2 000a macw %d2u,%a2u,<<,%fp@\(10\)&,%d2,%acc2 + 1b70: ae6e a2e2 000a macw %d2u,%a2u,<<,%fp@\(10\)&,%sp,%acc1 + 1b76: aeee a2f2 000a macw %d2u,%a2u,<<,%fp@\(10\)&,%sp,%acc2 + 1b7c: a221 a2c2 macw %d2u,%a2u,<<,%a1@-,%d1,%acc1 + 1b80: a2a1 a2d2 macw %d2u,%a2u,<<,%a1@-,%d1,%acc2 + 1b84: a661 a2c2 macw %d2u,%a2u,<<,%a1@-,%a3,%acc1 + 1b88: a6e1 a2d2 macw %d2u,%a2u,<<,%a1@-,%a3,%acc2 + 1b8c: a421 a2c2 macw %d2u,%a2u,<<,%a1@-,%d2,%acc1 + 1b90: a4a1 a2d2 macw %d2u,%a2u,<<,%a1@-,%d2,%acc2 + 1b94: ae61 a2c2 macw %d2u,%a2u,<<,%a1@-,%sp,%acc1 + 1b98: aee1 a2d2 macw %d2u,%a2u,<<,%a1@-,%sp,%acc2 + 1b9c: a221 a2e2 macw %d2u,%a2u,<<,%a1@-&,%d1,%acc1 + 1ba0: a2a1 a2f2 macw %d2u,%a2u,<<,%a1@-&,%d1,%acc2 + 1ba4: a661 a2e2 macw %d2u,%a2u,<<,%a1@-&,%a3,%acc1 + 1ba8: a6e1 a2f2 macw %d2u,%a2u,<<,%a1@-&,%a3,%acc2 + 1bac: a421 a2e2 macw %d2u,%a2u,<<,%a1@-&,%d2,%acc1 + 1bb0: a4a1 a2f2 macw %d2u,%a2u,<<,%a1@-&,%d2,%acc2 + 1bb4: ae61 a2e2 macw %d2u,%a2u,<<,%a1@-&,%sp,%acc1 + 1bb8: aee1 a2f2 macw %d2u,%a2u,<<,%a1@-&,%sp,%acc2 + 1bbc: a213 a6c2 macw %d2u,%a2u,>>,%a3@,%d1,%acc1 + 1bc0: a293 a6d2 macw %d2u,%a2u,>>,%a3@,%d1,%acc2 + 1bc4: a653 a6c2 macw %d2u,%a2u,>>,%a3@,%a3,%acc1 + 1bc8: a6d3 a6d2 macw %d2u,%a2u,>>,%a3@,%a3,%acc2 + 1bcc: a413 a6c2 macw %d2u,%a2u,>>,%a3@,%d2,%acc1 + 1bd0: a493 a6d2 macw %d2u,%a2u,>>,%a3@,%d2,%acc2 + 1bd4: ae53 a6c2 macw %d2u,%a2u,>>,%a3@,%sp,%acc1 + 1bd8: aed3 a6d2 macw %d2u,%a2u,>>,%a3@,%sp,%acc2 + 1bdc: a213 a6e2 macw %d2u,%a2u,>>,%a3@&,%d1,%acc1 + 1be0: a293 a6f2 macw %d2u,%a2u,>>,%a3@&,%d1,%acc2 + 1be4: a653 a6e2 macw %d2u,%a2u,>>,%a3@&,%a3,%acc1 + 1be8: a6d3 a6f2 macw %d2u,%a2u,>>,%a3@&,%a3,%acc2 + 1bec: a413 a6e2 macw %d2u,%a2u,>>,%a3@&,%d2,%acc1 + 1bf0: a493 a6f2 macw %d2u,%a2u,>>,%a3@&,%d2,%acc2 + 1bf4: ae53 a6e2 macw %d2u,%a2u,>>,%a3@&,%sp,%acc1 + 1bf8: aed3 a6f2 macw %d2u,%a2u,>>,%a3@&,%sp,%acc2 + 1bfc: a21a a6c2 macw %d2u,%a2u,>>,%a2@\+,%d1,%acc1 + 1c00: a29a a6d2 macw %d2u,%a2u,>>,%a2@\+,%d1,%acc2 + 1c04: a65a a6c2 macw %d2u,%a2u,>>,%a2@\+,%a3,%acc1 + 1c08: a6da a6d2 macw %d2u,%a2u,>>,%a2@\+,%a3,%acc2 + 1c0c: a41a a6c2 macw %d2u,%a2u,>>,%a2@\+,%d2,%acc1 + 1c10: a49a a6d2 macw %d2u,%a2u,>>,%a2@\+,%d2,%acc2 + 1c14: ae5a a6c2 macw %d2u,%a2u,>>,%a2@\+,%sp,%acc1 + 1c18: aeda a6d2 macw %d2u,%a2u,>>,%a2@\+,%sp,%acc2 + 1c1c: a21a a6e2 macw %d2u,%a2u,>>,%a2@\+&,%d1,%acc1 + 1c20: a29a a6f2 macw %d2u,%a2u,>>,%a2@\+&,%d1,%acc2 + 1c24: a65a a6e2 macw %d2u,%a2u,>>,%a2@\+&,%a3,%acc1 + 1c28: a6da a6f2 macw %d2u,%a2u,>>,%a2@\+&,%a3,%acc2 + 1c2c: a41a a6e2 macw %d2u,%a2u,>>,%a2@\+&,%d2,%acc1 + 1c30: a49a a6f2 macw %d2u,%a2u,>>,%a2@\+&,%d2,%acc2 + 1c34: ae5a a6e2 macw %d2u,%a2u,>>,%a2@\+&,%sp,%acc1 + 1c38: aeda a6f2 macw %d2u,%a2u,>>,%a2@\+&,%sp,%acc2 + 1c3c: a22e a6c2 000a macw %d2u,%a2u,>>,%fp@\(10\),%d1,%acc1 + 1c42: a2ae a6d2 000a macw %d2u,%a2u,>>,%fp@\(10\),%d1,%acc2 + 1c48: a66e a6c2 000a macw %d2u,%a2u,>>,%fp@\(10\),%a3,%acc1 + 1c4e: a6ee a6d2 000a macw %d2u,%a2u,>>,%fp@\(10\),%a3,%acc2 + 1c54: a42e a6c2 000a macw %d2u,%a2u,>>,%fp@\(10\),%d2,%acc1 + 1c5a: a4ae a6d2 000a macw %d2u,%a2u,>>,%fp@\(10\),%d2,%acc2 + 1c60: ae6e a6c2 000a macw %d2u,%a2u,>>,%fp@\(10\),%sp,%acc1 + 1c66: aeee a6d2 000a macw %d2u,%a2u,>>,%fp@\(10\),%sp,%acc2 + 1c6c: a22e a6e2 000a macw %d2u,%a2u,>>,%fp@\(10\)&,%d1,%acc1 + 1c72: a2ae a6f2 000a macw %d2u,%a2u,>>,%fp@\(10\)&,%d1,%acc2 + 1c78: a66e a6e2 000a macw %d2u,%a2u,>>,%fp@\(10\)&,%a3,%acc1 + 1c7e: a6ee a6f2 000a macw %d2u,%a2u,>>,%fp@\(10\)&,%a3,%acc2 + 1c84: a42e a6e2 000a macw %d2u,%a2u,>>,%fp@\(10\)&,%d2,%acc1 + 1c8a: a4ae a6f2 000a macw %d2u,%a2u,>>,%fp@\(10\)&,%d2,%acc2 + 1c90: ae6e a6e2 000a macw %d2u,%a2u,>>,%fp@\(10\)&,%sp,%acc1 + 1c96: aeee a6f2 000a macw %d2u,%a2u,>>,%fp@\(10\)&,%sp,%acc2 + 1c9c: a221 a6c2 macw %d2u,%a2u,>>,%a1@-,%d1,%acc1 + 1ca0: a2a1 a6d2 macw %d2u,%a2u,>>,%a1@-,%d1,%acc2 + 1ca4: a661 a6c2 macw %d2u,%a2u,>>,%a1@-,%a3,%acc1 + 1ca8: a6e1 a6d2 macw %d2u,%a2u,>>,%a1@-,%a3,%acc2 + 1cac: a421 a6c2 macw %d2u,%a2u,>>,%a1@-,%d2,%acc1 + 1cb0: a4a1 a6d2 macw %d2u,%a2u,>>,%a1@-,%d2,%acc2 + 1cb4: ae61 a6c2 macw %d2u,%a2u,>>,%a1@-,%sp,%acc1 + 1cb8: aee1 a6d2 macw %d2u,%a2u,>>,%a1@-,%sp,%acc2 + 1cbc: a221 a6e2 macw %d2u,%a2u,>>,%a1@-&,%d1,%acc1 + 1cc0: a2a1 a6f2 macw %d2u,%a2u,>>,%a1@-&,%d1,%acc2 + 1cc4: a661 a6e2 macw %d2u,%a2u,>>,%a1@-&,%a3,%acc1 + 1cc8: a6e1 a6f2 macw %d2u,%a2u,>>,%a1@-&,%a3,%acc2 + 1ccc: a421 a6e2 macw %d2u,%a2u,>>,%a1@-&,%d2,%acc1 + 1cd0: a4a1 a6f2 macw %d2u,%a2u,>>,%a1@-&,%d2,%acc2 + 1cd4: ae61 a6e2 macw %d2u,%a2u,>>,%a1@-&,%sp,%acc1 + 1cd8: aee1 a6f2 macw %d2u,%a2u,>>,%a1@-&,%sp,%acc2 + 1cdc: a213 a2c2 macw %d2u,%a2u,<<,%a3@,%d1,%acc1 + 1ce0: a293 a2d2 macw %d2u,%a2u,<<,%a3@,%d1,%acc2 + 1ce4: a653 a2c2 macw %d2u,%a2u,<<,%a3@,%a3,%acc1 + 1ce8: a6d3 a2d2 macw %d2u,%a2u,<<,%a3@,%a3,%acc2 + 1cec: a413 a2c2 macw %d2u,%a2u,<<,%a3@,%d2,%acc1 + 1cf0: a493 a2d2 macw %d2u,%a2u,<<,%a3@,%d2,%acc2 + 1cf4: ae53 a2c2 macw %d2u,%a2u,<<,%a3@,%sp,%acc1 + 1cf8: aed3 a2d2 macw %d2u,%a2u,<<,%a3@,%sp,%acc2 + 1cfc: a213 a2e2 macw %d2u,%a2u,<<,%a3@&,%d1,%acc1 + 1d00: a293 a2f2 macw %d2u,%a2u,<<,%a3@&,%d1,%acc2 + 1d04: a653 a2e2 macw %d2u,%a2u,<<,%a3@&,%a3,%acc1 + 1d08: a6d3 a2f2 macw %d2u,%a2u,<<,%a3@&,%a3,%acc2 + 1d0c: a413 a2e2 macw %d2u,%a2u,<<,%a3@&,%d2,%acc1 + 1d10: a493 a2f2 macw %d2u,%a2u,<<,%a3@&,%d2,%acc2 + 1d14: ae53 a2e2 macw %d2u,%a2u,<<,%a3@&,%sp,%acc1 + 1d18: aed3 a2f2 macw %d2u,%a2u,<<,%a3@&,%sp,%acc2 + 1d1c: a21a a2c2 macw %d2u,%a2u,<<,%a2@\+,%d1,%acc1 + 1d20: a29a a2d2 macw %d2u,%a2u,<<,%a2@\+,%d1,%acc2 + 1d24: a65a a2c2 macw %d2u,%a2u,<<,%a2@\+,%a3,%acc1 + 1d28: a6da a2d2 macw %d2u,%a2u,<<,%a2@\+,%a3,%acc2 + 1d2c: a41a a2c2 macw %d2u,%a2u,<<,%a2@\+,%d2,%acc1 + 1d30: a49a a2d2 macw %d2u,%a2u,<<,%a2@\+,%d2,%acc2 + 1d34: ae5a a2c2 macw %d2u,%a2u,<<,%a2@\+,%sp,%acc1 + 1d38: aeda a2d2 macw %d2u,%a2u,<<,%a2@\+,%sp,%acc2 + 1d3c: a21a a2e2 macw %d2u,%a2u,<<,%a2@\+&,%d1,%acc1 + 1d40: a29a a2f2 macw %d2u,%a2u,<<,%a2@\+&,%d1,%acc2 + 1d44: a65a a2e2 macw %d2u,%a2u,<<,%a2@\+&,%a3,%acc1 + 1d48: a6da a2f2 macw %d2u,%a2u,<<,%a2@\+&,%a3,%acc2 + 1d4c: a41a a2e2 macw %d2u,%a2u,<<,%a2@\+&,%d2,%acc1 + 1d50: a49a a2f2 macw %d2u,%a2u,<<,%a2@\+&,%d2,%acc2 + 1d54: ae5a a2e2 macw %d2u,%a2u,<<,%a2@\+&,%sp,%acc1 + 1d58: aeda a2f2 macw %d2u,%a2u,<<,%a2@\+&,%sp,%acc2 + 1d5c: a22e a2c2 000a macw %d2u,%a2u,<<,%fp@\(10\),%d1,%acc1 + 1d62: a2ae a2d2 000a macw %d2u,%a2u,<<,%fp@\(10\),%d1,%acc2 + 1d68: a66e a2c2 000a macw %d2u,%a2u,<<,%fp@\(10\),%a3,%acc1 + 1d6e: a6ee a2d2 000a macw %d2u,%a2u,<<,%fp@\(10\),%a3,%acc2 + 1d74: a42e a2c2 000a macw %d2u,%a2u,<<,%fp@\(10\),%d2,%acc1 + 1d7a: a4ae a2d2 000a macw %d2u,%a2u,<<,%fp@\(10\),%d2,%acc2 + 1d80: ae6e a2c2 000a macw %d2u,%a2u,<<,%fp@\(10\),%sp,%acc1 + 1d86: aeee a2d2 000a macw %d2u,%a2u,<<,%fp@\(10\),%sp,%acc2 + 1d8c: a22e a2e2 000a macw %d2u,%a2u,<<,%fp@\(10\)&,%d1,%acc1 + 1d92: a2ae a2f2 000a macw %d2u,%a2u,<<,%fp@\(10\)&,%d1,%acc2 + 1d98: a66e a2e2 000a macw %d2u,%a2u,<<,%fp@\(10\)&,%a3,%acc1 + 1d9e: a6ee a2f2 000a macw %d2u,%a2u,<<,%fp@\(10\)&,%a3,%acc2 + 1da4: a42e a2e2 000a macw %d2u,%a2u,<<,%fp@\(10\)&,%d2,%acc1 + 1daa: a4ae a2f2 000a macw %d2u,%a2u,<<,%fp@\(10\)&,%d2,%acc2 + 1db0: ae6e a2e2 000a macw %d2u,%a2u,<<,%fp@\(10\)&,%sp,%acc1 + 1db6: aeee a2f2 000a macw %d2u,%a2u,<<,%fp@\(10\)&,%sp,%acc2 + 1dbc: a221 a2c2 macw %d2u,%a2u,<<,%a1@-,%d1,%acc1 + 1dc0: a2a1 a2d2 macw %d2u,%a2u,<<,%a1@-,%d1,%acc2 + 1dc4: a661 a2c2 macw %d2u,%a2u,<<,%a1@-,%a3,%acc1 + 1dc8: a6e1 a2d2 macw %d2u,%a2u,<<,%a1@-,%a3,%acc2 + 1dcc: a421 a2c2 macw %d2u,%a2u,<<,%a1@-,%d2,%acc1 + 1dd0: a4a1 a2d2 macw %d2u,%a2u,<<,%a1@-,%d2,%acc2 + 1dd4: ae61 a2c2 macw %d2u,%a2u,<<,%a1@-,%sp,%acc1 + 1dd8: aee1 a2d2 macw %d2u,%a2u,<<,%a1@-,%sp,%acc2 + 1ddc: a221 a2e2 macw %d2u,%a2u,<<,%a1@-&,%d1,%acc1 + 1de0: a2a1 a2f2 macw %d2u,%a2u,<<,%a1@-&,%d1,%acc2 + 1de4: a661 a2e2 macw %d2u,%a2u,<<,%a1@-&,%a3,%acc1 + 1de8: a6e1 a2f2 macw %d2u,%a2u,<<,%a1@-&,%a3,%acc2 + 1dec: a421 a2e2 macw %d2u,%a2u,<<,%a1@-&,%d2,%acc1 + 1df0: a4a1 a2f2 macw %d2u,%a2u,<<,%a1@-&,%d2,%acc2 + 1df4: ae61 a2e2 macw %d2u,%a2u,<<,%a1@-&,%sp,%acc1 + 1df8: aee1 a2f2 macw %d2u,%a2u,<<,%a1@-&,%sp,%acc2 + 1dfc: a213 a6c2 macw %d2u,%a2u,>>,%a3@,%d1,%acc1 + 1e00: a293 a6d2 macw %d2u,%a2u,>>,%a3@,%d1,%acc2 + 1e04: a653 a6c2 macw %d2u,%a2u,>>,%a3@,%a3,%acc1 + 1e08: a6d3 a6d2 macw %d2u,%a2u,>>,%a3@,%a3,%acc2 + 1e0c: a413 a6c2 macw %d2u,%a2u,>>,%a3@,%d2,%acc1 + 1e10: a493 a6d2 macw %d2u,%a2u,>>,%a3@,%d2,%acc2 + 1e14: ae53 a6c2 macw %d2u,%a2u,>>,%a3@,%sp,%acc1 + 1e18: aed3 a6d2 macw %d2u,%a2u,>>,%a3@,%sp,%acc2 + 1e1c: a213 a6e2 macw %d2u,%a2u,>>,%a3@&,%d1,%acc1 + 1e20: a293 a6f2 macw %d2u,%a2u,>>,%a3@&,%d1,%acc2 + 1e24: a653 a6e2 macw %d2u,%a2u,>>,%a3@&,%a3,%acc1 + 1e28: a6d3 a6f2 macw %d2u,%a2u,>>,%a3@&,%a3,%acc2 + 1e2c: a413 a6e2 macw %d2u,%a2u,>>,%a3@&,%d2,%acc1 + 1e30: a493 a6f2 macw %d2u,%a2u,>>,%a3@&,%d2,%acc2 + 1e34: ae53 a6e2 macw %d2u,%a2u,>>,%a3@&,%sp,%acc1 + 1e38: aed3 a6f2 macw %d2u,%a2u,>>,%a3@&,%sp,%acc2 + 1e3c: a21a a6c2 macw %d2u,%a2u,>>,%a2@\+,%d1,%acc1 + 1e40: a29a a6d2 macw %d2u,%a2u,>>,%a2@\+,%d1,%acc2 + 1e44: a65a a6c2 macw %d2u,%a2u,>>,%a2@\+,%a3,%acc1 + 1e48: a6da a6d2 macw %d2u,%a2u,>>,%a2@\+,%a3,%acc2 + 1e4c: a41a a6c2 macw %d2u,%a2u,>>,%a2@\+,%d2,%acc1 + 1e50: a49a a6d2 macw %d2u,%a2u,>>,%a2@\+,%d2,%acc2 + 1e54: ae5a a6c2 macw %d2u,%a2u,>>,%a2@\+,%sp,%acc1 + 1e58: aeda a6d2 macw %d2u,%a2u,>>,%a2@\+,%sp,%acc2 + 1e5c: a21a a6e2 macw %d2u,%a2u,>>,%a2@\+&,%d1,%acc1 + 1e60: a29a a6f2 macw %d2u,%a2u,>>,%a2@\+&,%d1,%acc2 + 1e64: a65a a6e2 macw %d2u,%a2u,>>,%a2@\+&,%a3,%acc1 + 1e68: a6da a6f2 macw %d2u,%a2u,>>,%a2@\+&,%a3,%acc2 + 1e6c: a41a a6e2 macw %d2u,%a2u,>>,%a2@\+&,%d2,%acc1 + 1e70: a49a a6f2 macw %d2u,%a2u,>>,%a2@\+&,%d2,%acc2 + 1e74: ae5a a6e2 macw %d2u,%a2u,>>,%a2@\+&,%sp,%acc1 + 1e78: aeda a6f2 macw %d2u,%a2u,>>,%a2@\+&,%sp,%acc2 + 1e7c: a22e a6c2 000a macw %d2u,%a2u,>>,%fp@\(10\),%d1,%acc1 + 1e82: a2ae a6d2 000a macw %d2u,%a2u,>>,%fp@\(10\),%d1,%acc2 + 1e88: a66e a6c2 000a macw %d2u,%a2u,>>,%fp@\(10\),%a3,%acc1 + 1e8e: a6ee a6d2 000a macw %d2u,%a2u,>>,%fp@\(10\),%a3,%acc2 + 1e94: a42e a6c2 000a macw %d2u,%a2u,>>,%fp@\(10\),%d2,%acc1 + 1e9a: a4ae a6d2 000a macw %d2u,%a2u,>>,%fp@\(10\),%d2,%acc2 + 1ea0: ae6e a6c2 000a macw %d2u,%a2u,>>,%fp@\(10\),%sp,%acc1 + 1ea6: aeee a6d2 000a macw %d2u,%a2u,>>,%fp@\(10\),%sp,%acc2 + 1eac: a22e a6e2 000a macw %d2u,%a2u,>>,%fp@\(10\)&,%d1,%acc1 + 1eb2: a2ae a6f2 000a macw %d2u,%a2u,>>,%fp@\(10\)&,%d1,%acc2 + 1eb8: a66e a6e2 000a macw %d2u,%a2u,>>,%fp@\(10\)&,%a3,%acc1 + 1ebe: a6ee a6f2 000a macw %d2u,%a2u,>>,%fp@\(10\)&,%a3,%acc2 + 1ec4: a42e a6e2 000a macw %d2u,%a2u,>>,%fp@\(10\)&,%d2,%acc1 + 1eca: a4ae a6f2 000a macw %d2u,%a2u,>>,%fp@\(10\)&,%d2,%acc2 + 1ed0: ae6e a6e2 000a macw %d2u,%a2u,>>,%fp@\(10\)&,%sp,%acc1 + 1ed6: aeee a6f2 000a macw %d2u,%a2u,>>,%fp@\(10\)&,%sp,%acc2 + 1edc: a221 a6c2 macw %d2u,%a2u,>>,%a1@-,%d1,%acc1 + 1ee0: a2a1 a6d2 macw %d2u,%a2u,>>,%a1@-,%d1,%acc2 + 1ee4: a661 a6c2 macw %d2u,%a2u,>>,%a1@-,%a3,%acc1 + 1ee8: a6e1 a6d2 macw %d2u,%a2u,>>,%a1@-,%a3,%acc2 + 1eec: a421 a6c2 macw %d2u,%a2u,>>,%a1@-,%d2,%acc1 + 1ef0: a4a1 a6d2 macw %d2u,%a2u,>>,%a1@-,%d2,%acc2 + 1ef4: ae61 a6c2 macw %d2u,%a2u,>>,%a1@-,%sp,%acc1 + 1ef8: aee1 a6d2 macw %d2u,%a2u,>>,%a1@-,%sp,%acc2 + 1efc: a221 a6e2 macw %d2u,%a2u,>>,%a1@-&,%d1,%acc1 + 1f00: a2a1 a6f2 macw %d2u,%a2u,>>,%a1@-&,%d1,%acc2 + 1f04: a661 a6e2 macw %d2u,%a2u,>>,%a1@-&,%a3,%acc1 + 1f08: a6e1 a6f2 macw %d2u,%a2u,>>,%a1@-&,%a3,%acc2 + 1f0c: a421 a6e2 macw %d2u,%a2u,>>,%a1@-&,%d2,%acc1 + 1f10: a4a1 a6f2 macw %d2u,%a2u,>>,%a1@-&,%d2,%acc2 + 1f14: ae61 a6e2 macw %d2u,%a2u,>>,%a1@-&,%sp,%acc1 + 1f18: aee1 a6f2 macw %d2u,%a2u,>>,%a1@-&,%sp,%acc2 + 1f1c: a213 3042 macw %d2u,%d3l,%a3@,%d1,%acc1 + 1f20: a293 3052 macw %d2u,%d3l,%a3@,%d1,%acc2 + 1f24: a653 3042 macw %d2u,%d3l,%a3@,%a3,%acc1 + 1f28: a6d3 3052 macw %d2u,%d3l,%a3@,%a3,%acc2 + 1f2c: a413 3042 macw %d2u,%d3l,%a3@,%d2,%acc1 + 1f30: a493 3052 macw %d2u,%d3l,%a3@,%d2,%acc2 + 1f34: ae53 3042 macw %d2u,%d3l,%a3@,%sp,%acc1 + 1f38: aed3 3052 macw %d2u,%d3l,%a3@,%sp,%acc2 + 1f3c: a213 3062 macw %d2u,%d3l,%a3@&,%d1,%acc1 + 1f40: a293 3072 macw %d2u,%d3l,%a3@&,%d1,%acc2 + 1f44: a653 3062 macw %d2u,%d3l,%a3@&,%a3,%acc1 + 1f48: a6d3 3072 macw %d2u,%d3l,%a3@&,%a3,%acc2 + 1f4c: a413 3062 macw %d2u,%d3l,%a3@&,%d2,%acc1 + 1f50: a493 3072 macw %d2u,%d3l,%a3@&,%d2,%acc2 + 1f54: ae53 3062 macw %d2u,%d3l,%a3@&,%sp,%acc1 + 1f58: aed3 3072 macw %d2u,%d3l,%a3@&,%sp,%acc2 + 1f5c: a21a 3042 macw %d2u,%d3l,%a2@\+,%d1,%acc1 + 1f60: a29a 3052 macw %d2u,%d3l,%a2@\+,%d1,%acc2 + 1f64: a65a 3042 macw %d2u,%d3l,%a2@\+,%a3,%acc1 + 1f68: a6da 3052 macw %d2u,%d3l,%a2@\+,%a3,%acc2 + 1f6c: a41a 3042 macw %d2u,%d3l,%a2@\+,%d2,%acc1 + 1f70: a49a 3052 macw %d2u,%d3l,%a2@\+,%d2,%acc2 + 1f74: ae5a 3042 macw %d2u,%d3l,%a2@\+,%sp,%acc1 + 1f78: aeda 3052 macw %d2u,%d3l,%a2@\+,%sp,%acc2 + 1f7c: a21a 3062 macw %d2u,%d3l,%a2@\+&,%d1,%acc1 + 1f80: a29a 3072 macw %d2u,%d3l,%a2@\+&,%d1,%acc2 + 1f84: a65a 3062 macw %d2u,%d3l,%a2@\+&,%a3,%acc1 + 1f88: a6da 3072 macw %d2u,%d3l,%a2@\+&,%a3,%acc2 + 1f8c: a41a 3062 macw %d2u,%d3l,%a2@\+&,%d2,%acc1 + 1f90: a49a 3072 macw %d2u,%d3l,%a2@\+&,%d2,%acc2 + 1f94: ae5a 3062 macw %d2u,%d3l,%a2@\+&,%sp,%acc1 + 1f98: aeda 3072 macw %d2u,%d3l,%a2@\+&,%sp,%acc2 + 1f9c: a22e 3042 000a macw %d2u,%d3l,%fp@\(10\),%d1,%acc1 + 1fa2: a2ae 3052 000a macw %d2u,%d3l,%fp@\(10\),%d1,%acc2 + 1fa8: a66e 3042 000a macw %d2u,%d3l,%fp@\(10\),%a3,%acc1 + 1fae: a6ee 3052 000a macw %d2u,%d3l,%fp@\(10\),%a3,%acc2 + 1fb4: a42e 3042 000a macw %d2u,%d3l,%fp@\(10\),%d2,%acc1 + 1fba: a4ae 3052 000a macw %d2u,%d3l,%fp@\(10\),%d2,%acc2 + 1fc0: ae6e 3042 000a macw %d2u,%d3l,%fp@\(10\),%sp,%acc1 + 1fc6: aeee 3052 000a macw %d2u,%d3l,%fp@\(10\),%sp,%acc2 + 1fcc: a22e 3062 000a macw %d2u,%d3l,%fp@\(10\)&,%d1,%acc1 + 1fd2: a2ae 3072 000a macw %d2u,%d3l,%fp@\(10\)&,%d1,%acc2 + 1fd8: a66e 3062 000a macw %d2u,%d3l,%fp@\(10\)&,%a3,%acc1 + 1fde: a6ee 3072 000a macw %d2u,%d3l,%fp@\(10\)&,%a3,%acc2 + 1fe4: a42e 3062 000a macw %d2u,%d3l,%fp@\(10\)&,%d2,%acc1 + 1fea: a4ae 3072 000a macw %d2u,%d3l,%fp@\(10\)&,%d2,%acc2 + 1ff0: ae6e 3062 000a macw %d2u,%d3l,%fp@\(10\)&,%sp,%acc1 + 1ff6: aeee 3072 000a macw %d2u,%d3l,%fp@\(10\)&,%sp,%acc2 + 1ffc: a221 3042 macw %d2u,%d3l,%a1@-,%d1,%acc1 + 2000: a2a1 3052 macw %d2u,%d3l,%a1@-,%d1,%acc2 + 2004: a661 3042 macw %d2u,%d3l,%a1@-,%a3,%acc1 + 2008: a6e1 3052 macw %d2u,%d3l,%a1@-,%a3,%acc2 + 200c: a421 3042 macw %d2u,%d3l,%a1@-,%d2,%acc1 + 2010: a4a1 3052 macw %d2u,%d3l,%a1@-,%d2,%acc2 + 2014: ae61 3042 macw %d2u,%d3l,%a1@-,%sp,%acc1 + 2018: aee1 3052 macw %d2u,%d3l,%a1@-,%sp,%acc2 + 201c: a221 3062 macw %d2u,%d3l,%a1@-&,%d1,%acc1 + 2020: a2a1 3072 macw %d2u,%d3l,%a1@-&,%d1,%acc2 + 2024: a661 3062 macw %d2u,%d3l,%a1@-&,%a3,%acc1 + 2028: a6e1 3072 macw %d2u,%d3l,%a1@-&,%a3,%acc2 + 202c: a421 3062 macw %d2u,%d3l,%a1@-&,%d2,%acc1 + 2030: a4a1 3072 macw %d2u,%d3l,%a1@-&,%d2,%acc2 + 2034: ae61 3062 macw %d2u,%d3l,%a1@-&,%sp,%acc1 + 2038: aee1 3072 macw %d2u,%d3l,%a1@-&,%sp,%acc2 + 203c: a213 3242 macw %d2u,%d3l,<<,%a3@,%d1,%acc1 + 2040: a293 3252 macw %d2u,%d3l,<<,%a3@,%d1,%acc2 + 2044: a653 3242 macw %d2u,%d3l,<<,%a3@,%a3,%acc1 + 2048: a6d3 3252 macw %d2u,%d3l,<<,%a3@,%a3,%acc2 + 204c: a413 3242 macw %d2u,%d3l,<<,%a3@,%d2,%acc1 + 2050: a493 3252 macw %d2u,%d3l,<<,%a3@,%d2,%acc2 + 2054: ae53 3242 macw %d2u,%d3l,<<,%a3@,%sp,%acc1 + 2058: aed3 3252 macw %d2u,%d3l,<<,%a3@,%sp,%acc2 + 205c: a213 3262 macw %d2u,%d3l,<<,%a3@&,%d1,%acc1 + 2060: a293 3272 macw %d2u,%d3l,<<,%a3@&,%d1,%acc2 + 2064: a653 3262 macw %d2u,%d3l,<<,%a3@&,%a3,%acc1 + 2068: a6d3 3272 macw %d2u,%d3l,<<,%a3@&,%a3,%acc2 + 206c: a413 3262 macw %d2u,%d3l,<<,%a3@&,%d2,%acc1 + 2070: a493 3272 macw %d2u,%d3l,<<,%a3@&,%d2,%acc2 + 2074: ae53 3262 macw %d2u,%d3l,<<,%a3@&,%sp,%acc1 + 2078: aed3 3272 macw %d2u,%d3l,<<,%a3@&,%sp,%acc2 + 207c: a21a 3242 macw %d2u,%d3l,<<,%a2@\+,%d1,%acc1 + 2080: a29a 3252 macw %d2u,%d3l,<<,%a2@\+,%d1,%acc2 + 2084: a65a 3242 macw %d2u,%d3l,<<,%a2@\+,%a3,%acc1 + 2088: a6da 3252 macw %d2u,%d3l,<<,%a2@\+,%a3,%acc2 + 208c: a41a 3242 macw %d2u,%d3l,<<,%a2@\+,%d2,%acc1 + 2090: a49a 3252 macw %d2u,%d3l,<<,%a2@\+,%d2,%acc2 + 2094: ae5a 3242 macw %d2u,%d3l,<<,%a2@\+,%sp,%acc1 + 2098: aeda 3252 macw %d2u,%d3l,<<,%a2@\+,%sp,%acc2 + 209c: a21a 3262 macw %d2u,%d3l,<<,%a2@\+&,%d1,%acc1 + 20a0: a29a 3272 macw %d2u,%d3l,<<,%a2@\+&,%d1,%acc2 + 20a4: a65a 3262 macw %d2u,%d3l,<<,%a2@\+&,%a3,%acc1 + 20a8: a6da 3272 macw %d2u,%d3l,<<,%a2@\+&,%a3,%acc2 + 20ac: a41a 3262 macw %d2u,%d3l,<<,%a2@\+&,%d2,%acc1 + 20b0: a49a 3272 macw %d2u,%d3l,<<,%a2@\+&,%d2,%acc2 + 20b4: ae5a 3262 macw %d2u,%d3l,<<,%a2@\+&,%sp,%acc1 + 20b8: aeda 3272 macw %d2u,%d3l,<<,%a2@\+&,%sp,%acc2 + 20bc: a22e 3242 000a macw %d2u,%d3l,<<,%fp@\(10\),%d1,%acc1 + 20c2: a2ae 3252 000a macw %d2u,%d3l,<<,%fp@\(10\),%d1,%acc2 + 20c8: a66e 3242 000a macw %d2u,%d3l,<<,%fp@\(10\),%a3,%acc1 + 20ce: a6ee 3252 000a macw %d2u,%d3l,<<,%fp@\(10\),%a3,%acc2 + 20d4: a42e 3242 000a macw %d2u,%d3l,<<,%fp@\(10\),%d2,%acc1 + 20da: a4ae 3252 000a macw %d2u,%d3l,<<,%fp@\(10\),%d2,%acc2 + 20e0: ae6e 3242 000a macw %d2u,%d3l,<<,%fp@\(10\),%sp,%acc1 + 20e6: aeee 3252 000a macw %d2u,%d3l,<<,%fp@\(10\),%sp,%acc2 + 20ec: a22e 3262 000a macw %d2u,%d3l,<<,%fp@\(10\)&,%d1,%acc1 + 20f2: a2ae 3272 000a macw %d2u,%d3l,<<,%fp@\(10\)&,%d1,%acc2 + 20f8: a66e 3262 000a macw %d2u,%d3l,<<,%fp@\(10\)&,%a3,%acc1 + 20fe: a6ee 3272 000a macw %d2u,%d3l,<<,%fp@\(10\)&,%a3,%acc2 + 2104: a42e 3262 000a macw %d2u,%d3l,<<,%fp@\(10\)&,%d2,%acc1 + 210a: a4ae 3272 000a macw %d2u,%d3l,<<,%fp@\(10\)&,%d2,%acc2 + 2110: ae6e 3262 000a macw %d2u,%d3l,<<,%fp@\(10\)&,%sp,%acc1 + 2116: aeee 3272 000a macw %d2u,%d3l,<<,%fp@\(10\)&,%sp,%acc2 + 211c: a221 3242 macw %d2u,%d3l,<<,%a1@-,%d1,%acc1 + 2120: a2a1 3252 macw %d2u,%d3l,<<,%a1@-,%d1,%acc2 + 2124: a661 3242 macw %d2u,%d3l,<<,%a1@-,%a3,%acc1 + 2128: a6e1 3252 macw %d2u,%d3l,<<,%a1@-,%a3,%acc2 + 212c: a421 3242 macw %d2u,%d3l,<<,%a1@-,%d2,%acc1 + 2130: a4a1 3252 macw %d2u,%d3l,<<,%a1@-,%d2,%acc2 + 2134: ae61 3242 macw %d2u,%d3l,<<,%a1@-,%sp,%acc1 + 2138: aee1 3252 macw %d2u,%d3l,<<,%a1@-,%sp,%acc2 + 213c: a221 3262 macw %d2u,%d3l,<<,%a1@-&,%d1,%acc1 + 2140: a2a1 3272 macw %d2u,%d3l,<<,%a1@-&,%d1,%acc2 + 2144: a661 3262 macw %d2u,%d3l,<<,%a1@-&,%a3,%acc1 + 2148: a6e1 3272 macw %d2u,%d3l,<<,%a1@-&,%a3,%acc2 + 214c: a421 3262 macw %d2u,%d3l,<<,%a1@-&,%d2,%acc1 + 2150: a4a1 3272 macw %d2u,%d3l,<<,%a1@-&,%d2,%acc2 + 2154: ae61 3262 macw %d2u,%d3l,<<,%a1@-&,%sp,%acc1 + 2158: aee1 3272 macw %d2u,%d3l,<<,%a1@-&,%sp,%acc2 + 215c: a213 3642 macw %d2u,%d3l,>>,%a3@,%d1,%acc1 + 2160: a293 3652 macw %d2u,%d3l,>>,%a3@,%d1,%acc2 + 2164: a653 3642 macw %d2u,%d3l,>>,%a3@,%a3,%acc1 + 2168: a6d3 3652 macw %d2u,%d3l,>>,%a3@,%a3,%acc2 + 216c: a413 3642 macw %d2u,%d3l,>>,%a3@,%d2,%acc1 + 2170: a493 3652 macw %d2u,%d3l,>>,%a3@,%d2,%acc2 + 2174: ae53 3642 macw %d2u,%d3l,>>,%a3@,%sp,%acc1 + 2178: aed3 3652 macw %d2u,%d3l,>>,%a3@,%sp,%acc2 + 217c: a213 3662 macw %d2u,%d3l,>>,%a3@&,%d1,%acc1 + 2180: a293 3672 macw %d2u,%d3l,>>,%a3@&,%d1,%acc2 + 2184: a653 3662 macw %d2u,%d3l,>>,%a3@&,%a3,%acc1 + 2188: a6d3 3672 macw %d2u,%d3l,>>,%a3@&,%a3,%acc2 + 218c: a413 3662 macw %d2u,%d3l,>>,%a3@&,%d2,%acc1 + 2190: a493 3672 macw %d2u,%d3l,>>,%a3@&,%d2,%acc2 + 2194: ae53 3662 macw %d2u,%d3l,>>,%a3@&,%sp,%acc1 + 2198: aed3 3672 macw %d2u,%d3l,>>,%a3@&,%sp,%acc2 + 219c: a21a 3642 macw %d2u,%d3l,>>,%a2@\+,%d1,%acc1 + 21a0: a29a 3652 macw %d2u,%d3l,>>,%a2@\+,%d1,%acc2 + 21a4: a65a 3642 macw %d2u,%d3l,>>,%a2@\+,%a3,%acc1 + 21a8: a6da 3652 macw %d2u,%d3l,>>,%a2@\+,%a3,%acc2 + 21ac: a41a 3642 macw %d2u,%d3l,>>,%a2@\+,%d2,%acc1 + 21b0: a49a 3652 macw %d2u,%d3l,>>,%a2@\+,%d2,%acc2 + 21b4: ae5a 3642 macw %d2u,%d3l,>>,%a2@\+,%sp,%acc1 + 21b8: aeda 3652 macw %d2u,%d3l,>>,%a2@\+,%sp,%acc2 + 21bc: a21a 3662 macw %d2u,%d3l,>>,%a2@\+&,%d1,%acc1 + 21c0: a29a 3672 macw %d2u,%d3l,>>,%a2@\+&,%d1,%acc2 + 21c4: a65a 3662 macw %d2u,%d3l,>>,%a2@\+&,%a3,%acc1 + 21c8: a6da 3672 macw %d2u,%d3l,>>,%a2@\+&,%a3,%acc2 + 21cc: a41a 3662 macw %d2u,%d3l,>>,%a2@\+&,%d2,%acc1 + 21d0: a49a 3672 macw %d2u,%d3l,>>,%a2@\+&,%d2,%acc2 + 21d4: ae5a 3662 macw %d2u,%d3l,>>,%a2@\+&,%sp,%acc1 + 21d8: aeda 3672 macw %d2u,%d3l,>>,%a2@\+&,%sp,%acc2 + 21dc: a22e 3642 000a macw %d2u,%d3l,>>,%fp@\(10\),%d1,%acc1 + 21e2: a2ae 3652 000a macw %d2u,%d3l,>>,%fp@\(10\),%d1,%acc2 + 21e8: a66e 3642 000a macw %d2u,%d3l,>>,%fp@\(10\),%a3,%acc1 + 21ee: a6ee 3652 000a macw %d2u,%d3l,>>,%fp@\(10\),%a3,%acc2 + 21f4: a42e 3642 000a macw %d2u,%d3l,>>,%fp@\(10\),%d2,%acc1 + 21fa: a4ae 3652 000a macw %d2u,%d3l,>>,%fp@\(10\),%d2,%acc2 + 2200: ae6e 3642 000a macw %d2u,%d3l,>>,%fp@\(10\),%sp,%acc1 + 2206: aeee 3652 000a macw %d2u,%d3l,>>,%fp@\(10\),%sp,%acc2 + 220c: a22e 3662 000a macw %d2u,%d3l,>>,%fp@\(10\)&,%d1,%acc1 + 2212: a2ae 3672 000a macw %d2u,%d3l,>>,%fp@\(10\)&,%d1,%acc2 + 2218: a66e 3662 000a macw %d2u,%d3l,>>,%fp@\(10\)&,%a3,%acc1 + 221e: a6ee 3672 000a macw %d2u,%d3l,>>,%fp@\(10\)&,%a3,%acc2 + 2224: a42e 3662 000a macw %d2u,%d3l,>>,%fp@\(10\)&,%d2,%acc1 + 222a: a4ae 3672 000a macw %d2u,%d3l,>>,%fp@\(10\)&,%d2,%acc2 + 2230: ae6e 3662 000a macw %d2u,%d3l,>>,%fp@\(10\)&,%sp,%acc1 + 2236: aeee 3672 000a macw %d2u,%d3l,>>,%fp@\(10\)&,%sp,%acc2 + 223c: a221 3642 macw %d2u,%d3l,>>,%a1@-,%d1,%acc1 + 2240: a2a1 3652 macw %d2u,%d3l,>>,%a1@-,%d1,%acc2 + 2244: a661 3642 macw %d2u,%d3l,>>,%a1@-,%a3,%acc1 + 2248: a6e1 3652 macw %d2u,%d3l,>>,%a1@-,%a3,%acc2 + 224c: a421 3642 macw %d2u,%d3l,>>,%a1@-,%d2,%acc1 + 2250: a4a1 3652 macw %d2u,%d3l,>>,%a1@-,%d2,%acc2 + 2254: ae61 3642 macw %d2u,%d3l,>>,%a1@-,%sp,%acc1 + 2258: aee1 3652 macw %d2u,%d3l,>>,%a1@-,%sp,%acc2 + 225c: a221 3662 macw %d2u,%d3l,>>,%a1@-&,%d1,%acc1 + 2260: a2a1 3672 macw %d2u,%d3l,>>,%a1@-&,%d1,%acc2 + 2264: a661 3662 macw %d2u,%d3l,>>,%a1@-&,%a3,%acc1 + 2268: a6e1 3672 macw %d2u,%d3l,>>,%a1@-&,%a3,%acc2 + 226c: a421 3662 macw %d2u,%d3l,>>,%a1@-&,%d2,%acc1 + 2270: a4a1 3672 macw %d2u,%d3l,>>,%a1@-&,%d2,%acc2 + 2274: ae61 3662 macw %d2u,%d3l,>>,%a1@-&,%sp,%acc1 + 2278: aee1 3672 macw %d2u,%d3l,>>,%a1@-&,%sp,%acc2 + 227c: a213 3242 macw %d2u,%d3l,<<,%a3@,%d1,%acc1 + 2280: a293 3252 macw %d2u,%d3l,<<,%a3@,%d1,%acc2 + 2284: a653 3242 macw %d2u,%d3l,<<,%a3@,%a3,%acc1 + 2288: a6d3 3252 macw %d2u,%d3l,<<,%a3@,%a3,%acc2 + 228c: a413 3242 macw %d2u,%d3l,<<,%a3@,%d2,%acc1 + 2290: a493 3252 macw %d2u,%d3l,<<,%a3@,%d2,%acc2 + 2294: ae53 3242 macw %d2u,%d3l,<<,%a3@,%sp,%acc1 + 2298: aed3 3252 macw %d2u,%d3l,<<,%a3@,%sp,%acc2 + 229c: a213 3262 macw %d2u,%d3l,<<,%a3@&,%d1,%acc1 + 22a0: a293 3272 macw %d2u,%d3l,<<,%a3@&,%d1,%acc2 + 22a4: a653 3262 macw %d2u,%d3l,<<,%a3@&,%a3,%acc1 + 22a8: a6d3 3272 macw %d2u,%d3l,<<,%a3@&,%a3,%acc2 + 22ac: a413 3262 macw %d2u,%d3l,<<,%a3@&,%d2,%acc1 + 22b0: a493 3272 macw %d2u,%d3l,<<,%a3@&,%d2,%acc2 + 22b4: ae53 3262 macw %d2u,%d3l,<<,%a3@&,%sp,%acc1 + 22b8: aed3 3272 macw %d2u,%d3l,<<,%a3@&,%sp,%acc2 + 22bc: a21a 3242 macw %d2u,%d3l,<<,%a2@\+,%d1,%acc1 + 22c0: a29a 3252 macw %d2u,%d3l,<<,%a2@\+,%d1,%acc2 + 22c4: a65a 3242 macw %d2u,%d3l,<<,%a2@\+,%a3,%acc1 + 22c8: a6da 3252 macw %d2u,%d3l,<<,%a2@\+,%a3,%acc2 + 22cc: a41a 3242 macw %d2u,%d3l,<<,%a2@\+,%d2,%acc1 + 22d0: a49a 3252 macw %d2u,%d3l,<<,%a2@\+,%d2,%acc2 + 22d4: ae5a 3242 macw %d2u,%d3l,<<,%a2@\+,%sp,%acc1 + 22d8: aeda 3252 macw %d2u,%d3l,<<,%a2@\+,%sp,%acc2 + 22dc: a21a 3262 macw %d2u,%d3l,<<,%a2@\+&,%d1,%acc1 + 22e0: a29a 3272 macw %d2u,%d3l,<<,%a2@\+&,%d1,%acc2 + 22e4: a65a 3262 macw %d2u,%d3l,<<,%a2@\+&,%a3,%acc1 + 22e8: a6da 3272 macw %d2u,%d3l,<<,%a2@\+&,%a3,%acc2 + 22ec: a41a 3262 macw %d2u,%d3l,<<,%a2@\+&,%d2,%acc1 + 22f0: a49a 3272 macw %d2u,%d3l,<<,%a2@\+&,%d2,%acc2 + 22f4: ae5a 3262 macw %d2u,%d3l,<<,%a2@\+&,%sp,%acc1 + 22f8: aeda 3272 macw %d2u,%d3l,<<,%a2@\+&,%sp,%acc2 + 22fc: a22e 3242 000a macw %d2u,%d3l,<<,%fp@\(10\),%d1,%acc1 + 2302: a2ae 3252 000a macw %d2u,%d3l,<<,%fp@\(10\),%d1,%acc2 + 2308: a66e 3242 000a macw %d2u,%d3l,<<,%fp@\(10\),%a3,%acc1 + 230e: a6ee 3252 000a macw %d2u,%d3l,<<,%fp@\(10\),%a3,%acc2 + 2314: a42e 3242 000a macw %d2u,%d3l,<<,%fp@\(10\),%d2,%acc1 + 231a: a4ae 3252 000a macw %d2u,%d3l,<<,%fp@\(10\),%d2,%acc2 + 2320: ae6e 3242 000a macw %d2u,%d3l,<<,%fp@\(10\),%sp,%acc1 + 2326: aeee 3252 000a macw %d2u,%d3l,<<,%fp@\(10\),%sp,%acc2 + 232c: a22e 3262 000a macw %d2u,%d3l,<<,%fp@\(10\)&,%d1,%acc1 + 2332: a2ae 3272 000a macw %d2u,%d3l,<<,%fp@\(10\)&,%d1,%acc2 + 2338: a66e 3262 000a macw %d2u,%d3l,<<,%fp@\(10\)&,%a3,%acc1 + 233e: a6ee 3272 000a macw %d2u,%d3l,<<,%fp@\(10\)&,%a3,%acc2 + 2344: a42e 3262 000a macw %d2u,%d3l,<<,%fp@\(10\)&,%d2,%acc1 + 234a: a4ae 3272 000a macw %d2u,%d3l,<<,%fp@\(10\)&,%d2,%acc2 + 2350: ae6e 3262 000a macw %d2u,%d3l,<<,%fp@\(10\)&,%sp,%acc1 + 2356: aeee 3272 000a macw %d2u,%d3l,<<,%fp@\(10\)&,%sp,%acc2 + 235c: a221 3242 macw %d2u,%d3l,<<,%a1@-,%d1,%acc1 + 2360: a2a1 3252 macw %d2u,%d3l,<<,%a1@-,%d1,%acc2 + 2364: a661 3242 macw %d2u,%d3l,<<,%a1@-,%a3,%acc1 + 2368: a6e1 3252 macw %d2u,%d3l,<<,%a1@-,%a3,%acc2 + 236c: a421 3242 macw %d2u,%d3l,<<,%a1@-,%d2,%acc1 + 2370: a4a1 3252 macw %d2u,%d3l,<<,%a1@-,%d2,%acc2 + 2374: ae61 3242 macw %d2u,%d3l,<<,%a1@-,%sp,%acc1 + 2378: aee1 3252 macw %d2u,%d3l,<<,%a1@-,%sp,%acc2 + 237c: a221 3262 macw %d2u,%d3l,<<,%a1@-&,%d1,%acc1 + 2380: a2a1 3272 macw %d2u,%d3l,<<,%a1@-&,%d1,%acc2 + 2384: a661 3262 macw %d2u,%d3l,<<,%a1@-&,%a3,%acc1 + 2388: a6e1 3272 macw %d2u,%d3l,<<,%a1@-&,%a3,%acc2 + 238c: a421 3262 macw %d2u,%d3l,<<,%a1@-&,%d2,%acc1 + 2390: a4a1 3272 macw %d2u,%d3l,<<,%a1@-&,%d2,%acc2 + 2394: ae61 3262 macw %d2u,%d3l,<<,%a1@-&,%sp,%acc1 + 2398: aee1 3272 macw %d2u,%d3l,<<,%a1@-&,%sp,%acc2 + 239c: a213 3642 macw %d2u,%d3l,>>,%a3@,%d1,%acc1 + 23a0: a293 3652 macw %d2u,%d3l,>>,%a3@,%d1,%acc2 + 23a4: a653 3642 macw %d2u,%d3l,>>,%a3@,%a3,%acc1 + 23a8: a6d3 3652 macw %d2u,%d3l,>>,%a3@,%a3,%acc2 + 23ac: a413 3642 macw %d2u,%d3l,>>,%a3@,%d2,%acc1 + 23b0: a493 3652 macw %d2u,%d3l,>>,%a3@,%d2,%acc2 + 23b4: ae53 3642 macw %d2u,%d3l,>>,%a3@,%sp,%acc1 + 23b8: aed3 3652 macw %d2u,%d3l,>>,%a3@,%sp,%acc2 + 23bc: a213 3662 macw %d2u,%d3l,>>,%a3@&,%d1,%acc1 + 23c0: a293 3672 macw %d2u,%d3l,>>,%a3@&,%d1,%acc2 + 23c4: a653 3662 macw %d2u,%d3l,>>,%a3@&,%a3,%acc1 + 23c8: a6d3 3672 macw %d2u,%d3l,>>,%a3@&,%a3,%acc2 + 23cc: a413 3662 macw %d2u,%d3l,>>,%a3@&,%d2,%acc1 + 23d0: a493 3672 macw %d2u,%d3l,>>,%a3@&,%d2,%acc2 + 23d4: ae53 3662 macw %d2u,%d3l,>>,%a3@&,%sp,%acc1 + 23d8: aed3 3672 macw %d2u,%d3l,>>,%a3@&,%sp,%acc2 + 23dc: a21a 3642 macw %d2u,%d3l,>>,%a2@\+,%d1,%acc1 + 23e0: a29a 3652 macw %d2u,%d3l,>>,%a2@\+,%d1,%acc2 + 23e4: a65a 3642 macw %d2u,%d3l,>>,%a2@\+,%a3,%acc1 + 23e8: a6da 3652 macw %d2u,%d3l,>>,%a2@\+,%a3,%acc2 + 23ec: a41a 3642 macw %d2u,%d3l,>>,%a2@\+,%d2,%acc1 + 23f0: a49a 3652 macw %d2u,%d3l,>>,%a2@\+,%d2,%acc2 + 23f4: ae5a 3642 macw %d2u,%d3l,>>,%a2@\+,%sp,%acc1 + 23f8: aeda 3652 macw %d2u,%d3l,>>,%a2@\+,%sp,%acc2 + 23fc: a21a 3662 macw %d2u,%d3l,>>,%a2@\+&,%d1,%acc1 + 2400: a29a 3672 macw %d2u,%d3l,>>,%a2@\+&,%d1,%acc2 + 2404: a65a 3662 macw %d2u,%d3l,>>,%a2@\+&,%a3,%acc1 + 2408: a6da 3672 macw %d2u,%d3l,>>,%a2@\+&,%a3,%acc2 + 240c: a41a 3662 macw %d2u,%d3l,>>,%a2@\+&,%d2,%acc1 + 2410: a49a 3672 macw %d2u,%d3l,>>,%a2@\+&,%d2,%acc2 + 2414: ae5a 3662 macw %d2u,%d3l,>>,%a2@\+&,%sp,%acc1 + 2418: aeda 3672 macw %d2u,%d3l,>>,%a2@\+&,%sp,%acc2 + 241c: a22e 3642 000a macw %d2u,%d3l,>>,%fp@\(10\),%d1,%acc1 + 2422: a2ae 3652 000a macw %d2u,%d3l,>>,%fp@\(10\),%d1,%acc2 + 2428: a66e 3642 000a macw %d2u,%d3l,>>,%fp@\(10\),%a3,%acc1 + 242e: a6ee 3652 000a macw %d2u,%d3l,>>,%fp@\(10\),%a3,%acc2 + 2434: a42e 3642 000a macw %d2u,%d3l,>>,%fp@\(10\),%d2,%acc1 + 243a: a4ae 3652 000a macw %d2u,%d3l,>>,%fp@\(10\),%d2,%acc2 + 2440: ae6e 3642 000a macw %d2u,%d3l,>>,%fp@\(10\),%sp,%acc1 + 2446: aeee 3652 000a macw %d2u,%d3l,>>,%fp@\(10\),%sp,%acc2 + 244c: a22e 3662 000a macw %d2u,%d3l,>>,%fp@\(10\)&,%d1,%acc1 + 2452: a2ae 3672 000a macw %d2u,%d3l,>>,%fp@\(10\)&,%d1,%acc2 + 2458: a66e 3662 000a macw %d2u,%d3l,>>,%fp@\(10\)&,%a3,%acc1 + 245e: a6ee 3672 000a macw %d2u,%d3l,>>,%fp@\(10\)&,%a3,%acc2 + 2464: a42e 3662 000a macw %d2u,%d3l,>>,%fp@\(10\)&,%d2,%acc1 + 246a: a4ae 3672 000a macw %d2u,%d3l,>>,%fp@\(10\)&,%d2,%acc2 + 2470: ae6e 3662 000a macw %d2u,%d3l,>>,%fp@\(10\)&,%sp,%acc1 + 2476: aeee 3672 000a macw %d2u,%d3l,>>,%fp@\(10\)&,%sp,%acc2 + 247c: a221 3642 macw %d2u,%d3l,>>,%a1@-,%d1,%acc1 + 2480: a2a1 3652 macw %d2u,%d3l,>>,%a1@-,%d1,%acc2 + 2484: a661 3642 macw %d2u,%d3l,>>,%a1@-,%a3,%acc1 + 2488: a6e1 3652 macw %d2u,%d3l,>>,%a1@-,%a3,%acc2 + 248c: a421 3642 macw %d2u,%d3l,>>,%a1@-,%d2,%acc1 + 2490: a4a1 3652 macw %d2u,%d3l,>>,%a1@-,%d2,%acc2 + 2494: ae61 3642 macw %d2u,%d3l,>>,%a1@-,%sp,%acc1 + 2498: aee1 3652 macw %d2u,%d3l,>>,%a1@-,%sp,%acc2 + 249c: a221 3662 macw %d2u,%d3l,>>,%a1@-&,%d1,%acc1 + 24a0: a2a1 3672 macw %d2u,%d3l,>>,%a1@-&,%d1,%acc2 + 24a4: a661 3662 macw %d2u,%d3l,>>,%a1@-&,%a3,%acc1 + 24a8: a6e1 3672 macw %d2u,%d3l,>>,%a1@-&,%a3,%acc2 + 24ac: a421 3662 macw %d2u,%d3l,>>,%a1@-&,%d2,%acc1 + 24b0: a4a1 3672 macw %d2u,%d3l,>>,%a1@-&,%d2,%acc2 + 24b4: ae61 3662 macw %d2u,%d3l,>>,%a1@-&,%sp,%acc1 + 24b8: aee1 3672 macw %d2u,%d3l,>>,%a1@-&,%sp,%acc2 + 24bc: a213 f0c2 macw %d2u,%a7u,%a3@,%d1,%acc1 + 24c0: a293 f0d2 macw %d2u,%a7u,%a3@,%d1,%acc2 + 24c4: a653 f0c2 macw %d2u,%a7u,%a3@,%a3,%acc1 + 24c8: a6d3 f0d2 macw %d2u,%a7u,%a3@,%a3,%acc2 + 24cc: a413 f0c2 macw %d2u,%a7u,%a3@,%d2,%acc1 + 24d0: a493 f0d2 macw %d2u,%a7u,%a3@,%d2,%acc2 + 24d4: ae53 f0c2 macw %d2u,%a7u,%a3@,%sp,%acc1 + 24d8: aed3 f0d2 macw %d2u,%a7u,%a3@,%sp,%acc2 + 24dc: a213 f0e2 macw %d2u,%a7u,%a3@&,%d1,%acc1 + 24e0: a293 f0f2 macw %d2u,%a7u,%a3@&,%d1,%acc2 + 24e4: a653 f0e2 macw %d2u,%a7u,%a3@&,%a3,%acc1 + 24e8: a6d3 f0f2 macw %d2u,%a7u,%a3@&,%a3,%acc2 + 24ec: a413 f0e2 macw %d2u,%a7u,%a3@&,%d2,%acc1 + 24f0: a493 f0f2 macw %d2u,%a7u,%a3@&,%d2,%acc2 + 24f4: ae53 f0e2 macw %d2u,%a7u,%a3@&,%sp,%acc1 + 24f8: aed3 f0f2 macw %d2u,%a7u,%a3@&,%sp,%acc2 + 24fc: a21a f0c2 macw %d2u,%a7u,%a2@\+,%d1,%acc1 + 2500: a29a f0d2 macw %d2u,%a7u,%a2@\+,%d1,%acc2 + 2504: a65a f0c2 macw %d2u,%a7u,%a2@\+,%a3,%acc1 + 2508: a6da f0d2 macw %d2u,%a7u,%a2@\+,%a3,%acc2 + 250c: a41a f0c2 macw %d2u,%a7u,%a2@\+,%d2,%acc1 + 2510: a49a f0d2 macw %d2u,%a7u,%a2@\+,%d2,%acc2 + 2514: ae5a f0c2 macw %d2u,%a7u,%a2@\+,%sp,%acc1 + 2518: aeda f0d2 macw %d2u,%a7u,%a2@\+,%sp,%acc2 + 251c: a21a f0e2 macw %d2u,%a7u,%a2@\+&,%d1,%acc1 + 2520: a29a f0f2 macw %d2u,%a7u,%a2@\+&,%d1,%acc2 + 2524: a65a f0e2 macw %d2u,%a7u,%a2@\+&,%a3,%acc1 + 2528: a6da f0f2 macw %d2u,%a7u,%a2@\+&,%a3,%acc2 + 252c: a41a f0e2 macw %d2u,%a7u,%a2@\+&,%d2,%acc1 + 2530: a49a f0f2 macw %d2u,%a7u,%a2@\+&,%d2,%acc2 + 2534: ae5a f0e2 macw %d2u,%a7u,%a2@\+&,%sp,%acc1 + 2538: aeda f0f2 macw %d2u,%a7u,%a2@\+&,%sp,%acc2 + 253c: a22e f0c2 000a macw %d2u,%a7u,%fp@\(10\),%d1,%acc1 + 2542: a2ae f0d2 000a macw %d2u,%a7u,%fp@\(10\),%d1,%acc2 + 2548: a66e f0c2 000a macw %d2u,%a7u,%fp@\(10\),%a3,%acc1 + 254e: a6ee f0d2 000a macw %d2u,%a7u,%fp@\(10\),%a3,%acc2 + 2554: a42e f0c2 000a macw %d2u,%a7u,%fp@\(10\),%d2,%acc1 + 255a: a4ae f0d2 000a macw %d2u,%a7u,%fp@\(10\),%d2,%acc2 + 2560: ae6e f0c2 000a macw %d2u,%a7u,%fp@\(10\),%sp,%acc1 + 2566: aeee f0d2 000a macw %d2u,%a7u,%fp@\(10\),%sp,%acc2 + 256c: a22e f0e2 000a macw %d2u,%a7u,%fp@\(10\)&,%d1,%acc1 + 2572: a2ae f0f2 000a macw %d2u,%a7u,%fp@\(10\)&,%d1,%acc2 + 2578: a66e f0e2 000a macw %d2u,%a7u,%fp@\(10\)&,%a3,%acc1 + 257e: a6ee f0f2 000a macw %d2u,%a7u,%fp@\(10\)&,%a3,%acc2 + 2584: a42e f0e2 000a macw %d2u,%a7u,%fp@\(10\)&,%d2,%acc1 + 258a: a4ae f0f2 000a macw %d2u,%a7u,%fp@\(10\)&,%d2,%acc2 + 2590: ae6e f0e2 000a macw %d2u,%a7u,%fp@\(10\)&,%sp,%acc1 + 2596: aeee f0f2 000a macw %d2u,%a7u,%fp@\(10\)&,%sp,%acc2 + 259c: a221 f0c2 macw %d2u,%a7u,%a1@-,%d1,%acc1 + 25a0: a2a1 f0d2 macw %d2u,%a7u,%a1@-,%d1,%acc2 + 25a4: a661 f0c2 macw %d2u,%a7u,%a1@-,%a3,%acc1 + 25a8: a6e1 f0d2 macw %d2u,%a7u,%a1@-,%a3,%acc2 + 25ac: a421 f0c2 macw %d2u,%a7u,%a1@-,%d2,%acc1 + 25b0: a4a1 f0d2 macw %d2u,%a7u,%a1@-,%d2,%acc2 + 25b4: ae61 f0c2 macw %d2u,%a7u,%a1@-,%sp,%acc1 + 25b8: aee1 f0d2 macw %d2u,%a7u,%a1@-,%sp,%acc2 + 25bc: a221 f0e2 macw %d2u,%a7u,%a1@-&,%d1,%acc1 + 25c0: a2a1 f0f2 macw %d2u,%a7u,%a1@-&,%d1,%acc2 + 25c4: a661 f0e2 macw %d2u,%a7u,%a1@-&,%a3,%acc1 + 25c8: a6e1 f0f2 macw %d2u,%a7u,%a1@-&,%a3,%acc2 + 25cc: a421 f0e2 macw %d2u,%a7u,%a1@-&,%d2,%acc1 + 25d0: a4a1 f0f2 macw %d2u,%a7u,%a1@-&,%d2,%acc2 + 25d4: ae61 f0e2 macw %d2u,%a7u,%a1@-&,%sp,%acc1 + 25d8: aee1 f0f2 macw %d2u,%a7u,%a1@-&,%sp,%acc2 + 25dc: a213 f2c2 macw %d2u,%a7u,<<,%a3@,%d1,%acc1 + 25e0: a293 f2d2 macw %d2u,%a7u,<<,%a3@,%d1,%acc2 + 25e4: a653 f2c2 macw %d2u,%a7u,<<,%a3@,%a3,%acc1 + 25e8: a6d3 f2d2 macw %d2u,%a7u,<<,%a3@,%a3,%acc2 + 25ec: a413 f2c2 macw %d2u,%a7u,<<,%a3@,%d2,%acc1 + 25f0: a493 f2d2 macw %d2u,%a7u,<<,%a3@,%d2,%acc2 + 25f4: ae53 f2c2 macw %d2u,%a7u,<<,%a3@,%sp,%acc1 + 25f8: aed3 f2d2 macw %d2u,%a7u,<<,%a3@,%sp,%acc2 + 25fc: a213 f2e2 macw %d2u,%a7u,<<,%a3@&,%d1,%acc1 + 2600: a293 f2f2 macw %d2u,%a7u,<<,%a3@&,%d1,%acc2 + 2604: a653 f2e2 macw %d2u,%a7u,<<,%a3@&,%a3,%acc1 + 2608: a6d3 f2f2 macw %d2u,%a7u,<<,%a3@&,%a3,%acc2 + 260c: a413 f2e2 macw %d2u,%a7u,<<,%a3@&,%d2,%acc1 + 2610: a493 f2f2 macw %d2u,%a7u,<<,%a3@&,%d2,%acc2 + 2614: ae53 f2e2 macw %d2u,%a7u,<<,%a3@&,%sp,%acc1 + 2618: aed3 f2f2 macw %d2u,%a7u,<<,%a3@&,%sp,%acc2 + 261c: a21a f2c2 macw %d2u,%a7u,<<,%a2@\+,%d1,%acc1 + 2620: a29a f2d2 macw %d2u,%a7u,<<,%a2@\+,%d1,%acc2 + 2624: a65a f2c2 macw %d2u,%a7u,<<,%a2@\+,%a3,%acc1 + 2628: a6da f2d2 macw %d2u,%a7u,<<,%a2@\+,%a3,%acc2 + 262c: a41a f2c2 macw %d2u,%a7u,<<,%a2@\+,%d2,%acc1 + 2630: a49a f2d2 macw %d2u,%a7u,<<,%a2@\+,%d2,%acc2 + 2634: ae5a f2c2 macw %d2u,%a7u,<<,%a2@\+,%sp,%acc1 + 2638: aeda f2d2 macw %d2u,%a7u,<<,%a2@\+,%sp,%acc2 + 263c: a21a f2e2 macw %d2u,%a7u,<<,%a2@\+&,%d1,%acc1 + 2640: a29a f2f2 macw %d2u,%a7u,<<,%a2@\+&,%d1,%acc2 + 2644: a65a f2e2 macw %d2u,%a7u,<<,%a2@\+&,%a3,%acc1 + 2648: a6da f2f2 macw %d2u,%a7u,<<,%a2@\+&,%a3,%acc2 + 264c: a41a f2e2 macw %d2u,%a7u,<<,%a2@\+&,%d2,%acc1 + 2650: a49a f2f2 macw %d2u,%a7u,<<,%a2@\+&,%d2,%acc2 + 2654: ae5a f2e2 macw %d2u,%a7u,<<,%a2@\+&,%sp,%acc1 + 2658: aeda f2f2 macw %d2u,%a7u,<<,%a2@\+&,%sp,%acc2 + 265c: a22e f2c2 000a macw %d2u,%a7u,<<,%fp@\(10\),%d1,%acc1 + 2662: a2ae f2d2 000a macw %d2u,%a7u,<<,%fp@\(10\),%d1,%acc2 + 2668: a66e f2c2 000a macw %d2u,%a7u,<<,%fp@\(10\),%a3,%acc1 + 266e: a6ee f2d2 000a macw %d2u,%a7u,<<,%fp@\(10\),%a3,%acc2 + 2674: a42e f2c2 000a macw %d2u,%a7u,<<,%fp@\(10\),%d2,%acc1 + 267a: a4ae f2d2 000a macw %d2u,%a7u,<<,%fp@\(10\),%d2,%acc2 + 2680: ae6e f2c2 000a macw %d2u,%a7u,<<,%fp@\(10\),%sp,%acc1 + 2686: aeee f2d2 000a macw %d2u,%a7u,<<,%fp@\(10\),%sp,%acc2 + 268c: a22e f2e2 000a macw %d2u,%a7u,<<,%fp@\(10\)&,%d1,%acc1 + 2692: a2ae f2f2 000a macw %d2u,%a7u,<<,%fp@\(10\)&,%d1,%acc2 + 2698: a66e f2e2 000a macw %d2u,%a7u,<<,%fp@\(10\)&,%a3,%acc1 + 269e: a6ee f2f2 000a macw %d2u,%a7u,<<,%fp@\(10\)&,%a3,%acc2 + 26a4: a42e f2e2 000a macw %d2u,%a7u,<<,%fp@\(10\)&,%d2,%acc1 + 26aa: a4ae f2f2 000a macw %d2u,%a7u,<<,%fp@\(10\)&,%d2,%acc2 + 26b0: ae6e f2e2 000a macw %d2u,%a7u,<<,%fp@\(10\)&,%sp,%acc1 + 26b6: aeee f2f2 000a macw %d2u,%a7u,<<,%fp@\(10\)&,%sp,%acc2 + 26bc: a221 f2c2 macw %d2u,%a7u,<<,%a1@-,%d1,%acc1 + 26c0: a2a1 f2d2 macw %d2u,%a7u,<<,%a1@-,%d1,%acc2 + 26c4: a661 f2c2 macw %d2u,%a7u,<<,%a1@-,%a3,%acc1 + 26c8: a6e1 f2d2 macw %d2u,%a7u,<<,%a1@-,%a3,%acc2 + 26cc: a421 f2c2 macw %d2u,%a7u,<<,%a1@-,%d2,%acc1 + 26d0: a4a1 f2d2 macw %d2u,%a7u,<<,%a1@-,%d2,%acc2 + 26d4: ae61 f2c2 macw %d2u,%a7u,<<,%a1@-,%sp,%acc1 + 26d8: aee1 f2d2 macw %d2u,%a7u,<<,%a1@-,%sp,%acc2 + 26dc: a221 f2e2 macw %d2u,%a7u,<<,%a1@-&,%d1,%acc1 + 26e0: a2a1 f2f2 macw %d2u,%a7u,<<,%a1@-&,%d1,%acc2 + 26e4: a661 f2e2 macw %d2u,%a7u,<<,%a1@-&,%a3,%acc1 + 26e8: a6e1 f2f2 macw %d2u,%a7u,<<,%a1@-&,%a3,%acc2 + 26ec: a421 f2e2 macw %d2u,%a7u,<<,%a1@-&,%d2,%acc1 + 26f0: a4a1 f2f2 macw %d2u,%a7u,<<,%a1@-&,%d2,%acc2 + 26f4: ae61 f2e2 macw %d2u,%a7u,<<,%a1@-&,%sp,%acc1 + 26f8: aee1 f2f2 macw %d2u,%a7u,<<,%a1@-&,%sp,%acc2 + 26fc: a213 f6c2 macw %d2u,%a7u,>>,%a3@,%d1,%acc1 + 2700: a293 f6d2 macw %d2u,%a7u,>>,%a3@,%d1,%acc2 + 2704: a653 f6c2 macw %d2u,%a7u,>>,%a3@,%a3,%acc1 + 2708: a6d3 f6d2 macw %d2u,%a7u,>>,%a3@,%a3,%acc2 + 270c: a413 f6c2 macw %d2u,%a7u,>>,%a3@,%d2,%acc1 + 2710: a493 f6d2 macw %d2u,%a7u,>>,%a3@,%d2,%acc2 + 2714: ae53 f6c2 macw %d2u,%a7u,>>,%a3@,%sp,%acc1 + 2718: aed3 f6d2 macw %d2u,%a7u,>>,%a3@,%sp,%acc2 + 271c: a213 f6e2 macw %d2u,%a7u,>>,%a3@&,%d1,%acc1 + 2720: a293 f6f2 macw %d2u,%a7u,>>,%a3@&,%d1,%acc2 + 2724: a653 f6e2 macw %d2u,%a7u,>>,%a3@&,%a3,%acc1 + 2728: a6d3 f6f2 macw %d2u,%a7u,>>,%a3@&,%a3,%acc2 + 272c: a413 f6e2 macw %d2u,%a7u,>>,%a3@&,%d2,%acc1 + 2730: a493 f6f2 macw %d2u,%a7u,>>,%a3@&,%d2,%acc2 + 2734: ae53 f6e2 macw %d2u,%a7u,>>,%a3@&,%sp,%acc1 + 2738: aed3 f6f2 macw %d2u,%a7u,>>,%a3@&,%sp,%acc2 + 273c: a21a f6c2 macw %d2u,%a7u,>>,%a2@\+,%d1,%acc1 + 2740: a29a f6d2 macw %d2u,%a7u,>>,%a2@\+,%d1,%acc2 + 2744: a65a f6c2 macw %d2u,%a7u,>>,%a2@\+,%a3,%acc1 + 2748: a6da f6d2 macw %d2u,%a7u,>>,%a2@\+,%a3,%acc2 + 274c: a41a f6c2 macw %d2u,%a7u,>>,%a2@\+,%d2,%acc1 + 2750: a49a f6d2 macw %d2u,%a7u,>>,%a2@\+,%d2,%acc2 + 2754: ae5a f6c2 macw %d2u,%a7u,>>,%a2@\+,%sp,%acc1 + 2758: aeda f6d2 macw %d2u,%a7u,>>,%a2@\+,%sp,%acc2 + 275c: a21a f6e2 macw %d2u,%a7u,>>,%a2@\+&,%d1,%acc1 + 2760: a29a f6f2 macw %d2u,%a7u,>>,%a2@\+&,%d1,%acc2 + 2764: a65a f6e2 macw %d2u,%a7u,>>,%a2@\+&,%a3,%acc1 + 2768: a6da f6f2 macw %d2u,%a7u,>>,%a2@\+&,%a3,%acc2 + 276c: a41a f6e2 macw %d2u,%a7u,>>,%a2@\+&,%d2,%acc1 + 2770: a49a f6f2 macw %d2u,%a7u,>>,%a2@\+&,%d2,%acc2 + 2774: ae5a f6e2 macw %d2u,%a7u,>>,%a2@\+&,%sp,%acc1 + 2778: aeda f6f2 macw %d2u,%a7u,>>,%a2@\+&,%sp,%acc2 + 277c: a22e f6c2 000a macw %d2u,%a7u,>>,%fp@\(10\),%d1,%acc1 + 2782: a2ae f6d2 000a macw %d2u,%a7u,>>,%fp@\(10\),%d1,%acc2 + 2788: a66e f6c2 000a macw %d2u,%a7u,>>,%fp@\(10\),%a3,%acc1 + 278e: a6ee f6d2 000a macw %d2u,%a7u,>>,%fp@\(10\),%a3,%acc2 + 2794: a42e f6c2 000a macw %d2u,%a7u,>>,%fp@\(10\),%d2,%acc1 + 279a: a4ae f6d2 000a macw %d2u,%a7u,>>,%fp@\(10\),%d2,%acc2 + 27a0: ae6e f6c2 000a macw %d2u,%a7u,>>,%fp@\(10\),%sp,%acc1 + 27a6: aeee f6d2 000a macw %d2u,%a7u,>>,%fp@\(10\),%sp,%acc2 + 27ac: a22e f6e2 000a macw %d2u,%a7u,>>,%fp@\(10\)&,%d1,%acc1 + 27b2: a2ae f6f2 000a macw %d2u,%a7u,>>,%fp@\(10\)&,%d1,%acc2 + 27b8: a66e f6e2 000a macw %d2u,%a7u,>>,%fp@\(10\)&,%a3,%acc1 + 27be: a6ee f6f2 000a macw %d2u,%a7u,>>,%fp@\(10\)&,%a3,%acc2 + 27c4: a42e f6e2 000a macw %d2u,%a7u,>>,%fp@\(10\)&,%d2,%acc1 + 27ca: a4ae f6f2 000a macw %d2u,%a7u,>>,%fp@\(10\)&,%d2,%acc2 + 27d0: ae6e f6e2 000a macw %d2u,%a7u,>>,%fp@\(10\)&,%sp,%acc1 + 27d6: aeee f6f2 000a macw %d2u,%a7u,>>,%fp@\(10\)&,%sp,%acc2 + 27dc: a221 f6c2 macw %d2u,%a7u,>>,%a1@-,%d1,%acc1 + 27e0: a2a1 f6d2 macw %d2u,%a7u,>>,%a1@-,%d1,%acc2 + 27e4: a661 f6c2 macw %d2u,%a7u,>>,%a1@-,%a3,%acc1 + 27e8: a6e1 f6d2 macw %d2u,%a7u,>>,%a1@-,%a3,%acc2 + 27ec: a421 f6c2 macw %d2u,%a7u,>>,%a1@-,%d2,%acc1 + 27f0: a4a1 f6d2 macw %d2u,%a7u,>>,%a1@-,%d2,%acc2 + 27f4: ae61 f6c2 macw %d2u,%a7u,>>,%a1@-,%sp,%acc1 + 27f8: aee1 f6d2 macw %d2u,%a7u,>>,%a1@-,%sp,%acc2 + 27fc: a221 f6e2 macw %d2u,%a7u,>>,%a1@-&,%d1,%acc1 + 2800: a2a1 f6f2 macw %d2u,%a7u,>>,%a1@-&,%d1,%acc2 + 2804: a661 f6e2 macw %d2u,%a7u,>>,%a1@-&,%a3,%acc1 + 2808: a6e1 f6f2 macw %d2u,%a7u,>>,%a1@-&,%a3,%acc2 + 280c: a421 f6e2 macw %d2u,%a7u,>>,%a1@-&,%d2,%acc1 + 2810: a4a1 f6f2 macw %d2u,%a7u,>>,%a1@-&,%d2,%acc2 + 2814: ae61 f6e2 macw %d2u,%a7u,>>,%a1@-&,%sp,%acc1 + 2818: aee1 f6f2 macw %d2u,%a7u,>>,%a1@-&,%sp,%acc2 + 281c: a213 f2c2 macw %d2u,%a7u,<<,%a3@,%d1,%acc1 + 2820: a293 f2d2 macw %d2u,%a7u,<<,%a3@,%d1,%acc2 + 2824: a653 f2c2 macw %d2u,%a7u,<<,%a3@,%a3,%acc1 + 2828: a6d3 f2d2 macw %d2u,%a7u,<<,%a3@,%a3,%acc2 + 282c: a413 f2c2 macw %d2u,%a7u,<<,%a3@,%d2,%acc1 + 2830: a493 f2d2 macw %d2u,%a7u,<<,%a3@,%d2,%acc2 + 2834: ae53 f2c2 macw %d2u,%a7u,<<,%a3@,%sp,%acc1 + 2838: aed3 f2d2 macw %d2u,%a7u,<<,%a3@,%sp,%acc2 + 283c: a213 f2e2 macw %d2u,%a7u,<<,%a3@&,%d1,%acc1 + 2840: a293 f2f2 macw %d2u,%a7u,<<,%a3@&,%d1,%acc2 + 2844: a653 f2e2 macw %d2u,%a7u,<<,%a3@&,%a3,%acc1 + 2848: a6d3 f2f2 macw %d2u,%a7u,<<,%a3@&,%a3,%acc2 + 284c: a413 f2e2 macw %d2u,%a7u,<<,%a3@&,%d2,%acc1 + 2850: a493 f2f2 macw %d2u,%a7u,<<,%a3@&,%d2,%acc2 + 2854: ae53 f2e2 macw %d2u,%a7u,<<,%a3@&,%sp,%acc1 + 2858: aed3 f2f2 macw %d2u,%a7u,<<,%a3@&,%sp,%acc2 + 285c: a21a f2c2 macw %d2u,%a7u,<<,%a2@\+,%d1,%acc1 + 2860: a29a f2d2 macw %d2u,%a7u,<<,%a2@\+,%d1,%acc2 + 2864: a65a f2c2 macw %d2u,%a7u,<<,%a2@\+,%a3,%acc1 + 2868: a6da f2d2 macw %d2u,%a7u,<<,%a2@\+,%a3,%acc2 + 286c: a41a f2c2 macw %d2u,%a7u,<<,%a2@\+,%d2,%acc1 + 2870: a49a f2d2 macw %d2u,%a7u,<<,%a2@\+,%d2,%acc2 + 2874: ae5a f2c2 macw %d2u,%a7u,<<,%a2@\+,%sp,%acc1 + 2878: aeda f2d2 macw %d2u,%a7u,<<,%a2@\+,%sp,%acc2 + 287c: a21a f2e2 macw %d2u,%a7u,<<,%a2@\+&,%d1,%acc1 + 2880: a29a f2f2 macw %d2u,%a7u,<<,%a2@\+&,%d1,%acc2 + 2884: a65a f2e2 macw %d2u,%a7u,<<,%a2@\+&,%a3,%acc1 + 2888: a6da f2f2 macw %d2u,%a7u,<<,%a2@\+&,%a3,%acc2 + 288c: a41a f2e2 macw %d2u,%a7u,<<,%a2@\+&,%d2,%acc1 + 2890: a49a f2f2 macw %d2u,%a7u,<<,%a2@\+&,%d2,%acc2 + 2894: ae5a f2e2 macw %d2u,%a7u,<<,%a2@\+&,%sp,%acc1 + 2898: aeda f2f2 macw %d2u,%a7u,<<,%a2@\+&,%sp,%acc2 + 289c: a22e f2c2 000a macw %d2u,%a7u,<<,%fp@\(10\),%d1,%acc1 + 28a2: a2ae f2d2 000a macw %d2u,%a7u,<<,%fp@\(10\),%d1,%acc2 + 28a8: a66e f2c2 000a macw %d2u,%a7u,<<,%fp@\(10\),%a3,%acc1 + 28ae: a6ee f2d2 000a macw %d2u,%a7u,<<,%fp@\(10\),%a3,%acc2 + 28b4: a42e f2c2 000a macw %d2u,%a7u,<<,%fp@\(10\),%d2,%acc1 + 28ba: a4ae f2d2 000a macw %d2u,%a7u,<<,%fp@\(10\),%d2,%acc2 + 28c0: ae6e f2c2 000a macw %d2u,%a7u,<<,%fp@\(10\),%sp,%acc1 + 28c6: aeee f2d2 000a macw %d2u,%a7u,<<,%fp@\(10\),%sp,%acc2 + 28cc: a22e f2e2 000a macw %d2u,%a7u,<<,%fp@\(10\)&,%d1,%acc1 + 28d2: a2ae f2f2 000a macw %d2u,%a7u,<<,%fp@\(10\)&,%d1,%acc2 + 28d8: a66e f2e2 000a macw %d2u,%a7u,<<,%fp@\(10\)&,%a3,%acc1 + 28de: a6ee f2f2 000a macw %d2u,%a7u,<<,%fp@\(10\)&,%a3,%acc2 + 28e4: a42e f2e2 000a macw %d2u,%a7u,<<,%fp@\(10\)&,%d2,%acc1 + 28ea: a4ae f2f2 000a macw %d2u,%a7u,<<,%fp@\(10\)&,%d2,%acc2 + 28f0: ae6e f2e2 000a macw %d2u,%a7u,<<,%fp@\(10\)&,%sp,%acc1 + 28f6: aeee f2f2 000a macw %d2u,%a7u,<<,%fp@\(10\)&,%sp,%acc2 + 28fc: a221 f2c2 macw %d2u,%a7u,<<,%a1@-,%d1,%acc1 + 2900: a2a1 f2d2 macw %d2u,%a7u,<<,%a1@-,%d1,%acc2 + 2904: a661 f2c2 macw %d2u,%a7u,<<,%a1@-,%a3,%acc1 + 2908: a6e1 f2d2 macw %d2u,%a7u,<<,%a1@-,%a3,%acc2 + 290c: a421 f2c2 macw %d2u,%a7u,<<,%a1@-,%d2,%acc1 + 2910: a4a1 f2d2 macw %d2u,%a7u,<<,%a1@-,%d2,%acc2 + 2914: ae61 f2c2 macw %d2u,%a7u,<<,%a1@-,%sp,%acc1 + 2918: aee1 f2d2 macw %d2u,%a7u,<<,%a1@-,%sp,%acc2 + 291c: a221 f2e2 macw %d2u,%a7u,<<,%a1@-&,%d1,%acc1 + 2920: a2a1 f2f2 macw %d2u,%a7u,<<,%a1@-&,%d1,%acc2 + 2924: a661 f2e2 macw %d2u,%a7u,<<,%a1@-&,%a3,%acc1 + 2928: a6e1 f2f2 macw %d2u,%a7u,<<,%a1@-&,%a3,%acc2 + 292c: a421 f2e2 macw %d2u,%a7u,<<,%a1@-&,%d2,%acc1 + 2930: a4a1 f2f2 macw %d2u,%a7u,<<,%a1@-&,%d2,%acc2 + 2934: ae61 f2e2 macw %d2u,%a7u,<<,%a1@-&,%sp,%acc1 + 2938: aee1 f2f2 macw %d2u,%a7u,<<,%a1@-&,%sp,%acc2 + 293c: a213 f6c2 macw %d2u,%a7u,>>,%a3@,%d1,%acc1 + 2940: a293 f6d2 macw %d2u,%a7u,>>,%a3@,%d1,%acc2 + 2944: a653 f6c2 macw %d2u,%a7u,>>,%a3@,%a3,%acc1 + 2948: a6d3 f6d2 macw %d2u,%a7u,>>,%a3@,%a3,%acc2 + 294c: a413 f6c2 macw %d2u,%a7u,>>,%a3@,%d2,%acc1 + 2950: a493 f6d2 macw %d2u,%a7u,>>,%a3@,%d2,%acc2 + 2954: ae53 f6c2 macw %d2u,%a7u,>>,%a3@,%sp,%acc1 + 2958: aed3 f6d2 macw %d2u,%a7u,>>,%a3@,%sp,%acc2 + 295c: a213 f6e2 macw %d2u,%a7u,>>,%a3@&,%d1,%acc1 + 2960: a293 f6f2 macw %d2u,%a7u,>>,%a3@&,%d1,%acc2 + 2964: a653 f6e2 macw %d2u,%a7u,>>,%a3@&,%a3,%acc1 + 2968: a6d3 f6f2 macw %d2u,%a7u,>>,%a3@&,%a3,%acc2 + 296c: a413 f6e2 macw %d2u,%a7u,>>,%a3@&,%d2,%acc1 + 2970: a493 f6f2 macw %d2u,%a7u,>>,%a3@&,%d2,%acc2 + 2974: ae53 f6e2 macw %d2u,%a7u,>>,%a3@&,%sp,%acc1 + 2978: aed3 f6f2 macw %d2u,%a7u,>>,%a3@&,%sp,%acc2 + 297c: a21a f6c2 macw %d2u,%a7u,>>,%a2@\+,%d1,%acc1 + 2980: a29a f6d2 macw %d2u,%a7u,>>,%a2@\+,%d1,%acc2 + 2984: a65a f6c2 macw %d2u,%a7u,>>,%a2@\+,%a3,%acc1 + 2988: a6da f6d2 macw %d2u,%a7u,>>,%a2@\+,%a3,%acc2 + 298c: a41a f6c2 macw %d2u,%a7u,>>,%a2@\+,%d2,%acc1 + 2990: a49a f6d2 macw %d2u,%a7u,>>,%a2@\+,%d2,%acc2 + 2994: ae5a f6c2 macw %d2u,%a7u,>>,%a2@\+,%sp,%acc1 + 2998: aeda f6d2 macw %d2u,%a7u,>>,%a2@\+,%sp,%acc2 + 299c: a21a f6e2 macw %d2u,%a7u,>>,%a2@\+&,%d1,%acc1 + 29a0: a29a f6f2 macw %d2u,%a7u,>>,%a2@\+&,%d1,%acc2 + 29a4: a65a f6e2 macw %d2u,%a7u,>>,%a2@\+&,%a3,%acc1 + 29a8: a6da f6f2 macw %d2u,%a7u,>>,%a2@\+&,%a3,%acc2 + 29ac: a41a f6e2 macw %d2u,%a7u,>>,%a2@\+&,%d2,%acc1 + 29b0: a49a f6f2 macw %d2u,%a7u,>>,%a2@\+&,%d2,%acc2 + 29b4: ae5a f6e2 macw %d2u,%a7u,>>,%a2@\+&,%sp,%acc1 + 29b8: aeda f6f2 macw %d2u,%a7u,>>,%a2@\+&,%sp,%acc2 + 29bc: a22e f6c2 000a macw %d2u,%a7u,>>,%fp@\(10\),%d1,%acc1 + 29c2: a2ae f6d2 000a macw %d2u,%a7u,>>,%fp@\(10\),%d1,%acc2 + 29c8: a66e f6c2 000a macw %d2u,%a7u,>>,%fp@\(10\),%a3,%acc1 + 29ce: a6ee f6d2 000a macw %d2u,%a7u,>>,%fp@\(10\),%a3,%acc2 + 29d4: a42e f6c2 000a macw %d2u,%a7u,>>,%fp@\(10\),%d2,%acc1 + 29da: a4ae f6d2 000a macw %d2u,%a7u,>>,%fp@\(10\),%d2,%acc2 + 29e0: ae6e f6c2 000a macw %d2u,%a7u,>>,%fp@\(10\),%sp,%acc1 + 29e6: aeee f6d2 000a macw %d2u,%a7u,>>,%fp@\(10\),%sp,%acc2 + 29ec: a22e f6e2 000a macw %d2u,%a7u,>>,%fp@\(10\)&,%d1,%acc1 + 29f2: a2ae f6f2 000a macw %d2u,%a7u,>>,%fp@\(10\)&,%d1,%acc2 + 29f8: a66e f6e2 000a macw %d2u,%a7u,>>,%fp@\(10\)&,%a3,%acc1 + 29fe: a6ee f6f2 000a macw %d2u,%a7u,>>,%fp@\(10\)&,%a3,%acc2 + 2a04: a42e f6e2 000a macw %d2u,%a7u,>>,%fp@\(10\)&,%d2,%acc1 + 2a0a: a4ae f6f2 000a macw %d2u,%a7u,>>,%fp@\(10\)&,%d2,%acc2 + 2a10: ae6e f6e2 000a macw %d2u,%a7u,>>,%fp@\(10\)&,%sp,%acc1 + 2a16: aeee f6f2 000a macw %d2u,%a7u,>>,%fp@\(10\)&,%sp,%acc2 + 2a1c: a221 f6c2 macw %d2u,%a7u,>>,%a1@-,%d1,%acc1 + 2a20: a2a1 f6d2 macw %d2u,%a7u,>>,%a1@-,%d1,%acc2 + 2a24: a661 f6c2 macw %d2u,%a7u,>>,%a1@-,%a3,%acc1 + 2a28: a6e1 f6d2 macw %d2u,%a7u,>>,%a1@-,%a3,%acc2 + 2a2c: a421 f6c2 macw %d2u,%a7u,>>,%a1@-,%d2,%acc1 + 2a30: a4a1 f6d2 macw %d2u,%a7u,>>,%a1@-,%d2,%acc2 + 2a34: ae61 f6c2 macw %d2u,%a7u,>>,%a1@-,%sp,%acc1 + 2a38: aee1 f6d2 macw %d2u,%a7u,>>,%a1@-,%sp,%acc2 + 2a3c: a221 f6e2 macw %d2u,%a7u,>>,%a1@-&,%d1,%acc1 + 2a40: a2a1 f6f2 macw %d2u,%a7u,>>,%a1@-&,%d1,%acc2 + 2a44: a661 f6e2 macw %d2u,%a7u,>>,%a1@-&,%a3,%acc1 + 2a48: a6e1 f6f2 macw %d2u,%a7u,>>,%a1@-&,%a3,%acc2 + 2a4c: a421 f6e2 macw %d2u,%a7u,>>,%a1@-&,%d2,%acc1 + 2a50: a4a1 f6f2 macw %d2u,%a7u,>>,%a1@-&,%d2,%acc2 + 2a54: ae61 f6e2 macw %d2u,%a7u,>>,%a1@-&,%sp,%acc1 + 2a58: aee1 f6f2 macw %d2u,%a7u,>>,%a1@-&,%sp,%acc2 + 2a5c: a213 1042 macw %d2u,%d1l,%a3@,%d1,%acc1 + 2a60: a293 1052 macw %d2u,%d1l,%a3@,%d1,%acc2 + 2a64: a653 1042 macw %d2u,%d1l,%a3@,%a3,%acc1 + 2a68: a6d3 1052 macw %d2u,%d1l,%a3@,%a3,%acc2 + 2a6c: a413 1042 macw %d2u,%d1l,%a3@,%d2,%acc1 + 2a70: a493 1052 macw %d2u,%d1l,%a3@,%d2,%acc2 + 2a74: ae53 1042 macw %d2u,%d1l,%a3@,%sp,%acc1 + 2a78: aed3 1052 macw %d2u,%d1l,%a3@,%sp,%acc2 + 2a7c: a213 1062 macw %d2u,%d1l,%a3@&,%d1,%acc1 + 2a80: a293 1072 macw %d2u,%d1l,%a3@&,%d1,%acc2 + 2a84: a653 1062 macw %d2u,%d1l,%a3@&,%a3,%acc1 + 2a88: a6d3 1072 macw %d2u,%d1l,%a3@&,%a3,%acc2 + 2a8c: a413 1062 macw %d2u,%d1l,%a3@&,%d2,%acc1 + 2a90: a493 1072 macw %d2u,%d1l,%a3@&,%d2,%acc2 + 2a94: ae53 1062 macw %d2u,%d1l,%a3@&,%sp,%acc1 + 2a98: aed3 1072 macw %d2u,%d1l,%a3@&,%sp,%acc2 + 2a9c: a21a 1042 macw %d2u,%d1l,%a2@\+,%d1,%acc1 + 2aa0: a29a 1052 macw %d2u,%d1l,%a2@\+,%d1,%acc2 + 2aa4: a65a 1042 macw %d2u,%d1l,%a2@\+,%a3,%acc1 + 2aa8: a6da 1052 macw %d2u,%d1l,%a2@\+,%a3,%acc2 + 2aac: a41a 1042 macw %d2u,%d1l,%a2@\+,%d2,%acc1 + 2ab0: a49a 1052 macw %d2u,%d1l,%a2@\+,%d2,%acc2 + 2ab4: ae5a 1042 macw %d2u,%d1l,%a2@\+,%sp,%acc1 + 2ab8: aeda 1052 macw %d2u,%d1l,%a2@\+,%sp,%acc2 + 2abc: a21a 1062 macw %d2u,%d1l,%a2@\+&,%d1,%acc1 + 2ac0: a29a 1072 macw %d2u,%d1l,%a2@\+&,%d1,%acc2 + 2ac4: a65a 1062 macw %d2u,%d1l,%a2@\+&,%a3,%acc1 + 2ac8: a6da 1072 macw %d2u,%d1l,%a2@\+&,%a3,%acc2 + 2acc: a41a 1062 macw %d2u,%d1l,%a2@\+&,%d2,%acc1 + 2ad0: a49a 1072 macw %d2u,%d1l,%a2@\+&,%d2,%acc2 + 2ad4: ae5a 1062 macw %d2u,%d1l,%a2@\+&,%sp,%acc1 + 2ad8: aeda 1072 macw %d2u,%d1l,%a2@\+&,%sp,%acc2 + 2adc: a22e 1042 000a macw %d2u,%d1l,%fp@\(10\),%d1,%acc1 + 2ae2: a2ae 1052 000a macw %d2u,%d1l,%fp@\(10\),%d1,%acc2 + 2ae8: a66e 1042 000a macw %d2u,%d1l,%fp@\(10\),%a3,%acc1 + 2aee: a6ee 1052 000a macw %d2u,%d1l,%fp@\(10\),%a3,%acc2 + 2af4: a42e 1042 000a macw %d2u,%d1l,%fp@\(10\),%d2,%acc1 + 2afa: a4ae 1052 000a macw %d2u,%d1l,%fp@\(10\),%d2,%acc2 + 2b00: ae6e 1042 000a macw %d2u,%d1l,%fp@\(10\),%sp,%acc1 + 2b06: aeee 1052 000a macw %d2u,%d1l,%fp@\(10\),%sp,%acc2 + 2b0c: a22e 1062 000a macw %d2u,%d1l,%fp@\(10\)&,%d1,%acc1 + 2b12: a2ae 1072 000a macw %d2u,%d1l,%fp@\(10\)&,%d1,%acc2 + 2b18: a66e 1062 000a macw %d2u,%d1l,%fp@\(10\)&,%a3,%acc1 + 2b1e: a6ee 1072 000a macw %d2u,%d1l,%fp@\(10\)&,%a3,%acc2 + 2b24: a42e 1062 000a macw %d2u,%d1l,%fp@\(10\)&,%d2,%acc1 + 2b2a: a4ae 1072 000a macw %d2u,%d1l,%fp@\(10\)&,%d2,%acc2 + 2b30: ae6e 1062 000a macw %d2u,%d1l,%fp@\(10\)&,%sp,%acc1 + 2b36: aeee 1072 000a macw %d2u,%d1l,%fp@\(10\)&,%sp,%acc2 + 2b3c: a221 1042 macw %d2u,%d1l,%a1@-,%d1,%acc1 + 2b40: a2a1 1052 macw %d2u,%d1l,%a1@-,%d1,%acc2 + 2b44: a661 1042 macw %d2u,%d1l,%a1@-,%a3,%acc1 + 2b48: a6e1 1052 macw %d2u,%d1l,%a1@-,%a3,%acc2 + 2b4c: a421 1042 macw %d2u,%d1l,%a1@-,%d2,%acc1 + 2b50: a4a1 1052 macw %d2u,%d1l,%a1@-,%d2,%acc2 + 2b54: ae61 1042 macw %d2u,%d1l,%a1@-,%sp,%acc1 + 2b58: aee1 1052 macw %d2u,%d1l,%a1@-,%sp,%acc2 + 2b5c: a221 1062 macw %d2u,%d1l,%a1@-&,%d1,%acc1 + 2b60: a2a1 1072 macw %d2u,%d1l,%a1@-&,%d1,%acc2 + 2b64: a661 1062 macw %d2u,%d1l,%a1@-&,%a3,%acc1 + 2b68: a6e1 1072 macw %d2u,%d1l,%a1@-&,%a3,%acc2 + 2b6c: a421 1062 macw %d2u,%d1l,%a1@-&,%d2,%acc1 + 2b70: a4a1 1072 macw %d2u,%d1l,%a1@-&,%d2,%acc2 + 2b74: ae61 1062 macw %d2u,%d1l,%a1@-&,%sp,%acc1 + 2b78: aee1 1072 macw %d2u,%d1l,%a1@-&,%sp,%acc2 + 2b7c: a213 1242 macw %d2u,%d1l,<<,%a3@,%d1,%acc1 + 2b80: a293 1252 macw %d2u,%d1l,<<,%a3@,%d1,%acc2 + 2b84: a653 1242 macw %d2u,%d1l,<<,%a3@,%a3,%acc1 + 2b88: a6d3 1252 macw %d2u,%d1l,<<,%a3@,%a3,%acc2 + 2b8c: a413 1242 macw %d2u,%d1l,<<,%a3@,%d2,%acc1 + 2b90: a493 1252 macw %d2u,%d1l,<<,%a3@,%d2,%acc2 + 2b94: ae53 1242 macw %d2u,%d1l,<<,%a3@,%sp,%acc1 + 2b98: aed3 1252 macw %d2u,%d1l,<<,%a3@,%sp,%acc2 + 2b9c: a213 1262 macw %d2u,%d1l,<<,%a3@&,%d1,%acc1 + 2ba0: a293 1272 macw %d2u,%d1l,<<,%a3@&,%d1,%acc2 + 2ba4: a653 1262 macw %d2u,%d1l,<<,%a3@&,%a3,%acc1 + 2ba8: a6d3 1272 macw %d2u,%d1l,<<,%a3@&,%a3,%acc2 + 2bac: a413 1262 macw %d2u,%d1l,<<,%a3@&,%d2,%acc1 + 2bb0: a493 1272 macw %d2u,%d1l,<<,%a3@&,%d2,%acc2 + 2bb4: ae53 1262 macw %d2u,%d1l,<<,%a3@&,%sp,%acc1 + 2bb8: aed3 1272 macw %d2u,%d1l,<<,%a3@&,%sp,%acc2 + 2bbc: a21a 1242 macw %d2u,%d1l,<<,%a2@\+,%d1,%acc1 + 2bc0: a29a 1252 macw %d2u,%d1l,<<,%a2@\+,%d1,%acc2 + 2bc4: a65a 1242 macw %d2u,%d1l,<<,%a2@\+,%a3,%acc1 + 2bc8: a6da 1252 macw %d2u,%d1l,<<,%a2@\+,%a3,%acc2 + 2bcc: a41a 1242 macw %d2u,%d1l,<<,%a2@\+,%d2,%acc1 + 2bd0: a49a 1252 macw %d2u,%d1l,<<,%a2@\+,%d2,%acc2 + 2bd4: ae5a 1242 macw %d2u,%d1l,<<,%a2@\+,%sp,%acc1 + 2bd8: aeda 1252 macw %d2u,%d1l,<<,%a2@\+,%sp,%acc2 + 2bdc: a21a 1262 macw %d2u,%d1l,<<,%a2@\+&,%d1,%acc1 + 2be0: a29a 1272 macw %d2u,%d1l,<<,%a2@\+&,%d1,%acc2 + 2be4: a65a 1262 macw %d2u,%d1l,<<,%a2@\+&,%a3,%acc1 + 2be8: a6da 1272 macw %d2u,%d1l,<<,%a2@\+&,%a3,%acc2 + 2bec: a41a 1262 macw %d2u,%d1l,<<,%a2@\+&,%d2,%acc1 + 2bf0: a49a 1272 macw %d2u,%d1l,<<,%a2@\+&,%d2,%acc2 + 2bf4: ae5a 1262 macw %d2u,%d1l,<<,%a2@\+&,%sp,%acc1 + 2bf8: aeda 1272 macw %d2u,%d1l,<<,%a2@\+&,%sp,%acc2 + 2bfc: a22e 1242 000a macw %d2u,%d1l,<<,%fp@\(10\),%d1,%acc1 + 2c02: a2ae 1252 000a macw %d2u,%d1l,<<,%fp@\(10\),%d1,%acc2 + 2c08: a66e 1242 000a macw %d2u,%d1l,<<,%fp@\(10\),%a3,%acc1 + 2c0e: a6ee 1252 000a macw %d2u,%d1l,<<,%fp@\(10\),%a3,%acc2 + 2c14: a42e 1242 000a macw %d2u,%d1l,<<,%fp@\(10\),%d2,%acc1 + 2c1a: a4ae 1252 000a macw %d2u,%d1l,<<,%fp@\(10\),%d2,%acc2 + 2c20: ae6e 1242 000a macw %d2u,%d1l,<<,%fp@\(10\),%sp,%acc1 + 2c26: aeee 1252 000a macw %d2u,%d1l,<<,%fp@\(10\),%sp,%acc2 + 2c2c: a22e 1262 000a macw %d2u,%d1l,<<,%fp@\(10\)&,%d1,%acc1 + 2c32: a2ae 1272 000a macw %d2u,%d1l,<<,%fp@\(10\)&,%d1,%acc2 + 2c38: a66e 1262 000a macw %d2u,%d1l,<<,%fp@\(10\)&,%a3,%acc1 + 2c3e: a6ee 1272 000a macw %d2u,%d1l,<<,%fp@\(10\)&,%a3,%acc2 + 2c44: a42e 1262 000a macw %d2u,%d1l,<<,%fp@\(10\)&,%d2,%acc1 + 2c4a: a4ae 1272 000a macw %d2u,%d1l,<<,%fp@\(10\)&,%d2,%acc2 + 2c50: ae6e 1262 000a macw %d2u,%d1l,<<,%fp@\(10\)&,%sp,%acc1 + 2c56: aeee 1272 000a macw %d2u,%d1l,<<,%fp@\(10\)&,%sp,%acc2 + 2c5c: a221 1242 macw %d2u,%d1l,<<,%a1@-,%d1,%acc1 + 2c60: a2a1 1252 macw %d2u,%d1l,<<,%a1@-,%d1,%acc2 + 2c64: a661 1242 macw %d2u,%d1l,<<,%a1@-,%a3,%acc1 + 2c68: a6e1 1252 macw %d2u,%d1l,<<,%a1@-,%a3,%acc2 + 2c6c: a421 1242 macw %d2u,%d1l,<<,%a1@-,%d2,%acc1 + 2c70: a4a1 1252 macw %d2u,%d1l,<<,%a1@-,%d2,%acc2 + 2c74: ae61 1242 macw %d2u,%d1l,<<,%a1@-,%sp,%acc1 + 2c78: aee1 1252 macw %d2u,%d1l,<<,%a1@-,%sp,%acc2 + 2c7c: a221 1262 macw %d2u,%d1l,<<,%a1@-&,%d1,%acc1 + 2c80: a2a1 1272 macw %d2u,%d1l,<<,%a1@-&,%d1,%acc2 + 2c84: a661 1262 macw %d2u,%d1l,<<,%a1@-&,%a3,%acc1 + 2c88: a6e1 1272 macw %d2u,%d1l,<<,%a1@-&,%a3,%acc2 + 2c8c: a421 1262 macw %d2u,%d1l,<<,%a1@-&,%d2,%acc1 + 2c90: a4a1 1272 macw %d2u,%d1l,<<,%a1@-&,%d2,%acc2 + 2c94: ae61 1262 macw %d2u,%d1l,<<,%a1@-&,%sp,%acc1 + 2c98: aee1 1272 macw %d2u,%d1l,<<,%a1@-&,%sp,%acc2 + 2c9c: a213 1642 macw %d2u,%d1l,>>,%a3@,%d1,%acc1 + 2ca0: a293 1652 macw %d2u,%d1l,>>,%a3@,%d1,%acc2 + 2ca4: a653 1642 macw %d2u,%d1l,>>,%a3@,%a3,%acc1 + 2ca8: a6d3 1652 macw %d2u,%d1l,>>,%a3@,%a3,%acc2 + 2cac: a413 1642 macw %d2u,%d1l,>>,%a3@,%d2,%acc1 + 2cb0: a493 1652 macw %d2u,%d1l,>>,%a3@,%d2,%acc2 + 2cb4: ae53 1642 macw %d2u,%d1l,>>,%a3@,%sp,%acc1 + 2cb8: aed3 1652 macw %d2u,%d1l,>>,%a3@,%sp,%acc2 + 2cbc: a213 1662 macw %d2u,%d1l,>>,%a3@&,%d1,%acc1 + 2cc0: a293 1672 macw %d2u,%d1l,>>,%a3@&,%d1,%acc2 + 2cc4: a653 1662 macw %d2u,%d1l,>>,%a3@&,%a3,%acc1 + 2cc8: a6d3 1672 macw %d2u,%d1l,>>,%a3@&,%a3,%acc2 + 2ccc: a413 1662 macw %d2u,%d1l,>>,%a3@&,%d2,%acc1 + 2cd0: a493 1672 macw %d2u,%d1l,>>,%a3@&,%d2,%acc2 + 2cd4: ae53 1662 macw %d2u,%d1l,>>,%a3@&,%sp,%acc1 + 2cd8: aed3 1672 macw %d2u,%d1l,>>,%a3@&,%sp,%acc2 + 2cdc: a21a 1642 macw %d2u,%d1l,>>,%a2@\+,%d1,%acc1 + 2ce0: a29a 1652 macw %d2u,%d1l,>>,%a2@\+,%d1,%acc2 + 2ce4: a65a 1642 macw %d2u,%d1l,>>,%a2@\+,%a3,%acc1 + 2ce8: a6da 1652 macw %d2u,%d1l,>>,%a2@\+,%a3,%acc2 + 2cec: a41a 1642 macw %d2u,%d1l,>>,%a2@\+,%d2,%acc1 + 2cf0: a49a 1652 macw %d2u,%d1l,>>,%a2@\+,%d2,%acc2 + 2cf4: ae5a 1642 macw %d2u,%d1l,>>,%a2@\+,%sp,%acc1 + 2cf8: aeda 1652 macw %d2u,%d1l,>>,%a2@\+,%sp,%acc2 + 2cfc: a21a 1662 macw %d2u,%d1l,>>,%a2@\+&,%d1,%acc1 + 2d00: a29a 1672 macw %d2u,%d1l,>>,%a2@\+&,%d1,%acc2 + 2d04: a65a 1662 macw %d2u,%d1l,>>,%a2@\+&,%a3,%acc1 + 2d08: a6da 1672 macw %d2u,%d1l,>>,%a2@\+&,%a3,%acc2 + 2d0c: a41a 1662 macw %d2u,%d1l,>>,%a2@\+&,%d2,%acc1 + 2d10: a49a 1672 macw %d2u,%d1l,>>,%a2@\+&,%d2,%acc2 + 2d14: ae5a 1662 macw %d2u,%d1l,>>,%a2@\+&,%sp,%acc1 + 2d18: aeda 1672 macw %d2u,%d1l,>>,%a2@\+&,%sp,%acc2 + 2d1c: a22e 1642 000a macw %d2u,%d1l,>>,%fp@\(10\),%d1,%acc1 + 2d22: a2ae 1652 000a macw %d2u,%d1l,>>,%fp@\(10\),%d1,%acc2 + 2d28: a66e 1642 000a macw %d2u,%d1l,>>,%fp@\(10\),%a3,%acc1 + 2d2e: a6ee 1652 000a macw %d2u,%d1l,>>,%fp@\(10\),%a3,%acc2 + 2d34: a42e 1642 000a macw %d2u,%d1l,>>,%fp@\(10\),%d2,%acc1 + 2d3a: a4ae 1652 000a macw %d2u,%d1l,>>,%fp@\(10\),%d2,%acc2 + 2d40: ae6e 1642 000a macw %d2u,%d1l,>>,%fp@\(10\),%sp,%acc1 + 2d46: aeee 1652 000a macw %d2u,%d1l,>>,%fp@\(10\),%sp,%acc2 + 2d4c: a22e 1662 000a macw %d2u,%d1l,>>,%fp@\(10\)&,%d1,%acc1 + 2d52: a2ae 1672 000a macw %d2u,%d1l,>>,%fp@\(10\)&,%d1,%acc2 + 2d58: a66e 1662 000a macw %d2u,%d1l,>>,%fp@\(10\)&,%a3,%acc1 + 2d5e: a6ee 1672 000a macw %d2u,%d1l,>>,%fp@\(10\)&,%a3,%acc2 + 2d64: a42e 1662 000a macw %d2u,%d1l,>>,%fp@\(10\)&,%d2,%acc1 + 2d6a: a4ae 1672 000a macw %d2u,%d1l,>>,%fp@\(10\)&,%d2,%acc2 + 2d70: ae6e 1662 000a macw %d2u,%d1l,>>,%fp@\(10\)&,%sp,%acc1 + 2d76: aeee 1672 000a macw %d2u,%d1l,>>,%fp@\(10\)&,%sp,%acc2 + 2d7c: a221 1642 macw %d2u,%d1l,>>,%a1@-,%d1,%acc1 + 2d80: a2a1 1652 macw %d2u,%d1l,>>,%a1@-,%d1,%acc2 + 2d84: a661 1642 macw %d2u,%d1l,>>,%a1@-,%a3,%acc1 + 2d88: a6e1 1652 macw %d2u,%d1l,>>,%a1@-,%a3,%acc2 + 2d8c: a421 1642 macw %d2u,%d1l,>>,%a1@-,%d2,%acc1 + 2d90: a4a1 1652 macw %d2u,%d1l,>>,%a1@-,%d2,%acc2 + 2d94: ae61 1642 macw %d2u,%d1l,>>,%a1@-,%sp,%acc1 + 2d98: aee1 1652 macw %d2u,%d1l,>>,%a1@-,%sp,%acc2 + 2d9c: a221 1662 macw %d2u,%d1l,>>,%a1@-&,%d1,%acc1 + 2da0: a2a1 1672 macw %d2u,%d1l,>>,%a1@-&,%d1,%acc2 + 2da4: a661 1662 macw %d2u,%d1l,>>,%a1@-&,%a3,%acc1 + 2da8: a6e1 1672 macw %d2u,%d1l,>>,%a1@-&,%a3,%acc2 + 2dac: a421 1662 macw %d2u,%d1l,>>,%a1@-&,%d2,%acc1 + 2db0: a4a1 1672 macw %d2u,%d1l,>>,%a1@-&,%d2,%acc2 + 2db4: ae61 1662 macw %d2u,%d1l,>>,%a1@-&,%sp,%acc1 + 2db8: aee1 1672 macw %d2u,%d1l,>>,%a1@-&,%sp,%acc2 + 2dbc: a213 1242 macw %d2u,%d1l,<<,%a3@,%d1,%acc1 + 2dc0: a293 1252 macw %d2u,%d1l,<<,%a3@,%d1,%acc2 + 2dc4: a653 1242 macw %d2u,%d1l,<<,%a3@,%a3,%acc1 + 2dc8: a6d3 1252 macw %d2u,%d1l,<<,%a3@,%a3,%acc2 + 2dcc: a413 1242 macw %d2u,%d1l,<<,%a3@,%d2,%acc1 + 2dd0: a493 1252 macw %d2u,%d1l,<<,%a3@,%d2,%acc2 + 2dd4: ae53 1242 macw %d2u,%d1l,<<,%a3@,%sp,%acc1 + 2dd8: aed3 1252 macw %d2u,%d1l,<<,%a3@,%sp,%acc2 + 2ddc: a213 1262 macw %d2u,%d1l,<<,%a3@&,%d1,%acc1 + 2de0: a293 1272 macw %d2u,%d1l,<<,%a3@&,%d1,%acc2 + 2de4: a653 1262 macw %d2u,%d1l,<<,%a3@&,%a3,%acc1 + 2de8: a6d3 1272 macw %d2u,%d1l,<<,%a3@&,%a3,%acc2 + 2dec: a413 1262 macw %d2u,%d1l,<<,%a3@&,%d2,%acc1 + 2df0: a493 1272 macw %d2u,%d1l,<<,%a3@&,%d2,%acc2 + 2df4: ae53 1262 macw %d2u,%d1l,<<,%a3@&,%sp,%acc1 + 2df8: aed3 1272 macw %d2u,%d1l,<<,%a3@&,%sp,%acc2 + 2dfc: a21a 1242 macw %d2u,%d1l,<<,%a2@\+,%d1,%acc1 + 2e00: a29a 1252 macw %d2u,%d1l,<<,%a2@\+,%d1,%acc2 + 2e04: a65a 1242 macw %d2u,%d1l,<<,%a2@\+,%a3,%acc1 + 2e08: a6da 1252 macw %d2u,%d1l,<<,%a2@\+,%a3,%acc2 + 2e0c: a41a 1242 macw %d2u,%d1l,<<,%a2@\+,%d2,%acc1 + 2e10: a49a 1252 macw %d2u,%d1l,<<,%a2@\+,%d2,%acc2 + 2e14: ae5a 1242 macw %d2u,%d1l,<<,%a2@\+,%sp,%acc1 + 2e18: aeda 1252 macw %d2u,%d1l,<<,%a2@\+,%sp,%acc2 + 2e1c: a21a 1262 macw %d2u,%d1l,<<,%a2@\+&,%d1,%acc1 + 2e20: a29a 1272 macw %d2u,%d1l,<<,%a2@\+&,%d1,%acc2 + 2e24: a65a 1262 macw %d2u,%d1l,<<,%a2@\+&,%a3,%acc1 + 2e28: a6da 1272 macw %d2u,%d1l,<<,%a2@\+&,%a3,%acc2 + 2e2c: a41a 1262 macw %d2u,%d1l,<<,%a2@\+&,%d2,%acc1 + 2e30: a49a 1272 macw %d2u,%d1l,<<,%a2@\+&,%d2,%acc2 + 2e34: ae5a 1262 macw %d2u,%d1l,<<,%a2@\+&,%sp,%acc1 + 2e38: aeda 1272 macw %d2u,%d1l,<<,%a2@\+&,%sp,%acc2 + 2e3c: a22e 1242 000a macw %d2u,%d1l,<<,%fp@\(10\),%d1,%acc1 + 2e42: a2ae 1252 000a macw %d2u,%d1l,<<,%fp@\(10\),%d1,%acc2 + 2e48: a66e 1242 000a macw %d2u,%d1l,<<,%fp@\(10\),%a3,%acc1 + 2e4e: a6ee 1252 000a macw %d2u,%d1l,<<,%fp@\(10\),%a3,%acc2 + 2e54: a42e 1242 000a macw %d2u,%d1l,<<,%fp@\(10\),%d2,%acc1 + 2e5a: a4ae 1252 000a macw %d2u,%d1l,<<,%fp@\(10\),%d2,%acc2 + 2e60: ae6e 1242 000a macw %d2u,%d1l,<<,%fp@\(10\),%sp,%acc1 + 2e66: aeee 1252 000a macw %d2u,%d1l,<<,%fp@\(10\),%sp,%acc2 + 2e6c: a22e 1262 000a macw %d2u,%d1l,<<,%fp@\(10\)&,%d1,%acc1 + 2e72: a2ae 1272 000a macw %d2u,%d1l,<<,%fp@\(10\)&,%d1,%acc2 + 2e78: a66e 1262 000a macw %d2u,%d1l,<<,%fp@\(10\)&,%a3,%acc1 + 2e7e: a6ee 1272 000a macw %d2u,%d1l,<<,%fp@\(10\)&,%a3,%acc2 + 2e84: a42e 1262 000a macw %d2u,%d1l,<<,%fp@\(10\)&,%d2,%acc1 + 2e8a: a4ae 1272 000a macw %d2u,%d1l,<<,%fp@\(10\)&,%d2,%acc2 + 2e90: ae6e 1262 000a macw %d2u,%d1l,<<,%fp@\(10\)&,%sp,%acc1 + 2e96: aeee 1272 000a macw %d2u,%d1l,<<,%fp@\(10\)&,%sp,%acc2 + 2e9c: a221 1242 macw %d2u,%d1l,<<,%a1@-,%d1,%acc1 + 2ea0: a2a1 1252 macw %d2u,%d1l,<<,%a1@-,%d1,%acc2 + 2ea4: a661 1242 macw %d2u,%d1l,<<,%a1@-,%a3,%acc1 + 2ea8: a6e1 1252 macw %d2u,%d1l,<<,%a1@-,%a3,%acc2 + 2eac: a421 1242 macw %d2u,%d1l,<<,%a1@-,%d2,%acc1 + 2eb0: a4a1 1252 macw %d2u,%d1l,<<,%a1@-,%d2,%acc2 + 2eb4: ae61 1242 macw %d2u,%d1l,<<,%a1@-,%sp,%acc1 + 2eb8: aee1 1252 macw %d2u,%d1l,<<,%a1@-,%sp,%acc2 + 2ebc: a221 1262 macw %d2u,%d1l,<<,%a1@-&,%d1,%acc1 + 2ec0: a2a1 1272 macw %d2u,%d1l,<<,%a1@-&,%d1,%acc2 + 2ec4: a661 1262 macw %d2u,%d1l,<<,%a1@-&,%a3,%acc1 + 2ec8: a6e1 1272 macw %d2u,%d1l,<<,%a1@-&,%a3,%acc2 + 2ecc: a421 1262 macw %d2u,%d1l,<<,%a1@-&,%d2,%acc1 + 2ed0: a4a1 1272 macw %d2u,%d1l,<<,%a1@-&,%d2,%acc2 + 2ed4: ae61 1262 macw %d2u,%d1l,<<,%a1@-&,%sp,%acc1 + 2ed8: aee1 1272 macw %d2u,%d1l,<<,%a1@-&,%sp,%acc2 + 2edc: a213 1642 macw %d2u,%d1l,>>,%a3@,%d1,%acc1 + 2ee0: a293 1652 macw %d2u,%d1l,>>,%a3@,%d1,%acc2 + 2ee4: a653 1642 macw %d2u,%d1l,>>,%a3@,%a3,%acc1 + 2ee8: a6d3 1652 macw %d2u,%d1l,>>,%a3@,%a3,%acc2 + 2eec: a413 1642 macw %d2u,%d1l,>>,%a3@,%d2,%acc1 + 2ef0: a493 1652 macw %d2u,%d1l,>>,%a3@,%d2,%acc2 + 2ef4: ae53 1642 macw %d2u,%d1l,>>,%a3@,%sp,%acc1 + 2ef8: aed3 1652 macw %d2u,%d1l,>>,%a3@,%sp,%acc2 + 2efc: a213 1662 macw %d2u,%d1l,>>,%a3@&,%d1,%acc1 + 2f00: a293 1672 macw %d2u,%d1l,>>,%a3@&,%d1,%acc2 + 2f04: a653 1662 macw %d2u,%d1l,>>,%a3@&,%a3,%acc1 + 2f08: a6d3 1672 macw %d2u,%d1l,>>,%a3@&,%a3,%acc2 + 2f0c: a413 1662 macw %d2u,%d1l,>>,%a3@&,%d2,%acc1 + 2f10: a493 1672 macw %d2u,%d1l,>>,%a3@&,%d2,%acc2 + 2f14: ae53 1662 macw %d2u,%d1l,>>,%a3@&,%sp,%acc1 + 2f18: aed3 1672 macw %d2u,%d1l,>>,%a3@&,%sp,%acc2 + 2f1c: a21a 1642 macw %d2u,%d1l,>>,%a2@\+,%d1,%acc1 + 2f20: a29a 1652 macw %d2u,%d1l,>>,%a2@\+,%d1,%acc2 + 2f24: a65a 1642 macw %d2u,%d1l,>>,%a2@\+,%a3,%acc1 + 2f28: a6da 1652 macw %d2u,%d1l,>>,%a2@\+,%a3,%acc2 + 2f2c: a41a 1642 macw %d2u,%d1l,>>,%a2@\+,%d2,%acc1 + 2f30: a49a 1652 macw %d2u,%d1l,>>,%a2@\+,%d2,%acc2 + 2f34: ae5a 1642 macw %d2u,%d1l,>>,%a2@\+,%sp,%acc1 + 2f38: aeda 1652 macw %d2u,%d1l,>>,%a2@\+,%sp,%acc2 + 2f3c: a21a 1662 macw %d2u,%d1l,>>,%a2@\+&,%d1,%acc1 + 2f40: a29a 1672 macw %d2u,%d1l,>>,%a2@\+&,%d1,%acc2 + 2f44: a65a 1662 macw %d2u,%d1l,>>,%a2@\+&,%a3,%acc1 + 2f48: a6da 1672 macw %d2u,%d1l,>>,%a2@\+&,%a3,%acc2 + 2f4c: a41a 1662 macw %d2u,%d1l,>>,%a2@\+&,%d2,%acc1 + 2f50: a49a 1672 macw %d2u,%d1l,>>,%a2@\+&,%d2,%acc2 + 2f54: ae5a 1662 macw %d2u,%d1l,>>,%a2@\+&,%sp,%acc1 + 2f58: aeda 1672 macw %d2u,%d1l,>>,%a2@\+&,%sp,%acc2 + 2f5c: a22e 1642 000a macw %d2u,%d1l,>>,%fp@\(10\),%d1,%acc1 + 2f62: a2ae 1652 000a macw %d2u,%d1l,>>,%fp@\(10\),%d1,%acc2 + 2f68: a66e 1642 000a macw %d2u,%d1l,>>,%fp@\(10\),%a3,%acc1 + 2f6e: a6ee 1652 000a macw %d2u,%d1l,>>,%fp@\(10\),%a3,%acc2 + 2f74: a42e 1642 000a macw %d2u,%d1l,>>,%fp@\(10\),%d2,%acc1 + 2f7a: a4ae 1652 000a macw %d2u,%d1l,>>,%fp@\(10\),%d2,%acc2 + 2f80: ae6e 1642 000a macw %d2u,%d1l,>>,%fp@\(10\),%sp,%acc1 + 2f86: aeee 1652 000a macw %d2u,%d1l,>>,%fp@\(10\),%sp,%acc2 + 2f8c: a22e 1662 000a macw %d2u,%d1l,>>,%fp@\(10\)&,%d1,%acc1 + 2f92: a2ae 1672 000a macw %d2u,%d1l,>>,%fp@\(10\)&,%d1,%acc2 + 2f98: a66e 1662 000a macw %d2u,%d1l,>>,%fp@\(10\)&,%a3,%acc1 + 2f9e: a6ee 1672 000a macw %d2u,%d1l,>>,%fp@\(10\)&,%a3,%acc2 + 2fa4: a42e 1662 000a macw %d2u,%d1l,>>,%fp@\(10\)&,%d2,%acc1 + 2faa: a4ae 1672 000a macw %d2u,%d1l,>>,%fp@\(10\)&,%d2,%acc2 + 2fb0: ae6e 1662 000a macw %d2u,%d1l,>>,%fp@\(10\)&,%sp,%acc1 + 2fb6: aeee 1672 000a macw %d2u,%d1l,>>,%fp@\(10\)&,%sp,%acc2 + 2fbc: a221 1642 macw %d2u,%d1l,>>,%a1@-,%d1,%acc1 + 2fc0: a2a1 1652 macw %d2u,%d1l,>>,%a1@-,%d1,%acc2 + 2fc4: a661 1642 macw %d2u,%d1l,>>,%a1@-,%a3,%acc1 + 2fc8: a6e1 1652 macw %d2u,%d1l,>>,%a1@-,%a3,%acc2 + 2fcc: a421 1642 macw %d2u,%d1l,>>,%a1@-,%d2,%acc1 + 2fd0: a4a1 1652 macw %d2u,%d1l,>>,%a1@-,%d2,%acc2 + 2fd4: ae61 1642 macw %d2u,%d1l,>>,%a1@-,%sp,%acc1 + 2fd8: aee1 1652 macw %d2u,%d1l,>>,%a1@-,%sp,%acc2 + 2fdc: a221 1662 macw %d2u,%d1l,>>,%a1@-&,%d1,%acc1 + 2fe0: a2a1 1672 macw %d2u,%d1l,>>,%a1@-&,%d1,%acc2 + 2fe4: a661 1662 macw %d2u,%d1l,>>,%a1@-&,%a3,%acc1 + 2fe8: a6e1 1672 macw %d2u,%d1l,>>,%a1@-&,%a3,%acc2 + 2fec: a421 1662 macw %d2u,%d1l,>>,%a1@-&,%d2,%acc1 + 2ff0: a4a1 1672 macw %d2u,%d1l,>>,%a1@-&,%d2,%acc2 + 2ff4: ae61 1662 macw %d2u,%d1l,>>,%a1@-&,%sp,%acc1 + 2ff8: aee1 1672 macw %d2u,%d1l,>>,%a1@-&,%sp,%acc2 + 2ffc: a213 a08d macw %a5l,%a2u,%a3@,%d1,%acc1 + 3000: a293 a09d macw %a5l,%a2u,%a3@,%d1,%acc2 + 3004: a653 a08d macw %a5l,%a2u,%a3@,%a3,%acc1 + 3008: a6d3 a09d macw %a5l,%a2u,%a3@,%a3,%acc2 + 300c: a413 a08d macw %a5l,%a2u,%a3@,%d2,%acc1 + 3010: a493 a09d macw %a5l,%a2u,%a3@,%d2,%acc2 + 3014: ae53 a08d macw %a5l,%a2u,%a3@,%sp,%acc1 + 3018: aed3 a09d macw %a5l,%a2u,%a3@,%sp,%acc2 + 301c: a213 a0ad macw %a5l,%a2u,%a3@&,%d1,%acc1 + 3020: a293 a0bd macw %a5l,%a2u,%a3@&,%d1,%acc2 + 3024: a653 a0ad macw %a5l,%a2u,%a3@&,%a3,%acc1 + 3028: a6d3 a0bd macw %a5l,%a2u,%a3@&,%a3,%acc2 + 302c: a413 a0ad macw %a5l,%a2u,%a3@&,%d2,%acc1 + 3030: a493 a0bd macw %a5l,%a2u,%a3@&,%d2,%acc2 + 3034: ae53 a0ad macw %a5l,%a2u,%a3@&,%sp,%acc1 + 3038: aed3 a0bd macw %a5l,%a2u,%a3@&,%sp,%acc2 + 303c: a21a a08d macw %a5l,%a2u,%a2@\+,%d1,%acc1 + 3040: a29a a09d macw %a5l,%a2u,%a2@\+,%d1,%acc2 + 3044: a65a a08d macw %a5l,%a2u,%a2@\+,%a3,%acc1 + 3048: a6da a09d macw %a5l,%a2u,%a2@\+,%a3,%acc2 + 304c: a41a a08d macw %a5l,%a2u,%a2@\+,%d2,%acc1 + 3050: a49a a09d macw %a5l,%a2u,%a2@\+,%d2,%acc2 + 3054: ae5a a08d macw %a5l,%a2u,%a2@\+,%sp,%acc1 + 3058: aeda a09d macw %a5l,%a2u,%a2@\+,%sp,%acc2 + 305c: a21a a0ad macw %a5l,%a2u,%a2@\+&,%d1,%acc1 + 3060: a29a a0bd macw %a5l,%a2u,%a2@\+&,%d1,%acc2 + 3064: a65a a0ad macw %a5l,%a2u,%a2@\+&,%a3,%acc1 + 3068: a6da a0bd macw %a5l,%a2u,%a2@\+&,%a3,%acc2 + 306c: a41a a0ad macw %a5l,%a2u,%a2@\+&,%d2,%acc1 + 3070: a49a a0bd macw %a5l,%a2u,%a2@\+&,%d2,%acc2 + 3074: ae5a a0ad macw %a5l,%a2u,%a2@\+&,%sp,%acc1 + 3078: aeda a0bd macw %a5l,%a2u,%a2@\+&,%sp,%acc2 + 307c: a22e a08d 000a macw %a5l,%a2u,%fp@\(10\),%d1,%acc1 + 3082: a2ae a09d 000a macw %a5l,%a2u,%fp@\(10\),%d1,%acc2 + 3088: a66e a08d 000a macw %a5l,%a2u,%fp@\(10\),%a3,%acc1 + 308e: a6ee a09d 000a macw %a5l,%a2u,%fp@\(10\),%a3,%acc2 + 3094: a42e a08d 000a macw %a5l,%a2u,%fp@\(10\),%d2,%acc1 + 309a: a4ae a09d 000a macw %a5l,%a2u,%fp@\(10\),%d2,%acc2 + 30a0: ae6e a08d 000a macw %a5l,%a2u,%fp@\(10\),%sp,%acc1 + 30a6: aeee a09d 000a macw %a5l,%a2u,%fp@\(10\),%sp,%acc2 + 30ac: a22e a0ad 000a macw %a5l,%a2u,%fp@\(10\)&,%d1,%acc1 + 30b2: a2ae a0bd 000a macw %a5l,%a2u,%fp@\(10\)&,%d1,%acc2 + 30b8: a66e a0ad 000a macw %a5l,%a2u,%fp@\(10\)&,%a3,%acc1 + 30be: a6ee a0bd 000a macw %a5l,%a2u,%fp@\(10\)&,%a3,%acc2 + 30c4: a42e a0ad 000a macw %a5l,%a2u,%fp@\(10\)&,%d2,%acc1 + 30ca: a4ae a0bd 000a macw %a5l,%a2u,%fp@\(10\)&,%d2,%acc2 + 30d0: ae6e a0ad 000a macw %a5l,%a2u,%fp@\(10\)&,%sp,%acc1 + 30d6: aeee a0bd 000a macw %a5l,%a2u,%fp@\(10\)&,%sp,%acc2 + 30dc: a221 a08d macw %a5l,%a2u,%a1@-,%d1,%acc1 + 30e0: a2a1 a09d macw %a5l,%a2u,%a1@-,%d1,%acc2 + 30e4: a661 a08d macw %a5l,%a2u,%a1@-,%a3,%acc1 + 30e8: a6e1 a09d macw %a5l,%a2u,%a1@-,%a3,%acc2 + 30ec: a421 a08d macw %a5l,%a2u,%a1@-,%d2,%acc1 + 30f0: a4a1 a09d macw %a5l,%a2u,%a1@-,%d2,%acc2 + 30f4: ae61 a08d macw %a5l,%a2u,%a1@-,%sp,%acc1 + 30f8: aee1 a09d macw %a5l,%a2u,%a1@-,%sp,%acc2 + 30fc: a221 a0ad macw %a5l,%a2u,%a1@-&,%d1,%acc1 + 3100: a2a1 a0bd macw %a5l,%a2u,%a1@-&,%d1,%acc2 + 3104: a661 a0ad macw %a5l,%a2u,%a1@-&,%a3,%acc1 + 3108: a6e1 a0bd macw %a5l,%a2u,%a1@-&,%a3,%acc2 + 310c: a421 a0ad macw %a5l,%a2u,%a1@-&,%d2,%acc1 + 3110: a4a1 a0bd macw %a5l,%a2u,%a1@-&,%d2,%acc2 + 3114: ae61 a0ad macw %a5l,%a2u,%a1@-&,%sp,%acc1 + 3118: aee1 a0bd macw %a5l,%a2u,%a1@-&,%sp,%acc2 + 311c: a213 a28d macw %a5l,%a2u,<<,%a3@,%d1,%acc1 + 3120: a293 a29d macw %a5l,%a2u,<<,%a3@,%d1,%acc2 + 3124: a653 a28d macw %a5l,%a2u,<<,%a3@,%a3,%acc1 + 3128: a6d3 a29d macw %a5l,%a2u,<<,%a3@,%a3,%acc2 + 312c: a413 a28d macw %a5l,%a2u,<<,%a3@,%d2,%acc1 + 3130: a493 a29d macw %a5l,%a2u,<<,%a3@,%d2,%acc2 + 3134: ae53 a28d macw %a5l,%a2u,<<,%a3@,%sp,%acc1 + 3138: aed3 a29d macw %a5l,%a2u,<<,%a3@,%sp,%acc2 + 313c: a213 a2ad macw %a5l,%a2u,<<,%a3@&,%d1,%acc1 + 3140: a293 a2bd macw %a5l,%a2u,<<,%a3@&,%d1,%acc2 + 3144: a653 a2ad macw %a5l,%a2u,<<,%a3@&,%a3,%acc1 + 3148: a6d3 a2bd macw %a5l,%a2u,<<,%a3@&,%a3,%acc2 + 314c: a413 a2ad macw %a5l,%a2u,<<,%a3@&,%d2,%acc1 + 3150: a493 a2bd macw %a5l,%a2u,<<,%a3@&,%d2,%acc2 + 3154: ae53 a2ad macw %a5l,%a2u,<<,%a3@&,%sp,%acc1 + 3158: aed3 a2bd macw %a5l,%a2u,<<,%a3@&,%sp,%acc2 + 315c: a21a a28d macw %a5l,%a2u,<<,%a2@\+,%d1,%acc1 + 3160: a29a a29d macw %a5l,%a2u,<<,%a2@\+,%d1,%acc2 + 3164: a65a a28d macw %a5l,%a2u,<<,%a2@\+,%a3,%acc1 + 3168: a6da a29d macw %a5l,%a2u,<<,%a2@\+,%a3,%acc2 + 316c: a41a a28d macw %a5l,%a2u,<<,%a2@\+,%d2,%acc1 + 3170: a49a a29d macw %a5l,%a2u,<<,%a2@\+,%d2,%acc2 + 3174: ae5a a28d macw %a5l,%a2u,<<,%a2@\+,%sp,%acc1 + 3178: aeda a29d macw %a5l,%a2u,<<,%a2@\+,%sp,%acc2 + 317c: a21a a2ad macw %a5l,%a2u,<<,%a2@\+&,%d1,%acc1 + 3180: a29a a2bd macw %a5l,%a2u,<<,%a2@\+&,%d1,%acc2 + 3184: a65a a2ad macw %a5l,%a2u,<<,%a2@\+&,%a3,%acc1 + 3188: a6da a2bd macw %a5l,%a2u,<<,%a2@\+&,%a3,%acc2 + 318c: a41a a2ad macw %a5l,%a2u,<<,%a2@\+&,%d2,%acc1 + 3190: a49a a2bd macw %a5l,%a2u,<<,%a2@\+&,%d2,%acc2 + 3194: ae5a a2ad macw %a5l,%a2u,<<,%a2@\+&,%sp,%acc1 + 3198: aeda a2bd macw %a5l,%a2u,<<,%a2@\+&,%sp,%acc2 + 319c: a22e a28d 000a macw %a5l,%a2u,<<,%fp@\(10\),%d1,%acc1 + 31a2: a2ae a29d 000a macw %a5l,%a2u,<<,%fp@\(10\),%d1,%acc2 + 31a8: a66e a28d 000a macw %a5l,%a2u,<<,%fp@\(10\),%a3,%acc1 + 31ae: a6ee a29d 000a macw %a5l,%a2u,<<,%fp@\(10\),%a3,%acc2 + 31b4: a42e a28d 000a macw %a5l,%a2u,<<,%fp@\(10\),%d2,%acc1 + 31ba: a4ae a29d 000a macw %a5l,%a2u,<<,%fp@\(10\),%d2,%acc2 + 31c0: ae6e a28d 000a macw %a5l,%a2u,<<,%fp@\(10\),%sp,%acc1 + 31c6: aeee a29d 000a macw %a5l,%a2u,<<,%fp@\(10\),%sp,%acc2 + 31cc: a22e a2ad 000a macw %a5l,%a2u,<<,%fp@\(10\)&,%d1,%acc1 + 31d2: a2ae a2bd 000a macw %a5l,%a2u,<<,%fp@\(10\)&,%d1,%acc2 + 31d8: a66e a2ad 000a macw %a5l,%a2u,<<,%fp@\(10\)&,%a3,%acc1 + 31de: a6ee a2bd 000a macw %a5l,%a2u,<<,%fp@\(10\)&,%a3,%acc2 + 31e4: a42e a2ad 000a macw %a5l,%a2u,<<,%fp@\(10\)&,%d2,%acc1 + 31ea: a4ae a2bd 000a macw %a5l,%a2u,<<,%fp@\(10\)&,%d2,%acc2 + 31f0: ae6e a2ad 000a macw %a5l,%a2u,<<,%fp@\(10\)&,%sp,%acc1 + 31f6: aeee a2bd 000a macw %a5l,%a2u,<<,%fp@\(10\)&,%sp,%acc2 + 31fc: a221 a28d macw %a5l,%a2u,<<,%a1@-,%d1,%acc1 + 3200: a2a1 a29d macw %a5l,%a2u,<<,%a1@-,%d1,%acc2 + 3204: a661 a28d macw %a5l,%a2u,<<,%a1@-,%a3,%acc1 + 3208: a6e1 a29d macw %a5l,%a2u,<<,%a1@-,%a3,%acc2 + 320c: a421 a28d macw %a5l,%a2u,<<,%a1@-,%d2,%acc1 + 3210: a4a1 a29d macw %a5l,%a2u,<<,%a1@-,%d2,%acc2 + 3214: ae61 a28d macw %a5l,%a2u,<<,%a1@-,%sp,%acc1 + 3218: aee1 a29d macw %a5l,%a2u,<<,%a1@-,%sp,%acc2 + 321c: a221 a2ad macw %a5l,%a2u,<<,%a1@-&,%d1,%acc1 + 3220: a2a1 a2bd macw %a5l,%a2u,<<,%a1@-&,%d1,%acc2 + 3224: a661 a2ad macw %a5l,%a2u,<<,%a1@-&,%a3,%acc1 + 3228: a6e1 a2bd macw %a5l,%a2u,<<,%a1@-&,%a3,%acc2 + 322c: a421 a2ad macw %a5l,%a2u,<<,%a1@-&,%d2,%acc1 + 3230: a4a1 a2bd macw %a5l,%a2u,<<,%a1@-&,%d2,%acc2 + 3234: ae61 a2ad macw %a5l,%a2u,<<,%a1@-&,%sp,%acc1 + 3238: aee1 a2bd macw %a5l,%a2u,<<,%a1@-&,%sp,%acc2 + 323c: a213 a68d macw %a5l,%a2u,>>,%a3@,%d1,%acc1 + 3240: a293 a69d macw %a5l,%a2u,>>,%a3@,%d1,%acc2 + 3244: a653 a68d macw %a5l,%a2u,>>,%a3@,%a3,%acc1 + 3248: a6d3 a69d macw %a5l,%a2u,>>,%a3@,%a3,%acc2 + 324c: a413 a68d macw %a5l,%a2u,>>,%a3@,%d2,%acc1 + 3250: a493 a69d macw %a5l,%a2u,>>,%a3@,%d2,%acc2 + 3254: ae53 a68d macw %a5l,%a2u,>>,%a3@,%sp,%acc1 + 3258: aed3 a69d macw %a5l,%a2u,>>,%a3@,%sp,%acc2 + 325c: a213 a6ad macw %a5l,%a2u,>>,%a3@&,%d1,%acc1 + 3260: a293 a6bd macw %a5l,%a2u,>>,%a3@&,%d1,%acc2 + 3264: a653 a6ad macw %a5l,%a2u,>>,%a3@&,%a3,%acc1 + 3268: a6d3 a6bd macw %a5l,%a2u,>>,%a3@&,%a3,%acc2 + 326c: a413 a6ad macw %a5l,%a2u,>>,%a3@&,%d2,%acc1 + 3270: a493 a6bd macw %a5l,%a2u,>>,%a3@&,%d2,%acc2 + 3274: ae53 a6ad macw %a5l,%a2u,>>,%a3@&,%sp,%acc1 + 3278: aed3 a6bd macw %a5l,%a2u,>>,%a3@&,%sp,%acc2 + 327c: a21a a68d macw %a5l,%a2u,>>,%a2@\+,%d1,%acc1 + 3280: a29a a69d macw %a5l,%a2u,>>,%a2@\+,%d1,%acc2 + 3284: a65a a68d macw %a5l,%a2u,>>,%a2@\+,%a3,%acc1 + 3288: a6da a69d macw %a5l,%a2u,>>,%a2@\+,%a3,%acc2 + 328c: a41a a68d macw %a5l,%a2u,>>,%a2@\+,%d2,%acc1 + 3290: a49a a69d macw %a5l,%a2u,>>,%a2@\+,%d2,%acc2 + 3294: ae5a a68d macw %a5l,%a2u,>>,%a2@\+,%sp,%acc1 + 3298: aeda a69d macw %a5l,%a2u,>>,%a2@\+,%sp,%acc2 + 329c: a21a a6ad macw %a5l,%a2u,>>,%a2@\+&,%d1,%acc1 + 32a0: a29a a6bd macw %a5l,%a2u,>>,%a2@\+&,%d1,%acc2 + 32a4: a65a a6ad macw %a5l,%a2u,>>,%a2@\+&,%a3,%acc1 + 32a8: a6da a6bd macw %a5l,%a2u,>>,%a2@\+&,%a3,%acc2 + 32ac: a41a a6ad macw %a5l,%a2u,>>,%a2@\+&,%d2,%acc1 + 32b0: a49a a6bd macw %a5l,%a2u,>>,%a2@\+&,%d2,%acc2 + 32b4: ae5a a6ad macw %a5l,%a2u,>>,%a2@\+&,%sp,%acc1 + 32b8: aeda a6bd macw %a5l,%a2u,>>,%a2@\+&,%sp,%acc2 + 32bc: a22e a68d 000a macw %a5l,%a2u,>>,%fp@\(10\),%d1,%acc1 + 32c2: a2ae a69d 000a macw %a5l,%a2u,>>,%fp@\(10\),%d1,%acc2 + 32c8: a66e a68d 000a macw %a5l,%a2u,>>,%fp@\(10\),%a3,%acc1 + 32ce: a6ee a69d 000a macw %a5l,%a2u,>>,%fp@\(10\),%a3,%acc2 + 32d4: a42e a68d 000a macw %a5l,%a2u,>>,%fp@\(10\),%d2,%acc1 + 32da: a4ae a69d 000a macw %a5l,%a2u,>>,%fp@\(10\),%d2,%acc2 + 32e0: ae6e a68d 000a macw %a5l,%a2u,>>,%fp@\(10\),%sp,%acc1 + 32e6: aeee a69d 000a macw %a5l,%a2u,>>,%fp@\(10\),%sp,%acc2 + 32ec: a22e a6ad 000a macw %a5l,%a2u,>>,%fp@\(10\)&,%d1,%acc1 + 32f2: a2ae a6bd 000a macw %a5l,%a2u,>>,%fp@\(10\)&,%d1,%acc2 + 32f8: a66e a6ad 000a macw %a5l,%a2u,>>,%fp@\(10\)&,%a3,%acc1 + 32fe: a6ee a6bd 000a macw %a5l,%a2u,>>,%fp@\(10\)&,%a3,%acc2 + 3304: a42e a6ad 000a macw %a5l,%a2u,>>,%fp@\(10\)&,%d2,%acc1 + 330a: a4ae a6bd 000a macw %a5l,%a2u,>>,%fp@\(10\)&,%d2,%acc2 + 3310: ae6e a6ad 000a macw %a5l,%a2u,>>,%fp@\(10\)&,%sp,%acc1 + 3316: aeee a6bd 000a macw %a5l,%a2u,>>,%fp@\(10\)&,%sp,%acc2 + 331c: a221 a68d macw %a5l,%a2u,>>,%a1@-,%d1,%acc1 + 3320: a2a1 a69d macw %a5l,%a2u,>>,%a1@-,%d1,%acc2 + 3324: a661 a68d macw %a5l,%a2u,>>,%a1@-,%a3,%acc1 + 3328: a6e1 a69d macw %a5l,%a2u,>>,%a1@-,%a3,%acc2 + 332c: a421 a68d macw %a5l,%a2u,>>,%a1@-,%d2,%acc1 + 3330: a4a1 a69d macw %a5l,%a2u,>>,%a1@-,%d2,%acc2 + 3334: ae61 a68d macw %a5l,%a2u,>>,%a1@-,%sp,%acc1 + 3338: aee1 a69d macw %a5l,%a2u,>>,%a1@-,%sp,%acc2 + 333c: a221 a6ad macw %a5l,%a2u,>>,%a1@-&,%d1,%acc1 + 3340: a2a1 a6bd macw %a5l,%a2u,>>,%a1@-&,%d1,%acc2 + 3344: a661 a6ad macw %a5l,%a2u,>>,%a1@-&,%a3,%acc1 + 3348: a6e1 a6bd macw %a5l,%a2u,>>,%a1@-&,%a3,%acc2 + 334c: a421 a6ad macw %a5l,%a2u,>>,%a1@-&,%d2,%acc1 + 3350: a4a1 a6bd macw %a5l,%a2u,>>,%a1@-&,%d2,%acc2 + 3354: ae61 a6ad macw %a5l,%a2u,>>,%a1@-&,%sp,%acc1 + 3358: aee1 a6bd macw %a5l,%a2u,>>,%a1@-&,%sp,%acc2 + 335c: a213 a28d macw %a5l,%a2u,<<,%a3@,%d1,%acc1 + 3360: a293 a29d macw %a5l,%a2u,<<,%a3@,%d1,%acc2 + 3364: a653 a28d macw %a5l,%a2u,<<,%a3@,%a3,%acc1 + 3368: a6d3 a29d macw %a5l,%a2u,<<,%a3@,%a3,%acc2 + 336c: a413 a28d macw %a5l,%a2u,<<,%a3@,%d2,%acc1 + 3370: a493 a29d macw %a5l,%a2u,<<,%a3@,%d2,%acc2 + 3374: ae53 a28d macw %a5l,%a2u,<<,%a3@,%sp,%acc1 + 3378: aed3 a29d macw %a5l,%a2u,<<,%a3@,%sp,%acc2 + 337c: a213 a2ad macw %a5l,%a2u,<<,%a3@&,%d1,%acc1 + 3380: a293 a2bd macw %a5l,%a2u,<<,%a3@&,%d1,%acc2 + 3384: a653 a2ad macw %a5l,%a2u,<<,%a3@&,%a3,%acc1 + 3388: a6d3 a2bd macw %a5l,%a2u,<<,%a3@&,%a3,%acc2 + 338c: a413 a2ad macw %a5l,%a2u,<<,%a3@&,%d2,%acc1 + 3390: a493 a2bd macw %a5l,%a2u,<<,%a3@&,%d2,%acc2 + 3394: ae53 a2ad macw %a5l,%a2u,<<,%a3@&,%sp,%acc1 + 3398: aed3 a2bd macw %a5l,%a2u,<<,%a3@&,%sp,%acc2 + 339c: a21a a28d macw %a5l,%a2u,<<,%a2@\+,%d1,%acc1 + 33a0: a29a a29d macw %a5l,%a2u,<<,%a2@\+,%d1,%acc2 + 33a4: a65a a28d macw %a5l,%a2u,<<,%a2@\+,%a3,%acc1 + 33a8: a6da a29d macw %a5l,%a2u,<<,%a2@\+,%a3,%acc2 + 33ac: a41a a28d macw %a5l,%a2u,<<,%a2@\+,%d2,%acc1 + 33b0: a49a a29d macw %a5l,%a2u,<<,%a2@\+,%d2,%acc2 + 33b4: ae5a a28d macw %a5l,%a2u,<<,%a2@\+,%sp,%acc1 + 33b8: aeda a29d macw %a5l,%a2u,<<,%a2@\+,%sp,%acc2 + 33bc: a21a a2ad macw %a5l,%a2u,<<,%a2@\+&,%d1,%acc1 + 33c0: a29a a2bd macw %a5l,%a2u,<<,%a2@\+&,%d1,%acc2 + 33c4: a65a a2ad macw %a5l,%a2u,<<,%a2@\+&,%a3,%acc1 + 33c8: a6da a2bd macw %a5l,%a2u,<<,%a2@\+&,%a3,%acc2 + 33cc: a41a a2ad macw %a5l,%a2u,<<,%a2@\+&,%d2,%acc1 + 33d0: a49a a2bd macw %a5l,%a2u,<<,%a2@\+&,%d2,%acc2 + 33d4: ae5a a2ad macw %a5l,%a2u,<<,%a2@\+&,%sp,%acc1 + 33d8: aeda a2bd macw %a5l,%a2u,<<,%a2@\+&,%sp,%acc2 + 33dc: a22e a28d 000a macw %a5l,%a2u,<<,%fp@\(10\),%d1,%acc1 + 33e2: a2ae a29d 000a macw %a5l,%a2u,<<,%fp@\(10\),%d1,%acc2 + 33e8: a66e a28d 000a macw %a5l,%a2u,<<,%fp@\(10\),%a3,%acc1 + 33ee: a6ee a29d 000a macw %a5l,%a2u,<<,%fp@\(10\),%a3,%acc2 + 33f4: a42e a28d 000a macw %a5l,%a2u,<<,%fp@\(10\),%d2,%acc1 + 33fa: a4ae a29d 000a macw %a5l,%a2u,<<,%fp@\(10\),%d2,%acc2 + 3400: ae6e a28d 000a macw %a5l,%a2u,<<,%fp@\(10\),%sp,%acc1 + 3406: aeee a29d 000a macw %a5l,%a2u,<<,%fp@\(10\),%sp,%acc2 + 340c: a22e a2ad 000a macw %a5l,%a2u,<<,%fp@\(10\)&,%d1,%acc1 + 3412: a2ae a2bd 000a macw %a5l,%a2u,<<,%fp@\(10\)&,%d1,%acc2 + 3418: a66e a2ad 000a macw %a5l,%a2u,<<,%fp@\(10\)&,%a3,%acc1 + 341e: a6ee a2bd 000a macw %a5l,%a2u,<<,%fp@\(10\)&,%a3,%acc2 + 3424: a42e a2ad 000a macw %a5l,%a2u,<<,%fp@\(10\)&,%d2,%acc1 + 342a: a4ae a2bd 000a macw %a5l,%a2u,<<,%fp@\(10\)&,%d2,%acc2 + 3430: ae6e a2ad 000a macw %a5l,%a2u,<<,%fp@\(10\)&,%sp,%acc1 + 3436: aeee a2bd 000a macw %a5l,%a2u,<<,%fp@\(10\)&,%sp,%acc2 + 343c: a221 a28d macw %a5l,%a2u,<<,%a1@-,%d1,%acc1 + 3440: a2a1 a29d macw %a5l,%a2u,<<,%a1@-,%d1,%acc2 + 3444: a661 a28d macw %a5l,%a2u,<<,%a1@-,%a3,%acc1 + 3448: a6e1 a29d macw %a5l,%a2u,<<,%a1@-,%a3,%acc2 + 344c: a421 a28d macw %a5l,%a2u,<<,%a1@-,%d2,%acc1 + 3450: a4a1 a29d macw %a5l,%a2u,<<,%a1@-,%d2,%acc2 + 3454: ae61 a28d macw %a5l,%a2u,<<,%a1@-,%sp,%acc1 + 3458: aee1 a29d macw %a5l,%a2u,<<,%a1@-,%sp,%acc2 + 345c: a221 a2ad macw %a5l,%a2u,<<,%a1@-&,%d1,%acc1 + 3460: a2a1 a2bd macw %a5l,%a2u,<<,%a1@-&,%d1,%acc2 + 3464: a661 a2ad macw %a5l,%a2u,<<,%a1@-&,%a3,%acc1 + 3468: a6e1 a2bd macw %a5l,%a2u,<<,%a1@-&,%a3,%acc2 + 346c: a421 a2ad macw %a5l,%a2u,<<,%a1@-&,%d2,%acc1 + 3470: a4a1 a2bd macw %a5l,%a2u,<<,%a1@-&,%d2,%acc2 + 3474: ae61 a2ad macw %a5l,%a2u,<<,%a1@-&,%sp,%acc1 + 3478: aee1 a2bd macw %a5l,%a2u,<<,%a1@-&,%sp,%acc2 + 347c: a213 a68d macw %a5l,%a2u,>>,%a3@,%d1,%acc1 + 3480: a293 a69d macw %a5l,%a2u,>>,%a3@,%d1,%acc2 + 3484: a653 a68d macw %a5l,%a2u,>>,%a3@,%a3,%acc1 + 3488: a6d3 a69d macw %a5l,%a2u,>>,%a3@,%a3,%acc2 + 348c: a413 a68d macw %a5l,%a2u,>>,%a3@,%d2,%acc1 + 3490: a493 a69d macw %a5l,%a2u,>>,%a3@,%d2,%acc2 + 3494: ae53 a68d macw %a5l,%a2u,>>,%a3@,%sp,%acc1 + 3498: aed3 a69d macw %a5l,%a2u,>>,%a3@,%sp,%acc2 + 349c: a213 a6ad macw %a5l,%a2u,>>,%a3@&,%d1,%acc1 + 34a0: a293 a6bd macw %a5l,%a2u,>>,%a3@&,%d1,%acc2 + 34a4: a653 a6ad macw %a5l,%a2u,>>,%a3@&,%a3,%acc1 + 34a8: a6d3 a6bd macw %a5l,%a2u,>>,%a3@&,%a3,%acc2 + 34ac: a413 a6ad macw %a5l,%a2u,>>,%a3@&,%d2,%acc1 + 34b0: a493 a6bd macw %a5l,%a2u,>>,%a3@&,%d2,%acc2 + 34b4: ae53 a6ad macw %a5l,%a2u,>>,%a3@&,%sp,%acc1 + 34b8: aed3 a6bd macw %a5l,%a2u,>>,%a3@&,%sp,%acc2 + 34bc: a21a a68d macw %a5l,%a2u,>>,%a2@\+,%d1,%acc1 + 34c0: a29a a69d macw %a5l,%a2u,>>,%a2@\+,%d1,%acc2 + 34c4: a65a a68d macw %a5l,%a2u,>>,%a2@\+,%a3,%acc1 + 34c8: a6da a69d macw %a5l,%a2u,>>,%a2@\+,%a3,%acc2 + 34cc: a41a a68d macw %a5l,%a2u,>>,%a2@\+,%d2,%acc1 + 34d0: a49a a69d macw %a5l,%a2u,>>,%a2@\+,%d2,%acc2 + 34d4: ae5a a68d macw %a5l,%a2u,>>,%a2@\+,%sp,%acc1 + 34d8: aeda a69d macw %a5l,%a2u,>>,%a2@\+,%sp,%acc2 + 34dc: a21a a6ad macw %a5l,%a2u,>>,%a2@\+&,%d1,%acc1 + 34e0: a29a a6bd macw %a5l,%a2u,>>,%a2@\+&,%d1,%acc2 + 34e4: a65a a6ad macw %a5l,%a2u,>>,%a2@\+&,%a3,%acc1 + 34e8: a6da a6bd macw %a5l,%a2u,>>,%a2@\+&,%a3,%acc2 + 34ec: a41a a6ad macw %a5l,%a2u,>>,%a2@\+&,%d2,%acc1 + 34f0: a49a a6bd macw %a5l,%a2u,>>,%a2@\+&,%d2,%acc2 + 34f4: ae5a a6ad macw %a5l,%a2u,>>,%a2@\+&,%sp,%acc1 + 34f8: aeda a6bd macw %a5l,%a2u,>>,%a2@\+&,%sp,%acc2 + 34fc: a22e a68d 000a macw %a5l,%a2u,>>,%fp@\(10\),%d1,%acc1 + 3502: a2ae a69d 000a macw %a5l,%a2u,>>,%fp@\(10\),%d1,%acc2 + 3508: a66e a68d 000a macw %a5l,%a2u,>>,%fp@\(10\),%a3,%acc1 + 350e: a6ee a69d 000a macw %a5l,%a2u,>>,%fp@\(10\),%a3,%acc2 + 3514: a42e a68d 000a macw %a5l,%a2u,>>,%fp@\(10\),%d2,%acc1 + 351a: a4ae a69d 000a macw %a5l,%a2u,>>,%fp@\(10\),%d2,%acc2 + 3520: ae6e a68d 000a macw %a5l,%a2u,>>,%fp@\(10\),%sp,%acc1 + 3526: aeee a69d 000a macw %a5l,%a2u,>>,%fp@\(10\),%sp,%acc2 + 352c: a22e a6ad 000a macw %a5l,%a2u,>>,%fp@\(10\)&,%d1,%acc1 + 3532: a2ae a6bd 000a macw %a5l,%a2u,>>,%fp@\(10\)&,%d1,%acc2 + 3538: a66e a6ad 000a macw %a5l,%a2u,>>,%fp@\(10\)&,%a3,%acc1 + 353e: a6ee a6bd 000a macw %a5l,%a2u,>>,%fp@\(10\)&,%a3,%acc2 + 3544: a42e a6ad 000a macw %a5l,%a2u,>>,%fp@\(10\)&,%d2,%acc1 + 354a: a4ae a6bd 000a macw %a5l,%a2u,>>,%fp@\(10\)&,%d2,%acc2 + 3550: ae6e a6ad 000a macw %a5l,%a2u,>>,%fp@\(10\)&,%sp,%acc1 + 3556: aeee a6bd 000a macw %a5l,%a2u,>>,%fp@\(10\)&,%sp,%acc2 + 355c: a221 a68d macw %a5l,%a2u,>>,%a1@-,%d1,%acc1 + 3560: a2a1 a69d macw %a5l,%a2u,>>,%a1@-,%d1,%acc2 + 3564: a661 a68d macw %a5l,%a2u,>>,%a1@-,%a3,%acc1 + 3568: a6e1 a69d macw %a5l,%a2u,>>,%a1@-,%a3,%acc2 + 356c: a421 a68d macw %a5l,%a2u,>>,%a1@-,%d2,%acc1 + 3570: a4a1 a69d macw %a5l,%a2u,>>,%a1@-,%d2,%acc2 + 3574: ae61 a68d macw %a5l,%a2u,>>,%a1@-,%sp,%acc1 + 3578: aee1 a69d macw %a5l,%a2u,>>,%a1@-,%sp,%acc2 + 357c: a221 a6ad macw %a5l,%a2u,>>,%a1@-&,%d1,%acc1 + 3580: a2a1 a6bd macw %a5l,%a2u,>>,%a1@-&,%d1,%acc2 + 3584: a661 a6ad macw %a5l,%a2u,>>,%a1@-&,%a3,%acc1 + 3588: a6e1 a6bd macw %a5l,%a2u,>>,%a1@-&,%a3,%acc2 + 358c: a421 a6ad macw %a5l,%a2u,>>,%a1@-&,%d2,%acc1 + 3590: a4a1 a6bd macw %a5l,%a2u,>>,%a1@-&,%d2,%acc2 + 3594: ae61 a6ad macw %a5l,%a2u,>>,%a1@-&,%sp,%acc1 + 3598: aee1 a6bd macw %a5l,%a2u,>>,%a1@-&,%sp,%acc2 + 359c: a213 300d macw %a5l,%d3l,%a3@,%d1,%acc1 + 35a0: a293 301d macw %a5l,%d3l,%a3@,%d1,%acc2 + 35a4: a653 300d macw %a5l,%d3l,%a3@,%a3,%acc1 + 35a8: a6d3 301d macw %a5l,%d3l,%a3@,%a3,%acc2 + 35ac: a413 300d macw %a5l,%d3l,%a3@,%d2,%acc1 + 35b0: a493 301d macw %a5l,%d3l,%a3@,%d2,%acc2 + 35b4: ae53 300d macw %a5l,%d3l,%a3@,%sp,%acc1 + 35b8: aed3 301d macw %a5l,%d3l,%a3@,%sp,%acc2 + 35bc: a213 302d macw %a5l,%d3l,%a3@&,%d1,%acc1 + 35c0: a293 303d macw %a5l,%d3l,%a3@&,%d1,%acc2 + 35c4: a653 302d macw %a5l,%d3l,%a3@&,%a3,%acc1 + 35c8: a6d3 303d macw %a5l,%d3l,%a3@&,%a3,%acc2 + 35cc: a413 302d macw %a5l,%d3l,%a3@&,%d2,%acc1 + 35d0: a493 303d macw %a5l,%d3l,%a3@&,%d2,%acc2 + 35d4: ae53 302d macw %a5l,%d3l,%a3@&,%sp,%acc1 + 35d8: aed3 303d macw %a5l,%d3l,%a3@&,%sp,%acc2 + 35dc: a21a 300d macw %a5l,%d3l,%a2@\+,%d1,%acc1 + 35e0: a29a 301d macw %a5l,%d3l,%a2@\+,%d1,%acc2 + 35e4: a65a 300d macw %a5l,%d3l,%a2@\+,%a3,%acc1 + 35e8: a6da 301d macw %a5l,%d3l,%a2@\+,%a3,%acc2 + 35ec: a41a 300d macw %a5l,%d3l,%a2@\+,%d2,%acc1 + 35f0: a49a 301d macw %a5l,%d3l,%a2@\+,%d2,%acc2 + 35f4: ae5a 300d macw %a5l,%d3l,%a2@\+,%sp,%acc1 + 35f8: aeda 301d macw %a5l,%d3l,%a2@\+,%sp,%acc2 + 35fc: a21a 302d macw %a5l,%d3l,%a2@\+&,%d1,%acc1 + 3600: a29a 303d macw %a5l,%d3l,%a2@\+&,%d1,%acc2 + 3604: a65a 302d macw %a5l,%d3l,%a2@\+&,%a3,%acc1 + 3608: a6da 303d macw %a5l,%d3l,%a2@\+&,%a3,%acc2 + 360c: a41a 302d macw %a5l,%d3l,%a2@\+&,%d2,%acc1 + 3610: a49a 303d macw %a5l,%d3l,%a2@\+&,%d2,%acc2 + 3614: ae5a 302d macw %a5l,%d3l,%a2@\+&,%sp,%acc1 + 3618: aeda 303d macw %a5l,%d3l,%a2@\+&,%sp,%acc2 + 361c: a22e 300d 000a macw %a5l,%d3l,%fp@\(10\),%d1,%acc1 + 3622: a2ae 301d 000a macw %a5l,%d3l,%fp@\(10\),%d1,%acc2 + 3628: a66e 300d 000a macw %a5l,%d3l,%fp@\(10\),%a3,%acc1 + 362e: a6ee 301d 000a macw %a5l,%d3l,%fp@\(10\),%a3,%acc2 + 3634: a42e 300d 000a macw %a5l,%d3l,%fp@\(10\),%d2,%acc1 + 363a: a4ae 301d 000a macw %a5l,%d3l,%fp@\(10\),%d2,%acc2 + 3640: ae6e 300d 000a macw %a5l,%d3l,%fp@\(10\),%sp,%acc1 + 3646: aeee 301d 000a macw %a5l,%d3l,%fp@\(10\),%sp,%acc2 + 364c: a22e 302d 000a macw %a5l,%d3l,%fp@\(10\)&,%d1,%acc1 + 3652: a2ae 303d 000a macw %a5l,%d3l,%fp@\(10\)&,%d1,%acc2 + 3658: a66e 302d 000a macw %a5l,%d3l,%fp@\(10\)&,%a3,%acc1 + 365e: a6ee 303d 000a macw %a5l,%d3l,%fp@\(10\)&,%a3,%acc2 + 3664: a42e 302d 000a macw %a5l,%d3l,%fp@\(10\)&,%d2,%acc1 + 366a: a4ae 303d 000a macw %a5l,%d3l,%fp@\(10\)&,%d2,%acc2 + 3670: ae6e 302d 000a macw %a5l,%d3l,%fp@\(10\)&,%sp,%acc1 + 3676: aeee 303d 000a macw %a5l,%d3l,%fp@\(10\)&,%sp,%acc2 + 367c: a221 300d macw %a5l,%d3l,%a1@-,%d1,%acc1 + 3680: a2a1 301d macw %a5l,%d3l,%a1@-,%d1,%acc2 + 3684: a661 300d macw %a5l,%d3l,%a1@-,%a3,%acc1 + 3688: a6e1 301d macw %a5l,%d3l,%a1@-,%a3,%acc2 + 368c: a421 300d macw %a5l,%d3l,%a1@-,%d2,%acc1 + 3690: a4a1 301d macw %a5l,%d3l,%a1@-,%d2,%acc2 + 3694: ae61 300d macw %a5l,%d3l,%a1@-,%sp,%acc1 + 3698: aee1 301d macw %a5l,%d3l,%a1@-,%sp,%acc2 + 369c: a221 302d macw %a5l,%d3l,%a1@-&,%d1,%acc1 + 36a0: a2a1 303d macw %a5l,%d3l,%a1@-&,%d1,%acc2 + 36a4: a661 302d macw %a5l,%d3l,%a1@-&,%a3,%acc1 + 36a8: a6e1 303d macw %a5l,%d3l,%a1@-&,%a3,%acc2 + 36ac: a421 302d macw %a5l,%d3l,%a1@-&,%d2,%acc1 + 36b0: a4a1 303d macw %a5l,%d3l,%a1@-&,%d2,%acc2 + 36b4: ae61 302d macw %a5l,%d3l,%a1@-&,%sp,%acc1 + 36b8: aee1 303d macw %a5l,%d3l,%a1@-&,%sp,%acc2 + 36bc: a213 320d macw %a5l,%d3l,<<,%a3@,%d1,%acc1 + 36c0: a293 321d macw %a5l,%d3l,<<,%a3@,%d1,%acc2 + 36c4: a653 320d macw %a5l,%d3l,<<,%a3@,%a3,%acc1 + 36c8: a6d3 321d macw %a5l,%d3l,<<,%a3@,%a3,%acc2 + 36cc: a413 320d macw %a5l,%d3l,<<,%a3@,%d2,%acc1 + 36d0: a493 321d macw %a5l,%d3l,<<,%a3@,%d2,%acc2 + 36d4: ae53 320d macw %a5l,%d3l,<<,%a3@,%sp,%acc1 + 36d8: aed3 321d macw %a5l,%d3l,<<,%a3@,%sp,%acc2 + 36dc: a213 322d macw %a5l,%d3l,<<,%a3@&,%d1,%acc1 + 36e0: a293 323d macw %a5l,%d3l,<<,%a3@&,%d1,%acc2 + 36e4: a653 322d macw %a5l,%d3l,<<,%a3@&,%a3,%acc1 + 36e8: a6d3 323d macw %a5l,%d3l,<<,%a3@&,%a3,%acc2 + 36ec: a413 322d macw %a5l,%d3l,<<,%a3@&,%d2,%acc1 + 36f0: a493 323d macw %a5l,%d3l,<<,%a3@&,%d2,%acc2 + 36f4: ae53 322d macw %a5l,%d3l,<<,%a3@&,%sp,%acc1 + 36f8: aed3 323d macw %a5l,%d3l,<<,%a3@&,%sp,%acc2 + 36fc: a21a 320d macw %a5l,%d3l,<<,%a2@\+,%d1,%acc1 + 3700: a29a 321d macw %a5l,%d3l,<<,%a2@\+,%d1,%acc2 + 3704: a65a 320d macw %a5l,%d3l,<<,%a2@\+,%a3,%acc1 + 3708: a6da 321d macw %a5l,%d3l,<<,%a2@\+,%a3,%acc2 + 370c: a41a 320d macw %a5l,%d3l,<<,%a2@\+,%d2,%acc1 + 3710: a49a 321d macw %a5l,%d3l,<<,%a2@\+,%d2,%acc2 + 3714: ae5a 320d macw %a5l,%d3l,<<,%a2@\+,%sp,%acc1 + 3718: aeda 321d macw %a5l,%d3l,<<,%a2@\+,%sp,%acc2 + 371c: a21a 322d macw %a5l,%d3l,<<,%a2@\+&,%d1,%acc1 + 3720: a29a 323d macw %a5l,%d3l,<<,%a2@\+&,%d1,%acc2 + 3724: a65a 322d macw %a5l,%d3l,<<,%a2@\+&,%a3,%acc1 + 3728: a6da 323d macw %a5l,%d3l,<<,%a2@\+&,%a3,%acc2 + 372c: a41a 322d macw %a5l,%d3l,<<,%a2@\+&,%d2,%acc1 + 3730: a49a 323d macw %a5l,%d3l,<<,%a2@\+&,%d2,%acc2 + 3734: ae5a 322d macw %a5l,%d3l,<<,%a2@\+&,%sp,%acc1 + 3738: aeda 323d macw %a5l,%d3l,<<,%a2@\+&,%sp,%acc2 + 373c: a22e 320d 000a macw %a5l,%d3l,<<,%fp@\(10\),%d1,%acc1 + 3742: a2ae 321d 000a macw %a5l,%d3l,<<,%fp@\(10\),%d1,%acc2 + 3748: a66e 320d 000a macw %a5l,%d3l,<<,%fp@\(10\),%a3,%acc1 + 374e: a6ee 321d 000a macw %a5l,%d3l,<<,%fp@\(10\),%a3,%acc2 + 3754: a42e 320d 000a macw %a5l,%d3l,<<,%fp@\(10\),%d2,%acc1 + 375a: a4ae 321d 000a macw %a5l,%d3l,<<,%fp@\(10\),%d2,%acc2 + 3760: ae6e 320d 000a macw %a5l,%d3l,<<,%fp@\(10\),%sp,%acc1 + 3766: aeee 321d 000a macw %a5l,%d3l,<<,%fp@\(10\),%sp,%acc2 + 376c: a22e 322d 000a macw %a5l,%d3l,<<,%fp@\(10\)&,%d1,%acc1 + 3772: a2ae 323d 000a macw %a5l,%d3l,<<,%fp@\(10\)&,%d1,%acc2 + 3778: a66e 322d 000a macw %a5l,%d3l,<<,%fp@\(10\)&,%a3,%acc1 + 377e: a6ee 323d 000a macw %a5l,%d3l,<<,%fp@\(10\)&,%a3,%acc2 + 3784: a42e 322d 000a macw %a5l,%d3l,<<,%fp@\(10\)&,%d2,%acc1 + 378a: a4ae 323d 000a macw %a5l,%d3l,<<,%fp@\(10\)&,%d2,%acc2 + 3790: ae6e 322d 000a macw %a5l,%d3l,<<,%fp@\(10\)&,%sp,%acc1 + 3796: aeee 323d 000a macw %a5l,%d3l,<<,%fp@\(10\)&,%sp,%acc2 + 379c: a221 320d macw %a5l,%d3l,<<,%a1@-,%d1,%acc1 + 37a0: a2a1 321d macw %a5l,%d3l,<<,%a1@-,%d1,%acc2 + 37a4: a661 320d macw %a5l,%d3l,<<,%a1@-,%a3,%acc1 + 37a8: a6e1 321d macw %a5l,%d3l,<<,%a1@-,%a3,%acc2 + 37ac: a421 320d macw %a5l,%d3l,<<,%a1@-,%d2,%acc1 + 37b0: a4a1 321d macw %a5l,%d3l,<<,%a1@-,%d2,%acc2 + 37b4: ae61 320d macw %a5l,%d3l,<<,%a1@-,%sp,%acc1 + 37b8: aee1 321d macw %a5l,%d3l,<<,%a1@-,%sp,%acc2 + 37bc: a221 322d macw %a5l,%d3l,<<,%a1@-&,%d1,%acc1 + 37c0: a2a1 323d macw %a5l,%d3l,<<,%a1@-&,%d1,%acc2 + 37c4: a661 322d macw %a5l,%d3l,<<,%a1@-&,%a3,%acc1 + 37c8: a6e1 323d macw %a5l,%d3l,<<,%a1@-&,%a3,%acc2 + 37cc: a421 322d macw %a5l,%d3l,<<,%a1@-&,%d2,%acc1 + 37d0: a4a1 323d macw %a5l,%d3l,<<,%a1@-&,%d2,%acc2 + 37d4: ae61 322d macw %a5l,%d3l,<<,%a1@-&,%sp,%acc1 + 37d8: aee1 323d macw %a5l,%d3l,<<,%a1@-&,%sp,%acc2 + 37dc: a213 360d macw %a5l,%d3l,>>,%a3@,%d1,%acc1 + 37e0: a293 361d macw %a5l,%d3l,>>,%a3@,%d1,%acc2 + 37e4: a653 360d macw %a5l,%d3l,>>,%a3@,%a3,%acc1 + 37e8: a6d3 361d macw %a5l,%d3l,>>,%a3@,%a3,%acc2 + 37ec: a413 360d macw %a5l,%d3l,>>,%a3@,%d2,%acc1 + 37f0: a493 361d macw %a5l,%d3l,>>,%a3@,%d2,%acc2 + 37f4: ae53 360d macw %a5l,%d3l,>>,%a3@,%sp,%acc1 + 37f8: aed3 361d macw %a5l,%d3l,>>,%a3@,%sp,%acc2 + 37fc: a213 362d macw %a5l,%d3l,>>,%a3@&,%d1,%acc1 + 3800: a293 363d macw %a5l,%d3l,>>,%a3@&,%d1,%acc2 + 3804: a653 362d macw %a5l,%d3l,>>,%a3@&,%a3,%acc1 + 3808: a6d3 363d macw %a5l,%d3l,>>,%a3@&,%a3,%acc2 + 380c: a413 362d macw %a5l,%d3l,>>,%a3@&,%d2,%acc1 + 3810: a493 363d macw %a5l,%d3l,>>,%a3@&,%d2,%acc2 + 3814: ae53 362d macw %a5l,%d3l,>>,%a3@&,%sp,%acc1 + 3818: aed3 363d macw %a5l,%d3l,>>,%a3@&,%sp,%acc2 + 381c: a21a 360d macw %a5l,%d3l,>>,%a2@\+,%d1,%acc1 + 3820: a29a 361d macw %a5l,%d3l,>>,%a2@\+,%d1,%acc2 + 3824: a65a 360d macw %a5l,%d3l,>>,%a2@\+,%a3,%acc1 + 3828: a6da 361d macw %a5l,%d3l,>>,%a2@\+,%a3,%acc2 + 382c: a41a 360d macw %a5l,%d3l,>>,%a2@\+,%d2,%acc1 + 3830: a49a 361d macw %a5l,%d3l,>>,%a2@\+,%d2,%acc2 + 3834: ae5a 360d macw %a5l,%d3l,>>,%a2@\+,%sp,%acc1 + 3838: aeda 361d macw %a5l,%d3l,>>,%a2@\+,%sp,%acc2 + 383c: a21a 362d macw %a5l,%d3l,>>,%a2@\+&,%d1,%acc1 + 3840: a29a 363d macw %a5l,%d3l,>>,%a2@\+&,%d1,%acc2 + 3844: a65a 362d macw %a5l,%d3l,>>,%a2@\+&,%a3,%acc1 + 3848: a6da 363d macw %a5l,%d3l,>>,%a2@\+&,%a3,%acc2 + 384c: a41a 362d macw %a5l,%d3l,>>,%a2@\+&,%d2,%acc1 + 3850: a49a 363d macw %a5l,%d3l,>>,%a2@\+&,%d2,%acc2 + 3854: ae5a 362d macw %a5l,%d3l,>>,%a2@\+&,%sp,%acc1 + 3858: aeda 363d macw %a5l,%d3l,>>,%a2@\+&,%sp,%acc2 + 385c: a22e 360d 000a macw %a5l,%d3l,>>,%fp@\(10\),%d1,%acc1 + 3862: a2ae 361d 000a macw %a5l,%d3l,>>,%fp@\(10\),%d1,%acc2 + 3868: a66e 360d 000a macw %a5l,%d3l,>>,%fp@\(10\),%a3,%acc1 + 386e: a6ee 361d 000a macw %a5l,%d3l,>>,%fp@\(10\),%a3,%acc2 + 3874: a42e 360d 000a macw %a5l,%d3l,>>,%fp@\(10\),%d2,%acc1 + 387a: a4ae 361d 000a macw %a5l,%d3l,>>,%fp@\(10\),%d2,%acc2 + 3880: ae6e 360d 000a macw %a5l,%d3l,>>,%fp@\(10\),%sp,%acc1 + 3886: aeee 361d 000a macw %a5l,%d3l,>>,%fp@\(10\),%sp,%acc2 + 388c: a22e 362d 000a macw %a5l,%d3l,>>,%fp@\(10\)&,%d1,%acc1 + 3892: a2ae 363d 000a macw %a5l,%d3l,>>,%fp@\(10\)&,%d1,%acc2 + 3898: a66e 362d 000a macw %a5l,%d3l,>>,%fp@\(10\)&,%a3,%acc1 + 389e: a6ee 363d 000a macw %a5l,%d3l,>>,%fp@\(10\)&,%a3,%acc2 + 38a4: a42e 362d 000a macw %a5l,%d3l,>>,%fp@\(10\)&,%d2,%acc1 + 38aa: a4ae 363d 000a macw %a5l,%d3l,>>,%fp@\(10\)&,%d2,%acc2 + 38b0: ae6e 362d 000a macw %a5l,%d3l,>>,%fp@\(10\)&,%sp,%acc1 + 38b6: aeee 363d 000a macw %a5l,%d3l,>>,%fp@\(10\)&,%sp,%acc2 + 38bc: a221 360d macw %a5l,%d3l,>>,%a1@-,%d1,%acc1 + 38c0: a2a1 361d macw %a5l,%d3l,>>,%a1@-,%d1,%acc2 + 38c4: a661 360d macw %a5l,%d3l,>>,%a1@-,%a3,%acc1 + 38c8: a6e1 361d macw %a5l,%d3l,>>,%a1@-,%a3,%acc2 + 38cc: a421 360d macw %a5l,%d3l,>>,%a1@-,%d2,%acc1 + 38d0: a4a1 361d macw %a5l,%d3l,>>,%a1@-,%d2,%acc2 + 38d4: ae61 360d macw %a5l,%d3l,>>,%a1@-,%sp,%acc1 + 38d8: aee1 361d macw %a5l,%d3l,>>,%a1@-,%sp,%acc2 + 38dc: a221 362d macw %a5l,%d3l,>>,%a1@-&,%d1,%acc1 + 38e0: a2a1 363d macw %a5l,%d3l,>>,%a1@-&,%d1,%acc2 + 38e4: a661 362d macw %a5l,%d3l,>>,%a1@-&,%a3,%acc1 + 38e8: a6e1 363d macw %a5l,%d3l,>>,%a1@-&,%a3,%acc2 + 38ec: a421 362d macw %a5l,%d3l,>>,%a1@-&,%d2,%acc1 + 38f0: a4a1 363d macw %a5l,%d3l,>>,%a1@-&,%d2,%acc2 + 38f4: ae61 362d macw %a5l,%d3l,>>,%a1@-&,%sp,%acc1 + 38f8: aee1 363d macw %a5l,%d3l,>>,%a1@-&,%sp,%acc2 + 38fc: a213 320d macw %a5l,%d3l,<<,%a3@,%d1,%acc1 + 3900: a293 321d macw %a5l,%d3l,<<,%a3@,%d1,%acc2 + 3904: a653 320d macw %a5l,%d3l,<<,%a3@,%a3,%acc1 + 3908: a6d3 321d macw %a5l,%d3l,<<,%a3@,%a3,%acc2 + 390c: a413 320d macw %a5l,%d3l,<<,%a3@,%d2,%acc1 + 3910: a493 321d macw %a5l,%d3l,<<,%a3@,%d2,%acc2 + 3914: ae53 320d macw %a5l,%d3l,<<,%a3@,%sp,%acc1 + 3918: aed3 321d macw %a5l,%d3l,<<,%a3@,%sp,%acc2 + 391c: a213 322d macw %a5l,%d3l,<<,%a3@&,%d1,%acc1 + 3920: a293 323d macw %a5l,%d3l,<<,%a3@&,%d1,%acc2 + 3924: a653 322d macw %a5l,%d3l,<<,%a3@&,%a3,%acc1 + 3928: a6d3 323d macw %a5l,%d3l,<<,%a3@&,%a3,%acc2 + 392c: a413 322d macw %a5l,%d3l,<<,%a3@&,%d2,%acc1 + 3930: a493 323d macw %a5l,%d3l,<<,%a3@&,%d2,%acc2 + 3934: ae53 322d macw %a5l,%d3l,<<,%a3@&,%sp,%acc1 + 3938: aed3 323d macw %a5l,%d3l,<<,%a3@&,%sp,%acc2 + 393c: a21a 320d macw %a5l,%d3l,<<,%a2@\+,%d1,%acc1 + 3940: a29a 321d macw %a5l,%d3l,<<,%a2@\+,%d1,%acc2 + 3944: a65a 320d macw %a5l,%d3l,<<,%a2@\+,%a3,%acc1 + 3948: a6da 321d macw %a5l,%d3l,<<,%a2@\+,%a3,%acc2 + 394c: a41a 320d macw %a5l,%d3l,<<,%a2@\+,%d2,%acc1 + 3950: a49a 321d macw %a5l,%d3l,<<,%a2@\+,%d2,%acc2 + 3954: ae5a 320d macw %a5l,%d3l,<<,%a2@\+,%sp,%acc1 + 3958: aeda 321d macw %a5l,%d3l,<<,%a2@\+,%sp,%acc2 + 395c: a21a 322d macw %a5l,%d3l,<<,%a2@\+&,%d1,%acc1 + 3960: a29a 323d macw %a5l,%d3l,<<,%a2@\+&,%d1,%acc2 + 3964: a65a 322d macw %a5l,%d3l,<<,%a2@\+&,%a3,%acc1 + 3968: a6da 323d macw %a5l,%d3l,<<,%a2@\+&,%a3,%acc2 + 396c: a41a 322d macw %a5l,%d3l,<<,%a2@\+&,%d2,%acc1 + 3970: a49a 323d macw %a5l,%d3l,<<,%a2@\+&,%d2,%acc2 + 3974: ae5a 322d macw %a5l,%d3l,<<,%a2@\+&,%sp,%acc1 + 3978: aeda 323d macw %a5l,%d3l,<<,%a2@\+&,%sp,%acc2 + 397c: a22e 320d 000a macw %a5l,%d3l,<<,%fp@\(10\),%d1,%acc1 + 3982: a2ae 321d 000a macw %a5l,%d3l,<<,%fp@\(10\),%d1,%acc2 + 3988: a66e 320d 000a macw %a5l,%d3l,<<,%fp@\(10\),%a3,%acc1 + 398e: a6ee 321d 000a macw %a5l,%d3l,<<,%fp@\(10\),%a3,%acc2 + 3994: a42e 320d 000a macw %a5l,%d3l,<<,%fp@\(10\),%d2,%acc1 + 399a: a4ae 321d 000a macw %a5l,%d3l,<<,%fp@\(10\),%d2,%acc2 + 39a0: ae6e 320d 000a macw %a5l,%d3l,<<,%fp@\(10\),%sp,%acc1 + 39a6: aeee 321d 000a macw %a5l,%d3l,<<,%fp@\(10\),%sp,%acc2 + 39ac: a22e 322d 000a macw %a5l,%d3l,<<,%fp@\(10\)&,%d1,%acc1 + 39b2: a2ae 323d 000a macw %a5l,%d3l,<<,%fp@\(10\)&,%d1,%acc2 + 39b8: a66e 322d 000a macw %a5l,%d3l,<<,%fp@\(10\)&,%a3,%acc1 + 39be: a6ee 323d 000a macw %a5l,%d3l,<<,%fp@\(10\)&,%a3,%acc2 + 39c4: a42e 322d 000a macw %a5l,%d3l,<<,%fp@\(10\)&,%d2,%acc1 + 39ca: a4ae 323d 000a macw %a5l,%d3l,<<,%fp@\(10\)&,%d2,%acc2 + 39d0: ae6e 322d 000a macw %a5l,%d3l,<<,%fp@\(10\)&,%sp,%acc1 + 39d6: aeee 323d 000a macw %a5l,%d3l,<<,%fp@\(10\)&,%sp,%acc2 + 39dc: a221 320d macw %a5l,%d3l,<<,%a1@-,%d1,%acc1 + 39e0: a2a1 321d macw %a5l,%d3l,<<,%a1@-,%d1,%acc2 + 39e4: a661 320d macw %a5l,%d3l,<<,%a1@-,%a3,%acc1 + 39e8: a6e1 321d macw %a5l,%d3l,<<,%a1@-,%a3,%acc2 + 39ec: a421 320d macw %a5l,%d3l,<<,%a1@-,%d2,%acc1 + 39f0: a4a1 321d macw %a5l,%d3l,<<,%a1@-,%d2,%acc2 + 39f4: ae61 320d macw %a5l,%d3l,<<,%a1@-,%sp,%acc1 + 39f8: aee1 321d macw %a5l,%d3l,<<,%a1@-,%sp,%acc2 + 39fc: a221 322d macw %a5l,%d3l,<<,%a1@-&,%d1,%acc1 + 3a00: a2a1 323d macw %a5l,%d3l,<<,%a1@-&,%d1,%acc2 + 3a04: a661 322d macw %a5l,%d3l,<<,%a1@-&,%a3,%acc1 + 3a08: a6e1 323d macw %a5l,%d3l,<<,%a1@-&,%a3,%acc2 + 3a0c: a421 322d macw %a5l,%d3l,<<,%a1@-&,%d2,%acc1 + 3a10: a4a1 323d macw %a5l,%d3l,<<,%a1@-&,%d2,%acc2 + 3a14: ae61 322d macw %a5l,%d3l,<<,%a1@-&,%sp,%acc1 + 3a18: aee1 323d macw %a5l,%d3l,<<,%a1@-&,%sp,%acc2 + 3a1c: a213 360d macw %a5l,%d3l,>>,%a3@,%d1,%acc1 + 3a20: a293 361d macw %a5l,%d3l,>>,%a3@,%d1,%acc2 + 3a24: a653 360d macw %a5l,%d3l,>>,%a3@,%a3,%acc1 + 3a28: a6d3 361d macw %a5l,%d3l,>>,%a3@,%a3,%acc2 + 3a2c: a413 360d macw %a5l,%d3l,>>,%a3@,%d2,%acc1 + 3a30: a493 361d macw %a5l,%d3l,>>,%a3@,%d2,%acc2 + 3a34: ae53 360d macw %a5l,%d3l,>>,%a3@,%sp,%acc1 + 3a38: aed3 361d macw %a5l,%d3l,>>,%a3@,%sp,%acc2 + 3a3c: a213 362d macw %a5l,%d3l,>>,%a3@&,%d1,%acc1 + 3a40: a293 363d macw %a5l,%d3l,>>,%a3@&,%d1,%acc2 + 3a44: a653 362d macw %a5l,%d3l,>>,%a3@&,%a3,%acc1 + 3a48: a6d3 363d macw %a5l,%d3l,>>,%a3@&,%a3,%acc2 + 3a4c: a413 362d macw %a5l,%d3l,>>,%a3@&,%d2,%acc1 + 3a50: a493 363d macw %a5l,%d3l,>>,%a3@&,%d2,%acc2 + 3a54: ae53 362d macw %a5l,%d3l,>>,%a3@&,%sp,%acc1 + 3a58: aed3 363d macw %a5l,%d3l,>>,%a3@&,%sp,%acc2 + 3a5c: a21a 360d macw %a5l,%d3l,>>,%a2@\+,%d1,%acc1 + 3a60: a29a 361d macw %a5l,%d3l,>>,%a2@\+,%d1,%acc2 + 3a64: a65a 360d macw %a5l,%d3l,>>,%a2@\+,%a3,%acc1 + 3a68: a6da 361d macw %a5l,%d3l,>>,%a2@\+,%a3,%acc2 + 3a6c: a41a 360d macw %a5l,%d3l,>>,%a2@\+,%d2,%acc1 + 3a70: a49a 361d macw %a5l,%d3l,>>,%a2@\+,%d2,%acc2 + 3a74: ae5a 360d macw %a5l,%d3l,>>,%a2@\+,%sp,%acc1 + 3a78: aeda 361d macw %a5l,%d3l,>>,%a2@\+,%sp,%acc2 + 3a7c: a21a 362d macw %a5l,%d3l,>>,%a2@\+&,%d1,%acc1 + 3a80: a29a 363d macw %a5l,%d3l,>>,%a2@\+&,%d1,%acc2 + 3a84: a65a 362d macw %a5l,%d3l,>>,%a2@\+&,%a3,%acc1 + 3a88: a6da 363d macw %a5l,%d3l,>>,%a2@\+&,%a3,%acc2 + 3a8c: a41a 362d macw %a5l,%d3l,>>,%a2@\+&,%d2,%acc1 + 3a90: a49a 363d macw %a5l,%d3l,>>,%a2@\+&,%d2,%acc2 + 3a94: ae5a 362d macw %a5l,%d3l,>>,%a2@\+&,%sp,%acc1 + 3a98: aeda 363d macw %a5l,%d3l,>>,%a2@\+&,%sp,%acc2 + 3a9c: a22e 360d 000a macw %a5l,%d3l,>>,%fp@\(10\),%d1,%acc1 + 3aa2: a2ae 361d 000a macw %a5l,%d3l,>>,%fp@\(10\),%d1,%acc2 + 3aa8: a66e 360d 000a macw %a5l,%d3l,>>,%fp@\(10\),%a3,%acc1 + 3aae: a6ee 361d 000a macw %a5l,%d3l,>>,%fp@\(10\),%a3,%acc2 + 3ab4: a42e 360d 000a macw %a5l,%d3l,>>,%fp@\(10\),%d2,%acc1 + 3aba: a4ae 361d 000a macw %a5l,%d3l,>>,%fp@\(10\),%d2,%acc2 + 3ac0: ae6e 360d 000a macw %a5l,%d3l,>>,%fp@\(10\),%sp,%acc1 + 3ac6: aeee 361d 000a macw %a5l,%d3l,>>,%fp@\(10\),%sp,%acc2 + 3acc: a22e 362d 000a macw %a5l,%d3l,>>,%fp@\(10\)&,%d1,%acc1 + 3ad2: a2ae 363d 000a macw %a5l,%d3l,>>,%fp@\(10\)&,%d1,%acc2 + 3ad8: a66e 362d 000a macw %a5l,%d3l,>>,%fp@\(10\)&,%a3,%acc1 + 3ade: a6ee 363d 000a macw %a5l,%d3l,>>,%fp@\(10\)&,%a3,%acc2 + 3ae4: a42e 362d 000a macw %a5l,%d3l,>>,%fp@\(10\)&,%d2,%acc1 + 3aea: a4ae 363d 000a macw %a5l,%d3l,>>,%fp@\(10\)&,%d2,%acc2 + 3af0: ae6e 362d 000a macw %a5l,%d3l,>>,%fp@\(10\)&,%sp,%acc1 + 3af6: aeee 363d 000a macw %a5l,%d3l,>>,%fp@\(10\)&,%sp,%acc2 + 3afc: a221 360d macw %a5l,%d3l,>>,%a1@-,%d1,%acc1 + 3b00: a2a1 361d macw %a5l,%d3l,>>,%a1@-,%d1,%acc2 + 3b04: a661 360d macw %a5l,%d3l,>>,%a1@-,%a3,%acc1 + 3b08: a6e1 361d macw %a5l,%d3l,>>,%a1@-,%a3,%acc2 + 3b0c: a421 360d macw %a5l,%d3l,>>,%a1@-,%d2,%acc1 + 3b10: a4a1 361d macw %a5l,%d3l,>>,%a1@-,%d2,%acc2 + 3b14: ae61 360d macw %a5l,%d3l,>>,%a1@-,%sp,%acc1 + 3b18: aee1 361d macw %a5l,%d3l,>>,%a1@-,%sp,%acc2 + 3b1c: a221 362d macw %a5l,%d3l,>>,%a1@-&,%d1,%acc1 + 3b20: a2a1 363d macw %a5l,%d3l,>>,%a1@-&,%d1,%acc2 + 3b24: a661 362d macw %a5l,%d3l,>>,%a1@-&,%a3,%acc1 + 3b28: a6e1 363d macw %a5l,%d3l,>>,%a1@-&,%a3,%acc2 + 3b2c: a421 362d macw %a5l,%d3l,>>,%a1@-&,%d2,%acc1 + 3b30: a4a1 363d macw %a5l,%d3l,>>,%a1@-&,%d2,%acc2 + 3b34: ae61 362d macw %a5l,%d3l,>>,%a1@-&,%sp,%acc1 + 3b38: aee1 363d macw %a5l,%d3l,>>,%a1@-&,%sp,%acc2 + 3b3c: a213 f08d macw %a5l,%a7u,%a3@,%d1,%acc1 + 3b40: a293 f09d macw %a5l,%a7u,%a3@,%d1,%acc2 + 3b44: a653 f08d macw %a5l,%a7u,%a3@,%a3,%acc1 + 3b48: a6d3 f09d macw %a5l,%a7u,%a3@,%a3,%acc2 + 3b4c: a413 f08d macw %a5l,%a7u,%a3@,%d2,%acc1 + 3b50: a493 f09d macw %a5l,%a7u,%a3@,%d2,%acc2 + 3b54: ae53 f08d macw %a5l,%a7u,%a3@,%sp,%acc1 + 3b58: aed3 f09d macw %a5l,%a7u,%a3@,%sp,%acc2 + 3b5c: a213 f0ad macw %a5l,%a7u,%a3@&,%d1,%acc1 + 3b60: a293 f0bd macw %a5l,%a7u,%a3@&,%d1,%acc2 + 3b64: a653 f0ad macw %a5l,%a7u,%a3@&,%a3,%acc1 + 3b68: a6d3 f0bd macw %a5l,%a7u,%a3@&,%a3,%acc2 + 3b6c: a413 f0ad macw %a5l,%a7u,%a3@&,%d2,%acc1 + 3b70: a493 f0bd macw %a5l,%a7u,%a3@&,%d2,%acc2 + 3b74: ae53 f0ad macw %a5l,%a7u,%a3@&,%sp,%acc1 + 3b78: aed3 f0bd macw %a5l,%a7u,%a3@&,%sp,%acc2 + 3b7c: a21a f08d macw %a5l,%a7u,%a2@\+,%d1,%acc1 + 3b80: a29a f09d macw %a5l,%a7u,%a2@\+,%d1,%acc2 + 3b84: a65a f08d macw %a5l,%a7u,%a2@\+,%a3,%acc1 + 3b88: a6da f09d macw %a5l,%a7u,%a2@\+,%a3,%acc2 + 3b8c: a41a f08d macw %a5l,%a7u,%a2@\+,%d2,%acc1 + 3b90: a49a f09d macw %a5l,%a7u,%a2@\+,%d2,%acc2 + 3b94: ae5a f08d macw %a5l,%a7u,%a2@\+,%sp,%acc1 + 3b98: aeda f09d macw %a5l,%a7u,%a2@\+,%sp,%acc2 + 3b9c: a21a f0ad macw %a5l,%a7u,%a2@\+&,%d1,%acc1 + 3ba0: a29a f0bd macw %a5l,%a7u,%a2@\+&,%d1,%acc2 + 3ba4: a65a f0ad macw %a5l,%a7u,%a2@\+&,%a3,%acc1 + 3ba8: a6da f0bd macw %a5l,%a7u,%a2@\+&,%a3,%acc2 + 3bac: a41a f0ad macw %a5l,%a7u,%a2@\+&,%d2,%acc1 + 3bb0: a49a f0bd macw %a5l,%a7u,%a2@\+&,%d2,%acc2 + 3bb4: ae5a f0ad macw %a5l,%a7u,%a2@\+&,%sp,%acc1 + 3bb8: aeda f0bd macw %a5l,%a7u,%a2@\+&,%sp,%acc2 + 3bbc: a22e f08d 000a macw %a5l,%a7u,%fp@\(10\),%d1,%acc1 + 3bc2: a2ae f09d 000a macw %a5l,%a7u,%fp@\(10\),%d1,%acc2 + 3bc8: a66e f08d 000a macw %a5l,%a7u,%fp@\(10\),%a3,%acc1 + 3bce: a6ee f09d 000a macw %a5l,%a7u,%fp@\(10\),%a3,%acc2 + 3bd4: a42e f08d 000a macw %a5l,%a7u,%fp@\(10\),%d2,%acc1 + 3bda: a4ae f09d 000a macw %a5l,%a7u,%fp@\(10\),%d2,%acc2 + 3be0: ae6e f08d 000a macw %a5l,%a7u,%fp@\(10\),%sp,%acc1 + 3be6: aeee f09d 000a macw %a5l,%a7u,%fp@\(10\),%sp,%acc2 + 3bec: a22e f0ad 000a macw %a5l,%a7u,%fp@\(10\)&,%d1,%acc1 + 3bf2: a2ae f0bd 000a macw %a5l,%a7u,%fp@\(10\)&,%d1,%acc2 + 3bf8: a66e f0ad 000a macw %a5l,%a7u,%fp@\(10\)&,%a3,%acc1 + 3bfe: a6ee f0bd 000a macw %a5l,%a7u,%fp@\(10\)&,%a3,%acc2 + 3c04: a42e f0ad 000a macw %a5l,%a7u,%fp@\(10\)&,%d2,%acc1 + 3c0a: a4ae f0bd 000a macw %a5l,%a7u,%fp@\(10\)&,%d2,%acc2 + 3c10: ae6e f0ad 000a macw %a5l,%a7u,%fp@\(10\)&,%sp,%acc1 + 3c16: aeee f0bd 000a macw %a5l,%a7u,%fp@\(10\)&,%sp,%acc2 + 3c1c: a221 f08d macw %a5l,%a7u,%a1@-,%d1,%acc1 + 3c20: a2a1 f09d macw %a5l,%a7u,%a1@-,%d1,%acc2 + 3c24: a661 f08d macw %a5l,%a7u,%a1@-,%a3,%acc1 + 3c28: a6e1 f09d macw %a5l,%a7u,%a1@-,%a3,%acc2 + 3c2c: a421 f08d macw %a5l,%a7u,%a1@-,%d2,%acc1 + 3c30: a4a1 f09d macw %a5l,%a7u,%a1@-,%d2,%acc2 + 3c34: ae61 f08d macw %a5l,%a7u,%a1@-,%sp,%acc1 + 3c38: aee1 f09d macw %a5l,%a7u,%a1@-,%sp,%acc2 + 3c3c: a221 f0ad macw %a5l,%a7u,%a1@-&,%d1,%acc1 + 3c40: a2a1 f0bd macw %a5l,%a7u,%a1@-&,%d1,%acc2 + 3c44: a661 f0ad macw %a5l,%a7u,%a1@-&,%a3,%acc1 + 3c48: a6e1 f0bd macw %a5l,%a7u,%a1@-&,%a3,%acc2 + 3c4c: a421 f0ad macw %a5l,%a7u,%a1@-&,%d2,%acc1 + 3c50: a4a1 f0bd macw %a5l,%a7u,%a1@-&,%d2,%acc2 + 3c54: ae61 f0ad macw %a5l,%a7u,%a1@-&,%sp,%acc1 + 3c58: aee1 f0bd macw %a5l,%a7u,%a1@-&,%sp,%acc2 + 3c5c: a213 f28d macw %a5l,%a7u,<<,%a3@,%d1,%acc1 + 3c60: a293 f29d macw %a5l,%a7u,<<,%a3@,%d1,%acc2 + 3c64: a653 f28d macw %a5l,%a7u,<<,%a3@,%a3,%acc1 + 3c68: a6d3 f29d macw %a5l,%a7u,<<,%a3@,%a3,%acc2 + 3c6c: a413 f28d macw %a5l,%a7u,<<,%a3@,%d2,%acc1 + 3c70: a493 f29d macw %a5l,%a7u,<<,%a3@,%d2,%acc2 + 3c74: ae53 f28d macw %a5l,%a7u,<<,%a3@,%sp,%acc1 + 3c78: aed3 f29d macw %a5l,%a7u,<<,%a3@,%sp,%acc2 + 3c7c: a213 f2ad macw %a5l,%a7u,<<,%a3@&,%d1,%acc1 + 3c80: a293 f2bd macw %a5l,%a7u,<<,%a3@&,%d1,%acc2 + 3c84: a653 f2ad macw %a5l,%a7u,<<,%a3@&,%a3,%acc1 + 3c88: a6d3 f2bd macw %a5l,%a7u,<<,%a3@&,%a3,%acc2 + 3c8c: a413 f2ad macw %a5l,%a7u,<<,%a3@&,%d2,%acc1 + 3c90: a493 f2bd macw %a5l,%a7u,<<,%a3@&,%d2,%acc2 + 3c94: ae53 f2ad macw %a5l,%a7u,<<,%a3@&,%sp,%acc1 + 3c98: aed3 f2bd macw %a5l,%a7u,<<,%a3@&,%sp,%acc2 + 3c9c: a21a f28d macw %a5l,%a7u,<<,%a2@\+,%d1,%acc1 + 3ca0: a29a f29d macw %a5l,%a7u,<<,%a2@\+,%d1,%acc2 + 3ca4: a65a f28d macw %a5l,%a7u,<<,%a2@\+,%a3,%acc1 + 3ca8: a6da f29d macw %a5l,%a7u,<<,%a2@\+,%a3,%acc2 + 3cac: a41a f28d macw %a5l,%a7u,<<,%a2@\+,%d2,%acc1 + 3cb0: a49a f29d macw %a5l,%a7u,<<,%a2@\+,%d2,%acc2 + 3cb4: ae5a f28d macw %a5l,%a7u,<<,%a2@\+,%sp,%acc1 + 3cb8: aeda f29d macw %a5l,%a7u,<<,%a2@\+,%sp,%acc2 + 3cbc: a21a f2ad macw %a5l,%a7u,<<,%a2@\+&,%d1,%acc1 + 3cc0: a29a f2bd macw %a5l,%a7u,<<,%a2@\+&,%d1,%acc2 + 3cc4: a65a f2ad macw %a5l,%a7u,<<,%a2@\+&,%a3,%acc1 + 3cc8: a6da f2bd macw %a5l,%a7u,<<,%a2@\+&,%a3,%acc2 + 3ccc: a41a f2ad macw %a5l,%a7u,<<,%a2@\+&,%d2,%acc1 + 3cd0: a49a f2bd macw %a5l,%a7u,<<,%a2@\+&,%d2,%acc2 + 3cd4: ae5a f2ad macw %a5l,%a7u,<<,%a2@\+&,%sp,%acc1 + 3cd8: aeda f2bd macw %a5l,%a7u,<<,%a2@\+&,%sp,%acc2 + 3cdc: a22e f28d 000a macw %a5l,%a7u,<<,%fp@\(10\),%d1,%acc1 + 3ce2: a2ae f29d 000a macw %a5l,%a7u,<<,%fp@\(10\),%d1,%acc2 + 3ce8: a66e f28d 000a macw %a5l,%a7u,<<,%fp@\(10\),%a3,%acc1 + 3cee: a6ee f29d 000a macw %a5l,%a7u,<<,%fp@\(10\),%a3,%acc2 + 3cf4: a42e f28d 000a macw %a5l,%a7u,<<,%fp@\(10\),%d2,%acc1 + 3cfa: a4ae f29d 000a macw %a5l,%a7u,<<,%fp@\(10\),%d2,%acc2 + 3d00: ae6e f28d 000a macw %a5l,%a7u,<<,%fp@\(10\),%sp,%acc1 + 3d06: aeee f29d 000a macw %a5l,%a7u,<<,%fp@\(10\),%sp,%acc2 + 3d0c: a22e f2ad 000a macw %a5l,%a7u,<<,%fp@\(10\)&,%d1,%acc1 + 3d12: a2ae f2bd 000a macw %a5l,%a7u,<<,%fp@\(10\)&,%d1,%acc2 + 3d18: a66e f2ad 000a macw %a5l,%a7u,<<,%fp@\(10\)&,%a3,%acc1 + 3d1e: a6ee f2bd 000a macw %a5l,%a7u,<<,%fp@\(10\)&,%a3,%acc2 + 3d24: a42e f2ad 000a macw %a5l,%a7u,<<,%fp@\(10\)&,%d2,%acc1 + 3d2a: a4ae f2bd 000a macw %a5l,%a7u,<<,%fp@\(10\)&,%d2,%acc2 + 3d30: ae6e f2ad 000a macw %a5l,%a7u,<<,%fp@\(10\)&,%sp,%acc1 + 3d36: aeee f2bd 000a macw %a5l,%a7u,<<,%fp@\(10\)&,%sp,%acc2 + 3d3c: a221 f28d macw %a5l,%a7u,<<,%a1@-,%d1,%acc1 + 3d40: a2a1 f29d macw %a5l,%a7u,<<,%a1@-,%d1,%acc2 + 3d44: a661 f28d macw %a5l,%a7u,<<,%a1@-,%a3,%acc1 + 3d48: a6e1 f29d macw %a5l,%a7u,<<,%a1@-,%a3,%acc2 + 3d4c: a421 f28d macw %a5l,%a7u,<<,%a1@-,%d2,%acc1 + 3d50: a4a1 f29d macw %a5l,%a7u,<<,%a1@-,%d2,%acc2 + 3d54: ae61 f28d macw %a5l,%a7u,<<,%a1@-,%sp,%acc1 + 3d58: aee1 f29d macw %a5l,%a7u,<<,%a1@-,%sp,%acc2 + 3d5c: a221 f2ad macw %a5l,%a7u,<<,%a1@-&,%d1,%acc1 + 3d60: a2a1 f2bd macw %a5l,%a7u,<<,%a1@-&,%d1,%acc2 + 3d64: a661 f2ad macw %a5l,%a7u,<<,%a1@-&,%a3,%acc1 + 3d68: a6e1 f2bd macw %a5l,%a7u,<<,%a1@-&,%a3,%acc2 + 3d6c: a421 f2ad macw %a5l,%a7u,<<,%a1@-&,%d2,%acc1 + 3d70: a4a1 f2bd macw %a5l,%a7u,<<,%a1@-&,%d2,%acc2 + 3d74: ae61 f2ad macw %a5l,%a7u,<<,%a1@-&,%sp,%acc1 + 3d78: aee1 f2bd macw %a5l,%a7u,<<,%a1@-&,%sp,%acc2 + 3d7c: a213 f68d macw %a5l,%a7u,>>,%a3@,%d1,%acc1 + 3d80: a293 f69d macw %a5l,%a7u,>>,%a3@,%d1,%acc2 + 3d84: a653 f68d macw %a5l,%a7u,>>,%a3@,%a3,%acc1 + 3d88: a6d3 f69d macw %a5l,%a7u,>>,%a3@,%a3,%acc2 + 3d8c: a413 f68d macw %a5l,%a7u,>>,%a3@,%d2,%acc1 + 3d90: a493 f69d macw %a5l,%a7u,>>,%a3@,%d2,%acc2 + 3d94: ae53 f68d macw %a5l,%a7u,>>,%a3@,%sp,%acc1 + 3d98: aed3 f69d macw %a5l,%a7u,>>,%a3@,%sp,%acc2 + 3d9c: a213 f6ad macw %a5l,%a7u,>>,%a3@&,%d1,%acc1 + 3da0: a293 f6bd macw %a5l,%a7u,>>,%a3@&,%d1,%acc2 + 3da4: a653 f6ad macw %a5l,%a7u,>>,%a3@&,%a3,%acc1 + 3da8: a6d3 f6bd macw %a5l,%a7u,>>,%a3@&,%a3,%acc2 + 3dac: a413 f6ad macw %a5l,%a7u,>>,%a3@&,%d2,%acc1 + 3db0: a493 f6bd macw %a5l,%a7u,>>,%a3@&,%d2,%acc2 + 3db4: ae53 f6ad macw %a5l,%a7u,>>,%a3@&,%sp,%acc1 + 3db8: aed3 f6bd macw %a5l,%a7u,>>,%a3@&,%sp,%acc2 + 3dbc: a21a f68d macw %a5l,%a7u,>>,%a2@\+,%d1,%acc1 + 3dc0: a29a f69d macw %a5l,%a7u,>>,%a2@\+,%d1,%acc2 + 3dc4: a65a f68d macw %a5l,%a7u,>>,%a2@\+,%a3,%acc1 + 3dc8: a6da f69d macw %a5l,%a7u,>>,%a2@\+,%a3,%acc2 + 3dcc: a41a f68d macw %a5l,%a7u,>>,%a2@\+,%d2,%acc1 + 3dd0: a49a f69d macw %a5l,%a7u,>>,%a2@\+,%d2,%acc2 + 3dd4: ae5a f68d macw %a5l,%a7u,>>,%a2@\+,%sp,%acc1 + 3dd8: aeda f69d macw %a5l,%a7u,>>,%a2@\+,%sp,%acc2 + 3ddc: a21a f6ad macw %a5l,%a7u,>>,%a2@\+&,%d1,%acc1 + 3de0: a29a f6bd macw %a5l,%a7u,>>,%a2@\+&,%d1,%acc2 + 3de4: a65a f6ad macw %a5l,%a7u,>>,%a2@\+&,%a3,%acc1 + 3de8: a6da f6bd macw %a5l,%a7u,>>,%a2@\+&,%a3,%acc2 + 3dec: a41a f6ad macw %a5l,%a7u,>>,%a2@\+&,%d2,%acc1 + 3df0: a49a f6bd macw %a5l,%a7u,>>,%a2@\+&,%d2,%acc2 + 3df4: ae5a f6ad macw %a5l,%a7u,>>,%a2@\+&,%sp,%acc1 + 3df8: aeda f6bd macw %a5l,%a7u,>>,%a2@\+&,%sp,%acc2 + 3dfc: a22e f68d 000a macw %a5l,%a7u,>>,%fp@\(10\),%d1,%acc1 + 3e02: a2ae f69d 000a macw %a5l,%a7u,>>,%fp@\(10\),%d1,%acc2 + 3e08: a66e f68d 000a macw %a5l,%a7u,>>,%fp@\(10\),%a3,%acc1 + 3e0e: a6ee f69d 000a macw %a5l,%a7u,>>,%fp@\(10\),%a3,%acc2 + 3e14: a42e f68d 000a macw %a5l,%a7u,>>,%fp@\(10\),%d2,%acc1 + 3e1a: a4ae f69d 000a macw %a5l,%a7u,>>,%fp@\(10\),%d2,%acc2 + 3e20: ae6e f68d 000a macw %a5l,%a7u,>>,%fp@\(10\),%sp,%acc1 + 3e26: aeee f69d 000a macw %a5l,%a7u,>>,%fp@\(10\),%sp,%acc2 + 3e2c: a22e f6ad 000a macw %a5l,%a7u,>>,%fp@\(10\)&,%d1,%acc1 + 3e32: a2ae f6bd 000a macw %a5l,%a7u,>>,%fp@\(10\)&,%d1,%acc2 + 3e38: a66e f6ad 000a macw %a5l,%a7u,>>,%fp@\(10\)&,%a3,%acc1 + 3e3e: a6ee f6bd 000a macw %a5l,%a7u,>>,%fp@\(10\)&,%a3,%acc2 + 3e44: a42e f6ad 000a macw %a5l,%a7u,>>,%fp@\(10\)&,%d2,%acc1 + 3e4a: a4ae f6bd 000a macw %a5l,%a7u,>>,%fp@\(10\)&,%d2,%acc2 + 3e50: ae6e f6ad 000a macw %a5l,%a7u,>>,%fp@\(10\)&,%sp,%acc1 + 3e56: aeee f6bd 000a macw %a5l,%a7u,>>,%fp@\(10\)&,%sp,%acc2 + 3e5c: a221 f68d macw %a5l,%a7u,>>,%a1@-,%d1,%acc1 + 3e60: a2a1 f69d macw %a5l,%a7u,>>,%a1@-,%d1,%acc2 + 3e64: a661 f68d macw %a5l,%a7u,>>,%a1@-,%a3,%acc1 + 3e68: a6e1 f69d macw %a5l,%a7u,>>,%a1@-,%a3,%acc2 + 3e6c: a421 f68d macw %a5l,%a7u,>>,%a1@-,%d2,%acc1 + 3e70: a4a1 f69d macw %a5l,%a7u,>>,%a1@-,%d2,%acc2 + 3e74: ae61 f68d macw %a5l,%a7u,>>,%a1@-,%sp,%acc1 + 3e78: aee1 f69d macw %a5l,%a7u,>>,%a1@-,%sp,%acc2 + 3e7c: a221 f6ad macw %a5l,%a7u,>>,%a1@-&,%d1,%acc1 + 3e80: a2a1 f6bd macw %a5l,%a7u,>>,%a1@-&,%d1,%acc2 + 3e84: a661 f6ad macw %a5l,%a7u,>>,%a1@-&,%a3,%acc1 + 3e88: a6e1 f6bd macw %a5l,%a7u,>>,%a1@-&,%a3,%acc2 + 3e8c: a421 f6ad macw %a5l,%a7u,>>,%a1@-&,%d2,%acc1 + 3e90: a4a1 f6bd macw %a5l,%a7u,>>,%a1@-&,%d2,%acc2 + 3e94: ae61 f6ad macw %a5l,%a7u,>>,%a1@-&,%sp,%acc1 + 3e98: aee1 f6bd macw %a5l,%a7u,>>,%a1@-&,%sp,%acc2 + 3e9c: a213 f28d macw %a5l,%a7u,<<,%a3@,%d1,%acc1 + 3ea0: a293 f29d macw %a5l,%a7u,<<,%a3@,%d1,%acc2 + 3ea4: a653 f28d macw %a5l,%a7u,<<,%a3@,%a3,%acc1 + 3ea8: a6d3 f29d macw %a5l,%a7u,<<,%a3@,%a3,%acc2 + 3eac: a413 f28d macw %a5l,%a7u,<<,%a3@,%d2,%acc1 + 3eb0: a493 f29d macw %a5l,%a7u,<<,%a3@,%d2,%acc2 + 3eb4: ae53 f28d macw %a5l,%a7u,<<,%a3@,%sp,%acc1 + 3eb8: aed3 f29d macw %a5l,%a7u,<<,%a3@,%sp,%acc2 + 3ebc: a213 f2ad macw %a5l,%a7u,<<,%a3@&,%d1,%acc1 + 3ec0: a293 f2bd macw %a5l,%a7u,<<,%a3@&,%d1,%acc2 + 3ec4: a653 f2ad macw %a5l,%a7u,<<,%a3@&,%a3,%acc1 + 3ec8: a6d3 f2bd macw %a5l,%a7u,<<,%a3@&,%a3,%acc2 + 3ecc: a413 f2ad macw %a5l,%a7u,<<,%a3@&,%d2,%acc1 + 3ed0: a493 f2bd macw %a5l,%a7u,<<,%a3@&,%d2,%acc2 + 3ed4: ae53 f2ad macw %a5l,%a7u,<<,%a3@&,%sp,%acc1 + 3ed8: aed3 f2bd macw %a5l,%a7u,<<,%a3@&,%sp,%acc2 + 3edc: a21a f28d macw %a5l,%a7u,<<,%a2@\+,%d1,%acc1 + 3ee0: a29a f29d macw %a5l,%a7u,<<,%a2@\+,%d1,%acc2 + 3ee4: a65a f28d macw %a5l,%a7u,<<,%a2@\+,%a3,%acc1 + 3ee8: a6da f29d macw %a5l,%a7u,<<,%a2@\+,%a3,%acc2 + 3eec: a41a f28d macw %a5l,%a7u,<<,%a2@\+,%d2,%acc1 + 3ef0: a49a f29d macw %a5l,%a7u,<<,%a2@\+,%d2,%acc2 + 3ef4: ae5a f28d macw %a5l,%a7u,<<,%a2@\+,%sp,%acc1 + 3ef8: aeda f29d macw %a5l,%a7u,<<,%a2@\+,%sp,%acc2 + 3efc: a21a f2ad macw %a5l,%a7u,<<,%a2@\+&,%d1,%acc1 + 3f00: a29a f2bd macw %a5l,%a7u,<<,%a2@\+&,%d1,%acc2 + 3f04: a65a f2ad macw %a5l,%a7u,<<,%a2@\+&,%a3,%acc1 + 3f08: a6da f2bd macw %a5l,%a7u,<<,%a2@\+&,%a3,%acc2 + 3f0c: a41a f2ad macw %a5l,%a7u,<<,%a2@\+&,%d2,%acc1 + 3f10: a49a f2bd macw %a5l,%a7u,<<,%a2@\+&,%d2,%acc2 + 3f14: ae5a f2ad macw %a5l,%a7u,<<,%a2@\+&,%sp,%acc1 + 3f18: aeda f2bd macw %a5l,%a7u,<<,%a2@\+&,%sp,%acc2 + 3f1c: a22e f28d 000a macw %a5l,%a7u,<<,%fp@\(10\),%d1,%acc1 + 3f22: a2ae f29d 000a macw %a5l,%a7u,<<,%fp@\(10\),%d1,%acc2 + 3f28: a66e f28d 000a macw %a5l,%a7u,<<,%fp@\(10\),%a3,%acc1 + 3f2e: a6ee f29d 000a macw %a5l,%a7u,<<,%fp@\(10\),%a3,%acc2 + 3f34: a42e f28d 000a macw %a5l,%a7u,<<,%fp@\(10\),%d2,%acc1 + 3f3a: a4ae f29d 000a macw %a5l,%a7u,<<,%fp@\(10\),%d2,%acc2 + 3f40: ae6e f28d 000a macw %a5l,%a7u,<<,%fp@\(10\),%sp,%acc1 + 3f46: aeee f29d 000a macw %a5l,%a7u,<<,%fp@\(10\),%sp,%acc2 + 3f4c: a22e f2ad 000a macw %a5l,%a7u,<<,%fp@\(10\)&,%d1,%acc1 + 3f52: a2ae f2bd 000a macw %a5l,%a7u,<<,%fp@\(10\)&,%d1,%acc2 + 3f58: a66e f2ad 000a macw %a5l,%a7u,<<,%fp@\(10\)&,%a3,%acc1 + 3f5e: a6ee f2bd 000a macw %a5l,%a7u,<<,%fp@\(10\)&,%a3,%acc2 + 3f64: a42e f2ad 000a macw %a5l,%a7u,<<,%fp@\(10\)&,%d2,%acc1 + 3f6a: a4ae f2bd 000a macw %a5l,%a7u,<<,%fp@\(10\)&,%d2,%acc2 + 3f70: ae6e f2ad 000a macw %a5l,%a7u,<<,%fp@\(10\)&,%sp,%acc1 + 3f76: aeee f2bd 000a macw %a5l,%a7u,<<,%fp@\(10\)&,%sp,%acc2 + 3f7c: a221 f28d macw %a5l,%a7u,<<,%a1@-,%d1,%acc1 + 3f80: a2a1 f29d macw %a5l,%a7u,<<,%a1@-,%d1,%acc2 + 3f84: a661 f28d macw %a5l,%a7u,<<,%a1@-,%a3,%acc1 + 3f88: a6e1 f29d macw %a5l,%a7u,<<,%a1@-,%a3,%acc2 + 3f8c: a421 f28d macw %a5l,%a7u,<<,%a1@-,%d2,%acc1 + 3f90: a4a1 f29d macw %a5l,%a7u,<<,%a1@-,%d2,%acc2 + 3f94: ae61 f28d macw %a5l,%a7u,<<,%a1@-,%sp,%acc1 + 3f98: aee1 f29d macw %a5l,%a7u,<<,%a1@-,%sp,%acc2 + 3f9c: a221 f2ad macw %a5l,%a7u,<<,%a1@-&,%d1,%acc1 + 3fa0: a2a1 f2bd macw %a5l,%a7u,<<,%a1@-&,%d1,%acc2 + 3fa4: a661 f2ad macw %a5l,%a7u,<<,%a1@-&,%a3,%acc1 + 3fa8: a6e1 f2bd macw %a5l,%a7u,<<,%a1@-&,%a3,%acc2 + 3fac: a421 f2ad macw %a5l,%a7u,<<,%a1@-&,%d2,%acc1 + 3fb0: a4a1 f2bd macw %a5l,%a7u,<<,%a1@-&,%d2,%acc2 + 3fb4: ae61 f2ad macw %a5l,%a7u,<<,%a1@-&,%sp,%acc1 + 3fb8: aee1 f2bd macw %a5l,%a7u,<<,%a1@-&,%sp,%acc2 + 3fbc: a213 f68d macw %a5l,%a7u,>>,%a3@,%d1,%acc1 + 3fc0: a293 f69d macw %a5l,%a7u,>>,%a3@,%d1,%acc2 + 3fc4: a653 f68d macw %a5l,%a7u,>>,%a3@,%a3,%acc1 + 3fc8: a6d3 f69d macw %a5l,%a7u,>>,%a3@,%a3,%acc2 + 3fcc: a413 f68d macw %a5l,%a7u,>>,%a3@,%d2,%acc1 + 3fd0: a493 f69d macw %a5l,%a7u,>>,%a3@,%d2,%acc2 + 3fd4: ae53 f68d macw %a5l,%a7u,>>,%a3@,%sp,%acc1 + 3fd8: aed3 f69d macw %a5l,%a7u,>>,%a3@,%sp,%acc2 + 3fdc: a213 f6ad macw %a5l,%a7u,>>,%a3@&,%d1,%acc1 + 3fe0: a293 f6bd macw %a5l,%a7u,>>,%a3@&,%d1,%acc2 + 3fe4: a653 f6ad macw %a5l,%a7u,>>,%a3@&,%a3,%acc1 + 3fe8: a6d3 f6bd macw %a5l,%a7u,>>,%a3@&,%a3,%acc2 + 3fec: a413 f6ad macw %a5l,%a7u,>>,%a3@&,%d2,%acc1 + 3ff0: a493 f6bd macw %a5l,%a7u,>>,%a3@&,%d2,%acc2 + 3ff4: ae53 f6ad macw %a5l,%a7u,>>,%a3@&,%sp,%acc1 + 3ff8: aed3 f6bd macw %a5l,%a7u,>>,%a3@&,%sp,%acc2 + 3ffc: a21a f68d macw %a5l,%a7u,>>,%a2@\+,%d1,%acc1 + 4000: a29a f69d macw %a5l,%a7u,>>,%a2@\+,%d1,%acc2 + 4004: a65a f68d macw %a5l,%a7u,>>,%a2@\+,%a3,%acc1 + 4008: a6da f69d macw %a5l,%a7u,>>,%a2@\+,%a3,%acc2 + 400c: a41a f68d macw %a5l,%a7u,>>,%a2@\+,%d2,%acc1 + 4010: a49a f69d macw %a5l,%a7u,>>,%a2@\+,%d2,%acc2 + 4014: ae5a f68d macw %a5l,%a7u,>>,%a2@\+,%sp,%acc1 + 4018: aeda f69d macw %a5l,%a7u,>>,%a2@\+,%sp,%acc2 + 401c: a21a f6ad macw %a5l,%a7u,>>,%a2@\+&,%d1,%acc1 + 4020: a29a f6bd macw %a5l,%a7u,>>,%a2@\+&,%d1,%acc2 + 4024: a65a f6ad macw %a5l,%a7u,>>,%a2@\+&,%a3,%acc1 + 4028: a6da f6bd macw %a5l,%a7u,>>,%a2@\+&,%a3,%acc2 + 402c: a41a f6ad macw %a5l,%a7u,>>,%a2@\+&,%d2,%acc1 + 4030: a49a f6bd macw %a5l,%a7u,>>,%a2@\+&,%d2,%acc2 + 4034: ae5a f6ad macw %a5l,%a7u,>>,%a2@\+&,%sp,%acc1 + 4038: aeda f6bd macw %a5l,%a7u,>>,%a2@\+&,%sp,%acc2 + 403c: a22e f68d 000a macw %a5l,%a7u,>>,%fp@\(10\),%d1,%acc1 + 4042: a2ae f69d 000a macw %a5l,%a7u,>>,%fp@\(10\),%d1,%acc2 + 4048: a66e f68d 000a macw %a5l,%a7u,>>,%fp@\(10\),%a3,%acc1 + 404e: a6ee f69d 000a macw %a5l,%a7u,>>,%fp@\(10\),%a3,%acc2 + 4054: a42e f68d 000a macw %a5l,%a7u,>>,%fp@\(10\),%d2,%acc1 + 405a: a4ae f69d 000a macw %a5l,%a7u,>>,%fp@\(10\),%d2,%acc2 + 4060: ae6e f68d 000a macw %a5l,%a7u,>>,%fp@\(10\),%sp,%acc1 + 4066: aeee f69d 000a macw %a5l,%a7u,>>,%fp@\(10\),%sp,%acc2 + 406c: a22e f6ad 000a macw %a5l,%a7u,>>,%fp@\(10\)&,%d1,%acc1 + 4072: a2ae f6bd 000a macw %a5l,%a7u,>>,%fp@\(10\)&,%d1,%acc2 + 4078: a66e f6ad 000a macw %a5l,%a7u,>>,%fp@\(10\)&,%a3,%acc1 + 407e: a6ee f6bd 000a macw %a5l,%a7u,>>,%fp@\(10\)&,%a3,%acc2 + 4084: a42e f6ad 000a macw %a5l,%a7u,>>,%fp@\(10\)&,%d2,%acc1 + 408a: a4ae f6bd 000a macw %a5l,%a7u,>>,%fp@\(10\)&,%d2,%acc2 + 4090: ae6e f6ad 000a macw %a5l,%a7u,>>,%fp@\(10\)&,%sp,%acc1 + 4096: aeee f6bd 000a macw %a5l,%a7u,>>,%fp@\(10\)&,%sp,%acc2 + 409c: a221 f68d macw %a5l,%a7u,>>,%a1@-,%d1,%acc1 + 40a0: a2a1 f69d macw %a5l,%a7u,>>,%a1@-,%d1,%acc2 + 40a4: a661 f68d macw %a5l,%a7u,>>,%a1@-,%a3,%acc1 + 40a8: a6e1 f69d macw %a5l,%a7u,>>,%a1@-,%a3,%acc2 + 40ac: a421 f68d macw %a5l,%a7u,>>,%a1@-,%d2,%acc1 + 40b0: a4a1 f69d macw %a5l,%a7u,>>,%a1@-,%d2,%acc2 + 40b4: ae61 f68d macw %a5l,%a7u,>>,%a1@-,%sp,%acc1 + 40b8: aee1 f69d macw %a5l,%a7u,>>,%a1@-,%sp,%acc2 + 40bc: a221 f6ad macw %a5l,%a7u,>>,%a1@-&,%d1,%acc1 + 40c0: a2a1 f6bd macw %a5l,%a7u,>>,%a1@-&,%d1,%acc2 + 40c4: a661 f6ad macw %a5l,%a7u,>>,%a1@-&,%a3,%acc1 + 40c8: a6e1 f6bd macw %a5l,%a7u,>>,%a1@-&,%a3,%acc2 + 40cc: a421 f6ad macw %a5l,%a7u,>>,%a1@-&,%d2,%acc1 + 40d0: a4a1 f6bd macw %a5l,%a7u,>>,%a1@-&,%d2,%acc2 + 40d4: ae61 f6ad macw %a5l,%a7u,>>,%a1@-&,%sp,%acc1 + 40d8: aee1 f6bd macw %a5l,%a7u,>>,%a1@-&,%sp,%acc2 + 40dc: a213 100d macw %a5l,%d1l,%a3@,%d1,%acc1 + 40e0: a293 101d macw %a5l,%d1l,%a3@,%d1,%acc2 + 40e4: a653 100d macw %a5l,%d1l,%a3@,%a3,%acc1 + 40e8: a6d3 101d macw %a5l,%d1l,%a3@,%a3,%acc2 + 40ec: a413 100d macw %a5l,%d1l,%a3@,%d2,%acc1 + 40f0: a493 101d macw %a5l,%d1l,%a3@,%d2,%acc2 + 40f4: ae53 100d macw %a5l,%d1l,%a3@,%sp,%acc1 + 40f8: aed3 101d macw %a5l,%d1l,%a3@,%sp,%acc2 + 40fc: a213 102d macw %a5l,%d1l,%a3@&,%d1,%acc1 + 4100: a293 103d macw %a5l,%d1l,%a3@&,%d1,%acc2 + 4104: a653 102d macw %a5l,%d1l,%a3@&,%a3,%acc1 + 4108: a6d3 103d macw %a5l,%d1l,%a3@&,%a3,%acc2 + 410c: a413 102d macw %a5l,%d1l,%a3@&,%d2,%acc1 + 4110: a493 103d macw %a5l,%d1l,%a3@&,%d2,%acc2 + 4114: ae53 102d macw %a5l,%d1l,%a3@&,%sp,%acc1 + 4118: aed3 103d macw %a5l,%d1l,%a3@&,%sp,%acc2 + 411c: a21a 100d macw %a5l,%d1l,%a2@\+,%d1,%acc1 + 4120: a29a 101d macw %a5l,%d1l,%a2@\+,%d1,%acc2 + 4124: a65a 100d macw %a5l,%d1l,%a2@\+,%a3,%acc1 + 4128: a6da 101d macw %a5l,%d1l,%a2@\+,%a3,%acc2 + 412c: a41a 100d macw %a5l,%d1l,%a2@\+,%d2,%acc1 + 4130: a49a 101d macw %a5l,%d1l,%a2@\+,%d2,%acc2 + 4134: ae5a 100d macw %a5l,%d1l,%a2@\+,%sp,%acc1 + 4138: aeda 101d macw %a5l,%d1l,%a2@\+,%sp,%acc2 + 413c: a21a 102d macw %a5l,%d1l,%a2@\+&,%d1,%acc1 + 4140: a29a 103d macw %a5l,%d1l,%a2@\+&,%d1,%acc2 + 4144: a65a 102d macw %a5l,%d1l,%a2@\+&,%a3,%acc1 + 4148: a6da 103d macw %a5l,%d1l,%a2@\+&,%a3,%acc2 + 414c: a41a 102d macw %a5l,%d1l,%a2@\+&,%d2,%acc1 + 4150: a49a 103d macw %a5l,%d1l,%a2@\+&,%d2,%acc2 + 4154: ae5a 102d macw %a5l,%d1l,%a2@\+&,%sp,%acc1 + 4158: aeda 103d macw %a5l,%d1l,%a2@\+&,%sp,%acc2 + 415c: a22e 100d 000a macw %a5l,%d1l,%fp@\(10\),%d1,%acc1 + 4162: a2ae 101d 000a macw %a5l,%d1l,%fp@\(10\),%d1,%acc2 + 4168: a66e 100d 000a macw %a5l,%d1l,%fp@\(10\),%a3,%acc1 + 416e: a6ee 101d 000a macw %a5l,%d1l,%fp@\(10\),%a3,%acc2 + 4174: a42e 100d 000a macw %a5l,%d1l,%fp@\(10\),%d2,%acc1 + 417a: a4ae 101d 000a macw %a5l,%d1l,%fp@\(10\),%d2,%acc2 + 4180: ae6e 100d 000a macw %a5l,%d1l,%fp@\(10\),%sp,%acc1 + 4186: aeee 101d 000a macw %a5l,%d1l,%fp@\(10\),%sp,%acc2 + 418c: a22e 102d 000a macw %a5l,%d1l,%fp@\(10\)&,%d1,%acc1 + 4192: a2ae 103d 000a macw %a5l,%d1l,%fp@\(10\)&,%d1,%acc2 + 4198: a66e 102d 000a macw %a5l,%d1l,%fp@\(10\)&,%a3,%acc1 + 419e: a6ee 103d 000a macw %a5l,%d1l,%fp@\(10\)&,%a3,%acc2 + 41a4: a42e 102d 000a macw %a5l,%d1l,%fp@\(10\)&,%d2,%acc1 + 41aa: a4ae 103d 000a macw %a5l,%d1l,%fp@\(10\)&,%d2,%acc2 + 41b0: ae6e 102d 000a macw %a5l,%d1l,%fp@\(10\)&,%sp,%acc1 + 41b6: aeee 103d 000a macw %a5l,%d1l,%fp@\(10\)&,%sp,%acc2 + 41bc: a221 100d macw %a5l,%d1l,%a1@-,%d1,%acc1 + 41c0: a2a1 101d macw %a5l,%d1l,%a1@-,%d1,%acc2 + 41c4: a661 100d macw %a5l,%d1l,%a1@-,%a3,%acc1 + 41c8: a6e1 101d macw %a5l,%d1l,%a1@-,%a3,%acc2 + 41cc: a421 100d macw %a5l,%d1l,%a1@-,%d2,%acc1 + 41d0: a4a1 101d macw %a5l,%d1l,%a1@-,%d2,%acc2 + 41d4: ae61 100d macw %a5l,%d1l,%a1@-,%sp,%acc1 + 41d8: aee1 101d macw %a5l,%d1l,%a1@-,%sp,%acc2 + 41dc: a221 102d macw %a5l,%d1l,%a1@-&,%d1,%acc1 + 41e0: a2a1 103d macw %a5l,%d1l,%a1@-&,%d1,%acc2 + 41e4: a661 102d macw %a5l,%d1l,%a1@-&,%a3,%acc1 + 41e8: a6e1 103d macw %a5l,%d1l,%a1@-&,%a3,%acc2 + 41ec: a421 102d macw %a5l,%d1l,%a1@-&,%d2,%acc1 + 41f0: a4a1 103d macw %a5l,%d1l,%a1@-&,%d2,%acc2 + 41f4: ae61 102d macw %a5l,%d1l,%a1@-&,%sp,%acc1 + 41f8: aee1 103d macw %a5l,%d1l,%a1@-&,%sp,%acc2 + 41fc: a213 120d macw %a5l,%d1l,<<,%a3@,%d1,%acc1 + 4200: a293 121d macw %a5l,%d1l,<<,%a3@,%d1,%acc2 + 4204: a653 120d macw %a5l,%d1l,<<,%a3@,%a3,%acc1 + 4208: a6d3 121d macw %a5l,%d1l,<<,%a3@,%a3,%acc2 + 420c: a413 120d macw %a5l,%d1l,<<,%a3@,%d2,%acc1 + 4210: a493 121d macw %a5l,%d1l,<<,%a3@,%d2,%acc2 + 4214: ae53 120d macw %a5l,%d1l,<<,%a3@,%sp,%acc1 + 4218: aed3 121d macw %a5l,%d1l,<<,%a3@,%sp,%acc2 + 421c: a213 122d macw %a5l,%d1l,<<,%a3@&,%d1,%acc1 + 4220: a293 123d macw %a5l,%d1l,<<,%a3@&,%d1,%acc2 + 4224: a653 122d macw %a5l,%d1l,<<,%a3@&,%a3,%acc1 + 4228: a6d3 123d macw %a5l,%d1l,<<,%a3@&,%a3,%acc2 + 422c: a413 122d macw %a5l,%d1l,<<,%a3@&,%d2,%acc1 + 4230: a493 123d macw %a5l,%d1l,<<,%a3@&,%d2,%acc2 + 4234: ae53 122d macw %a5l,%d1l,<<,%a3@&,%sp,%acc1 + 4238: aed3 123d macw %a5l,%d1l,<<,%a3@&,%sp,%acc2 + 423c: a21a 120d macw %a5l,%d1l,<<,%a2@\+,%d1,%acc1 + 4240: a29a 121d macw %a5l,%d1l,<<,%a2@\+,%d1,%acc2 + 4244: a65a 120d macw %a5l,%d1l,<<,%a2@\+,%a3,%acc1 + 4248: a6da 121d macw %a5l,%d1l,<<,%a2@\+,%a3,%acc2 + 424c: a41a 120d macw %a5l,%d1l,<<,%a2@\+,%d2,%acc1 + 4250: a49a 121d macw %a5l,%d1l,<<,%a2@\+,%d2,%acc2 + 4254: ae5a 120d macw %a5l,%d1l,<<,%a2@\+,%sp,%acc1 + 4258: aeda 121d macw %a5l,%d1l,<<,%a2@\+,%sp,%acc2 + 425c: a21a 122d macw %a5l,%d1l,<<,%a2@\+&,%d1,%acc1 + 4260: a29a 123d macw %a5l,%d1l,<<,%a2@\+&,%d1,%acc2 + 4264: a65a 122d macw %a5l,%d1l,<<,%a2@\+&,%a3,%acc1 + 4268: a6da 123d macw %a5l,%d1l,<<,%a2@\+&,%a3,%acc2 + 426c: a41a 122d macw %a5l,%d1l,<<,%a2@\+&,%d2,%acc1 + 4270: a49a 123d macw %a5l,%d1l,<<,%a2@\+&,%d2,%acc2 + 4274: ae5a 122d macw %a5l,%d1l,<<,%a2@\+&,%sp,%acc1 + 4278: aeda 123d macw %a5l,%d1l,<<,%a2@\+&,%sp,%acc2 + 427c: a22e 120d 000a macw %a5l,%d1l,<<,%fp@\(10\),%d1,%acc1 + 4282: a2ae 121d 000a macw %a5l,%d1l,<<,%fp@\(10\),%d1,%acc2 + 4288: a66e 120d 000a macw %a5l,%d1l,<<,%fp@\(10\),%a3,%acc1 + 428e: a6ee 121d 000a macw %a5l,%d1l,<<,%fp@\(10\),%a3,%acc2 + 4294: a42e 120d 000a macw %a5l,%d1l,<<,%fp@\(10\),%d2,%acc1 + 429a: a4ae 121d 000a macw %a5l,%d1l,<<,%fp@\(10\),%d2,%acc2 + 42a0: ae6e 120d 000a macw %a5l,%d1l,<<,%fp@\(10\),%sp,%acc1 + 42a6: aeee 121d 000a macw %a5l,%d1l,<<,%fp@\(10\),%sp,%acc2 + 42ac: a22e 122d 000a macw %a5l,%d1l,<<,%fp@\(10\)&,%d1,%acc1 + 42b2: a2ae 123d 000a macw %a5l,%d1l,<<,%fp@\(10\)&,%d1,%acc2 + 42b8: a66e 122d 000a macw %a5l,%d1l,<<,%fp@\(10\)&,%a3,%acc1 + 42be: a6ee 123d 000a macw %a5l,%d1l,<<,%fp@\(10\)&,%a3,%acc2 + 42c4: a42e 122d 000a macw %a5l,%d1l,<<,%fp@\(10\)&,%d2,%acc1 + 42ca: a4ae 123d 000a macw %a5l,%d1l,<<,%fp@\(10\)&,%d2,%acc2 + 42d0: ae6e 122d 000a macw %a5l,%d1l,<<,%fp@\(10\)&,%sp,%acc1 + 42d6: aeee 123d 000a macw %a5l,%d1l,<<,%fp@\(10\)&,%sp,%acc2 + 42dc: a221 120d macw %a5l,%d1l,<<,%a1@-,%d1,%acc1 + 42e0: a2a1 121d macw %a5l,%d1l,<<,%a1@-,%d1,%acc2 + 42e4: a661 120d macw %a5l,%d1l,<<,%a1@-,%a3,%acc1 + 42e8: a6e1 121d macw %a5l,%d1l,<<,%a1@-,%a3,%acc2 + 42ec: a421 120d macw %a5l,%d1l,<<,%a1@-,%d2,%acc1 + 42f0: a4a1 121d macw %a5l,%d1l,<<,%a1@-,%d2,%acc2 + 42f4: ae61 120d macw %a5l,%d1l,<<,%a1@-,%sp,%acc1 + 42f8: aee1 121d macw %a5l,%d1l,<<,%a1@-,%sp,%acc2 + 42fc: a221 122d macw %a5l,%d1l,<<,%a1@-&,%d1,%acc1 + 4300: a2a1 123d macw %a5l,%d1l,<<,%a1@-&,%d1,%acc2 + 4304: a661 122d macw %a5l,%d1l,<<,%a1@-&,%a3,%acc1 + 4308: a6e1 123d macw %a5l,%d1l,<<,%a1@-&,%a3,%acc2 + 430c: a421 122d macw %a5l,%d1l,<<,%a1@-&,%d2,%acc1 + 4310: a4a1 123d macw %a5l,%d1l,<<,%a1@-&,%d2,%acc2 + 4314: ae61 122d macw %a5l,%d1l,<<,%a1@-&,%sp,%acc1 + 4318: aee1 123d macw %a5l,%d1l,<<,%a1@-&,%sp,%acc2 + 431c: a213 160d macw %a5l,%d1l,>>,%a3@,%d1,%acc1 + 4320: a293 161d macw %a5l,%d1l,>>,%a3@,%d1,%acc2 + 4324: a653 160d macw %a5l,%d1l,>>,%a3@,%a3,%acc1 + 4328: a6d3 161d macw %a5l,%d1l,>>,%a3@,%a3,%acc2 + 432c: a413 160d macw %a5l,%d1l,>>,%a3@,%d2,%acc1 + 4330: a493 161d macw %a5l,%d1l,>>,%a3@,%d2,%acc2 + 4334: ae53 160d macw %a5l,%d1l,>>,%a3@,%sp,%acc1 + 4338: aed3 161d macw %a5l,%d1l,>>,%a3@,%sp,%acc2 + 433c: a213 162d macw %a5l,%d1l,>>,%a3@&,%d1,%acc1 + 4340: a293 163d macw %a5l,%d1l,>>,%a3@&,%d1,%acc2 + 4344: a653 162d macw %a5l,%d1l,>>,%a3@&,%a3,%acc1 + 4348: a6d3 163d macw %a5l,%d1l,>>,%a3@&,%a3,%acc2 + 434c: a413 162d macw %a5l,%d1l,>>,%a3@&,%d2,%acc1 + 4350: a493 163d macw %a5l,%d1l,>>,%a3@&,%d2,%acc2 + 4354: ae53 162d macw %a5l,%d1l,>>,%a3@&,%sp,%acc1 + 4358: aed3 163d macw %a5l,%d1l,>>,%a3@&,%sp,%acc2 + 435c: a21a 160d macw %a5l,%d1l,>>,%a2@\+,%d1,%acc1 + 4360: a29a 161d macw %a5l,%d1l,>>,%a2@\+,%d1,%acc2 + 4364: a65a 160d macw %a5l,%d1l,>>,%a2@\+,%a3,%acc1 + 4368: a6da 161d macw %a5l,%d1l,>>,%a2@\+,%a3,%acc2 + 436c: a41a 160d macw %a5l,%d1l,>>,%a2@\+,%d2,%acc1 + 4370: a49a 161d macw %a5l,%d1l,>>,%a2@\+,%d2,%acc2 + 4374: ae5a 160d macw %a5l,%d1l,>>,%a2@\+,%sp,%acc1 + 4378: aeda 161d macw %a5l,%d1l,>>,%a2@\+,%sp,%acc2 + 437c: a21a 162d macw %a5l,%d1l,>>,%a2@\+&,%d1,%acc1 + 4380: a29a 163d macw %a5l,%d1l,>>,%a2@\+&,%d1,%acc2 + 4384: a65a 162d macw %a5l,%d1l,>>,%a2@\+&,%a3,%acc1 + 4388: a6da 163d macw %a5l,%d1l,>>,%a2@\+&,%a3,%acc2 + 438c: a41a 162d macw %a5l,%d1l,>>,%a2@\+&,%d2,%acc1 + 4390: a49a 163d macw %a5l,%d1l,>>,%a2@\+&,%d2,%acc2 + 4394: ae5a 162d macw %a5l,%d1l,>>,%a2@\+&,%sp,%acc1 + 4398: aeda 163d macw %a5l,%d1l,>>,%a2@\+&,%sp,%acc2 + 439c: a22e 160d 000a macw %a5l,%d1l,>>,%fp@\(10\),%d1,%acc1 + 43a2: a2ae 161d 000a macw %a5l,%d1l,>>,%fp@\(10\),%d1,%acc2 + 43a8: a66e 160d 000a macw %a5l,%d1l,>>,%fp@\(10\),%a3,%acc1 + 43ae: a6ee 161d 000a macw %a5l,%d1l,>>,%fp@\(10\),%a3,%acc2 + 43b4: a42e 160d 000a macw %a5l,%d1l,>>,%fp@\(10\),%d2,%acc1 + 43ba: a4ae 161d 000a macw %a5l,%d1l,>>,%fp@\(10\),%d2,%acc2 + 43c0: ae6e 160d 000a macw %a5l,%d1l,>>,%fp@\(10\),%sp,%acc1 + 43c6: aeee 161d 000a macw %a5l,%d1l,>>,%fp@\(10\),%sp,%acc2 + 43cc: a22e 162d 000a macw %a5l,%d1l,>>,%fp@\(10\)&,%d1,%acc1 + 43d2: a2ae 163d 000a macw %a5l,%d1l,>>,%fp@\(10\)&,%d1,%acc2 + 43d8: a66e 162d 000a macw %a5l,%d1l,>>,%fp@\(10\)&,%a3,%acc1 + 43de: a6ee 163d 000a macw %a5l,%d1l,>>,%fp@\(10\)&,%a3,%acc2 + 43e4: a42e 162d 000a macw %a5l,%d1l,>>,%fp@\(10\)&,%d2,%acc1 + 43ea: a4ae 163d 000a macw %a5l,%d1l,>>,%fp@\(10\)&,%d2,%acc2 + 43f0: ae6e 162d 000a macw %a5l,%d1l,>>,%fp@\(10\)&,%sp,%acc1 + 43f6: aeee 163d 000a macw %a5l,%d1l,>>,%fp@\(10\)&,%sp,%acc2 + 43fc: a221 160d macw %a5l,%d1l,>>,%a1@-,%d1,%acc1 + 4400: a2a1 161d macw %a5l,%d1l,>>,%a1@-,%d1,%acc2 + 4404: a661 160d macw %a5l,%d1l,>>,%a1@-,%a3,%acc1 + 4408: a6e1 161d macw %a5l,%d1l,>>,%a1@-,%a3,%acc2 + 440c: a421 160d macw %a5l,%d1l,>>,%a1@-,%d2,%acc1 + 4410: a4a1 161d macw %a5l,%d1l,>>,%a1@-,%d2,%acc2 + 4414: ae61 160d macw %a5l,%d1l,>>,%a1@-,%sp,%acc1 + 4418: aee1 161d macw %a5l,%d1l,>>,%a1@-,%sp,%acc2 + 441c: a221 162d macw %a5l,%d1l,>>,%a1@-&,%d1,%acc1 + 4420: a2a1 163d macw %a5l,%d1l,>>,%a1@-&,%d1,%acc2 + 4424: a661 162d macw %a5l,%d1l,>>,%a1@-&,%a3,%acc1 + 4428: a6e1 163d macw %a5l,%d1l,>>,%a1@-&,%a3,%acc2 + 442c: a421 162d macw %a5l,%d1l,>>,%a1@-&,%d2,%acc1 + 4430: a4a1 163d macw %a5l,%d1l,>>,%a1@-&,%d2,%acc2 + 4434: ae61 162d macw %a5l,%d1l,>>,%a1@-&,%sp,%acc1 + 4438: aee1 163d macw %a5l,%d1l,>>,%a1@-&,%sp,%acc2 + 443c: a213 120d macw %a5l,%d1l,<<,%a3@,%d1,%acc1 + 4440: a293 121d macw %a5l,%d1l,<<,%a3@,%d1,%acc2 + 4444: a653 120d macw %a5l,%d1l,<<,%a3@,%a3,%acc1 + 4448: a6d3 121d macw %a5l,%d1l,<<,%a3@,%a3,%acc2 + 444c: a413 120d macw %a5l,%d1l,<<,%a3@,%d2,%acc1 + 4450: a493 121d macw %a5l,%d1l,<<,%a3@,%d2,%acc2 + 4454: ae53 120d macw %a5l,%d1l,<<,%a3@,%sp,%acc1 + 4458: aed3 121d macw %a5l,%d1l,<<,%a3@,%sp,%acc2 + 445c: a213 122d macw %a5l,%d1l,<<,%a3@&,%d1,%acc1 + 4460: a293 123d macw %a5l,%d1l,<<,%a3@&,%d1,%acc2 + 4464: a653 122d macw %a5l,%d1l,<<,%a3@&,%a3,%acc1 + 4468: a6d3 123d macw %a5l,%d1l,<<,%a3@&,%a3,%acc2 + 446c: a413 122d macw %a5l,%d1l,<<,%a3@&,%d2,%acc1 + 4470: a493 123d macw %a5l,%d1l,<<,%a3@&,%d2,%acc2 + 4474: ae53 122d macw %a5l,%d1l,<<,%a3@&,%sp,%acc1 + 4478: aed3 123d macw %a5l,%d1l,<<,%a3@&,%sp,%acc2 + 447c: a21a 120d macw %a5l,%d1l,<<,%a2@\+,%d1,%acc1 + 4480: a29a 121d macw %a5l,%d1l,<<,%a2@\+,%d1,%acc2 + 4484: a65a 120d macw %a5l,%d1l,<<,%a2@\+,%a3,%acc1 + 4488: a6da 121d macw %a5l,%d1l,<<,%a2@\+,%a3,%acc2 + 448c: a41a 120d macw %a5l,%d1l,<<,%a2@\+,%d2,%acc1 + 4490: a49a 121d macw %a5l,%d1l,<<,%a2@\+,%d2,%acc2 + 4494: ae5a 120d macw %a5l,%d1l,<<,%a2@\+,%sp,%acc1 + 4498: aeda 121d macw %a5l,%d1l,<<,%a2@\+,%sp,%acc2 + 449c: a21a 122d macw %a5l,%d1l,<<,%a2@\+&,%d1,%acc1 + 44a0: a29a 123d macw %a5l,%d1l,<<,%a2@\+&,%d1,%acc2 + 44a4: a65a 122d macw %a5l,%d1l,<<,%a2@\+&,%a3,%acc1 + 44a8: a6da 123d macw %a5l,%d1l,<<,%a2@\+&,%a3,%acc2 + 44ac: a41a 122d macw %a5l,%d1l,<<,%a2@\+&,%d2,%acc1 + 44b0: a49a 123d macw %a5l,%d1l,<<,%a2@\+&,%d2,%acc2 + 44b4: ae5a 122d macw %a5l,%d1l,<<,%a2@\+&,%sp,%acc1 + 44b8: aeda 123d macw %a5l,%d1l,<<,%a2@\+&,%sp,%acc2 + 44bc: a22e 120d 000a macw %a5l,%d1l,<<,%fp@\(10\),%d1,%acc1 + 44c2: a2ae 121d 000a macw %a5l,%d1l,<<,%fp@\(10\),%d1,%acc2 + 44c8: a66e 120d 000a macw %a5l,%d1l,<<,%fp@\(10\),%a3,%acc1 + 44ce: a6ee 121d 000a macw %a5l,%d1l,<<,%fp@\(10\),%a3,%acc2 + 44d4: a42e 120d 000a macw %a5l,%d1l,<<,%fp@\(10\),%d2,%acc1 + 44da: a4ae 121d 000a macw %a5l,%d1l,<<,%fp@\(10\),%d2,%acc2 + 44e0: ae6e 120d 000a macw %a5l,%d1l,<<,%fp@\(10\),%sp,%acc1 + 44e6: aeee 121d 000a macw %a5l,%d1l,<<,%fp@\(10\),%sp,%acc2 + 44ec: a22e 122d 000a macw %a5l,%d1l,<<,%fp@\(10\)&,%d1,%acc1 + 44f2: a2ae 123d 000a macw %a5l,%d1l,<<,%fp@\(10\)&,%d1,%acc2 + 44f8: a66e 122d 000a macw %a5l,%d1l,<<,%fp@\(10\)&,%a3,%acc1 + 44fe: a6ee 123d 000a macw %a5l,%d1l,<<,%fp@\(10\)&,%a3,%acc2 + 4504: a42e 122d 000a macw %a5l,%d1l,<<,%fp@\(10\)&,%d2,%acc1 + 450a: a4ae 123d 000a macw %a5l,%d1l,<<,%fp@\(10\)&,%d2,%acc2 + 4510: ae6e 122d 000a macw %a5l,%d1l,<<,%fp@\(10\)&,%sp,%acc1 + 4516: aeee 123d 000a macw %a5l,%d1l,<<,%fp@\(10\)&,%sp,%acc2 + 451c: a221 120d macw %a5l,%d1l,<<,%a1@-,%d1,%acc1 + 4520: a2a1 121d macw %a5l,%d1l,<<,%a1@-,%d1,%acc2 + 4524: a661 120d macw %a5l,%d1l,<<,%a1@-,%a3,%acc1 + 4528: a6e1 121d macw %a5l,%d1l,<<,%a1@-,%a3,%acc2 + 452c: a421 120d macw %a5l,%d1l,<<,%a1@-,%d2,%acc1 + 4530: a4a1 121d macw %a5l,%d1l,<<,%a1@-,%d2,%acc2 + 4534: ae61 120d macw %a5l,%d1l,<<,%a1@-,%sp,%acc1 + 4538: aee1 121d macw %a5l,%d1l,<<,%a1@-,%sp,%acc2 + 453c: a221 122d macw %a5l,%d1l,<<,%a1@-&,%d1,%acc1 + 4540: a2a1 123d macw %a5l,%d1l,<<,%a1@-&,%d1,%acc2 + 4544: a661 122d macw %a5l,%d1l,<<,%a1@-&,%a3,%acc1 + 4548: a6e1 123d macw %a5l,%d1l,<<,%a1@-&,%a3,%acc2 + 454c: a421 122d macw %a5l,%d1l,<<,%a1@-&,%d2,%acc1 + 4550: a4a1 123d macw %a5l,%d1l,<<,%a1@-&,%d2,%acc2 + 4554: ae61 122d macw %a5l,%d1l,<<,%a1@-&,%sp,%acc1 + 4558: aee1 123d macw %a5l,%d1l,<<,%a1@-&,%sp,%acc2 + 455c: a213 160d macw %a5l,%d1l,>>,%a3@,%d1,%acc1 + 4560: a293 161d macw %a5l,%d1l,>>,%a3@,%d1,%acc2 + 4564: a653 160d macw %a5l,%d1l,>>,%a3@,%a3,%acc1 + 4568: a6d3 161d macw %a5l,%d1l,>>,%a3@,%a3,%acc2 + 456c: a413 160d macw %a5l,%d1l,>>,%a3@,%d2,%acc1 + 4570: a493 161d macw %a5l,%d1l,>>,%a3@,%d2,%acc2 + 4574: ae53 160d macw %a5l,%d1l,>>,%a3@,%sp,%acc1 + 4578: aed3 161d macw %a5l,%d1l,>>,%a3@,%sp,%acc2 + 457c: a213 162d macw %a5l,%d1l,>>,%a3@&,%d1,%acc1 + 4580: a293 163d macw %a5l,%d1l,>>,%a3@&,%d1,%acc2 + 4584: a653 162d macw %a5l,%d1l,>>,%a3@&,%a3,%acc1 + 4588: a6d3 163d macw %a5l,%d1l,>>,%a3@&,%a3,%acc2 + 458c: a413 162d macw %a5l,%d1l,>>,%a3@&,%d2,%acc1 + 4590: a493 163d macw %a5l,%d1l,>>,%a3@&,%d2,%acc2 + 4594: ae53 162d macw %a5l,%d1l,>>,%a3@&,%sp,%acc1 + 4598: aed3 163d macw %a5l,%d1l,>>,%a3@&,%sp,%acc2 + 459c: a21a 160d macw %a5l,%d1l,>>,%a2@\+,%d1,%acc1 + 45a0: a29a 161d macw %a5l,%d1l,>>,%a2@\+,%d1,%acc2 + 45a4: a65a 160d macw %a5l,%d1l,>>,%a2@\+,%a3,%acc1 + 45a8: a6da 161d macw %a5l,%d1l,>>,%a2@\+,%a3,%acc2 + 45ac: a41a 160d macw %a5l,%d1l,>>,%a2@\+,%d2,%acc1 + 45b0: a49a 161d macw %a5l,%d1l,>>,%a2@\+,%d2,%acc2 + 45b4: ae5a 160d macw %a5l,%d1l,>>,%a2@\+,%sp,%acc1 + 45b8: aeda 161d macw %a5l,%d1l,>>,%a2@\+,%sp,%acc2 + 45bc: a21a 162d macw %a5l,%d1l,>>,%a2@\+&,%d1,%acc1 + 45c0: a29a 163d macw %a5l,%d1l,>>,%a2@\+&,%d1,%acc2 + 45c4: a65a 162d macw %a5l,%d1l,>>,%a2@\+&,%a3,%acc1 + 45c8: a6da 163d macw %a5l,%d1l,>>,%a2@\+&,%a3,%acc2 + 45cc: a41a 162d macw %a5l,%d1l,>>,%a2@\+&,%d2,%acc1 + 45d0: a49a 163d macw %a5l,%d1l,>>,%a2@\+&,%d2,%acc2 + 45d4: ae5a 162d macw %a5l,%d1l,>>,%a2@\+&,%sp,%acc1 + 45d8: aeda 163d macw %a5l,%d1l,>>,%a2@\+&,%sp,%acc2 + 45dc: a22e 160d 000a macw %a5l,%d1l,>>,%fp@\(10\),%d1,%acc1 + 45e2: a2ae 161d 000a macw %a5l,%d1l,>>,%fp@\(10\),%d1,%acc2 + 45e8: a66e 160d 000a macw %a5l,%d1l,>>,%fp@\(10\),%a3,%acc1 + 45ee: a6ee 161d 000a macw %a5l,%d1l,>>,%fp@\(10\),%a3,%acc2 + 45f4: a42e 160d 000a macw %a5l,%d1l,>>,%fp@\(10\),%d2,%acc1 + 45fa: a4ae 161d 000a macw %a5l,%d1l,>>,%fp@\(10\),%d2,%acc2 + 4600: ae6e 160d 000a macw %a5l,%d1l,>>,%fp@\(10\),%sp,%acc1 + 4606: aeee 161d 000a macw %a5l,%d1l,>>,%fp@\(10\),%sp,%acc2 + 460c: a22e 162d 000a macw %a5l,%d1l,>>,%fp@\(10\)&,%d1,%acc1 + 4612: a2ae 163d 000a macw %a5l,%d1l,>>,%fp@\(10\)&,%d1,%acc2 + 4618: a66e 162d 000a macw %a5l,%d1l,>>,%fp@\(10\)&,%a3,%acc1 + 461e: a6ee 163d 000a macw %a5l,%d1l,>>,%fp@\(10\)&,%a3,%acc2 + 4624: a42e 162d 000a macw %a5l,%d1l,>>,%fp@\(10\)&,%d2,%acc1 + 462a: a4ae 163d 000a macw %a5l,%d1l,>>,%fp@\(10\)&,%d2,%acc2 + 4630: ae6e 162d 000a macw %a5l,%d1l,>>,%fp@\(10\)&,%sp,%acc1 + 4636: aeee 163d 000a macw %a5l,%d1l,>>,%fp@\(10\)&,%sp,%acc2 + 463c: a221 160d macw %a5l,%d1l,>>,%a1@-,%d1,%acc1 + 4640: a2a1 161d macw %a5l,%d1l,>>,%a1@-,%d1,%acc2 + 4644: a661 160d macw %a5l,%d1l,>>,%a1@-,%a3,%acc1 + 4648: a6e1 161d macw %a5l,%d1l,>>,%a1@-,%a3,%acc2 + 464c: a421 160d macw %a5l,%d1l,>>,%a1@-,%d2,%acc1 + 4650: a4a1 161d macw %a5l,%d1l,>>,%a1@-,%d2,%acc2 + 4654: ae61 160d macw %a5l,%d1l,>>,%a1@-,%sp,%acc1 + 4658: aee1 161d macw %a5l,%d1l,>>,%a1@-,%sp,%acc2 + 465c: a221 162d macw %a5l,%d1l,>>,%a1@-&,%d1,%acc1 + 4660: a2a1 163d macw %a5l,%d1l,>>,%a1@-&,%d1,%acc2 + 4664: a661 162d macw %a5l,%d1l,>>,%a1@-&,%a3,%acc1 + 4668: a6e1 163d macw %a5l,%d1l,>>,%a1@-&,%a3,%acc2 + 466c: a421 162d macw %a5l,%d1l,>>,%a1@-&,%d2,%acc1 + 4670: a4a1 163d macw %a5l,%d1l,>>,%a1@-&,%d2,%acc2 + 4674: ae61 162d macw %a5l,%d1l,>>,%a1@-&,%sp,%acc1 + 4678: aee1 163d macw %a5l,%d1l,>>,%a1@-&,%sp,%acc2 + 467c: a213 a0c6 macw %d6u,%a2u,%a3@,%d1,%acc1 + 4680: a293 a0d6 macw %d6u,%a2u,%a3@,%d1,%acc2 + 4684: a653 a0c6 macw %d6u,%a2u,%a3@,%a3,%acc1 + 4688: a6d3 a0d6 macw %d6u,%a2u,%a3@,%a3,%acc2 + 468c: a413 a0c6 macw %d6u,%a2u,%a3@,%d2,%acc1 + 4690: a493 a0d6 macw %d6u,%a2u,%a3@,%d2,%acc2 + 4694: ae53 a0c6 macw %d6u,%a2u,%a3@,%sp,%acc1 + 4698: aed3 a0d6 macw %d6u,%a2u,%a3@,%sp,%acc2 + 469c: a213 a0e6 macw %d6u,%a2u,%a3@&,%d1,%acc1 + 46a0: a293 a0f6 macw %d6u,%a2u,%a3@&,%d1,%acc2 + 46a4: a653 a0e6 macw %d6u,%a2u,%a3@&,%a3,%acc1 + 46a8: a6d3 a0f6 macw %d6u,%a2u,%a3@&,%a3,%acc2 + 46ac: a413 a0e6 macw %d6u,%a2u,%a3@&,%d2,%acc1 + 46b0: a493 a0f6 macw %d6u,%a2u,%a3@&,%d2,%acc2 + 46b4: ae53 a0e6 macw %d6u,%a2u,%a3@&,%sp,%acc1 + 46b8: aed3 a0f6 macw %d6u,%a2u,%a3@&,%sp,%acc2 + 46bc: a21a a0c6 macw %d6u,%a2u,%a2@\+,%d1,%acc1 + 46c0: a29a a0d6 macw %d6u,%a2u,%a2@\+,%d1,%acc2 + 46c4: a65a a0c6 macw %d6u,%a2u,%a2@\+,%a3,%acc1 + 46c8: a6da a0d6 macw %d6u,%a2u,%a2@\+,%a3,%acc2 + 46cc: a41a a0c6 macw %d6u,%a2u,%a2@\+,%d2,%acc1 + 46d0: a49a a0d6 macw %d6u,%a2u,%a2@\+,%d2,%acc2 + 46d4: ae5a a0c6 macw %d6u,%a2u,%a2@\+,%sp,%acc1 + 46d8: aeda a0d6 macw %d6u,%a2u,%a2@\+,%sp,%acc2 + 46dc: a21a a0e6 macw %d6u,%a2u,%a2@\+&,%d1,%acc1 + 46e0: a29a a0f6 macw %d6u,%a2u,%a2@\+&,%d1,%acc2 + 46e4: a65a a0e6 macw %d6u,%a2u,%a2@\+&,%a3,%acc1 + 46e8: a6da a0f6 macw %d6u,%a2u,%a2@\+&,%a3,%acc2 + 46ec: a41a a0e6 macw %d6u,%a2u,%a2@\+&,%d2,%acc1 + 46f0: a49a a0f6 macw %d6u,%a2u,%a2@\+&,%d2,%acc2 + 46f4: ae5a a0e6 macw %d6u,%a2u,%a2@\+&,%sp,%acc1 + 46f8: aeda a0f6 macw %d6u,%a2u,%a2@\+&,%sp,%acc2 + 46fc: a22e a0c6 000a macw %d6u,%a2u,%fp@\(10\),%d1,%acc1 + 4702: a2ae a0d6 000a macw %d6u,%a2u,%fp@\(10\),%d1,%acc2 + 4708: a66e a0c6 000a macw %d6u,%a2u,%fp@\(10\),%a3,%acc1 + 470e: a6ee a0d6 000a macw %d6u,%a2u,%fp@\(10\),%a3,%acc2 + 4714: a42e a0c6 000a macw %d6u,%a2u,%fp@\(10\),%d2,%acc1 + 471a: a4ae a0d6 000a macw %d6u,%a2u,%fp@\(10\),%d2,%acc2 + 4720: ae6e a0c6 000a macw %d6u,%a2u,%fp@\(10\),%sp,%acc1 + 4726: aeee a0d6 000a macw %d6u,%a2u,%fp@\(10\),%sp,%acc2 + 472c: a22e a0e6 000a macw %d6u,%a2u,%fp@\(10\)&,%d1,%acc1 + 4732: a2ae a0f6 000a macw %d6u,%a2u,%fp@\(10\)&,%d1,%acc2 + 4738: a66e a0e6 000a macw %d6u,%a2u,%fp@\(10\)&,%a3,%acc1 + 473e: a6ee a0f6 000a macw %d6u,%a2u,%fp@\(10\)&,%a3,%acc2 + 4744: a42e a0e6 000a macw %d6u,%a2u,%fp@\(10\)&,%d2,%acc1 + 474a: a4ae a0f6 000a macw %d6u,%a2u,%fp@\(10\)&,%d2,%acc2 + 4750: ae6e a0e6 000a macw %d6u,%a2u,%fp@\(10\)&,%sp,%acc1 + 4756: aeee a0f6 000a macw %d6u,%a2u,%fp@\(10\)&,%sp,%acc2 + 475c: a221 a0c6 macw %d6u,%a2u,%a1@-,%d1,%acc1 + 4760: a2a1 a0d6 macw %d6u,%a2u,%a1@-,%d1,%acc2 + 4764: a661 a0c6 macw %d6u,%a2u,%a1@-,%a3,%acc1 + 4768: a6e1 a0d6 macw %d6u,%a2u,%a1@-,%a3,%acc2 + 476c: a421 a0c6 macw %d6u,%a2u,%a1@-,%d2,%acc1 + 4770: a4a1 a0d6 macw %d6u,%a2u,%a1@-,%d2,%acc2 + 4774: ae61 a0c6 macw %d6u,%a2u,%a1@-,%sp,%acc1 + 4778: aee1 a0d6 macw %d6u,%a2u,%a1@-,%sp,%acc2 + 477c: a221 a0e6 macw %d6u,%a2u,%a1@-&,%d1,%acc1 + 4780: a2a1 a0f6 macw %d6u,%a2u,%a1@-&,%d1,%acc2 + 4784: a661 a0e6 macw %d6u,%a2u,%a1@-&,%a3,%acc1 + 4788: a6e1 a0f6 macw %d6u,%a2u,%a1@-&,%a3,%acc2 + 478c: a421 a0e6 macw %d6u,%a2u,%a1@-&,%d2,%acc1 + 4790: a4a1 a0f6 macw %d6u,%a2u,%a1@-&,%d2,%acc2 + 4794: ae61 a0e6 macw %d6u,%a2u,%a1@-&,%sp,%acc1 + 4798: aee1 a0f6 macw %d6u,%a2u,%a1@-&,%sp,%acc2 + 479c: a213 a2c6 macw %d6u,%a2u,<<,%a3@,%d1,%acc1 + 47a0: a293 a2d6 macw %d6u,%a2u,<<,%a3@,%d1,%acc2 + 47a4: a653 a2c6 macw %d6u,%a2u,<<,%a3@,%a3,%acc1 + 47a8: a6d3 a2d6 macw %d6u,%a2u,<<,%a3@,%a3,%acc2 + 47ac: a413 a2c6 macw %d6u,%a2u,<<,%a3@,%d2,%acc1 + 47b0: a493 a2d6 macw %d6u,%a2u,<<,%a3@,%d2,%acc2 + 47b4: ae53 a2c6 macw %d6u,%a2u,<<,%a3@,%sp,%acc1 + 47b8: aed3 a2d6 macw %d6u,%a2u,<<,%a3@,%sp,%acc2 + 47bc: a213 a2e6 macw %d6u,%a2u,<<,%a3@&,%d1,%acc1 + 47c0: a293 a2f6 macw %d6u,%a2u,<<,%a3@&,%d1,%acc2 + 47c4: a653 a2e6 macw %d6u,%a2u,<<,%a3@&,%a3,%acc1 + 47c8: a6d3 a2f6 macw %d6u,%a2u,<<,%a3@&,%a3,%acc2 + 47cc: a413 a2e6 macw %d6u,%a2u,<<,%a3@&,%d2,%acc1 + 47d0: a493 a2f6 macw %d6u,%a2u,<<,%a3@&,%d2,%acc2 + 47d4: ae53 a2e6 macw %d6u,%a2u,<<,%a3@&,%sp,%acc1 + 47d8: aed3 a2f6 macw %d6u,%a2u,<<,%a3@&,%sp,%acc2 + 47dc: a21a a2c6 macw %d6u,%a2u,<<,%a2@\+,%d1,%acc1 + 47e0: a29a a2d6 macw %d6u,%a2u,<<,%a2@\+,%d1,%acc2 + 47e4: a65a a2c6 macw %d6u,%a2u,<<,%a2@\+,%a3,%acc1 + 47e8: a6da a2d6 macw %d6u,%a2u,<<,%a2@\+,%a3,%acc2 + 47ec: a41a a2c6 macw %d6u,%a2u,<<,%a2@\+,%d2,%acc1 + 47f0: a49a a2d6 macw %d6u,%a2u,<<,%a2@\+,%d2,%acc2 + 47f4: ae5a a2c6 macw %d6u,%a2u,<<,%a2@\+,%sp,%acc1 + 47f8: aeda a2d6 macw %d6u,%a2u,<<,%a2@\+,%sp,%acc2 + 47fc: a21a a2e6 macw %d6u,%a2u,<<,%a2@\+&,%d1,%acc1 + 4800: a29a a2f6 macw %d6u,%a2u,<<,%a2@\+&,%d1,%acc2 + 4804: a65a a2e6 macw %d6u,%a2u,<<,%a2@\+&,%a3,%acc1 + 4808: a6da a2f6 macw %d6u,%a2u,<<,%a2@\+&,%a3,%acc2 + 480c: a41a a2e6 macw %d6u,%a2u,<<,%a2@\+&,%d2,%acc1 + 4810: a49a a2f6 macw %d6u,%a2u,<<,%a2@\+&,%d2,%acc2 + 4814: ae5a a2e6 macw %d6u,%a2u,<<,%a2@\+&,%sp,%acc1 + 4818: aeda a2f6 macw %d6u,%a2u,<<,%a2@\+&,%sp,%acc2 + 481c: a22e a2c6 000a macw %d6u,%a2u,<<,%fp@\(10\),%d1,%acc1 + 4822: a2ae a2d6 000a macw %d6u,%a2u,<<,%fp@\(10\),%d1,%acc2 + 4828: a66e a2c6 000a macw %d6u,%a2u,<<,%fp@\(10\),%a3,%acc1 + 482e: a6ee a2d6 000a macw %d6u,%a2u,<<,%fp@\(10\),%a3,%acc2 + 4834: a42e a2c6 000a macw %d6u,%a2u,<<,%fp@\(10\),%d2,%acc1 + 483a: a4ae a2d6 000a macw %d6u,%a2u,<<,%fp@\(10\),%d2,%acc2 + 4840: ae6e a2c6 000a macw %d6u,%a2u,<<,%fp@\(10\),%sp,%acc1 + 4846: aeee a2d6 000a macw %d6u,%a2u,<<,%fp@\(10\),%sp,%acc2 + 484c: a22e a2e6 000a macw %d6u,%a2u,<<,%fp@\(10\)&,%d1,%acc1 + 4852: a2ae a2f6 000a macw %d6u,%a2u,<<,%fp@\(10\)&,%d1,%acc2 + 4858: a66e a2e6 000a macw %d6u,%a2u,<<,%fp@\(10\)&,%a3,%acc1 + 485e: a6ee a2f6 000a macw %d6u,%a2u,<<,%fp@\(10\)&,%a3,%acc2 + 4864: a42e a2e6 000a macw %d6u,%a2u,<<,%fp@\(10\)&,%d2,%acc1 + 486a: a4ae a2f6 000a macw %d6u,%a2u,<<,%fp@\(10\)&,%d2,%acc2 + 4870: ae6e a2e6 000a macw %d6u,%a2u,<<,%fp@\(10\)&,%sp,%acc1 + 4876: aeee a2f6 000a macw %d6u,%a2u,<<,%fp@\(10\)&,%sp,%acc2 + 487c: a221 a2c6 macw %d6u,%a2u,<<,%a1@-,%d1,%acc1 + 4880: a2a1 a2d6 macw %d6u,%a2u,<<,%a1@-,%d1,%acc2 + 4884: a661 a2c6 macw %d6u,%a2u,<<,%a1@-,%a3,%acc1 + 4888: a6e1 a2d6 macw %d6u,%a2u,<<,%a1@-,%a3,%acc2 + 488c: a421 a2c6 macw %d6u,%a2u,<<,%a1@-,%d2,%acc1 + 4890: a4a1 a2d6 macw %d6u,%a2u,<<,%a1@-,%d2,%acc2 + 4894: ae61 a2c6 macw %d6u,%a2u,<<,%a1@-,%sp,%acc1 + 4898: aee1 a2d6 macw %d6u,%a2u,<<,%a1@-,%sp,%acc2 + 489c: a221 a2e6 macw %d6u,%a2u,<<,%a1@-&,%d1,%acc1 + 48a0: a2a1 a2f6 macw %d6u,%a2u,<<,%a1@-&,%d1,%acc2 + 48a4: a661 a2e6 macw %d6u,%a2u,<<,%a1@-&,%a3,%acc1 + 48a8: a6e1 a2f6 macw %d6u,%a2u,<<,%a1@-&,%a3,%acc2 + 48ac: a421 a2e6 macw %d6u,%a2u,<<,%a1@-&,%d2,%acc1 + 48b0: a4a1 a2f6 macw %d6u,%a2u,<<,%a1@-&,%d2,%acc2 + 48b4: ae61 a2e6 macw %d6u,%a2u,<<,%a1@-&,%sp,%acc1 + 48b8: aee1 a2f6 macw %d6u,%a2u,<<,%a1@-&,%sp,%acc2 + 48bc: a213 a6c6 macw %d6u,%a2u,>>,%a3@,%d1,%acc1 + 48c0: a293 a6d6 macw %d6u,%a2u,>>,%a3@,%d1,%acc2 + 48c4: a653 a6c6 macw %d6u,%a2u,>>,%a3@,%a3,%acc1 + 48c8: a6d3 a6d6 macw %d6u,%a2u,>>,%a3@,%a3,%acc2 + 48cc: a413 a6c6 macw %d6u,%a2u,>>,%a3@,%d2,%acc1 + 48d0: a493 a6d6 macw %d6u,%a2u,>>,%a3@,%d2,%acc2 + 48d4: ae53 a6c6 macw %d6u,%a2u,>>,%a3@,%sp,%acc1 + 48d8: aed3 a6d6 macw %d6u,%a2u,>>,%a3@,%sp,%acc2 + 48dc: a213 a6e6 macw %d6u,%a2u,>>,%a3@&,%d1,%acc1 + 48e0: a293 a6f6 macw %d6u,%a2u,>>,%a3@&,%d1,%acc2 + 48e4: a653 a6e6 macw %d6u,%a2u,>>,%a3@&,%a3,%acc1 + 48e8: a6d3 a6f6 macw %d6u,%a2u,>>,%a3@&,%a3,%acc2 + 48ec: a413 a6e6 macw %d6u,%a2u,>>,%a3@&,%d2,%acc1 + 48f0: a493 a6f6 macw %d6u,%a2u,>>,%a3@&,%d2,%acc2 + 48f4: ae53 a6e6 macw %d6u,%a2u,>>,%a3@&,%sp,%acc1 + 48f8: aed3 a6f6 macw %d6u,%a2u,>>,%a3@&,%sp,%acc2 + 48fc: a21a a6c6 macw %d6u,%a2u,>>,%a2@\+,%d1,%acc1 + 4900: a29a a6d6 macw %d6u,%a2u,>>,%a2@\+,%d1,%acc2 + 4904: a65a a6c6 macw %d6u,%a2u,>>,%a2@\+,%a3,%acc1 + 4908: a6da a6d6 macw %d6u,%a2u,>>,%a2@\+,%a3,%acc2 + 490c: a41a a6c6 macw %d6u,%a2u,>>,%a2@\+,%d2,%acc1 + 4910: a49a a6d6 macw %d6u,%a2u,>>,%a2@\+,%d2,%acc2 + 4914: ae5a a6c6 macw %d6u,%a2u,>>,%a2@\+,%sp,%acc1 + 4918: aeda a6d6 macw %d6u,%a2u,>>,%a2@\+,%sp,%acc2 + 491c: a21a a6e6 macw %d6u,%a2u,>>,%a2@\+&,%d1,%acc1 + 4920: a29a a6f6 macw %d6u,%a2u,>>,%a2@\+&,%d1,%acc2 + 4924: a65a a6e6 macw %d6u,%a2u,>>,%a2@\+&,%a3,%acc1 + 4928: a6da a6f6 macw %d6u,%a2u,>>,%a2@\+&,%a3,%acc2 + 492c: a41a a6e6 macw %d6u,%a2u,>>,%a2@\+&,%d2,%acc1 + 4930: a49a a6f6 macw %d6u,%a2u,>>,%a2@\+&,%d2,%acc2 + 4934: ae5a a6e6 macw %d6u,%a2u,>>,%a2@\+&,%sp,%acc1 + 4938: aeda a6f6 macw %d6u,%a2u,>>,%a2@\+&,%sp,%acc2 + 493c: a22e a6c6 000a macw %d6u,%a2u,>>,%fp@\(10\),%d1,%acc1 + 4942: a2ae a6d6 000a macw %d6u,%a2u,>>,%fp@\(10\),%d1,%acc2 + 4948: a66e a6c6 000a macw %d6u,%a2u,>>,%fp@\(10\),%a3,%acc1 + 494e: a6ee a6d6 000a macw %d6u,%a2u,>>,%fp@\(10\),%a3,%acc2 + 4954: a42e a6c6 000a macw %d6u,%a2u,>>,%fp@\(10\),%d2,%acc1 + 495a: a4ae a6d6 000a macw %d6u,%a2u,>>,%fp@\(10\),%d2,%acc2 + 4960: ae6e a6c6 000a macw %d6u,%a2u,>>,%fp@\(10\),%sp,%acc1 + 4966: aeee a6d6 000a macw %d6u,%a2u,>>,%fp@\(10\),%sp,%acc2 + 496c: a22e a6e6 000a macw %d6u,%a2u,>>,%fp@\(10\)&,%d1,%acc1 + 4972: a2ae a6f6 000a macw %d6u,%a2u,>>,%fp@\(10\)&,%d1,%acc2 + 4978: a66e a6e6 000a macw %d6u,%a2u,>>,%fp@\(10\)&,%a3,%acc1 + 497e: a6ee a6f6 000a macw %d6u,%a2u,>>,%fp@\(10\)&,%a3,%acc2 + 4984: a42e a6e6 000a macw %d6u,%a2u,>>,%fp@\(10\)&,%d2,%acc1 + 498a: a4ae a6f6 000a macw %d6u,%a2u,>>,%fp@\(10\)&,%d2,%acc2 + 4990: ae6e a6e6 000a macw %d6u,%a2u,>>,%fp@\(10\)&,%sp,%acc1 + 4996: aeee a6f6 000a macw %d6u,%a2u,>>,%fp@\(10\)&,%sp,%acc2 + 499c: a221 a6c6 macw %d6u,%a2u,>>,%a1@-,%d1,%acc1 + 49a0: a2a1 a6d6 macw %d6u,%a2u,>>,%a1@-,%d1,%acc2 + 49a4: a661 a6c6 macw %d6u,%a2u,>>,%a1@-,%a3,%acc1 + 49a8: a6e1 a6d6 macw %d6u,%a2u,>>,%a1@-,%a3,%acc2 + 49ac: a421 a6c6 macw %d6u,%a2u,>>,%a1@-,%d2,%acc1 + 49b0: a4a1 a6d6 macw %d6u,%a2u,>>,%a1@-,%d2,%acc2 + 49b4: ae61 a6c6 macw %d6u,%a2u,>>,%a1@-,%sp,%acc1 + 49b8: aee1 a6d6 macw %d6u,%a2u,>>,%a1@-,%sp,%acc2 + 49bc: a221 a6e6 macw %d6u,%a2u,>>,%a1@-&,%d1,%acc1 + 49c0: a2a1 a6f6 macw %d6u,%a2u,>>,%a1@-&,%d1,%acc2 + 49c4: a661 a6e6 macw %d6u,%a2u,>>,%a1@-&,%a3,%acc1 + 49c8: a6e1 a6f6 macw %d6u,%a2u,>>,%a1@-&,%a3,%acc2 + 49cc: a421 a6e6 macw %d6u,%a2u,>>,%a1@-&,%d2,%acc1 + 49d0: a4a1 a6f6 macw %d6u,%a2u,>>,%a1@-&,%d2,%acc2 + 49d4: ae61 a6e6 macw %d6u,%a2u,>>,%a1@-&,%sp,%acc1 + 49d8: aee1 a6f6 macw %d6u,%a2u,>>,%a1@-&,%sp,%acc2 + 49dc: a213 a2c6 macw %d6u,%a2u,<<,%a3@,%d1,%acc1 + 49e0: a293 a2d6 macw %d6u,%a2u,<<,%a3@,%d1,%acc2 + 49e4: a653 a2c6 macw %d6u,%a2u,<<,%a3@,%a3,%acc1 + 49e8: a6d3 a2d6 macw %d6u,%a2u,<<,%a3@,%a3,%acc2 + 49ec: a413 a2c6 macw %d6u,%a2u,<<,%a3@,%d2,%acc1 + 49f0: a493 a2d6 macw %d6u,%a2u,<<,%a3@,%d2,%acc2 + 49f4: ae53 a2c6 macw %d6u,%a2u,<<,%a3@,%sp,%acc1 + 49f8: aed3 a2d6 macw %d6u,%a2u,<<,%a3@,%sp,%acc2 + 49fc: a213 a2e6 macw %d6u,%a2u,<<,%a3@&,%d1,%acc1 + 4a00: a293 a2f6 macw %d6u,%a2u,<<,%a3@&,%d1,%acc2 + 4a04: a653 a2e6 macw %d6u,%a2u,<<,%a3@&,%a3,%acc1 + 4a08: a6d3 a2f6 macw %d6u,%a2u,<<,%a3@&,%a3,%acc2 + 4a0c: a413 a2e6 macw %d6u,%a2u,<<,%a3@&,%d2,%acc1 + 4a10: a493 a2f6 macw %d6u,%a2u,<<,%a3@&,%d2,%acc2 + 4a14: ae53 a2e6 macw %d6u,%a2u,<<,%a3@&,%sp,%acc1 + 4a18: aed3 a2f6 macw %d6u,%a2u,<<,%a3@&,%sp,%acc2 + 4a1c: a21a a2c6 macw %d6u,%a2u,<<,%a2@\+,%d1,%acc1 + 4a20: a29a a2d6 macw %d6u,%a2u,<<,%a2@\+,%d1,%acc2 + 4a24: a65a a2c6 macw %d6u,%a2u,<<,%a2@\+,%a3,%acc1 + 4a28: a6da a2d6 macw %d6u,%a2u,<<,%a2@\+,%a3,%acc2 + 4a2c: a41a a2c6 macw %d6u,%a2u,<<,%a2@\+,%d2,%acc1 + 4a30: a49a a2d6 macw %d6u,%a2u,<<,%a2@\+,%d2,%acc2 + 4a34: ae5a a2c6 macw %d6u,%a2u,<<,%a2@\+,%sp,%acc1 + 4a38: aeda a2d6 macw %d6u,%a2u,<<,%a2@\+,%sp,%acc2 + 4a3c: a21a a2e6 macw %d6u,%a2u,<<,%a2@\+&,%d1,%acc1 + 4a40: a29a a2f6 macw %d6u,%a2u,<<,%a2@\+&,%d1,%acc2 + 4a44: a65a a2e6 macw %d6u,%a2u,<<,%a2@\+&,%a3,%acc1 + 4a48: a6da a2f6 macw %d6u,%a2u,<<,%a2@\+&,%a3,%acc2 + 4a4c: a41a a2e6 macw %d6u,%a2u,<<,%a2@\+&,%d2,%acc1 + 4a50: a49a a2f6 macw %d6u,%a2u,<<,%a2@\+&,%d2,%acc2 + 4a54: ae5a a2e6 macw %d6u,%a2u,<<,%a2@\+&,%sp,%acc1 + 4a58: aeda a2f6 macw %d6u,%a2u,<<,%a2@\+&,%sp,%acc2 + 4a5c: a22e a2c6 000a macw %d6u,%a2u,<<,%fp@\(10\),%d1,%acc1 + 4a62: a2ae a2d6 000a macw %d6u,%a2u,<<,%fp@\(10\),%d1,%acc2 + 4a68: a66e a2c6 000a macw %d6u,%a2u,<<,%fp@\(10\),%a3,%acc1 + 4a6e: a6ee a2d6 000a macw %d6u,%a2u,<<,%fp@\(10\),%a3,%acc2 + 4a74: a42e a2c6 000a macw %d6u,%a2u,<<,%fp@\(10\),%d2,%acc1 + 4a7a: a4ae a2d6 000a macw %d6u,%a2u,<<,%fp@\(10\),%d2,%acc2 + 4a80: ae6e a2c6 000a macw %d6u,%a2u,<<,%fp@\(10\),%sp,%acc1 + 4a86: aeee a2d6 000a macw %d6u,%a2u,<<,%fp@\(10\),%sp,%acc2 + 4a8c: a22e a2e6 000a macw %d6u,%a2u,<<,%fp@\(10\)&,%d1,%acc1 + 4a92: a2ae a2f6 000a macw %d6u,%a2u,<<,%fp@\(10\)&,%d1,%acc2 + 4a98: a66e a2e6 000a macw %d6u,%a2u,<<,%fp@\(10\)&,%a3,%acc1 + 4a9e: a6ee a2f6 000a macw %d6u,%a2u,<<,%fp@\(10\)&,%a3,%acc2 + 4aa4: a42e a2e6 000a macw %d6u,%a2u,<<,%fp@\(10\)&,%d2,%acc1 + 4aaa: a4ae a2f6 000a macw %d6u,%a2u,<<,%fp@\(10\)&,%d2,%acc2 + 4ab0: ae6e a2e6 000a macw %d6u,%a2u,<<,%fp@\(10\)&,%sp,%acc1 + 4ab6: aeee a2f6 000a macw %d6u,%a2u,<<,%fp@\(10\)&,%sp,%acc2 + 4abc: a221 a2c6 macw %d6u,%a2u,<<,%a1@-,%d1,%acc1 + 4ac0: a2a1 a2d6 macw %d6u,%a2u,<<,%a1@-,%d1,%acc2 + 4ac4: a661 a2c6 macw %d6u,%a2u,<<,%a1@-,%a3,%acc1 + 4ac8: a6e1 a2d6 macw %d6u,%a2u,<<,%a1@-,%a3,%acc2 + 4acc: a421 a2c6 macw %d6u,%a2u,<<,%a1@-,%d2,%acc1 + 4ad0: a4a1 a2d6 macw %d6u,%a2u,<<,%a1@-,%d2,%acc2 + 4ad4: ae61 a2c6 macw %d6u,%a2u,<<,%a1@-,%sp,%acc1 + 4ad8: aee1 a2d6 macw %d6u,%a2u,<<,%a1@-,%sp,%acc2 + 4adc: a221 a2e6 macw %d6u,%a2u,<<,%a1@-&,%d1,%acc1 + 4ae0: a2a1 a2f6 macw %d6u,%a2u,<<,%a1@-&,%d1,%acc2 + 4ae4: a661 a2e6 macw %d6u,%a2u,<<,%a1@-&,%a3,%acc1 + 4ae8: a6e1 a2f6 macw %d6u,%a2u,<<,%a1@-&,%a3,%acc2 + 4aec: a421 a2e6 macw %d6u,%a2u,<<,%a1@-&,%d2,%acc1 + 4af0: a4a1 a2f6 macw %d6u,%a2u,<<,%a1@-&,%d2,%acc2 + 4af4: ae61 a2e6 macw %d6u,%a2u,<<,%a1@-&,%sp,%acc1 + 4af8: aee1 a2f6 macw %d6u,%a2u,<<,%a1@-&,%sp,%acc2 + 4afc: a213 a6c6 macw %d6u,%a2u,>>,%a3@,%d1,%acc1 + 4b00: a293 a6d6 macw %d6u,%a2u,>>,%a3@,%d1,%acc2 + 4b04: a653 a6c6 macw %d6u,%a2u,>>,%a3@,%a3,%acc1 + 4b08: a6d3 a6d6 macw %d6u,%a2u,>>,%a3@,%a3,%acc2 + 4b0c: a413 a6c6 macw %d6u,%a2u,>>,%a3@,%d2,%acc1 + 4b10: a493 a6d6 macw %d6u,%a2u,>>,%a3@,%d2,%acc2 + 4b14: ae53 a6c6 macw %d6u,%a2u,>>,%a3@,%sp,%acc1 + 4b18: aed3 a6d6 macw %d6u,%a2u,>>,%a3@,%sp,%acc2 + 4b1c: a213 a6e6 macw %d6u,%a2u,>>,%a3@&,%d1,%acc1 + 4b20: a293 a6f6 macw %d6u,%a2u,>>,%a3@&,%d1,%acc2 + 4b24: a653 a6e6 macw %d6u,%a2u,>>,%a3@&,%a3,%acc1 + 4b28: a6d3 a6f6 macw %d6u,%a2u,>>,%a3@&,%a3,%acc2 + 4b2c: a413 a6e6 macw %d6u,%a2u,>>,%a3@&,%d2,%acc1 + 4b30: a493 a6f6 macw %d6u,%a2u,>>,%a3@&,%d2,%acc2 + 4b34: ae53 a6e6 macw %d6u,%a2u,>>,%a3@&,%sp,%acc1 + 4b38: aed3 a6f6 macw %d6u,%a2u,>>,%a3@&,%sp,%acc2 + 4b3c: a21a a6c6 macw %d6u,%a2u,>>,%a2@\+,%d1,%acc1 + 4b40: a29a a6d6 macw %d6u,%a2u,>>,%a2@\+,%d1,%acc2 + 4b44: a65a a6c6 macw %d6u,%a2u,>>,%a2@\+,%a3,%acc1 + 4b48: a6da a6d6 macw %d6u,%a2u,>>,%a2@\+,%a3,%acc2 + 4b4c: a41a a6c6 macw %d6u,%a2u,>>,%a2@\+,%d2,%acc1 + 4b50: a49a a6d6 macw %d6u,%a2u,>>,%a2@\+,%d2,%acc2 + 4b54: ae5a a6c6 macw %d6u,%a2u,>>,%a2@\+,%sp,%acc1 + 4b58: aeda a6d6 macw %d6u,%a2u,>>,%a2@\+,%sp,%acc2 + 4b5c: a21a a6e6 macw %d6u,%a2u,>>,%a2@\+&,%d1,%acc1 + 4b60: a29a a6f6 macw %d6u,%a2u,>>,%a2@\+&,%d1,%acc2 + 4b64: a65a a6e6 macw %d6u,%a2u,>>,%a2@\+&,%a3,%acc1 + 4b68: a6da a6f6 macw %d6u,%a2u,>>,%a2@\+&,%a3,%acc2 + 4b6c: a41a a6e6 macw %d6u,%a2u,>>,%a2@\+&,%d2,%acc1 + 4b70: a49a a6f6 macw %d6u,%a2u,>>,%a2@\+&,%d2,%acc2 + 4b74: ae5a a6e6 macw %d6u,%a2u,>>,%a2@\+&,%sp,%acc1 + 4b78: aeda a6f6 macw %d6u,%a2u,>>,%a2@\+&,%sp,%acc2 + 4b7c: a22e a6c6 000a macw %d6u,%a2u,>>,%fp@\(10\),%d1,%acc1 + 4b82: a2ae a6d6 000a macw %d6u,%a2u,>>,%fp@\(10\),%d1,%acc2 + 4b88: a66e a6c6 000a macw %d6u,%a2u,>>,%fp@\(10\),%a3,%acc1 + 4b8e: a6ee a6d6 000a macw %d6u,%a2u,>>,%fp@\(10\),%a3,%acc2 + 4b94: a42e a6c6 000a macw %d6u,%a2u,>>,%fp@\(10\),%d2,%acc1 + 4b9a: a4ae a6d6 000a macw %d6u,%a2u,>>,%fp@\(10\),%d2,%acc2 + 4ba0: ae6e a6c6 000a macw %d6u,%a2u,>>,%fp@\(10\),%sp,%acc1 + 4ba6: aeee a6d6 000a macw %d6u,%a2u,>>,%fp@\(10\),%sp,%acc2 + 4bac: a22e a6e6 000a macw %d6u,%a2u,>>,%fp@\(10\)&,%d1,%acc1 + 4bb2: a2ae a6f6 000a macw %d6u,%a2u,>>,%fp@\(10\)&,%d1,%acc2 + 4bb8: a66e a6e6 000a macw %d6u,%a2u,>>,%fp@\(10\)&,%a3,%acc1 + 4bbe: a6ee a6f6 000a macw %d6u,%a2u,>>,%fp@\(10\)&,%a3,%acc2 + 4bc4: a42e a6e6 000a macw %d6u,%a2u,>>,%fp@\(10\)&,%d2,%acc1 + 4bca: a4ae a6f6 000a macw %d6u,%a2u,>>,%fp@\(10\)&,%d2,%acc2 + 4bd0: ae6e a6e6 000a macw %d6u,%a2u,>>,%fp@\(10\)&,%sp,%acc1 + 4bd6: aeee a6f6 000a macw %d6u,%a2u,>>,%fp@\(10\)&,%sp,%acc2 + 4bdc: a221 a6c6 macw %d6u,%a2u,>>,%a1@-,%d1,%acc1 + 4be0: a2a1 a6d6 macw %d6u,%a2u,>>,%a1@-,%d1,%acc2 + 4be4: a661 a6c6 macw %d6u,%a2u,>>,%a1@-,%a3,%acc1 + 4be8: a6e1 a6d6 macw %d6u,%a2u,>>,%a1@-,%a3,%acc2 + 4bec: a421 a6c6 macw %d6u,%a2u,>>,%a1@-,%d2,%acc1 + 4bf0: a4a1 a6d6 macw %d6u,%a2u,>>,%a1@-,%d2,%acc2 + 4bf4: ae61 a6c6 macw %d6u,%a2u,>>,%a1@-,%sp,%acc1 + 4bf8: aee1 a6d6 macw %d6u,%a2u,>>,%a1@-,%sp,%acc2 + 4bfc: a221 a6e6 macw %d6u,%a2u,>>,%a1@-&,%d1,%acc1 + 4c00: a2a1 a6f6 macw %d6u,%a2u,>>,%a1@-&,%d1,%acc2 + 4c04: a661 a6e6 macw %d6u,%a2u,>>,%a1@-&,%a3,%acc1 + 4c08: a6e1 a6f6 macw %d6u,%a2u,>>,%a1@-&,%a3,%acc2 + 4c0c: a421 a6e6 macw %d6u,%a2u,>>,%a1@-&,%d2,%acc1 + 4c10: a4a1 a6f6 macw %d6u,%a2u,>>,%a1@-&,%d2,%acc2 + 4c14: ae61 a6e6 macw %d6u,%a2u,>>,%a1@-&,%sp,%acc1 + 4c18: aee1 a6f6 macw %d6u,%a2u,>>,%a1@-&,%sp,%acc2 + 4c1c: a213 3046 macw %d6u,%d3l,%a3@,%d1,%acc1 + 4c20: a293 3056 macw %d6u,%d3l,%a3@,%d1,%acc2 + 4c24: a653 3046 macw %d6u,%d3l,%a3@,%a3,%acc1 + 4c28: a6d3 3056 macw %d6u,%d3l,%a3@,%a3,%acc2 + 4c2c: a413 3046 macw %d6u,%d3l,%a3@,%d2,%acc1 + 4c30: a493 3056 macw %d6u,%d3l,%a3@,%d2,%acc2 + 4c34: ae53 3046 macw %d6u,%d3l,%a3@,%sp,%acc1 + 4c38: aed3 3056 macw %d6u,%d3l,%a3@,%sp,%acc2 + 4c3c: a213 3066 macw %d6u,%d3l,%a3@&,%d1,%acc1 + 4c40: a293 3076 macw %d6u,%d3l,%a3@&,%d1,%acc2 + 4c44: a653 3066 macw %d6u,%d3l,%a3@&,%a3,%acc1 + 4c48: a6d3 3076 macw %d6u,%d3l,%a3@&,%a3,%acc2 + 4c4c: a413 3066 macw %d6u,%d3l,%a3@&,%d2,%acc1 + 4c50: a493 3076 macw %d6u,%d3l,%a3@&,%d2,%acc2 + 4c54: ae53 3066 macw %d6u,%d3l,%a3@&,%sp,%acc1 + 4c58: aed3 3076 macw %d6u,%d3l,%a3@&,%sp,%acc2 + 4c5c: a21a 3046 macw %d6u,%d3l,%a2@\+,%d1,%acc1 + 4c60: a29a 3056 macw %d6u,%d3l,%a2@\+,%d1,%acc2 + 4c64: a65a 3046 macw %d6u,%d3l,%a2@\+,%a3,%acc1 + 4c68: a6da 3056 macw %d6u,%d3l,%a2@\+,%a3,%acc2 + 4c6c: a41a 3046 macw %d6u,%d3l,%a2@\+,%d2,%acc1 + 4c70: a49a 3056 macw %d6u,%d3l,%a2@\+,%d2,%acc2 + 4c74: ae5a 3046 macw %d6u,%d3l,%a2@\+,%sp,%acc1 + 4c78: aeda 3056 macw %d6u,%d3l,%a2@\+,%sp,%acc2 + 4c7c: a21a 3066 macw %d6u,%d3l,%a2@\+&,%d1,%acc1 + 4c80: a29a 3076 macw %d6u,%d3l,%a2@\+&,%d1,%acc2 + 4c84: a65a 3066 macw %d6u,%d3l,%a2@\+&,%a3,%acc1 + 4c88: a6da 3076 macw %d6u,%d3l,%a2@\+&,%a3,%acc2 + 4c8c: a41a 3066 macw %d6u,%d3l,%a2@\+&,%d2,%acc1 + 4c90: a49a 3076 macw %d6u,%d3l,%a2@\+&,%d2,%acc2 + 4c94: ae5a 3066 macw %d6u,%d3l,%a2@\+&,%sp,%acc1 + 4c98: aeda 3076 macw %d6u,%d3l,%a2@\+&,%sp,%acc2 + 4c9c: a22e 3046 000a macw %d6u,%d3l,%fp@\(10\),%d1,%acc1 + 4ca2: a2ae 3056 000a macw %d6u,%d3l,%fp@\(10\),%d1,%acc2 + 4ca8: a66e 3046 000a macw %d6u,%d3l,%fp@\(10\),%a3,%acc1 + 4cae: a6ee 3056 000a macw %d6u,%d3l,%fp@\(10\),%a3,%acc2 + 4cb4: a42e 3046 000a macw %d6u,%d3l,%fp@\(10\),%d2,%acc1 + 4cba: a4ae 3056 000a macw %d6u,%d3l,%fp@\(10\),%d2,%acc2 + 4cc0: ae6e 3046 000a macw %d6u,%d3l,%fp@\(10\),%sp,%acc1 + 4cc6: aeee 3056 000a macw %d6u,%d3l,%fp@\(10\),%sp,%acc2 + 4ccc: a22e 3066 000a macw %d6u,%d3l,%fp@\(10\)&,%d1,%acc1 + 4cd2: a2ae 3076 000a macw %d6u,%d3l,%fp@\(10\)&,%d1,%acc2 + 4cd8: a66e 3066 000a macw %d6u,%d3l,%fp@\(10\)&,%a3,%acc1 + 4cde: a6ee 3076 000a macw %d6u,%d3l,%fp@\(10\)&,%a3,%acc2 + 4ce4: a42e 3066 000a macw %d6u,%d3l,%fp@\(10\)&,%d2,%acc1 + 4cea: a4ae 3076 000a macw %d6u,%d3l,%fp@\(10\)&,%d2,%acc2 + 4cf0: ae6e 3066 000a macw %d6u,%d3l,%fp@\(10\)&,%sp,%acc1 + 4cf6: aeee 3076 000a macw %d6u,%d3l,%fp@\(10\)&,%sp,%acc2 + 4cfc: a221 3046 macw %d6u,%d3l,%a1@-,%d1,%acc1 + 4d00: a2a1 3056 macw %d6u,%d3l,%a1@-,%d1,%acc2 + 4d04: a661 3046 macw %d6u,%d3l,%a1@-,%a3,%acc1 + 4d08: a6e1 3056 macw %d6u,%d3l,%a1@-,%a3,%acc2 + 4d0c: a421 3046 macw %d6u,%d3l,%a1@-,%d2,%acc1 + 4d10: a4a1 3056 macw %d6u,%d3l,%a1@-,%d2,%acc2 + 4d14: ae61 3046 macw %d6u,%d3l,%a1@-,%sp,%acc1 + 4d18: aee1 3056 macw %d6u,%d3l,%a1@-,%sp,%acc2 + 4d1c: a221 3066 macw %d6u,%d3l,%a1@-&,%d1,%acc1 + 4d20: a2a1 3076 macw %d6u,%d3l,%a1@-&,%d1,%acc2 + 4d24: a661 3066 macw %d6u,%d3l,%a1@-&,%a3,%acc1 + 4d28: a6e1 3076 macw %d6u,%d3l,%a1@-&,%a3,%acc2 + 4d2c: a421 3066 macw %d6u,%d3l,%a1@-&,%d2,%acc1 + 4d30: a4a1 3076 macw %d6u,%d3l,%a1@-&,%d2,%acc2 + 4d34: ae61 3066 macw %d6u,%d3l,%a1@-&,%sp,%acc1 + 4d38: aee1 3076 macw %d6u,%d3l,%a1@-&,%sp,%acc2 + 4d3c: a213 3246 macw %d6u,%d3l,<<,%a3@,%d1,%acc1 + 4d40: a293 3256 macw %d6u,%d3l,<<,%a3@,%d1,%acc2 + 4d44: a653 3246 macw %d6u,%d3l,<<,%a3@,%a3,%acc1 + 4d48: a6d3 3256 macw %d6u,%d3l,<<,%a3@,%a3,%acc2 + 4d4c: a413 3246 macw %d6u,%d3l,<<,%a3@,%d2,%acc1 + 4d50: a493 3256 macw %d6u,%d3l,<<,%a3@,%d2,%acc2 + 4d54: ae53 3246 macw %d6u,%d3l,<<,%a3@,%sp,%acc1 + 4d58: aed3 3256 macw %d6u,%d3l,<<,%a3@,%sp,%acc2 + 4d5c: a213 3266 macw %d6u,%d3l,<<,%a3@&,%d1,%acc1 + 4d60: a293 3276 macw %d6u,%d3l,<<,%a3@&,%d1,%acc2 + 4d64: a653 3266 macw %d6u,%d3l,<<,%a3@&,%a3,%acc1 + 4d68: a6d3 3276 macw %d6u,%d3l,<<,%a3@&,%a3,%acc2 + 4d6c: a413 3266 macw %d6u,%d3l,<<,%a3@&,%d2,%acc1 + 4d70: a493 3276 macw %d6u,%d3l,<<,%a3@&,%d2,%acc2 + 4d74: ae53 3266 macw %d6u,%d3l,<<,%a3@&,%sp,%acc1 + 4d78: aed3 3276 macw %d6u,%d3l,<<,%a3@&,%sp,%acc2 + 4d7c: a21a 3246 macw %d6u,%d3l,<<,%a2@\+,%d1,%acc1 + 4d80: a29a 3256 macw %d6u,%d3l,<<,%a2@\+,%d1,%acc2 + 4d84: a65a 3246 macw %d6u,%d3l,<<,%a2@\+,%a3,%acc1 + 4d88: a6da 3256 macw %d6u,%d3l,<<,%a2@\+,%a3,%acc2 + 4d8c: a41a 3246 macw %d6u,%d3l,<<,%a2@\+,%d2,%acc1 + 4d90: a49a 3256 macw %d6u,%d3l,<<,%a2@\+,%d2,%acc2 + 4d94: ae5a 3246 macw %d6u,%d3l,<<,%a2@\+,%sp,%acc1 + 4d98: aeda 3256 macw %d6u,%d3l,<<,%a2@\+,%sp,%acc2 + 4d9c: a21a 3266 macw %d6u,%d3l,<<,%a2@\+&,%d1,%acc1 + 4da0: a29a 3276 macw %d6u,%d3l,<<,%a2@\+&,%d1,%acc2 + 4da4: a65a 3266 macw %d6u,%d3l,<<,%a2@\+&,%a3,%acc1 + 4da8: a6da 3276 macw %d6u,%d3l,<<,%a2@\+&,%a3,%acc2 + 4dac: a41a 3266 macw %d6u,%d3l,<<,%a2@\+&,%d2,%acc1 + 4db0: a49a 3276 macw %d6u,%d3l,<<,%a2@\+&,%d2,%acc2 + 4db4: ae5a 3266 macw %d6u,%d3l,<<,%a2@\+&,%sp,%acc1 + 4db8: aeda 3276 macw %d6u,%d3l,<<,%a2@\+&,%sp,%acc2 + 4dbc: a22e 3246 000a macw %d6u,%d3l,<<,%fp@\(10\),%d1,%acc1 + 4dc2: a2ae 3256 000a macw %d6u,%d3l,<<,%fp@\(10\),%d1,%acc2 + 4dc8: a66e 3246 000a macw %d6u,%d3l,<<,%fp@\(10\),%a3,%acc1 + 4dce: a6ee 3256 000a macw %d6u,%d3l,<<,%fp@\(10\),%a3,%acc2 + 4dd4: a42e 3246 000a macw %d6u,%d3l,<<,%fp@\(10\),%d2,%acc1 + 4dda: a4ae 3256 000a macw %d6u,%d3l,<<,%fp@\(10\),%d2,%acc2 + 4de0: ae6e 3246 000a macw %d6u,%d3l,<<,%fp@\(10\),%sp,%acc1 + 4de6: aeee 3256 000a macw %d6u,%d3l,<<,%fp@\(10\),%sp,%acc2 + 4dec: a22e 3266 000a macw %d6u,%d3l,<<,%fp@\(10\)&,%d1,%acc1 + 4df2: a2ae 3276 000a macw %d6u,%d3l,<<,%fp@\(10\)&,%d1,%acc2 + 4df8: a66e 3266 000a macw %d6u,%d3l,<<,%fp@\(10\)&,%a3,%acc1 + 4dfe: a6ee 3276 000a macw %d6u,%d3l,<<,%fp@\(10\)&,%a3,%acc2 + 4e04: a42e 3266 000a macw %d6u,%d3l,<<,%fp@\(10\)&,%d2,%acc1 + 4e0a: a4ae 3276 000a macw %d6u,%d3l,<<,%fp@\(10\)&,%d2,%acc2 + 4e10: ae6e 3266 000a macw %d6u,%d3l,<<,%fp@\(10\)&,%sp,%acc1 + 4e16: aeee 3276 000a macw %d6u,%d3l,<<,%fp@\(10\)&,%sp,%acc2 + 4e1c: a221 3246 macw %d6u,%d3l,<<,%a1@-,%d1,%acc1 + 4e20: a2a1 3256 macw %d6u,%d3l,<<,%a1@-,%d1,%acc2 + 4e24: a661 3246 macw %d6u,%d3l,<<,%a1@-,%a3,%acc1 + 4e28: a6e1 3256 macw %d6u,%d3l,<<,%a1@-,%a3,%acc2 + 4e2c: a421 3246 macw %d6u,%d3l,<<,%a1@-,%d2,%acc1 + 4e30: a4a1 3256 macw %d6u,%d3l,<<,%a1@-,%d2,%acc2 + 4e34: ae61 3246 macw %d6u,%d3l,<<,%a1@-,%sp,%acc1 + 4e38: aee1 3256 macw %d6u,%d3l,<<,%a1@-,%sp,%acc2 + 4e3c: a221 3266 macw %d6u,%d3l,<<,%a1@-&,%d1,%acc1 + 4e40: a2a1 3276 macw %d6u,%d3l,<<,%a1@-&,%d1,%acc2 + 4e44: a661 3266 macw %d6u,%d3l,<<,%a1@-&,%a3,%acc1 + 4e48: a6e1 3276 macw %d6u,%d3l,<<,%a1@-&,%a3,%acc2 + 4e4c: a421 3266 macw %d6u,%d3l,<<,%a1@-&,%d2,%acc1 + 4e50: a4a1 3276 macw %d6u,%d3l,<<,%a1@-&,%d2,%acc2 + 4e54: ae61 3266 macw %d6u,%d3l,<<,%a1@-&,%sp,%acc1 + 4e58: aee1 3276 macw %d6u,%d3l,<<,%a1@-&,%sp,%acc2 + 4e5c: a213 3646 macw %d6u,%d3l,>>,%a3@,%d1,%acc1 + 4e60: a293 3656 macw %d6u,%d3l,>>,%a3@,%d1,%acc2 + 4e64: a653 3646 macw %d6u,%d3l,>>,%a3@,%a3,%acc1 + 4e68: a6d3 3656 macw %d6u,%d3l,>>,%a3@,%a3,%acc2 + 4e6c: a413 3646 macw %d6u,%d3l,>>,%a3@,%d2,%acc1 + 4e70: a493 3656 macw %d6u,%d3l,>>,%a3@,%d2,%acc2 + 4e74: ae53 3646 macw %d6u,%d3l,>>,%a3@,%sp,%acc1 + 4e78: aed3 3656 macw %d6u,%d3l,>>,%a3@,%sp,%acc2 + 4e7c: a213 3666 macw %d6u,%d3l,>>,%a3@&,%d1,%acc1 + 4e80: a293 3676 macw %d6u,%d3l,>>,%a3@&,%d1,%acc2 + 4e84: a653 3666 macw %d6u,%d3l,>>,%a3@&,%a3,%acc1 + 4e88: a6d3 3676 macw %d6u,%d3l,>>,%a3@&,%a3,%acc2 + 4e8c: a413 3666 macw %d6u,%d3l,>>,%a3@&,%d2,%acc1 + 4e90: a493 3676 macw %d6u,%d3l,>>,%a3@&,%d2,%acc2 + 4e94: ae53 3666 macw %d6u,%d3l,>>,%a3@&,%sp,%acc1 + 4e98: aed3 3676 macw %d6u,%d3l,>>,%a3@&,%sp,%acc2 + 4e9c: a21a 3646 macw %d6u,%d3l,>>,%a2@\+,%d1,%acc1 + 4ea0: a29a 3656 macw %d6u,%d3l,>>,%a2@\+,%d1,%acc2 + 4ea4: a65a 3646 macw %d6u,%d3l,>>,%a2@\+,%a3,%acc1 + 4ea8: a6da 3656 macw %d6u,%d3l,>>,%a2@\+,%a3,%acc2 + 4eac: a41a 3646 macw %d6u,%d3l,>>,%a2@\+,%d2,%acc1 + 4eb0: a49a 3656 macw %d6u,%d3l,>>,%a2@\+,%d2,%acc2 + 4eb4: ae5a 3646 macw %d6u,%d3l,>>,%a2@\+,%sp,%acc1 + 4eb8: aeda 3656 macw %d6u,%d3l,>>,%a2@\+,%sp,%acc2 + 4ebc: a21a 3666 macw %d6u,%d3l,>>,%a2@\+&,%d1,%acc1 + 4ec0: a29a 3676 macw %d6u,%d3l,>>,%a2@\+&,%d1,%acc2 + 4ec4: a65a 3666 macw %d6u,%d3l,>>,%a2@\+&,%a3,%acc1 + 4ec8: a6da 3676 macw %d6u,%d3l,>>,%a2@\+&,%a3,%acc2 + 4ecc: a41a 3666 macw %d6u,%d3l,>>,%a2@\+&,%d2,%acc1 + 4ed0: a49a 3676 macw %d6u,%d3l,>>,%a2@\+&,%d2,%acc2 + 4ed4: ae5a 3666 macw %d6u,%d3l,>>,%a2@\+&,%sp,%acc1 + 4ed8: aeda 3676 macw %d6u,%d3l,>>,%a2@\+&,%sp,%acc2 + 4edc: a22e 3646 000a macw %d6u,%d3l,>>,%fp@\(10\),%d1,%acc1 + 4ee2: a2ae 3656 000a macw %d6u,%d3l,>>,%fp@\(10\),%d1,%acc2 + 4ee8: a66e 3646 000a macw %d6u,%d3l,>>,%fp@\(10\),%a3,%acc1 + 4eee: a6ee 3656 000a macw %d6u,%d3l,>>,%fp@\(10\),%a3,%acc2 + 4ef4: a42e 3646 000a macw %d6u,%d3l,>>,%fp@\(10\),%d2,%acc1 + 4efa: a4ae 3656 000a macw %d6u,%d3l,>>,%fp@\(10\),%d2,%acc2 + 4f00: ae6e 3646 000a macw %d6u,%d3l,>>,%fp@\(10\),%sp,%acc1 + 4f06: aeee 3656 000a macw %d6u,%d3l,>>,%fp@\(10\),%sp,%acc2 + 4f0c: a22e 3666 000a macw %d6u,%d3l,>>,%fp@\(10\)&,%d1,%acc1 + 4f12: a2ae 3676 000a macw %d6u,%d3l,>>,%fp@\(10\)&,%d1,%acc2 + 4f18: a66e 3666 000a macw %d6u,%d3l,>>,%fp@\(10\)&,%a3,%acc1 + 4f1e: a6ee 3676 000a macw %d6u,%d3l,>>,%fp@\(10\)&,%a3,%acc2 + 4f24: a42e 3666 000a macw %d6u,%d3l,>>,%fp@\(10\)&,%d2,%acc1 + 4f2a: a4ae 3676 000a macw %d6u,%d3l,>>,%fp@\(10\)&,%d2,%acc2 + 4f30: ae6e 3666 000a macw %d6u,%d3l,>>,%fp@\(10\)&,%sp,%acc1 + 4f36: aeee 3676 000a macw %d6u,%d3l,>>,%fp@\(10\)&,%sp,%acc2 + 4f3c: a221 3646 macw %d6u,%d3l,>>,%a1@-,%d1,%acc1 + 4f40: a2a1 3656 macw %d6u,%d3l,>>,%a1@-,%d1,%acc2 + 4f44: a661 3646 macw %d6u,%d3l,>>,%a1@-,%a3,%acc1 + 4f48: a6e1 3656 macw %d6u,%d3l,>>,%a1@-,%a3,%acc2 + 4f4c: a421 3646 macw %d6u,%d3l,>>,%a1@-,%d2,%acc1 + 4f50: a4a1 3656 macw %d6u,%d3l,>>,%a1@-,%d2,%acc2 + 4f54: ae61 3646 macw %d6u,%d3l,>>,%a1@-,%sp,%acc1 + 4f58: aee1 3656 macw %d6u,%d3l,>>,%a1@-,%sp,%acc2 + 4f5c: a221 3666 macw %d6u,%d3l,>>,%a1@-&,%d1,%acc1 + 4f60: a2a1 3676 macw %d6u,%d3l,>>,%a1@-&,%d1,%acc2 + 4f64: a661 3666 macw %d6u,%d3l,>>,%a1@-&,%a3,%acc1 + 4f68: a6e1 3676 macw %d6u,%d3l,>>,%a1@-&,%a3,%acc2 + 4f6c: a421 3666 macw %d6u,%d3l,>>,%a1@-&,%d2,%acc1 + 4f70: a4a1 3676 macw %d6u,%d3l,>>,%a1@-&,%d2,%acc2 + 4f74: ae61 3666 macw %d6u,%d3l,>>,%a1@-&,%sp,%acc1 + 4f78: aee1 3676 macw %d6u,%d3l,>>,%a1@-&,%sp,%acc2 + 4f7c: a213 3246 macw %d6u,%d3l,<<,%a3@,%d1,%acc1 + 4f80: a293 3256 macw %d6u,%d3l,<<,%a3@,%d1,%acc2 + 4f84: a653 3246 macw %d6u,%d3l,<<,%a3@,%a3,%acc1 + 4f88: a6d3 3256 macw %d6u,%d3l,<<,%a3@,%a3,%acc2 + 4f8c: a413 3246 macw %d6u,%d3l,<<,%a3@,%d2,%acc1 + 4f90: a493 3256 macw %d6u,%d3l,<<,%a3@,%d2,%acc2 + 4f94: ae53 3246 macw %d6u,%d3l,<<,%a3@,%sp,%acc1 + 4f98: aed3 3256 macw %d6u,%d3l,<<,%a3@,%sp,%acc2 + 4f9c: a213 3266 macw %d6u,%d3l,<<,%a3@&,%d1,%acc1 + 4fa0: a293 3276 macw %d6u,%d3l,<<,%a3@&,%d1,%acc2 + 4fa4: a653 3266 macw %d6u,%d3l,<<,%a3@&,%a3,%acc1 + 4fa8: a6d3 3276 macw %d6u,%d3l,<<,%a3@&,%a3,%acc2 + 4fac: a413 3266 macw %d6u,%d3l,<<,%a3@&,%d2,%acc1 + 4fb0: a493 3276 macw %d6u,%d3l,<<,%a3@&,%d2,%acc2 + 4fb4: ae53 3266 macw %d6u,%d3l,<<,%a3@&,%sp,%acc1 + 4fb8: aed3 3276 macw %d6u,%d3l,<<,%a3@&,%sp,%acc2 + 4fbc: a21a 3246 macw %d6u,%d3l,<<,%a2@\+,%d1,%acc1 + 4fc0: a29a 3256 macw %d6u,%d3l,<<,%a2@\+,%d1,%acc2 + 4fc4: a65a 3246 macw %d6u,%d3l,<<,%a2@\+,%a3,%acc1 + 4fc8: a6da 3256 macw %d6u,%d3l,<<,%a2@\+,%a3,%acc2 + 4fcc: a41a 3246 macw %d6u,%d3l,<<,%a2@\+,%d2,%acc1 + 4fd0: a49a 3256 macw %d6u,%d3l,<<,%a2@\+,%d2,%acc2 + 4fd4: ae5a 3246 macw %d6u,%d3l,<<,%a2@\+,%sp,%acc1 + 4fd8: aeda 3256 macw %d6u,%d3l,<<,%a2@\+,%sp,%acc2 + 4fdc: a21a 3266 macw %d6u,%d3l,<<,%a2@\+&,%d1,%acc1 + 4fe0: a29a 3276 macw %d6u,%d3l,<<,%a2@\+&,%d1,%acc2 + 4fe4: a65a 3266 macw %d6u,%d3l,<<,%a2@\+&,%a3,%acc1 + 4fe8: a6da 3276 macw %d6u,%d3l,<<,%a2@\+&,%a3,%acc2 + 4fec: a41a 3266 macw %d6u,%d3l,<<,%a2@\+&,%d2,%acc1 + 4ff0: a49a 3276 macw %d6u,%d3l,<<,%a2@\+&,%d2,%acc2 + 4ff4: ae5a 3266 macw %d6u,%d3l,<<,%a2@\+&,%sp,%acc1 + 4ff8: aeda 3276 macw %d6u,%d3l,<<,%a2@\+&,%sp,%acc2 + 4ffc: a22e 3246 000a macw %d6u,%d3l,<<,%fp@\(10\),%d1,%acc1 + 5002: a2ae 3256 000a macw %d6u,%d3l,<<,%fp@\(10\),%d1,%acc2 + 5008: a66e 3246 000a macw %d6u,%d3l,<<,%fp@\(10\),%a3,%acc1 + 500e: a6ee 3256 000a macw %d6u,%d3l,<<,%fp@\(10\),%a3,%acc2 + 5014: a42e 3246 000a macw %d6u,%d3l,<<,%fp@\(10\),%d2,%acc1 + 501a: a4ae 3256 000a macw %d6u,%d3l,<<,%fp@\(10\),%d2,%acc2 + 5020: ae6e 3246 000a macw %d6u,%d3l,<<,%fp@\(10\),%sp,%acc1 + 5026: aeee 3256 000a macw %d6u,%d3l,<<,%fp@\(10\),%sp,%acc2 + 502c: a22e 3266 000a macw %d6u,%d3l,<<,%fp@\(10\)&,%d1,%acc1 + 5032: a2ae 3276 000a macw %d6u,%d3l,<<,%fp@\(10\)&,%d1,%acc2 + 5038: a66e 3266 000a macw %d6u,%d3l,<<,%fp@\(10\)&,%a3,%acc1 + 503e: a6ee 3276 000a macw %d6u,%d3l,<<,%fp@\(10\)&,%a3,%acc2 + 5044: a42e 3266 000a macw %d6u,%d3l,<<,%fp@\(10\)&,%d2,%acc1 + 504a: a4ae 3276 000a macw %d6u,%d3l,<<,%fp@\(10\)&,%d2,%acc2 + 5050: ae6e 3266 000a macw %d6u,%d3l,<<,%fp@\(10\)&,%sp,%acc1 + 5056: aeee 3276 000a macw %d6u,%d3l,<<,%fp@\(10\)&,%sp,%acc2 + 505c: a221 3246 macw %d6u,%d3l,<<,%a1@-,%d1,%acc1 + 5060: a2a1 3256 macw %d6u,%d3l,<<,%a1@-,%d1,%acc2 + 5064: a661 3246 macw %d6u,%d3l,<<,%a1@-,%a3,%acc1 + 5068: a6e1 3256 macw %d6u,%d3l,<<,%a1@-,%a3,%acc2 + 506c: a421 3246 macw %d6u,%d3l,<<,%a1@-,%d2,%acc1 + 5070: a4a1 3256 macw %d6u,%d3l,<<,%a1@-,%d2,%acc2 + 5074: ae61 3246 macw %d6u,%d3l,<<,%a1@-,%sp,%acc1 + 5078: aee1 3256 macw %d6u,%d3l,<<,%a1@-,%sp,%acc2 + 507c: a221 3266 macw %d6u,%d3l,<<,%a1@-&,%d1,%acc1 + 5080: a2a1 3276 macw %d6u,%d3l,<<,%a1@-&,%d1,%acc2 + 5084: a661 3266 macw %d6u,%d3l,<<,%a1@-&,%a3,%acc1 + 5088: a6e1 3276 macw %d6u,%d3l,<<,%a1@-&,%a3,%acc2 + 508c: a421 3266 macw %d6u,%d3l,<<,%a1@-&,%d2,%acc1 + 5090: a4a1 3276 macw %d6u,%d3l,<<,%a1@-&,%d2,%acc2 + 5094: ae61 3266 macw %d6u,%d3l,<<,%a1@-&,%sp,%acc1 + 5098: aee1 3276 macw %d6u,%d3l,<<,%a1@-&,%sp,%acc2 + 509c: a213 3646 macw %d6u,%d3l,>>,%a3@,%d1,%acc1 + 50a0: a293 3656 macw %d6u,%d3l,>>,%a3@,%d1,%acc2 + 50a4: a653 3646 macw %d6u,%d3l,>>,%a3@,%a3,%acc1 + 50a8: a6d3 3656 macw %d6u,%d3l,>>,%a3@,%a3,%acc2 + 50ac: a413 3646 macw %d6u,%d3l,>>,%a3@,%d2,%acc1 + 50b0: a493 3656 macw %d6u,%d3l,>>,%a3@,%d2,%acc2 + 50b4: ae53 3646 macw %d6u,%d3l,>>,%a3@,%sp,%acc1 + 50b8: aed3 3656 macw %d6u,%d3l,>>,%a3@,%sp,%acc2 + 50bc: a213 3666 macw %d6u,%d3l,>>,%a3@&,%d1,%acc1 + 50c0: a293 3676 macw %d6u,%d3l,>>,%a3@&,%d1,%acc2 + 50c4: a653 3666 macw %d6u,%d3l,>>,%a3@&,%a3,%acc1 + 50c8: a6d3 3676 macw %d6u,%d3l,>>,%a3@&,%a3,%acc2 + 50cc: a413 3666 macw %d6u,%d3l,>>,%a3@&,%d2,%acc1 + 50d0: a493 3676 macw %d6u,%d3l,>>,%a3@&,%d2,%acc2 + 50d4: ae53 3666 macw %d6u,%d3l,>>,%a3@&,%sp,%acc1 + 50d8: aed3 3676 macw %d6u,%d3l,>>,%a3@&,%sp,%acc2 + 50dc: a21a 3646 macw %d6u,%d3l,>>,%a2@\+,%d1,%acc1 + 50e0: a29a 3656 macw %d6u,%d3l,>>,%a2@\+,%d1,%acc2 + 50e4: a65a 3646 macw %d6u,%d3l,>>,%a2@\+,%a3,%acc1 + 50e8: a6da 3656 macw %d6u,%d3l,>>,%a2@\+,%a3,%acc2 + 50ec: a41a 3646 macw %d6u,%d3l,>>,%a2@\+,%d2,%acc1 + 50f0: a49a 3656 macw %d6u,%d3l,>>,%a2@\+,%d2,%acc2 + 50f4: ae5a 3646 macw %d6u,%d3l,>>,%a2@\+,%sp,%acc1 + 50f8: aeda 3656 macw %d6u,%d3l,>>,%a2@\+,%sp,%acc2 + 50fc: a21a 3666 macw %d6u,%d3l,>>,%a2@\+&,%d1,%acc1 + 5100: a29a 3676 macw %d6u,%d3l,>>,%a2@\+&,%d1,%acc2 + 5104: a65a 3666 macw %d6u,%d3l,>>,%a2@\+&,%a3,%acc1 + 5108: a6da 3676 macw %d6u,%d3l,>>,%a2@\+&,%a3,%acc2 + 510c: a41a 3666 macw %d6u,%d3l,>>,%a2@\+&,%d2,%acc1 + 5110: a49a 3676 macw %d6u,%d3l,>>,%a2@\+&,%d2,%acc2 + 5114: ae5a 3666 macw %d6u,%d3l,>>,%a2@\+&,%sp,%acc1 + 5118: aeda 3676 macw %d6u,%d3l,>>,%a2@\+&,%sp,%acc2 + 511c: a22e 3646 000a macw %d6u,%d3l,>>,%fp@\(10\),%d1,%acc1 + 5122: a2ae 3656 000a macw %d6u,%d3l,>>,%fp@\(10\),%d1,%acc2 + 5128: a66e 3646 000a macw %d6u,%d3l,>>,%fp@\(10\),%a3,%acc1 + 512e: a6ee 3656 000a macw %d6u,%d3l,>>,%fp@\(10\),%a3,%acc2 + 5134: a42e 3646 000a macw %d6u,%d3l,>>,%fp@\(10\),%d2,%acc1 + 513a: a4ae 3656 000a macw %d6u,%d3l,>>,%fp@\(10\),%d2,%acc2 + 5140: ae6e 3646 000a macw %d6u,%d3l,>>,%fp@\(10\),%sp,%acc1 + 5146: aeee 3656 000a macw %d6u,%d3l,>>,%fp@\(10\),%sp,%acc2 + 514c: a22e 3666 000a macw %d6u,%d3l,>>,%fp@\(10\)&,%d1,%acc1 + 5152: a2ae 3676 000a macw %d6u,%d3l,>>,%fp@\(10\)&,%d1,%acc2 + 5158: a66e 3666 000a macw %d6u,%d3l,>>,%fp@\(10\)&,%a3,%acc1 + 515e: a6ee 3676 000a macw %d6u,%d3l,>>,%fp@\(10\)&,%a3,%acc2 + 5164: a42e 3666 000a macw %d6u,%d3l,>>,%fp@\(10\)&,%d2,%acc1 + 516a: a4ae 3676 000a macw %d6u,%d3l,>>,%fp@\(10\)&,%d2,%acc2 + 5170: ae6e 3666 000a macw %d6u,%d3l,>>,%fp@\(10\)&,%sp,%acc1 + 5176: aeee 3676 000a macw %d6u,%d3l,>>,%fp@\(10\)&,%sp,%acc2 + 517c: a221 3646 macw %d6u,%d3l,>>,%a1@-,%d1,%acc1 + 5180: a2a1 3656 macw %d6u,%d3l,>>,%a1@-,%d1,%acc2 + 5184: a661 3646 macw %d6u,%d3l,>>,%a1@-,%a3,%acc1 + 5188: a6e1 3656 macw %d6u,%d3l,>>,%a1@-,%a3,%acc2 + 518c: a421 3646 macw %d6u,%d3l,>>,%a1@-,%d2,%acc1 + 5190: a4a1 3656 macw %d6u,%d3l,>>,%a1@-,%d2,%acc2 + 5194: ae61 3646 macw %d6u,%d3l,>>,%a1@-,%sp,%acc1 + 5198: aee1 3656 macw %d6u,%d3l,>>,%a1@-,%sp,%acc2 + 519c: a221 3666 macw %d6u,%d3l,>>,%a1@-&,%d1,%acc1 + 51a0: a2a1 3676 macw %d6u,%d3l,>>,%a1@-&,%d1,%acc2 + 51a4: a661 3666 macw %d6u,%d3l,>>,%a1@-&,%a3,%acc1 + 51a8: a6e1 3676 macw %d6u,%d3l,>>,%a1@-&,%a3,%acc2 + 51ac: a421 3666 macw %d6u,%d3l,>>,%a1@-&,%d2,%acc1 + 51b0: a4a1 3676 macw %d6u,%d3l,>>,%a1@-&,%d2,%acc2 + 51b4: ae61 3666 macw %d6u,%d3l,>>,%a1@-&,%sp,%acc1 + 51b8: aee1 3676 macw %d6u,%d3l,>>,%a1@-&,%sp,%acc2 + 51bc: a213 f0c6 macw %d6u,%a7u,%a3@,%d1,%acc1 + 51c0: a293 f0d6 macw %d6u,%a7u,%a3@,%d1,%acc2 + 51c4: a653 f0c6 macw %d6u,%a7u,%a3@,%a3,%acc1 + 51c8: a6d3 f0d6 macw %d6u,%a7u,%a3@,%a3,%acc2 + 51cc: a413 f0c6 macw %d6u,%a7u,%a3@,%d2,%acc1 + 51d0: a493 f0d6 macw %d6u,%a7u,%a3@,%d2,%acc2 + 51d4: ae53 f0c6 macw %d6u,%a7u,%a3@,%sp,%acc1 + 51d8: aed3 f0d6 macw %d6u,%a7u,%a3@,%sp,%acc2 + 51dc: a213 f0e6 macw %d6u,%a7u,%a3@&,%d1,%acc1 + 51e0: a293 f0f6 macw %d6u,%a7u,%a3@&,%d1,%acc2 + 51e4: a653 f0e6 macw %d6u,%a7u,%a3@&,%a3,%acc1 + 51e8: a6d3 f0f6 macw %d6u,%a7u,%a3@&,%a3,%acc2 + 51ec: a413 f0e6 macw %d6u,%a7u,%a3@&,%d2,%acc1 + 51f0: a493 f0f6 macw %d6u,%a7u,%a3@&,%d2,%acc2 + 51f4: ae53 f0e6 macw %d6u,%a7u,%a3@&,%sp,%acc1 + 51f8: aed3 f0f6 macw %d6u,%a7u,%a3@&,%sp,%acc2 + 51fc: a21a f0c6 macw %d6u,%a7u,%a2@\+,%d1,%acc1 + 5200: a29a f0d6 macw %d6u,%a7u,%a2@\+,%d1,%acc2 + 5204: a65a f0c6 macw %d6u,%a7u,%a2@\+,%a3,%acc1 + 5208: a6da f0d6 macw %d6u,%a7u,%a2@\+,%a3,%acc2 + 520c: a41a f0c6 macw %d6u,%a7u,%a2@\+,%d2,%acc1 + 5210: a49a f0d6 macw %d6u,%a7u,%a2@\+,%d2,%acc2 + 5214: ae5a f0c6 macw %d6u,%a7u,%a2@\+,%sp,%acc1 + 5218: aeda f0d6 macw %d6u,%a7u,%a2@\+,%sp,%acc2 + 521c: a21a f0e6 macw %d6u,%a7u,%a2@\+&,%d1,%acc1 + 5220: a29a f0f6 macw %d6u,%a7u,%a2@\+&,%d1,%acc2 + 5224: a65a f0e6 macw %d6u,%a7u,%a2@\+&,%a3,%acc1 + 5228: a6da f0f6 macw %d6u,%a7u,%a2@\+&,%a3,%acc2 + 522c: a41a f0e6 macw %d6u,%a7u,%a2@\+&,%d2,%acc1 + 5230: a49a f0f6 macw %d6u,%a7u,%a2@\+&,%d2,%acc2 + 5234: ae5a f0e6 macw %d6u,%a7u,%a2@\+&,%sp,%acc1 + 5238: aeda f0f6 macw %d6u,%a7u,%a2@\+&,%sp,%acc2 + 523c: a22e f0c6 000a macw %d6u,%a7u,%fp@\(10\),%d1,%acc1 + 5242: a2ae f0d6 000a macw %d6u,%a7u,%fp@\(10\),%d1,%acc2 + 5248: a66e f0c6 000a macw %d6u,%a7u,%fp@\(10\),%a3,%acc1 + 524e: a6ee f0d6 000a macw %d6u,%a7u,%fp@\(10\),%a3,%acc2 + 5254: a42e f0c6 000a macw %d6u,%a7u,%fp@\(10\),%d2,%acc1 + 525a: a4ae f0d6 000a macw %d6u,%a7u,%fp@\(10\),%d2,%acc2 + 5260: ae6e f0c6 000a macw %d6u,%a7u,%fp@\(10\),%sp,%acc1 + 5266: aeee f0d6 000a macw %d6u,%a7u,%fp@\(10\),%sp,%acc2 + 526c: a22e f0e6 000a macw %d6u,%a7u,%fp@\(10\)&,%d1,%acc1 + 5272: a2ae f0f6 000a macw %d6u,%a7u,%fp@\(10\)&,%d1,%acc2 + 5278: a66e f0e6 000a macw %d6u,%a7u,%fp@\(10\)&,%a3,%acc1 + 527e: a6ee f0f6 000a macw %d6u,%a7u,%fp@\(10\)&,%a3,%acc2 + 5284: a42e f0e6 000a macw %d6u,%a7u,%fp@\(10\)&,%d2,%acc1 + 528a: a4ae f0f6 000a macw %d6u,%a7u,%fp@\(10\)&,%d2,%acc2 + 5290: ae6e f0e6 000a macw %d6u,%a7u,%fp@\(10\)&,%sp,%acc1 + 5296: aeee f0f6 000a macw %d6u,%a7u,%fp@\(10\)&,%sp,%acc2 + 529c: a221 f0c6 macw %d6u,%a7u,%a1@-,%d1,%acc1 + 52a0: a2a1 f0d6 macw %d6u,%a7u,%a1@-,%d1,%acc2 + 52a4: a661 f0c6 macw %d6u,%a7u,%a1@-,%a3,%acc1 + 52a8: a6e1 f0d6 macw %d6u,%a7u,%a1@-,%a3,%acc2 + 52ac: a421 f0c6 macw %d6u,%a7u,%a1@-,%d2,%acc1 + 52b0: a4a1 f0d6 macw %d6u,%a7u,%a1@-,%d2,%acc2 + 52b4: ae61 f0c6 macw %d6u,%a7u,%a1@-,%sp,%acc1 + 52b8: aee1 f0d6 macw %d6u,%a7u,%a1@-,%sp,%acc2 + 52bc: a221 f0e6 macw %d6u,%a7u,%a1@-&,%d1,%acc1 + 52c0: a2a1 f0f6 macw %d6u,%a7u,%a1@-&,%d1,%acc2 + 52c4: a661 f0e6 macw %d6u,%a7u,%a1@-&,%a3,%acc1 + 52c8: a6e1 f0f6 macw %d6u,%a7u,%a1@-&,%a3,%acc2 + 52cc: a421 f0e6 macw %d6u,%a7u,%a1@-&,%d2,%acc1 + 52d0: a4a1 f0f6 macw %d6u,%a7u,%a1@-&,%d2,%acc2 + 52d4: ae61 f0e6 macw %d6u,%a7u,%a1@-&,%sp,%acc1 + 52d8: aee1 f0f6 macw %d6u,%a7u,%a1@-&,%sp,%acc2 + 52dc: a213 f2c6 macw %d6u,%a7u,<<,%a3@,%d1,%acc1 + 52e0: a293 f2d6 macw %d6u,%a7u,<<,%a3@,%d1,%acc2 + 52e4: a653 f2c6 macw %d6u,%a7u,<<,%a3@,%a3,%acc1 + 52e8: a6d3 f2d6 macw %d6u,%a7u,<<,%a3@,%a3,%acc2 + 52ec: a413 f2c6 macw %d6u,%a7u,<<,%a3@,%d2,%acc1 + 52f0: a493 f2d6 macw %d6u,%a7u,<<,%a3@,%d2,%acc2 + 52f4: ae53 f2c6 macw %d6u,%a7u,<<,%a3@,%sp,%acc1 + 52f8: aed3 f2d6 macw %d6u,%a7u,<<,%a3@,%sp,%acc2 + 52fc: a213 f2e6 macw %d6u,%a7u,<<,%a3@&,%d1,%acc1 + 5300: a293 f2f6 macw %d6u,%a7u,<<,%a3@&,%d1,%acc2 + 5304: a653 f2e6 macw %d6u,%a7u,<<,%a3@&,%a3,%acc1 + 5308: a6d3 f2f6 macw %d6u,%a7u,<<,%a3@&,%a3,%acc2 + 530c: a413 f2e6 macw %d6u,%a7u,<<,%a3@&,%d2,%acc1 + 5310: a493 f2f6 macw %d6u,%a7u,<<,%a3@&,%d2,%acc2 + 5314: ae53 f2e6 macw %d6u,%a7u,<<,%a3@&,%sp,%acc1 + 5318: aed3 f2f6 macw %d6u,%a7u,<<,%a3@&,%sp,%acc2 + 531c: a21a f2c6 macw %d6u,%a7u,<<,%a2@\+,%d1,%acc1 + 5320: a29a f2d6 macw %d6u,%a7u,<<,%a2@\+,%d1,%acc2 + 5324: a65a f2c6 macw %d6u,%a7u,<<,%a2@\+,%a3,%acc1 + 5328: a6da f2d6 macw %d6u,%a7u,<<,%a2@\+,%a3,%acc2 + 532c: a41a f2c6 macw %d6u,%a7u,<<,%a2@\+,%d2,%acc1 + 5330: a49a f2d6 macw %d6u,%a7u,<<,%a2@\+,%d2,%acc2 + 5334: ae5a f2c6 macw %d6u,%a7u,<<,%a2@\+,%sp,%acc1 + 5338: aeda f2d6 macw %d6u,%a7u,<<,%a2@\+,%sp,%acc2 + 533c: a21a f2e6 macw %d6u,%a7u,<<,%a2@\+&,%d1,%acc1 + 5340: a29a f2f6 macw %d6u,%a7u,<<,%a2@\+&,%d1,%acc2 + 5344: a65a f2e6 macw %d6u,%a7u,<<,%a2@\+&,%a3,%acc1 + 5348: a6da f2f6 macw %d6u,%a7u,<<,%a2@\+&,%a3,%acc2 + 534c: a41a f2e6 macw %d6u,%a7u,<<,%a2@\+&,%d2,%acc1 + 5350: a49a f2f6 macw %d6u,%a7u,<<,%a2@\+&,%d2,%acc2 + 5354: ae5a f2e6 macw %d6u,%a7u,<<,%a2@\+&,%sp,%acc1 + 5358: aeda f2f6 macw %d6u,%a7u,<<,%a2@\+&,%sp,%acc2 + 535c: a22e f2c6 000a macw %d6u,%a7u,<<,%fp@\(10\),%d1,%acc1 + 5362: a2ae f2d6 000a macw %d6u,%a7u,<<,%fp@\(10\),%d1,%acc2 + 5368: a66e f2c6 000a macw %d6u,%a7u,<<,%fp@\(10\),%a3,%acc1 + 536e: a6ee f2d6 000a macw %d6u,%a7u,<<,%fp@\(10\),%a3,%acc2 + 5374: a42e f2c6 000a macw %d6u,%a7u,<<,%fp@\(10\),%d2,%acc1 + 537a: a4ae f2d6 000a macw %d6u,%a7u,<<,%fp@\(10\),%d2,%acc2 + 5380: ae6e f2c6 000a macw %d6u,%a7u,<<,%fp@\(10\),%sp,%acc1 + 5386: aeee f2d6 000a macw %d6u,%a7u,<<,%fp@\(10\),%sp,%acc2 + 538c: a22e f2e6 000a macw %d6u,%a7u,<<,%fp@\(10\)&,%d1,%acc1 + 5392: a2ae f2f6 000a macw %d6u,%a7u,<<,%fp@\(10\)&,%d1,%acc2 + 5398: a66e f2e6 000a macw %d6u,%a7u,<<,%fp@\(10\)&,%a3,%acc1 + 539e: a6ee f2f6 000a macw %d6u,%a7u,<<,%fp@\(10\)&,%a3,%acc2 + 53a4: a42e f2e6 000a macw %d6u,%a7u,<<,%fp@\(10\)&,%d2,%acc1 + 53aa: a4ae f2f6 000a macw %d6u,%a7u,<<,%fp@\(10\)&,%d2,%acc2 + 53b0: ae6e f2e6 000a macw %d6u,%a7u,<<,%fp@\(10\)&,%sp,%acc1 + 53b6: aeee f2f6 000a macw %d6u,%a7u,<<,%fp@\(10\)&,%sp,%acc2 + 53bc: a221 f2c6 macw %d6u,%a7u,<<,%a1@-,%d1,%acc1 + 53c0: a2a1 f2d6 macw %d6u,%a7u,<<,%a1@-,%d1,%acc2 + 53c4: a661 f2c6 macw %d6u,%a7u,<<,%a1@-,%a3,%acc1 + 53c8: a6e1 f2d6 macw %d6u,%a7u,<<,%a1@-,%a3,%acc2 + 53cc: a421 f2c6 macw %d6u,%a7u,<<,%a1@-,%d2,%acc1 + 53d0: a4a1 f2d6 macw %d6u,%a7u,<<,%a1@-,%d2,%acc2 + 53d4: ae61 f2c6 macw %d6u,%a7u,<<,%a1@-,%sp,%acc1 + 53d8: aee1 f2d6 macw %d6u,%a7u,<<,%a1@-,%sp,%acc2 + 53dc: a221 f2e6 macw %d6u,%a7u,<<,%a1@-&,%d1,%acc1 + 53e0: a2a1 f2f6 macw %d6u,%a7u,<<,%a1@-&,%d1,%acc2 + 53e4: a661 f2e6 macw %d6u,%a7u,<<,%a1@-&,%a3,%acc1 + 53e8: a6e1 f2f6 macw %d6u,%a7u,<<,%a1@-&,%a3,%acc2 + 53ec: a421 f2e6 macw %d6u,%a7u,<<,%a1@-&,%d2,%acc1 + 53f0: a4a1 f2f6 macw %d6u,%a7u,<<,%a1@-&,%d2,%acc2 + 53f4: ae61 f2e6 macw %d6u,%a7u,<<,%a1@-&,%sp,%acc1 + 53f8: aee1 f2f6 macw %d6u,%a7u,<<,%a1@-&,%sp,%acc2 + 53fc: a213 f6c6 macw %d6u,%a7u,>>,%a3@,%d1,%acc1 + 5400: a293 f6d6 macw %d6u,%a7u,>>,%a3@,%d1,%acc2 + 5404: a653 f6c6 macw %d6u,%a7u,>>,%a3@,%a3,%acc1 + 5408: a6d3 f6d6 macw %d6u,%a7u,>>,%a3@,%a3,%acc2 + 540c: a413 f6c6 macw %d6u,%a7u,>>,%a3@,%d2,%acc1 + 5410: a493 f6d6 macw %d6u,%a7u,>>,%a3@,%d2,%acc2 + 5414: ae53 f6c6 macw %d6u,%a7u,>>,%a3@,%sp,%acc1 + 5418: aed3 f6d6 macw %d6u,%a7u,>>,%a3@,%sp,%acc2 + 541c: a213 f6e6 macw %d6u,%a7u,>>,%a3@&,%d1,%acc1 + 5420: a293 f6f6 macw %d6u,%a7u,>>,%a3@&,%d1,%acc2 + 5424: a653 f6e6 macw %d6u,%a7u,>>,%a3@&,%a3,%acc1 + 5428: a6d3 f6f6 macw %d6u,%a7u,>>,%a3@&,%a3,%acc2 + 542c: a413 f6e6 macw %d6u,%a7u,>>,%a3@&,%d2,%acc1 + 5430: a493 f6f6 macw %d6u,%a7u,>>,%a3@&,%d2,%acc2 + 5434: ae53 f6e6 macw %d6u,%a7u,>>,%a3@&,%sp,%acc1 + 5438: aed3 f6f6 macw %d6u,%a7u,>>,%a3@&,%sp,%acc2 + 543c: a21a f6c6 macw %d6u,%a7u,>>,%a2@\+,%d1,%acc1 + 5440: a29a f6d6 macw %d6u,%a7u,>>,%a2@\+,%d1,%acc2 + 5444: a65a f6c6 macw %d6u,%a7u,>>,%a2@\+,%a3,%acc1 + 5448: a6da f6d6 macw %d6u,%a7u,>>,%a2@\+,%a3,%acc2 + 544c: a41a f6c6 macw %d6u,%a7u,>>,%a2@\+,%d2,%acc1 + 5450: a49a f6d6 macw %d6u,%a7u,>>,%a2@\+,%d2,%acc2 + 5454: ae5a f6c6 macw %d6u,%a7u,>>,%a2@\+,%sp,%acc1 + 5458: aeda f6d6 macw %d6u,%a7u,>>,%a2@\+,%sp,%acc2 + 545c: a21a f6e6 macw %d6u,%a7u,>>,%a2@\+&,%d1,%acc1 + 5460: a29a f6f6 macw %d6u,%a7u,>>,%a2@\+&,%d1,%acc2 + 5464: a65a f6e6 macw %d6u,%a7u,>>,%a2@\+&,%a3,%acc1 + 5468: a6da f6f6 macw %d6u,%a7u,>>,%a2@\+&,%a3,%acc2 + 546c: a41a f6e6 macw %d6u,%a7u,>>,%a2@\+&,%d2,%acc1 + 5470: a49a f6f6 macw %d6u,%a7u,>>,%a2@\+&,%d2,%acc2 + 5474: ae5a f6e6 macw %d6u,%a7u,>>,%a2@\+&,%sp,%acc1 + 5478: aeda f6f6 macw %d6u,%a7u,>>,%a2@\+&,%sp,%acc2 + 547c: a22e f6c6 000a macw %d6u,%a7u,>>,%fp@\(10\),%d1,%acc1 + 5482: a2ae f6d6 000a macw %d6u,%a7u,>>,%fp@\(10\),%d1,%acc2 + 5488: a66e f6c6 000a macw %d6u,%a7u,>>,%fp@\(10\),%a3,%acc1 + 548e: a6ee f6d6 000a macw %d6u,%a7u,>>,%fp@\(10\),%a3,%acc2 + 5494: a42e f6c6 000a macw %d6u,%a7u,>>,%fp@\(10\),%d2,%acc1 + 549a: a4ae f6d6 000a macw %d6u,%a7u,>>,%fp@\(10\),%d2,%acc2 + 54a0: ae6e f6c6 000a macw %d6u,%a7u,>>,%fp@\(10\),%sp,%acc1 + 54a6: aeee f6d6 000a macw %d6u,%a7u,>>,%fp@\(10\),%sp,%acc2 + 54ac: a22e f6e6 000a macw %d6u,%a7u,>>,%fp@\(10\)&,%d1,%acc1 + 54b2: a2ae f6f6 000a macw %d6u,%a7u,>>,%fp@\(10\)&,%d1,%acc2 + 54b8: a66e f6e6 000a macw %d6u,%a7u,>>,%fp@\(10\)&,%a3,%acc1 + 54be: a6ee f6f6 000a macw %d6u,%a7u,>>,%fp@\(10\)&,%a3,%acc2 + 54c4: a42e f6e6 000a macw %d6u,%a7u,>>,%fp@\(10\)&,%d2,%acc1 + 54ca: a4ae f6f6 000a macw %d6u,%a7u,>>,%fp@\(10\)&,%d2,%acc2 + 54d0: ae6e f6e6 000a macw %d6u,%a7u,>>,%fp@\(10\)&,%sp,%acc1 + 54d6: aeee f6f6 000a macw %d6u,%a7u,>>,%fp@\(10\)&,%sp,%acc2 + 54dc: a221 f6c6 macw %d6u,%a7u,>>,%a1@-,%d1,%acc1 + 54e0: a2a1 f6d6 macw %d6u,%a7u,>>,%a1@-,%d1,%acc2 + 54e4: a661 f6c6 macw %d6u,%a7u,>>,%a1@-,%a3,%acc1 + 54e8: a6e1 f6d6 macw %d6u,%a7u,>>,%a1@-,%a3,%acc2 + 54ec: a421 f6c6 macw %d6u,%a7u,>>,%a1@-,%d2,%acc1 + 54f0: a4a1 f6d6 macw %d6u,%a7u,>>,%a1@-,%d2,%acc2 + 54f4: ae61 f6c6 macw %d6u,%a7u,>>,%a1@-,%sp,%acc1 + 54f8: aee1 f6d6 macw %d6u,%a7u,>>,%a1@-,%sp,%acc2 + 54fc: a221 f6e6 macw %d6u,%a7u,>>,%a1@-&,%d1,%acc1 + 5500: a2a1 f6f6 macw %d6u,%a7u,>>,%a1@-&,%d1,%acc2 + 5504: a661 f6e6 macw %d6u,%a7u,>>,%a1@-&,%a3,%acc1 + 5508: a6e1 f6f6 macw %d6u,%a7u,>>,%a1@-&,%a3,%acc2 + 550c: a421 f6e6 macw %d6u,%a7u,>>,%a1@-&,%d2,%acc1 + 5510: a4a1 f6f6 macw %d6u,%a7u,>>,%a1@-&,%d2,%acc2 + 5514: ae61 f6e6 macw %d6u,%a7u,>>,%a1@-&,%sp,%acc1 + 5518: aee1 f6f6 macw %d6u,%a7u,>>,%a1@-&,%sp,%acc2 + 551c: a213 f2c6 macw %d6u,%a7u,<<,%a3@,%d1,%acc1 + 5520: a293 f2d6 macw %d6u,%a7u,<<,%a3@,%d1,%acc2 + 5524: a653 f2c6 macw %d6u,%a7u,<<,%a3@,%a3,%acc1 + 5528: a6d3 f2d6 macw %d6u,%a7u,<<,%a3@,%a3,%acc2 + 552c: a413 f2c6 macw %d6u,%a7u,<<,%a3@,%d2,%acc1 + 5530: a493 f2d6 macw %d6u,%a7u,<<,%a3@,%d2,%acc2 + 5534: ae53 f2c6 macw %d6u,%a7u,<<,%a3@,%sp,%acc1 + 5538: aed3 f2d6 macw %d6u,%a7u,<<,%a3@,%sp,%acc2 + 553c: a213 f2e6 macw %d6u,%a7u,<<,%a3@&,%d1,%acc1 + 5540: a293 f2f6 macw %d6u,%a7u,<<,%a3@&,%d1,%acc2 + 5544: a653 f2e6 macw %d6u,%a7u,<<,%a3@&,%a3,%acc1 + 5548: a6d3 f2f6 macw %d6u,%a7u,<<,%a3@&,%a3,%acc2 + 554c: a413 f2e6 macw %d6u,%a7u,<<,%a3@&,%d2,%acc1 + 5550: a493 f2f6 macw %d6u,%a7u,<<,%a3@&,%d2,%acc2 + 5554: ae53 f2e6 macw %d6u,%a7u,<<,%a3@&,%sp,%acc1 + 5558: aed3 f2f6 macw %d6u,%a7u,<<,%a3@&,%sp,%acc2 + 555c: a21a f2c6 macw %d6u,%a7u,<<,%a2@\+,%d1,%acc1 + 5560: a29a f2d6 macw %d6u,%a7u,<<,%a2@\+,%d1,%acc2 + 5564: a65a f2c6 macw %d6u,%a7u,<<,%a2@\+,%a3,%acc1 + 5568: a6da f2d6 macw %d6u,%a7u,<<,%a2@\+,%a3,%acc2 + 556c: a41a f2c6 macw %d6u,%a7u,<<,%a2@\+,%d2,%acc1 + 5570: a49a f2d6 macw %d6u,%a7u,<<,%a2@\+,%d2,%acc2 + 5574: ae5a f2c6 macw %d6u,%a7u,<<,%a2@\+,%sp,%acc1 + 5578: aeda f2d6 macw %d6u,%a7u,<<,%a2@\+,%sp,%acc2 + 557c: a21a f2e6 macw %d6u,%a7u,<<,%a2@\+&,%d1,%acc1 + 5580: a29a f2f6 macw %d6u,%a7u,<<,%a2@\+&,%d1,%acc2 + 5584: a65a f2e6 macw %d6u,%a7u,<<,%a2@\+&,%a3,%acc1 + 5588: a6da f2f6 macw %d6u,%a7u,<<,%a2@\+&,%a3,%acc2 + 558c: a41a f2e6 macw %d6u,%a7u,<<,%a2@\+&,%d2,%acc1 + 5590: a49a f2f6 macw %d6u,%a7u,<<,%a2@\+&,%d2,%acc2 + 5594: ae5a f2e6 macw %d6u,%a7u,<<,%a2@\+&,%sp,%acc1 + 5598: aeda f2f6 macw %d6u,%a7u,<<,%a2@\+&,%sp,%acc2 + 559c: a22e f2c6 000a macw %d6u,%a7u,<<,%fp@\(10\),%d1,%acc1 + 55a2: a2ae f2d6 000a macw %d6u,%a7u,<<,%fp@\(10\),%d1,%acc2 + 55a8: a66e f2c6 000a macw %d6u,%a7u,<<,%fp@\(10\),%a3,%acc1 + 55ae: a6ee f2d6 000a macw %d6u,%a7u,<<,%fp@\(10\),%a3,%acc2 + 55b4: a42e f2c6 000a macw %d6u,%a7u,<<,%fp@\(10\),%d2,%acc1 + 55ba: a4ae f2d6 000a macw %d6u,%a7u,<<,%fp@\(10\),%d2,%acc2 + 55c0: ae6e f2c6 000a macw %d6u,%a7u,<<,%fp@\(10\),%sp,%acc1 + 55c6: aeee f2d6 000a macw %d6u,%a7u,<<,%fp@\(10\),%sp,%acc2 + 55cc: a22e f2e6 000a macw %d6u,%a7u,<<,%fp@\(10\)&,%d1,%acc1 + 55d2: a2ae f2f6 000a macw %d6u,%a7u,<<,%fp@\(10\)&,%d1,%acc2 + 55d8: a66e f2e6 000a macw %d6u,%a7u,<<,%fp@\(10\)&,%a3,%acc1 + 55de: a6ee f2f6 000a macw %d6u,%a7u,<<,%fp@\(10\)&,%a3,%acc2 + 55e4: a42e f2e6 000a macw %d6u,%a7u,<<,%fp@\(10\)&,%d2,%acc1 + 55ea: a4ae f2f6 000a macw %d6u,%a7u,<<,%fp@\(10\)&,%d2,%acc2 + 55f0: ae6e f2e6 000a macw %d6u,%a7u,<<,%fp@\(10\)&,%sp,%acc1 + 55f6: aeee f2f6 000a macw %d6u,%a7u,<<,%fp@\(10\)&,%sp,%acc2 + 55fc: a221 f2c6 macw %d6u,%a7u,<<,%a1@-,%d1,%acc1 + 5600: a2a1 f2d6 macw %d6u,%a7u,<<,%a1@-,%d1,%acc2 + 5604: a661 f2c6 macw %d6u,%a7u,<<,%a1@-,%a3,%acc1 + 5608: a6e1 f2d6 macw %d6u,%a7u,<<,%a1@-,%a3,%acc2 + 560c: a421 f2c6 macw %d6u,%a7u,<<,%a1@-,%d2,%acc1 + 5610: a4a1 f2d6 macw %d6u,%a7u,<<,%a1@-,%d2,%acc2 + 5614: ae61 f2c6 macw %d6u,%a7u,<<,%a1@-,%sp,%acc1 + 5618: aee1 f2d6 macw %d6u,%a7u,<<,%a1@-,%sp,%acc2 + 561c: a221 f2e6 macw %d6u,%a7u,<<,%a1@-&,%d1,%acc1 + 5620: a2a1 f2f6 macw %d6u,%a7u,<<,%a1@-&,%d1,%acc2 + 5624: a661 f2e6 macw %d6u,%a7u,<<,%a1@-&,%a3,%acc1 + 5628: a6e1 f2f6 macw %d6u,%a7u,<<,%a1@-&,%a3,%acc2 + 562c: a421 f2e6 macw %d6u,%a7u,<<,%a1@-&,%d2,%acc1 + 5630: a4a1 f2f6 macw %d6u,%a7u,<<,%a1@-&,%d2,%acc2 + 5634: ae61 f2e6 macw %d6u,%a7u,<<,%a1@-&,%sp,%acc1 + 5638: aee1 f2f6 macw %d6u,%a7u,<<,%a1@-&,%sp,%acc2 + 563c: a213 f6c6 macw %d6u,%a7u,>>,%a3@,%d1,%acc1 + 5640: a293 f6d6 macw %d6u,%a7u,>>,%a3@,%d1,%acc2 + 5644: a653 f6c6 macw %d6u,%a7u,>>,%a3@,%a3,%acc1 + 5648: a6d3 f6d6 macw %d6u,%a7u,>>,%a3@,%a3,%acc2 + 564c: a413 f6c6 macw %d6u,%a7u,>>,%a3@,%d2,%acc1 + 5650: a493 f6d6 macw %d6u,%a7u,>>,%a3@,%d2,%acc2 + 5654: ae53 f6c6 macw %d6u,%a7u,>>,%a3@,%sp,%acc1 + 5658: aed3 f6d6 macw %d6u,%a7u,>>,%a3@,%sp,%acc2 + 565c: a213 f6e6 macw %d6u,%a7u,>>,%a3@&,%d1,%acc1 + 5660: a293 f6f6 macw %d6u,%a7u,>>,%a3@&,%d1,%acc2 + 5664: a653 f6e6 macw %d6u,%a7u,>>,%a3@&,%a3,%acc1 + 5668: a6d3 f6f6 macw %d6u,%a7u,>>,%a3@&,%a3,%acc2 + 566c: a413 f6e6 macw %d6u,%a7u,>>,%a3@&,%d2,%acc1 + 5670: a493 f6f6 macw %d6u,%a7u,>>,%a3@&,%d2,%acc2 + 5674: ae53 f6e6 macw %d6u,%a7u,>>,%a3@&,%sp,%acc1 + 5678: aed3 f6f6 macw %d6u,%a7u,>>,%a3@&,%sp,%acc2 + 567c: a21a f6c6 macw %d6u,%a7u,>>,%a2@\+,%d1,%acc1 + 5680: a29a f6d6 macw %d6u,%a7u,>>,%a2@\+,%d1,%acc2 + 5684: a65a f6c6 macw %d6u,%a7u,>>,%a2@\+,%a3,%acc1 + 5688: a6da f6d6 macw %d6u,%a7u,>>,%a2@\+,%a3,%acc2 + 568c: a41a f6c6 macw %d6u,%a7u,>>,%a2@\+,%d2,%acc1 + 5690: a49a f6d6 macw %d6u,%a7u,>>,%a2@\+,%d2,%acc2 + 5694: ae5a f6c6 macw %d6u,%a7u,>>,%a2@\+,%sp,%acc1 + 5698: aeda f6d6 macw %d6u,%a7u,>>,%a2@\+,%sp,%acc2 + 569c: a21a f6e6 macw %d6u,%a7u,>>,%a2@\+&,%d1,%acc1 + 56a0: a29a f6f6 macw %d6u,%a7u,>>,%a2@\+&,%d1,%acc2 + 56a4: a65a f6e6 macw %d6u,%a7u,>>,%a2@\+&,%a3,%acc1 + 56a8: a6da f6f6 macw %d6u,%a7u,>>,%a2@\+&,%a3,%acc2 + 56ac: a41a f6e6 macw %d6u,%a7u,>>,%a2@\+&,%d2,%acc1 + 56b0: a49a f6f6 macw %d6u,%a7u,>>,%a2@\+&,%d2,%acc2 + 56b4: ae5a f6e6 macw %d6u,%a7u,>>,%a2@\+&,%sp,%acc1 + 56b8: aeda f6f6 macw %d6u,%a7u,>>,%a2@\+&,%sp,%acc2 + 56bc: a22e f6c6 000a macw %d6u,%a7u,>>,%fp@\(10\),%d1,%acc1 + 56c2: a2ae f6d6 000a macw %d6u,%a7u,>>,%fp@\(10\),%d1,%acc2 + 56c8: a66e f6c6 000a macw %d6u,%a7u,>>,%fp@\(10\),%a3,%acc1 + 56ce: a6ee f6d6 000a macw %d6u,%a7u,>>,%fp@\(10\),%a3,%acc2 + 56d4: a42e f6c6 000a macw %d6u,%a7u,>>,%fp@\(10\),%d2,%acc1 + 56da: a4ae f6d6 000a macw %d6u,%a7u,>>,%fp@\(10\),%d2,%acc2 + 56e0: ae6e f6c6 000a macw %d6u,%a7u,>>,%fp@\(10\),%sp,%acc1 + 56e6: aeee f6d6 000a macw %d6u,%a7u,>>,%fp@\(10\),%sp,%acc2 + 56ec: a22e f6e6 000a macw %d6u,%a7u,>>,%fp@\(10\)&,%d1,%acc1 + 56f2: a2ae f6f6 000a macw %d6u,%a7u,>>,%fp@\(10\)&,%d1,%acc2 + 56f8: a66e f6e6 000a macw %d6u,%a7u,>>,%fp@\(10\)&,%a3,%acc1 + 56fe: a6ee f6f6 000a macw %d6u,%a7u,>>,%fp@\(10\)&,%a3,%acc2 + 5704: a42e f6e6 000a macw %d6u,%a7u,>>,%fp@\(10\)&,%d2,%acc1 + 570a: a4ae f6f6 000a macw %d6u,%a7u,>>,%fp@\(10\)&,%d2,%acc2 + 5710: ae6e f6e6 000a macw %d6u,%a7u,>>,%fp@\(10\)&,%sp,%acc1 + 5716: aeee f6f6 000a macw %d6u,%a7u,>>,%fp@\(10\)&,%sp,%acc2 + 571c: a221 f6c6 macw %d6u,%a7u,>>,%a1@-,%d1,%acc1 + 5720: a2a1 f6d6 macw %d6u,%a7u,>>,%a1@-,%d1,%acc2 + 5724: a661 f6c6 macw %d6u,%a7u,>>,%a1@-,%a3,%acc1 + 5728: a6e1 f6d6 macw %d6u,%a7u,>>,%a1@-,%a3,%acc2 + 572c: a421 f6c6 macw %d6u,%a7u,>>,%a1@-,%d2,%acc1 + 5730: a4a1 f6d6 macw %d6u,%a7u,>>,%a1@-,%d2,%acc2 + 5734: ae61 f6c6 macw %d6u,%a7u,>>,%a1@-,%sp,%acc1 + 5738: aee1 f6d6 macw %d6u,%a7u,>>,%a1@-,%sp,%acc2 + 573c: a221 f6e6 macw %d6u,%a7u,>>,%a1@-&,%d1,%acc1 + 5740: a2a1 f6f6 macw %d6u,%a7u,>>,%a1@-&,%d1,%acc2 + 5744: a661 f6e6 macw %d6u,%a7u,>>,%a1@-&,%a3,%acc1 + 5748: a6e1 f6f6 macw %d6u,%a7u,>>,%a1@-&,%a3,%acc2 + 574c: a421 f6e6 macw %d6u,%a7u,>>,%a1@-&,%d2,%acc1 + 5750: a4a1 f6f6 macw %d6u,%a7u,>>,%a1@-&,%d2,%acc2 + 5754: ae61 f6e6 macw %d6u,%a7u,>>,%a1@-&,%sp,%acc1 + 5758: aee1 f6f6 macw %d6u,%a7u,>>,%a1@-&,%sp,%acc2 + 575c: a213 1046 macw %d6u,%d1l,%a3@,%d1,%acc1 + 5760: a293 1056 macw %d6u,%d1l,%a3@,%d1,%acc2 + 5764: a653 1046 macw %d6u,%d1l,%a3@,%a3,%acc1 + 5768: a6d3 1056 macw %d6u,%d1l,%a3@,%a3,%acc2 + 576c: a413 1046 macw %d6u,%d1l,%a3@,%d2,%acc1 + 5770: a493 1056 macw %d6u,%d1l,%a3@,%d2,%acc2 + 5774: ae53 1046 macw %d6u,%d1l,%a3@,%sp,%acc1 + 5778: aed3 1056 macw %d6u,%d1l,%a3@,%sp,%acc2 + 577c: a213 1066 macw %d6u,%d1l,%a3@&,%d1,%acc1 + 5780: a293 1076 macw %d6u,%d1l,%a3@&,%d1,%acc2 + 5784: a653 1066 macw %d6u,%d1l,%a3@&,%a3,%acc1 + 5788: a6d3 1076 macw %d6u,%d1l,%a3@&,%a3,%acc2 + 578c: a413 1066 macw %d6u,%d1l,%a3@&,%d2,%acc1 + 5790: a493 1076 macw %d6u,%d1l,%a3@&,%d2,%acc2 + 5794: ae53 1066 macw %d6u,%d1l,%a3@&,%sp,%acc1 + 5798: aed3 1076 macw %d6u,%d1l,%a3@&,%sp,%acc2 + 579c: a21a 1046 macw %d6u,%d1l,%a2@\+,%d1,%acc1 + 57a0: a29a 1056 macw %d6u,%d1l,%a2@\+,%d1,%acc2 + 57a4: a65a 1046 macw %d6u,%d1l,%a2@\+,%a3,%acc1 + 57a8: a6da 1056 macw %d6u,%d1l,%a2@\+,%a3,%acc2 + 57ac: a41a 1046 macw %d6u,%d1l,%a2@\+,%d2,%acc1 + 57b0: a49a 1056 macw %d6u,%d1l,%a2@\+,%d2,%acc2 + 57b4: ae5a 1046 macw %d6u,%d1l,%a2@\+,%sp,%acc1 + 57b8: aeda 1056 macw %d6u,%d1l,%a2@\+,%sp,%acc2 + 57bc: a21a 1066 macw %d6u,%d1l,%a2@\+&,%d1,%acc1 + 57c0: a29a 1076 macw %d6u,%d1l,%a2@\+&,%d1,%acc2 + 57c4: a65a 1066 macw %d6u,%d1l,%a2@\+&,%a3,%acc1 + 57c8: a6da 1076 macw %d6u,%d1l,%a2@\+&,%a3,%acc2 + 57cc: a41a 1066 macw %d6u,%d1l,%a2@\+&,%d2,%acc1 + 57d0: a49a 1076 macw %d6u,%d1l,%a2@\+&,%d2,%acc2 + 57d4: ae5a 1066 macw %d6u,%d1l,%a2@\+&,%sp,%acc1 + 57d8: aeda 1076 macw %d6u,%d1l,%a2@\+&,%sp,%acc2 + 57dc: a22e 1046 000a macw %d6u,%d1l,%fp@\(10\),%d1,%acc1 + 57e2: a2ae 1056 000a macw %d6u,%d1l,%fp@\(10\),%d1,%acc2 + 57e8: a66e 1046 000a macw %d6u,%d1l,%fp@\(10\),%a3,%acc1 + 57ee: a6ee 1056 000a macw %d6u,%d1l,%fp@\(10\),%a3,%acc2 + 57f4: a42e 1046 000a macw %d6u,%d1l,%fp@\(10\),%d2,%acc1 + 57fa: a4ae 1056 000a macw %d6u,%d1l,%fp@\(10\),%d2,%acc2 + 5800: ae6e 1046 000a macw %d6u,%d1l,%fp@\(10\),%sp,%acc1 + 5806: aeee 1056 000a macw %d6u,%d1l,%fp@\(10\),%sp,%acc2 + 580c: a22e 1066 000a macw %d6u,%d1l,%fp@\(10\)&,%d1,%acc1 + 5812: a2ae 1076 000a macw %d6u,%d1l,%fp@\(10\)&,%d1,%acc2 + 5818: a66e 1066 000a macw %d6u,%d1l,%fp@\(10\)&,%a3,%acc1 + 581e: a6ee 1076 000a macw %d6u,%d1l,%fp@\(10\)&,%a3,%acc2 + 5824: a42e 1066 000a macw %d6u,%d1l,%fp@\(10\)&,%d2,%acc1 + 582a: a4ae 1076 000a macw %d6u,%d1l,%fp@\(10\)&,%d2,%acc2 + 5830: ae6e 1066 000a macw %d6u,%d1l,%fp@\(10\)&,%sp,%acc1 + 5836: aeee 1076 000a macw %d6u,%d1l,%fp@\(10\)&,%sp,%acc2 + 583c: a221 1046 macw %d6u,%d1l,%a1@-,%d1,%acc1 + 5840: a2a1 1056 macw %d6u,%d1l,%a1@-,%d1,%acc2 + 5844: a661 1046 macw %d6u,%d1l,%a1@-,%a3,%acc1 + 5848: a6e1 1056 macw %d6u,%d1l,%a1@-,%a3,%acc2 + 584c: a421 1046 macw %d6u,%d1l,%a1@-,%d2,%acc1 + 5850: a4a1 1056 macw %d6u,%d1l,%a1@-,%d2,%acc2 + 5854: ae61 1046 macw %d6u,%d1l,%a1@-,%sp,%acc1 + 5858: aee1 1056 macw %d6u,%d1l,%a1@-,%sp,%acc2 + 585c: a221 1066 macw %d6u,%d1l,%a1@-&,%d1,%acc1 + 5860: a2a1 1076 macw %d6u,%d1l,%a1@-&,%d1,%acc2 + 5864: a661 1066 macw %d6u,%d1l,%a1@-&,%a3,%acc1 + 5868: a6e1 1076 macw %d6u,%d1l,%a1@-&,%a3,%acc2 + 586c: a421 1066 macw %d6u,%d1l,%a1@-&,%d2,%acc1 + 5870: a4a1 1076 macw %d6u,%d1l,%a1@-&,%d2,%acc2 + 5874: ae61 1066 macw %d6u,%d1l,%a1@-&,%sp,%acc1 + 5878: aee1 1076 macw %d6u,%d1l,%a1@-&,%sp,%acc2 + 587c: a213 1246 macw %d6u,%d1l,<<,%a3@,%d1,%acc1 + 5880: a293 1256 macw %d6u,%d1l,<<,%a3@,%d1,%acc2 + 5884: a653 1246 macw %d6u,%d1l,<<,%a3@,%a3,%acc1 + 5888: a6d3 1256 macw %d6u,%d1l,<<,%a3@,%a3,%acc2 + 588c: a413 1246 macw %d6u,%d1l,<<,%a3@,%d2,%acc1 + 5890: a493 1256 macw %d6u,%d1l,<<,%a3@,%d2,%acc2 + 5894: ae53 1246 macw %d6u,%d1l,<<,%a3@,%sp,%acc1 + 5898: aed3 1256 macw %d6u,%d1l,<<,%a3@,%sp,%acc2 + 589c: a213 1266 macw %d6u,%d1l,<<,%a3@&,%d1,%acc1 + 58a0: a293 1276 macw %d6u,%d1l,<<,%a3@&,%d1,%acc2 + 58a4: a653 1266 macw %d6u,%d1l,<<,%a3@&,%a3,%acc1 + 58a8: a6d3 1276 macw %d6u,%d1l,<<,%a3@&,%a3,%acc2 + 58ac: a413 1266 macw %d6u,%d1l,<<,%a3@&,%d2,%acc1 + 58b0: a493 1276 macw %d6u,%d1l,<<,%a3@&,%d2,%acc2 + 58b4: ae53 1266 macw %d6u,%d1l,<<,%a3@&,%sp,%acc1 + 58b8: aed3 1276 macw %d6u,%d1l,<<,%a3@&,%sp,%acc2 + 58bc: a21a 1246 macw %d6u,%d1l,<<,%a2@\+,%d1,%acc1 + 58c0: a29a 1256 macw %d6u,%d1l,<<,%a2@\+,%d1,%acc2 + 58c4: a65a 1246 macw %d6u,%d1l,<<,%a2@\+,%a3,%acc1 + 58c8: a6da 1256 macw %d6u,%d1l,<<,%a2@\+,%a3,%acc2 + 58cc: a41a 1246 macw %d6u,%d1l,<<,%a2@\+,%d2,%acc1 + 58d0: a49a 1256 macw %d6u,%d1l,<<,%a2@\+,%d2,%acc2 + 58d4: ae5a 1246 macw %d6u,%d1l,<<,%a2@\+,%sp,%acc1 + 58d8: aeda 1256 macw %d6u,%d1l,<<,%a2@\+,%sp,%acc2 + 58dc: a21a 1266 macw %d6u,%d1l,<<,%a2@\+&,%d1,%acc1 + 58e0: a29a 1276 macw %d6u,%d1l,<<,%a2@\+&,%d1,%acc2 + 58e4: a65a 1266 macw %d6u,%d1l,<<,%a2@\+&,%a3,%acc1 + 58e8: a6da 1276 macw %d6u,%d1l,<<,%a2@\+&,%a3,%acc2 + 58ec: a41a 1266 macw %d6u,%d1l,<<,%a2@\+&,%d2,%acc1 + 58f0: a49a 1276 macw %d6u,%d1l,<<,%a2@\+&,%d2,%acc2 + 58f4: ae5a 1266 macw %d6u,%d1l,<<,%a2@\+&,%sp,%acc1 + 58f8: aeda 1276 macw %d6u,%d1l,<<,%a2@\+&,%sp,%acc2 + 58fc: a22e 1246 000a macw %d6u,%d1l,<<,%fp@\(10\),%d1,%acc1 + 5902: a2ae 1256 000a macw %d6u,%d1l,<<,%fp@\(10\),%d1,%acc2 + 5908: a66e 1246 000a macw %d6u,%d1l,<<,%fp@\(10\),%a3,%acc1 + 590e: a6ee 1256 000a macw %d6u,%d1l,<<,%fp@\(10\),%a3,%acc2 + 5914: a42e 1246 000a macw %d6u,%d1l,<<,%fp@\(10\),%d2,%acc1 + 591a: a4ae 1256 000a macw %d6u,%d1l,<<,%fp@\(10\),%d2,%acc2 + 5920: ae6e 1246 000a macw %d6u,%d1l,<<,%fp@\(10\),%sp,%acc1 + 5926: aeee 1256 000a macw %d6u,%d1l,<<,%fp@\(10\),%sp,%acc2 + 592c: a22e 1266 000a macw %d6u,%d1l,<<,%fp@\(10\)&,%d1,%acc1 + 5932: a2ae 1276 000a macw %d6u,%d1l,<<,%fp@\(10\)&,%d1,%acc2 + 5938: a66e 1266 000a macw %d6u,%d1l,<<,%fp@\(10\)&,%a3,%acc1 + 593e: a6ee 1276 000a macw %d6u,%d1l,<<,%fp@\(10\)&,%a3,%acc2 + 5944: a42e 1266 000a macw %d6u,%d1l,<<,%fp@\(10\)&,%d2,%acc1 + 594a: a4ae 1276 000a macw %d6u,%d1l,<<,%fp@\(10\)&,%d2,%acc2 + 5950: ae6e 1266 000a macw %d6u,%d1l,<<,%fp@\(10\)&,%sp,%acc1 + 5956: aeee 1276 000a macw %d6u,%d1l,<<,%fp@\(10\)&,%sp,%acc2 + 595c: a221 1246 macw %d6u,%d1l,<<,%a1@-,%d1,%acc1 + 5960: a2a1 1256 macw %d6u,%d1l,<<,%a1@-,%d1,%acc2 + 5964: a661 1246 macw %d6u,%d1l,<<,%a1@-,%a3,%acc1 + 5968: a6e1 1256 macw %d6u,%d1l,<<,%a1@-,%a3,%acc2 + 596c: a421 1246 macw %d6u,%d1l,<<,%a1@-,%d2,%acc1 + 5970: a4a1 1256 macw %d6u,%d1l,<<,%a1@-,%d2,%acc2 + 5974: ae61 1246 macw %d6u,%d1l,<<,%a1@-,%sp,%acc1 + 5978: aee1 1256 macw %d6u,%d1l,<<,%a1@-,%sp,%acc2 + 597c: a221 1266 macw %d6u,%d1l,<<,%a1@-&,%d1,%acc1 + 5980: a2a1 1276 macw %d6u,%d1l,<<,%a1@-&,%d1,%acc2 + 5984: a661 1266 macw %d6u,%d1l,<<,%a1@-&,%a3,%acc1 + 5988: a6e1 1276 macw %d6u,%d1l,<<,%a1@-&,%a3,%acc2 + 598c: a421 1266 macw %d6u,%d1l,<<,%a1@-&,%d2,%acc1 + 5990: a4a1 1276 macw %d6u,%d1l,<<,%a1@-&,%d2,%acc2 + 5994: ae61 1266 macw %d6u,%d1l,<<,%a1@-&,%sp,%acc1 + 5998: aee1 1276 macw %d6u,%d1l,<<,%a1@-&,%sp,%acc2 + 599c: a213 1646 macw %d6u,%d1l,>>,%a3@,%d1,%acc1 + 59a0: a293 1656 macw %d6u,%d1l,>>,%a3@,%d1,%acc2 + 59a4: a653 1646 macw %d6u,%d1l,>>,%a3@,%a3,%acc1 + 59a8: a6d3 1656 macw %d6u,%d1l,>>,%a3@,%a3,%acc2 + 59ac: a413 1646 macw %d6u,%d1l,>>,%a3@,%d2,%acc1 + 59b0: a493 1656 macw %d6u,%d1l,>>,%a3@,%d2,%acc2 + 59b4: ae53 1646 macw %d6u,%d1l,>>,%a3@,%sp,%acc1 + 59b8: aed3 1656 macw %d6u,%d1l,>>,%a3@,%sp,%acc2 + 59bc: a213 1666 macw %d6u,%d1l,>>,%a3@&,%d1,%acc1 + 59c0: a293 1676 macw %d6u,%d1l,>>,%a3@&,%d1,%acc2 + 59c4: a653 1666 macw %d6u,%d1l,>>,%a3@&,%a3,%acc1 + 59c8: a6d3 1676 macw %d6u,%d1l,>>,%a3@&,%a3,%acc2 + 59cc: a413 1666 macw %d6u,%d1l,>>,%a3@&,%d2,%acc1 + 59d0: a493 1676 macw %d6u,%d1l,>>,%a3@&,%d2,%acc2 + 59d4: ae53 1666 macw %d6u,%d1l,>>,%a3@&,%sp,%acc1 + 59d8: aed3 1676 macw %d6u,%d1l,>>,%a3@&,%sp,%acc2 + 59dc: a21a 1646 macw %d6u,%d1l,>>,%a2@\+,%d1,%acc1 + 59e0: a29a 1656 macw %d6u,%d1l,>>,%a2@\+,%d1,%acc2 + 59e4: a65a 1646 macw %d6u,%d1l,>>,%a2@\+,%a3,%acc1 + 59e8: a6da 1656 macw %d6u,%d1l,>>,%a2@\+,%a3,%acc2 + 59ec: a41a 1646 macw %d6u,%d1l,>>,%a2@\+,%d2,%acc1 + 59f0: a49a 1656 macw %d6u,%d1l,>>,%a2@\+,%d2,%acc2 + 59f4: ae5a 1646 macw %d6u,%d1l,>>,%a2@\+,%sp,%acc1 + 59f8: aeda 1656 macw %d6u,%d1l,>>,%a2@\+,%sp,%acc2 + 59fc: a21a 1666 macw %d6u,%d1l,>>,%a2@\+&,%d1,%acc1 + 5a00: a29a 1676 macw %d6u,%d1l,>>,%a2@\+&,%d1,%acc2 + 5a04: a65a 1666 macw %d6u,%d1l,>>,%a2@\+&,%a3,%acc1 + 5a08: a6da 1676 macw %d6u,%d1l,>>,%a2@\+&,%a3,%acc2 + 5a0c: a41a 1666 macw %d6u,%d1l,>>,%a2@\+&,%d2,%acc1 + 5a10: a49a 1676 macw %d6u,%d1l,>>,%a2@\+&,%d2,%acc2 + 5a14: ae5a 1666 macw %d6u,%d1l,>>,%a2@\+&,%sp,%acc1 + 5a18: aeda 1676 macw %d6u,%d1l,>>,%a2@\+&,%sp,%acc2 + 5a1c: a22e 1646 000a macw %d6u,%d1l,>>,%fp@\(10\),%d1,%acc1 + 5a22: a2ae 1656 000a macw %d6u,%d1l,>>,%fp@\(10\),%d1,%acc2 + 5a28: a66e 1646 000a macw %d6u,%d1l,>>,%fp@\(10\),%a3,%acc1 + 5a2e: a6ee 1656 000a macw %d6u,%d1l,>>,%fp@\(10\),%a3,%acc2 + 5a34: a42e 1646 000a macw %d6u,%d1l,>>,%fp@\(10\),%d2,%acc1 + 5a3a: a4ae 1656 000a macw %d6u,%d1l,>>,%fp@\(10\),%d2,%acc2 + 5a40: ae6e 1646 000a macw %d6u,%d1l,>>,%fp@\(10\),%sp,%acc1 + 5a46: aeee 1656 000a macw %d6u,%d1l,>>,%fp@\(10\),%sp,%acc2 + 5a4c: a22e 1666 000a macw %d6u,%d1l,>>,%fp@\(10\)&,%d1,%acc1 + 5a52: a2ae 1676 000a macw %d6u,%d1l,>>,%fp@\(10\)&,%d1,%acc2 + 5a58: a66e 1666 000a macw %d6u,%d1l,>>,%fp@\(10\)&,%a3,%acc1 + 5a5e: a6ee 1676 000a macw %d6u,%d1l,>>,%fp@\(10\)&,%a3,%acc2 + 5a64: a42e 1666 000a macw %d6u,%d1l,>>,%fp@\(10\)&,%d2,%acc1 + 5a6a: a4ae 1676 000a macw %d6u,%d1l,>>,%fp@\(10\)&,%d2,%acc2 + 5a70: ae6e 1666 000a macw %d6u,%d1l,>>,%fp@\(10\)&,%sp,%acc1 + 5a76: aeee 1676 000a macw %d6u,%d1l,>>,%fp@\(10\)&,%sp,%acc2 + 5a7c: a221 1646 macw %d6u,%d1l,>>,%a1@-,%d1,%acc1 + 5a80: a2a1 1656 macw %d6u,%d1l,>>,%a1@-,%d1,%acc2 + 5a84: a661 1646 macw %d6u,%d1l,>>,%a1@-,%a3,%acc1 + 5a88: a6e1 1656 macw %d6u,%d1l,>>,%a1@-,%a3,%acc2 + 5a8c: a421 1646 macw %d6u,%d1l,>>,%a1@-,%d2,%acc1 + 5a90: a4a1 1656 macw %d6u,%d1l,>>,%a1@-,%d2,%acc2 + 5a94: ae61 1646 macw %d6u,%d1l,>>,%a1@-,%sp,%acc1 + 5a98: aee1 1656 macw %d6u,%d1l,>>,%a1@-,%sp,%acc2 + 5a9c: a221 1666 macw %d6u,%d1l,>>,%a1@-&,%d1,%acc1 + 5aa0: a2a1 1676 macw %d6u,%d1l,>>,%a1@-&,%d1,%acc2 + 5aa4: a661 1666 macw %d6u,%d1l,>>,%a1@-&,%a3,%acc1 + 5aa8: a6e1 1676 macw %d6u,%d1l,>>,%a1@-&,%a3,%acc2 + 5aac: a421 1666 macw %d6u,%d1l,>>,%a1@-&,%d2,%acc1 + 5ab0: a4a1 1676 macw %d6u,%d1l,>>,%a1@-&,%d2,%acc2 + 5ab4: ae61 1666 macw %d6u,%d1l,>>,%a1@-&,%sp,%acc1 + 5ab8: aee1 1676 macw %d6u,%d1l,>>,%a1@-&,%sp,%acc2 + 5abc: a213 1246 macw %d6u,%d1l,<<,%a3@,%d1,%acc1 + 5ac0: a293 1256 macw %d6u,%d1l,<<,%a3@,%d1,%acc2 + 5ac4: a653 1246 macw %d6u,%d1l,<<,%a3@,%a3,%acc1 + 5ac8: a6d3 1256 macw %d6u,%d1l,<<,%a3@,%a3,%acc2 + 5acc: a413 1246 macw %d6u,%d1l,<<,%a3@,%d2,%acc1 + 5ad0: a493 1256 macw %d6u,%d1l,<<,%a3@,%d2,%acc2 + 5ad4: ae53 1246 macw %d6u,%d1l,<<,%a3@,%sp,%acc1 + 5ad8: aed3 1256 macw %d6u,%d1l,<<,%a3@,%sp,%acc2 + 5adc: a213 1266 macw %d6u,%d1l,<<,%a3@&,%d1,%acc1 + 5ae0: a293 1276 macw %d6u,%d1l,<<,%a3@&,%d1,%acc2 + 5ae4: a653 1266 macw %d6u,%d1l,<<,%a3@&,%a3,%acc1 + 5ae8: a6d3 1276 macw %d6u,%d1l,<<,%a3@&,%a3,%acc2 + 5aec: a413 1266 macw %d6u,%d1l,<<,%a3@&,%d2,%acc1 + 5af0: a493 1276 macw %d6u,%d1l,<<,%a3@&,%d2,%acc2 + 5af4: ae53 1266 macw %d6u,%d1l,<<,%a3@&,%sp,%acc1 + 5af8: aed3 1276 macw %d6u,%d1l,<<,%a3@&,%sp,%acc2 + 5afc: a21a 1246 macw %d6u,%d1l,<<,%a2@\+,%d1,%acc1 + 5b00: a29a 1256 macw %d6u,%d1l,<<,%a2@\+,%d1,%acc2 + 5b04: a65a 1246 macw %d6u,%d1l,<<,%a2@\+,%a3,%acc1 + 5b08: a6da 1256 macw %d6u,%d1l,<<,%a2@\+,%a3,%acc2 + 5b0c: a41a 1246 macw %d6u,%d1l,<<,%a2@\+,%d2,%acc1 + 5b10: a49a 1256 macw %d6u,%d1l,<<,%a2@\+,%d2,%acc2 + 5b14: ae5a 1246 macw %d6u,%d1l,<<,%a2@\+,%sp,%acc1 + 5b18: aeda 1256 macw %d6u,%d1l,<<,%a2@\+,%sp,%acc2 + 5b1c: a21a 1266 macw %d6u,%d1l,<<,%a2@\+&,%d1,%acc1 + 5b20: a29a 1276 macw %d6u,%d1l,<<,%a2@\+&,%d1,%acc2 + 5b24: a65a 1266 macw %d6u,%d1l,<<,%a2@\+&,%a3,%acc1 + 5b28: a6da 1276 macw %d6u,%d1l,<<,%a2@\+&,%a3,%acc2 + 5b2c: a41a 1266 macw %d6u,%d1l,<<,%a2@\+&,%d2,%acc1 + 5b30: a49a 1276 macw %d6u,%d1l,<<,%a2@\+&,%d2,%acc2 + 5b34: ae5a 1266 macw %d6u,%d1l,<<,%a2@\+&,%sp,%acc1 + 5b38: aeda 1276 macw %d6u,%d1l,<<,%a2@\+&,%sp,%acc2 + 5b3c: a22e 1246 000a macw %d6u,%d1l,<<,%fp@\(10\),%d1,%acc1 + 5b42: a2ae 1256 000a macw %d6u,%d1l,<<,%fp@\(10\),%d1,%acc2 + 5b48: a66e 1246 000a macw %d6u,%d1l,<<,%fp@\(10\),%a3,%acc1 + 5b4e: a6ee 1256 000a macw %d6u,%d1l,<<,%fp@\(10\),%a3,%acc2 + 5b54: a42e 1246 000a macw %d6u,%d1l,<<,%fp@\(10\),%d2,%acc1 + 5b5a: a4ae 1256 000a macw %d6u,%d1l,<<,%fp@\(10\),%d2,%acc2 + 5b60: ae6e 1246 000a macw %d6u,%d1l,<<,%fp@\(10\),%sp,%acc1 + 5b66: aeee 1256 000a macw %d6u,%d1l,<<,%fp@\(10\),%sp,%acc2 + 5b6c: a22e 1266 000a macw %d6u,%d1l,<<,%fp@\(10\)&,%d1,%acc1 + 5b72: a2ae 1276 000a macw %d6u,%d1l,<<,%fp@\(10\)&,%d1,%acc2 + 5b78: a66e 1266 000a macw %d6u,%d1l,<<,%fp@\(10\)&,%a3,%acc1 + 5b7e: a6ee 1276 000a macw %d6u,%d1l,<<,%fp@\(10\)&,%a3,%acc2 + 5b84: a42e 1266 000a macw %d6u,%d1l,<<,%fp@\(10\)&,%d2,%acc1 + 5b8a: a4ae 1276 000a macw %d6u,%d1l,<<,%fp@\(10\)&,%d2,%acc2 + 5b90: ae6e 1266 000a macw %d6u,%d1l,<<,%fp@\(10\)&,%sp,%acc1 + 5b96: aeee 1276 000a macw %d6u,%d1l,<<,%fp@\(10\)&,%sp,%acc2 + 5b9c: a221 1246 macw %d6u,%d1l,<<,%a1@-,%d1,%acc1 + 5ba0: a2a1 1256 macw %d6u,%d1l,<<,%a1@-,%d1,%acc2 + 5ba4: a661 1246 macw %d6u,%d1l,<<,%a1@-,%a3,%acc1 + 5ba8: a6e1 1256 macw %d6u,%d1l,<<,%a1@-,%a3,%acc2 + 5bac: a421 1246 macw %d6u,%d1l,<<,%a1@-,%d2,%acc1 + 5bb0: a4a1 1256 macw %d6u,%d1l,<<,%a1@-,%d2,%acc2 + 5bb4: ae61 1246 macw %d6u,%d1l,<<,%a1@-,%sp,%acc1 + 5bb8: aee1 1256 macw %d6u,%d1l,<<,%a1@-,%sp,%acc2 + 5bbc: a221 1266 macw %d6u,%d1l,<<,%a1@-&,%d1,%acc1 + 5bc0: a2a1 1276 macw %d6u,%d1l,<<,%a1@-&,%d1,%acc2 + 5bc4: a661 1266 macw %d6u,%d1l,<<,%a1@-&,%a3,%acc1 + 5bc8: a6e1 1276 macw %d6u,%d1l,<<,%a1@-&,%a3,%acc2 + 5bcc: a421 1266 macw %d6u,%d1l,<<,%a1@-&,%d2,%acc1 + 5bd0: a4a1 1276 macw %d6u,%d1l,<<,%a1@-&,%d2,%acc2 + 5bd4: ae61 1266 macw %d6u,%d1l,<<,%a1@-&,%sp,%acc1 + 5bd8: aee1 1276 macw %d6u,%d1l,<<,%a1@-&,%sp,%acc2 + 5bdc: a213 1646 macw %d6u,%d1l,>>,%a3@,%d1,%acc1 + 5be0: a293 1656 macw %d6u,%d1l,>>,%a3@,%d1,%acc2 + 5be4: a653 1646 macw %d6u,%d1l,>>,%a3@,%a3,%acc1 + 5be8: a6d3 1656 macw %d6u,%d1l,>>,%a3@,%a3,%acc2 + 5bec: a413 1646 macw %d6u,%d1l,>>,%a3@,%d2,%acc1 + 5bf0: a493 1656 macw %d6u,%d1l,>>,%a3@,%d2,%acc2 + 5bf4: ae53 1646 macw %d6u,%d1l,>>,%a3@,%sp,%acc1 + 5bf8: aed3 1656 macw %d6u,%d1l,>>,%a3@,%sp,%acc2 + 5bfc: a213 1666 macw %d6u,%d1l,>>,%a3@&,%d1,%acc1 + 5c00: a293 1676 macw %d6u,%d1l,>>,%a3@&,%d1,%acc2 + 5c04: a653 1666 macw %d6u,%d1l,>>,%a3@&,%a3,%acc1 + 5c08: a6d3 1676 macw %d6u,%d1l,>>,%a3@&,%a3,%acc2 + 5c0c: a413 1666 macw %d6u,%d1l,>>,%a3@&,%d2,%acc1 + 5c10: a493 1676 macw %d6u,%d1l,>>,%a3@&,%d2,%acc2 + 5c14: ae53 1666 macw %d6u,%d1l,>>,%a3@&,%sp,%acc1 + 5c18: aed3 1676 macw %d6u,%d1l,>>,%a3@&,%sp,%acc2 + 5c1c: a21a 1646 macw %d6u,%d1l,>>,%a2@\+,%d1,%acc1 + 5c20: a29a 1656 macw %d6u,%d1l,>>,%a2@\+,%d1,%acc2 + 5c24: a65a 1646 macw %d6u,%d1l,>>,%a2@\+,%a3,%acc1 + 5c28: a6da 1656 macw %d6u,%d1l,>>,%a2@\+,%a3,%acc2 + 5c2c: a41a 1646 macw %d6u,%d1l,>>,%a2@\+,%d2,%acc1 + 5c30: a49a 1656 macw %d6u,%d1l,>>,%a2@\+,%d2,%acc2 + 5c34: ae5a 1646 macw %d6u,%d1l,>>,%a2@\+,%sp,%acc1 + 5c38: aeda 1656 macw %d6u,%d1l,>>,%a2@\+,%sp,%acc2 + 5c3c: a21a 1666 macw %d6u,%d1l,>>,%a2@\+&,%d1,%acc1 + 5c40: a29a 1676 macw %d6u,%d1l,>>,%a2@\+&,%d1,%acc2 + 5c44: a65a 1666 macw %d6u,%d1l,>>,%a2@\+&,%a3,%acc1 + 5c48: a6da 1676 macw %d6u,%d1l,>>,%a2@\+&,%a3,%acc2 + 5c4c: a41a 1666 macw %d6u,%d1l,>>,%a2@\+&,%d2,%acc1 + 5c50: a49a 1676 macw %d6u,%d1l,>>,%a2@\+&,%d2,%acc2 + 5c54: ae5a 1666 macw %d6u,%d1l,>>,%a2@\+&,%sp,%acc1 + 5c58: aeda 1676 macw %d6u,%d1l,>>,%a2@\+&,%sp,%acc2 + 5c5c: a22e 1646 000a macw %d6u,%d1l,>>,%fp@\(10\),%d1,%acc1 + 5c62: a2ae 1656 000a macw %d6u,%d1l,>>,%fp@\(10\),%d1,%acc2 + 5c68: a66e 1646 000a macw %d6u,%d1l,>>,%fp@\(10\),%a3,%acc1 + 5c6e: a6ee 1656 000a macw %d6u,%d1l,>>,%fp@\(10\),%a3,%acc2 + 5c74: a42e 1646 000a macw %d6u,%d1l,>>,%fp@\(10\),%d2,%acc1 + 5c7a: a4ae 1656 000a macw %d6u,%d1l,>>,%fp@\(10\),%d2,%acc2 + 5c80: ae6e 1646 000a macw %d6u,%d1l,>>,%fp@\(10\),%sp,%acc1 + 5c86: aeee 1656 000a macw %d6u,%d1l,>>,%fp@\(10\),%sp,%acc2 + 5c8c: a22e 1666 000a macw %d6u,%d1l,>>,%fp@\(10\)&,%d1,%acc1 + 5c92: a2ae 1676 000a macw %d6u,%d1l,>>,%fp@\(10\)&,%d1,%acc2 + 5c98: a66e 1666 000a macw %d6u,%d1l,>>,%fp@\(10\)&,%a3,%acc1 + 5c9e: a6ee 1676 000a macw %d6u,%d1l,>>,%fp@\(10\)&,%a3,%acc2 + 5ca4: a42e 1666 000a macw %d6u,%d1l,>>,%fp@\(10\)&,%d2,%acc1 + 5caa: a4ae 1676 000a macw %d6u,%d1l,>>,%fp@\(10\)&,%d2,%acc2 + 5cb0: ae6e 1666 000a macw %d6u,%d1l,>>,%fp@\(10\)&,%sp,%acc1 + 5cb6: aeee 1676 000a macw %d6u,%d1l,>>,%fp@\(10\)&,%sp,%acc2 + 5cbc: a221 1646 macw %d6u,%d1l,>>,%a1@-,%d1,%acc1 + 5cc0: a2a1 1656 macw %d6u,%d1l,>>,%a1@-,%d1,%acc2 + 5cc4: a661 1646 macw %d6u,%d1l,>>,%a1@-,%a3,%acc1 + 5cc8: a6e1 1656 macw %d6u,%d1l,>>,%a1@-,%a3,%acc2 + 5ccc: a421 1646 macw %d6u,%d1l,>>,%a1@-,%d2,%acc1 + 5cd0: a4a1 1656 macw %d6u,%d1l,>>,%a1@-,%d2,%acc2 + 5cd4: ae61 1646 macw %d6u,%d1l,>>,%a1@-,%sp,%acc1 + 5cd8: aee1 1656 macw %d6u,%d1l,>>,%a1@-,%sp,%acc2 + 5cdc: a221 1666 macw %d6u,%d1l,>>,%a1@-&,%d1,%acc1 + 5ce0: a2a1 1676 macw %d6u,%d1l,>>,%a1@-&,%d1,%acc2 + 5ce4: a661 1666 macw %d6u,%d1l,>>,%a1@-&,%a3,%acc1 + 5ce8: a6e1 1676 macw %d6u,%d1l,>>,%a1@-&,%a3,%acc2 + 5cec: a421 1666 macw %d6u,%d1l,>>,%a1@-&,%d2,%acc1 + 5cf0: a4a1 1676 macw %d6u,%d1l,>>,%a1@-&,%d2,%acc2 + 5cf4: ae61 1666 macw %d6u,%d1l,>>,%a1@-&,%sp,%acc1 + 5cf8: aee1 1676 macw %d6u,%d1l,>>,%a1@-&,%sp,%acc2 + 5cfc: a6c9 0800 macl %a1,%a3,%acc1 + 5d00: a649 0810 macl %a1,%a3,%acc2 + 5d04: a6c9 0a00 macl %a1,%a3,<<,%acc1 + 5d08: a649 0a10 macl %a1,%a3,<<,%acc2 + 5d0c: a6c9 0e00 macl %a1,%a3,>>,%acc1 + 5d10: a649 0e10 macl %a1,%a3,>>,%acc2 + 5d14: a6c9 0a00 macl %a1,%a3,<<,%acc1 + 5d18: a649 0a10 macl %a1,%a3,<<,%acc2 + 5d1c: a6c9 0e00 macl %a1,%a3,>>,%acc1 + 5d20: a649 0e10 macl %a1,%a3,>>,%acc2 + 5d24: a889 0800 macl %a1,%d4,%acc1 + 5d28: a809 0810 macl %a1,%d4,%acc2 + 5d2c: a889 0a00 macl %a1,%d4,<<,%acc1 + 5d30: a809 0a10 macl %a1,%d4,<<,%acc2 + 5d34: a889 0e00 macl %a1,%d4,>>,%acc1 + 5d38: a809 0e10 macl %a1,%d4,>>,%acc2 + 5d3c: a889 0a00 macl %a1,%d4,<<,%acc1 + 5d40: a809 0a10 macl %a1,%d4,<<,%acc2 + 5d44: a889 0e00 macl %a1,%d4,>>,%acc1 + 5d48: a809 0e10 macl %a1,%d4,>>,%acc2 + 5d4c: a6c6 0800 macl %d6,%a3,%acc1 + 5d50: a646 0810 macl %d6,%a3,%acc2 + 5d54: a6c6 0a00 macl %d6,%a3,<<,%acc1 + 5d58: a646 0a10 macl %d6,%a3,<<,%acc2 + 5d5c: a6c6 0e00 macl %d6,%a3,>>,%acc1 + 5d60: a646 0e10 macl %d6,%a3,>>,%acc2 + 5d64: a6c6 0a00 macl %d6,%a3,<<,%acc1 + 5d68: a646 0a10 macl %d6,%a3,<<,%acc2 + 5d6c: a6c6 0e00 macl %d6,%a3,>>,%acc1 + 5d70: a646 0e10 macl %d6,%a3,>>,%acc2 + 5d74: a886 0800 macl %d6,%d4,%acc1 + 5d78: a806 0810 macl %d6,%d4,%acc2 + 5d7c: a886 0a00 macl %d6,%d4,<<,%acc1 + 5d80: a806 0a10 macl %d6,%d4,<<,%acc2 + 5d84: a886 0e00 macl %d6,%d4,>>,%acc1 + 5d88: a806 0e10 macl %d6,%d4,>>,%acc2 + 5d8c: a886 0a00 macl %d6,%d4,<<,%acc1 + 5d90: a806 0a10 macl %d6,%d4,<<,%acc2 + 5d94: a886 0e00 macl %d6,%d4,>>,%acc1 + 5d98: a806 0e10 macl %d6,%d4,>>,%acc2 + 5d9c: a213 b809 macl %a1,%a3,%a3@,%d1,%acc1 + 5da0: a293 b819 macl %a1,%a3,%a3@,%d1,%acc2 + 5da4: a653 b809 macl %a1,%a3,%a3@,%a3,%acc1 + 5da8: a6d3 b819 macl %a1,%a3,%a3@,%a3,%acc2 + 5dac: a413 b809 macl %a1,%a3,%a3@,%d2,%acc1 + 5db0: a493 b819 macl %a1,%a3,%a3@,%d2,%acc2 + 5db4: ae53 b809 macl %a1,%a3,%a3@,%sp,%acc1 + 5db8: aed3 b819 macl %a1,%a3,%a3@,%sp,%acc2 + 5dbc: a213 b829 macl %a1,%a3,%a3@&,%d1,%acc1 + 5dc0: a293 b839 macl %a1,%a3,%a3@&,%d1,%acc2 + 5dc4: a653 b829 macl %a1,%a3,%a3@&,%a3,%acc1 + 5dc8: a6d3 b839 macl %a1,%a3,%a3@&,%a3,%acc2 + 5dcc: a413 b829 macl %a1,%a3,%a3@&,%d2,%acc1 + 5dd0: a493 b839 macl %a1,%a3,%a3@&,%d2,%acc2 + 5dd4: ae53 b829 macl %a1,%a3,%a3@&,%sp,%acc1 + 5dd8: aed3 b839 macl %a1,%a3,%a3@&,%sp,%acc2 + 5ddc: a21a b809 macl %a1,%a3,%a2@\+,%d1,%acc1 + 5de0: a29a b819 macl %a1,%a3,%a2@\+,%d1,%acc2 + 5de4: a65a b809 macl %a1,%a3,%a2@\+,%a3,%acc1 + 5de8: a6da b819 macl %a1,%a3,%a2@\+,%a3,%acc2 + 5dec: a41a b809 macl %a1,%a3,%a2@\+,%d2,%acc1 + 5df0: a49a b819 macl %a1,%a3,%a2@\+,%d2,%acc2 + 5df4: ae5a b809 macl %a1,%a3,%a2@\+,%sp,%acc1 + 5df8: aeda b819 macl %a1,%a3,%a2@\+,%sp,%acc2 + 5dfc: a21a b829 macl %a1,%a3,%a2@\+&,%d1,%acc1 + 5e00: a29a b839 macl %a1,%a3,%a2@\+&,%d1,%acc2 + 5e04: a65a b829 macl %a1,%a3,%a2@\+&,%a3,%acc1 + 5e08: a6da b839 macl %a1,%a3,%a2@\+&,%a3,%acc2 + 5e0c: a41a b829 macl %a1,%a3,%a2@\+&,%d2,%acc1 + 5e10: a49a b839 macl %a1,%a3,%a2@\+&,%d2,%acc2 + 5e14: ae5a b829 macl %a1,%a3,%a2@\+&,%sp,%acc1 + 5e18: aeda b839 macl %a1,%a3,%a2@\+&,%sp,%acc2 + 5e1c: a22e b809 000a macl %a1,%a3,%fp@\(10\),%d1,%acc1 + 5e22: a2ae b819 000a macl %a1,%a3,%fp@\(10\),%d1,%acc2 + 5e28: a66e b809 000a macl %a1,%a3,%fp@\(10\),%a3,%acc1 + 5e2e: a6ee b819 000a macl %a1,%a3,%fp@\(10\),%a3,%acc2 + 5e34: a42e b809 000a macl %a1,%a3,%fp@\(10\),%d2,%acc1 + 5e3a: a4ae b819 000a macl %a1,%a3,%fp@\(10\),%d2,%acc2 + 5e40: ae6e b809 000a macl %a1,%a3,%fp@\(10\),%sp,%acc1 + 5e46: aeee b819 000a macl %a1,%a3,%fp@\(10\),%sp,%acc2 + 5e4c: a22e b829 000a macl %a1,%a3,%fp@\(10\)&,%d1,%acc1 + 5e52: a2ae b839 000a macl %a1,%a3,%fp@\(10\)&,%d1,%acc2 + 5e58: a66e b829 000a macl %a1,%a3,%fp@\(10\)&,%a3,%acc1 + 5e5e: a6ee b839 000a macl %a1,%a3,%fp@\(10\)&,%a3,%acc2 + 5e64: a42e b829 000a macl %a1,%a3,%fp@\(10\)&,%d2,%acc1 + 5e6a: a4ae b839 000a macl %a1,%a3,%fp@\(10\)&,%d2,%acc2 + 5e70: ae6e b829 000a macl %a1,%a3,%fp@\(10\)&,%sp,%acc1 + 5e76: aeee b839 000a macl %a1,%a3,%fp@\(10\)&,%sp,%acc2 + 5e7c: a221 b809 macl %a1,%a3,%a1@-,%d1,%acc1 + 5e80: a2a1 b819 macl %a1,%a3,%a1@-,%d1,%acc2 + 5e84: a661 b809 macl %a1,%a3,%a1@-,%a3,%acc1 + 5e88: a6e1 b819 macl %a1,%a3,%a1@-,%a3,%acc2 + 5e8c: a421 b809 macl %a1,%a3,%a1@-,%d2,%acc1 + 5e90: a4a1 b819 macl %a1,%a3,%a1@-,%d2,%acc2 + 5e94: ae61 b809 macl %a1,%a3,%a1@-,%sp,%acc1 + 5e98: aee1 b819 macl %a1,%a3,%a1@-,%sp,%acc2 + 5e9c: a221 b829 macl %a1,%a3,%a1@-&,%d1,%acc1 + 5ea0: a2a1 b839 macl %a1,%a3,%a1@-&,%d1,%acc2 + 5ea4: a661 b829 macl %a1,%a3,%a1@-&,%a3,%acc1 + 5ea8: a6e1 b839 macl %a1,%a3,%a1@-&,%a3,%acc2 + 5eac: a421 b829 macl %a1,%a3,%a1@-&,%d2,%acc1 + 5eb0: a4a1 b839 macl %a1,%a3,%a1@-&,%d2,%acc2 + 5eb4: ae61 b829 macl %a1,%a3,%a1@-&,%sp,%acc1 + 5eb8: aee1 b839 macl %a1,%a3,%a1@-&,%sp,%acc2 + 5ebc: a213 ba09 macl %a1,%a3,<<,%a3@,%d1,%acc1 + 5ec0: a293 ba19 macl %a1,%a3,<<,%a3@,%d1,%acc2 + 5ec4: a653 ba09 macl %a1,%a3,<<,%a3@,%a3,%acc1 + 5ec8: a6d3 ba19 macl %a1,%a3,<<,%a3@,%a3,%acc2 + 5ecc: a413 ba09 macl %a1,%a3,<<,%a3@,%d2,%acc1 + 5ed0: a493 ba19 macl %a1,%a3,<<,%a3@,%d2,%acc2 + 5ed4: ae53 ba09 macl %a1,%a3,<<,%a3@,%sp,%acc1 + 5ed8: aed3 ba19 macl %a1,%a3,<<,%a3@,%sp,%acc2 + 5edc: a213 ba29 macl %a1,%a3,<<,%a3@&,%d1,%acc1 + 5ee0: a293 ba39 macl %a1,%a3,<<,%a3@&,%d1,%acc2 + 5ee4: a653 ba29 macl %a1,%a3,<<,%a3@&,%a3,%acc1 + 5ee8: a6d3 ba39 macl %a1,%a3,<<,%a3@&,%a3,%acc2 + 5eec: a413 ba29 macl %a1,%a3,<<,%a3@&,%d2,%acc1 + 5ef0: a493 ba39 macl %a1,%a3,<<,%a3@&,%d2,%acc2 + 5ef4: ae53 ba29 macl %a1,%a3,<<,%a3@&,%sp,%acc1 + 5ef8: aed3 ba39 macl %a1,%a3,<<,%a3@&,%sp,%acc2 + 5efc: a21a ba09 macl %a1,%a3,<<,%a2@\+,%d1,%acc1 + 5f00: a29a ba19 macl %a1,%a3,<<,%a2@\+,%d1,%acc2 + 5f04: a65a ba09 macl %a1,%a3,<<,%a2@\+,%a3,%acc1 + 5f08: a6da ba19 macl %a1,%a3,<<,%a2@\+,%a3,%acc2 + 5f0c: a41a ba09 macl %a1,%a3,<<,%a2@\+,%d2,%acc1 + 5f10: a49a ba19 macl %a1,%a3,<<,%a2@\+,%d2,%acc2 + 5f14: ae5a ba09 macl %a1,%a3,<<,%a2@\+,%sp,%acc1 + 5f18: aeda ba19 macl %a1,%a3,<<,%a2@\+,%sp,%acc2 + 5f1c: a21a ba29 macl %a1,%a3,<<,%a2@\+&,%d1,%acc1 + 5f20: a29a ba39 macl %a1,%a3,<<,%a2@\+&,%d1,%acc2 + 5f24: a65a ba29 macl %a1,%a3,<<,%a2@\+&,%a3,%acc1 + 5f28: a6da ba39 macl %a1,%a3,<<,%a2@\+&,%a3,%acc2 + 5f2c: a41a ba29 macl %a1,%a3,<<,%a2@\+&,%d2,%acc1 + 5f30: a49a ba39 macl %a1,%a3,<<,%a2@\+&,%d2,%acc2 + 5f34: ae5a ba29 macl %a1,%a3,<<,%a2@\+&,%sp,%acc1 + 5f38: aeda ba39 macl %a1,%a3,<<,%a2@\+&,%sp,%acc2 + 5f3c: a22e ba09 000a macl %a1,%a3,<<,%fp@\(10\),%d1,%acc1 + 5f42: a2ae ba19 000a macl %a1,%a3,<<,%fp@\(10\),%d1,%acc2 + 5f48: a66e ba09 000a macl %a1,%a3,<<,%fp@\(10\),%a3,%acc1 + 5f4e: a6ee ba19 000a macl %a1,%a3,<<,%fp@\(10\),%a3,%acc2 + 5f54: a42e ba09 000a macl %a1,%a3,<<,%fp@\(10\),%d2,%acc1 + 5f5a: a4ae ba19 000a macl %a1,%a3,<<,%fp@\(10\),%d2,%acc2 + 5f60: ae6e ba09 000a macl %a1,%a3,<<,%fp@\(10\),%sp,%acc1 + 5f66: aeee ba19 000a macl %a1,%a3,<<,%fp@\(10\),%sp,%acc2 + 5f6c: a22e ba29 000a macl %a1,%a3,<<,%fp@\(10\)&,%d1,%acc1 + 5f72: a2ae ba39 000a macl %a1,%a3,<<,%fp@\(10\)&,%d1,%acc2 + 5f78: a66e ba29 000a macl %a1,%a3,<<,%fp@\(10\)&,%a3,%acc1 + 5f7e: a6ee ba39 000a macl %a1,%a3,<<,%fp@\(10\)&,%a3,%acc2 + 5f84: a42e ba29 000a macl %a1,%a3,<<,%fp@\(10\)&,%d2,%acc1 + 5f8a: a4ae ba39 000a macl %a1,%a3,<<,%fp@\(10\)&,%d2,%acc2 + 5f90: ae6e ba29 000a macl %a1,%a3,<<,%fp@\(10\)&,%sp,%acc1 + 5f96: aeee ba39 000a macl %a1,%a3,<<,%fp@\(10\)&,%sp,%acc2 + 5f9c: a221 ba09 macl %a1,%a3,<<,%a1@-,%d1,%acc1 + 5fa0: a2a1 ba19 macl %a1,%a3,<<,%a1@-,%d1,%acc2 + 5fa4: a661 ba09 macl %a1,%a3,<<,%a1@-,%a3,%acc1 + 5fa8: a6e1 ba19 macl %a1,%a3,<<,%a1@-,%a3,%acc2 + 5fac: a421 ba09 macl %a1,%a3,<<,%a1@-,%d2,%acc1 + 5fb0: a4a1 ba19 macl %a1,%a3,<<,%a1@-,%d2,%acc2 + 5fb4: ae61 ba09 macl %a1,%a3,<<,%a1@-,%sp,%acc1 + 5fb8: aee1 ba19 macl %a1,%a3,<<,%a1@-,%sp,%acc2 + 5fbc: a221 ba29 macl %a1,%a3,<<,%a1@-&,%d1,%acc1 + 5fc0: a2a1 ba39 macl %a1,%a3,<<,%a1@-&,%d1,%acc2 + 5fc4: a661 ba29 macl %a1,%a3,<<,%a1@-&,%a3,%acc1 + 5fc8: a6e1 ba39 macl %a1,%a3,<<,%a1@-&,%a3,%acc2 + 5fcc: a421 ba29 macl %a1,%a3,<<,%a1@-&,%d2,%acc1 + 5fd0: a4a1 ba39 macl %a1,%a3,<<,%a1@-&,%d2,%acc2 + 5fd4: ae61 ba29 macl %a1,%a3,<<,%a1@-&,%sp,%acc1 + 5fd8: aee1 ba39 macl %a1,%a3,<<,%a1@-&,%sp,%acc2 + 5fdc: a213 be09 macl %a1,%a3,>>,%a3@,%d1,%acc1 + 5fe0: a293 be19 macl %a1,%a3,>>,%a3@,%d1,%acc2 + 5fe4: a653 be09 macl %a1,%a3,>>,%a3@,%a3,%acc1 + 5fe8: a6d3 be19 macl %a1,%a3,>>,%a3@,%a3,%acc2 + 5fec: a413 be09 macl %a1,%a3,>>,%a3@,%d2,%acc1 + 5ff0: a493 be19 macl %a1,%a3,>>,%a3@,%d2,%acc2 + 5ff4: ae53 be09 macl %a1,%a3,>>,%a3@,%sp,%acc1 + 5ff8: aed3 be19 macl %a1,%a3,>>,%a3@,%sp,%acc2 + 5ffc: a213 be29 macl %a1,%a3,>>,%a3@&,%d1,%acc1 + 6000: a293 be39 macl %a1,%a3,>>,%a3@&,%d1,%acc2 + 6004: a653 be29 macl %a1,%a3,>>,%a3@&,%a3,%acc1 + 6008: a6d3 be39 macl %a1,%a3,>>,%a3@&,%a3,%acc2 + 600c: a413 be29 macl %a1,%a3,>>,%a3@&,%d2,%acc1 + 6010: a493 be39 macl %a1,%a3,>>,%a3@&,%d2,%acc2 + 6014: ae53 be29 macl %a1,%a3,>>,%a3@&,%sp,%acc1 + 6018: aed3 be39 macl %a1,%a3,>>,%a3@&,%sp,%acc2 + 601c: a21a be09 macl %a1,%a3,>>,%a2@\+,%d1,%acc1 + 6020: a29a be19 macl %a1,%a3,>>,%a2@\+,%d1,%acc2 + 6024: a65a be09 macl %a1,%a3,>>,%a2@\+,%a3,%acc1 + 6028: a6da be19 macl %a1,%a3,>>,%a2@\+,%a3,%acc2 + 602c: a41a be09 macl %a1,%a3,>>,%a2@\+,%d2,%acc1 + 6030: a49a be19 macl %a1,%a3,>>,%a2@\+,%d2,%acc2 + 6034: ae5a be09 macl %a1,%a3,>>,%a2@\+,%sp,%acc1 + 6038: aeda be19 macl %a1,%a3,>>,%a2@\+,%sp,%acc2 + 603c: a21a be29 macl %a1,%a3,>>,%a2@\+&,%d1,%acc1 + 6040: a29a be39 macl %a1,%a3,>>,%a2@\+&,%d1,%acc2 + 6044: a65a be29 macl %a1,%a3,>>,%a2@\+&,%a3,%acc1 + 6048: a6da be39 macl %a1,%a3,>>,%a2@\+&,%a3,%acc2 + 604c: a41a be29 macl %a1,%a3,>>,%a2@\+&,%d2,%acc1 + 6050: a49a be39 macl %a1,%a3,>>,%a2@\+&,%d2,%acc2 + 6054: ae5a be29 macl %a1,%a3,>>,%a2@\+&,%sp,%acc1 + 6058: aeda be39 macl %a1,%a3,>>,%a2@\+&,%sp,%acc2 + 605c: a22e be09 000a macl %a1,%a3,>>,%fp@\(10\),%d1,%acc1 + 6062: a2ae be19 000a macl %a1,%a3,>>,%fp@\(10\),%d1,%acc2 + 6068: a66e be09 000a macl %a1,%a3,>>,%fp@\(10\),%a3,%acc1 + 606e: a6ee be19 000a macl %a1,%a3,>>,%fp@\(10\),%a3,%acc2 + 6074: a42e be09 000a macl %a1,%a3,>>,%fp@\(10\),%d2,%acc1 + 607a: a4ae be19 000a macl %a1,%a3,>>,%fp@\(10\),%d2,%acc2 + 6080: ae6e be09 000a macl %a1,%a3,>>,%fp@\(10\),%sp,%acc1 + 6086: aeee be19 000a macl %a1,%a3,>>,%fp@\(10\),%sp,%acc2 + 608c: a22e be29 000a macl %a1,%a3,>>,%fp@\(10\)&,%d1,%acc1 + 6092: a2ae be39 000a macl %a1,%a3,>>,%fp@\(10\)&,%d1,%acc2 + 6098: a66e be29 000a macl %a1,%a3,>>,%fp@\(10\)&,%a3,%acc1 + 609e: a6ee be39 000a macl %a1,%a3,>>,%fp@\(10\)&,%a3,%acc2 + 60a4: a42e be29 000a macl %a1,%a3,>>,%fp@\(10\)&,%d2,%acc1 + 60aa: a4ae be39 000a macl %a1,%a3,>>,%fp@\(10\)&,%d2,%acc2 + 60b0: ae6e be29 000a macl %a1,%a3,>>,%fp@\(10\)&,%sp,%acc1 + 60b6: aeee be39 000a macl %a1,%a3,>>,%fp@\(10\)&,%sp,%acc2 + 60bc: a221 be09 macl %a1,%a3,>>,%a1@-,%d1,%acc1 + 60c0: a2a1 be19 macl %a1,%a3,>>,%a1@-,%d1,%acc2 + 60c4: a661 be09 macl %a1,%a3,>>,%a1@-,%a3,%acc1 + 60c8: a6e1 be19 macl %a1,%a3,>>,%a1@-,%a3,%acc2 + 60cc: a421 be09 macl %a1,%a3,>>,%a1@-,%d2,%acc1 + 60d0: a4a1 be19 macl %a1,%a3,>>,%a1@-,%d2,%acc2 + 60d4: ae61 be09 macl %a1,%a3,>>,%a1@-,%sp,%acc1 + 60d8: aee1 be19 macl %a1,%a3,>>,%a1@-,%sp,%acc2 + 60dc: a221 be29 macl %a1,%a3,>>,%a1@-&,%d1,%acc1 + 60e0: a2a1 be39 macl %a1,%a3,>>,%a1@-&,%d1,%acc2 + 60e4: a661 be29 macl %a1,%a3,>>,%a1@-&,%a3,%acc1 + 60e8: a6e1 be39 macl %a1,%a3,>>,%a1@-&,%a3,%acc2 + 60ec: a421 be29 macl %a1,%a3,>>,%a1@-&,%d2,%acc1 + 60f0: a4a1 be39 macl %a1,%a3,>>,%a1@-&,%d2,%acc2 + 60f4: ae61 be29 macl %a1,%a3,>>,%a1@-&,%sp,%acc1 + 60f8: aee1 be39 macl %a1,%a3,>>,%a1@-&,%sp,%acc2 + 60fc: a213 ba09 macl %a1,%a3,<<,%a3@,%d1,%acc1 + 6100: a293 ba19 macl %a1,%a3,<<,%a3@,%d1,%acc2 + 6104: a653 ba09 macl %a1,%a3,<<,%a3@,%a3,%acc1 + 6108: a6d3 ba19 macl %a1,%a3,<<,%a3@,%a3,%acc2 + 610c: a413 ba09 macl %a1,%a3,<<,%a3@,%d2,%acc1 + 6110: a493 ba19 macl %a1,%a3,<<,%a3@,%d2,%acc2 + 6114: ae53 ba09 macl %a1,%a3,<<,%a3@,%sp,%acc1 + 6118: aed3 ba19 macl %a1,%a3,<<,%a3@,%sp,%acc2 + 611c: a213 ba29 macl %a1,%a3,<<,%a3@&,%d1,%acc1 + 6120: a293 ba39 macl %a1,%a3,<<,%a3@&,%d1,%acc2 + 6124: a653 ba29 macl %a1,%a3,<<,%a3@&,%a3,%acc1 + 6128: a6d3 ba39 macl %a1,%a3,<<,%a3@&,%a3,%acc2 + 612c: a413 ba29 macl %a1,%a3,<<,%a3@&,%d2,%acc1 + 6130: a493 ba39 macl %a1,%a3,<<,%a3@&,%d2,%acc2 + 6134: ae53 ba29 macl %a1,%a3,<<,%a3@&,%sp,%acc1 + 6138: aed3 ba39 macl %a1,%a3,<<,%a3@&,%sp,%acc2 + 613c: a21a ba09 macl %a1,%a3,<<,%a2@\+,%d1,%acc1 + 6140: a29a ba19 macl %a1,%a3,<<,%a2@\+,%d1,%acc2 + 6144: a65a ba09 macl %a1,%a3,<<,%a2@\+,%a3,%acc1 + 6148: a6da ba19 macl %a1,%a3,<<,%a2@\+,%a3,%acc2 + 614c: a41a ba09 macl %a1,%a3,<<,%a2@\+,%d2,%acc1 + 6150: a49a ba19 macl %a1,%a3,<<,%a2@\+,%d2,%acc2 + 6154: ae5a ba09 macl %a1,%a3,<<,%a2@\+,%sp,%acc1 + 6158: aeda ba19 macl %a1,%a3,<<,%a2@\+,%sp,%acc2 + 615c: a21a ba29 macl %a1,%a3,<<,%a2@\+&,%d1,%acc1 + 6160: a29a ba39 macl %a1,%a3,<<,%a2@\+&,%d1,%acc2 + 6164: a65a ba29 macl %a1,%a3,<<,%a2@\+&,%a3,%acc1 + 6168: a6da ba39 macl %a1,%a3,<<,%a2@\+&,%a3,%acc2 + 616c: a41a ba29 macl %a1,%a3,<<,%a2@\+&,%d2,%acc1 + 6170: a49a ba39 macl %a1,%a3,<<,%a2@\+&,%d2,%acc2 + 6174: ae5a ba29 macl %a1,%a3,<<,%a2@\+&,%sp,%acc1 + 6178: aeda ba39 macl %a1,%a3,<<,%a2@\+&,%sp,%acc2 + 617c: a22e ba09 000a macl %a1,%a3,<<,%fp@\(10\),%d1,%acc1 + 6182: a2ae ba19 000a macl %a1,%a3,<<,%fp@\(10\),%d1,%acc2 + 6188: a66e ba09 000a macl %a1,%a3,<<,%fp@\(10\),%a3,%acc1 + 618e: a6ee ba19 000a macl %a1,%a3,<<,%fp@\(10\),%a3,%acc2 + 6194: a42e ba09 000a macl %a1,%a3,<<,%fp@\(10\),%d2,%acc1 + 619a: a4ae ba19 000a macl %a1,%a3,<<,%fp@\(10\),%d2,%acc2 + 61a0: ae6e ba09 000a macl %a1,%a3,<<,%fp@\(10\),%sp,%acc1 + 61a6: aeee ba19 000a macl %a1,%a3,<<,%fp@\(10\),%sp,%acc2 + 61ac: a22e ba29 000a macl %a1,%a3,<<,%fp@\(10\)&,%d1,%acc1 + 61b2: a2ae ba39 000a macl %a1,%a3,<<,%fp@\(10\)&,%d1,%acc2 + 61b8: a66e ba29 000a macl %a1,%a3,<<,%fp@\(10\)&,%a3,%acc1 + 61be: a6ee ba39 000a macl %a1,%a3,<<,%fp@\(10\)&,%a3,%acc2 + 61c4: a42e ba29 000a macl %a1,%a3,<<,%fp@\(10\)&,%d2,%acc1 + 61ca: a4ae ba39 000a macl %a1,%a3,<<,%fp@\(10\)&,%d2,%acc2 + 61d0: ae6e ba29 000a macl %a1,%a3,<<,%fp@\(10\)&,%sp,%acc1 + 61d6: aeee ba39 000a macl %a1,%a3,<<,%fp@\(10\)&,%sp,%acc2 + 61dc: a221 ba09 macl %a1,%a3,<<,%a1@-,%d1,%acc1 + 61e0: a2a1 ba19 macl %a1,%a3,<<,%a1@-,%d1,%acc2 + 61e4: a661 ba09 macl %a1,%a3,<<,%a1@-,%a3,%acc1 + 61e8: a6e1 ba19 macl %a1,%a3,<<,%a1@-,%a3,%acc2 + 61ec: a421 ba09 macl %a1,%a3,<<,%a1@-,%d2,%acc1 + 61f0: a4a1 ba19 macl %a1,%a3,<<,%a1@-,%d2,%acc2 + 61f4: ae61 ba09 macl %a1,%a3,<<,%a1@-,%sp,%acc1 + 61f8: aee1 ba19 macl %a1,%a3,<<,%a1@-,%sp,%acc2 + 61fc: a221 ba29 macl %a1,%a3,<<,%a1@-&,%d1,%acc1 + 6200: a2a1 ba39 macl %a1,%a3,<<,%a1@-&,%d1,%acc2 + 6204: a661 ba29 macl %a1,%a3,<<,%a1@-&,%a3,%acc1 + 6208: a6e1 ba39 macl %a1,%a3,<<,%a1@-&,%a3,%acc2 + 620c: a421 ba29 macl %a1,%a3,<<,%a1@-&,%d2,%acc1 + 6210: a4a1 ba39 macl %a1,%a3,<<,%a1@-&,%d2,%acc2 + 6214: ae61 ba29 macl %a1,%a3,<<,%a1@-&,%sp,%acc1 + 6218: aee1 ba39 macl %a1,%a3,<<,%a1@-&,%sp,%acc2 + 621c: a213 be09 macl %a1,%a3,>>,%a3@,%d1,%acc1 + 6220: a293 be19 macl %a1,%a3,>>,%a3@,%d1,%acc2 + 6224: a653 be09 macl %a1,%a3,>>,%a3@,%a3,%acc1 + 6228: a6d3 be19 macl %a1,%a3,>>,%a3@,%a3,%acc2 + 622c: a413 be09 macl %a1,%a3,>>,%a3@,%d2,%acc1 + 6230: a493 be19 macl %a1,%a3,>>,%a3@,%d2,%acc2 + 6234: ae53 be09 macl %a1,%a3,>>,%a3@,%sp,%acc1 + 6238: aed3 be19 macl %a1,%a3,>>,%a3@,%sp,%acc2 + 623c: a213 be29 macl %a1,%a3,>>,%a3@&,%d1,%acc1 + 6240: a293 be39 macl %a1,%a3,>>,%a3@&,%d1,%acc2 + 6244: a653 be29 macl %a1,%a3,>>,%a3@&,%a3,%acc1 + 6248: a6d3 be39 macl %a1,%a3,>>,%a3@&,%a3,%acc2 + 624c: a413 be29 macl %a1,%a3,>>,%a3@&,%d2,%acc1 + 6250: a493 be39 macl %a1,%a3,>>,%a3@&,%d2,%acc2 + 6254: ae53 be29 macl %a1,%a3,>>,%a3@&,%sp,%acc1 + 6258: aed3 be39 macl %a1,%a3,>>,%a3@&,%sp,%acc2 + 625c: a21a be09 macl %a1,%a3,>>,%a2@\+,%d1,%acc1 + 6260: a29a be19 macl %a1,%a3,>>,%a2@\+,%d1,%acc2 + 6264: a65a be09 macl %a1,%a3,>>,%a2@\+,%a3,%acc1 + 6268: a6da be19 macl %a1,%a3,>>,%a2@\+,%a3,%acc2 + 626c: a41a be09 macl %a1,%a3,>>,%a2@\+,%d2,%acc1 + 6270: a49a be19 macl %a1,%a3,>>,%a2@\+,%d2,%acc2 + 6274: ae5a be09 macl %a1,%a3,>>,%a2@\+,%sp,%acc1 + 6278: aeda be19 macl %a1,%a3,>>,%a2@\+,%sp,%acc2 + 627c: a21a be29 macl %a1,%a3,>>,%a2@\+&,%d1,%acc1 + 6280: a29a be39 macl %a1,%a3,>>,%a2@\+&,%d1,%acc2 + 6284: a65a be29 macl %a1,%a3,>>,%a2@\+&,%a3,%acc1 + 6288: a6da be39 macl %a1,%a3,>>,%a2@\+&,%a3,%acc2 + 628c: a41a be29 macl %a1,%a3,>>,%a2@\+&,%d2,%acc1 + 6290: a49a be39 macl %a1,%a3,>>,%a2@\+&,%d2,%acc2 + 6294: ae5a be29 macl %a1,%a3,>>,%a2@\+&,%sp,%acc1 + 6298: aeda be39 macl %a1,%a3,>>,%a2@\+&,%sp,%acc2 + 629c: a22e be09 000a macl %a1,%a3,>>,%fp@\(10\),%d1,%acc1 + 62a2: a2ae be19 000a macl %a1,%a3,>>,%fp@\(10\),%d1,%acc2 + 62a8: a66e be09 000a macl %a1,%a3,>>,%fp@\(10\),%a3,%acc1 + 62ae: a6ee be19 000a macl %a1,%a3,>>,%fp@\(10\),%a3,%acc2 + 62b4: a42e be09 000a macl %a1,%a3,>>,%fp@\(10\),%d2,%acc1 + 62ba: a4ae be19 000a macl %a1,%a3,>>,%fp@\(10\),%d2,%acc2 + 62c0: ae6e be09 000a macl %a1,%a3,>>,%fp@\(10\),%sp,%acc1 + 62c6: aeee be19 000a macl %a1,%a3,>>,%fp@\(10\),%sp,%acc2 + 62cc: a22e be29 000a macl %a1,%a3,>>,%fp@\(10\)&,%d1,%acc1 + 62d2: a2ae be39 000a macl %a1,%a3,>>,%fp@\(10\)&,%d1,%acc2 + 62d8: a66e be29 000a macl %a1,%a3,>>,%fp@\(10\)&,%a3,%acc1 + 62de: a6ee be39 000a macl %a1,%a3,>>,%fp@\(10\)&,%a3,%acc2 + 62e4: a42e be29 000a macl %a1,%a3,>>,%fp@\(10\)&,%d2,%acc1 + 62ea: a4ae be39 000a macl %a1,%a3,>>,%fp@\(10\)&,%d2,%acc2 + 62f0: ae6e be29 000a macl %a1,%a3,>>,%fp@\(10\)&,%sp,%acc1 + 62f6: aeee be39 000a macl %a1,%a3,>>,%fp@\(10\)&,%sp,%acc2 + 62fc: a221 be09 macl %a1,%a3,>>,%a1@-,%d1,%acc1 + 6300: a2a1 be19 macl %a1,%a3,>>,%a1@-,%d1,%acc2 + 6304: a661 be09 macl %a1,%a3,>>,%a1@-,%a3,%acc1 + 6308: a6e1 be19 macl %a1,%a3,>>,%a1@-,%a3,%acc2 + 630c: a421 be09 macl %a1,%a3,>>,%a1@-,%d2,%acc1 + 6310: a4a1 be19 macl %a1,%a3,>>,%a1@-,%d2,%acc2 + 6314: ae61 be09 macl %a1,%a3,>>,%a1@-,%sp,%acc1 + 6318: aee1 be19 macl %a1,%a3,>>,%a1@-,%sp,%acc2 + 631c: a221 be29 macl %a1,%a3,>>,%a1@-&,%d1,%acc1 + 6320: a2a1 be39 macl %a1,%a3,>>,%a1@-&,%d1,%acc2 + 6324: a661 be29 macl %a1,%a3,>>,%a1@-&,%a3,%acc1 + 6328: a6e1 be39 macl %a1,%a3,>>,%a1@-&,%a3,%acc2 + 632c: a421 be29 macl %a1,%a3,>>,%a1@-&,%d2,%acc1 + 6330: a4a1 be39 macl %a1,%a3,>>,%a1@-&,%d2,%acc2 + 6334: ae61 be29 macl %a1,%a3,>>,%a1@-&,%sp,%acc1 + 6338: aee1 be39 macl %a1,%a3,>>,%a1@-&,%sp,%acc2 + 633c: a213 4809 macl %a1,%d4,%a3@,%d1,%acc1 + 6340: a293 4819 macl %a1,%d4,%a3@,%d1,%acc2 + 6344: a653 4809 macl %a1,%d4,%a3@,%a3,%acc1 + 6348: a6d3 4819 macl %a1,%d4,%a3@,%a3,%acc2 + 634c: a413 4809 macl %a1,%d4,%a3@,%d2,%acc1 + 6350: a493 4819 macl %a1,%d4,%a3@,%d2,%acc2 + 6354: ae53 4809 macl %a1,%d4,%a3@,%sp,%acc1 + 6358: aed3 4819 macl %a1,%d4,%a3@,%sp,%acc2 + 635c: a213 4829 macl %a1,%d4,%a3@&,%d1,%acc1 + 6360: a293 4839 macl %a1,%d4,%a3@&,%d1,%acc2 + 6364: a653 4829 macl %a1,%d4,%a3@&,%a3,%acc1 + 6368: a6d3 4839 macl %a1,%d4,%a3@&,%a3,%acc2 + 636c: a413 4829 macl %a1,%d4,%a3@&,%d2,%acc1 + 6370: a493 4839 macl %a1,%d4,%a3@&,%d2,%acc2 + 6374: ae53 4829 macl %a1,%d4,%a3@&,%sp,%acc1 + 6378: aed3 4839 macl %a1,%d4,%a3@&,%sp,%acc2 + 637c: a21a 4809 macl %a1,%d4,%a2@\+,%d1,%acc1 + 6380: a29a 4819 macl %a1,%d4,%a2@\+,%d1,%acc2 + 6384: a65a 4809 macl %a1,%d4,%a2@\+,%a3,%acc1 + 6388: a6da 4819 macl %a1,%d4,%a2@\+,%a3,%acc2 + 638c: a41a 4809 macl %a1,%d4,%a2@\+,%d2,%acc1 + 6390: a49a 4819 macl %a1,%d4,%a2@\+,%d2,%acc2 + 6394: ae5a 4809 macl %a1,%d4,%a2@\+,%sp,%acc1 + 6398: aeda 4819 macl %a1,%d4,%a2@\+,%sp,%acc2 + 639c: a21a 4829 macl %a1,%d4,%a2@\+&,%d1,%acc1 + 63a0: a29a 4839 macl %a1,%d4,%a2@\+&,%d1,%acc2 + 63a4: a65a 4829 macl %a1,%d4,%a2@\+&,%a3,%acc1 + 63a8: a6da 4839 macl %a1,%d4,%a2@\+&,%a3,%acc2 + 63ac: a41a 4829 macl %a1,%d4,%a2@\+&,%d2,%acc1 + 63b0: a49a 4839 macl %a1,%d4,%a2@\+&,%d2,%acc2 + 63b4: ae5a 4829 macl %a1,%d4,%a2@\+&,%sp,%acc1 + 63b8: aeda 4839 macl %a1,%d4,%a2@\+&,%sp,%acc2 + 63bc: a22e 4809 000a macl %a1,%d4,%fp@\(10\),%d1,%acc1 + 63c2: a2ae 4819 000a macl %a1,%d4,%fp@\(10\),%d1,%acc2 + 63c8: a66e 4809 000a macl %a1,%d4,%fp@\(10\),%a3,%acc1 + 63ce: a6ee 4819 000a macl %a1,%d4,%fp@\(10\),%a3,%acc2 + 63d4: a42e 4809 000a macl %a1,%d4,%fp@\(10\),%d2,%acc1 + 63da: a4ae 4819 000a macl %a1,%d4,%fp@\(10\),%d2,%acc2 + 63e0: ae6e 4809 000a macl %a1,%d4,%fp@\(10\),%sp,%acc1 + 63e6: aeee 4819 000a macl %a1,%d4,%fp@\(10\),%sp,%acc2 + 63ec: a22e 4829 000a macl %a1,%d4,%fp@\(10\)&,%d1,%acc1 + 63f2: a2ae 4839 000a macl %a1,%d4,%fp@\(10\)&,%d1,%acc2 + 63f8: a66e 4829 000a macl %a1,%d4,%fp@\(10\)&,%a3,%acc1 + 63fe: a6ee 4839 000a macl %a1,%d4,%fp@\(10\)&,%a3,%acc2 + 6404: a42e 4829 000a macl %a1,%d4,%fp@\(10\)&,%d2,%acc1 + 640a: a4ae 4839 000a macl %a1,%d4,%fp@\(10\)&,%d2,%acc2 + 6410: ae6e 4829 000a macl %a1,%d4,%fp@\(10\)&,%sp,%acc1 + 6416: aeee 4839 000a macl %a1,%d4,%fp@\(10\)&,%sp,%acc2 + 641c: a221 4809 macl %a1,%d4,%a1@-,%d1,%acc1 + 6420: a2a1 4819 macl %a1,%d4,%a1@-,%d1,%acc2 + 6424: a661 4809 macl %a1,%d4,%a1@-,%a3,%acc1 + 6428: a6e1 4819 macl %a1,%d4,%a1@-,%a3,%acc2 + 642c: a421 4809 macl %a1,%d4,%a1@-,%d2,%acc1 + 6430: a4a1 4819 macl %a1,%d4,%a1@-,%d2,%acc2 + 6434: ae61 4809 macl %a1,%d4,%a1@-,%sp,%acc1 + 6438: aee1 4819 macl %a1,%d4,%a1@-,%sp,%acc2 + 643c: a221 4829 macl %a1,%d4,%a1@-&,%d1,%acc1 + 6440: a2a1 4839 macl %a1,%d4,%a1@-&,%d1,%acc2 + 6444: a661 4829 macl %a1,%d4,%a1@-&,%a3,%acc1 + 6448: a6e1 4839 macl %a1,%d4,%a1@-&,%a3,%acc2 + 644c: a421 4829 macl %a1,%d4,%a1@-&,%d2,%acc1 + 6450: a4a1 4839 macl %a1,%d4,%a1@-&,%d2,%acc2 + 6454: ae61 4829 macl %a1,%d4,%a1@-&,%sp,%acc1 + 6458: aee1 4839 macl %a1,%d4,%a1@-&,%sp,%acc2 + 645c: a213 4a09 macl %a1,%d4,<<,%a3@,%d1,%acc1 + 6460: a293 4a19 macl %a1,%d4,<<,%a3@,%d1,%acc2 + 6464: a653 4a09 macl %a1,%d4,<<,%a3@,%a3,%acc1 + 6468: a6d3 4a19 macl %a1,%d4,<<,%a3@,%a3,%acc2 + 646c: a413 4a09 macl %a1,%d4,<<,%a3@,%d2,%acc1 + 6470: a493 4a19 macl %a1,%d4,<<,%a3@,%d2,%acc2 + 6474: ae53 4a09 macl %a1,%d4,<<,%a3@,%sp,%acc1 + 6478: aed3 4a19 macl %a1,%d4,<<,%a3@,%sp,%acc2 + 647c: a213 4a29 macl %a1,%d4,<<,%a3@&,%d1,%acc1 + 6480: a293 4a39 macl %a1,%d4,<<,%a3@&,%d1,%acc2 + 6484: a653 4a29 macl %a1,%d4,<<,%a3@&,%a3,%acc1 + 6488: a6d3 4a39 macl %a1,%d4,<<,%a3@&,%a3,%acc2 + 648c: a413 4a29 macl %a1,%d4,<<,%a3@&,%d2,%acc1 + 6490: a493 4a39 macl %a1,%d4,<<,%a3@&,%d2,%acc2 + 6494: ae53 4a29 macl %a1,%d4,<<,%a3@&,%sp,%acc1 + 6498: aed3 4a39 macl %a1,%d4,<<,%a3@&,%sp,%acc2 + 649c: a21a 4a09 macl %a1,%d4,<<,%a2@\+,%d1,%acc1 + 64a0: a29a 4a19 macl %a1,%d4,<<,%a2@\+,%d1,%acc2 + 64a4: a65a 4a09 macl %a1,%d4,<<,%a2@\+,%a3,%acc1 + 64a8: a6da 4a19 macl %a1,%d4,<<,%a2@\+,%a3,%acc2 + 64ac: a41a 4a09 macl %a1,%d4,<<,%a2@\+,%d2,%acc1 + 64b0: a49a 4a19 macl %a1,%d4,<<,%a2@\+,%d2,%acc2 + 64b4: ae5a 4a09 macl %a1,%d4,<<,%a2@\+,%sp,%acc1 + 64b8: aeda 4a19 macl %a1,%d4,<<,%a2@\+,%sp,%acc2 + 64bc: a21a 4a29 macl %a1,%d4,<<,%a2@\+&,%d1,%acc1 + 64c0: a29a 4a39 macl %a1,%d4,<<,%a2@\+&,%d1,%acc2 + 64c4: a65a 4a29 macl %a1,%d4,<<,%a2@\+&,%a3,%acc1 + 64c8: a6da 4a39 macl %a1,%d4,<<,%a2@\+&,%a3,%acc2 + 64cc: a41a 4a29 macl %a1,%d4,<<,%a2@\+&,%d2,%acc1 + 64d0: a49a 4a39 macl %a1,%d4,<<,%a2@\+&,%d2,%acc2 + 64d4: ae5a 4a29 macl %a1,%d4,<<,%a2@\+&,%sp,%acc1 + 64d8: aeda 4a39 macl %a1,%d4,<<,%a2@\+&,%sp,%acc2 + 64dc: a22e 4a09 000a macl %a1,%d4,<<,%fp@\(10\),%d1,%acc1 + 64e2: a2ae 4a19 000a macl %a1,%d4,<<,%fp@\(10\),%d1,%acc2 + 64e8: a66e 4a09 000a macl %a1,%d4,<<,%fp@\(10\),%a3,%acc1 + 64ee: a6ee 4a19 000a macl %a1,%d4,<<,%fp@\(10\),%a3,%acc2 + 64f4: a42e 4a09 000a macl %a1,%d4,<<,%fp@\(10\),%d2,%acc1 + 64fa: a4ae 4a19 000a macl %a1,%d4,<<,%fp@\(10\),%d2,%acc2 + 6500: ae6e 4a09 000a macl %a1,%d4,<<,%fp@\(10\),%sp,%acc1 + 6506: aeee 4a19 000a macl %a1,%d4,<<,%fp@\(10\),%sp,%acc2 + 650c: a22e 4a29 000a macl %a1,%d4,<<,%fp@\(10\)&,%d1,%acc1 + 6512: a2ae 4a39 000a macl %a1,%d4,<<,%fp@\(10\)&,%d1,%acc2 + 6518: a66e 4a29 000a macl %a1,%d4,<<,%fp@\(10\)&,%a3,%acc1 + 651e: a6ee 4a39 000a macl %a1,%d4,<<,%fp@\(10\)&,%a3,%acc2 + 6524: a42e 4a29 000a macl %a1,%d4,<<,%fp@\(10\)&,%d2,%acc1 + 652a: a4ae 4a39 000a macl %a1,%d4,<<,%fp@\(10\)&,%d2,%acc2 + 6530: ae6e 4a29 000a macl %a1,%d4,<<,%fp@\(10\)&,%sp,%acc1 + 6536: aeee 4a39 000a macl %a1,%d4,<<,%fp@\(10\)&,%sp,%acc2 + 653c: a221 4a09 macl %a1,%d4,<<,%a1@-,%d1,%acc1 + 6540: a2a1 4a19 macl %a1,%d4,<<,%a1@-,%d1,%acc2 + 6544: a661 4a09 macl %a1,%d4,<<,%a1@-,%a3,%acc1 + 6548: a6e1 4a19 macl %a1,%d4,<<,%a1@-,%a3,%acc2 + 654c: a421 4a09 macl %a1,%d4,<<,%a1@-,%d2,%acc1 + 6550: a4a1 4a19 macl %a1,%d4,<<,%a1@-,%d2,%acc2 + 6554: ae61 4a09 macl %a1,%d4,<<,%a1@-,%sp,%acc1 + 6558: aee1 4a19 macl %a1,%d4,<<,%a1@-,%sp,%acc2 + 655c: a221 4a29 macl %a1,%d4,<<,%a1@-&,%d1,%acc1 + 6560: a2a1 4a39 macl %a1,%d4,<<,%a1@-&,%d1,%acc2 + 6564: a661 4a29 macl %a1,%d4,<<,%a1@-&,%a3,%acc1 + 6568: a6e1 4a39 macl %a1,%d4,<<,%a1@-&,%a3,%acc2 + 656c: a421 4a29 macl %a1,%d4,<<,%a1@-&,%d2,%acc1 + 6570: a4a1 4a39 macl %a1,%d4,<<,%a1@-&,%d2,%acc2 + 6574: ae61 4a29 macl %a1,%d4,<<,%a1@-&,%sp,%acc1 + 6578: aee1 4a39 macl %a1,%d4,<<,%a1@-&,%sp,%acc2 + 657c: a213 4e09 macl %a1,%d4,>>,%a3@,%d1,%acc1 + 6580: a293 4e19 macl %a1,%d4,>>,%a3@,%d1,%acc2 + 6584: a653 4e09 macl %a1,%d4,>>,%a3@,%a3,%acc1 + 6588: a6d3 4e19 macl %a1,%d4,>>,%a3@,%a3,%acc2 + 658c: a413 4e09 macl %a1,%d4,>>,%a3@,%d2,%acc1 + 6590: a493 4e19 macl %a1,%d4,>>,%a3@,%d2,%acc2 + 6594: ae53 4e09 macl %a1,%d4,>>,%a3@,%sp,%acc1 + 6598: aed3 4e19 macl %a1,%d4,>>,%a3@,%sp,%acc2 + 659c: a213 4e29 macl %a1,%d4,>>,%a3@&,%d1,%acc1 + 65a0: a293 4e39 macl %a1,%d4,>>,%a3@&,%d1,%acc2 + 65a4: a653 4e29 macl %a1,%d4,>>,%a3@&,%a3,%acc1 + 65a8: a6d3 4e39 macl %a1,%d4,>>,%a3@&,%a3,%acc2 + 65ac: a413 4e29 macl %a1,%d4,>>,%a3@&,%d2,%acc1 + 65b0: a493 4e39 macl %a1,%d4,>>,%a3@&,%d2,%acc2 + 65b4: ae53 4e29 macl %a1,%d4,>>,%a3@&,%sp,%acc1 + 65b8: aed3 4e39 macl %a1,%d4,>>,%a3@&,%sp,%acc2 + 65bc: a21a 4e09 macl %a1,%d4,>>,%a2@\+,%d1,%acc1 + 65c0: a29a 4e19 macl %a1,%d4,>>,%a2@\+,%d1,%acc2 + 65c4: a65a 4e09 macl %a1,%d4,>>,%a2@\+,%a3,%acc1 + 65c8: a6da 4e19 macl %a1,%d4,>>,%a2@\+,%a3,%acc2 + 65cc: a41a 4e09 macl %a1,%d4,>>,%a2@\+,%d2,%acc1 + 65d0: a49a 4e19 macl %a1,%d4,>>,%a2@\+,%d2,%acc2 + 65d4: ae5a 4e09 macl %a1,%d4,>>,%a2@\+,%sp,%acc1 + 65d8: aeda 4e19 macl %a1,%d4,>>,%a2@\+,%sp,%acc2 + 65dc: a21a 4e29 macl %a1,%d4,>>,%a2@\+&,%d1,%acc1 + 65e0: a29a 4e39 macl %a1,%d4,>>,%a2@\+&,%d1,%acc2 + 65e4: a65a 4e29 macl %a1,%d4,>>,%a2@\+&,%a3,%acc1 + 65e8: a6da 4e39 macl %a1,%d4,>>,%a2@\+&,%a3,%acc2 + 65ec: a41a 4e29 macl %a1,%d4,>>,%a2@\+&,%d2,%acc1 + 65f0: a49a 4e39 macl %a1,%d4,>>,%a2@\+&,%d2,%acc2 + 65f4: ae5a 4e29 macl %a1,%d4,>>,%a2@\+&,%sp,%acc1 + 65f8: aeda 4e39 macl %a1,%d4,>>,%a2@\+&,%sp,%acc2 + 65fc: a22e 4e09 000a macl %a1,%d4,>>,%fp@\(10\),%d1,%acc1 + 6602: a2ae 4e19 000a macl %a1,%d4,>>,%fp@\(10\),%d1,%acc2 + 6608: a66e 4e09 000a macl %a1,%d4,>>,%fp@\(10\),%a3,%acc1 + 660e: a6ee 4e19 000a macl %a1,%d4,>>,%fp@\(10\),%a3,%acc2 + 6614: a42e 4e09 000a macl %a1,%d4,>>,%fp@\(10\),%d2,%acc1 + 661a: a4ae 4e19 000a macl %a1,%d4,>>,%fp@\(10\),%d2,%acc2 + 6620: ae6e 4e09 000a macl %a1,%d4,>>,%fp@\(10\),%sp,%acc1 + 6626: aeee 4e19 000a macl %a1,%d4,>>,%fp@\(10\),%sp,%acc2 + 662c: a22e 4e29 000a macl %a1,%d4,>>,%fp@\(10\)&,%d1,%acc1 + 6632: a2ae 4e39 000a macl %a1,%d4,>>,%fp@\(10\)&,%d1,%acc2 + 6638: a66e 4e29 000a macl %a1,%d4,>>,%fp@\(10\)&,%a3,%acc1 + 663e: a6ee 4e39 000a macl %a1,%d4,>>,%fp@\(10\)&,%a3,%acc2 + 6644: a42e 4e29 000a macl %a1,%d4,>>,%fp@\(10\)&,%d2,%acc1 + 664a: a4ae 4e39 000a macl %a1,%d4,>>,%fp@\(10\)&,%d2,%acc2 + 6650: ae6e 4e29 000a macl %a1,%d4,>>,%fp@\(10\)&,%sp,%acc1 + 6656: aeee 4e39 000a macl %a1,%d4,>>,%fp@\(10\)&,%sp,%acc2 + 665c: a221 4e09 macl %a1,%d4,>>,%a1@-,%d1,%acc1 + 6660: a2a1 4e19 macl %a1,%d4,>>,%a1@-,%d1,%acc2 + 6664: a661 4e09 macl %a1,%d4,>>,%a1@-,%a3,%acc1 + 6668: a6e1 4e19 macl %a1,%d4,>>,%a1@-,%a3,%acc2 + 666c: a421 4e09 macl %a1,%d4,>>,%a1@-,%d2,%acc1 + 6670: a4a1 4e19 macl %a1,%d4,>>,%a1@-,%d2,%acc2 + 6674: ae61 4e09 macl %a1,%d4,>>,%a1@-,%sp,%acc1 + 6678: aee1 4e19 macl %a1,%d4,>>,%a1@-,%sp,%acc2 + 667c: a221 4e29 macl %a1,%d4,>>,%a1@-&,%d1,%acc1 + 6680: a2a1 4e39 macl %a1,%d4,>>,%a1@-&,%d1,%acc2 + 6684: a661 4e29 macl %a1,%d4,>>,%a1@-&,%a3,%acc1 + 6688: a6e1 4e39 macl %a1,%d4,>>,%a1@-&,%a3,%acc2 + 668c: a421 4e29 macl %a1,%d4,>>,%a1@-&,%d2,%acc1 + 6690: a4a1 4e39 macl %a1,%d4,>>,%a1@-&,%d2,%acc2 + 6694: ae61 4e29 macl %a1,%d4,>>,%a1@-&,%sp,%acc1 + 6698: aee1 4e39 macl %a1,%d4,>>,%a1@-&,%sp,%acc2 + 669c: a213 4a09 macl %a1,%d4,<<,%a3@,%d1,%acc1 + 66a0: a293 4a19 macl %a1,%d4,<<,%a3@,%d1,%acc2 + 66a4: a653 4a09 macl %a1,%d4,<<,%a3@,%a3,%acc1 + 66a8: a6d3 4a19 macl %a1,%d4,<<,%a3@,%a3,%acc2 + 66ac: a413 4a09 macl %a1,%d4,<<,%a3@,%d2,%acc1 + 66b0: a493 4a19 macl %a1,%d4,<<,%a3@,%d2,%acc2 + 66b4: ae53 4a09 macl %a1,%d4,<<,%a3@,%sp,%acc1 + 66b8: aed3 4a19 macl %a1,%d4,<<,%a3@,%sp,%acc2 + 66bc: a213 4a29 macl %a1,%d4,<<,%a3@&,%d1,%acc1 + 66c0: a293 4a39 macl %a1,%d4,<<,%a3@&,%d1,%acc2 + 66c4: a653 4a29 macl %a1,%d4,<<,%a3@&,%a3,%acc1 + 66c8: a6d3 4a39 macl %a1,%d4,<<,%a3@&,%a3,%acc2 + 66cc: a413 4a29 macl %a1,%d4,<<,%a3@&,%d2,%acc1 + 66d0: a493 4a39 macl %a1,%d4,<<,%a3@&,%d2,%acc2 + 66d4: ae53 4a29 macl %a1,%d4,<<,%a3@&,%sp,%acc1 + 66d8: aed3 4a39 macl %a1,%d4,<<,%a3@&,%sp,%acc2 + 66dc: a21a 4a09 macl %a1,%d4,<<,%a2@\+,%d1,%acc1 + 66e0: a29a 4a19 macl %a1,%d4,<<,%a2@\+,%d1,%acc2 + 66e4: a65a 4a09 macl %a1,%d4,<<,%a2@\+,%a3,%acc1 + 66e8: a6da 4a19 macl %a1,%d4,<<,%a2@\+,%a3,%acc2 + 66ec: a41a 4a09 macl %a1,%d4,<<,%a2@\+,%d2,%acc1 + 66f0: a49a 4a19 macl %a1,%d4,<<,%a2@\+,%d2,%acc2 + 66f4: ae5a 4a09 macl %a1,%d4,<<,%a2@\+,%sp,%acc1 + 66f8: aeda 4a19 macl %a1,%d4,<<,%a2@\+,%sp,%acc2 + 66fc: a21a 4a29 macl %a1,%d4,<<,%a2@\+&,%d1,%acc1 + 6700: a29a 4a39 macl %a1,%d4,<<,%a2@\+&,%d1,%acc2 + 6704: a65a 4a29 macl %a1,%d4,<<,%a2@\+&,%a3,%acc1 + 6708: a6da 4a39 macl %a1,%d4,<<,%a2@\+&,%a3,%acc2 + 670c: a41a 4a29 macl %a1,%d4,<<,%a2@\+&,%d2,%acc1 + 6710: a49a 4a39 macl %a1,%d4,<<,%a2@\+&,%d2,%acc2 + 6714: ae5a 4a29 macl %a1,%d4,<<,%a2@\+&,%sp,%acc1 + 6718: aeda 4a39 macl %a1,%d4,<<,%a2@\+&,%sp,%acc2 + 671c: a22e 4a09 000a macl %a1,%d4,<<,%fp@\(10\),%d1,%acc1 + 6722: a2ae 4a19 000a macl %a1,%d4,<<,%fp@\(10\),%d1,%acc2 + 6728: a66e 4a09 000a macl %a1,%d4,<<,%fp@\(10\),%a3,%acc1 + 672e: a6ee 4a19 000a macl %a1,%d4,<<,%fp@\(10\),%a3,%acc2 + 6734: a42e 4a09 000a macl %a1,%d4,<<,%fp@\(10\),%d2,%acc1 + 673a: a4ae 4a19 000a macl %a1,%d4,<<,%fp@\(10\),%d2,%acc2 + 6740: ae6e 4a09 000a macl %a1,%d4,<<,%fp@\(10\),%sp,%acc1 + 6746: aeee 4a19 000a macl %a1,%d4,<<,%fp@\(10\),%sp,%acc2 + 674c: a22e 4a29 000a macl %a1,%d4,<<,%fp@\(10\)&,%d1,%acc1 + 6752: a2ae 4a39 000a macl %a1,%d4,<<,%fp@\(10\)&,%d1,%acc2 + 6758: a66e 4a29 000a macl %a1,%d4,<<,%fp@\(10\)&,%a3,%acc1 + 675e: a6ee 4a39 000a macl %a1,%d4,<<,%fp@\(10\)&,%a3,%acc2 + 6764: a42e 4a29 000a macl %a1,%d4,<<,%fp@\(10\)&,%d2,%acc1 + 676a: a4ae 4a39 000a macl %a1,%d4,<<,%fp@\(10\)&,%d2,%acc2 + 6770: ae6e 4a29 000a macl %a1,%d4,<<,%fp@\(10\)&,%sp,%acc1 + 6776: aeee 4a39 000a macl %a1,%d4,<<,%fp@\(10\)&,%sp,%acc2 + 677c: a221 4a09 macl %a1,%d4,<<,%a1@-,%d1,%acc1 + 6780: a2a1 4a19 macl %a1,%d4,<<,%a1@-,%d1,%acc2 + 6784: a661 4a09 macl %a1,%d4,<<,%a1@-,%a3,%acc1 + 6788: a6e1 4a19 macl %a1,%d4,<<,%a1@-,%a3,%acc2 + 678c: a421 4a09 macl %a1,%d4,<<,%a1@-,%d2,%acc1 + 6790: a4a1 4a19 macl %a1,%d4,<<,%a1@-,%d2,%acc2 + 6794: ae61 4a09 macl %a1,%d4,<<,%a1@-,%sp,%acc1 + 6798: aee1 4a19 macl %a1,%d4,<<,%a1@-,%sp,%acc2 + 679c: a221 4a29 macl %a1,%d4,<<,%a1@-&,%d1,%acc1 + 67a0: a2a1 4a39 macl %a1,%d4,<<,%a1@-&,%d1,%acc2 + 67a4: a661 4a29 macl %a1,%d4,<<,%a1@-&,%a3,%acc1 + 67a8: a6e1 4a39 macl %a1,%d4,<<,%a1@-&,%a3,%acc2 + 67ac: a421 4a29 macl %a1,%d4,<<,%a1@-&,%d2,%acc1 + 67b0: a4a1 4a39 macl %a1,%d4,<<,%a1@-&,%d2,%acc2 + 67b4: ae61 4a29 macl %a1,%d4,<<,%a1@-&,%sp,%acc1 + 67b8: aee1 4a39 macl %a1,%d4,<<,%a1@-&,%sp,%acc2 + 67bc: a213 4e09 macl %a1,%d4,>>,%a3@,%d1,%acc1 + 67c0: a293 4e19 macl %a1,%d4,>>,%a3@,%d1,%acc2 + 67c4: a653 4e09 macl %a1,%d4,>>,%a3@,%a3,%acc1 + 67c8: a6d3 4e19 macl %a1,%d4,>>,%a3@,%a3,%acc2 + 67cc: a413 4e09 macl %a1,%d4,>>,%a3@,%d2,%acc1 + 67d0: a493 4e19 macl %a1,%d4,>>,%a3@,%d2,%acc2 + 67d4: ae53 4e09 macl %a1,%d4,>>,%a3@,%sp,%acc1 + 67d8: aed3 4e19 macl %a1,%d4,>>,%a3@,%sp,%acc2 + 67dc: a213 4e29 macl %a1,%d4,>>,%a3@&,%d1,%acc1 + 67e0: a293 4e39 macl %a1,%d4,>>,%a3@&,%d1,%acc2 + 67e4: a653 4e29 macl %a1,%d4,>>,%a3@&,%a3,%acc1 + 67e8: a6d3 4e39 macl %a1,%d4,>>,%a3@&,%a3,%acc2 + 67ec: a413 4e29 macl %a1,%d4,>>,%a3@&,%d2,%acc1 + 67f0: a493 4e39 macl %a1,%d4,>>,%a3@&,%d2,%acc2 + 67f4: ae53 4e29 macl %a1,%d4,>>,%a3@&,%sp,%acc1 + 67f8: aed3 4e39 macl %a1,%d4,>>,%a3@&,%sp,%acc2 + 67fc: a21a 4e09 macl %a1,%d4,>>,%a2@\+,%d1,%acc1 + 6800: a29a 4e19 macl %a1,%d4,>>,%a2@\+,%d1,%acc2 + 6804: a65a 4e09 macl %a1,%d4,>>,%a2@\+,%a3,%acc1 + 6808: a6da 4e19 macl %a1,%d4,>>,%a2@\+,%a3,%acc2 + 680c: a41a 4e09 macl %a1,%d4,>>,%a2@\+,%d2,%acc1 + 6810: a49a 4e19 macl %a1,%d4,>>,%a2@\+,%d2,%acc2 + 6814: ae5a 4e09 macl %a1,%d4,>>,%a2@\+,%sp,%acc1 + 6818: aeda 4e19 macl %a1,%d4,>>,%a2@\+,%sp,%acc2 + 681c: a21a 4e29 macl %a1,%d4,>>,%a2@\+&,%d1,%acc1 + 6820: a29a 4e39 macl %a1,%d4,>>,%a2@\+&,%d1,%acc2 + 6824: a65a 4e29 macl %a1,%d4,>>,%a2@\+&,%a3,%acc1 + 6828: a6da 4e39 macl %a1,%d4,>>,%a2@\+&,%a3,%acc2 + 682c: a41a 4e29 macl %a1,%d4,>>,%a2@\+&,%d2,%acc1 + 6830: a49a 4e39 macl %a1,%d4,>>,%a2@\+&,%d2,%acc2 + 6834: ae5a 4e29 macl %a1,%d4,>>,%a2@\+&,%sp,%acc1 + 6838: aeda 4e39 macl %a1,%d4,>>,%a2@\+&,%sp,%acc2 + 683c: a22e 4e09 000a macl %a1,%d4,>>,%fp@\(10\),%d1,%acc1 + 6842: a2ae 4e19 000a macl %a1,%d4,>>,%fp@\(10\),%d1,%acc2 + 6848: a66e 4e09 000a macl %a1,%d4,>>,%fp@\(10\),%a3,%acc1 + 684e: a6ee 4e19 000a macl %a1,%d4,>>,%fp@\(10\),%a3,%acc2 + 6854: a42e 4e09 000a macl %a1,%d4,>>,%fp@\(10\),%d2,%acc1 + 685a: a4ae 4e19 000a macl %a1,%d4,>>,%fp@\(10\),%d2,%acc2 + 6860: ae6e 4e09 000a macl %a1,%d4,>>,%fp@\(10\),%sp,%acc1 + 6866: aeee 4e19 000a macl %a1,%d4,>>,%fp@\(10\),%sp,%acc2 + 686c: a22e 4e29 000a macl %a1,%d4,>>,%fp@\(10\)&,%d1,%acc1 + 6872: a2ae 4e39 000a macl %a1,%d4,>>,%fp@\(10\)&,%d1,%acc2 + 6878: a66e 4e29 000a macl %a1,%d4,>>,%fp@\(10\)&,%a3,%acc1 + 687e: a6ee 4e39 000a macl %a1,%d4,>>,%fp@\(10\)&,%a3,%acc2 + 6884: a42e 4e29 000a macl %a1,%d4,>>,%fp@\(10\)&,%d2,%acc1 + 688a: a4ae 4e39 000a macl %a1,%d4,>>,%fp@\(10\)&,%d2,%acc2 + 6890: ae6e 4e29 000a macl %a1,%d4,>>,%fp@\(10\)&,%sp,%acc1 + 6896: aeee 4e39 000a macl %a1,%d4,>>,%fp@\(10\)&,%sp,%acc2 + 689c: a221 4e09 macl %a1,%d4,>>,%a1@-,%d1,%acc1 + 68a0: a2a1 4e19 macl %a1,%d4,>>,%a1@-,%d1,%acc2 + 68a4: a661 4e09 macl %a1,%d4,>>,%a1@-,%a3,%acc1 + 68a8: a6e1 4e19 macl %a1,%d4,>>,%a1@-,%a3,%acc2 + 68ac: a421 4e09 macl %a1,%d4,>>,%a1@-,%d2,%acc1 + 68b0: a4a1 4e19 macl %a1,%d4,>>,%a1@-,%d2,%acc2 + 68b4: ae61 4e09 macl %a1,%d4,>>,%a1@-,%sp,%acc1 + 68b8: aee1 4e19 macl %a1,%d4,>>,%a1@-,%sp,%acc2 + 68bc: a221 4e29 macl %a1,%d4,>>,%a1@-&,%d1,%acc1 + 68c0: a2a1 4e39 macl %a1,%d4,>>,%a1@-&,%d1,%acc2 + 68c4: a661 4e29 macl %a1,%d4,>>,%a1@-&,%a3,%acc1 + 68c8: a6e1 4e39 macl %a1,%d4,>>,%a1@-&,%a3,%acc2 + 68cc: a421 4e29 macl %a1,%d4,>>,%a1@-&,%d2,%acc1 + 68d0: a4a1 4e39 macl %a1,%d4,>>,%a1@-&,%d2,%acc2 + 68d4: ae61 4e29 macl %a1,%d4,>>,%a1@-&,%sp,%acc1 + 68d8: aee1 4e39 macl %a1,%d4,>>,%a1@-&,%sp,%acc2 + 68dc: a213 b806 macl %d6,%a3,%a3@,%d1,%acc1 + 68e0: a293 b816 macl %d6,%a3,%a3@,%d1,%acc2 + 68e4: a653 b806 macl %d6,%a3,%a3@,%a3,%acc1 + 68e8: a6d3 b816 macl %d6,%a3,%a3@,%a3,%acc2 + 68ec: a413 b806 macl %d6,%a3,%a3@,%d2,%acc1 + 68f0: a493 b816 macl %d6,%a3,%a3@,%d2,%acc2 + 68f4: ae53 b806 macl %d6,%a3,%a3@,%sp,%acc1 + 68f8: aed3 b816 macl %d6,%a3,%a3@,%sp,%acc2 + 68fc: a213 b826 macl %d6,%a3,%a3@&,%d1,%acc1 + 6900: a293 b836 macl %d6,%a3,%a3@&,%d1,%acc2 + 6904: a653 b826 macl %d6,%a3,%a3@&,%a3,%acc1 + 6908: a6d3 b836 macl %d6,%a3,%a3@&,%a3,%acc2 + 690c: a413 b826 macl %d6,%a3,%a3@&,%d2,%acc1 + 6910: a493 b836 macl %d6,%a3,%a3@&,%d2,%acc2 + 6914: ae53 b826 macl %d6,%a3,%a3@&,%sp,%acc1 + 6918: aed3 b836 macl %d6,%a3,%a3@&,%sp,%acc2 + 691c: a21a b806 macl %d6,%a3,%a2@\+,%d1,%acc1 + 6920: a29a b816 macl %d6,%a3,%a2@\+,%d1,%acc2 + 6924: a65a b806 macl %d6,%a3,%a2@\+,%a3,%acc1 + 6928: a6da b816 macl %d6,%a3,%a2@\+,%a3,%acc2 + 692c: a41a b806 macl %d6,%a3,%a2@\+,%d2,%acc1 + 6930: a49a b816 macl %d6,%a3,%a2@\+,%d2,%acc2 + 6934: ae5a b806 macl %d6,%a3,%a2@\+,%sp,%acc1 + 6938: aeda b816 macl %d6,%a3,%a2@\+,%sp,%acc2 + 693c: a21a b826 macl %d6,%a3,%a2@\+&,%d1,%acc1 + 6940: a29a b836 macl %d6,%a3,%a2@\+&,%d1,%acc2 + 6944: a65a b826 macl %d6,%a3,%a2@\+&,%a3,%acc1 + 6948: a6da b836 macl %d6,%a3,%a2@\+&,%a3,%acc2 + 694c: a41a b826 macl %d6,%a3,%a2@\+&,%d2,%acc1 + 6950: a49a b836 macl %d6,%a3,%a2@\+&,%d2,%acc2 + 6954: ae5a b826 macl %d6,%a3,%a2@\+&,%sp,%acc1 + 6958: aeda b836 macl %d6,%a3,%a2@\+&,%sp,%acc2 + 695c: a22e b806 000a macl %d6,%a3,%fp@\(10\),%d1,%acc1 + 6962: a2ae b816 000a macl %d6,%a3,%fp@\(10\),%d1,%acc2 + 6968: a66e b806 000a macl %d6,%a3,%fp@\(10\),%a3,%acc1 + 696e: a6ee b816 000a macl %d6,%a3,%fp@\(10\),%a3,%acc2 + 6974: a42e b806 000a macl %d6,%a3,%fp@\(10\),%d2,%acc1 + 697a: a4ae b816 000a macl %d6,%a3,%fp@\(10\),%d2,%acc2 + 6980: ae6e b806 000a macl %d6,%a3,%fp@\(10\),%sp,%acc1 + 6986: aeee b816 000a macl %d6,%a3,%fp@\(10\),%sp,%acc2 + 698c: a22e b826 000a macl %d6,%a3,%fp@\(10\)&,%d1,%acc1 + 6992: a2ae b836 000a macl %d6,%a3,%fp@\(10\)&,%d1,%acc2 + 6998: a66e b826 000a macl %d6,%a3,%fp@\(10\)&,%a3,%acc1 + 699e: a6ee b836 000a macl %d6,%a3,%fp@\(10\)&,%a3,%acc2 + 69a4: a42e b826 000a macl %d6,%a3,%fp@\(10\)&,%d2,%acc1 + 69aa: a4ae b836 000a macl %d6,%a3,%fp@\(10\)&,%d2,%acc2 + 69b0: ae6e b826 000a macl %d6,%a3,%fp@\(10\)&,%sp,%acc1 + 69b6: aeee b836 000a macl %d6,%a3,%fp@\(10\)&,%sp,%acc2 + 69bc: a221 b806 macl %d6,%a3,%a1@-,%d1,%acc1 + 69c0: a2a1 b816 macl %d6,%a3,%a1@-,%d1,%acc2 + 69c4: a661 b806 macl %d6,%a3,%a1@-,%a3,%acc1 + 69c8: a6e1 b816 macl %d6,%a3,%a1@-,%a3,%acc2 + 69cc: a421 b806 macl %d6,%a3,%a1@-,%d2,%acc1 + 69d0: a4a1 b816 macl %d6,%a3,%a1@-,%d2,%acc2 + 69d4: ae61 b806 macl %d6,%a3,%a1@-,%sp,%acc1 + 69d8: aee1 b816 macl %d6,%a3,%a1@-,%sp,%acc2 + 69dc: a221 b826 macl %d6,%a3,%a1@-&,%d1,%acc1 + 69e0: a2a1 b836 macl %d6,%a3,%a1@-&,%d1,%acc2 + 69e4: a661 b826 macl %d6,%a3,%a1@-&,%a3,%acc1 + 69e8: a6e1 b836 macl %d6,%a3,%a1@-&,%a3,%acc2 + 69ec: a421 b826 macl %d6,%a3,%a1@-&,%d2,%acc1 + 69f0: a4a1 b836 macl %d6,%a3,%a1@-&,%d2,%acc2 + 69f4: ae61 b826 macl %d6,%a3,%a1@-&,%sp,%acc1 + 69f8: aee1 b836 macl %d6,%a3,%a1@-&,%sp,%acc2 + 69fc: a213 ba06 macl %d6,%a3,<<,%a3@,%d1,%acc1 + 6a00: a293 ba16 macl %d6,%a3,<<,%a3@,%d1,%acc2 + 6a04: a653 ba06 macl %d6,%a3,<<,%a3@,%a3,%acc1 + 6a08: a6d3 ba16 macl %d6,%a3,<<,%a3@,%a3,%acc2 + 6a0c: a413 ba06 macl %d6,%a3,<<,%a3@,%d2,%acc1 + 6a10: a493 ba16 macl %d6,%a3,<<,%a3@,%d2,%acc2 + 6a14: ae53 ba06 macl %d6,%a3,<<,%a3@,%sp,%acc1 + 6a18: aed3 ba16 macl %d6,%a3,<<,%a3@,%sp,%acc2 + 6a1c: a213 ba26 macl %d6,%a3,<<,%a3@&,%d1,%acc1 + 6a20: a293 ba36 macl %d6,%a3,<<,%a3@&,%d1,%acc2 + 6a24: a653 ba26 macl %d6,%a3,<<,%a3@&,%a3,%acc1 + 6a28: a6d3 ba36 macl %d6,%a3,<<,%a3@&,%a3,%acc2 + 6a2c: a413 ba26 macl %d6,%a3,<<,%a3@&,%d2,%acc1 + 6a30: a493 ba36 macl %d6,%a3,<<,%a3@&,%d2,%acc2 + 6a34: ae53 ba26 macl %d6,%a3,<<,%a3@&,%sp,%acc1 + 6a38: aed3 ba36 macl %d6,%a3,<<,%a3@&,%sp,%acc2 + 6a3c: a21a ba06 macl %d6,%a3,<<,%a2@\+,%d1,%acc1 + 6a40: a29a ba16 macl %d6,%a3,<<,%a2@\+,%d1,%acc2 + 6a44: a65a ba06 macl %d6,%a3,<<,%a2@\+,%a3,%acc1 + 6a48: a6da ba16 macl %d6,%a3,<<,%a2@\+,%a3,%acc2 + 6a4c: a41a ba06 macl %d6,%a3,<<,%a2@\+,%d2,%acc1 + 6a50: a49a ba16 macl %d6,%a3,<<,%a2@\+,%d2,%acc2 + 6a54: ae5a ba06 macl %d6,%a3,<<,%a2@\+,%sp,%acc1 + 6a58: aeda ba16 macl %d6,%a3,<<,%a2@\+,%sp,%acc2 + 6a5c: a21a ba26 macl %d6,%a3,<<,%a2@\+&,%d1,%acc1 + 6a60: a29a ba36 macl %d6,%a3,<<,%a2@\+&,%d1,%acc2 + 6a64: a65a ba26 macl %d6,%a3,<<,%a2@\+&,%a3,%acc1 + 6a68: a6da ba36 macl %d6,%a3,<<,%a2@\+&,%a3,%acc2 + 6a6c: a41a ba26 macl %d6,%a3,<<,%a2@\+&,%d2,%acc1 + 6a70: a49a ba36 macl %d6,%a3,<<,%a2@\+&,%d2,%acc2 + 6a74: ae5a ba26 macl %d6,%a3,<<,%a2@\+&,%sp,%acc1 + 6a78: aeda ba36 macl %d6,%a3,<<,%a2@\+&,%sp,%acc2 + 6a7c: a22e ba06 000a macl %d6,%a3,<<,%fp@\(10\),%d1,%acc1 + 6a82: a2ae ba16 000a macl %d6,%a3,<<,%fp@\(10\),%d1,%acc2 + 6a88: a66e ba06 000a macl %d6,%a3,<<,%fp@\(10\),%a3,%acc1 + 6a8e: a6ee ba16 000a macl %d6,%a3,<<,%fp@\(10\),%a3,%acc2 + 6a94: a42e ba06 000a macl %d6,%a3,<<,%fp@\(10\),%d2,%acc1 + 6a9a: a4ae ba16 000a macl %d6,%a3,<<,%fp@\(10\),%d2,%acc2 + 6aa0: ae6e ba06 000a macl %d6,%a3,<<,%fp@\(10\),%sp,%acc1 + 6aa6: aeee ba16 000a macl %d6,%a3,<<,%fp@\(10\),%sp,%acc2 + 6aac: a22e ba26 000a macl %d6,%a3,<<,%fp@\(10\)&,%d1,%acc1 + 6ab2: a2ae ba36 000a macl %d6,%a3,<<,%fp@\(10\)&,%d1,%acc2 + 6ab8: a66e ba26 000a macl %d6,%a3,<<,%fp@\(10\)&,%a3,%acc1 + 6abe: a6ee ba36 000a macl %d6,%a3,<<,%fp@\(10\)&,%a3,%acc2 + 6ac4: a42e ba26 000a macl %d6,%a3,<<,%fp@\(10\)&,%d2,%acc1 + 6aca: a4ae ba36 000a macl %d6,%a3,<<,%fp@\(10\)&,%d2,%acc2 + 6ad0: ae6e ba26 000a macl %d6,%a3,<<,%fp@\(10\)&,%sp,%acc1 + 6ad6: aeee ba36 000a macl %d6,%a3,<<,%fp@\(10\)&,%sp,%acc2 + 6adc: a221 ba06 macl %d6,%a3,<<,%a1@-,%d1,%acc1 + 6ae0: a2a1 ba16 macl %d6,%a3,<<,%a1@-,%d1,%acc2 + 6ae4: a661 ba06 macl %d6,%a3,<<,%a1@-,%a3,%acc1 + 6ae8: a6e1 ba16 macl %d6,%a3,<<,%a1@-,%a3,%acc2 + 6aec: a421 ba06 macl %d6,%a3,<<,%a1@-,%d2,%acc1 + 6af0: a4a1 ba16 macl %d6,%a3,<<,%a1@-,%d2,%acc2 + 6af4: ae61 ba06 macl %d6,%a3,<<,%a1@-,%sp,%acc1 + 6af8: aee1 ba16 macl %d6,%a3,<<,%a1@-,%sp,%acc2 + 6afc: a221 ba26 macl %d6,%a3,<<,%a1@-&,%d1,%acc1 + 6b00: a2a1 ba36 macl %d6,%a3,<<,%a1@-&,%d1,%acc2 + 6b04: a661 ba26 macl %d6,%a3,<<,%a1@-&,%a3,%acc1 + 6b08: a6e1 ba36 macl %d6,%a3,<<,%a1@-&,%a3,%acc2 + 6b0c: a421 ba26 macl %d6,%a3,<<,%a1@-&,%d2,%acc1 + 6b10: a4a1 ba36 macl %d6,%a3,<<,%a1@-&,%d2,%acc2 + 6b14: ae61 ba26 macl %d6,%a3,<<,%a1@-&,%sp,%acc1 + 6b18: aee1 ba36 macl %d6,%a3,<<,%a1@-&,%sp,%acc2 + 6b1c: a213 be06 macl %d6,%a3,>>,%a3@,%d1,%acc1 + 6b20: a293 be16 macl %d6,%a3,>>,%a3@,%d1,%acc2 + 6b24: a653 be06 macl %d6,%a3,>>,%a3@,%a3,%acc1 + 6b28: a6d3 be16 macl %d6,%a3,>>,%a3@,%a3,%acc2 + 6b2c: a413 be06 macl %d6,%a3,>>,%a3@,%d2,%acc1 + 6b30: a493 be16 macl %d6,%a3,>>,%a3@,%d2,%acc2 + 6b34: ae53 be06 macl %d6,%a3,>>,%a3@,%sp,%acc1 + 6b38: aed3 be16 macl %d6,%a3,>>,%a3@,%sp,%acc2 + 6b3c: a213 be26 macl %d6,%a3,>>,%a3@&,%d1,%acc1 + 6b40: a293 be36 macl %d6,%a3,>>,%a3@&,%d1,%acc2 + 6b44: a653 be26 macl %d6,%a3,>>,%a3@&,%a3,%acc1 + 6b48: a6d3 be36 macl %d6,%a3,>>,%a3@&,%a3,%acc2 + 6b4c: a413 be26 macl %d6,%a3,>>,%a3@&,%d2,%acc1 + 6b50: a493 be36 macl %d6,%a3,>>,%a3@&,%d2,%acc2 + 6b54: ae53 be26 macl %d6,%a3,>>,%a3@&,%sp,%acc1 + 6b58: aed3 be36 macl %d6,%a3,>>,%a3@&,%sp,%acc2 + 6b5c: a21a be06 macl %d6,%a3,>>,%a2@\+,%d1,%acc1 + 6b60: a29a be16 macl %d6,%a3,>>,%a2@\+,%d1,%acc2 + 6b64: a65a be06 macl %d6,%a3,>>,%a2@\+,%a3,%acc1 + 6b68: a6da be16 macl %d6,%a3,>>,%a2@\+,%a3,%acc2 + 6b6c: a41a be06 macl %d6,%a3,>>,%a2@\+,%d2,%acc1 + 6b70: a49a be16 macl %d6,%a3,>>,%a2@\+,%d2,%acc2 + 6b74: ae5a be06 macl %d6,%a3,>>,%a2@\+,%sp,%acc1 + 6b78: aeda be16 macl %d6,%a3,>>,%a2@\+,%sp,%acc2 + 6b7c: a21a be26 macl %d6,%a3,>>,%a2@\+&,%d1,%acc1 + 6b80: a29a be36 macl %d6,%a3,>>,%a2@\+&,%d1,%acc2 + 6b84: a65a be26 macl %d6,%a3,>>,%a2@\+&,%a3,%acc1 + 6b88: a6da be36 macl %d6,%a3,>>,%a2@\+&,%a3,%acc2 + 6b8c: a41a be26 macl %d6,%a3,>>,%a2@\+&,%d2,%acc1 + 6b90: a49a be36 macl %d6,%a3,>>,%a2@\+&,%d2,%acc2 + 6b94: ae5a be26 macl %d6,%a3,>>,%a2@\+&,%sp,%acc1 + 6b98: aeda be36 macl %d6,%a3,>>,%a2@\+&,%sp,%acc2 + 6b9c: a22e be06 000a macl %d6,%a3,>>,%fp@\(10\),%d1,%acc1 + 6ba2: a2ae be16 000a macl %d6,%a3,>>,%fp@\(10\),%d1,%acc2 + 6ba8: a66e be06 000a macl %d6,%a3,>>,%fp@\(10\),%a3,%acc1 + 6bae: a6ee be16 000a macl %d6,%a3,>>,%fp@\(10\),%a3,%acc2 + 6bb4: a42e be06 000a macl %d6,%a3,>>,%fp@\(10\),%d2,%acc1 + 6bba: a4ae be16 000a macl %d6,%a3,>>,%fp@\(10\),%d2,%acc2 + 6bc0: ae6e be06 000a macl %d6,%a3,>>,%fp@\(10\),%sp,%acc1 + 6bc6: aeee be16 000a macl %d6,%a3,>>,%fp@\(10\),%sp,%acc2 + 6bcc: a22e be26 000a macl %d6,%a3,>>,%fp@\(10\)&,%d1,%acc1 + 6bd2: a2ae be36 000a macl %d6,%a3,>>,%fp@\(10\)&,%d1,%acc2 + 6bd8: a66e be26 000a macl %d6,%a3,>>,%fp@\(10\)&,%a3,%acc1 + 6bde: a6ee be36 000a macl %d6,%a3,>>,%fp@\(10\)&,%a3,%acc2 + 6be4: a42e be26 000a macl %d6,%a3,>>,%fp@\(10\)&,%d2,%acc1 + 6bea: a4ae be36 000a macl %d6,%a3,>>,%fp@\(10\)&,%d2,%acc2 + 6bf0: ae6e be26 000a macl %d6,%a3,>>,%fp@\(10\)&,%sp,%acc1 + 6bf6: aeee be36 000a macl %d6,%a3,>>,%fp@\(10\)&,%sp,%acc2 + 6bfc: a221 be06 macl %d6,%a3,>>,%a1@-,%d1,%acc1 + 6c00: a2a1 be16 macl %d6,%a3,>>,%a1@-,%d1,%acc2 + 6c04: a661 be06 macl %d6,%a3,>>,%a1@-,%a3,%acc1 + 6c08: a6e1 be16 macl %d6,%a3,>>,%a1@-,%a3,%acc2 + 6c0c: a421 be06 macl %d6,%a3,>>,%a1@-,%d2,%acc1 + 6c10: a4a1 be16 macl %d6,%a3,>>,%a1@-,%d2,%acc2 + 6c14: ae61 be06 macl %d6,%a3,>>,%a1@-,%sp,%acc1 + 6c18: aee1 be16 macl %d6,%a3,>>,%a1@-,%sp,%acc2 + 6c1c: a221 be26 macl %d6,%a3,>>,%a1@-&,%d1,%acc1 + 6c20: a2a1 be36 macl %d6,%a3,>>,%a1@-&,%d1,%acc2 + 6c24: a661 be26 macl %d6,%a3,>>,%a1@-&,%a3,%acc1 + 6c28: a6e1 be36 macl %d6,%a3,>>,%a1@-&,%a3,%acc2 + 6c2c: a421 be26 macl %d6,%a3,>>,%a1@-&,%d2,%acc1 + 6c30: a4a1 be36 macl %d6,%a3,>>,%a1@-&,%d2,%acc2 + 6c34: ae61 be26 macl %d6,%a3,>>,%a1@-&,%sp,%acc1 + 6c38: aee1 be36 macl %d6,%a3,>>,%a1@-&,%sp,%acc2 + 6c3c: a213 ba06 macl %d6,%a3,<<,%a3@,%d1,%acc1 + 6c40: a293 ba16 macl %d6,%a3,<<,%a3@,%d1,%acc2 + 6c44: a653 ba06 macl %d6,%a3,<<,%a3@,%a3,%acc1 + 6c48: a6d3 ba16 macl %d6,%a3,<<,%a3@,%a3,%acc2 + 6c4c: a413 ba06 macl %d6,%a3,<<,%a3@,%d2,%acc1 + 6c50: a493 ba16 macl %d6,%a3,<<,%a3@,%d2,%acc2 + 6c54: ae53 ba06 macl %d6,%a3,<<,%a3@,%sp,%acc1 + 6c58: aed3 ba16 macl %d6,%a3,<<,%a3@,%sp,%acc2 + 6c5c: a213 ba26 macl %d6,%a3,<<,%a3@&,%d1,%acc1 + 6c60: a293 ba36 macl %d6,%a3,<<,%a3@&,%d1,%acc2 + 6c64: a653 ba26 macl %d6,%a3,<<,%a3@&,%a3,%acc1 + 6c68: a6d3 ba36 macl %d6,%a3,<<,%a3@&,%a3,%acc2 + 6c6c: a413 ba26 macl %d6,%a3,<<,%a3@&,%d2,%acc1 + 6c70: a493 ba36 macl %d6,%a3,<<,%a3@&,%d2,%acc2 + 6c74: ae53 ba26 macl %d6,%a3,<<,%a3@&,%sp,%acc1 + 6c78: aed3 ba36 macl %d6,%a3,<<,%a3@&,%sp,%acc2 + 6c7c: a21a ba06 macl %d6,%a3,<<,%a2@\+,%d1,%acc1 + 6c80: a29a ba16 macl %d6,%a3,<<,%a2@\+,%d1,%acc2 + 6c84: a65a ba06 macl %d6,%a3,<<,%a2@\+,%a3,%acc1 + 6c88: a6da ba16 macl %d6,%a3,<<,%a2@\+,%a3,%acc2 + 6c8c: a41a ba06 macl %d6,%a3,<<,%a2@\+,%d2,%acc1 + 6c90: a49a ba16 macl %d6,%a3,<<,%a2@\+,%d2,%acc2 + 6c94: ae5a ba06 macl %d6,%a3,<<,%a2@\+,%sp,%acc1 + 6c98: aeda ba16 macl %d6,%a3,<<,%a2@\+,%sp,%acc2 + 6c9c: a21a ba26 macl %d6,%a3,<<,%a2@\+&,%d1,%acc1 + 6ca0: a29a ba36 macl %d6,%a3,<<,%a2@\+&,%d1,%acc2 + 6ca4: a65a ba26 macl %d6,%a3,<<,%a2@\+&,%a3,%acc1 + 6ca8: a6da ba36 macl %d6,%a3,<<,%a2@\+&,%a3,%acc2 + 6cac: a41a ba26 macl %d6,%a3,<<,%a2@\+&,%d2,%acc1 + 6cb0: a49a ba36 macl %d6,%a3,<<,%a2@\+&,%d2,%acc2 + 6cb4: ae5a ba26 macl %d6,%a3,<<,%a2@\+&,%sp,%acc1 + 6cb8: aeda ba36 macl %d6,%a3,<<,%a2@\+&,%sp,%acc2 + 6cbc: a22e ba06 000a macl %d6,%a3,<<,%fp@\(10\),%d1,%acc1 + 6cc2: a2ae ba16 000a macl %d6,%a3,<<,%fp@\(10\),%d1,%acc2 + 6cc8: a66e ba06 000a macl %d6,%a3,<<,%fp@\(10\),%a3,%acc1 + 6cce: a6ee ba16 000a macl %d6,%a3,<<,%fp@\(10\),%a3,%acc2 + 6cd4: a42e ba06 000a macl %d6,%a3,<<,%fp@\(10\),%d2,%acc1 + 6cda: a4ae ba16 000a macl %d6,%a3,<<,%fp@\(10\),%d2,%acc2 + 6ce0: ae6e ba06 000a macl %d6,%a3,<<,%fp@\(10\),%sp,%acc1 + 6ce6: aeee ba16 000a macl %d6,%a3,<<,%fp@\(10\),%sp,%acc2 + 6cec: a22e ba26 000a macl %d6,%a3,<<,%fp@\(10\)&,%d1,%acc1 + 6cf2: a2ae ba36 000a macl %d6,%a3,<<,%fp@\(10\)&,%d1,%acc2 + 6cf8: a66e ba26 000a macl %d6,%a3,<<,%fp@\(10\)&,%a3,%acc1 + 6cfe: a6ee ba36 000a macl %d6,%a3,<<,%fp@\(10\)&,%a3,%acc2 + 6d04: a42e ba26 000a macl %d6,%a3,<<,%fp@\(10\)&,%d2,%acc1 + 6d0a: a4ae ba36 000a macl %d6,%a3,<<,%fp@\(10\)&,%d2,%acc2 + 6d10: ae6e ba26 000a macl %d6,%a3,<<,%fp@\(10\)&,%sp,%acc1 + 6d16: aeee ba36 000a macl %d6,%a3,<<,%fp@\(10\)&,%sp,%acc2 + 6d1c: a221 ba06 macl %d6,%a3,<<,%a1@-,%d1,%acc1 + 6d20: a2a1 ba16 macl %d6,%a3,<<,%a1@-,%d1,%acc2 + 6d24: a661 ba06 macl %d6,%a3,<<,%a1@-,%a3,%acc1 + 6d28: a6e1 ba16 macl %d6,%a3,<<,%a1@-,%a3,%acc2 + 6d2c: a421 ba06 macl %d6,%a3,<<,%a1@-,%d2,%acc1 + 6d30: a4a1 ba16 macl %d6,%a3,<<,%a1@-,%d2,%acc2 + 6d34: ae61 ba06 macl %d6,%a3,<<,%a1@-,%sp,%acc1 + 6d38: aee1 ba16 macl %d6,%a3,<<,%a1@-,%sp,%acc2 + 6d3c: a221 ba26 macl %d6,%a3,<<,%a1@-&,%d1,%acc1 + 6d40: a2a1 ba36 macl %d6,%a3,<<,%a1@-&,%d1,%acc2 + 6d44: a661 ba26 macl %d6,%a3,<<,%a1@-&,%a3,%acc1 + 6d48: a6e1 ba36 macl %d6,%a3,<<,%a1@-&,%a3,%acc2 + 6d4c: a421 ba26 macl %d6,%a3,<<,%a1@-&,%d2,%acc1 + 6d50: a4a1 ba36 macl %d6,%a3,<<,%a1@-&,%d2,%acc2 + 6d54: ae61 ba26 macl %d6,%a3,<<,%a1@-&,%sp,%acc1 + 6d58: aee1 ba36 macl %d6,%a3,<<,%a1@-&,%sp,%acc2 + 6d5c: a213 be06 macl %d6,%a3,>>,%a3@,%d1,%acc1 + 6d60: a293 be16 macl %d6,%a3,>>,%a3@,%d1,%acc2 + 6d64: a653 be06 macl %d6,%a3,>>,%a3@,%a3,%acc1 + 6d68: a6d3 be16 macl %d6,%a3,>>,%a3@,%a3,%acc2 + 6d6c: a413 be06 macl %d6,%a3,>>,%a3@,%d2,%acc1 + 6d70: a493 be16 macl %d6,%a3,>>,%a3@,%d2,%acc2 + 6d74: ae53 be06 macl %d6,%a3,>>,%a3@,%sp,%acc1 + 6d78: aed3 be16 macl %d6,%a3,>>,%a3@,%sp,%acc2 + 6d7c: a213 be26 macl %d6,%a3,>>,%a3@&,%d1,%acc1 + 6d80: a293 be36 macl %d6,%a3,>>,%a3@&,%d1,%acc2 + 6d84: a653 be26 macl %d6,%a3,>>,%a3@&,%a3,%acc1 + 6d88: a6d3 be36 macl %d6,%a3,>>,%a3@&,%a3,%acc2 + 6d8c: a413 be26 macl %d6,%a3,>>,%a3@&,%d2,%acc1 + 6d90: a493 be36 macl %d6,%a3,>>,%a3@&,%d2,%acc2 + 6d94: ae53 be26 macl %d6,%a3,>>,%a3@&,%sp,%acc1 + 6d98: aed3 be36 macl %d6,%a3,>>,%a3@&,%sp,%acc2 + 6d9c: a21a be06 macl %d6,%a3,>>,%a2@\+,%d1,%acc1 + 6da0: a29a be16 macl %d6,%a3,>>,%a2@\+,%d1,%acc2 + 6da4: a65a be06 macl %d6,%a3,>>,%a2@\+,%a3,%acc1 + 6da8: a6da be16 macl %d6,%a3,>>,%a2@\+,%a3,%acc2 + 6dac: a41a be06 macl %d6,%a3,>>,%a2@\+,%d2,%acc1 + 6db0: a49a be16 macl %d6,%a3,>>,%a2@\+,%d2,%acc2 + 6db4: ae5a be06 macl %d6,%a3,>>,%a2@\+,%sp,%acc1 + 6db8: aeda be16 macl %d6,%a3,>>,%a2@\+,%sp,%acc2 + 6dbc: a21a be26 macl %d6,%a3,>>,%a2@\+&,%d1,%acc1 + 6dc0: a29a be36 macl %d6,%a3,>>,%a2@\+&,%d1,%acc2 + 6dc4: a65a be26 macl %d6,%a3,>>,%a2@\+&,%a3,%acc1 + 6dc8: a6da be36 macl %d6,%a3,>>,%a2@\+&,%a3,%acc2 + 6dcc: a41a be26 macl %d6,%a3,>>,%a2@\+&,%d2,%acc1 + 6dd0: a49a be36 macl %d6,%a3,>>,%a2@\+&,%d2,%acc2 + 6dd4: ae5a be26 macl %d6,%a3,>>,%a2@\+&,%sp,%acc1 + 6dd8: aeda be36 macl %d6,%a3,>>,%a2@\+&,%sp,%acc2 + 6ddc: a22e be06 000a macl %d6,%a3,>>,%fp@\(10\),%d1,%acc1 + 6de2: a2ae be16 000a macl %d6,%a3,>>,%fp@\(10\),%d1,%acc2 + 6de8: a66e be06 000a macl %d6,%a3,>>,%fp@\(10\),%a3,%acc1 + 6dee: a6ee be16 000a macl %d6,%a3,>>,%fp@\(10\),%a3,%acc2 + 6df4: a42e be06 000a macl %d6,%a3,>>,%fp@\(10\),%d2,%acc1 + 6dfa: a4ae be16 000a macl %d6,%a3,>>,%fp@\(10\),%d2,%acc2 + 6e00: ae6e be06 000a macl %d6,%a3,>>,%fp@\(10\),%sp,%acc1 + 6e06: aeee be16 000a macl %d6,%a3,>>,%fp@\(10\),%sp,%acc2 + 6e0c: a22e be26 000a macl %d6,%a3,>>,%fp@\(10\)&,%d1,%acc1 + 6e12: a2ae be36 000a macl %d6,%a3,>>,%fp@\(10\)&,%d1,%acc2 + 6e18: a66e be26 000a macl %d6,%a3,>>,%fp@\(10\)&,%a3,%acc1 + 6e1e: a6ee be36 000a macl %d6,%a3,>>,%fp@\(10\)&,%a3,%acc2 + 6e24: a42e be26 000a macl %d6,%a3,>>,%fp@\(10\)&,%d2,%acc1 + 6e2a: a4ae be36 000a macl %d6,%a3,>>,%fp@\(10\)&,%d2,%acc2 + 6e30: ae6e be26 000a macl %d6,%a3,>>,%fp@\(10\)&,%sp,%acc1 + 6e36: aeee be36 000a macl %d6,%a3,>>,%fp@\(10\)&,%sp,%acc2 + 6e3c: a221 be06 macl %d6,%a3,>>,%a1@-,%d1,%acc1 + 6e40: a2a1 be16 macl %d6,%a3,>>,%a1@-,%d1,%acc2 + 6e44: a661 be06 macl %d6,%a3,>>,%a1@-,%a3,%acc1 + 6e48: a6e1 be16 macl %d6,%a3,>>,%a1@-,%a3,%acc2 + 6e4c: a421 be06 macl %d6,%a3,>>,%a1@-,%d2,%acc1 + 6e50: a4a1 be16 macl %d6,%a3,>>,%a1@-,%d2,%acc2 + 6e54: ae61 be06 macl %d6,%a3,>>,%a1@-,%sp,%acc1 + 6e58: aee1 be16 macl %d6,%a3,>>,%a1@-,%sp,%acc2 + 6e5c: a221 be26 macl %d6,%a3,>>,%a1@-&,%d1,%acc1 + 6e60: a2a1 be36 macl %d6,%a3,>>,%a1@-&,%d1,%acc2 + 6e64: a661 be26 macl %d6,%a3,>>,%a1@-&,%a3,%acc1 + 6e68: a6e1 be36 macl %d6,%a3,>>,%a1@-&,%a3,%acc2 + 6e6c: a421 be26 macl %d6,%a3,>>,%a1@-&,%d2,%acc1 + 6e70: a4a1 be36 macl %d6,%a3,>>,%a1@-&,%d2,%acc2 + 6e74: ae61 be26 macl %d6,%a3,>>,%a1@-&,%sp,%acc1 + 6e78: aee1 be36 macl %d6,%a3,>>,%a1@-&,%sp,%acc2 + 6e7c: a213 4806 macl %d6,%d4,%a3@,%d1,%acc1 + 6e80: a293 4816 macl %d6,%d4,%a3@,%d1,%acc2 + 6e84: a653 4806 macl %d6,%d4,%a3@,%a3,%acc1 + 6e88: a6d3 4816 macl %d6,%d4,%a3@,%a3,%acc2 + 6e8c: a413 4806 macl %d6,%d4,%a3@,%d2,%acc1 + 6e90: a493 4816 macl %d6,%d4,%a3@,%d2,%acc2 + 6e94: ae53 4806 macl %d6,%d4,%a3@,%sp,%acc1 + 6e98: aed3 4816 macl %d6,%d4,%a3@,%sp,%acc2 + 6e9c: a213 4826 macl %d6,%d4,%a3@&,%d1,%acc1 + 6ea0: a293 4836 macl %d6,%d4,%a3@&,%d1,%acc2 + 6ea4: a653 4826 macl %d6,%d4,%a3@&,%a3,%acc1 + 6ea8: a6d3 4836 macl %d6,%d4,%a3@&,%a3,%acc2 + 6eac: a413 4826 macl %d6,%d4,%a3@&,%d2,%acc1 + 6eb0: a493 4836 macl %d6,%d4,%a3@&,%d2,%acc2 + 6eb4: ae53 4826 macl %d6,%d4,%a3@&,%sp,%acc1 + 6eb8: aed3 4836 macl %d6,%d4,%a3@&,%sp,%acc2 + 6ebc: a21a 4806 macl %d6,%d4,%a2@\+,%d1,%acc1 + 6ec0: a29a 4816 macl %d6,%d4,%a2@\+,%d1,%acc2 + 6ec4: a65a 4806 macl %d6,%d4,%a2@\+,%a3,%acc1 + 6ec8: a6da 4816 macl %d6,%d4,%a2@\+,%a3,%acc2 + 6ecc: a41a 4806 macl %d6,%d4,%a2@\+,%d2,%acc1 + 6ed0: a49a 4816 macl %d6,%d4,%a2@\+,%d2,%acc2 + 6ed4: ae5a 4806 macl %d6,%d4,%a2@\+,%sp,%acc1 + 6ed8: aeda 4816 macl %d6,%d4,%a2@\+,%sp,%acc2 + 6edc: a21a 4826 macl %d6,%d4,%a2@\+&,%d1,%acc1 + 6ee0: a29a 4836 macl %d6,%d4,%a2@\+&,%d1,%acc2 + 6ee4: a65a 4826 macl %d6,%d4,%a2@\+&,%a3,%acc1 + 6ee8: a6da 4836 macl %d6,%d4,%a2@\+&,%a3,%acc2 + 6eec: a41a 4826 macl %d6,%d4,%a2@\+&,%d2,%acc1 + 6ef0: a49a 4836 macl %d6,%d4,%a2@\+&,%d2,%acc2 + 6ef4: ae5a 4826 macl %d6,%d4,%a2@\+&,%sp,%acc1 + 6ef8: aeda 4836 macl %d6,%d4,%a2@\+&,%sp,%acc2 + 6efc: a22e 4806 000a macl %d6,%d4,%fp@\(10\),%d1,%acc1 + 6f02: a2ae 4816 000a macl %d6,%d4,%fp@\(10\),%d1,%acc2 + 6f08: a66e 4806 000a macl %d6,%d4,%fp@\(10\),%a3,%acc1 + 6f0e: a6ee 4816 000a macl %d6,%d4,%fp@\(10\),%a3,%acc2 + 6f14: a42e 4806 000a macl %d6,%d4,%fp@\(10\),%d2,%acc1 + 6f1a: a4ae 4816 000a macl %d6,%d4,%fp@\(10\),%d2,%acc2 + 6f20: ae6e 4806 000a macl %d6,%d4,%fp@\(10\),%sp,%acc1 + 6f26: aeee 4816 000a macl %d6,%d4,%fp@\(10\),%sp,%acc2 + 6f2c: a22e 4826 000a macl %d6,%d4,%fp@\(10\)&,%d1,%acc1 + 6f32: a2ae 4836 000a macl %d6,%d4,%fp@\(10\)&,%d1,%acc2 + 6f38: a66e 4826 000a macl %d6,%d4,%fp@\(10\)&,%a3,%acc1 + 6f3e: a6ee 4836 000a macl %d6,%d4,%fp@\(10\)&,%a3,%acc2 + 6f44: a42e 4826 000a macl %d6,%d4,%fp@\(10\)&,%d2,%acc1 + 6f4a: a4ae 4836 000a macl %d6,%d4,%fp@\(10\)&,%d2,%acc2 + 6f50: ae6e 4826 000a macl %d6,%d4,%fp@\(10\)&,%sp,%acc1 + 6f56: aeee 4836 000a macl %d6,%d4,%fp@\(10\)&,%sp,%acc2 + 6f5c: a221 4806 macl %d6,%d4,%a1@-,%d1,%acc1 + 6f60: a2a1 4816 macl %d6,%d4,%a1@-,%d1,%acc2 + 6f64: a661 4806 macl %d6,%d4,%a1@-,%a3,%acc1 + 6f68: a6e1 4816 macl %d6,%d4,%a1@-,%a3,%acc2 + 6f6c: a421 4806 macl %d6,%d4,%a1@-,%d2,%acc1 + 6f70: a4a1 4816 macl %d6,%d4,%a1@-,%d2,%acc2 + 6f74: ae61 4806 macl %d6,%d4,%a1@-,%sp,%acc1 + 6f78: aee1 4816 macl %d6,%d4,%a1@-,%sp,%acc2 + 6f7c: a221 4826 macl %d6,%d4,%a1@-&,%d1,%acc1 + 6f80: a2a1 4836 macl %d6,%d4,%a1@-&,%d1,%acc2 + 6f84: a661 4826 macl %d6,%d4,%a1@-&,%a3,%acc1 + 6f88: a6e1 4836 macl %d6,%d4,%a1@-&,%a3,%acc2 + 6f8c: a421 4826 macl %d6,%d4,%a1@-&,%d2,%acc1 + 6f90: a4a1 4836 macl %d6,%d4,%a1@-&,%d2,%acc2 + 6f94: ae61 4826 macl %d6,%d4,%a1@-&,%sp,%acc1 + 6f98: aee1 4836 macl %d6,%d4,%a1@-&,%sp,%acc2 + 6f9c: a213 4a06 macl %d6,%d4,<<,%a3@,%d1,%acc1 + 6fa0: a293 4a16 macl %d6,%d4,<<,%a3@,%d1,%acc2 + 6fa4: a653 4a06 macl %d6,%d4,<<,%a3@,%a3,%acc1 + 6fa8: a6d3 4a16 macl %d6,%d4,<<,%a3@,%a3,%acc2 + 6fac: a413 4a06 macl %d6,%d4,<<,%a3@,%d2,%acc1 + 6fb0: a493 4a16 macl %d6,%d4,<<,%a3@,%d2,%acc2 + 6fb4: ae53 4a06 macl %d6,%d4,<<,%a3@,%sp,%acc1 + 6fb8: aed3 4a16 macl %d6,%d4,<<,%a3@,%sp,%acc2 + 6fbc: a213 4a26 macl %d6,%d4,<<,%a3@&,%d1,%acc1 + 6fc0: a293 4a36 macl %d6,%d4,<<,%a3@&,%d1,%acc2 + 6fc4: a653 4a26 macl %d6,%d4,<<,%a3@&,%a3,%acc1 + 6fc8: a6d3 4a36 macl %d6,%d4,<<,%a3@&,%a3,%acc2 + 6fcc: a413 4a26 macl %d6,%d4,<<,%a3@&,%d2,%acc1 + 6fd0: a493 4a36 macl %d6,%d4,<<,%a3@&,%d2,%acc2 + 6fd4: ae53 4a26 macl %d6,%d4,<<,%a3@&,%sp,%acc1 + 6fd8: aed3 4a36 macl %d6,%d4,<<,%a3@&,%sp,%acc2 + 6fdc: a21a 4a06 macl %d6,%d4,<<,%a2@\+,%d1,%acc1 + 6fe0: a29a 4a16 macl %d6,%d4,<<,%a2@\+,%d1,%acc2 + 6fe4: a65a 4a06 macl %d6,%d4,<<,%a2@\+,%a3,%acc1 + 6fe8: a6da 4a16 macl %d6,%d4,<<,%a2@\+,%a3,%acc2 + 6fec: a41a 4a06 macl %d6,%d4,<<,%a2@\+,%d2,%acc1 + 6ff0: a49a 4a16 macl %d6,%d4,<<,%a2@\+,%d2,%acc2 + 6ff4: ae5a 4a06 macl %d6,%d4,<<,%a2@\+,%sp,%acc1 + 6ff8: aeda 4a16 macl %d6,%d4,<<,%a2@\+,%sp,%acc2 + 6ffc: a21a 4a26 macl %d6,%d4,<<,%a2@\+&,%d1,%acc1 + 7000: a29a 4a36 macl %d6,%d4,<<,%a2@\+&,%d1,%acc2 + 7004: a65a 4a26 macl %d6,%d4,<<,%a2@\+&,%a3,%acc1 + 7008: a6da 4a36 macl %d6,%d4,<<,%a2@\+&,%a3,%acc2 + 700c: a41a 4a26 macl %d6,%d4,<<,%a2@\+&,%d2,%acc1 + 7010: a49a 4a36 macl %d6,%d4,<<,%a2@\+&,%d2,%acc2 + 7014: ae5a 4a26 macl %d6,%d4,<<,%a2@\+&,%sp,%acc1 + 7018: aeda 4a36 macl %d6,%d4,<<,%a2@\+&,%sp,%acc2 + 701c: a22e 4a06 000a macl %d6,%d4,<<,%fp@\(10\),%d1,%acc1 + 7022: a2ae 4a16 000a macl %d6,%d4,<<,%fp@\(10\),%d1,%acc2 + 7028: a66e 4a06 000a macl %d6,%d4,<<,%fp@\(10\),%a3,%acc1 + 702e: a6ee 4a16 000a macl %d6,%d4,<<,%fp@\(10\),%a3,%acc2 + 7034: a42e 4a06 000a macl %d6,%d4,<<,%fp@\(10\),%d2,%acc1 + 703a: a4ae 4a16 000a macl %d6,%d4,<<,%fp@\(10\),%d2,%acc2 + 7040: ae6e 4a06 000a macl %d6,%d4,<<,%fp@\(10\),%sp,%acc1 + 7046: aeee 4a16 000a macl %d6,%d4,<<,%fp@\(10\),%sp,%acc2 + 704c: a22e 4a26 000a macl %d6,%d4,<<,%fp@\(10\)&,%d1,%acc1 + 7052: a2ae 4a36 000a macl %d6,%d4,<<,%fp@\(10\)&,%d1,%acc2 + 7058: a66e 4a26 000a macl %d6,%d4,<<,%fp@\(10\)&,%a3,%acc1 + 705e: a6ee 4a36 000a macl %d6,%d4,<<,%fp@\(10\)&,%a3,%acc2 + 7064: a42e 4a26 000a macl %d6,%d4,<<,%fp@\(10\)&,%d2,%acc1 + 706a: a4ae 4a36 000a macl %d6,%d4,<<,%fp@\(10\)&,%d2,%acc2 + 7070: ae6e 4a26 000a macl %d6,%d4,<<,%fp@\(10\)&,%sp,%acc1 + 7076: aeee 4a36 000a macl %d6,%d4,<<,%fp@\(10\)&,%sp,%acc2 + 707c: a221 4a06 macl %d6,%d4,<<,%a1@-,%d1,%acc1 + 7080: a2a1 4a16 macl %d6,%d4,<<,%a1@-,%d1,%acc2 + 7084: a661 4a06 macl %d6,%d4,<<,%a1@-,%a3,%acc1 + 7088: a6e1 4a16 macl %d6,%d4,<<,%a1@-,%a3,%acc2 + 708c: a421 4a06 macl %d6,%d4,<<,%a1@-,%d2,%acc1 + 7090: a4a1 4a16 macl %d6,%d4,<<,%a1@-,%d2,%acc2 + 7094: ae61 4a06 macl %d6,%d4,<<,%a1@-,%sp,%acc1 + 7098: aee1 4a16 macl %d6,%d4,<<,%a1@-,%sp,%acc2 + 709c: a221 4a26 macl %d6,%d4,<<,%a1@-&,%d1,%acc1 + 70a0: a2a1 4a36 macl %d6,%d4,<<,%a1@-&,%d1,%acc2 + 70a4: a661 4a26 macl %d6,%d4,<<,%a1@-&,%a3,%acc1 + 70a8: a6e1 4a36 macl %d6,%d4,<<,%a1@-&,%a3,%acc2 + 70ac: a421 4a26 macl %d6,%d4,<<,%a1@-&,%d2,%acc1 + 70b0: a4a1 4a36 macl %d6,%d4,<<,%a1@-&,%d2,%acc2 + 70b4: ae61 4a26 macl %d6,%d4,<<,%a1@-&,%sp,%acc1 + 70b8: aee1 4a36 macl %d6,%d4,<<,%a1@-&,%sp,%acc2 + 70bc: a213 4e06 macl %d6,%d4,>>,%a3@,%d1,%acc1 + 70c0: a293 4e16 macl %d6,%d4,>>,%a3@,%d1,%acc2 + 70c4: a653 4e06 macl %d6,%d4,>>,%a3@,%a3,%acc1 + 70c8: a6d3 4e16 macl %d6,%d4,>>,%a3@,%a3,%acc2 + 70cc: a413 4e06 macl %d6,%d4,>>,%a3@,%d2,%acc1 + 70d0: a493 4e16 macl %d6,%d4,>>,%a3@,%d2,%acc2 + 70d4: ae53 4e06 macl %d6,%d4,>>,%a3@,%sp,%acc1 + 70d8: aed3 4e16 macl %d6,%d4,>>,%a3@,%sp,%acc2 + 70dc: a213 4e26 macl %d6,%d4,>>,%a3@&,%d1,%acc1 + 70e0: a293 4e36 macl %d6,%d4,>>,%a3@&,%d1,%acc2 + 70e4: a653 4e26 macl %d6,%d4,>>,%a3@&,%a3,%acc1 + 70e8: a6d3 4e36 macl %d6,%d4,>>,%a3@&,%a3,%acc2 + 70ec: a413 4e26 macl %d6,%d4,>>,%a3@&,%d2,%acc1 + 70f0: a493 4e36 macl %d6,%d4,>>,%a3@&,%d2,%acc2 + 70f4: ae53 4e26 macl %d6,%d4,>>,%a3@&,%sp,%acc1 + 70f8: aed3 4e36 macl %d6,%d4,>>,%a3@&,%sp,%acc2 + 70fc: a21a 4e06 macl %d6,%d4,>>,%a2@\+,%d1,%acc1 + 7100: a29a 4e16 macl %d6,%d4,>>,%a2@\+,%d1,%acc2 + 7104: a65a 4e06 macl %d6,%d4,>>,%a2@\+,%a3,%acc1 + 7108: a6da 4e16 macl %d6,%d4,>>,%a2@\+,%a3,%acc2 + 710c: a41a 4e06 macl %d6,%d4,>>,%a2@\+,%d2,%acc1 + 7110: a49a 4e16 macl %d6,%d4,>>,%a2@\+,%d2,%acc2 + 7114: ae5a 4e06 macl %d6,%d4,>>,%a2@\+,%sp,%acc1 + 7118: aeda 4e16 macl %d6,%d4,>>,%a2@\+,%sp,%acc2 + 711c: a21a 4e26 macl %d6,%d4,>>,%a2@\+&,%d1,%acc1 + 7120: a29a 4e36 macl %d6,%d4,>>,%a2@\+&,%d1,%acc2 + 7124: a65a 4e26 macl %d6,%d4,>>,%a2@\+&,%a3,%acc1 + 7128: a6da 4e36 macl %d6,%d4,>>,%a2@\+&,%a3,%acc2 + 712c: a41a 4e26 macl %d6,%d4,>>,%a2@\+&,%d2,%acc1 + 7130: a49a 4e36 macl %d6,%d4,>>,%a2@\+&,%d2,%acc2 + 7134: ae5a 4e26 macl %d6,%d4,>>,%a2@\+&,%sp,%acc1 + 7138: aeda 4e36 macl %d6,%d4,>>,%a2@\+&,%sp,%acc2 + 713c: a22e 4e06 000a macl %d6,%d4,>>,%fp@\(10\),%d1,%acc1 + 7142: a2ae 4e16 000a macl %d6,%d4,>>,%fp@\(10\),%d1,%acc2 + 7148: a66e 4e06 000a macl %d6,%d4,>>,%fp@\(10\),%a3,%acc1 + 714e: a6ee 4e16 000a macl %d6,%d4,>>,%fp@\(10\),%a3,%acc2 + 7154: a42e 4e06 000a macl %d6,%d4,>>,%fp@\(10\),%d2,%acc1 + 715a: a4ae 4e16 000a macl %d6,%d4,>>,%fp@\(10\),%d2,%acc2 + 7160: ae6e 4e06 000a macl %d6,%d4,>>,%fp@\(10\),%sp,%acc1 + 7166: aeee 4e16 000a macl %d6,%d4,>>,%fp@\(10\),%sp,%acc2 + 716c: a22e 4e26 000a macl %d6,%d4,>>,%fp@\(10\)&,%d1,%acc1 + 7172: a2ae 4e36 000a macl %d6,%d4,>>,%fp@\(10\)&,%d1,%acc2 + 7178: a66e 4e26 000a macl %d6,%d4,>>,%fp@\(10\)&,%a3,%acc1 + 717e: a6ee 4e36 000a macl %d6,%d4,>>,%fp@\(10\)&,%a3,%acc2 + 7184: a42e 4e26 000a macl %d6,%d4,>>,%fp@\(10\)&,%d2,%acc1 + 718a: a4ae 4e36 000a macl %d6,%d4,>>,%fp@\(10\)&,%d2,%acc2 + 7190: ae6e 4e26 000a macl %d6,%d4,>>,%fp@\(10\)&,%sp,%acc1 + 7196: aeee 4e36 000a macl %d6,%d4,>>,%fp@\(10\)&,%sp,%acc2 + 719c: a221 4e06 macl %d6,%d4,>>,%a1@-,%d1,%acc1 + 71a0: a2a1 4e16 macl %d6,%d4,>>,%a1@-,%d1,%acc2 + 71a4: a661 4e06 macl %d6,%d4,>>,%a1@-,%a3,%acc1 + 71a8: a6e1 4e16 macl %d6,%d4,>>,%a1@-,%a3,%acc2 + 71ac: a421 4e06 macl %d6,%d4,>>,%a1@-,%d2,%acc1 + 71b0: a4a1 4e16 macl %d6,%d4,>>,%a1@-,%d2,%acc2 + 71b4: ae61 4e06 macl %d6,%d4,>>,%a1@-,%sp,%acc1 + 71b8: aee1 4e16 macl %d6,%d4,>>,%a1@-,%sp,%acc2 + 71bc: a221 4e26 macl %d6,%d4,>>,%a1@-&,%d1,%acc1 + 71c0: a2a1 4e36 macl %d6,%d4,>>,%a1@-&,%d1,%acc2 + 71c4: a661 4e26 macl %d6,%d4,>>,%a1@-&,%a3,%acc1 + 71c8: a6e1 4e36 macl %d6,%d4,>>,%a1@-&,%a3,%acc2 + 71cc: a421 4e26 macl %d6,%d4,>>,%a1@-&,%d2,%acc1 + 71d0: a4a1 4e36 macl %d6,%d4,>>,%a1@-&,%d2,%acc2 + 71d4: ae61 4e26 macl %d6,%d4,>>,%a1@-&,%sp,%acc1 + 71d8: aee1 4e36 macl %d6,%d4,>>,%a1@-&,%sp,%acc2 + 71dc: a213 4a06 macl %d6,%d4,<<,%a3@,%d1,%acc1 + 71e0: a293 4a16 macl %d6,%d4,<<,%a3@,%d1,%acc2 + 71e4: a653 4a06 macl %d6,%d4,<<,%a3@,%a3,%acc1 + 71e8: a6d3 4a16 macl %d6,%d4,<<,%a3@,%a3,%acc2 + 71ec: a413 4a06 macl %d6,%d4,<<,%a3@,%d2,%acc1 + 71f0: a493 4a16 macl %d6,%d4,<<,%a3@,%d2,%acc2 + 71f4: ae53 4a06 macl %d6,%d4,<<,%a3@,%sp,%acc1 + 71f8: aed3 4a16 macl %d6,%d4,<<,%a3@,%sp,%acc2 + 71fc: a213 4a26 macl %d6,%d4,<<,%a3@&,%d1,%acc1 + 7200: a293 4a36 macl %d6,%d4,<<,%a3@&,%d1,%acc2 + 7204: a653 4a26 macl %d6,%d4,<<,%a3@&,%a3,%acc1 + 7208: a6d3 4a36 macl %d6,%d4,<<,%a3@&,%a3,%acc2 + 720c: a413 4a26 macl %d6,%d4,<<,%a3@&,%d2,%acc1 + 7210: a493 4a36 macl %d6,%d4,<<,%a3@&,%d2,%acc2 + 7214: ae53 4a26 macl %d6,%d4,<<,%a3@&,%sp,%acc1 + 7218: aed3 4a36 macl %d6,%d4,<<,%a3@&,%sp,%acc2 + 721c: a21a 4a06 macl %d6,%d4,<<,%a2@\+,%d1,%acc1 + 7220: a29a 4a16 macl %d6,%d4,<<,%a2@\+,%d1,%acc2 + 7224: a65a 4a06 macl %d6,%d4,<<,%a2@\+,%a3,%acc1 + 7228: a6da 4a16 macl %d6,%d4,<<,%a2@\+,%a3,%acc2 + 722c: a41a 4a06 macl %d6,%d4,<<,%a2@\+,%d2,%acc1 + 7230: a49a 4a16 macl %d6,%d4,<<,%a2@\+,%d2,%acc2 + 7234: ae5a 4a06 macl %d6,%d4,<<,%a2@\+,%sp,%acc1 + 7238: aeda 4a16 macl %d6,%d4,<<,%a2@\+,%sp,%acc2 + 723c: a21a 4a26 macl %d6,%d4,<<,%a2@\+&,%d1,%acc1 + 7240: a29a 4a36 macl %d6,%d4,<<,%a2@\+&,%d1,%acc2 + 7244: a65a 4a26 macl %d6,%d4,<<,%a2@\+&,%a3,%acc1 + 7248: a6da 4a36 macl %d6,%d4,<<,%a2@\+&,%a3,%acc2 + 724c: a41a 4a26 macl %d6,%d4,<<,%a2@\+&,%d2,%acc1 + 7250: a49a 4a36 macl %d6,%d4,<<,%a2@\+&,%d2,%acc2 + 7254: ae5a 4a26 macl %d6,%d4,<<,%a2@\+&,%sp,%acc1 + 7258: aeda 4a36 macl %d6,%d4,<<,%a2@\+&,%sp,%acc2 + 725c: a22e 4a06 000a macl %d6,%d4,<<,%fp@\(10\),%d1,%acc1 + 7262: a2ae 4a16 000a macl %d6,%d4,<<,%fp@\(10\),%d1,%acc2 + 7268: a66e 4a06 000a macl %d6,%d4,<<,%fp@\(10\),%a3,%acc1 + 726e: a6ee 4a16 000a macl %d6,%d4,<<,%fp@\(10\),%a3,%acc2 + 7274: a42e 4a06 000a macl %d6,%d4,<<,%fp@\(10\),%d2,%acc1 + 727a: a4ae 4a16 000a macl %d6,%d4,<<,%fp@\(10\),%d2,%acc2 + 7280: ae6e 4a06 000a macl %d6,%d4,<<,%fp@\(10\),%sp,%acc1 + 7286: aeee 4a16 000a macl %d6,%d4,<<,%fp@\(10\),%sp,%acc2 + 728c: a22e 4a26 000a macl %d6,%d4,<<,%fp@\(10\)&,%d1,%acc1 + 7292: a2ae 4a36 000a macl %d6,%d4,<<,%fp@\(10\)&,%d1,%acc2 + 7298: a66e 4a26 000a macl %d6,%d4,<<,%fp@\(10\)&,%a3,%acc1 + 729e: a6ee 4a36 000a macl %d6,%d4,<<,%fp@\(10\)&,%a3,%acc2 + 72a4: a42e 4a26 000a macl %d6,%d4,<<,%fp@\(10\)&,%d2,%acc1 + 72aa: a4ae 4a36 000a macl %d6,%d4,<<,%fp@\(10\)&,%d2,%acc2 + 72b0: ae6e 4a26 000a macl %d6,%d4,<<,%fp@\(10\)&,%sp,%acc1 + 72b6: aeee 4a36 000a macl %d6,%d4,<<,%fp@\(10\)&,%sp,%acc2 + 72bc: a221 4a06 macl %d6,%d4,<<,%a1@-,%d1,%acc1 + 72c0: a2a1 4a16 macl %d6,%d4,<<,%a1@-,%d1,%acc2 + 72c4: a661 4a06 macl %d6,%d4,<<,%a1@-,%a3,%acc1 + 72c8: a6e1 4a16 macl %d6,%d4,<<,%a1@-,%a3,%acc2 + 72cc: a421 4a06 macl %d6,%d4,<<,%a1@-,%d2,%acc1 + 72d0: a4a1 4a16 macl %d6,%d4,<<,%a1@-,%d2,%acc2 + 72d4: ae61 4a06 macl %d6,%d4,<<,%a1@-,%sp,%acc1 + 72d8: aee1 4a16 macl %d6,%d4,<<,%a1@-,%sp,%acc2 + 72dc: a221 4a26 macl %d6,%d4,<<,%a1@-&,%d1,%acc1 + 72e0: a2a1 4a36 macl %d6,%d4,<<,%a1@-&,%d1,%acc2 + 72e4: a661 4a26 macl %d6,%d4,<<,%a1@-&,%a3,%acc1 + 72e8: a6e1 4a36 macl %d6,%d4,<<,%a1@-&,%a3,%acc2 + 72ec: a421 4a26 macl %d6,%d4,<<,%a1@-&,%d2,%acc1 + 72f0: a4a1 4a36 macl %d6,%d4,<<,%a1@-&,%d2,%acc2 + 72f4: ae61 4a26 macl %d6,%d4,<<,%a1@-&,%sp,%acc1 + 72f8: aee1 4a36 macl %d6,%d4,<<,%a1@-&,%sp,%acc2 + 72fc: a213 4e06 macl %d6,%d4,>>,%a3@,%d1,%acc1 + 7300: a293 4e16 macl %d6,%d4,>>,%a3@,%d1,%acc2 + 7304: a653 4e06 macl %d6,%d4,>>,%a3@,%a3,%acc1 + 7308: a6d3 4e16 macl %d6,%d4,>>,%a3@,%a3,%acc2 + 730c: a413 4e06 macl %d6,%d4,>>,%a3@,%d2,%acc1 + 7310: a493 4e16 macl %d6,%d4,>>,%a3@,%d2,%acc2 + 7314: ae53 4e06 macl %d6,%d4,>>,%a3@,%sp,%acc1 + 7318: aed3 4e16 macl %d6,%d4,>>,%a3@,%sp,%acc2 + 731c: a213 4e26 macl %d6,%d4,>>,%a3@&,%d1,%acc1 + 7320: a293 4e36 macl %d6,%d4,>>,%a3@&,%d1,%acc2 + 7324: a653 4e26 macl %d6,%d4,>>,%a3@&,%a3,%acc1 + 7328: a6d3 4e36 macl %d6,%d4,>>,%a3@&,%a3,%acc2 + 732c: a413 4e26 macl %d6,%d4,>>,%a3@&,%d2,%acc1 + 7330: a493 4e36 macl %d6,%d4,>>,%a3@&,%d2,%acc2 + 7334: ae53 4e26 macl %d6,%d4,>>,%a3@&,%sp,%acc1 + 7338: aed3 4e36 macl %d6,%d4,>>,%a3@&,%sp,%acc2 + 733c: a21a 4e06 macl %d6,%d4,>>,%a2@\+,%d1,%acc1 + 7340: a29a 4e16 macl %d6,%d4,>>,%a2@\+,%d1,%acc2 + 7344: a65a 4e06 macl %d6,%d4,>>,%a2@\+,%a3,%acc1 + 7348: a6da 4e16 macl %d6,%d4,>>,%a2@\+,%a3,%acc2 + 734c: a41a 4e06 macl %d6,%d4,>>,%a2@\+,%d2,%acc1 + 7350: a49a 4e16 macl %d6,%d4,>>,%a2@\+,%d2,%acc2 + 7354: ae5a 4e06 macl %d6,%d4,>>,%a2@\+,%sp,%acc1 + 7358: aeda 4e16 macl %d6,%d4,>>,%a2@\+,%sp,%acc2 + 735c: a21a 4e26 macl %d6,%d4,>>,%a2@\+&,%d1,%acc1 + 7360: a29a 4e36 macl %d6,%d4,>>,%a2@\+&,%d1,%acc2 + 7364: a65a 4e26 macl %d6,%d4,>>,%a2@\+&,%a3,%acc1 + 7368: a6da 4e36 macl %d6,%d4,>>,%a2@\+&,%a3,%acc2 + 736c: a41a 4e26 macl %d6,%d4,>>,%a2@\+&,%d2,%acc1 + 7370: a49a 4e36 macl %d6,%d4,>>,%a2@\+&,%d2,%acc2 + 7374: ae5a 4e26 macl %d6,%d4,>>,%a2@\+&,%sp,%acc1 + 7378: aeda 4e36 macl %d6,%d4,>>,%a2@\+&,%sp,%acc2 + 737c: a22e 4e06 000a macl %d6,%d4,>>,%fp@\(10\),%d1,%acc1 + 7382: a2ae 4e16 000a macl %d6,%d4,>>,%fp@\(10\),%d1,%acc2 + 7388: a66e 4e06 000a macl %d6,%d4,>>,%fp@\(10\),%a3,%acc1 + 738e: a6ee 4e16 000a macl %d6,%d4,>>,%fp@\(10\),%a3,%acc2 + 7394: a42e 4e06 000a macl %d6,%d4,>>,%fp@\(10\),%d2,%acc1 + 739a: a4ae 4e16 000a macl %d6,%d4,>>,%fp@\(10\),%d2,%acc2 + 73a0: ae6e 4e06 000a macl %d6,%d4,>>,%fp@\(10\),%sp,%acc1 + 73a6: aeee 4e16 000a macl %d6,%d4,>>,%fp@\(10\),%sp,%acc2 + 73ac: a22e 4e26 000a macl %d6,%d4,>>,%fp@\(10\)&,%d1,%acc1 + 73b2: a2ae 4e36 000a macl %d6,%d4,>>,%fp@\(10\)&,%d1,%acc2 + 73b8: a66e 4e26 000a macl %d6,%d4,>>,%fp@\(10\)&,%a3,%acc1 + 73be: a6ee 4e36 000a macl %d6,%d4,>>,%fp@\(10\)&,%a3,%acc2 + 73c4: a42e 4e26 000a macl %d6,%d4,>>,%fp@\(10\)&,%d2,%acc1 + 73ca: a4ae 4e36 000a macl %d6,%d4,>>,%fp@\(10\)&,%d2,%acc2 + 73d0: ae6e 4e26 000a macl %d6,%d4,>>,%fp@\(10\)&,%sp,%acc1 + 73d6: aeee 4e36 000a macl %d6,%d4,>>,%fp@\(10\)&,%sp,%acc2 + 73dc: a221 4e06 macl %d6,%d4,>>,%a1@-,%d1,%acc1 + 73e0: a2a1 4e16 macl %d6,%d4,>>,%a1@-,%d1,%acc2 + 73e4: a661 4e06 macl %d6,%d4,>>,%a1@-,%a3,%acc1 + 73e8: a6e1 4e16 macl %d6,%d4,>>,%a1@-,%a3,%acc2 + 73ec: a421 4e06 macl %d6,%d4,>>,%a1@-,%d2,%acc1 + 73f0: a4a1 4e16 macl %d6,%d4,>>,%a1@-,%d2,%acc2 + 73f4: ae61 4e06 macl %d6,%d4,>>,%a1@-,%sp,%acc1 + 73f8: aee1 4e16 macl %d6,%d4,>>,%a1@-,%sp,%acc2 + 73fc: a221 4e26 macl %d6,%d4,>>,%a1@-&,%d1,%acc1 + 7400: a2a1 4e36 macl %d6,%d4,>>,%a1@-&,%d1,%acc2 + 7404: a661 4e26 macl %d6,%d4,>>,%a1@-&,%a3,%acc1 + 7408: a6e1 4e36 macl %d6,%d4,>>,%a1@-&,%a3,%acc2 + 740c: a421 4e26 macl %d6,%d4,>>,%a1@-&,%d2,%acc1 + 7410: a4a1 4e36 macl %d6,%d4,>>,%a1@-&,%d2,%acc2 + 7414: ae61 4e26 macl %d6,%d4,>>,%a1@-&,%sp,%acc1 + 7418: aee1 4e36 macl %d6,%d4,>>,%a1@-&,%sp,%acc2 diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/m68k/mcf-emac.s binutils-2.15.91.0.1/gas/testsuite/gas/m68k/mcf-emac.s --- binutils-2.15.90.0.3/gas/testsuite/gas/m68k/mcf-emac.s 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/m68k/mcf-emac.s 2004-05-27 11:26:04.321212031 -0700 @@ -0,0 +1,6660 @@ + .text + mac.w %d1l,%a1u,<<,%acc0 | + mac.w %d1l,%a5u,<<,(%a0),%a1,%acc0 + mac.w %d5l,%a3u,<<,(%a0)&,%d2,%acc0 + + move.l #12345678,%acc0 + move.l %d1,%acc1 + move.l #12345678,%acc1 + move.l #12345678,%acc2 + move.l %a1,%acc1 + move.l #12345678,%acc3 + + mac.w %d3u,%a4l,>>,%acc1 + mac.w %d5u,%a6l,%acc1 + + mac.l %d2,%d3,%acc0 + mac.l %d2,%d3,%acc1 + mac.l %d2,%d3,%acc2 + mac.l %d2,%d3,%acc3 + + movclr.l %acc0,%d1 + movclr.l %acc1,%a2 + movclr.l %acc2,%d3 + movclr.l %acc3,%a5 + + move.l %acc1,%d1 + move.l %acc3,%a3 + move.l %acc0,%d5 + move.l %acc1,%a7 + + move.l %acc0,%acc0 + move.l %acc0,%acc1 + move.l %acc0,%acc2 + move.l %acc0,%acc3 + move.l %acc1,%acc0 + move.l %acc1,%acc1 + move.l %acc1,%acc2 + move.l %acc1,%acc3 + move.l %acc2,%acc0 + move.l %acc2,%acc1 + move.l %acc2,%acc2 + move.l %acc2,%acc3 + move.l %acc3,%acc0 + move.l %acc3,%acc1 + move.l %acc3,%acc2 + move.l %acc3,%acc3 + + move.l %accext01,%a0 + move.l %accext23,%a7 + + move.l %acc0,%d0 + move.l %acc1,%a1 + move.l %acc2,%d2 + move.l %acc3,%a3 + + | Automated mac insns for testing + + mac.w %a1l,%a2u,%acc1 + mac.w %a1l,%a2u,%acc2 + mac.w %a1l,%a2u,<<,%acc1 + mac.w %a1l,%a2u,<<,%acc2 + mac.w %a1l,%a2u,>>,%acc1 + mac.w %a1l,%a2u,>>,%acc2 + mac.w %a1l,%a2u,#1,%acc1 + mac.w %a1l,%a2u,#1,%acc2 + mac.w %a1l,%a2u,#-1,%acc1 + mac.w %a1l,%a2u,#-1,%acc2 + mac.w %a1l,%d3l,%acc1 + mac.w %a1l,%d3l,%acc2 + mac.w %a1l,%d3l,<<,%acc1 + mac.w %a1l,%d3l,<<,%acc2 + mac.w %a1l,%d3l,>>,%acc1 + mac.w %a1l,%d3l,>>,%acc2 + mac.w %a1l,%d3l,#1,%acc1 + mac.w %a1l,%d3l,#1,%acc2 + mac.w %a1l,%d3l,#-1,%acc1 + mac.w %a1l,%d3l,#-1,%acc2 + mac.w %a1l,%a7u,%acc1 + mac.w %a1l,%a7u,%acc2 + mac.w %a1l,%a7u,<<,%acc1 + mac.w %a1l,%a7u,<<,%acc2 + mac.w %a1l,%a7u,>>,%acc1 + mac.w %a1l,%a7u,>>,%acc2 + mac.w %a1l,%a7u,#1,%acc1 + mac.w %a1l,%a7u,#1,%acc2 + mac.w %a1l,%a7u,#-1,%acc1 + mac.w %a1l,%a7u,#-1,%acc2 + mac.w %a1l,%d1l,%acc1 + mac.w %a1l,%d1l,%acc2 + mac.w %a1l,%d1l,<<,%acc1 + mac.w %a1l,%d1l,<<,%acc2 + mac.w %a1l,%d1l,>>,%acc1 + mac.w %a1l,%d1l,>>,%acc2 + mac.w %a1l,%d1l,#1,%acc1 + mac.w %a1l,%d1l,#1,%acc2 + mac.w %a1l,%d1l,#-1,%acc1 + mac.w %a1l,%d1l,#-1,%acc2 + mac.w %d2u,%a2u,%acc1 + mac.w %d2u,%a2u,%acc2 + mac.w %d2u,%a2u,<<,%acc1 + mac.w %d2u,%a2u,<<,%acc2 + mac.w %d2u,%a2u,>>,%acc1 + mac.w %d2u,%a2u,>>,%acc2 + mac.w %d2u,%a2u,#1,%acc1 + mac.w %d2u,%a2u,#1,%acc2 + mac.w %d2u,%a2u,#-1,%acc1 + mac.w %d2u,%a2u,#-1,%acc2 + mac.w %d2u,%d3l,%acc1 + mac.w %d2u,%d3l,%acc2 + mac.w %d2u,%d3l,<<,%acc1 + mac.w %d2u,%d3l,<<,%acc2 + mac.w %d2u,%d3l,>>,%acc1 + mac.w %d2u,%d3l,>>,%acc2 + mac.w %d2u,%d3l,#1,%acc1 + mac.w %d2u,%d3l,#1,%acc2 + mac.w %d2u,%d3l,#-1,%acc1 + mac.w %d2u,%d3l,#-1,%acc2 + mac.w %d2u,%a7u,%acc1 + mac.w %d2u,%a7u,%acc2 + mac.w %d2u,%a7u,<<,%acc1 + mac.w %d2u,%a7u,<<,%acc2 + mac.w %d2u,%a7u,>>,%acc1 + mac.w %d2u,%a7u,>>,%acc2 + mac.w %d2u,%a7u,#1,%acc1 + mac.w %d2u,%a7u,#1,%acc2 + mac.w %d2u,%a7u,#-1,%acc1 + mac.w %d2u,%a7u,#-1,%acc2 + mac.w %d2u,%d1l,%acc1 + mac.w %d2u,%d1l,%acc2 + mac.w %d2u,%d1l,<<,%acc1 + mac.w %d2u,%d1l,<<,%acc2 + mac.w %d2u,%d1l,>>,%acc1 + mac.w %d2u,%d1l,>>,%acc2 + mac.w %d2u,%d1l,#1,%acc1 + mac.w %d2u,%d1l,#1,%acc2 + mac.w %d2u,%d1l,#-1,%acc1 + mac.w %d2u,%d1l,#-1,%acc2 + mac.w %a5l,%a2u,%acc1 + mac.w %a5l,%a2u,%acc2 + mac.w %a5l,%a2u,<<,%acc1 + mac.w %a5l,%a2u,<<,%acc2 + mac.w %a5l,%a2u,>>,%acc1 + mac.w %a5l,%a2u,>>,%acc2 + mac.w %a5l,%a2u,#1,%acc1 + mac.w %a5l,%a2u,#1,%acc2 + mac.w %a5l,%a2u,#-1,%acc1 + mac.w %a5l,%a2u,#-1,%acc2 + mac.w %a5l,%d3l,%acc1 + mac.w %a5l,%d3l,%acc2 + mac.w %a5l,%d3l,<<,%acc1 + mac.w %a5l,%d3l,<<,%acc2 + mac.w %a5l,%d3l,>>,%acc1 + mac.w %a5l,%d3l,>>,%acc2 + mac.w %a5l,%d3l,#1,%acc1 + mac.w %a5l,%d3l,#1,%acc2 + mac.w %a5l,%d3l,#-1,%acc1 + mac.w %a5l,%d3l,#-1,%acc2 + mac.w %a5l,%a7u,%acc1 + mac.w %a5l,%a7u,%acc2 + mac.w %a5l,%a7u,<<,%acc1 + mac.w %a5l,%a7u,<<,%acc2 + mac.w %a5l,%a7u,>>,%acc1 + mac.w %a5l,%a7u,>>,%acc2 + mac.w %a5l,%a7u,#1,%acc1 + mac.w %a5l,%a7u,#1,%acc2 + mac.w %a5l,%a7u,#-1,%acc1 + mac.w %a5l,%a7u,#-1,%acc2 + mac.w %a5l,%d1l,%acc1 + mac.w %a5l,%d1l,%acc2 + mac.w %a5l,%d1l,<<,%acc1 + mac.w %a5l,%d1l,<<,%acc2 + mac.w %a5l,%d1l,>>,%acc1 + mac.w %a5l,%d1l,>>,%acc2 + mac.w %a5l,%d1l,#1,%acc1 + mac.w %a5l,%d1l,#1,%acc2 + mac.w %a5l,%d1l,#-1,%acc1 + mac.w %a5l,%d1l,#-1,%acc2 + mac.w %d6u,%a2u,%acc1 + mac.w %d6u,%a2u,%acc2 + mac.w %d6u,%a2u,<<,%acc1 + mac.w %d6u,%a2u,<<,%acc2 + mac.w %d6u,%a2u,>>,%acc1 + mac.w %d6u,%a2u,>>,%acc2 + mac.w %d6u,%a2u,#1,%acc1 + mac.w %d6u,%a2u,#1,%acc2 + mac.w %d6u,%a2u,#-1,%acc1 + mac.w %d6u,%a2u,#-1,%acc2 + mac.w %d6u,%d3l,%acc1 + mac.w %d6u,%d3l,%acc2 + mac.w %d6u,%d3l,<<,%acc1 + mac.w %d6u,%d3l,<<,%acc2 + mac.w %d6u,%d3l,>>,%acc1 + mac.w %d6u,%d3l,>>,%acc2 + mac.w %d6u,%d3l,#1,%acc1 + mac.w %d6u,%d3l,#1,%acc2 + mac.w %d6u,%d3l,#-1,%acc1 + mac.w %d6u,%d3l,#-1,%acc2 + mac.w %d6u,%a7u,%acc1 + mac.w %d6u,%a7u,%acc2 + mac.w %d6u,%a7u,<<,%acc1 + mac.w %d6u,%a7u,<<,%acc2 + mac.w %d6u,%a7u,>>,%acc1 + mac.w %d6u,%a7u,>>,%acc2 + mac.w %d6u,%a7u,#1,%acc1 + mac.w %d6u,%a7u,#1,%acc2 + mac.w %d6u,%a7u,#-1,%acc1 + mac.w %d6u,%a7u,#-1,%acc2 + mac.w %d6u,%d1l,%acc1 + mac.w %d6u,%d1l,%acc2 + mac.w %d6u,%d1l,<<,%acc1 + mac.w %d6u,%d1l,<<,%acc2 + mac.w %d6u,%d1l,>>,%acc1 + mac.w %d6u,%d1l,>>,%acc2 + mac.w %d6u,%d1l,#1,%acc1 + mac.w %d6u,%d1l,#1,%acc2 + mac.w %d6u,%d1l,#-1,%acc1 + mac.w %d6u,%d1l,#-1,%acc2 + + mac.w %a1l,%a2u,(%a3),%d1,%acc1 + mac.w %a1l,%a2u,(%a3),%d1,%acc2 + mac.w %a1l,%a2u,(%a3),%a3,%acc1 + mac.w %a1l,%a2u,(%a3),%a3,%acc2 + mac.w %a1l,%a2u,(%a3),%d2,%acc1 + mac.w %a1l,%a2u,(%a3),%d2,%acc2 + mac.w %a1l,%a2u,(%a3),%a7,%acc1 + mac.w %a1l,%a2u,(%a3),%a7,%acc2 + mac.w %a1l,%a2u,(%a3)&,%d1,%acc1 + mac.w %a1l,%a2u,(%a3)&,%d1,%acc2 + mac.w %a1l,%a2u,(%a3)&,%a3,%acc1 + mac.w %a1l,%a2u,(%a3)&,%a3,%acc2 + mac.w %a1l,%a2u,(%a3)&,%d2,%acc1 + mac.w %a1l,%a2u,(%a3)&,%d2,%acc2 + mac.w %a1l,%a2u,(%a3)&,%a7,%acc1 + mac.w %a1l,%a2u,(%a3)&,%a7,%acc2 + mac.w %a1l,%a2u,(%a2)+,%d1,%acc1 + mac.w %a1l,%a2u,(%a2)+,%d1,%acc2 + mac.w %a1l,%a2u,(%a2)+,%a3,%acc1 + mac.w %a1l,%a2u,(%a2)+,%a3,%acc2 + mac.w %a1l,%a2u,(%a2)+,%d2,%acc1 + mac.w %a1l,%a2u,(%a2)+,%d2,%acc2 + mac.w %a1l,%a2u,(%a2)+,%a7,%acc1 + mac.w %a1l,%a2u,(%a2)+,%a7,%acc2 + mac.w %a1l,%a2u,(%a2)+&,%d1,%acc1 + mac.w %a1l,%a2u,(%a2)+&,%d1,%acc2 + mac.w %a1l,%a2u,(%a2)+&,%a3,%acc1 + mac.w %a1l,%a2u,(%a2)+&,%a3,%acc2 + mac.w %a1l,%a2u,(%a2)+&,%d2,%acc1 + mac.w %a1l,%a2u,(%a2)+&,%d2,%acc2 + mac.w %a1l,%a2u,(%a2)+&,%a7,%acc1 + mac.w %a1l,%a2u,(%a2)+&,%a7,%acc2 + mac.w %a1l,%a2u,10(%a6),%d1,%acc1 + mac.w %a1l,%a2u,10(%a6),%d1,%acc2 + mac.w %a1l,%a2u,10(%a6),%a3,%acc1 + mac.w %a1l,%a2u,10(%a6),%a3,%acc2 + mac.w %a1l,%a2u,10(%a6),%d2,%acc1 + mac.w %a1l,%a2u,10(%a6),%d2,%acc2 + mac.w %a1l,%a2u,10(%a6),%a7,%acc1 + mac.w %a1l,%a2u,10(%a6),%a7,%acc2 + mac.w %a1l,%a2u,10(%a6)&,%d1,%acc1 + mac.w %a1l,%a2u,10(%a6)&,%d1,%acc2 + mac.w %a1l,%a2u,10(%a6)&,%a3,%acc1 + mac.w %a1l,%a2u,10(%a6)&,%a3,%acc2 + mac.w %a1l,%a2u,10(%a6)&,%d2,%acc1 + mac.w %a1l,%a2u,10(%a6)&,%d2,%acc2 + mac.w %a1l,%a2u,10(%a6)&,%a7,%acc1 + mac.w %a1l,%a2u,10(%a6)&,%a7,%acc2 + mac.w %a1l,%a2u,-(%a1),%d1,%acc1 + mac.w %a1l,%a2u,-(%a1),%d1,%acc2 + mac.w %a1l,%a2u,-(%a1),%a3,%acc1 + mac.w %a1l,%a2u,-(%a1),%a3,%acc2 + mac.w %a1l,%a2u,-(%a1),%d2,%acc1 + mac.w %a1l,%a2u,-(%a1),%d2,%acc2 + mac.w %a1l,%a2u,-(%a1),%a7,%acc1 + mac.w %a1l,%a2u,-(%a1),%a7,%acc2 + mac.w %a1l,%a2u,-(%a1)&,%d1,%acc1 + mac.w %a1l,%a2u,-(%a1)&,%d1,%acc2 + mac.w %a1l,%a2u,-(%a1)&,%a3,%acc1 + mac.w %a1l,%a2u,-(%a1)&,%a3,%acc2 + mac.w %a1l,%a2u,-(%a1)&,%d2,%acc1 + mac.w %a1l,%a2u,-(%a1)&,%d2,%acc2 + mac.w %a1l,%a2u,-(%a1)&,%a7,%acc1 + mac.w %a1l,%a2u,-(%a1)&,%a7,%acc2 + mac.w %a1l,%a2u,<<,(%a3),%d1,%acc1 + mac.w %a1l,%a2u,<<,(%a3),%d1,%acc2 + mac.w %a1l,%a2u,<<,(%a3),%a3,%acc1 + mac.w %a1l,%a2u,<<,(%a3),%a3,%acc2 + mac.w %a1l,%a2u,<<,(%a3),%d2,%acc1 + mac.w %a1l,%a2u,<<,(%a3),%d2,%acc2 + mac.w %a1l,%a2u,<<,(%a3),%a7,%acc1 + mac.w %a1l,%a2u,<<,(%a3),%a7,%acc2 + mac.w %a1l,%a2u,<<,(%a3)&,%d1,%acc1 + mac.w %a1l,%a2u,<<,(%a3)&,%d1,%acc2 + mac.w %a1l,%a2u,<<,(%a3)&,%a3,%acc1 + mac.w %a1l,%a2u,<<,(%a3)&,%a3,%acc2 + mac.w %a1l,%a2u,<<,(%a3)&,%d2,%acc1 + mac.w %a1l,%a2u,<<,(%a3)&,%d2,%acc2 + mac.w %a1l,%a2u,<<,(%a3)&,%a7,%acc1 + mac.w %a1l,%a2u,<<,(%a3)&,%a7,%acc2 + mac.w %a1l,%a2u,<<,(%a2)+,%d1,%acc1 + mac.w %a1l,%a2u,<<,(%a2)+,%d1,%acc2 + mac.w %a1l,%a2u,<<,(%a2)+,%a3,%acc1 + mac.w %a1l,%a2u,<<,(%a2)+,%a3,%acc2 + mac.w %a1l,%a2u,<<,(%a2)+,%d2,%acc1 + mac.w %a1l,%a2u,<<,(%a2)+,%d2,%acc2 + mac.w %a1l,%a2u,<<,(%a2)+,%a7,%acc1 + mac.w %a1l,%a2u,<<,(%a2)+,%a7,%acc2 + mac.w %a1l,%a2u,<<,(%a2)+&,%d1,%acc1 + mac.w %a1l,%a2u,<<,(%a2)+&,%d1,%acc2 + mac.w %a1l,%a2u,<<,(%a2)+&,%a3,%acc1 + mac.w %a1l,%a2u,<<,(%a2)+&,%a3,%acc2 + mac.w %a1l,%a2u,<<,(%a2)+&,%d2,%acc1 + mac.w %a1l,%a2u,<<,(%a2)+&,%d2,%acc2 + mac.w %a1l,%a2u,<<,(%a2)+&,%a7,%acc1 + mac.w %a1l,%a2u,<<,(%a2)+&,%a7,%acc2 + mac.w %a1l,%a2u,<<,10(%a6),%d1,%acc1 + mac.w %a1l,%a2u,<<,10(%a6),%d1,%acc2 + mac.w %a1l,%a2u,<<,10(%a6),%a3,%acc1 + mac.w %a1l,%a2u,<<,10(%a6),%a3,%acc2 + mac.w %a1l,%a2u,<<,10(%a6),%d2,%acc1 + mac.w %a1l,%a2u,<<,10(%a6),%d2,%acc2 + mac.w %a1l,%a2u,<<,10(%a6),%a7,%acc1 + mac.w %a1l,%a2u,<<,10(%a6),%a7,%acc2 + mac.w %a1l,%a2u,<<,10(%a6)&,%d1,%acc1 + mac.w %a1l,%a2u,<<,10(%a6)&,%d1,%acc2 + mac.w %a1l,%a2u,<<,10(%a6)&,%a3,%acc1 + mac.w %a1l,%a2u,<<,10(%a6)&,%a3,%acc2 + mac.w %a1l,%a2u,<<,10(%a6)&,%d2,%acc1 + mac.w %a1l,%a2u,<<,10(%a6)&,%d2,%acc2 + mac.w %a1l,%a2u,<<,10(%a6)&,%a7,%acc1 + mac.w %a1l,%a2u,<<,10(%a6)&,%a7,%acc2 + mac.w %a1l,%a2u,<<,-(%a1),%d1,%acc1 + mac.w %a1l,%a2u,<<,-(%a1),%d1,%acc2 + mac.w %a1l,%a2u,<<,-(%a1),%a3,%acc1 + mac.w %a1l,%a2u,<<,-(%a1),%a3,%acc2 + mac.w %a1l,%a2u,<<,-(%a1),%d2,%acc1 + mac.w %a1l,%a2u,<<,-(%a1),%d2,%acc2 + mac.w %a1l,%a2u,<<,-(%a1),%a7,%acc1 + mac.w %a1l,%a2u,<<,-(%a1),%a7,%acc2 + mac.w %a1l,%a2u,<<,-(%a1)&,%d1,%acc1 + mac.w %a1l,%a2u,<<,-(%a1)&,%d1,%acc2 + mac.w %a1l,%a2u,<<,-(%a1)&,%a3,%acc1 + mac.w %a1l,%a2u,<<,-(%a1)&,%a3,%acc2 + mac.w %a1l,%a2u,<<,-(%a1)&,%d2,%acc1 + mac.w %a1l,%a2u,<<,-(%a1)&,%d2,%acc2 + mac.w %a1l,%a2u,<<,-(%a1)&,%a7,%acc1 + mac.w %a1l,%a2u,<<,-(%a1)&,%a7,%acc2 + mac.w %a1l,%a2u,>>,(%a3),%d1,%acc1 + mac.w %a1l,%a2u,>>,(%a3),%d1,%acc2 + mac.w %a1l,%a2u,>>,(%a3),%a3,%acc1 + mac.w %a1l,%a2u,>>,(%a3),%a3,%acc2 + mac.w %a1l,%a2u,>>,(%a3),%d2,%acc1 + mac.w %a1l,%a2u,>>,(%a3),%d2,%acc2 + mac.w %a1l,%a2u,>>,(%a3),%a7,%acc1 + mac.w %a1l,%a2u,>>,(%a3),%a7,%acc2 + mac.w %a1l,%a2u,>>,(%a3)&,%d1,%acc1 + mac.w %a1l,%a2u,>>,(%a3)&,%d1,%acc2 + mac.w %a1l,%a2u,>>,(%a3)&,%a3,%acc1 + mac.w %a1l,%a2u,>>,(%a3)&,%a3,%acc2 + mac.w %a1l,%a2u,>>,(%a3)&,%d2,%acc1 + mac.w %a1l,%a2u,>>,(%a3)&,%d2,%acc2 + mac.w %a1l,%a2u,>>,(%a3)&,%a7,%acc1 + mac.w %a1l,%a2u,>>,(%a3)&,%a7,%acc2 + mac.w %a1l,%a2u,>>,(%a2)+,%d1,%acc1 + mac.w %a1l,%a2u,>>,(%a2)+,%d1,%acc2 + mac.w %a1l,%a2u,>>,(%a2)+,%a3,%acc1 + mac.w %a1l,%a2u,>>,(%a2)+,%a3,%acc2 + mac.w %a1l,%a2u,>>,(%a2)+,%d2,%acc1 + mac.w %a1l,%a2u,>>,(%a2)+,%d2,%acc2 + mac.w %a1l,%a2u,>>,(%a2)+,%a7,%acc1 + mac.w %a1l,%a2u,>>,(%a2)+,%a7,%acc2 + mac.w %a1l,%a2u,>>,(%a2)+&,%d1,%acc1 + mac.w %a1l,%a2u,>>,(%a2)+&,%d1,%acc2 + mac.w %a1l,%a2u,>>,(%a2)+&,%a3,%acc1 + mac.w %a1l,%a2u,>>,(%a2)+&,%a3,%acc2 + mac.w %a1l,%a2u,>>,(%a2)+&,%d2,%acc1 + mac.w %a1l,%a2u,>>,(%a2)+&,%d2,%acc2 + mac.w %a1l,%a2u,>>,(%a2)+&,%a7,%acc1 + mac.w %a1l,%a2u,>>,(%a2)+&,%a7,%acc2 + mac.w %a1l,%a2u,>>,10(%a6),%d1,%acc1 + mac.w %a1l,%a2u,>>,10(%a6),%d1,%acc2 + mac.w %a1l,%a2u,>>,10(%a6),%a3,%acc1 + mac.w %a1l,%a2u,>>,10(%a6),%a3,%acc2 + mac.w %a1l,%a2u,>>,10(%a6),%d2,%acc1 + mac.w %a1l,%a2u,>>,10(%a6),%d2,%acc2 + mac.w %a1l,%a2u,>>,10(%a6),%a7,%acc1 + mac.w %a1l,%a2u,>>,10(%a6),%a7,%acc2 + mac.w %a1l,%a2u,>>,10(%a6)&,%d1,%acc1 + mac.w %a1l,%a2u,>>,10(%a6)&,%d1,%acc2 + mac.w %a1l,%a2u,>>,10(%a6)&,%a3,%acc1 + mac.w %a1l,%a2u,>>,10(%a6)&,%a3,%acc2 + mac.w %a1l,%a2u,>>,10(%a6)&,%d2,%acc1 + mac.w %a1l,%a2u,>>,10(%a6)&,%d2,%acc2 + mac.w %a1l,%a2u,>>,10(%a6)&,%a7,%acc1 + mac.w %a1l,%a2u,>>,10(%a6)&,%a7,%acc2 + mac.w %a1l,%a2u,>>,-(%a1),%d1,%acc1 + mac.w %a1l,%a2u,>>,-(%a1),%d1,%acc2 + mac.w %a1l,%a2u,>>,-(%a1),%a3,%acc1 + mac.w %a1l,%a2u,>>,-(%a1),%a3,%acc2 + mac.w %a1l,%a2u,>>,-(%a1),%d2,%acc1 + mac.w %a1l,%a2u,>>,-(%a1),%d2,%acc2 + mac.w %a1l,%a2u,>>,-(%a1),%a7,%acc1 + mac.w %a1l,%a2u,>>,-(%a1),%a7,%acc2 + mac.w %a1l,%a2u,>>,-(%a1)&,%d1,%acc1 + mac.w %a1l,%a2u,>>,-(%a1)&,%d1,%acc2 + mac.w %a1l,%a2u,>>,-(%a1)&,%a3,%acc1 + mac.w %a1l,%a2u,>>,-(%a1)&,%a3,%acc2 + mac.w %a1l,%a2u,>>,-(%a1)&,%d2,%acc1 + mac.w %a1l,%a2u,>>,-(%a1)&,%d2,%acc2 + mac.w %a1l,%a2u,>>,-(%a1)&,%a7,%acc1 + mac.w %a1l,%a2u,>>,-(%a1)&,%a7,%acc2 + mac.w %a1l,%a2u,#1,(%a3),%d1,%acc1 + mac.w %a1l,%a2u,#1,(%a3),%d1,%acc2 + mac.w %a1l,%a2u,#1,(%a3),%a3,%acc1 + mac.w %a1l,%a2u,#1,(%a3),%a3,%acc2 + mac.w %a1l,%a2u,#1,(%a3),%d2,%acc1 + mac.w %a1l,%a2u,#1,(%a3),%d2,%acc2 + mac.w %a1l,%a2u,#1,(%a3),%a7,%acc1 + mac.w %a1l,%a2u,#1,(%a3),%a7,%acc2 + mac.w %a1l,%a2u,#1,(%a3)&,%d1,%acc1 + mac.w %a1l,%a2u,#1,(%a3)&,%d1,%acc2 + mac.w %a1l,%a2u,#1,(%a3)&,%a3,%acc1 + mac.w %a1l,%a2u,#1,(%a3)&,%a3,%acc2 + mac.w %a1l,%a2u,#1,(%a3)&,%d2,%acc1 + mac.w %a1l,%a2u,#1,(%a3)&,%d2,%acc2 + mac.w %a1l,%a2u,#1,(%a3)&,%a7,%acc1 + mac.w %a1l,%a2u,#1,(%a3)&,%a7,%acc2 + mac.w %a1l,%a2u,#1,(%a2)+,%d1,%acc1 + mac.w %a1l,%a2u,#1,(%a2)+,%d1,%acc2 + mac.w %a1l,%a2u,#1,(%a2)+,%a3,%acc1 + mac.w %a1l,%a2u,#1,(%a2)+,%a3,%acc2 + mac.w %a1l,%a2u,#1,(%a2)+,%d2,%acc1 + mac.w %a1l,%a2u,#1,(%a2)+,%d2,%acc2 + mac.w %a1l,%a2u,#1,(%a2)+,%a7,%acc1 + mac.w %a1l,%a2u,#1,(%a2)+,%a7,%acc2 + mac.w %a1l,%a2u,#1,(%a2)+&,%d1,%acc1 + mac.w %a1l,%a2u,#1,(%a2)+&,%d1,%acc2 + mac.w %a1l,%a2u,#1,(%a2)+&,%a3,%acc1 + mac.w %a1l,%a2u,#1,(%a2)+&,%a3,%acc2 + mac.w %a1l,%a2u,#1,(%a2)+&,%d2,%acc1 + mac.w %a1l,%a2u,#1,(%a2)+&,%d2,%acc2 + mac.w %a1l,%a2u,#1,(%a2)+&,%a7,%acc1 + mac.w %a1l,%a2u,#1,(%a2)+&,%a7,%acc2 + mac.w %a1l,%a2u,#1,10(%a6),%d1,%acc1 + mac.w %a1l,%a2u,#1,10(%a6),%d1,%acc2 + mac.w %a1l,%a2u,#1,10(%a6),%a3,%acc1 + mac.w %a1l,%a2u,#1,10(%a6),%a3,%acc2 + mac.w %a1l,%a2u,#1,10(%a6),%d2,%acc1 + mac.w %a1l,%a2u,#1,10(%a6),%d2,%acc2 + mac.w %a1l,%a2u,#1,10(%a6),%a7,%acc1 + mac.w %a1l,%a2u,#1,10(%a6),%a7,%acc2 + mac.w %a1l,%a2u,#1,10(%a6)&,%d1,%acc1 + mac.w %a1l,%a2u,#1,10(%a6)&,%d1,%acc2 + mac.w %a1l,%a2u,#1,10(%a6)&,%a3,%acc1 + mac.w %a1l,%a2u,#1,10(%a6)&,%a3,%acc2 + mac.w %a1l,%a2u,#1,10(%a6)&,%d2,%acc1 + mac.w %a1l,%a2u,#1,10(%a6)&,%d2,%acc2 + mac.w %a1l,%a2u,#1,10(%a6)&,%a7,%acc1 + mac.w %a1l,%a2u,#1,10(%a6)&,%a7,%acc2 + mac.w %a1l,%a2u,#1,-(%a1),%d1,%acc1 + mac.w %a1l,%a2u,#1,-(%a1),%d1,%acc2 + mac.w %a1l,%a2u,#1,-(%a1),%a3,%acc1 + mac.w %a1l,%a2u,#1,-(%a1),%a3,%acc2 + mac.w %a1l,%a2u,#1,-(%a1),%d2,%acc1 + mac.w %a1l,%a2u,#1,-(%a1),%d2,%acc2 + mac.w %a1l,%a2u,#1,-(%a1),%a7,%acc1 + mac.w %a1l,%a2u,#1,-(%a1),%a7,%acc2 + mac.w %a1l,%a2u,#1,-(%a1)&,%d1,%acc1 + mac.w %a1l,%a2u,#1,-(%a1)&,%d1,%acc2 + mac.w %a1l,%a2u,#1,-(%a1)&,%a3,%acc1 + mac.w %a1l,%a2u,#1,-(%a1)&,%a3,%acc2 + mac.w %a1l,%a2u,#1,-(%a1)&,%d2,%acc1 + mac.w %a1l,%a2u,#1,-(%a1)&,%d2,%acc2 + mac.w %a1l,%a2u,#1,-(%a1)&,%a7,%acc1 + mac.w %a1l,%a2u,#1,-(%a1)&,%a7,%acc2 + mac.w %a1l,%a2u,#-1,(%a3),%d1,%acc1 + mac.w %a1l,%a2u,#-1,(%a3),%d1,%acc2 + mac.w %a1l,%a2u,#-1,(%a3),%a3,%acc1 + mac.w %a1l,%a2u,#-1,(%a3),%a3,%acc2 + mac.w %a1l,%a2u,#-1,(%a3),%d2,%acc1 + mac.w %a1l,%a2u,#-1,(%a3),%d2,%acc2 + mac.w %a1l,%a2u,#-1,(%a3),%a7,%acc1 + mac.w %a1l,%a2u,#-1,(%a3),%a7,%acc2 + mac.w %a1l,%a2u,#-1,(%a3)&,%d1,%acc1 + mac.w %a1l,%a2u,#-1,(%a3)&,%d1,%acc2 + mac.w %a1l,%a2u,#-1,(%a3)&,%a3,%acc1 + mac.w %a1l,%a2u,#-1,(%a3)&,%a3,%acc2 + mac.w %a1l,%a2u,#-1,(%a3)&,%d2,%acc1 + mac.w %a1l,%a2u,#-1,(%a3)&,%d2,%acc2 + mac.w %a1l,%a2u,#-1,(%a3)&,%a7,%acc1 + mac.w %a1l,%a2u,#-1,(%a3)&,%a7,%acc2 + mac.w %a1l,%a2u,#-1,(%a2)+,%d1,%acc1 + mac.w %a1l,%a2u,#-1,(%a2)+,%d1,%acc2 + mac.w %a1l,%a2u,#-1,(%a2)+,%a3,%acc1 + mac.w %a1l,%a2u,#-1,(%a2)+,%a3,%acc2 + mac.w %a1l,%a2u,#-1,(%a2)+,%d2,%acc1 + mac.w %a1l,%a2u,#-1,(%a2)+,%d2,%acc2 + mac.w %a1l,%a2u,#-1,(%a2)+,%a7,%acc1 + mac.w %a1l,%a2u,#-1,(%a2)+,%a7,%acc2 + mac.w %a1l,%a2u,#-1,(%a2)+&,%d1,%acc1 + mac.w %a1l,%a2u,#-1,(%a2)+&,%d1,%acc2 + mac.w %a1l,%a2u,#-1,(%a2)+&,%a3,%acc1 + mac.w %a1l,%a2u,#-1,(%a2)+&,%a3,%acc2 + mac.w %a1l,%a2u,#-1,(%a2)+&,%d2,%acc1 + mac.w %a1l,%a2u,#-1,(%a2)+&,%d2,%acc2 + mac.w %a1l,%a2u,#-1,(%a2)+&,%a7,%acc1 + mac.w %a1l,%a2u,#-1,(%a2)+&,%a7,%acc2 + mac.w %a1l,%a2u,#-1,10(%a6),%d1,%acc1 + mac.w %a1l,%a2u,#-1,10(%a6),%d1,%acc2 + mac.w %a1l,%a2u,#-1,10(%a6),%a3,%acc1 + mac.w %a1l,%a2u,#-1,10(%a6),%a3,%acc2 + mac.w %a1l,%a2u,#-1,10(%a6),%d2,%acc1 + mac.w %a1l,%a2u,#-1,10(%a6),%d2,%acc2 + mac.w %a1l,%a2u,#-1,10(%a6),%a7,%acc1 + mac.w %a1l,%a2u,#-1,10(%a6),%a7,%acc2 + mac.w %a1l,%a2u,#-1,10(%a6)&,%d1,%acc1 + mac.w %a1l,%a2u,#-1,10(%a6)&,%d1,%acc2 + mac.w %a1l,%a2u,#-1,10(%a6)&,%a3,%acc1 + mac.w %a1l,%a2u,#-1,10(%a6)&,%a3,%acc2 + mac.w %a1l,%a2u,#-1,10(%a6)&,%d2,%acc1 + mac.w %a1l,%a2u,#-1,10(%a6)&,%d2,%acc2 + mac.w %a1l,%a2u,#-1,10(%a6)&,%a7,%acc1 + mac.w %a1l,%a2u,#-1,10(%a6)&,%a7,%acc2 + mac.w %a1l,%a2u,#-1,-(%a1),%d1,%acc1 + mac.w %a1l,%a2u,#-1,-(%a1),%d1,%acc2 + mac.w %a1l,%a2u,#-1,-(%a1),%a3,%acc1 + mac.w %a1l,%a2u,#-1,-(%a1),%a3,%acc2 + mac.w %a1l,%a2u,#-1,-(%a1),%d2,%acc1 + mac.w %a1l,%a2u,#-1,-(%a1),%d2,%acc2 + mac.w %a1l,%a2u,#-1,-(%a1),%a7,%acc1 + mac.w %a1l,%a2u,#-1,-(%a1),%a7,%acc2 + mac.w %a1l,%a2u,#-1,-(%a1)&,%d1,%acc1 + mac.w %a1l,%a2u,#-1,-(%a1)&,%d1,%acc2 + mac.w %a1l,%a2u,#-1,-(%a1)&,%a3,%acc1 + mac.w %a1l,%a2u,#-1,-(%a1)&,%a3,%acc2 + mac.w %a1l,%a2u,#-1,-(%a1)&,%d2,%acc1 + mac.w %a1l,%a2u,#-1,-(%a1)&,%d2,%acc2 + mac.w %a1l,%a2u,#-1,-(%a1)&,%a7,%acc1 + mac.w %a1l,%a2u,#-1,-(%a1)&,%a7,%acc2 + mac.w %a1l,%d3l,(%a3),%d1,%acc1 + mac.w %a1l,%d3l,(%a3),%d1,%acc2 + mac.w %a1l,%d3l,(%a3),%a3,%acc1 + mac.w %a1l,%d3l,(%a3),%a3,%acc2 + mac.w %a1l,%d3l,(%a3),%d2,%acc1 + mac.w %a1l,%d3l,(%a3),%d2,%acc2 + mac.w %a1l,%d3l,(%a3),%a7,%acc1 + mac.w %a1l,%d3l,(%a3),%a7,%acc2 + mac.w %a1l,%d3l,(%a3)&,%d1,%acc1 + mac.w %a1l,%d3l,(%a3)&,%d1,%acc2 + mac.w %a1l,%d3l,(%a3)&,%a3,%acc1 + mac.w %a1l,%d3l,(%a3)&,%a3,%acc2 + mac.w %a1l,%d3l,(%a3)&,%d2,%acc1 + mac.w %a1l,%d3l,(%a3)&,%d2,%acc2 + mac.w %a1l,%d3l,(%a3)&,%a7,%acc1 + mac.w %a1l,%d3l,(%a3)&,%a7,%acc2 + mac.w %a1l,%d3l,(%a2)+,%d1,%acc1 + mac.w %a1l,%d3l,(%a2)+,%d1,%acc2 + mac.w %a1l,%d3l,(%a2)+,%a3,%acc1 + mac.w %a1l,%d3l,(%a2)+,%a3,%acc2 + mac.w %a1l,%d3l,(%a2)+,%d2,%acc1 + mac.w %a1l,%d3l,(%a2)+,%d2,%acc2 + mac.w %a1l,%d3l,(%a2)+,%a7,%acc1 + mac.w %a1l,%d3l,(%a2)+,%a7,%acc2 + mac.w %a1l,%d3l,(%a2)+&,%d1,%acc1 + mac.w %a1l,%d3l,(%a2)+&,%d1,%acc2 + mac.w %a1l,%d3l,(%a2)+&,%a3,%acc1 + mac.w %a1l,%d3l,(%a2)+&,%a3,%acc2 + mac.w %a1l,%d3l,(%a2)+&,%d2,%acc1 + mac.w %a1l,%d3l,(%a2)+&,%d2,%acc2 + mac.w %a1l,%d3l,(%a2)+&,%a7,%acc1 + mac.w %a1l,%d3l,(%a2)+&,%a7,%acc2 + mac.w %a1l,%d3l,10(%a6),%d1,%acc1 + mac.w %a1l,%d3l,10(%a6),%d1,%acc2 + mac.w %a1l,%d3l,10(%a6),%a3,%acc1 + mac.w %a1l,%d3l,10(%a6),%a3,%acc2 + mac.w %a1l,%d3l,10(%a6),%d2,%acc1 + mac.w %a1l,%d3l,10(%a6),%d2,%acc2 + mac.w %a1l,%d3l,10(%a6),%a7,%acc1 + mac.w %a1l,%d3l,10(%a6),%a7,%acc2 + mac.w %a1l,%d3l,10(%a6)&,%d1,%acc1 + mac.w %a1l,%d3l,10(%a6)&,%d1,%acc2 + mac.w %a1l,%d3l,10(%a6)&,%a3,%acc1 + mac.w %a1l,%d3l,10(%a6)&,%a3,%acc2 + mac.w %a1l,%d3l,10(%a6)&,%d2,%acc1 + mac.w %a1l,%d3l,10(%a6)&,%d2,%acc2 + mac.w %a1l,%d3l,10(%a6)&,%a7,%acc1 + mac.w %a1l,%d3l,10(%a6)&,%a7,%acc2 + mac.w %a1l,%d3l,-(%a1),%d1,%acc1 + mac.w %a1l,%d3l,-(%a1),%d1,%acc2 + mac.w %a1l,%d3l,-(%a1),%a3,%acc1 + mac.w %a1l,%d3l,-(%a1),%a3,%acc2 + mac.w %a1l,%d3l,-(%a1),%d2,%acc1 + mac.w %a1l,%d3l,-(%a1),%d2,%acc2 + mac.w %a1l,%d3l,-(%a1),%a7,%acc1 + mac.w %a1l,%d3l,-(%a1),%a7,%acc2 + mac.w %a1l,%d3l,-(%a1)&,%d1,%acc1 + mac.w %a1l,%d3l,-(%a1)&,%d1,%acc2 + mac.w %a1l,%d3l,-(%a1)&,%a3,%acc1 + mac.w %a1l,%d3l,-(%a1)&,%a3,%acc2 + mac.w %a1l,%d3l,-(%a1)&,%d2,%acc1 + mac.w %a1l,%d3l,-(%a1)&,%d2,%acc2 + mac.w %a1l,%d3l,-(%a1)&,%a7,%acc1 + mac.w %a1l,%d3l,-(%a1)&,%a7,%acc2 + mac.w %a1l,%d3l,<<,(%a3),%d1,%acc1 + mac.w %a1l,%d3l,<<,(%a3),%d1,%acc2 + mac.w %a1l,%d3l,<<,(%a3),%a3,%acc1 + mac.w %a1l,%d3l,<<,(%a3),%a3,%acc2 + mac.w %a1l,%d3l,<<,(%a3),%d2,%acc1 + mac.w %a1l,%d3l,<<,(%a3),%d2,%acc2 + mac.w %a1l,%d3l,<<,(%a3),%a7,%acc1 + mac.w %a1l,%d3l,<<,(%a3),%a7,%acc2 + mac.w %a1l,%d3l,<<,(%a3)&,%d1,%acc1 + mac.w %a1l,%d3l,<<,(%a3)&,%d1,%acc2 + mac.w %a1l,%d3l,<<,(%a3)&,%a3,%acc1 + mac.w %a1l,%d3l,<<,(%a3)&,%a3,%acc2 + mac.w %a1l,%d3l,<<,(%a3)&,%d2,%acc1 + mac.w %a1l,%d3l,<<,(%a3)&,%d2,%acc2 + mac.w %a1l,%d3l,<<,(%a3)&,%a7,%acc1 + mac.w %a1l,%d3l,<<,(%a3)&,%a7,%acc2 + mac.w %a1l,%d3l,<<,(%a2)+,%d1,%acc1 + mac.w %a1l,%d3l,<<,(%a2)+,%d1,%acc2 + mac.w %a1l,%d3l,<<,(%a2)+,%a3,%acc1 + mac.w %a1l,%d3l,<<,(%a2)+,%a3,%acc2 + mac.w %a1l,%d3l,<<,(%a2)+,%d2,%acc1 + mac.w %a1l,%d3l,<<,(%a2)+,%d2,%acc2 + mac.w %a1l,%d3l,<<,(%a2)+,%a7,%acc1 + mac.w %a1l,%d3l,<<,(%a2)+,%a7,%acc2 + mac.w %a1l,%d3l,<<,(%a2)+&,%d1,%acc1 + mac.w %a1l,%d3l,<<,(%a2)+&,%d1,%acc2 + mac.w %a1l,%d3l,<<,(%a2)+&,%a3,%acc1 + mac.w %a1l,%d3l,<<,(%a2)+&,%a3,%acc2 + mac.w %a1l,%d3l,<<,(%a2)+&,%d2,%acc1 + mac.w %a1l,%d3l,<<,(%a2)+&,%d2,%acc2 + mac.w %a1l,%d3l,<<,(%a2)+&,%a7,%acc1 + mac.w %a1l,%d3l,<<,(%a2)+&,%a7,%acc2 + mac.w %a1l,%d3l,<<,10(%a6),%d1,%acc1 + mac.w %a1l,%d3l,<<,10(%a6),%d1,%acc2 + mac.w %a1l,%d3l,<<,10(%a6),%a3,%acc1 + mac.w %a1l,%d3l,<<,10(%a6),%a3,%acc2 + mac.w %a1l,%d3l,<<,10(%a6),%d2,%acc1 + mac.w %a1l,%d3l,<<,10(%a6),%d2,%acc2 + mac.w %a1l,%d3l,<<,10(%a6),%a7,%acc1 + mac.w %a1l,%d3l,<<,10(%a6),%a7,%acc2 + mac.w %a1l,%d3l,<<,10(%a6)&,%d1,%acc1 + mac.w %a1l,%d3l,<<,10(%a6)&,%d1,%acc2 + mac.w %a1l,%d3l,<<,10(%a6)&,%a3,%acc1 + mac.w %a1l,%d3l,<<,10(%a6)&,%a3,%acc2 + mac.w %a1l,%d3l,<<,10(%a6)&,%d2,%acc1 + mac.w %a1l,%d3l,<<,10(%a6)&,%d2,%acc2 + mac.w %a1l,%d3l,<<,10(%a6)&,%a7,%acc1 + mac.w %a1l,%d3l,<<,10(%a6)&,%a7,%acc2 + mac.w %a1l,%d3l,<<,-(%a1),%d1,%acc1 + mac.w %a1l,%d3l,<<,-(%a1),%d1,%acc2 + mac.w %a1l,%d3l,<<,-(%a1),%a3,%acc1 + mac.w %a1l,%d3l,<<,-(%a1),%a3,%acc2 + mac.w %a1l,%d3l,<<,-(%a1),%d2,%acc1 + mac.w %a1l,%d3l,<<,-(%a1),%d2,%acc2 + mac.w %a1l,%d3l,<<,-(%a1),%a7,%acc1 + mac.w %a1l,%d3l,<<,-(%a1),%a7,%acc2 + mac.w %a1l,%d3l,<<,-(%a1)&,%d1,%acc1 + mac.w %a1l,%d3l,<<,-(%a1)&,%d1,%acc2 + mac.w %a1l,%d3l,<<,-(%a1)&,%a3,%acc1 + mac.w %a1l,%d3l,<<,-(%a1)&,%a3,%acc2 + mac.w %a1l,%d3l,<<,-(%a1)&,%d2,%acc1 + mac.w %a1l,%d3l,<<,-(%a1)&,%d2,%acc2 + mac.w %a1l,%d3l,<<,-(%a1)&,%a7,%acc1 + mac.w %a1l,%d3l,<<,-(%a1)&,%a7,%acc2 + mac.w %a1l,%d3l,>>,(%a3),%d1,%acc1 + mac.w %a1l,%d3l,>>,(%a3),%d1,%acc2 + mac.w %a1l,%d3l,>>,(%a3),%a3,%acc1 + mac.w %a1l,%d3l,>>,(%a3),%a3,%acc2 + mac.w %a1l,%d3l,>>,(%a3),%d2,%acc1 + mac.w %a1l,%d3l,>>,(%a3),%d2,%acc2 + mac.w %a1l,%d3l,>>,(%a3),%a7,%acc1 + mac.w %a1l,%d3l,>>,(%a3),%a7,%acc2 + mac.w %a1l,%d3l,>>,(%a3)&,%d1,%acc1 + mac.w %a1l,%d3l,>>,(%a3)&,%d1,%acc2 + mac.w %a1l,%d3l,>>,(%a3)&,%a3,%acc1 + mac.w %a1l,%d3l,>>,(%a3)&,%a3,%acc2 + mac.w %a1l,%d3l,>>,(%a3)&,%d2,%acc1 + mac.w %a1l,%d3l,>>,(%a3)&,%d2,%acc2 + mac.w %a1l,%d3l,>>,(%a3)&,%a7,%acc1 + mac.w %a1l,%d3l,>>,(%a3)&,%a7,%acc2 + mac.w %a1l,%d3l,>>,(%a2)+,%d1,%acc1 + mac.w %a1l,%d3l,>>,(%a2)+,%d1,%acc2 + mac.w %a1l,%d3l,>>,(%a2)+,%a3,%acc1 + mac.w %a1l,%d3l,>>,(%a2)+,%a3,%acc2 + mac.w %a1l,%d3l,>>,(%a2)+,%d2,%acc1 + mac.w %a1l,%d3l,>>,(%a2)+,%d2,%acc2 + mac.w %a1l,%d3l,>>,(%a2)+,%a7,%acc1 + mac.w %a1l,%d3l,>>,(%a2)+,%a7,%acc2 + mac.w %a1l,%d3l,>>,(%a2)+&,%d1,%acc1 + mac.w %a1l,%d3l,>>,(%a2)+&,%d1,%acc2 + mac.w %a1l,%d3l,>>,(%a2)+&,%a3,%acc1 + mac.w %a1l,%d3l,>>,(%a2)+&,%a3,%acc2 + mac.w %a1l,%d3l,>>,(%a2)+&,%d2,%acc1 + mac.w %a1l,%d3l,>>,(%a2)+&,%d2,%acc2 + mac.w %a1l,%d3l,>>,(%a2)+&,%a7,%acc1 + mac.w %a1l,%d3l,>>,(%a2)+&,%a7,%acc2 + mac.w %a1l,%d3l,>>,10(%a6),%d1,%acc1 + mac.w %a1l,%d3l,>>,10(%a6),%d1,%acc2 + mac.w %a1l,%d3l,>>,10(%a6),%a3,%acc1 + mac.w %a1l,%d3l,>>,10(%a6),%a3,%acc2 + mac.w %a1l,%d3l,>>,10(%a6),%d2,%acc1 + mac.w %a1l,%d3l,>>,10(%a6),%d2,%acc2 + mac.w %a1l,%d3l,>>,10(%a6),%a7,%acc1 + mac.w %a1l,%d3l,>>,10(%a6),%a7,%acc2 + mac.w %a1l,%d3l,>>,10(%a6)&,%d1,%acc1 + mac.w %a1l,%d3l,>>,10(%a6)&,%d1,%acc2 + mac.w %a1l,%d3l,>>,10(%a6)&,%a3,%acc1 + mac.w %a1l,%d3l,>>,10(%a6)&,%a3,%acc2 + mac.w %a1l,%d3l,>>,10(%a6)&,%d2,%acc1 + mac.w %a1l,%d3l,>>,10(%a6)&,%d2,%acc2 + mac.w %a1l,%d3l,>>,10(%a6)&,%a7,%acc1 + mac.w %a1l,%d3l,>>,10(%a6)&,%a7,%acc2 + mac.w %a1l,%d3l,>>,-(%a1),%d1,%acc1 + mac.w %a1l,%d3l,>>,-(%a1),%d1,%acc2 + mac.w %a1l,%d3l,>>,-(%a1),%a3,%acc1 + mac.w %a1l,%d3l,>>,-(%a1),%a3,%acc2 + mac.w %a1l,%d3l,>>,-(%a1),%d2,%acc1 + mac.w %a1l,%d3l,>>,-(%a1),%d2,%acc2 + mac.w %a1l,%d3l,>>,-(%a1),%a7,%acc1 + mac.w %a1l,%d3l,>>,-(%a1),%a7,%acc2 + mac.w %a1l,%d3l,>>,-(%a1)&,%d1,%acc1 + mac.w %a1l,%d3l,>>,-(%a1)&,%d1,%acc2 + mac.w %a1l,%d3l,>>,-(%a1)&,%a3,%acc1 + mac.w %a1l,%d3l,>>,-(%a1)&,%a3,%acc2 + mac.w %a1l,%d3l,>>,-(%a1)&,%d2,%acc1 + mac.w %a1l,%d3l,>>,-(%a1)&,%d2,%acc2 + mac.w %a1l,%d3l,>>,-(%a1)&,%a7,%acc1 + mac.w %a1l,%d3l,>>,-(%a1)&,%a7,%acc2 + mac.w %a1l,%d3l,#1,(%a3),%d1,%acc1 + mac.w %a1l,%d3l,#1,(%a3),%d1,%acc2 + mac.w %a1l,%d3l,#1,(%a3),%a3,%acc1 + mac.w %a1l,%d3l,#1,(%a3),%a3,%acc2 + mac.w %a1l,%d3l,#1,(%a3),%d2,%acc1 + mac.w %a1l,%d3l,#1,(%a3),%d2,%acc2 + mac.w %a1l,%d3l,#1,(%a3),%a7,%acc1 + mac.w %a1l,%d3l,#1,(%a3),%a7,%acc2 + mac.w %a1l,%d3l,#1,(%a3)&,%d1,%acc1 + mac.w %a1l,%d3l,#1,(%a3)&,%d1,%acc2 + mac.w %a1l,%d3l,#1,(%a3)&,%a3,%acc1 + mac.w %a1l,%d3l,#1,(%a3)&,%a3,%acc2 + mac.w %a1l,%d3l,#1,(%a3)&,%d2,%acc1 + mac.w %a1l,%d3l,#1,(%a3)&,%d2,%acc2 + mac.w %a1l,%d3l,#1,(%a3)&,%a7,%acc1 + mac.w %a1l,%d3l,#1,(%a3)&,%a7,%acc2 + mac.w %a1l,%d3l,#1,(%a2)+,%d1,%acc1 + mac.w %a1l,%d3l,#1,(%a2)+,%d1,%acc2 + mac.w %a1l,%d3l,#1,(%a2)+,%a3,%acc1 + mac.w %a1l,%d3l,#1,(%a2)+,%a3,%acc2 + mac.w %a1l,%d3l,#1,(%a2)+,%d2,%acc1 + mac.w %a1l,%d3l,#1,(%a2)+,%d2,%acc2 + mac.w %a1l,%d3l,#1,(%a2)+,%a7,%acc1 + mac.w %a1l,%d3l,#1,(%a2)+,%a7,%acc2 + mac.w %a1l,%d3l,#1,(%a2)+&,%d1,%acc1 + mac.w %a1l,%d3l,#1,(%a2)+&,%d1,%acc2 + mac.w %a1l,%d3l,#1,(%a2)+&,%a3,%acc1 + mac.w %a1l,%d3l,#1,(%a2)+&,%a3,%acc2 + mac.w %a1l,%d3l,#1,(%a2)+&,%d2,%acc1 + mac.w %a1l,%d3l,#1,(%a2)+&,%d2,%acc2 + mac.w %a1l,%d3l,#1,(%a2)+&,%a7,%acc1 + mac.w %a1l,%d3l,#1,(%a2)+&,%a7,%acc2 + mac.w %a1l,%d3l,#1,10(%a6),%d1,%acc1 + mac.w %a1l,%d3l,#1,10(%a6),%d1,%acc2 + mac.w %a1l,%d3l,#1,10(%a6),%a3,%acc1 + mac.w %a1l,%d3l,#1,10(%a6),%a3,%acc2 + mac.w %a1l,%d3l,#1,10(%a6),%d2,%acc1 + mac.w %a1l,%d3l,#1,10(%a6),%d2,%acc2 + mac.w %a1l,%d3l,#1,10(%a6),%a7,%acc1 + mac.w %a1l,%d3l,#1,10(%a6),%a7,%acc2 + mac.w %a1l,%d3l,#1,10(%a6)&,%d1,%acc1 + mac.w %a1l,%d3l,#1,10(%a6)&,%d1,%acc2 + mac.w %a1l,%d3l,#1,10(%a6)&,%a3,%acc1 + mac.w %a1l,%d3l,#1,10(%a6)&,%a3,%acc2 + mac.w %a1l,%d3l,#1,10(%a6)&,%d2,%acc1 + mac.w %a1l,%d3l,#1,10(%a6)&,%d2,%acc2 + mac.w %a1l,%d3l,#1,10(%a6)&,%a7,%acc1 + mac.w %a1l,%d3l,#1,10(%a6)&,%a7,%acc2 + mac.w %a1l,%d3l,#1,-(%a1),%d1,%acc1 + mac.w %a1l,%d3l,#1,-(%a1),%d1,%acc2 + mac.w %a1l,%d3l,#1,-(%a1),%a3,%acc1 + mac.w %a1l,%d3l,#1,-(%a1),%a3,%acc2 + mac.w %a1l,%d3l,#1,-(%a1),%d2,%acc1 + mac.w %a1l,%d3l,#1,-(%a1),%d2,%acc2 + mac.w %a1l,%d3l,#1,-(%a1),%a7,%acc1 + mac.w %a1l,%d3l,#1,-(%a1),%a7,%acc2 + mac.w %a1l,%d3l,#1,-(%a1)&,%d1,%acc1 + mac.w %a1l,%d3l,#1,-(%a1)&,%d1,%acc2 + mac.w %a1l,%d3l,#1,-(%a1)&,%a3,%acc1 + mac.w %a1l,%d3l,#1,-(%a1)&,%a3,%acc2 + mac.w %a1l,%d3l,#1,-(%a1)&,%d2,%acc1 + mac.w %a1l,%d3l,#1,-(%a1)&,%d2,%acc2 + mac.w %a1l,%d3l,#1,-(%a1)&,%a7,%acc1 + mac.w %a1l,%d3l,#1,-(%a1)&,%a7,%acc2 + mac.w %a1l,%d3l,#-1,(%a3),%d1,%acc1 + mac.w %a1l,%d3l,#-1,(%a3),%d1,%acc2 + mac.w %a1l,%d3l,#-1,(%a3),%a3,%acc1 + mac.w %a1l,%d3l,#-1,(%a3),%a3,%acc2 + mac.w %a1l,%d3l,#-1,(%a3),%d2,%acc1 + mac.w %a1l,%d3l,#-1,(%a3),%d2,%acc2 + mac.w %a1l,%d3l,#-1,(%a3),%a7,%acc1 + mac.w %a1l,%d3l,#-1,(%a3),%a7,%acc2 + mac.w %a1l,%d3l,#-1,(%a3)&,%d1,%acc1 + mac.w %a1l,%d3l,#-1,(%a3)&,%d1,%acc2 + mac.w %a1l,%d3l,#-1,(%a3)&,%a3,%acc1 + mac.w %a1l,%d3l,#-1,(%a3)&,%a3,%acc2 + mac.w %a1l,%d3l,#-1,(%a3)&,%d2,%acc1 + mac.w %a1l,%d3l,#-1,(%a3)&,%d2,%acc2 + mac.w %a1l,%d3l,#-1,(%a3)&,%a7,%acc1 + mac.w %a1l,%d3l,#-1,(%a3)&,%a7,%acc2 + mac.w %a1l,%d3l,#-1,(%a2)+,%d1,%acc1 + mac.w %a1l,%d3l,#-1,(%a2)+,%d1,%acc2 + mac.w %a1l,%d3l,#-1,(%a2)+,%a3,%acc1 + mac.w %a1l,%d3l,#-1,(%a2)+,%a3,%acc2 + mac.w %a1l,%d3l,#-1,(%a2)+,%d2,%acc1 + mac.w %a1l,%d3l,#-1,(%a2)+,%d2,%acc2 + mac.w %a1l,%d3l,#-1,(%a2)+,%a7,%acc1 + mac.w %a1l,%d3l,#-1,(%a2)+,%a7,%acc2 + mac.w %a1l,%d3l,#-1,(%a2)+&,%d1,%acc1 + mac.w %a1l,%d3l,#-1,(%a2)+&,%d1,%acc2 + mac.w %a1l,%d3l,#-1,(%a2)+&,%a3,%acc1 + mac.w %a1l,%d3l,#-1,(%a2)+&,%a3,%acc2 + mac.w %a1l,%d3l,#-1,(%a2)+&,%d2,%acc1 + mac.w %a1l,%d3l,#-1,(%a2)+&,%d2,%acc2 + mac.w %a1l,%d3l,#-1,(%a2)+&,%a7,%acc1 + mac.w %a1l,%d3l,#-1,(%a2)+&,%a7,%acc2 + mac.w %a1l,%d3l,#-1,10(%a6),%d1,%acc1 + mac.w %a1l,%d3l,#-1,10(%a6),%d1,%acc2 + mac.w %a1l,%d3l,#-1,10(%a6),%a3,%acc1 + mac.w %a1l,%d3l,#-1,10(%a6),%a3,%acc2 + mac.w %a1l,%d3l,#-1,10(%a6),%d2,%acc1 + mac.w %a1l,%d3l,#-1,10(%a6),%d2,%acc2 + mac.w %a1l,%d3l,#-1,10(%a6),%a7,%acc1 + mac.w %a1l,%d3l,#-1,10(%a6),%a7,%acc2 + mac.w %a1l,%d3l,#-1,10(%a6)&,%d1,%acc1 + mac.w %a1l,%d3l,#-1,10(%a6)&,%d1,%acc2 + mac.w %a1l,%d3l,#-1,10(%a6)&,%a3,%acc1 + mac.w %a1l,%d3l,#-1,10(%a6)&,%a3,%acc2 + mac.w %a1l,%d3l,#-1,10(%a6)&,%d2,%acc1 + mac.w %a1l,%d3l,#-1,10(%a6)&,%d2,%acc2 + mac.w %a1l,%d3l,#-1,10(%a6)&,%a7,%acc1 + mac.w %a1l,%d3l,#-1,10(%a6)&,%a7,%acc2 + mac.w %a1l,%d3l,#-1,-(%a1),%d1,%acc1 + mac.w %a1l,%d3l,#-1,-(%a1),%d1,%acc2 + mac.w %a1l,%d3l,#-1,-(%a1),%a3,%acc1 + mac.w %a1l,%d3l,#-1,-(%a1),%a3,%acc2 + mac.w %a1l,%d3l,#-1,-(%a1),%d2,%acc1 + mac.w %a1l,%d3l,#-1,-(%a1),%d2,%acc2 + mac.w %a1l,%d3l,#-1,-(%a1),%a7,%acc1 + mac.w %a1l,%d3l,#-1,-(%a1),%a7,%acc2 + mac.w %a1l,%d3l,#-1,-(%a1)&,%d1,%acc1 + mac.w %a1l,%d3l,#-1,-(%a1)&,%d1,%acc2 + mac.w %a1l,%d3l,#-1,-(%a1)&,%a3,%acc1 + mac.w %a1l,%d3l,#-1,-(%a1)&,%a3,%acc2 + mac.w %a1l,%d3l,#-1,-(%a1)&,%d2,%acc1 + mac.w %a1l,%d3l,#-1,-(%a1)&,%d2,%acc2 + mac.w %a1l,%d3l,#-1,-(%a1)&,%a7,%acc1 + mac.w %a1l,%d3l,#-1,-(%a1)&,%a7,%acc2 + mac.w %a1l,%a7u,(%a3),%d1,%acc1 + mac.w %a1l,%a7u,(%a3),%d1,%acc2 + mac.w %a1l,%a7u,(%a3),%a3,%acc1 + mac.w %a1l,%a7u,(%a3),%a3,%acc2 + mac.w %a1l,%a7u,(%a3),%d2,%acc1 + mac.w %a1l,%a7u,(%a3),%d2,%acc2 + mac.w %a1l,%a7u,(%a3),%a7,%acc1 + mac.w %a1l,%a7u,(%a3),%a7,%acc2 + mac.w %a1l,%a7u,(%a3)&,%d1,%acc1 + mac.w %a1l,%a7u,(%a3)&,%d1,%acc2 + mac.w %a1l,%a7u,(%a3)&,%a3,%acc1 + mac.w %a1l,%a7u,(%a3)&,%a3,%acc2 + mac.w %a1l,%a7u,(%a3)&,%d2,%acc1 + mac.w %a1l,%a7u,(%a3)&,%d2,%acc2 + mac.w %a1l,%a7u,(%a3)&,%a7,%acc1 + mac.w %a1l,%a7u,(%a3)&,%a7,%acc2 + mac.w %a1l,%a7u,(%a2)+,%d1,%acc1 + mac.w %a1l,%a7u,(%a2)+,%d1,%acc2 + mac.w %a1l,%a7u,(%a2)+,%a3,%acc1 + mac.w %a1l,%a7u,(%a2)+,%a3,%acc2 + mac.w %a1l,%a7u,(%a2)+,%d2,%acc1 + mac.w %a1l,%a7u,(%a2)+,%d2,%acc2 + mac.w %a1l,%a7u,(%a2)+,%a7,%acc1 + mac.w %a1l,%a7u,(%a2)+,%a7,%acc2 + mac.w %a1l,%a7u,(%a2)+&,%d1,%acc1 + mac.w %a1l,%a7u,(%a2)+&,%d1,%acc2 + mac.w %a1l,%a7u,(%a2)+&,%a3,%acc1 + mac.w %a1l,%a7u,(%a2)+&,%a3,%acc2 + mac.w %a1l,%a7u,(%a2)+&,%d2,%acc1 + mac.w %a1l,%a7u,(%a2)+&,%d2,%acc2 + mac.w %a1l,%a7u,(%a2)+&,%a7,%acc1 + mac.w %a1l,%a7u,(%a2)+&,%a7,%acc2 + mac.w %a1l,%a7u,10(%a6),%d1,%acc1 + mac.w %a1l,%a7u,10(%a6),%d1,%acc2 + mac.w %a1l,%a7u,10(%a6),%a3,%acc1 + mac.w %a1l,%a7u,10(%a6),%a3,%acc2 + mac.w %a1l,%a7u,10(%a6),%d2,%acc1 + mac.w %a1l,%a7u,10(%a6),%d2,%acc2 + mac.w %a1l,%a7u,10(%a6),%a7,%acc1 + mac.w %a1l,%a7u,10(%a6),%a7,%acc2 + mac.w %a1l,%a7u,10(%a6)&,%d1,%acc1 + mac.w %a1l,%a7u,10(%a6)&,%d1,%acc2 + mac.w %a1l,%a7u,10(%a6)&,%a3,%acc1 + mac.w %a1l,%a7u,10(%a6)&,%a3,%acc2 + mac.w %a1l,%a7u,10(%a6)&,%d2,%acc1 + mac.w %a1l,%a7u,10(%a6)&,%d2,%acc2 + mac.w %a1l,%a7u,10(%a6)&,%a7,%acc1 + mac.w %a1l,%a7u,10(%a6)&,%a7,%acc2 + mac.w %a1l,%a7u,-(%a1),%d1,%acc1 + mac.w %a1l,%a7u,-(%a1),%d1,%acc2 + mac.w %a1l,%a7u,-(%a1),%a3,%acc1 + mac.w %a1l,%a7u,-(%a1),%a3,%acc2 + mac.w %a1l,%a7u,-(%a1),%d2,%acc1 + mac.w %a1l,%a7u,-(%a1),%d2,%acc2 + mac.w %a1l,%a7u,-(%a1),%a7,%acc1 + mac.w %a1l,%a7u,-(%a1),%a7,%acc2 + mac.w %a1l,%a7u,-(%a1)&,%d1,%acc1 + mac.w %a1l,%a7u,-(%a1)&,%d1,%acc2 + mac.w %a1l,%a7u,-(%a1)&,%a3,%acc1 + mac.w %a1l,%a7u,-(%a1)&,%a3,%acc2 + mac.w %a1l,%a7u,-(%a1)&,%d2,%acc1 + mac.w %a1l,%a7u,-(%a1)&,%d2,%acc2 + mac.w %a1l,%a7u,-(%a1)&,%a7,%acc1 + mac.w %a1l,%a7u,-(%a1)&,%a7,%acc2 + mac.w %a1l,%a7u,<<,(%a3),%d1,%acc1 + mac.w %a1l,%a7u,<<,(%a3),%d1,%acc2 + mac.w %a1l,%a7u,<<,(%a3),%a3,%acc1 + mac.w %a1l,%a7u,<<,(%a3),%a3,%acc2 + mac.w %a1l,%a7u,<<,(%a3),%d2,%acc1 + mac.w %a1l,%a7u,<<,(%a3),%d2,%acc2 + mac.w %a1l,%a7u,<<,(%a3),%a7,%acc1 + mac.w %a1l,%a7u,<<,(%a3),%a7,%acc2 + mac.w %a1l,%a7u,<<,(%a3)&,%d1,%acc1 + mac.w %a1l,%a7u,<<,(%a3)&,%d1,%acc2 + mac.w %a1l,%a7u,<<,(%a3)&,%a3,%acc1 + mac.w %a1l,%a7u,<<,(%a3)&,%a3,%acc2 + mac.w %a1l,%a7u,<<,(%a3)&,%d2,%acc1 + mac.w %a1l,%a7u,<<,(%a3)&,%d2,%acc2 + mac.w %a1l,%a7u,<<,(%a3)&,%a7,%acc1 + mac.w %a1l,%a7u,<<,(%a3)&,%a7,%acc2 + mac.w %a1l,%a7u,<<,(%a2)+,%d1,%acc1 + mac.w %a1l,%a7u,<<,(%a2)+,%d1,%acc2 + mac.w %a1l,%a7u,<<,(%a2)+,%a3,%acc1 + mac.w %a1l,%a7u,<<,(%a2)+,%a3,%acc2 + mac.w %a1l,%a7u,<<,(%a2)+,%d2,%acc1 + mac.w %a1l,%a7u,<<,(%a2)+,%d2,%acc2 + mac.w %a1l,%a7u,<<,(%a2)+,%a7,%acc1 + mac.w %a1l,%a7u,<<,(%a2)+,%a7,%acc2 + mac.w %a1l,%a7u,<<,(%a2)+&,%d1,%acc1 + mac.w %a1l,%a7u,<<,(%a2)+&,%d1,%acc2 + mac.w %a1l,%a7u,<<,(%a2)+&,%a3,%acc1 + mac.w %a1l,%a7u,<<,(%a2)+&,%a3,%acc2 + mac.w %a1l,%a7u,<<,(%a2)+&,%d2,%acc1 + mac.w %a1l,%a7u,<<,(%a2)+&,%d2,%acc2 + mac.w %a1l,%a7u,<<,(%a2)+&,%a7,%acc1 + mac.w %a1l,%a7u,<<,(%a2)+&,%a7,%acc2 + mac.w %a1l,%a7u,<<,10(%a6),%d1,%acc1 + mac.w %a1l,%a7u,<<,10(%a6),%d1,%acc2 + mac.w %a1l,%a7u,<<,10(%a6),%a3,%acc1 + mac.w %a1l,%a7u,<<,10(%a6),%a3,%acc2 + mac.w %a1l,%a7u,<<,10(%a6),%d2,%acc1 + mac.w %a1l,%a7u,<<,10(%a6),%d2,%acc2 + mac.w %a1l,%a7u,<<,10(%a6),%a7,%acc1 + mac.w %a1l,%a7u,<<,10(%a6),%a7,%acc2 + mac.w %a1l,%a7u,<<,10(%a6)&,%d1,%acc1 + mac.w %a1l,%a7u,<<,10(%a6)&,%d1,%acc2 + mac.w %a1l,%a7u,<<,10(%a6)&,%a3,%acc1 + mac.w %a1l,%a7u,<<,10(%a6)&,%a3,%acc2 + mac.w %a1l,%a7u,<<,10(%a6)&,%d2,%acc1 + mac.w %a1l,%a7u,<<,10(%a6)&,%d2,%acc2 + mac.w %a1l,%a7u,<<,10(%a6)&,%a7,%acc1 + mac.w %a1l,%a7u,<<,10(%a6)&,%a7,%acc2 + mac.w %a1l,%a7u,<<,-(%a1),%d1,%acc1 + mac.w %a1l,%a7u,<<,-(%a1),%d1,%acc2 + mac.w %a1l,%a7u,<<,-(%a1),%a3,%acc1 + mac.w %a1l,%a7u,<<,-(%a1),%a3,%acc2 + mac.w %a1l,%a7u,<<,-(%a1),%d2,%acc1 + mac.w %a1l,%a7u,<<,-(%a1),%d2,%acc2 + mac.w %a1l,%a7u,<<,-(%a1),%a7,%acc1 + mac.w %a1l,%a7u,<<,-(%a1),%a7,%acc2 + mac.w %a1l,%a7u,<<,-(%a1)&,%d1,%acc1 + mac.w %a1l,%a7u,<<,-(%a1)&,%d1,%acc2 + mac.w %a1l,%a7u,<<,-(%a1)&,%a3,%acc1 + mac.w %a1l,%a7u,<<,-(%a1)&,%a3,%acc2 + mac.w %a1l,%a7u,<<,-(%a1)&,%d2,%acc1 + mac.w %a1l,%a7u,<<,-(%a1)&,%d2,%acc2 + mac.w %a1l,%a7u,<<,-(%a1)&,%a7,%acc1 + mac.w %a1l,%a7u,<<,-(%a1)&,%a7,%acc2 + mac.w %a1l,%a7u,>>,(%a3),%d1,%acc1 + mac.w %a1l,%a7u,>>,(%a3),%d1,%acc2 + mac.w %a1l,%a7u,>>,(%a3),%a3,%acc1 + mac.w %a1l,%a7u,>>,(%a3),%a3,%acc2 + mac.w %a1l,%a7u,>>,(%a3),%d2,%acc1 + mac.w %a1l,%a7u,>>,(%a3),%d2,%acc2 + mac.w %a1l,%a7u,>>,(%a3),%a7,%acc1 + mac.w %a1l,%a7u,>>,(%a3),%a7,%acc2 + mac.w %a1l,%a7u,>>,(%a3)&,%d1,%acc1 + mac.w %a1l,%a7u,>>,(%a3)&,%d1,%acc2 + mac.w %a1l,%a7u,>>,(%a3)&,%a3,%acc1 + mac.w %a1l,%a7u,>>,(%a3)&,%a3,%acc2 + mac.w %a1l,%a7u,>>,(%a3)&,%d2,%acc1 + mac.w %a1l,%a7u,>>,(%a3)&,%d2,%acc2 + mac.w %a1l,%a7u,>>,(%a3)&,%a7,%acc1 + mac.w %a1l,%a7u,>>,(%a3)&,%a7,%acc2 + mac.w %a1l,%a7u,>>,(%a2)+,%d1,%acc1 + mac.w %a1l,%a7u,>>,(%a2)+,%d1,%acc2 + mac.w %a1l,%a7u,>>,(%a2)+,%a3,%acc1 + mac.w %a1l,%a7u,>>,(%a2)+,%a3,%acc2 + mac.w %a1l,%a7u,>>,(%a2)+,%d2,%acc1 + mac.w %a1l,%a7u,>>,(%a2)+,%d2,%acc2 + mac.w %a1l,%a7u,>>,(%a2)+,%a7,%acc1 + mac.w %a1l,%a7u,>>,(%a2)+,%a7,%acc2 + mac.w %a1l,%a7u,>>,(%a2)+&,%d1,%acc1 + mac.w %a1l,%a7u,>>,(%a2)+&,%d1,%acc2 + mac.w %a1l,%a7u,>>,(%a2)+&,%a3,%acc1 + mac.w %a1l,%a7u,>>,(%a2)+&,%a3,%acc2 + mac.w %a1l,%a7u,>>,(%a2)+&,%d2,%acc1 + mac.w %a1l,%a7u,>>,(%a2)+&,%d2,%acc2 + mac.w %a1l,%a7u,>>,(%a2)+&,%a7,%acc1 + mac.w %a1l,%a7u,>>,(%a2)+&,%a7,%acc2 + mac.w %a1l,%a7u,>>,10(%a6),%d1,%acc1 + mac.w %a1l,%a7u,>>,10(%a6),%d1,%acc2 + mac.w %a1l,%a7u,>>,10(%a6),%a3,%acc1 + mac.w %a1l,%a7u,>>,10(%a6),%a3,%acc2 + mac.w %a1l,%a7u,>>,10(%a6),%d2,%acc1 + mac.w %a1l,%a7u,>>,10(%a6),%d2,%acc2 + mac.w %a1l,%a7u,>>,10(%a6),%a7,%acc1 + mac.w %a1l,%a7u,>>,10(%a6),%a7,%acc2 + mac.w %a1l,%a7u,>>,10(%a6)&,%d1,%acc1 + mac.w %a1l,%a7u,>>,10(%a6)&,%d1,%acc2 + mac.w %a1l,%a7u,>>,10(%a6)&,%a3,%acc1 + mac.w %a1l,%a7u,>>,10(%a6)&,%a3,%acc2 + mac.w %a1l,%a7u,>>,10(%a6)&,%d2,%acc1 + mac.w %a1l,%a7u,>>,10(%a6)&,%d2,%acc2 + mac.w %a1l,%a7u,>>,10(%a6)&,%a7,%acc1 + mac.w %a1l,%a7u,>>,10(%a6)&,%a7,%acc2 + mac.w %a1l,%a7u,>>,-(%a1),%d1,%acc1 + mac.w %a1l,%a7u,>>,-(%a1),%d1,%acc2 + mac.w %a1l,%a7u,>>,-(%a1),%a3,%acc1 + mac.w %a1l,%a7u,>>,-(%a1),%a3,%acc2 + mac.w %a1l,%a7u,>>,-(%a1),%d2,%acc1 + mac.w %a1l,%a7u,>>,-(%a1),%d2,%acc2 + mac.w %a1l,%a7u,>>,-(%a1),%a7,%acc1 + mac.w %a1l,%a7u,>>,-(%a1),%a7,%acc2 + mac.w %a1l,%a7u,>>,-(%a1)&,%d1,%acc1 + mac.w %a1l,%a7u,>>,-(%a1)&,%d1,%acc2 + mac.w %a1l,%a7u,>>,-(%a1)&,%a3,%acc1 + mac.w %a1l,%a7u,>>,-(%a1)&,%a3,%acc2 + mac.w %a1l,%a7u,>>,-(%a1)&,%d2,%acc1 + mac.w %a1l,%a7u,>>,-(%a1)&,%d2,%acc2 + mac.w %a1l,%a7u,>>,-(%a1)&,%a7,%acc1 + mac.w %a1l,%a7u,>>,-(%a1)&,%a7,%acc2 + mac.w %a1l,%a7u,#1,(%a3),%d1,%acc1 + mac.w %a1l,%a7u,#1,(%a3),%d1,%acc2 + mac.w %a1l,%a7u,#1,(%a3),%a3,%acc1 + mac.w %a1l,%a7u,#1,(%a3),%a3,%acc2 + mac.w %a1l,%a7u,#1,(%a3),%d2,%acc1 + mac.w %a1l,%a7u,#1,(%a3),%d2,%acc2 + mac.w %a1l,%a7u,#1,(%a3),%a7,%acc1 + mac.w %a1l,%a7u,#1,(%a3),%a7,%acc2 + mac.w %a1l,%a7u,#1,(%a3)&,%d1,%acc1 + mac.w %a1l,%a7u,#1,(%a3)&,%d1,%acc2 + mac.w %a1l,%a7u,#1,(%a3)&,%a3,%acc1 + mac.w %a1l,%a7u,#1,(%a3)&,%a3,%acc2 + mac.w %a1l,%a7u,#1,(%a3)&,%d2,%acc1 + mac.w %a1l,%a7u,#1,(%a3)&,%d2,%acc2 + mac.w %a1l,%a7u,#1,(%a3)&,%a7,%acc1 + mac.w %a1l,%a7u,#1,(%a3)&,%a7,%acc2 + mac.w %a1l,%a7u,#1,(%a2)+,%d1,%acc1 + mac.w %a1l,%a7u,#1,(%a2)+,%d1,%acc2 + mac.w %a1l,%a7u,#1,(%a2)+,%a3,%acc1 + mac.w %a1l,%a7u,#1,(%a2)+,%a3,%acc2 + mac.w %a1l,%a7u,#1,(%a2)+,%d2,%acc1 + mac.w %a1l,%a7u,#1,(%a2)+,%d2,%acc2 + mac.w %a1l,%a7u,#1,(%a2)+,%a7,%acc1 + mac.w %a1l,%a7u,#1,(%a2)+,%a7,%acc2 + mac.w %a1l,%a7u,#1,(%a2)+&,%d1,%acc1 + mac.w %a1l,%a7u,#1,(%a2)+&,%d1,%acc2 + mac.w %a1l,%a7u,#1,(%a2)+&,%a3,%acc1 + mac.w %a1l,%a7u,#1,(%a2)+&,%a3,%acc2 + mac.w %a1l,%a7u,#1,(%a2)+&,%d2,%acc1 + mac.w %a1l,%a7u,#1,(%a2)+&,%d2,%acc2 + mac.w %a1l,%a7u,#1,(%a2)+&,%a7,%acc1 + mac.w %a1l,%a7u,#1,(%a2)+&,%a7,%acc2 + mac.w %a1l,%a7u,#1,10(%a6),%d1,%acc1 + mac.w %a1l,%a7u,#1,10(%a6),%d1,%acc2 + mac.w %a1l,%a7u,#1,10(%a6),%a3,%acc1 + mac.w %a1l,%a7u,#1,10(%a6),%a3,%acc2 + mac.w %a1l,%a7u,#1,10(%a6),%d2,%acc1 + mac.w %a1l,%a7u,#1,10(%a6),%d2,%acc2 + mac.w %a1l,%a7u,#1,10(%a6),%a7,%acc1 + mac.w %a1l,%a7u,#1,10(%a6),%a7,%acc2 + mac.w %a1l,%a7u,#1,10(%a6)&,%d1,%acc1 + mac.w %a1l,%a7u,#1,10(%a6)&,%d1,%acc2 + mac.w %a1l,%a7u,#1,10(%a6)&,%a3,%acc1 + mac.w %a1l,%a7u,#1,10(%a6)&,%a3,%acc2 + mac.w %a1l,%a7u,#1,10(%a6)&,%d2,%acc1 + mac.w %a1l,%a7u,#1,10(%a6)&,%d2,%acc2 + mac.w %a1l,%a7u,#1,10(%a6)&,%a7,%acc1 + mac.w %a1l,%a7u,#1,10(%a6)&,%a7,%acc2 + mac.w %a1l,%a7u,#1,-(%a1),%d1,%acc1 + mac.w %a1l,%a7u,#1,-(%a1),%d1,%acc2 + mac.w %a1l,%a7u,#1,-(%a1),%a3,%acc1 + mac.w %a1l,%a7u,#1,-(%a1),%a3,%acc2 + mac.w %a1l,%a7u,#1,-(%a1),%d2,%acc1 + mac.w %a1l,%a7u,#1,-(%a1),%d2,%acc2 + mac.w %a1l,%a7u,#1,-(%a1),%a7,%acc1 + mac.w %a1l,%a7u,#1,-(%a1),%a7,%acc2 + mac.w %a1l,%a7u,#1,-(%a1)&,%d1,%acc1 + mac.w %a1l,%a7u,#1,-(%a1)&,%d1,%acc2 + mac.w %a1l,%a7u,#1,-(%a1)&,%a3,%acc1 + mac.w %a1l,%a7u,#1,-(%a1)&,%a3,%acc2 + mac.w %a1l,%a7u,#1,-(%a1)&,%d2,%acc1 + mac.w %a1l,%a7u,#1,-(%a1)&,%d2,%acc2 + mac.w %a1l,%a7u,#1,-(%a1)&,%a7,%acc1 + mac.w %a1l,%a7u,#1,-(%a1)&,%a7,%acc2 + mac.w %a1l,%a7u,#-1,(%a3),%d1,%acc1 + mac.w %a1l,%a7u,#-1,(%a3),%d1,%acc2 + mac.w %a1l,%a7u,#-1,(%a3),%a3,%acc1 + mac.w %a1l,%a7u,#-1,(%a3),%a3,%acc2 + mac.w %a1l,%a7u,#-1,(%a3),%d2,%acc1 + mac.w %a1l,%a7u,#-1,(%a3),%d2,%acc2 + mac.w %a1l,%a7u,#-1,(%a3),%a7,%acc1 + mac.w %a1l,%a7u,#-1,(%a3),%a7,%acc2 + mac.w %a1l,%a7u,#-1,(%a3)&,%d1,%acc1 + mac.w %a1l,%a7u,#-1,(%a3)&,%d1,%acc2 + mac.w %a1l,%a7u,#-1,(%a3)&,%a3,%acc1 + mac.w %a1l,%a7u,#-1,(%a3)&,%a3,%acc2 + mac.w %a1l,%a7u,#-1,(%a3)&,%d2,%acc1 + mac.w %a1l,%a7u,#-1,(%a3)&,%d2,%acc2 + mac.w %a1l,%a7u,#-1,(%a3)&,%a7,%acc1 + mac.w %a1l,%a7u,#-1,(%a3)&,%a7,%acc2 + mac.w %a1l,%a7u,#-1,(%a2)+,%d1,%acc1 + mac.w %a1l,%a7u,#-1,(%a2)+,%d1,%acc2 + mac.w %a1l,%a7u,#-1,(%a2)+,%a3,%acc1 + mac.w %a1l,%a7u,#-1,(%a2)+,%a3,%acc2 + mac.w %a1l,%a7u,#-1,(%a2)+,%d2,%acc1 + mac.w %a1l,%a7u,#-1,(%a2)+,%d2,%acc2 + mac.w %a1l,%a7u,#-1,(%a2)+,%a7,%acc1 + mac.w %a1l,%a7u,#-1,(%a2)+,%a7,%acc2 + mac.w %a1l,%a7u,#-1,(%a2)+&,%d1,%acc1 + mac.w %a1l,%a7u,#-1,(%a2)+&,%d1,%acc2 + mac.w %a1l,%a7u,#-1,(%a2)+&,%a3,%acc1 + mac.w %a1l,%a7u,#-1,(%a2)+&,%a3,%acc2 + mac.w %a1l,%a7u,#-1,(%a2)+&,%d2,%acc1 + mac.w %a1l,%a7u,#-1,(%a2)+&,%d2,%acc2 + mac.w %a1l,%a7u,#-1,(%a2)+&,%a7,%acc1 + mac.w %a1l,%a7u,#-1,(%a2)+&,%a7,%acc2 + mac.w %a1l,%a7u,#-1,10(%a6),%d1,%acc1 + mac.w %a1l,%a7u,#-1,10(%a6),%d1,%acc2 + mac.w %a1l,%a7u,#-1,10(%a6),%a3,%acc1 + mac.w %a1l,%a7u,#-1,10(%a6),%a3,%acc2 + mac.w %a1l,%a7u,#-1,10(%a6),%d2,%acc1 + mac.w %a1l,%a7u,#-1,10(%a6),%d2,%acc2 + mac.w %a1l,%a7u,#-1,10(%a6),%a7,%acc1 + mac.w %a1l,%a7u,#-1,10(%a6),%a7,%acc2 + mac.w %a1l,%a7u,#-1,10(%a6)&,%d1,%acc1 + mac.w %a1l,%a7u,#-1,10(%a6)&,%d1,%acc2 + mac.w %a1l,%a7u,#-1,10(%a6)&,%a3,%acc1 + mac.w %a1l,%a7u,#-1,10(%a6)&,%a3,%acc2 + mac.w %a1l,%a7u,#-1,10(%a6)&,%d2,%acc1 + mac.w %a1l,%a7u,#-1,10(%a6)&,%d2,%acc2 + mac.w %a1l,%a7u,#-1,10(%a6)&,%a7,%acc1 + mac.w %a1l,%a7u,#-1,10(%a6)&,%a7,%acc2 + mac.w %a1l,%a7u,#-1,-(%a1),%d1,%acc1 + mac.w %a1l,%a7u,#-1,-(%a1),%d1,%acc2 + mac.w %a1l,%a7u,#-1,-(%a1),%a3,%acc1 + mac.w %a1l,%a7u,#-1,-(%a1),%a3,%acc2 + mac.w %a1l,%a7u,#-1,-(%a1),%d2,%acc1 + mac.w %a1l,%a7u,#-1,-(%a1),%d2,%acc2 + mac.w %a1l,%a7u,#-1,-(%a1),%a7,%acc1 + mac.w %a1l,%a7u,#-1,-(%a1),%a7,%acc2 + mac.w %a1l,%a7u,#-1,-(%a1)&,%d1,%acc1 + mac.w %a1l,%a7u,#-1,-(%a1)&,%d1,%acc2 + mac.w %a1l,%a7u,#-1,-(%a1)&,%a3,%acc1 + mac.w %a1l,%a7u,#-1,-(%a1)&,%a3,%acc2 + mac.w %a1l,%a7u,#-1,-(%a1)&,%d2,%acc1 + mac.w %a1l,%a7u,#-1,-(%a1)&,%d2,%acc2 + mac.w %a1l,%a7u,#-1,-(%a1)&,%a7,%acc1 + mac.w %a1l,%a7u,#-1,-(%a1)&,%a7,%acc2 + mac.w %a1l,%d1l,(%a3),%d1,%acc1 + mac.w %a1l,%d1l,(%a3),%d1,%acc2 + mac.w %a1l,%d1l,(%a3),%a3,%acc1 + mac.w %a1l,%d1l,(%a3),%a3,%acc2 + mac.w %a1l,%d1l,(%a3),%d2,%acc1 + mac.w %a1l,%d1l,(%a3),%d2,%acc2 + mac.w %a1l,%d1l,(%a3),%a7,%acc1 + mac.w %a1l,%d1l,(%a3),%a7,%acc2 + mac.w %a1l,%d1l,(%a3)&,%d1,%acc1 + mac.w %a1l,%d1l,(%a3)&,%d1,%acc2 + mac.w %a1l,%d1l,(%a3)&,%a3,%acc1 + mac.w %a1l,%d1l,(%a3)&,%a3,%acc2 + mac.w %a1l,%d1l,(%a3)&,%d2,%acc1 + mac.w %a1l,%d1l,(%a3)&,%d2,%acc2 + mac.w %a1l,%d1l,(%a3)&,%a7,%acc1 + mac.w %a1l,%d1l,(%a3)&,%a7,%acc2 + mac.w %a1l,%d1l,(%a2)+,%d1,%acc1 + mac.w %a1l,%d1l,(%a2)+,%d1,%acc2 + mac.w %a1l,%d1l,(%a2)+,%a3,%acc1 + mac.w %a1l,%d1l,(%a2)+,%a3,%acc2 + mac.w %a1l,%d1l,(%a2)+,%d2,%acc1 + mac.w %a1l,%d1l,(%a2)+,%d2,%acc2 + mac.w %a1l,%d1l,(%a2)+,%a7,%acc1 + mac.w %a1l,%d1l,(%a2)+,%a7,%acc2 + mac.w %a1l,%d1l,(%a2)+&,%d1,%acc1 + mac.w %a1l,%d1l,(%a2)+&,%d1,%acc2 + mac.w %a1l,%d1l,(%a2)+&,%a3,%acc1 + mac.w %a1l,%d1l,(%a2)+&,%a3,%acc2 + mac.w %a1l,%d1l,(%a2)+&,%d2,%acc1 + mac.w %a1l,%d1l,(%a2)+&,%d2,%acc2 + mac.w %a1l,%d1l,(%a2)+&,%a7,%acc1 + mac.w %a1l,%d1l,(%a2)+&,%a7,%acc2 + mac.w %a1l,%d1l,10(%a6),%d1,%acc1 + mac.w %a1l,%d1l,10(%a6),%d1,%acc2 + mac.w %a1l,%d1l,10(%a6),%a3,%acc1 + mac.w %a1l,%d1l,10(%a6),%a3,%acc2 + mac.w %a1l,%d1l,10(%a6),%d2,%acc1 + mac.w %a1l,%d1l,10(%a6),%d2,%acc2 + mac.w %a1l,%d1l,10(%a6),%a7,%acc1 + mac.w %a1l,%d1l,10(%a6),%a7,%acc2 + mac.w %a1l,%d1l,10(%a6)&,%d1,%acc1 + mac.w %a1l,%d1l,10(%a6)&,%d1,%acc2 + mac.w %a1l,%d1l,10(%a6)&,%a3,%acc1 + mac.w %a1l,%d1l,10(%a6)&,%a3,%acc2 + mac.w %a1l,%d1l,10(%a6)&,%d2,%acc1 + mac.w %a1l,%d1l,10(%a6)&,%d2,%acc2 + mac.w %a1l,%d1l,10(%a6)&,%a7,%acc1 + mac.w %a1l,%d1l,10(%a6)&,%a7,%acc2 + mac.w %a1l,%d1l,-(%a1),%d1,%acc1 + mac.w %a1l,%d1l,-(%a1),%d1,%acc2 + mac.w %a1l,%d1l,-(%a1),%a3,%acc1 + mac.w %a1l,%d1l,-(%a1),%a3,%acc2 + mac.w %a1l,%d1l,-(%a1),%d2,%acc1 + mac.w %a1l,%d1l,-(%a1),%d2,%acc2 + mac.w %a1l,%d1l,-(%a1),%a7,%acc1 + mac.w %a1l,%d1l,-(%a1),%a7,%acc2 + mac.w %a1l,%d1l,-(%a1)&,%d1,%acc1 + mac.w %a1l,%d1l,-(%a1)&,%d1,%acc2 + mac.w %a1l,%d1l,-(%a1)&,%a3,%acc1 + mac.w %a1l,%d1l,-(%a1)&,%a3,%acc2 + mac.w %a1l,%d1l,-(%a1)&,%d2,%acc1 + mac.w %a1l,%d1l,-(%a1)&,%d2,%acc2 + mac.w %a1l,%d1l,-(%a1)&,%a7,%acc1 + mac.w %a1l,%d1l,-(%a1)&,%a7,%acc2 + mac.w %a1l,%d1l,<<,(%a3),%d1,%acc1 + mac.w %a1l,%d1l,<<,(%a3),%d1,%acc2 + mac.w %a1l,%d1l,<<,(%a3),%a3,%acc1 + mac.w %a1l,%d1l,<<,(%a3),%a3,%acc2 + mac.w %a1l,%d1l,<<,(%a3),%d2,%acc1 + mac.w %a1l,%d1l,<<,(%a3),%d2,%acc2 + mac.w %a1l,%d1l,<<,(%a3),%a7,%acc1 + mac.w %a1l,%d1l,<<,(%a3),%a7,%acc2 + mac.w %a1l,%d1l,<<,(%a3)&,%d1,%acc1 + mac.w %a1l,%d1l,<<,(%a3)&,%d1,%acc2 + mac.w %a1l,%d1l,<<,(%a3)&,%a3,%acc1 + mac.w %a1l,%d1l,<<,(%a3)&,%a3,%acc2 + mac.w %a1l,%d1l,<<,(%a3)&,%d2,%acc1 + mac.w %a1l,%d1l,<<,(%a3)&,%d2,%acc2 + mac.w %a1l,%d1l,<<,(%a3)&,%a7,%acc1 + mac.w %a1l,%d1l,<<,(%a3)&,%a7,%acc2 + mac.w %a1l,%d1l,<<,(%a2)+,%d1,%acc1 + mac.w %a1l,%d1l,<<,(%a2)+,%d1,%acc2 + mac.w %a1l,%d1l,<<,(%a2)+,%a3,%acc1 + mac.w %a1l,%d1l,<<,(%a2)+,%a3,%acc2 + mac.w %a1l,%d1l,<<,(%a2)+,%d2,%acc1 + mac.w %a1l,%d1l,<<,(%a2)+,%d2,%acc2 + mac.w %a1l,%d1l,<<,(%a2)+,%a7,%acc1 + mac.w %a1l,%d1l,<<,(%a2)+,%a7,%acc2 + mac.w %a1l,%d1l,<<,(%a2)+&,%d1,%acc1 + mac.w %a1l,%d1l,<<,(%a2)+&,%d1,%acc2 + mac.w %a1l,%d1l,<<,(%a2)+&,%a3,%acc1 + mac.w %a1l,%d1l,<<,(%a2)+&,%a3,%acc2 + mac.w %a1l,%d1l,<<,(%a2)+&,%d2,%acc1 + mac.w %a1l,%d1l,<<,(%a2)+&,%d2,%acc2 + mac.w %a1l,%d1l,<<,(%a2)+&,%a7,%acc1 + mac.w %a1l,%d1l,<<,(%a2)+&,%a7,%acc2 + mac.w %a1l,%d1l,<<,10(%a6),%d1,%acc1 + mac.w %a1l,%d1l,<<,10(%a6),%d1,%acc2 + mac.w %a1l,%d1l,<<,10(%a6),%a3,%acc1 + mac.w %a1l,%d1l,<<,10(%a6),%a3,%acc2 + mac.w %a1l,%d1l,<<,10(%a6),%d2,%acc1 + mac.w %a1l,%d1l,<<,10(%a6),%d2,%acc2 + mac.w %a1l,%d1l,<<,10(%a6),%a7,%acc1 + mac.w %a1l,%d1l,<<,10(%a6),%a7,%acc2 + mac.w %a1l,%d1l,<<,10(%a6)&,%d1,%acc1 + mac.w %a1l,%d1l,<<,10(%a6)&,%d1,%acc2 + mac.w %a1l,%d1l,<<,10(%a6)&,%a3,%acc1 + mac.w %a1l,%d1l,<<,10(%a6)&,%a3,%acc2 + mac.w %a1l,%d1l,<<,10(%a6)&,%d2,%acc1 + mac.w %a1l,%d1l,<<,10(%a6)&,%d2,%acc2 + mac.w %a1l,%d1l,<<,10(%a6)&,%a7,%acc1 + mac.w %a1l,%d1l,<<,10(%a6)&,%a7,%acc2 + mac.w %a1l,%d1l,<<,-(%a1),%d1,%acc1 + mac.w %a1l,%d1l,<<,-(%a1),%d1,%acc2 + mac.w %a1l,%d1l,<<,-(%a1),%a3,%acc1 + mac.w %a1l,%d1l,<<,-(%a1),%a3,%acc2 + mac.w %a1l,%d1l,<<,-(%a1),%d2,%acc1 + mac.w %a1l,%d1l,<<,-(%a1),%d2,%acc2 + mac.w %a1l,%d1l,<<,-(%a1),%a7,%acc1 + mac.w %a1l,%d1l,<<,-(%a1),%a7,%acc2 + mac.w %a1l,%d1l,<<,-(%a1)&,%d1,%acc1 + mac.w %a1l,%d1l,<<,-(%a1)&,%d1,%acc2 + mac.w %a1l,%d1l,<<,-(%a1)&,%a3,%acc1 + mac.w %a1l,%d1l,<<,-(%a1)&,%a3,%acc2 + mac.w %a1l,%d1l,<<,-(%a1)&,%d2,%acc1 + mac.w %a1l,%d1l,<<,-(%a1)&,%d2,%acc2 + mac.w %a1l,%d1l,<<,-(%a1)&,%a7,%acc1 + mac.w %a1l,%d1l,<<,-(%a1)&,%a7,%acc2 + mac.w %a1l,%d1l,>>,(%a3),%d1,%acc1 + mac.w %a1l,%d1l,>>,(%a3),%d1,%acc2 + mac.w %a1l,%d1l,>>,(%a3),%a3,%acc1 + mac.w %a1l,%d1l,>>,(%a3),%a3,%acc2 + mac.w %a1l,%d1l,>>,(%a3),%d2,%acc1 + mac.w %a1l,%d1l,>>,(%a3),%d2,%acc2 + mac.w %a1l,%d1l,>>,(%a3),%a7,%acc1 + mac.w %a1l,%d1l,>>,(%a3),%a7,%acc2 + mac.w %a1l,%d1l,>>,(%a3)&,%d1,%acc1 + mac.w %a1l,%d1l,>>,(%a3)&,%d1,%acc2 + mac.w %a1l,%d1l,>>,(%a3)&,%a3,%acc1 + mac.w %a1l,%d1l,>>,(%a3)&,%a3,%acc2 + mac.w %a1l,%d1l,>>,(%a3)&,%d2,%acc1 + mac.w %a1l,%d1l,>>,(%a3)&,%d2,%acc2 + mac.w %a1l,%d1l,>>,(%a3)&,%a7,%acc1 + mac.w %a1l,%d1l,>>,(%a3)&,%a7,%acc2 + mac.w %a1l,%d1l,>>,(%a2)+,%d1,%acc1 + mac.w %a1l,%d1l,>>,(%a2)+,%d1,%acc2 + mac.w %a1l,%d1l,>>,(%a2)+,%a3,%acc1 + mac.w %a1l,%d1l,>>,(%a2)+,%a3,%acc2 + mac.w %a1l,%d1l,>>,(%a2)+,%d2,%acc1 + mac.w %a1l,%d1l,>>,(%a2)+,%d2,%acc2 + mac.w %a1l,%d1l,>>,(%a2)+,%a7,%acc1 + mac.w %a1l,%d1l,>>,(%a2)+,%a7,%acc2 + mac.w %a1l,%d1l,>>,(%a2)+&,%d1,%acc1 + mac.w %a1l,%d1l,>>,(%a2)+&,%d1,%acc2 + mac.w %a1l,%d1l,>>,(%a2)+&,%a3,%acc1 + mac.w %a1l,%d1l,>>,(%a2)+&,%a3,%acc2 + mac.w %a1l,%d1l,>>,(%a2)+&,%d2,%acc1 + mac.w %a1l,%d1l,>>,(%a2)+&,%d2,%acc2 + mac.w %a1l,%d1l,>>,(%a2)+&,%a7,%acc1 + mac.w %a1l,%d1l,>>,(%a2)+&,%a7,%acc2 + mac.w %a1l,%d1l,>>,10(%a6),%d1,%acc1 + mac.w %a1l,%d1l,>>,10(%a6),%d1,%acc2 + mac.w %a1l,%d1l,>>,10(%a6),%a3,%acc1 + mac.w %a1l,%d1l,>>,10(%a6),%a3,%acc2 + mac.w %a1l,%d1l,>>,10(%a6),%d2,%acc1 + mac.w %a1l,%d1l,>>,10(%a6),%d2,%acc2 + mac.w %a1l,%d1l,>>,10(%a6),%a7,%acc1 + mac.w %a1l,%d1l,>>,10(%a6),%a7,%acc2 + mac.w %a1l,%d1l,>>,10(%a6)&,%d1,%acc1 + mac.w %a1l,%d1l,>>,10(%a6)&,%d1,%acc2 + mac.w %a1l,%d1l,>>,10(%a6)&,%a3,%acc1 + mac.w %a1l,%d1l,>>,10(%a6)&,%a3,%acc2 + mac.w %a1l,%d1l,>>,10(%a6)&,%d2,%acc1 + mac.w %a1l,%d1l,>>,10(%a6)&,%d2,%acc2 + mac.w %a1l,%d1l,>>,10(%a6)&,%a7,%acc1 + mac.w %a1l,%d1l,>>,10(%a6)&,%a7,%acc2 + mac.w %a1l,%d1l,>>,-(%a1),%d1,%acc1 + mac.w %a1l,%d1l,>>,-(%a1),%d1,%acc2 + mac.w %a1l,%d1l,>>,-(%a1),%a3,%acc1 + mac.w %a1l,%d1l,>>,-(%a1),%a3,%acc2 + mac.w %a1l,%d1l,>>,-(%a1),%d2,%acc1 + mac.w %a1l,%d1l,>>,-(%a1),%d2,%acc2 + mac.w %a1l,%d1l,>>,-(%a1),%a7,%acc1 + mac.w %a1l,%d1l,>>,-(%a1),%a7,%acc2 + mac.w %a1l,%d1l,>>,-(%a1)&,%d1,%acc1 + mac.w %a1l,%d1l,>>,-(%a1)&,%d1,%acc2 + mac.w %a1l,%d1l,>>,-(%a1)&,%a3,%acc1 + mac.w %a1l,%d1l,>>,-(%a1)&,%a3,%acc2 + mac.w %a1l,%d1l,>>,-(%a1)&,%d2,%acc1 + mac.w %a1l,%d1l,>>,-(%a1)&,%d2,%acc2 + mac.w %a1l,%d1l,>>,-(%a1)&,%a7,%acc1 + mac.w %a1l,%d1l,>>,-(%a1)&,%a7,%acc2 + mac.w %a1l,%d1l,#1,(%a3),%d1,%acc1 + mac.w %a1l,%d1l,#1,(%a3),%d1,%acc2 + mac.w %a1l,%d1l,#1,(%a3),%a3,%acc1 + mac.w %a1l,%d1l,#1,(%a3),%a3,%acc2 + mac.w %a1l,%d1l,#1,(%a3),%d2,%acc1 + mac.w %a1l,%d1l,#1,(%a3),%d2,%acc2 + mac.w %a1l,%d1l,#1,(%a3),%a7,%acc1 + mac.w %a1l,%d1l,#1,(%a3),%a7,%acc2 + mac.w %a1l,%d1l,#1,(%a3)&,%d1,%acc1 + mac.w %a1l,%d1l,#1,(%a3)&,%d1,%acc2 + mac.w %a1l,%d1l,#1,(%a3)&,%a3,%acc1 + mac.w %a1l,%d1l,#1,(%a3)&,%a3,%acc2 + mac.w %a1l,%d1l,#1,(%a3)&,%d2,%acc1 + mac.w %a1l,%d1l,#1,(%a3)&,%d2,%acc2 + mac.w %a1l,%d1l,#1,(%a3)&,%a7,%acc1 + mac.w %a1l,%d1l,#1,(%a3)&,%a7,%acc2 + mac.w %a1l,%d1l,#1,(%a2)+,%d1,%acc1 + mac.w %a1l,%d1l,#1,(%a2)+,%d1,%acc2 + mac.w %a1l,%d1l,#1,(%a2)+,%a3,%acc1 + mac.w %a1l,%d1l,#1,(%a2)+,%a3,%acc2 + mac.w %a1l,%d1l,#1,(%a2)+,%d2,%acc1 + mac.w %a1l,%d1l,#1,(%a2)+,%d2,%acc2 + mac.w %a1l,%d1l,#1,(%a2)+,%a7,%acc1 + mac.w %a1l,%d1l,#1,(%a2)+,%a7,%acc2 + mac.w %a1l,%d1l,#1,(%a2)+&,%d1,%acc1 + mac.w %a1l,%d1l,#1,(%a2)+&,%d1,%acc2 + mac.w %a1l,%d1l,#1,(%a2)+&,%a3,%acc1 + mac.w %a1l,%d1l,#1,(%a2)+&,%a3,%acc2 + mac.w %a1l,%d1l,#1,(%a2)+&,%d2,%acc1 + mac.w %a1l,%d1l,#1,(%a2)+&,%d2,%acc2 + mac.w %a1l,%d1l,#1,(%a2)+&,%a7,%acc1 + mac.w %a1l,%d1l,#1,(%a2)+&,%a7,%acc2 + mac.w %a1l,%d1l,#1,10(%a6),%d1,%acc1 + mac.w %a1l,%d1l,#1,10(%a6),%d1,%acc2 + mac.w %a1l,%d1l,#1,10(%a6),%a3,%acc1 + mac.w %a1l,%d1l,#1,10(%a6),%a3,%acc2 + mac.w %a1l,%d1l,#1,10(%a6),%d2,%acc1 + mac.w %a1l,%d1l,#1,10(%a6),%d2,%acc2 + mac.w %a1l,%d1l,#1,10(%a6),%a7,%acc1 + mac.w %a1l,%d1l,#1,10(%a6),%a7,%acc2 + mac.w %a1l,%d1l,#1,10(%a6)&,%d1,%acc1 + mac.w %a1l,%d1l,#1,10(%a6)&,%d1,%acc2 + mac.w %a1l,%d1l,#1,10(%a6)&,%a3,%acc1 + mac.w %a1l,%d1l,#1,10(%a6)&,%a3,%acc2 + mac.w %a1l,%d1l,#1,10(%a6)&,%d2,%acc1 + mac.w %a1l,%d1l,#1,10(%a6)&,%d2,%acc2 + mac.w %a1l,%d1l,#1,10(%a6)&,%a7,%acc1 + mac.w %a1l,%d1l,#1,10(%a6)&,%a7,%acc2 + mac.w %a1l,%d1l,#1,-(%a1),%d1,%acc1 + mac.w %a1l,%d1l,#1,-(%a1),%d1,%acc2 + mac.w %a1l,%d1l,#1,-(%a1),%a3,%acc1 + mac.w %a1l,%d1l,#1,-(%a1),%a3,%acc2 + mac.w %a1l,%d1l,#1,-(%a1),%d2,%acc1 + mac.w %a1l,%d1l,#1,-(%a1),%d2,%acc2 + mac.w %a1l,%d1l,#1,-(%a1),%a7,%acc1 + mac.w %a1l,%d1l,#1,-(%a1),%a7,%acc2 + mac.w %a1l,%d1l,#1,-(%a1)&,%d1,%acc1 + mac.w %a1l,%d1l,#1,-(%a1)&,%d1,%acc2 + mac.w %a1l,%d1l,#1,-(%a1)&,%a3,%acc1 + mac.w %a1l,%d1l,#1,-(%a1)&,%a3,%acc2 + mac.w %a1l,%d1l,#1,-(%a1)&,%d2,%acc1 + mac.w %a1l,%d1l,#1,-(%a1)&,%d2,%acc2 + mac.w %a1l,%d1l,#1,-(%a1)&,%a7,%acc1 + mac.w %a1l,%d1l,#1,-(%a1)&,%a7,%acc2 + mac.w %a1l,%d1l,#-1,(%a3),%d1,%acc1 + mac.w %a1l,%d1l,#-1,(%a3),%d1,%acc2 + mac.w %a1l,%d1l,#-1,(%a3),%a3,%acc1 + mac.w %a1l,%d1l,#-1,(%a3),%a3,%acc2 + mac.w %a1l,%d1l,#-1,(%a3),%d2,%acc1 + mac.w %a1l,%d1l,#-1,(%a3),%d2,%acc2 + mac.w %a1l,%d1l,#-1,(%a3),%a7,%acc1 + mac.w %a1l,%d1l,#-1,(%a3),%a7,%acc2 + mac.w %a1l,%d1l,#-1,(%a3)&,%d1,%acc1 + mac.w %a1l,%d1l,#-1,(%a3)&,%d1,%acc2 + mac.w %a1l,%d1l,#-1,(%a3)&,%a3,%acc1 + mac.w %a1l,%d1l,#-1,(%a3)&,%a3,%acc2 + mac.w %a1l,%d1l,#-1,(%a3)&,%d2,%acc1 + mac.w %a1l,%d1l,#-1,(%a3)&,%d2,%acc2 + mac.w %a1l,%d1l,#-1,(%a3)&,%a7,%acc1 + mac.w %a1l,%d1l,#-1,(%a3)&,%a7,%acc2 + mac.w %a1l,%d1l,#-1,(%a2)+,%d1,%acc1 + mac.w %a1l,%d1l,#-1,(%a2)+,%d1,%acc2 + mac.w %a1l,%d1l,#-1,(%a2)+,%a3,%acc1 + mac.w %a1l,%d1l,#-1,(%a2)+,%a3,%acc2 + mac.w %a1l,%d1l,#-1,(%a2)+,%d2,%acc1 + mac.w %a1l,%d1l,#-1,(%a2)+,%d2,%acc2 + mac.w %a1l,%d1l,#-1,(%a2)+,%a7,%acc1 + mac.w %a1l,%d1l,#-1,(%a2)+,%a7,%acc2 + mac.w %a1l,%d1l,#-1,(%a2)+&,%d1,%acc1 + mac.w %a1l,%d1l,#-1,(%a2)+&,%d1,%acc2 + mac.w %a1l,%d1l,#-1,(%a2)+&,%a3,%acc1 + mac.w %a1l,%d1l,#-1,(%a2)+&,%a3,%acc2 + mac.w %a1l,%d1l,#-1,(%a2)+&,%d2,%acc1 + mac.w %a1l,%d1l,#-1,(%a2)+&,%d2,%acc2 + mac.w %a1l,%d1l,#-1,(%a2)+&,%a7,%acc1 + mac.w %a1l,%d1l,#-1,(%a2)+&,%a7,%acc2 + mac.w %a1l,%d1l,#-1,10(%a6),%d1,%acc1 + mac.w %a1l,%d1l,#-1,10(%a6),%d1,%acc2 + mac.w %a1l,%d1l,#-1,10(%a6),%a3,%acc1 + mac.w %a1l,%d1l,#-1,10(%a6),%a3,%acc2 + mac.w %a1l,%d1l,#-1,10(%a6),%d2,%acc1 + mac.w %a1l,%d1l,#-1,10(%a6),%d2,%acc2 + mac.w %a1l,%d1l,#-1,10(%a6),%a7,%acc1 + mac.w %a1l,%d1l,#-1,10(%a6),%a7,%acc2 + mac.w %a1l,%d1l,#-1,10(%a6)&,%d1,%acc1 + mac.w %a1l,%d1l,#-1,10(%a6)&,%d1,%acc2 + mac.w %a1l,%d1l,#-1,10(%a6)&,%a3,%acc1 + mac.w %a1l,%d1l,#-1,10(%a6)&,%a3,%acc2 + mac.w %a1l,%d1l,#-1,10(%a6)&,%d2,%acc1 + mac.w %a1l,%d1l,#-1,10(%a6)&,%d2,%acc2 + mac.w %a1l,%d1l,#-1,10(%a6)&,%a7,%acc1 + mac.w %a1l,%d1l,#-1,10(%a6)&,%a7,%acc2 + mac.w %a1l,%d1l,#-1,-(%a1),%d1,%acc1 + mac.w %a1l,%d1l,#-1,-(%a1),%d1,%acc2 + mac.w %a1l,%d1l,#-1,-(%a1),%a3,%acc1 + mac.w %a1l,%d1l,#-1,-(%a1),%a3,%acc2 + mac.w %a1l,%d1l,#-1,-(%a1),%d2,%acc1 + mac.w %a1l,%d1l,#-1,-(%a1),%d2,%acc2 + mac.w %a1l,%d1l,#-1,-(%a1),%a7,%acc1 + mac.w %a1l,%d1l,#-1,-(%a1),%a7,%acc2 + mac.w %a1l,%d1l,#-1,-(%a1)&,%d1,%acc1 + mac.w %a1l,%d1l,#-1,-(%a1)&,%d1,%acc2 + mac.w %a1l,%d1l,#-1,-(%a1)&,%a3,%acc1 + mac.w %a1l,%d1l,#-1,-(%a1)&,%a3,%acc2 + mac.w %a1l,%d1l,#-1,-(%a1)&,%d2,%acc1 + mac.w %a1l,%d1l,#-1,-(%a1)&,%d2,%acc2 + mac.w %a1l,%d1l,#-1,-(%a1)&,%a7,%acc1 + mac.w %a1l,%d1l,#-1,-(%a1)&,%a7,%acc2 + mac.w %d2u,%a2u,(%a3),%d1,%acc1 + mac.w %d2u,%a2u,(%a3),%d1,%acc2 + mac.w %d2u,%a2u,(%a3),%a3,%acc1 + mac.w %d2u,%a2u,(%a3),%a3,%acc2 + mac.w %d2u,%a2u,(%a3),%d2,%acc1 + mac.w %d2u,%a2u,(%a3),%d2,%acc2 + mac.w %d2u,%a2u,(%a3),%a7,%acc1 + mac.w %d2u,%a2u,(%a3),%a7,%acc2 + mac.w %d2u,%a2u,(%a3)&,%d1,%acc1 + mac.w %d2u,%a2u,(%a3)&,%d1,%acc2 + mac.w %d2u,%a2u,(%a3)&,%a3,%acc1 + mac.w %d2u,%a2u,(%a3)&,%a3,%acc2 + mac.w %d2u,%a2u,(%a3)&,%d2,%acc1 + mac.w %d2u,%a2u,(%a3)&,%d2,%acc2 + mac.w %d2u,%a2u,(%a3)&,%a7,%acc1 + mac.w %d2u,%a2u,(%a3)&,%a7,%acc2 + mac.w %d2u,%a2u,(%a2)+,%d1,%acc1 + mac.w %d2u,%a2u,(%a2)+,%d1,%acc2 + mac.w %d2u,%a2u,(%a2)+,%a3,%acc1 + mac.w %d2u,%a2u,(%a2)+,%a3,%acc2 + mac.w %d2u,%a2u,(%a2)+,%d2,%acc1 + mac.w %d2u,%a2u,(%a2)+,%d2,%acc2 + mac.w %d2u,%a2u,(%a2)+,%a7,%acc1 + mac.w %d2u,%a2u,(%a2)+,%a7,%acc2 + mac.w %d2u,%a2u,(%a2)+&,%d1,%acc1 + mac.w %d2u,%a2u,(%a2)+&,%d1,%acc2 + mac.w %d2u,%a2u,(%a2)+&,%a3,%acc1 + mac.w %d2u,%a2u,(%a2)+&,%a3,%acc2 + mac.w %d2u,%a2u,(%a2)+&,%d2,%acc1 + mac.w %d2u,%a2u,(%a2)+&,%d2,%acc2 + mac.w %d2u,%a2u,(%a2)+&,%a7,%acc1 + mac.w %d2u,%a2u,(%a2)+&,%a7,%acc2 + mac.w %d2u,%a2u,10(%a6),%d1,%acc1 + mac.w %d2u,%a2u,10(%a6),%d1,%acc2 + mac.w %d2u,%a2u,10(%a6),%a3,%acc1 + mac.w %d2u,%a2u,10(%a6),%a3,%acc2 + mac.w %d2u,%a2u,10(%a6),%d2,%acc1 + mac.w %d2u,%a2u,10(%a6),%d2,%acc2 + mac.w %d2u,%a2u,10(%a6),%a7,%acc1 + mac.w %d2u,%a2u,10(%a6),%a7,%acc2 + mac.w %d2u,%a2u,10(%a6)&,%d1,%acc1 + mac.w %d2u,%a2u,10(%a6)&,%d1,%acc2 + mac.w %d2u,%a2u,10(%a6)&,%a3,%acc1 + mac.w %d2u,%a2u,10(%a6)&,%a3,%acc2 + mac.w %d2u,%a2u,10(%a6)&,%d2,%acc1 + mac.w %d2u,%a2u,10(%a6)&,%d2,%acc2 + mac.w %d2u,%a2u,10(%a6)&,%a7,%acc1 + mac.w %d2u,%a2u,10(%a6)&,%a7,%acc2 + mac.w %d2u,%a2u,-(%a1),%d1,%acc1 + mac.w %d2u,%a2u,-(%a1),%d1,%acc2 + mac.w %d2u,%a2u,-(%a1),%a3,%acc1 + mac.w %d2u,%a2u,-(%a1),%a3,%acc2 + mac.w %d2u,%a2u,-(%a1),%d2,%acc1 + mac.w %d2u,%a2u,-(%a1),%d2,%acc2 + mac.w %d2u,%a2u,-(%a1),%a7,%acc1 + mac.w %d2u,%a2u,-(%a1),%a7,%acc2 + mac.w %d2u,%a2u,-(%a1)&,%d1,%acc1 + mac.w %d2u,%a2u,-(%a1)&,%d1,%acc2 + mac.w %d2u,%a2u,-(%a1)&,%a3,%acc1 + mac.w %d2u,%a2u,-(%a1)&,%a3,%acc2 + mac.w %d2u,%a2u,-(%a1)&,%d2,%acc1 + mac.w %d2u,%a2u,-(%a1)&,%d2,%acc2 + mac.w %d2u,%a2u,-(%a1)&,%a7,%acc1 + mac.w %d2u,%a2u,-(%a1)&,%a7,%acc2 + mac.w %d2u,%a2u,<<,(%a3),%d1,%acc1 + mac.w %d2u,%a2u,<<,(%a3),%d1,%acc2 + mac.w %d2u,%a2u,<<,(%a3),%a3,%acc1 + mac.w %d2u,%a2u,<<,(%a3),%a3,%acc2 + mac.w %d2u,%a2u,<<,(%a3),%d2,%acc1 + mac.w %d2u,%a2u,<<,(%a3),%d2,%acc2 + mac.w %d2u,%a2u,<<,(%a3),%a7,%acc1 + mac.w %d2u,%a2u,<<,(%a3),%a7,%acc2 + mac.w %d2u,%a2u,<<,(%a3)&,%d1,%acc1 + mac.w %d2u,%a2u,<<,(%a3)&,%d1,%acc2 + mac.w %d2u,%a2u,<<,(%a3)&,%a3,%acc1 + mac.w %d2u,%a2u,<<,(%a3)&,%a3,%acc2 + mac.w %d2u,%a2u,<<,(%a3)&,%d2,%acc1 + mac.w %d2u,%a2u,<<,(%a3)&,%d2,%acc2 + mac.w %d2u,%a2u,<<,(%a3)&,%a7,%acc1 + mac.w %d2u,%a2u,<<,(%a3)&,%a7,%acc2 + mac.w %d2u,%a2u,<<,(%a2)+,%d1,%acc1 + mac.w %d2u,%a2u,<<,(%a2)+,%d1,%acc2 + mac.w %d2u,%a2u,<<,(%a2)+,%a3,%acc1 + mac.w %d2u,%a2u,<<,(%a2)+,%a3,%acc2 + mac.w %d2u,%a2u,<<,(%a2)+,%d2,%acc1 + mac.w %d2u,%a2u,<<,(%a2)+,%d2,%acc2 + mac.w %d2u,%a2u,<<,(%a2)+,%a7,%acc1 + mac.w %d2u,%a2u,<<,(%a2)+,%a7,%acc2 + mac.w %d2u,%a2u,<<,(%a2)+&,%d1,%acc1 + mac.w %d2u,%a2u,<<,(%a2)+&,%d1,%acc2 + mac.w %d2u,%a2u,<<,(%a2)+&,%a3,%acc1 + mac.w %d2u,%a2u,<<,(%a2)+&,%a3,%acc2 + mac.w %d2u,%a2u,<<,(%a2)+&,%d2,%acc1 + mac.w %d2u,%a2u,<<,(%a2)+&,%d2,%acc2 + mac.w %d2u,%a2u,<<,(%a2)+&,%a7,%acc1 + mac.w %d2u,%a2u,<<,(%a2)+&,%a7,%acc2 + mac.w %d2u,%a2u,<<,10(%a6),%d1,%acc1 + mac.w %d2u,%a2u,<<,10(%a6),%d1,%acc2 + mac.w %d2u,%a2u,<<,10(%a6),%a3,%acc1 + mac.w %d2u,%a2u,<<,10(%a6),%a3,%acc2 + mac.w %d2u,%a2u,<<,10(%a6),%d2,%acc1 + mac.w %d2u,%a2u,<<,10(%a6),%d2,%acc2 + mac.w %d2u,%a2u,<<,10(%a6),%a7,%acc1 + mac.w %d2u,%a2u,<<,10(%a6),%a7,%acc2 + mac.w %d2u,%a2u,<<,10(%a6)&,%d1,%acc1 + mac.w %d2u,%a2u,<<,10(%a6)&,%d1,%acc2 + mac.w %d2u,%a2u,<<,10(%a6)&,%a3,%acc1 + mac.w %d2u,%a2u,<<,10(%a6)&,%a3,%acc2 + mac.w %d2u,%a2u,<<,10(%a6)&,%d2,%acc1 + mac.w %d2u,%a2u,<<,10(%a6)&,%d2,%acc2 + mac.w %d2u,%a2u,<<,10(%a6)&,%a7,%acc1 + mac.w %d2u,%a2u,<<,10(%a6)&,%a7,%acc2 + mac.w %d2u,%a2u,<<,-(%a1),%d1,%acc1 + mac.w %d2u,%a2u,<<,-(%a1),%d1,%acc2 + mac.w %d2u,%a2u,<<,-(%a1),%a3,%acc1 + mac.w %d2u,%a2u,<<,-(%a1),%a3,%acc2 + mac.w %d2u,%a2u,<<,-(%a1),%d2,%acc1 + mac.w %d2u,%a2u,<<,-(%a1),%d2,%acc2 + mac.w %d2u,%a2u,<<,-(%a1),%a7,%acc1 + mac.w %d2u,%a2u,<<,-(%a1),%a7,%acc2 + mac.w %d2u,%a2u,<<,-(%a1)&,%d1,%acc1 + mac.w %d2u,%a2u,<<,-(%a1)&,%d1,%acc2 + mac.w %d2u,%a2u,<<,-(%a1)&,%a3,%acc1 + mac.w %d2u,%a2u,<<,-(%a1)&,%a3,%acc2 + mac.w %d2u,%a2u,<<,-(%a1)&,%d2,%acc1 + mac.w %d2u,%a2u,<<,-(%a1)&,%d2,%acc2 + mac.w %d2u,%a2u,<<,-(%a1)&,%a7,%acc1 + mac.w %d2u,%a2u,<<,-(%a1)&,%a7,%acc2 + mac.w %d2u,%a2u,>>,(%a3),%d1,%acc1 + mac.w %d2u,%a2u,>>,(%a3),%d1,%acc2 + mac.w %d2u,%a2u,>>,(%a3),%a3,%acc1 + mac.w %d2u,%a2u,>>,(%a3),%a3,%acc2 + mac.w %d2u,%a2u,>>,(%a3),%d2,%acc1 + mac.w %d2u,%a2u,>>,(%a3),%d2,%acc2 + mac.w %d2u,%a2u,>>,(%a3),%a7,%acc1 + mac.w %d2u,%a2u,>>,(%a3),%a7,%acc2 + mac.w %d2u,%a2u,>>,(%a3)&,%d1,%acc1 + mac.w %d2u,%a2u,>>,(%a3)&,%d1,%acc2 + mac.w %d2u,%a2u,>>,(%a3)&,%a3,%acc1 + mac.w %d2u,%a2u,>>,(%a3)&,%a3,%acc2 + mac.w %d2u,%a2u,>>,(%a3)&,%d2,%acc1 + mac.w %d2u,%a2u,>>,(%a3)&,%d2,%acc2 + mac.w %d2u,%a2u,>>,(%a3)&,%a7,%acc1 + mac.w %d2u,%a2u,>>,(%a3)&,%a7,%acc2 + mac.w %d2u,%a2u,>>,(%a2)+,%d1,%acc1 + mac.w %d2u,%a2u,>>,(%a2)+,%d1,%acc2 + mac.w %d2u,%a2u,>>,(%a2)+,%a3,%acc1 + mac.w %d2u,%a2u,>>,(%a2)+,%a3,%acc2 + mac.w %d2u,%a2u,>>,(%a2)+,%d2,%acc1 + mac.w %d2u,%a2u,>>,(%a2)+,%d2,%acc2 + mac.w %d2u,%a2u,>>,(%a2)+,%a7,%acc1 + mac.w %d2u,%a2u,>>,(%a2)+,%a7,%acc2 + mac.w %d2u,%a2u,>>,(%a2)+&,%d1,%acc1 + mac.w %d2u,%a2u,>>,(%a2)+&,%d1,%acc2 + mac.w %d2u,%a2u,>>,(%a2)+&,%a3,%acc1 + mac.w %d2u,%a2u,>>,(%a2)+&,%a3,%acc2 + mac.w %d2u,%a2u,>>,(%a2)+&,%d2,%acc1 + mac.w %d2u,%a2u,>>,(%a2)+&,%d2,%acc2 + mac.w %d2u,%a2u,>>,(%a2)+&,%a7,%acc1 + mac.w %d2u,%a2u,>>,(%a2)+&,%a7,%acc2 + mac.w %d2u,%a2u,>>,10(%a6),%d1,%acc1 + mac.w %d2u,%a2u,>>,10(%a6),%d1,%acc2 + mac.w %d2u,%a2u,>>,10(%a6),%a3,%acc1 + mac.w %d2u,%a2u,>>,10(%a6),%a3,%acc2 + mac.w %d2u,%a2u,>>,10(%a6),%d2,%acc1 + mac.w %d2u,%a2u,>>,10(%a6),%d2,%acc2 + mac.w %d2u,%a2u,>>,10(%a6),%a7,%acc1 + mac.w %d2u,%a2u,>>,10(%a6),%a7,%acc2 + mac.w %d2u,%a2u,>>,10(%a6)&,%d1,%acc1 + mac.w %d2u,%a2u,>>,10(%a6)&,%d1,%acc2 + mac.w %d2u,%a2u,>>,10(%a6)&,%a3,%acc1 + mac.w %d2u,%a2u,>>,10(%a6)&,%a3,%acc2 + mac.w %d2u,%a2u,>>,10(%a6)&,%d2,%acc1 + mac.w %d2u,%a2u,>>,10(%a6)&,%d2,%acc2 + mac.w %d2u,%a2u,>>,10(%a6)&,%a7,%acc1 + mac.w %d2u,%a2u,>>,10(%a6)&,%a7,%acc2 + mac.w %d2u,%a2u,>>,-(%a1),%d1,%acc1 + mac.w %d2u,%a2u,>>,-(%a1),%d1,%acc2 + mac.w %d2u,%a2u,>>,-(%a1),%a3,%acc1 + mac.w %d2u,%a2u,>>,-(%a1),%a3,%acc2 + mac.w %d2u,%a2u,>>,-(%a1),%d2,%acc1 + mac.w %d2u,%a2u,>>,-(%a1),%d2,%acc2 + mac.w %d2u,%a2u,>>,-(%a1),%a7,%acc1 + mac.w %d2u,%a2u,>>,-(%a1),%a7,%acc2 + mac.w %d2u,%a2u,>>,-(%a1)&,%d1,%acc1 + mac.w %d2u,%a2u,>>,-(%a1)&,%d1,%acc2 + mac.w %d2u,%a2u,>>,-(%a1)&,%a3,%acc1 + mac.w %d2u,%a2u,>>,-(%a1)&,%a3,%acc2 + mac.w %d2u,%a2u,>>,-(%a1)&,%d2,%acc1 + mac.w %d2u,%a2u,>>,-(%a1)&,%d2,%acc2 + mac.w %d2u,%a2u,>>,-(%a1)&,%a7,%acc1 + mac.w %d2u,%a2u,>>,-(%a1)&,%a7,%acc2 + mac.w %d2u,%a2u,#1,(%a3),%d1,%acc1 + mac.w %d2u,%a2u,#1,(%a3),%d1,%acc2 + mac.w %d2u,%a2u,#1,(%a3),%a3,%acc1 + mac.w %d2u,%a2u,#1,(%a3),%a3,%acc2 + mac.w %d2u,%a2u,#1,(%a3),%d2,%acc1 + mac.w %d2u,%a2u,#1,(%a3),%d2,%acc2 + mac.w %d2u,%a2u,#1,(%a3),%a7,%acc1 + mac.w %d2u,%a2u,#1,(%a3),%a7,%acc2 + mac.w %d2u,%a2u,#1,(%a3)&,%d1,%acc1 + mac.w %d2u,%a2u,#1,(%a3)&,%d1,%acc2 + mac.w %d2u,%a2u,#1,(%a3)&,%a3,%acc1 + mac.w %d2u,%a2u,#1,(%a3)&,%a3,%acc2 + mac.w %d2u,%a2u,#1,(%a3)&,%d2,%acc1 + mac.w %d2u,%a2u,#1,(%a3)&,%d2,%acc2 + mac.w %d2u,%a2u,#1,(%a3)&,%a7,%acc1 + mac.w %d2u,%a2u,#1,(%a3)&,%a7,%acc2 + mac.w %d2u,%a2u,#1,(%a2)+,%d1,%acc1 + mac.w %d2u,%a2u,#1,(%a2)+,%d1,%acc2 + mac.w %d2u,%a2u,#1,(%a2)+,%a3,%acc1 + mac.w %d2u,%a2u,#1,(%a2)+,%a3,%acc2 + mac.w %d2u,%a2u,#1,(%a2)+,%d2,%acc1 + mac.w %d2u,%a2u,#1,(%a2)+,%d2,%acc2 + mac.w %d2u,%a2u,#1,(%a2)+,%a7,%acc1 + mac.w %d2u,%a2u,#1,(%a2)+,%a7,%acc2 + mac.w %d2u,%a2u,#1,(%a2)+&,%d1,%acc1 + mac.w %d2u,%a2u,#1,(%a2)+&,%d1,%acc2 + mac.w %d2u,%a2u,#1,(%a2)+&,%a3,%acc1 + mac.w %d2u,%a2u,#1,(%a2)+&,%a3,%acc2 + mac.w %d2u,%a2u,#1,(%a2)+&,%d2,%acc1 + mac.w %d2u,%a2u,#1,(%a2)+&,%d2,%acc2 + mac.w %d2u,%a2u,#1,(%a2)+&,%a7,%acc1 + mac.w %d2u,%a2u,#1,(%a2)+&,%a7,%acc2 + mac.w %d2u,%a2u,#1,10(%a6),%d1,%acc1 + mac.w %d2u,%a2u,#1,10(%a6),%d1,%acc2 + mac.w %d2u,%a2u,#1,10(%a6),%a3,%acc1 + mac.w %d2u,%a2u,#1,10(%a6),%a3,%acc2 + mac.w %d2u,%a2u,#1,10(%a6),%d2,%acc1 + mac.w %d2u,%a2u,#1,10(%a6),%d2,%acc2 + mac.w %d2u,%a2u,#1,10(%a6),%a7,%acc1 + mac.w %d2u,%a2u,#1,10(%a6),%a7,%acc2 + mac.w %d2u,%a2u,#1,10(%a6)&,%d1,%acc1 + mac.w %d2u,%a2u,#1,10(%a6)&,%d1,%acc2 + mac.w %d2u,%a2u,#1,10(%a6)&,%a3,%acc1 + mac.w %d2u,%a2u,#1,10(%a6)&,%a3,%acc2 + mac.w %d2u,%a2u,#1,10(%a6)&,%d2,%acc1 + mac.w %d2u,%a2u,#1,10(%a6)&,%d2,%acc2 + mac.w %d2u,%a2u,#1,10(%a6)&,%a7,%acc1 + mac.w %d2u,%a2u,#1,10(%a6)&,%a7,%acc2 + mac.w %d2u,%a2u,#1,-(%a1),%d1,%acc1 + mac.w %d2u,%a2u,#1,-(%a1),%d1,%acc2 + mac.w %d2u,%a2u,#1,-(%a1),%a3,%acc1 + mac.w %d2u,%a2u,#1,-(%a1),%a3,%acc2 + mac.w %d2u,%a2u,#1,-(%a1),%d2,%acc1 + mac.w %d2u,%a2u,#1,-(%a1),%d2,%acc2 + mac.w %d2u,%a2u,#1,-(%a1),%a7,%acc1 + mac.w %d2u,%a2u,#1,-(%a1),%a7,%acc2 + mac.w %d2u,%a2u,#1,-(%a1)&,%d1,%acc1 + mac.w %d2u,%a2u,#1,-(%a1)&,%d1,%acc2 + mac.w %d2u,%a2u,#1,-(%a1)&,%a3,%acc1 + mac.w %d2u,%a2u,#1,-(%a1)&,%a3,%acc2 + mac.w %d2u,%a2u,#1,-(%a1)&,%d2,%acc1 + mac.w %d2u,%a2u,#1,-(%a1)&,%d2,%acc2 + mac.w %d2u,%a2u,#1,-(%a1)&,%a7,%acc1 + mac.w %d2u,%a2u,#1,-(%a1)&,%a7,%acc2 + mac.w %d2u,%a2u,#-1,(%a3),%d1,%acc1 + mac.w %d2u,%a2u,#-1,(%a3),%d1,%acc2 + mac.w %d2u,%a2u,#-1,(%a3),%a3,%acc1 + mac.w %d2u,%a2u,#-1,(%a3),%a3,%acc2 + mac.w %d2u,%a2u,#-1,(%a3),%d2,%acc1 + mac.w %d2u,%a2u,#-1,(%a3),%d2,%acc2 + mac.w %d2u,%a2u,#-1,(%a3),%a7,%acc1 + mac.w %d2u,%a2u,#-1,(%a3),%a7,%acc2 + mac.w %d2u,%a2u,#-1,(%a3)&,%d1,%acc1 + mac.w %d2u,%a2u,#-1,(%a3)&,%d1,%acc2 + mac.w %d2u,%a2u,#-1,(%a3)&,%a3,%acc1 + mac.w %d2u,%a2u,#-1,(%a3)&,%a3,%acc2 + mac.w %d2u,%a2u,#-1,(%a3)&,%d2,%acc1 + mac.w %d2u,%a2u,#-1,(%a3)&,%d2,%acc2 + mac.w %d2u,%a2u,#-1,(%a3)&,%a7,%acc1 + mac.w %d2u,%a2u,#-1,(%a3)&,%a7,%acc2 + mac.w %d2u,%a2u,#-1,(%a2)+,%d1,%acc1 + mac.w %d2u,%a2u,#-1,(%a2)+,%d1,%acc2 + mac.w %d2u,%a2u,#-1,(%a2)+,%a3,%acc1 + mac.w %d2u,%a2u,#-1,(%a2)+,%a3,%acc2 + mac.w %d2u,%a2u,#-1,(%a2)+,%d2,%acc1 + mac.w %d2u,%a2u,#-1,(%a2)+,%d2,%acc2 + mac.w %d2u,%a2u,#-1,(%a2)+,%a7,%acc1 + mac.w %d2u,%a2u,#-1,(%a2)+,%a7,%acc2 + mac.w %d2u,%a2u,#-1,(%a2)+&,%d1,%acc1 + mac.w %d2u,%a2u,#-1,(%a2)+&,%d1,%acc2 + mac.w %d2u,%a2u,#-1,(%a2)+&,%a3,%acc1 + mac.w %d2u,%a2u,#-1,(%a2)+&,%a3,%acc2 + mac.w %d2u,%a2u,#-1,(%a2)+&,%d2,%acc1 + mac.w %d2u,%a2u,#-1,(%a2)+&,%d2,%acc2 + mac.w %d2u,%a2u,#-1,(%a2)+&,%a7,%acc1 + mac.w %d2u,%a2u,#-1,(%a2)+&,%a7,%acc2 + mac.w %d2u,%a2u,#-1,10(%a6),%d1,%acc1 + mac.w %d2u,%a2u,#-1,10(%a6),%d1,%acc2 + mac.w %d2u,%a2u,#-1,10(%a6),%a3,%acc1 + mac.w %d2u,%a2u,#-1,10(%a6),%a3,%acc2 + mac.w %d2u,%a2u,#-1,10(%a6),%d2,%acc1 + mac.w %d2u,%a2u,#-1,10(%a6),%d2,%acc2 + mac.w %d2u,%a2u,#-1,10(%a6),%a7,%acc1 + mac.w %d2u,%a2u,#-1,10(%a6),%a7,%acc2 + mac.w %d2u,%a2u,#-1,10(%a6)&,%d1,%acc1 + mac.w %d2u,%a2u,#-1,10(%a6)&,%d1,%acc2 + mac.w %d2u,%a2u,#-1,10(%a6)&,%a3,%acc1 + mac.w %d2u,%a2u,#-1,10(%a6)&,%a3,%acc2 + mac.w %d2u,%a2u,#-1,10(%a6)&,%d2,%acc1 + mac.w %d2u,%a2u,#-1,10(%a6)&,%d2,%acc2 + mac.w %d2u,%a2u,#-1,10(%a6)&,%a7,%acc1 + mac.w %d2u,%a2u,#-1,10(%a6)&,%a7,%acc2 + mac.w %d2u,%a2u,#-1,-(%a1),%d1,%acc1 + mac.w %d2u,%a2u,#-1,-(%a1),%d1,%acc2 + mac.w %d2u,%a2u,#-1,-(%a1),%a3,%acc1 + mac.w %d2u,%a2u,#-1,-(%a1),%a3,%acc2 + mac.w %d2u,%a2u,#-1,-(%a1),%d2,%acc1 + mac.w %d2u,%a2u,#-1,-(%a1),%d2,%acc2 + mac.w %d2u,%a2u,#-1,-(%a1),%a7,%acc1 + mac.w %d2u,%a2u,#-1,-(%a1),%a7,%acc2 + mac.w %d2u,%a2u,#-1,-(%a1)&,%d1,%acc1 + mac.w %d2u,%a2u,#-1,-(%a1)&,%d1,%acc2 + mac.w %d2u,%a2u,#-1,-(%a1)&,%a3,%acc1 + mac.w %d2u,%a2u,#-1,-(%a1)&,%a3,%acc2 + mac.w %d2u,%a2u,#-1,-(%a1)&,%d2,%acc1 + mac.w %d2u,%a2u,#-1,-(%a1)&,%d2,%acc2 + mac.w %d2u,%a2u,#-1,-(%a1)&,%a7,%acc1 + mac.w %d2u,%a2u,#-1,-(%a1)&,%a7,%acc2 + mac.w %d2u,%d3l,(%a3),%d1,%acc1 + mac.w %d2u,%d3l,(%a3),%d1,%acc2 + mac.w %d2u,%d3l,(%a3),%a3,%acc1 + mac.w %d2u,%d3l,(%a3),%a3,%acc2 + mac.w %d2u,%d3l,(%a3),%d2,%acc1 + mac.w %d2u,%d3l,(%a3),%d2,%acc2 + mac.w %d2u,%d3l,(%a3),%a7,%acc1 + mac.w %d2u,%d3l,(%a3),%a7,%acc2 + mac.w %d2u,%d3l,(%a3)&,%d1,%acc1 + mac.w %d2u,%d3l,(%a3)&,%d1,%acc2 + mac.w %d2u,%d3l,(%a3)&,%a3,%acc1 + mac.w %d2u,%d3l,(%a3)&,%a3,%acc2 + mac.w %d2u,%d3l,(%a3)&,%d2,%acc1 + mac.w %d2u,%d3l,(%a3)&,%d2,%acc2 + mac.w %d2u,%d3l,(%a3)&,%a7,%acc1 + mac.w %d2u,%d3l,(%a3)&,%a7,%acc2 + mac.w %d2u,%d3l,(%a2)+,%d1,%acc1 + mac.w %d2u,%d3l,(%a2)+,%d1,%acc2 + mac.w %d2u,%d3l,(%a2)+,%a3,%acc1 + mac.w %d2u,%d3l,(%a2)+,%a3,%acc2 + mac.w %d2u,%d3l,(%a2)+,%d2,%acc1 + mac.w %d2u,%d3l,(%a2)+,%d2,%acc2 + mac.w %d2u,%d3l,(%a2)+,%a7,%acc1 + mac.w %d2u,%d3l,(%a2)+,%a7,%acc2 + mac.w %d2u,%d3l,(%a2)+&,%d1,%acc1 + mac.w %d2u,%d3l,(%a2)+&,%d1,%acc2 + mac.w %d2u,%d3l,(%a2)+&,%a3,%acc1 + mac.w %d2u,%d3l,(%a2)+&,%a3,%acc2 + mac.w %d2u,%d3l,(%a2)+&,%d2,%acc1 + mac.w %d2u,%d3l,(%a2)+&,%d2,%acc2 + mac.w %d2u,%d3l,(%a2)+&,%a7,%acc1 + mac.w %d2u,%d3l,(%a2)+&,%a7,%acc2 + mac.w %d2u,%d3l,10(%a6),%d1,%acc1 + mac.w %d2u,%d3l,10(%a6),%d1,%acc2 + mac.w %d2u,%d3l,10(%a6),%a3,%acc1 + mac.w %d2u,%d3l,10(%a6),%a3,%acc2 + mac.w %d2u,%d3l,10(%a6),%d2,%acc1 + mac.w %d2u,%d3l,10(%a6),%d2,%acc2 + mac.w %d2u,%d3l,10(%a6),%a7,%acc1 + mac.w %d2u,%d3l,10(%a6),%a7,%acc2 + mac.w %d2u,%d3l,10(%a6)&,%d1,%acc1 + mac.w %d2u,%d3l,10(%a6)&,%d1,%acc2 + mac.w %d2u,%d3l,10(%a6)&,%a3,%acc1 + mac.w %d2u,%d3l,10(%a6)&,%a3,%acc2 + mac.w %d2u,%d3l,10(%a6)&,%d2,%acc1 + mac.w %d2u,%d3l,10(%a6)&,%d2,%acc2 + mac.w %d2u,%d3l,10(%a6)&,%a7,%acc1 + mac.w %d2u,%d3l,10(%a6)&,%a7,%acc2 + mac.w %d2u,%d3l,-(%a1),%d1,%acc1 + mac.w %d2u,%d3l,-(%a1),%d1,%acc2 + mac.w %d2u,%d3l,-(%a1),%a3,%acc1 + mac.w %d2u,%d3l,-(%a1),%a3,%acc2 + mac.w %d2u,%d3l,-(%a1),%d2,%acc1 + mac.w %d2u,%d3l,-(%a1),%d2,%acc2 + mac.w %d2u,%d3l,-(%a1),%a7,%acc1 + mac.w %d2u,%d3l,-(%a1),%a7,%acc2 + mac.w %d2u,%d3l,-(%a1)&,%d1,%acc1 + mac.w %d2u,%d3l,-(%a1)&,%d1,%acc2 + mac.w %d2u,%d3l,-(%a1)&,%a3,%acc1 + mac.w %d2u,%d3l,-(%a1)&,%a3,%acc2 + mac.w %d2u,%d3l,-(%a1)&,%d2,%acc1 + mac.w %d2u,%d3l,-(%a1)&,%d2,%acc2 + mac.w %d2u,%d3l,-(%a1)&,%a7,%acc1 + mac.w %d2u,%d3l,-(%a1)&,%a7,%acc2 + mac.w %d2u,%d3l,<<,(%a3),%d1,%acc1 + mac.w %d2u,%d3l,<<,(%a3),%d1,%acc2 + mac.w %d2u,%d3l,<<,(%a3),%a3,%acc1 + mac.w %d2u,%d3l,<<,(%a3),%a3,%acc2 + mac.w %d2u,%d3l,<<,(%a3),%d2,%acc1 + mac.w %d2u,%d3l,<<,(%a3),%d2,%acc2 + mac.w %d2u,%d3l,<<,(%a3),%a7,%acc1 + mac.w %d2u,%d3l,<<,(%a3),%a7,%acc2 + mac.w %d2u,%d3l,<<,(%a3)&,%d1,%acc1 + mac.w %d2u,%d3l,<<,(%a3)&,%d1,%acc2 + mac.w %d2u,%d3l,<<,(%a3)&,%a3,%acc1 + mac.w %d2u,%d3l,<<,(%a3)&,%a3,%acc2 + mac.w %d2u,%d3l,<<,(%a3)&,%d2,%acc1 + mac.w %d2u,%d3l,<<,(%a3)&,%d2,%acc2 + mac.w %d2u,%d3l,<<,(%a3)&,%a7,%acc1 + mac.w %d2u,%d3l,<<,(%a3)&,%a7,%acc2 + mac.w %d2u,%d3l,<<,(%a2)+,%d1,%acc1 + mac.w %d2u,%d3l,<<,(%a2)+,%d1,%acc2 + mac.w %d2u,%d3l,<<,(%a2)+,%a3,%acc1 + mac.w %d2u,%d3l,<<,(%a2)+,%a3,%acc2 + mac.w %d2u,%d3l,<<,(%a2)+,%d2,%acc1 + mac.w %d2u,%d3l,<<,(%a2)+,%d2,%acc2 + mac.w %d2u,%d3l,<<,(%a2)+,%a7,%acc1 + mac.w %d2u,%d3l,<<,(%a2)+,%a7,%acc2 + mac.w %d2u,%d3l,<<,(%a2)+&,%d1,%acc1 + mac.w %d2u,%d3l,<<,(%a2)+&,%d1,%acc2 + mac.w %d2u,%d3l,<<,(%a2)+&,%a3,%acc1 + mac.w %d2u,%d3l,<<,(%a2)+&,%a3,%acc2 + mac.w %d2u,%d3l,<<,(%a2)+&,%d2,%acc1 + mac.w %d2u,%d3l,<<,(%a2)+&,%d2,%acc2 + mac.w %d2u,%d3l,<<,(%a2)+&,%a7,%acc1 + mac.w %d2u,%d3l,<<,(%a2)+&,%a7,%acc2 + mac.w %d2u,%d3l,<<,10(%a6),%d1,%acc1 + mac.w %d2u,%d3l,<<,10(%a6),%d1,%acc2 + mac.w %d2u,%d3l,<<,10(%a6),%a3,%acc1 + mac.w %d2u,%d3l,<<,10(%a6),%a3,%acc2 + mac.w %d2u,%d3l,<<,10(%a6),%d2,%acc1 + mac.w %d2u,%d3l,<<,10(%a6),%d2,%acc2 + mac.w %d2u,%d3l,<<,10(%a6),%a7,%acc1 + mac.w %d2u,%d3l,<<,10(%a6),%a7,%acc2 + mac.w %d2u,%d3l,<<,10(%a6)&,%d1,%acc1 + mac.w %d2u,%d3l,<<,10(%a6)&,%d1,%acc2 + mac.w %d2u,%d3l,<<,10(%a6)&,%a3,%acc1 + mac.w %d2u,%d3l,<<,10(%a6)&,%a3,%acc2 + mac.w %d2u,%d3l,<<,10(%a6)&,%d2,%acc1 + mac.w %d2u,%d3l,<<,10(%a6)&,%d2,%acc2 + mac.w %d2u,%d3l,<<,10(%a6)&,%a7,%acc1 + mac.w %d2u,%d3l,<<,10(%a6)&,%a7,%acc2 + mac.w %d2u,%d3l,<<,-(%a1),%d1,%acc1 + mac.w %d2u,%d3l,<<,-(%a1),%d1,%acc2 + mac.w %d2u,%d3l,<<,-(%a1),%a3,%acc1 + mac.w %d2u,%d3l,<<,-(%a1),%a3,%acc2 + mac.w %d2u,%d3l,<<,-(%a1),%d2,%acc1 + mac.w %d2u,%d3l,<<,-(%a1),%d2,%acc2 + mac.w %d2u,%d3l,<<,-(%a1),%a7,%acc1 + mac.w %d2u,%d3l,<<,-(%a1),%a7,%acc2 + mac.w %d2u,%d3l,<<,-(%a1)&,%d1,%acc1 + mac.w %d2u,%d3l,<<,-(%a1)&,%d1,%acc2 + mac.w %d2u,%d3l,<<,-(%a1)&,%a3,%acc1 + mac.w %d2u,%d3l,<<,-(%a1)&,%a3,%acc2 + mac.w %d2u,%d3l,<<,-(%a1)&,%d2,%acc1 + mac.w %d2u,%d3l,<<,-(%a1)&,%d2,%acc2 + mac.w %d2u,%d3l,<<,-(%a1)&,%a7,%acc1 + mac.w %d2u,%d3l,<<,-(%a1)&,%a7,%acc2 + mac.w %d2u,%d3l,>>,(%a3),%d1,%acc1 + mac.w %d2u,%d3l,>>,(%a3),%d1,%acc2 + mac.w %d2u,%d3l,>>,(%a3),%a3,%acc1 + mac.w %d2u,%d3l,>>,(%a3),%a3,%acc2 + mac.w %d2u,%d3l,>>,(%a3),%d2,%acc1 + mac.w %d2u,%d3l,>>,(%a3),%d2,%acc2 + mac.w %d2u,%d3l,>>,(%a3),%a7,%acc1 + mac.w %d2u,%d3l,>>,(%a3),%a7,%acc2 + mac.w %d2u,%d3l,>>,(%a3)&,%d1,%acc1 + mac.w %d2u,%d3l,>>,(%a3)&,%d1,%acc2 + mac.w %d2u,%d3l,>>,(%a3)&,%a3,%acc1 + mac.w %d2u,%d3l,>>,(%a3)&,%a3,%acc2 + mac.w %d2u,%d3l,>>,(%a3)&,%d2,%acc1 + mac.w %d2u,%d3l,>>,(%a3)&,%d2,%acc2 + mac.w %d2u,%d3l,>>,(%a3)&,%a7,%acc1 + mac.w %d2u,%d3l,>>,(%a3)&,%a7,%acc2 + mac.w %d2u,%d3l,>>,(%a2)+,%d1,%acc1 + mac.w %d2u,%d3l,>>,(%a2)+,%d1,%acc2 + mac.w %d2u,%d3l,>>,(%a2)+,%a3,%acc1 + mac.w %d2u,%d3l,>>,(%a2)+,%a3,%acc2 + mac.w %d2u,%d3l,>>,(%a2)+,%d2,%acc1 + mac.w %d2u,%d3l,>>,(%a2)+,%d2,%acc2 + mac.w %d2u,%d3l,>>,(%a2)+,%a7,%acc1 + mac.w %d2u,%d3l,>>,(%a2)+,%a7,%acc2 + mac.w %d2u,%d3l,>>,(%a2)+&,%d1,%acc1 + mac.w %d2u,%d3l,>>,(%a2)+&,%d1,%acc2 + mac.w %d2u,%d3l,>>,(%a2)+&,%a3,%acc1 + mac.w %d2u,%d3l,>>,(%a2)+&,%a3,%acc2 + mac.w %d2u,%d3l,>>,(%a2)+&,%d2,%acc1 + mac.w %d2u,%d3l,>>,(%a2)+&,%d2,%acc2 + mac.w %d2u,%d3l,>>,(%a2)+&,%a7,%acc1 + mac.w %d2u,%d3l,>>,(%a2)+&,%a7,%acc2 + mac.w %d2u,%d3l,>>,10(%a6),%d1,%acc1 + mac.w %d2u,%d3l,>>,10(%a6),%d1,%acc2 + mac.w %d2u,%d3l,>>,10(%a6),%a3,%acc1 + mac.w %d2u,%d3l,>>,10(%a6),%a3,%acc2 + mac.w %d2u,%d3l,>>,10(%a6),%d2,%acc1 + mac.w %d2u,%d3l,>>,10(%a6),%d2,%acc2 + mac.w %d2u,%d3l,>>,10(%a6),%a7,%acc1 + mac.w %d2u,%d3l,>>,10(%a6),%a7,%acc2 + mac.w %d2u,%d3l,>>,10(%a6)&,%d1,%acc1 + mac.w %d2u,%d3l,>>,10(%a6)&,%d1,%acc2 + mac.w %d2u,%d3l,>>,10(%a6)&,%a3,%acc1 + mac.w %d2u,%d3l,>>,10(%a6)&,%a3,%acc2 + mac.w %d2u,%d3l,>>,10(%a6)&,%d2,%acc1 + mac.w %d2u,%d3l,>>,10(%a6)&,%d2,%acc2 + mac.w %d2u,%d3l,>>,10(%a6)&,%a7,%acc1 + mac.w %d2u,%d3l,>>,10(%a6)&,%a7,%acc2 + mac.w %d2u,%d3l,>>,-(%a1),%d1,%acc1 + mac.w %d2u,%d3l,>>,-(%a1),%d1,%acc2 + mac.w %d2u,%d3l,>>,-(%a1),%a3,%acc1 + mac.w %d2u,%d3l,>>,-(%a1),%a3,%acc2 + mac.w %d2u,%d3l,>>,-(%a1),%d2,%acc1 + mac.w %d2u,%d3l,>>,-(%a1),%d2,%acc2 + mac.w %d2u,%d3l,>>,-(%a1),%a7,%acc1 + mac.w %d2u,%d3l,>>,-(%a1),%a7,%acc2 + mac.w %d2u,%d3l,>>,-(%a1)&,%d1,%acc1 + mac.w %d2u,%d3l,>>,-(%a1)&,%d1,%acc2 + mac.w %d2u,%d3l,>>,-(%a1)&,%a3,%acc1 + mac.w %d2u,%d3l,>>,-(%a1)&,%a3,%acc2 + mac.w %d2u,%d3l,>>,-(%a1)&,%d2,%acc1 + mac.w %d2u,%d3l,>>,-(%a1)&,%d2,%acc2 + mac.w %d2u,%d3l,>>,-(%a1)&,%a7,%acc1 + mac.w %d2u,%d3l,>>,-(%a1)&,%a7,%acc2 + mac.w %d2u,%d3l,#1,(%a3),%d1,%acc1 + mac.w %d2u,%d3l,#1,(%a3),%d1,%acc2 + mac.w %d2u,%d3l,#1,(%a3),%a3,%acc1 + mac.w %d2u,%d3l,#1,(%a3),%a3,%acc2 + mac.w %d2u,%d3l,#1,(%a3),%d2,%acc1 + mac.w %d2u,%d3l,#1,(%a3),%d2,%acc2 + mac.w %d2u,%d3l,#1,(%a3),%a7,%acc1 + mac.w %d2u,%d3l,#1,(%a3),%a7,%acc2 + mac.w %d2u,%d3l,#1,(%a3)&,%d1,%acc1 + mac.w %d2u,%d3l,#1,(%a3)&,%d1,%acc2 + mac.w %d2u,%d3l,#1,(%a3)&,%a3,%acc1 + mac.w %d2u,%d3l,#1,(%a3)&,%a3,%acc2 + mac.w %d2u,%d3l,#1,(%a3)&,%d2,%acc1 + mac.w %d2u,%d3l,#1,(%a3)&,%d2,%acc2 + mac.w %d2u,%d3l,#1,(%a3)&,%a7,%acc1 + mac.w %d2u,%d3l,#1,(%a3)&,%a7,%acc2 + mac.w %d2u,%d3l,#1,(%a2)+,%d1,%acc1 + mac.w %d2u,%d3l,#1,(%a2)+,%d1,%acc2 + mac.w %d2u,%d3l,#1,(%a2)+,%a3,%acc1 + mac.w %d2u,%d3l,#1,(%a2)+,%a3,%acc2 + mac.w %d2u,%d3l,#1,(%a2)+,%d2,%acc1 + mac.w %d2u,%d3l,#1,(%a2)+,%d2,%acc2 + mac.w %d2u,%d3l,#1,(%a2)+,%a7,%acc1 + mac.w %d2u,%d3l,#1,(%a2)+,%a7,%acc2 + mac.w %d2u,%d3l,#1,(%a2)+&,%d1,%acc1 + mac.w %d2u,%d3l,#1,(%a2)+&,%d1,%acc2 + mac.w %d2u,%d3l,#1,(%a2)+&,%a3,%acc1 + mac.w %d2u,%d3l,#1,(%a2)+&,%a3,%acc2 + mac.w %d2u,%d3l,#1,(%a2)+&,%d2,%acc1 + mac.w %d2u,%d3l,#1,(%a2)+&,%d2,%acc2 + mac.w %d2u,%d3l,#1,(%a2)+&,%a7,%acc1 + mac.w %d2u,%d3l,#1,(%a2)+&,%a7,%acc2 + mac.w %d2u,%d3l,#1,10(%a6),%d1,%acc1 + mac.w %d2u,%d3l,#1,10(%a6),%d1,%acc2 + mac.w %d2u,%d3l,#1,10(%a6),%a3,%acc1 + mac.w %d2u,%d3l,#1,10(%a6),%a3,%acc2 + mac.w %d2u,%d3l,#1,10(%a6),%d2,%acc1 + mac.w %d2u,%d3l,#1,10(%a6),%d2,%acc2 + mac.w %d2u,%d3l,#1,10(%a6),%a7,%acc1 + mac.w %d2u,%d3l,#1,10(%a6),%a7,%acc2 + mac.w %d2u,%d3l,#1,10(%a6)&,%d1,%acc1 + mac.w %d2u,%d3l,#1,10(%a6)&,%d1,%acc2 + mac.w %d2u,%d3l,#1,10(%a6)&,%a3,%acc1 + mac.w %d2u,%d3l,#1,10(%a6)&,%a3,%acc2 + mac.w %d2u,%d3l,#1,10(%a6)&,%d2,%acc1 + mac.w %d2u,%d3l,#1,10(%a6)&,%d2,%acc2 + mac.w %d2u,%d3l,#1,10(%a6)&,%a7,%acc1 + mac.w %d2u,%d3l,#1,10(%a6)&,%a7,%acc2 + mac.w %d2u,%d3l,#1,-(%a1),%d1,%acc1 + mac.w %d2u,%d3l,#1,-(%a1),%d1,%acc2 + mac.w %d2u,%d3l,#1,-(%a1),%a3,%acc1 + mac.w %d2u,%d3l,#1,-(%a1),%a3,%acc2 + mac.w %d2u,%d3l,#1,-(%a1),%d2,%acc1 + mac.w %d2u,%d3l,#1,-(%a1),%d2,%acc2 + mac.w %d2u,%d3l,#1,-(%a1),%a7,%acc1 + mac.w %d2u,%d3l,#1,-(%a1),%a7,%acc2 + mac.w %d2u,%d3l,#1,-(%a1)&,%d1,%acc1 + mac.w %d2u,%d3l,#1,-(%a1)&,%d1,%acc2 + mac.w %d2u,%d3l,#1,-(%a1)&,%a3,%acc1 + mac.w %d2u,%d3l,#1,-(%a1)&,%a3,%acc2 + mac.w %d2u,%d3l,#1,-(%a1)&,%d2,%acc1 + mac.w %d2u,%d3l,#1,-(%a1)&,%d2,%acc2 + mac.w %d2u,%d3l,#1,-(%a1)&,%a7,%acc1 + mac.w %d2u,%d3l,#1,-(%a1)&,%a7,%acc2 + mac.w %d2u,%d3l,#-1,(%a3),%d1,%acc1 + mac.w %d2u,%d3l,#-1,(%a3),%d1,%acc2 + mac.w %d2u,%d3l,#-1,(%a3),%a3,%acc1 + mac.w %d2u,%d3l,#-1,(%a3),%a3,%acc2 + mac.w %d2u,%d3l,#-1,(%a3),%d2,%acc1 + mac.w %d2u,%d3l,#-1,(%a3),%d2,%acc2 + mac.w %d2u,%d3l,#-1,(%a3),%a7,%acc1 + mac.w %d2u,%d3l,#-1,(%a3),%a7,%acc2 + mac.w %d2u,%d3l,#-1,(%a3)&,%d1,%acc1 + mac.w %d2u,%d3l,#-1,(%a3)&,%d1,%acc2 + mac.w %d2u,%d3l,#-1,(%a3)&,%a3,%acc1 + mac.w %d2u,%d3l,#-1,(%a3)&,%a3,%acc2 + mac.w %d2u,%d3l,#-1,(%a3)&,%d2,%acc1 + mac.w %d2u,%d3l,#-1,(%a3)&,%d2,%acc2 + mac.w %d2u,%d3l,#-1,(%a3)&,%a7,%acc1 + mac.w %d2u,%d3l,#-1,(%a3)&,%a7,%acc2 + mac.w %d2u,%d3l,#-1,(%a2)+,%d1,%acc1 + mac.w %d2u,%d3l,#-1,(%a2)+,%d1,%acc2 + mac.w %d2u,%d3l,#-1,(%a2)+,%a3,%acc1 + mac.w %d2u,%d3l,#-1,(%a2)+,%a3,%acc2 + mac.w %d2u,%d3l,#-1,(%a2)+,%d2,%acc1 + mac.w %d2u,%d3l,#-1,(%a2)+,%d2,%acc2 + mac.w %d2u,%d3l,#-1,(%a2)+,%a7,%acc1 + mac.w %d2u,%d3l,#-1,(%a2)+,%a7,%acc2 + mac.w %d2u,%d3l,#-1,(%a2)+&,%d1,%acc1 + mac.w %d2u,%d3l,#-1,(%a2)+&,%d1,%acc2 + mac.w %d2u,%d3l,#-1,(%a2)+&,%a3,%acc1 + mac.w %d2u,%d3l,#-1,(%a2)+&,%a3,%acc2 + mac.w %d2u,%d3l,#-1,(%a2)+&,%d2,%acc1 + mac.w %d2u,%d3l,#-1,(%a2)+&,%d2,%acc2 + mac.w %d2u,%d3l,#-1,(%a2)+&,%a7,%acc1 + mac.w %d2u,%d3l,#-1,(%a2)+&,%a7,%acc2 + mac.w %d2u,%d3l,#-1,10(%a6),%d1,%acc1 + mac.w %d2u,%d3l,#-1,10(%a6),%d1,%acc2 + mac.w %d2u,%d3l,#-1,10(%a6),%a3,%acc1 + mac.w %d2u,%d3l,#-1,10(%a6),%a3,%acc2 + mac.w %d2u,%d3l,#-1,10(%a6),%d2,%acc1 + mac.w %d2u,%d3l,#-1,10(%a6),%d2,%acc2 + mac.w %d2u,%d3l,#-1,10(%a6),%a7,%acc1 + mac.w %d2u,%d3l,#-1,10(%a6),%a7,%acc2 + mac.w %d2u,%d3l,#-1,10(%a6)&,%d1,%acc1 + mac.w %d2u,%d3l,#-1,10(%a6)&,%d1,%acc2 + mac.w %d2u,%d3l,#-1,10(%a6)&,%a3,%acc1 + mac.w %d2u,%d3l,#-1,10(%a6)&,%a3,%acc2 + mac.w %d2u,%d3l,#-1,10(%a6)&,%d2,%acc1 + mac.w %d2u,%d3l,#-1,10(%a6)&,%d2,%acc2 + mac.w %d2u,%d3l,#-1,10(%a6)&,%a7,%acc1 + mac.w %d2u,%d3l,#-1,10(%a6)&,%a7,%acc2 + mac.w %d2u,%d3l,#-1,-(%a1),%d1,%acc1 + mac.w %d2u,%d3l,#-1,-(%a1),%d1,%acc2 + mac.w %d2u,%d3l,#-1,-(%a1),%a3,%acc1 + mac.w %d2u,%d3l,#-1,-(%a1),%a3,%acc2 + mac.w %d2u,%d3l,#-1,-(%a1),%d2,%acc1 + mac.w %d2u,%d3l,#-1,-(%a1),%d2,%acc2 + mac.w %d2u,%d3l,#-1,-(%a1),%a7,%acc1 + mac.w %d2u,%d3l,#-1,-(%a1),%a7,%acc2 + mac.w %d2u,%d3l,#-1,-(%a1)&,%d1,%acc1 + mac.w %d2u,%d3l,#-1,-(%a1)&,%d1,%acc2 + mac.w %d2u,%d3l,#-1,-(%a1)&,%a3,%acc1 + mac.w %d2u,%d3l,#-1,-(%a1)&,%a3,%acc2 + mac.w %d2u,%d3l,#-1,-(%a1)&,%d2,%acc1 + mac.w %d2u,%d3l,#-1,-(%a1)&,%d2,%acc2 + mac.w %d2u,%d3l,#-1,-(%a1)&,%a7,%acc1 + mac.w %d2u,%d3l,#-1,-(%a1)&,%a7,%acc2 + mac.w %d2u,%a7u,(%a3),%d1,%acc1 + mac.w %d2u,%a7u,(%a3),%d1,%acc2 + mac.w %d2u,%a7u,(%a3),%a3,%acc1 + mac.w %d2u,%a7u,(%a3),%a3,%acc2 + mac.w %d2u,%a7u,(%a3),%d2,%acc1 + mac.w %d2u,%a7u,(%a3),%d2,%acc2 + mac.w %d2u,%a7u,(%a3),%a7,%acc1 + mac.w %d2u,%a7u,(%a3),%a7,%acc2 + mac.w %d2u,%a7u,(%a3)&,%d1,%acc1 + mac.w %d2u,%a7u,(%a3)&,%d1,%acc2 + mac.w %d2u,%a7u,(%a3)&,%a3,%acc1 + mac.w %d2u,%a7u,(%a3)&,%a3,%acc2 + mac.w %d2u,%a7u,(%a3)&,%d2,%acc1 + mac.w %d2u,%a7u,(%a3)&,%d2,%acc2 + mac.w %d2u,%a7u,(%a3)&,%a7,%acc1 + mac.w %d2u,%a7u,(%a3)&,%a7,%acc2 + mac.w %d2u,%a7u,(%a2)+,%d1,%acc1 + mac.w %d2u,%a7u,(%a2)+,%d1,%acc2 + mac.w %d2u,%a7u,(%a2)+,%a3,%acc1 + mac.w %d2u,%a7u,(%a2)+,%a3,%acc2 + mac.w %d2u,%a7u,(%a2)+,%d2,%acc1 + mac.w %d2u,%a7u,(%a2)+,%d2,%acc2 + mac.w %d2u,%a7u,(%a2)+,%a7,%acc1 + mac.w %d2u,%a7u,(%a2)+,%a7,%acc2 + mac.w %d2u,%a7u,(%a2)+&,%d1,%acc1 + mac.w %d2u,%a7u,(%a2)+&,%d1,%acc2 + mac.w %d2u,%a7u,(%a2)+&,%a3,%acc1 + mac.w %d2u,%a7u,(%a2)+&,%a3,%acc2 + mac.w %d2u,%a7u,(%a2)+&,%d2,%acc1 + mac.w %d2u,%a7u,(%a2)+&,%d2,%acc2 + mac.w %d2u,%a7u,(%a2)+&,%a7,%acc1 + mac.w %d2u,%a7u,(%a2)+&,%a7,%acc2 + mac.w %d2u,%a7u,10(%a6),%d1,%acc1 + mac.w %d2u,%a7u,10(%a6),%d1,%acc2 + mac.w %d2u,%a7u,10(%a6),%a3,%acc1 + mac.w %d2u,%a7u,10(%a6),%a3,%acc2 + mac.w %d2u,%a7u,10(%a6),%d2,%acc1 + mac.w %d2u,%a7u,10(%a6),%d2,%acc2 + mac.w %d2u,%a7u,10(%a6),%a7,%acc1 + mac.w %d2u,%a7u,10(%a6),%a7,%acc2 + mac.w %d2u,%a7u,10(%a6)&,%d1,%acc1 + mac.w %d2u,%a7u,10(%a6)&,%d1,%acc2 + mac.w %d2u,%a7u,10(%a6)&,%a3,%acc1 + mac.w %d2u,%a7u,10(%a6)&,%a3,%acc2 + mac.w %d2u,%a7u,10(%a6)&,%d2,%acc1 + mac.w %d2u,%a7u,10(%a6)&,%d2,%acc2 + mac.w %d2u,%a7u,10(%a6)&,%a7,%acc1 + mac.w %d2u,%a7u,10(%a6)&,%a7,%acc2 + mac.w %d2u,%a7u,-(%a1),%d1,%acc1 + mac.w %d2u,%a7u,-(%a1),%d1,%acc2 + mac.w %d2u,%a7u,-(%a1),%a3,%acc1 + mac.w %d2u,%a7u,-(%a1),%a3,%acc2 + mac.w %d2u,%a7u,-(%a1),%d2,%acc1 + mac.w %d2u,%a7u,-(%a1),%d2,%acc2 + mac.w %d2u,%a7u,-(%a1),%a7,%acc1 + mac.w %d2u,%a7u,-(%a1),%a7,%acc2 + mac.w %d2u,%a7u,-(%a1)&,%d1,%acc1 + mac.w %d2u,%a7u,-(%a1)&,%d1,%acc2 + mac.w %d2u,%a7u,-(%a1)&,%a3,%acc1 + mac.w %d2u,%a7u,-(%a1)&,%a3,%acc2 + mac.w %d2u,%a7u,-(%a1)&,%d2,%acc1 + mac.w %d2u,%a7u,-(%a1)&,%d2,%acc2 + mac.w %d2u,%a7u,-(%a1)&,%a7,%acc1 + mac.w %d2u,%a7u,-(%a1)&,%a7,%acc2 + mac.w %d2u,%a7u,<<,(%a3),%d1,%acc1 + mac.w %d2u,%a7u,<<,(%a3),%d1,%acc2 + mac.w %d2u,%a7u,<<,(%a3),%a3,%acc1 + mac.w %d2u,%a7u,<<,(%a3),%a3,%acc2 + mac.w %d2u,%a7u,<<,(%a3),%d2,%acc1 + mac.w %d2u,%a7u,<<,(%a3),%d2,%acc2 + mac.w %d2u,%a7u,<<,(%a3),%a7,%acc1 + mac.w %d2u,%a7u,<<,(%a3),%a7,%acc2 + mac.w %d2u,%a7u,<<,(%a3)&,%d1,%acc1 + mac.w %d2u,%a7u,<<,(%a3)&,%d1,%acc2 + mac.w %d2u,%a7u,<<,(%a3)&,%a3,%acc1 + mac.w %d2u,%a7u,<<,(%a3)&,%a3,%acc2 + mac.w %d2u,%a7u,<<,(%a3)&,%d2,%acc1 + mac.w %d2u,%a7u,<<,(%a3)&,%d2,%acc2 + mac.w %d2u,%a7u,<<,(%a3)&,%a7,%acc1 + mac.w %d2u,%a7u,<<,(%a3)&,%a7,%acc2 + mac.w %d2u,%a7u,<<,(%a2)+,%d1,%acc1 + mac.w %d2u,%a7u,<<,(%a2)+,%d1,%acc2 + mac.w %d2u,%a7u,<<,(%a2)+,%a3,%acc1 + mac.w %d2u,%a7u,<<,(%a2)+,%a3,%acc2 + mac.w %d2u,%a7u,<<,(%a2)+,%d2,%acc1 + mac.w %d2u,%a7u,<<,(%a2)+,%d2,%acc2 + mac.w %d2u,%a7u,<<,(%a2)+,%a7,%acc1 + mac.w %d2u,%a7u,<<,(%a2)+,%a7,%acc2 + mac.w %d2u,%a7u,<<,(%a2)+&,%d1,%acc1 + mac.w %d2u,%a7u,<<,(%a2)+&,%d1,%acc2 + mac.w %d2u,%a7u,<<,(%a2)+&,%a3,%acc1 + mac.w %d2u,%a7u,<<,(%a2)+&,%a3,%acc2 + mac.w %d2u,%a7u,<<,(%a2)+&,%d2,%acc1 + mac.w %d2u,%a7u,<<,(%a2)+&,%d2,%acc2 + mac.w %d2u,%a7u,<<,(%a2)+&,%a7,%acc1 + mac.w %d2u,%a7u,<<,(%a2)+&,%a7,%acc2 + mac.w %d2u,%a7u,<<,10(%a6),%d1,%acc1 + mac.w %d2u,%a7u,<<,10(%a6),%d1,%acc2 + mac.w %d2u,%a7u,<<,10(%a6),%a3,%acc1 + mac.w %d2u,%a7u,<<,10(%a6),%a3,%acc2 + mac.w %d2u,%a7u,<<,10(%a6),%d2,%acc1 + mac.w %d2u,%a7u,<<,10(%a6),%d2,%acc2 + mac.w %d2u,%a7u,<<,10(%a6),%a7,%acc1 + mac.w %d2u,%a7u,<<,10(%a6),%a7,%acc2 + mac.w %d2u,%a7u,<<,10(%a6)&,%d1,%acc1 + mac.w %d2u,%a7u,<<,10(%a6)&,%d1,%acc2 + mac.w %d2u,%a7u,<<,10(%a6)&,%a3,%acc1 + mac.w %d2u,%a7u,<<,10(%a6)&,%a3,%acc2 + mac.w %d2u,%a7u,<<,10(%a6)&,%d2,%acc1 + mac.w %d2u,%a7u,<<,10(%a6)&,%d2,%acc2 + mac.w %d2u,%a7u,<<,10(%a6)&,%a7,%acc1 + mac.w %d2u,%a7u,<<,10(%a6)&,%a7,%acc2 + mac.w %d2u,%a7u,<<,-(%a1),%d1,%acc1 + mac.w %d2u,%a7u,<<,-(%a1),%d1,%acc2 + mac.w %d2u,%a7u,<<,-(%a1),%a3,%acc1 + mac.w %d2u,%a7u,<<,-(%a1),%a3,%acc2 + mac.w %d2u,%a7u,<<,-(%a1),%d2,%acc1 + mac.w %d2u,%a7u,<<,-(%a1),%d2,%acc2 + mac.w %d2u,%a7u,<<,-(%a1),%a7,%acc1 + mac.w %d2u,%a7u,<<,-(%a1),%a7,%acc2 + mac.w %d2u,%a7u,<<,-(%a1)&,%d1,%acc1 + mac.w %d2u,%a7u,<<,-(%a1)&,%d1,%acc2 + mac.w %d2u,%a7u,<<,-(%a1)&,%a3,%acc1 + mac.w %d2u,%a7u,<<,-(%a1)&,%a3,%acc2 + mac.w %d2u,%a7u,<<,-(%a1)&,%d2,%acc1 + mac.w %d2u,%a7u,<<,-(%a1)&,%d2,%acc2 + mac.w %d2u,%a7u,<<,-(%a1)&,%a7,%acc1 + mac.w %d2u,%a7u,<<,-(%a1)&,%a7,%acc2 + mac.w %d2u,%a7u,>>,(%a3),%d1,%acc1 + mac.w %d2u,%a7u,>>,(%a3),%d1,%acc2 + mac.w %d2u,%a7u,>>,(%a3),%a3,%acc1 + mac.w %d2u,%a7u,>>,(%a3),%a3,%acc2 + mac.w %d2u,%a7u,>>,(%a3),%d2,%acc1 + mac.w %d2u,%a7u,>>,(%a3),%d2,%acc2 + mac.w %d2u,%a7u,>>,(%a3),%a7,%acc1 + mac.w %d2u,%a7u,>>,(%a3),%a7,%acc2 + mac.w %d2u,%a7u,>>,(%a3)&,%d1,%acc1 + mac.w %d2u,%a7u,>>,(%a3)&,%d1,%acc2 + mac.w %d2u,%a7u,>>,(%a3)&,%a3,%acc1 + mac.w %d2u,%a7u,>>,(%a3)&,%a3,%acc2 + mac.w %d2u,%a7u,>>,(%a3)&,%d2,%acc1 + mac.w %d2u,%a7u,>>,(%a3)&,%d2,%acc2 + mac.w %d2u,%a7u,>>,(%a3)&,%a7,%acc1 + mac.w %d2u,%a7u,>>,(%a3)&,%a7,%acc2 + mac.w %d2u,%a7u,>>,(%a2)+,%d1,%acc1 + mac.w %d2u,%a7u,>>,(%a2)+,%d1,%acc2 + mac.w %d2u,%a7u,>>,(%a2)+,%a3,%acc1 + mac.w %d2u,%a7u,>>,(%a2)+,%a3,%acc2 + mac.w %d2u,%a7u,>>,(%a2)+,%d2,%acc1 + mac.w %d2u,%a7u,>>,(%a2)+,%d2,%acc2 + mac.w %d2u,%a7u,>>,(%a2)+,%a7,%acc1 + mac.w %d2u,%a7u,>>,(%a2)+,%a7,%acc2 + mac.w %d2u,%a7u,>>,(%a2)+&,%d1,%acc1 + mac.w %d2u,%a7u,>>,(%a2)+&,%d1,%acc2 + mac.w %d2u,%a7u,>>,(%a2)+&,%a3,%acc1 + mac.w %d2u,%a7u,>>,(%a2)+&,%a3,%acc2 + mac.w %d2u,%a7u,>>,(%a2)+&,%d2,%acc1 + mac.w %d2u,%a7u,>>,(%a2)+&,%d2,%acc2 + mac.w %d2u,%a7u,>>,(%a2)+&,%a7,%acc1 + mac.w %d2u,%a7u,>>,(%a2)+&,%a7,%acc2 + mac.w %d2u,%a7u,>>,10(%a6),%d1,%acc1 + mac.w %d2u,%a7u,>>,10(%a6),%d1,%acc2 + mac.w %d2u,%a7u,>>,10(%a6),%a3,%acc1 + mac.w %d2u,%a7u,>>,10(%a6),%a3,%acc2 + mac.w %d2u,%a7u,>>,10(%a6),%d2,%acc1 + mac.w %d2u,%a7u,>>,10(%a6),%d2,%acc2 + mac.w %d2u,%a7u,>>,10(%a6),%a7,%acc1 + mac.w %d2u,%a7u,>>,10(%a6),%a7,%acc2 + mac.w %d2u,%a7u,>>,10(%a6)&,%d1,%acc1 + mac.w %d2u,%a7u,>>,10(%a6)&,%d1,%acc2 + mac.w %d2u,%a7u,>>,10(%a6)&,%a3,%acc1 + mac.w %d2u,%a7u,>>,10(%a6)&,%a3,%acc2 + mac.w %d2u,%a7u,>>,10(%a6)&,%d2,%acc1 + mac.w %d2u,%a7u,>>,10(%a6)&,%d2,%acc2 + mac.w %d2u,%a7u,>>,10(%a6)&,%a7,%acc1 + mac.w %d2u,%a7u,>>,10(%a6)&,%a7,%acc2 + mac.w %d2u,%a7u,>>,-(%a1),%d1,%acc1 + mac.w %d2u,%a7u,>>,-(%a1),%d1,%acc2 + mac.w %d2u,%a7u,>>,-(%a1),%a3,%acc1 + mac.w %d2u,%a7u,>>,-(%a1),%a3,%acc2 + mac.w %d2u,%a7u,>>,-(%a1),%d2,%acc1 + mac.w %d2u,%a7u,>>,-(%a1),%d2,%acc2 + mac.w %d2u,%a7u,>>,-(%a1),%a7,%acc1 + mac.w %d2u,%a7u,>>,-(%a1),%a7,%acc2 + mac.w %d2u,%a7u,>>,-(%a1)&,%d1,%acc1 + mac.w %d2u,%a7u,>>,-(%a1)&,%d1,%acc2 + mac.w %d2u,%a7u,>>,-(%a1)&,%a3,%acc1 + mac.w %d2u,%a7u,>>,-(%a1)&,%a3,%acc2 + mac.w %d2u,%a7u,>>,-(%a1)&,%d2,%acc1 + mac.w %d2u,%a7u,>>,-(%a1)&,%d2,%acc2 + mac.w %d2u,%a7u,>>,-(%a1)&,%a7,%acc1 + mac.w %d2u,%a7u,>>,-(%a1)&,%a7,%acc2 + mac.w %d2u,%a7u,#1,(%a3),%d1,%acc1 + mac.w %d2u,%a7u,#1,(%a3),%d1,%acc2 + mac.w %d2u,%a7u,#1,(%a3),%a3,%acc1 + mac.w %d2u,%a7u,#1,(%a3),%a3,%acc2 + mac.w %d2u,%a7u,#1,(%a3),%d2,%acc1 + mac.w %d2u,%a7u,#1,(%a3),%d2,%acc2 + mac.w %d2u,%a7u,#1,(%a3),%a7,%acc1 + mac.w %d2u,%a7u,#1,(%a3),%a7,%acc2 + mac.w %d2u,%a7u,#1,(%a3)&,%d1,%acc1 + mac.w %d2u,%a7u,#1,(%a3)&,%d1,%acc2 + mac.w %d2u,%a7u,#1,(%a3)&,%a3,%acc1 + mac.w %d2u,%a7u,#1,(%a3)&,%a3,%acc2 + mac.w %d2u,%a7u,#1,(%a3)&,%d2,%acc1 + mac.w %d2u,%a7u,#1,(%a3)&,%d2,%acc2 + mac.w %d2u,%a7u,#1,(%a3)&,%a7,%acc1 + mac.w %d2u,%a7u,#1,(%a3)&,%a7,%acc2 + mac.w %d2u,%a7u,#1,(%a2)+,%d1,%acc1 + mac.w %d2u,%a7u,#1,(%a2)+,%d1,%acc2 + mac.w %d2u,%a7u,#1,(%a2)+,%a3,%acc1 + mac.w %d2u,%a7u,#1,(%a2)+,%a3,%acc2 + mac.w %d2u,%a7u,#1,(%a2)+,%d2,%acc1 + mac.w %d2u,%a7u,#1,(%a2)+,%d2,%acc2 + mac.w %d2u,%a7u,#1,(%a2)+,%a7,%acc1 + mac.w %d2u,%a7u,#1,(%a2)+,%a7,%acc2 + mac.w %d2u,%a7u,#1,(%a2)+&,%d1,%acc1 + mac.w %d2u,%a7u,#1,(%a2)+&,%d1,%acc2 + mac.w %d2u,%a7u,#1,(%a2)+&,%a3,%acc1 + mac.w %d2u,%a7u,#1,(%a2)+&,%a3,%acc2 + mac.w %d2u,%a7u,#1,(%a2)+&,%d2,%acc1 + mac.w %d2u,%a7u,#1,(%a2)+&,%d2,%acc2 + mac.w %d2u,%a7u,#1,(%a2)+&,%a7,%acc1 + mac.w %d2u,%a7u,#1,(%a2)+&,%a7,%acc2 + mac.w %d2u,%a7u,#1,10(%a6),%d1,%acc1 + mac.w %d2u,%a7u,#1,10(%a6),%d1,%acc2 + mac.w %d2u,%a7u,#1,10(%a6),%a3,%acc1 + mac.w %d2u,%a7u,#1,10(%a6),%a3,%acc2 + mac.w %d2u,%a7u,#1,10(%a6),%d2,%acc1 + mac.w %d2u,%a7u,#1,10(%a6),%d2,%acc2 + mac.w %d2u,%a7u,#1,10(%a6),%a7,%acc1 + mac.w %d2u,%a7u,#1,10(%a6),%a7,%acc2 + mac.w %d2u,%a7u,#1,10(%a6)&,%d1,%acc1 + mac.w %d2u,%a7u,#1,10(%a6)&,%d1,%acc2 + mac.w %d2u,%a7u,#1,10(%a6)&,%a3,%acc1 + mac.w %d2u,%a7u,#1,10(%a6)&,%a3,%acc2 + mac.w %d2u,%a7u,#1,10(%a6)&,%d2,%acc1 + mac.w %d2u,%a7u,#1,10(%a6)&,%d2,%acc2 + mac.w %d2u,%a7u,#1,10(%a6)&,%a7,%acc1 + mac.w %d2u,%a7u,#1,10(%a6)&,%a7,%acc2 + mac.w %d2u,%a7u,#1,-(%a1),%d1,%acc1 + mac.w %d2u,%a7u,#1,-(%a1),%d1,%acc2 + mac.w %d2u,%a7u,#1,-(%a1),%a3,%acc1 + mac.w %d2u,%a7u,#1,-(%a1),%a3,%acc2 + mac.w %d2u,%a7u,#1,-(%a1),%d2,%acc1 + mac.w %d2u,%a7u,#1,-(%a1),%d2,%acc2 + mac.w %d2u,%a7u,#1,-(%a1),%a7,%acc1 + mac.w %d2u,%a7u,#1,-(%a1),%a7,%acc2 + mac.w %d2u,%a7u,#1,-(%a1)&,%d1,%acc1 + mac.w %d2u,%a7u,#1,-(%a1)&,%d1,%acc2 + mac.w %d2u,%a7u,#1,-(%a1)&,%a3,%acc1 + mac.w %d2u,%a7u,#1,-(%a1)&,%a3,%acc2 + mac.w %d2u,%a7u,#1,-(%a1)&,%d2,%acc1 + mac.w %d2u,%a7u,#1,-(%a1)&,%d2,%acc2 + mac.w %d2u,%a7u,#1,-(%a1)&,%a7,%acc1 + mac.w %d2u,%a7u,#1,-(%a1)&,%a7,%acc2 + mac.w %d2u,%a7u,#-1,(%a3),%d1,%acc1 + mac.w %d2u,%a7u,#-1,(%a3),%d1,%acc2 + mac.w %d2u,%a7u,#-1,(%a3),%a3,%acc1 + mac.w %d2u,%a7u,#-1,(%a3),%a3,%acc2 + mac.w %d2u,%a7u,#-1,(%a3),%d2,%acc1 + mac.w %d2u,%a7u,#-1,(%a3),%d2,%acc2 + mac.w %d2u,%a7u,#-1,(%a3),%a7,%acc1 + mac.w %d2u,%a7u,#-1,(%a3),%a7,%acc2 + mac.w %d2u,%a7u,#-1,(%a3)&,%d1,%acc1 + mac.w %d2u,%a7u,#-1,(%a3)&,%d1,%acc2 + mac.w %d2u,%a7u,#-1,(%a3)&,%a3,%acc1 + mac.w %d2u,%a7u,#-1,(%a3)&,%a3,%acc2 + mac.w %d2u,%a7u,#-1,(%a3)&,%d2,%acc1 + mac.w %d2u,%a7u,#-1,(%a3)&,%d2,%acc2 + mac.w %d2u,%a7u,#-1,(%a3)&,%a7,%acc1 + mac.w %d2u,%a7u,#-1,(%a3)&,%a7,%acc2 + mac.w %d2u,%a7u,#-1,(%a2)+,%d1,%acc1 + mac.w %d2u,%a7u,#-1,(%a2)+,%d1,%acc2 + mac.w %d2u,%a7u,#-1,(%a2)+,%a3,%acc1 + mac.w %d2u,%a7u,#-1,(%a2)+,%a3,%acc2 + mac.w %d2u,%a7u,#-1,(%a2)+,%d2,%acc1 + mac.w %d2u,%a7u,#-1,(%a2)+,%d2,%acc2 + mac.w %d2u,%a7u,#-1,(%a2)+,%a7,%acc1 + mac.w %d2u,%a7u,#-1,(%a2)+,%a7,%acc2 + mac.w %d2u,%a7u,#-1,(%a2)+&,%d1,%acc1 + mac.w %d2u,%a7u,#-1,(%a2)+&,%d1,%acc2 + mac.w %d2u,%a7u,#-1,(%a2)+&,%a3,%acc1 + mac.w %d2u,%a7u,#-1,(%a2)+&,%a3,%acc2 + mac.w %d2u,%a7u,#-1,(%a2)+&,%d2,%acc1 + mac.w %d2u,%a7u,#-1,(%a2)+&,%d2,%acc2 + mac.w %d2u,%a7u,#-1,(%a2)+&,%a7,%acc1 + mac.w %d2u,%a7u,#-1,(%a2)+&,%a7,%acc2 + mac.w %d2u,%a7u,#-1,10(%a6),%d1,%acc1 + mac.w %d2u,%a7u,#-1,10(%a6),%d1,%acc2 + mac.w %d2u,%a7u,#-1,10(%a6),%a3,%acc1 + mac.w %d2u,%a7u,#-1,10(%a6),%a3,%acc2 + mac.w %d2u,%a7u,#-1,10(%a6),%d2,%acc1 + mac.w %d2u,%a7u,#-1,10(%a6),%d2,%acc2 + mac.w %d2u,%a7u,#-1,10(%a6),%a7,%acc1 + mac.w %d2u,%a7u,#-1,10(%a6),%a7,%acc2 + mac.w %d2u,%a7u,#-1,10(%a6)&,%d1,%acc1 + mac.w %d2u,%a7u,#-1,10(%a6)&,%d1,%acc2 + mac.w %d2u,%a7u,#-1,10(%a6)&,%a3,%acc1 + mac.w %d2u,%a7u,#-1,10(%a6)&,%a3,%acc2 + mac.w %d2u,%a7u,#-1,10(%a6)&,%d2,%acc1 + mac.w %d2u,%a7u,#-1,10(%a6)&,%d2,%acc2 + mac.w %d2u,%a7u,#-1,10(%a6)&,%a7,%acc1 + mac.w %d2u,%a7u,#-1,10(%a6)&,%a7,%acc2 + mac.w %d2u,%a7u,#-1,-(%a1),%d1,%acc1 + mac.w %d2u,%a7u,#-1,-(%a1),%d1,%acc2 + mac.w %d2u,%a7u,#-1,-(%a1),%a3,%acc1 + mac.w %d2u,%a7u,#-1,-(%a1),%a3,%acc2 + mac.w %d2u,%a7u,#-1,-(%a1),%d2,%acc1 + mac.w %d2u,%a7u,#-1,-(%a1),%d2,%acc2 + mac.w %d2u,%a7u,#-1,-(%a1),%a7,%acc1 + mac.w %d2u,%a7u,#-1,-(%a1),%a7,%acc2 + mac.w %d2u,%a7u,#-1,-(%a1)&,%d1,%acc1 + mac.w %d2u,%a7u,#-1,-(%a1)&,%d1,%acc2 + mac.w %d2u,%a7u,#-1,-(%a1)&,%a3,%acc1 + mac.w %d2u,%a7u,#-1,-(%a1)&,%a3,%acc2 + mac.w %d2u,%a7u,#-1,-(%a1)&,%d2,%acc1 + mac.w %d2u,%a7u,#-1,-(%a1)&,%d2,%acc2 + mac.w %d2u,%a7u,#-1,-(%a1)&,%a7,%acc1 + mac.w %d2u,%a7u,#-1,-(%a1)&,%a7,%acc2 + mac.w %d2u,%d1l,(%a3),%d1,%acc1 + mac.w %d2u,%d1l,(%a3),%d1,%acc2 + mac.w %d2u,%d1l,(%a3),%a3,%acc1 + mac.w %d2u,%d1l,(%a3),%a3,%acc2 + mac.w %d2u,%d1l,(%a3),%d2,%acc1 + mac.w %d2u,%d1l,(%a3),%d2,%acc2 + mac.w %d2u,%d1l,(%a3),%a7,%acc1 + mac.w %d2u,%d1l,(%a3),%a7,%acc2 + mac.w %d2u,%d1l,(%a3)&,%d1,%acc1 + mac.w %d2u,%d1l,(%a3)&,%d1,%acc2 + mac.w %d2u,%d1l,(%a3)&,%a3,%acc1 + mac.w %d2u,%d1l,(%a3)&,%a3,%acc2 + mac.w %d2u,%d1l,(%a3)&,%d2,%acc1 + mac.w %d2u,%d1l,(%a3)&,%d2,%acc2 + mac.w %d2u,%d1l,(%a3)&,%a7,%acc1 + mac.w %d2u,%d1l,(%a3)&,%a7,%acc2 + mac.w %d2u,%d1l,(%a2)+,%d1,%acc1 + mac.w %d2u,%d1l,(%a2)+,%d1,%acc2 + mac.w %d2u,%d1l,(%a2)+,%a3,%acc1 + mac.w %d2u,%d1l,(%a2)+,%a3,%acc2 + mac.w %d2u,%d1l,(%a2)+,%d2,%acc1 + mac.w %d2u,%d1l,(%a2)+,%d2,%acc2 + mac.w %d2u,%d1l,(%a2)+,%a7,%acc1 + mac.w %d2u,%d1l,(%a2)+,%a7,%acc2 + mac.w %d2u,%d1l,(%a2)+&,%d1,%acc1 + mac.w %d2u,%d1l,(%a2)+&,%d1,%acc2 + mac.w %d2u,%d1l,(%a2)+&,%a3,%acc1 + mac.w %d2u,%d1l,(%a2)+&,%a3,%acc2 + mac.w %d2u,%d1l,(%a2)+&,%d2,%acc1 + mac.w %d2u,%d1l,(%a2)+&,%d2,%acc2 + mac.w %d2u,%d1l,(%a2)+&,%a7,%acc1 + mac.w %d2u,%d1l,(%a2)+&,%a7,%acc2 + mac.w %d2u,%d1l,10(%a6),%d1,%acc1 + mac.w %d2u,%d1l,10(%a6),%d1,%acc2 + mac.w %d2u,%d1l,10(%a6),%a3,%acc1 + mac.w %d2u,%d1l,10(%a6),%a3,%acc2 + mac.w %d2u,%d1l,10(%a6),%d2,%acc1 + mac.w %d2u,%d1l,10(%a6),%d2,%acc2 + mac.w %d2u,%d1l,10(%a6),%a7,%acc1 + mac.w %d2u,%d1l,10(%a6),%a7,%acc2 + mac.w %d2u,%d1l,10(%a6)&,%d1,%acc1 + mac.w %d2u,%d1l,10(%a6)&,%d1,%acc2 + mac.w %d2u,%d1l,10(%a6)&,%a3,%acc1 + mac.w %d2u,%d1l,10(%a6)&,%a3,%acc2 + mac.w %d2u,%d1l,10(%a6)&,%d2,%acc1 + mac.w %d2u,%d1l,10(%a6)&,%d2,%acc2 + mac.w %d2u,%d1l,10(%a6)&,%a7,%acc1 + mac.w %d2u,%d1l,10(%a6)&,%a7,%acc2 + mac.w %d2u,%d1l,-(%a1),%d1,%acc1 + mac.w %d2u,%d1l,-(%a1),%d1,%acc2 + mac.w %d2u,%d1l,-(%a1),%a3,%acc1 + mac.w %d2u,%d1l,-(%a1),%a3,%acc2 + mac.w %d2u,%d1l,-(%a1),%d2,%acc1 + mac.w %d2u,%d1l,-(%a1),%d2,%acc2 + mac.w %d2u,%d1l,-(%a1),%a7,%acc1 + mac.w %d2u,%d1l,-(%a1),%a7,%acc2 + mac.w %d2u,%d1l,-(%a1)&,%d1,%acc1 + mac.w %d2u,%d1l,-(%a1)&,%d1,%acc2 + mac.w %d2u,%d1l,-(%a1)&,%a3,%acc1 + mac.w %d2u,%d1l,-(%a1)&,%a3,%acc2 + mac.w %d2u,%d1l,-(%a1)&,%d2,%acc1 + mac.w %d2u,%d1l,-(%a1)&,%d2,%acc2 + mac.w %d2u,%d1l,-(%a1)&,%a7,%acc1 + mac.w %d2u,%d1l,-(%a1)&,%a7,%acc2 + mac.w %d2u,%d1l,<<,(%a3),%d1,%acc1 + mac.w %d2u,%d1l,<<,(%a3),%d1,%acc2 + mac.w %d2u,%d1l,<<,(%a3),%a3,%acc1 + mac.w %d2u,%d1l,<<,(%a3),%a3,%acc2 + mac.w %d2u,%d1l,<<,(%a3),%d2,%acc1 + mac.w %d2u,%d1l,<<,(%a3),%d2,%acc2 + mac.w %d2u,%d1l,<<,(%a3),%a7,%acc1 + mac.w %d2u,%d1l,<<,(%a3),%a7,%acc2 + mac.w %d2u,%d1l,<<,(%a3)&,%d1,%acc1 + mac.w %d2u,%d1l,<<,(%a3)&,%d1,%acc2 + mac.w %d2u,%d1l,<<,(%a3)&,%a3,%acc1 + mac.w %d2u,%d1l,<<,(%a3)&,%a3,%acc2 + mac.w %d2u,%d1l,<<,(%a3)&,%d2,%acc1 + mac.w %d2u,%d1l,<<,(%a3)&,%d2,%acc2 + mac.w %d2u,%d1l,<<,(%a3)&,%a7,%acc1 + mac.w %d2u,%d1l,<<,(%a3)&,%a7,%acc2 + mac.w %d2u,%d1l,<<,(%a2)+,%d1,%acc1 + mac.w %d2u,%d1l,<<,(%a2)+,%d1,%acc2 + mac.w %d2u,%d1l,<<,(%a2)+,%a3,%acc1 + mac.w %d2u,%d1l,<<,(%a2)+,%a3,%acc2 + mac.w %d2u,%d1l,<<,(%a2)+,%d2,%acc1 + mac.w %d2u,%d1l,<<,(%a2)+,%d2,%acc2 + mac.w %d2u,%d1l,<<,(%a2)+,%a7,%acc1 + mac.w %d2u,%d1l,<<,(%a2)+,%a7,%acc2 + mac.w %d2u,%d1l,<<,(%a2)+&,%d1,%acc1 + mac.w %d2u,%d1l,<<,(%a2)+&,%d1,%acc2 + mac.w %d2u,%d1l,<<,(%a2)+&,%a3,%acc1 + mac.w %d2u,%d1l,<<,(%a2)+&,%a3,%acc2 + mac.w %d2u,%d1l,<<,(%a2)+&,%d2,%acc1 + mac.w %d2u,%d1l,<<,(%a2)+&,%d2,%acc2 + mac.w %d2u,%d1l,<<,(%a2)+&,%a7,%acc1 + mac.w %d2u,%d1l,<<,(%a2)+&,%a7,%acc2 + mac.w %d2u,%d1l,<<,10(%a6),%d1,%acc1 + mac.w %d2u,%d1l,<<,10(%a6),%d1,%acc2 + mac.w %d2u,%d1l,<<,10(%a6),%a3,%acc1 + mac.w %d2u,%d1l,<<,10(%a6),%a3,%acc2 + mac.w %d2u,%d1l,<<,10(%a6),%d2,%acc1 + mac.w %d2u,%d1l,<<,10(%a6),%d2,%acc2 + mac.w %d2u,%d1l,<<,10(%a6),%a7,%acc1 + mac.w %d2u,%d1l,<<,10(%a6),%a7,%acc2 + mac.w %d2u,%d1l,<<,10(%a6)&,%d1,%acc1 + mac.w %d2u,%d1l,<<,10(%a6)&,%d1,%acc2 + mac.w %d2u,%d1l,<<,10(%a6)&,%a3,%acc1 + mac.w %d2u,%d1l,<<,10(%a6)&,%a3,%acc2 + mac.w %d2u,%d1l,<<,10(%a6)&,%d2,%acc1 + mac.w %d2u,%d1l,<<,10(%a6)&,%d2,%acc2 + mac.w %d2u,%d1l,<<,10(%a6)&,%a7,%acc1 + mac.w %d2u,%d1l,<<,10(%a6)&,%a7,%acc2 + mac.w %d2u,%d1l,<<,-(%a1),%d1,%acc1 + mac.w %d2u,%d1l,<<,-(%a1),%d1,%acc2 + mac.w %d2u,%d1l,<<,-(%a1),%a3,%acc1 + mac.w %d2u,%d1l,<<,-(%a1),%a3,%acc2 + mac.w %d2u,%d1l,<<,-(%a1),%d2,%acc1 + mac.w %d2u,%d1l,<<,-(%a1),%d2,%acc2 + mac.w %d2u,%d1l,<<,-(%a1),%a7,%acc1 + mac.w %d2u,%d1l,<<,-(%a1),%a7,%acc2 + mac.w %d2u,%d1l,<<,-(%a1)&,%d1,%acc1 + mac.w %d2u,%d1l,<<,-(%a1)&,%d1,%acc2 + mac.w %d2u,%d1l,<<,-(%a1)&,%a3,%acc1 + mac.w %d2u,%d1l,<<,-(%a1)&,%a3,%acc2 + mac.w %d2u,%d1l,<<,-(%a1)&,%d2,%acc1 + mac.w %d2u,%d1l,<<,-(%a1)&,%d2,%acc2 + mac.w %d2u,%d1l,<<,-(%a1)&,%a7,%acc1 + mac.w %d2u,%d1l,<<,-(%a1)&,%a7,%acc2 + mac.w %d2u,%d1l,>>,(%a3),%d1,%acc1 + mac.w %d2u,%d1l,>>,(%a3),%d1,%acc2 + mac.w %d2u,%d1l,>>,(%a3),%a3,%acc1 + mac.w %d2u,%d1l,>>,(%a3),%a3,%acc2 + mac.w %d2u,%d1l,>>,(%a3),%d2,%acc1 + mac.w %d2u,%d1l,>>,(%a3),%d2,%acc2 + mac.w %d2u,%d1l,>>,(%a3),%a7,%acc1 + mac.w %d2u,%d1l,>>,(%a3),%a7,%acc2 + mac.w %d2u,%d1l,>>,(%a3)&,%d1,%acc1 + mac.w %d2u,%d1l,>>,(%a3)&,%d1,%acc2 + mac.w %d2u,%d1l,>>,(%a3)&,%a3,%acc1 + mac.w %d2u,%d1l,>>,(%a3)&,%a3,%acc2 + mac.w %d2u,%d1l,>>,(%a3)&,%d2,%acc1 + mac.w %d2u,%d1l,>>,(%a3)&,%d2,%acc2 + mac.w %d2u,%d1l,>>,(%a3)&,%a7,%acc1 + mac.w %d2u,%d1l,>>,(%a3)&,%a7,%acc2 + mac.w %d2u,%d1l,>>,(%a2)+,%d1,%acc1 + mac.w %d2u,%d1l,>>,(%a2)+,%d1,%acc2 + mac.w %d2u,%d1l,>>,(%a2)+,%a3,%acc1 + mac.w %d2u,%d1l,>>,(%a2)+,%a3,%acc2 + mac.w %d2u,%d1l,>>,(%a2)+,%d2,%acc1 + mac.w %d2u,%d1l,>>,(%a2)+,%d2,%acc2 + mac.w %d2u,%d1l,>>,(%a2)+,%a7,%acc1 + mac.w %d2u,%d1l,>>,(%a2)+,%a7,%acc2 + mac.w %d2u,%d1l,>>,(%a2)+&,%d1,%acc1 + mac.w %d2u,%d1l,>>,(%a2)+&,%d1,%acc2 + mac.w %d2u,%d1l,>>,(%a2)+&,%a3,%acc1 + mac.w %d2u,%d1l,>>,(%a2)+&,%a3,%acc2 + mac.w %d2u,%d1l,>>,(%a2)+&,%d2,%acc1 + mac.w %d2u,%d1l,>>,(%a2)+&,%d2,%acc2 + mac.w %d2u,%d1l,>>,(%a2)+&,%a7,%acc1 + mac.w %d2u,%d1l,>>,(%a2)+&,%a7,%acc2 + mac.w %d2u,%d1l,>>,10(%a6),%d1,%acc1 + mac.w %d2u,%d1l,>>,10(%a6),%d1,%acc2 + mac.w %d2u,%d1l,>>,10(%a6),%a3,%acc1 + mac.w %d2u,%d1l,>>,10(%a6),%a3,%acc2 + mac.w %d2u,%d1l,>>,10(%a6),%d2,%acc1 + mac.w %d2u,%d1l,>>,10(%a6),%d2,%acc2 + mac.w %d2u,%d1l,>>,10(%a6),%a7,%acc1 + mac.w %d2u,%d1l,>>,10(%a6),%a7,%acc2 + mac.w %d2u,%d1l,>>,10(%a6)&,%d1,%acc1 + mac.w %d2u,%d1l,>>,10(%a6)&,%d1,%acc2 + mac.w %d2u,%d1l,>>,10(%a6)&,%a3,%acc1 + mac.w %d2u,%d1l,>>,10(%a6)&,%a3,%acc2 + mac.w %d2u,%d1l,>>,10(%a6)&,%d2,%acc1 + mac.w %d2u,%d1l,>>,10(%a6)&,%d2,%acc2 + mac.w %d2u,%d1l,>>,10(%a6)&,%a7,%acc1 + mac.w %d2u,%d1l,>>,10(%a6)&,%a7,%acc2 + mac.w %d2u,%d1l,>>,-(%a1),%d1,%acc1 + mac.w %d2u,%d1l,>>,-(%a1),%d1,%acc2 + mac.w %d2u,%d1l,>>,-(%a1),%a3,%acc1 + mac.w %d2u,%d1l,>>,-(%a1),%a3,%acc2 + mac.w %d2u,%d1l,>>,-(%a1),%d2,%acc1 + mac.w %d2u,%d1l,>>,-(%a1),%d2,%acc2 + mac.w %d2u,%d1l,>>,-(%a1),%a7,%acc1 + mac.w %d2u,%d1l,>>,-(%a1),%a7,%acc2 + mac.w %d2u,%d1l,>>,-(%a1)&,%d1,%acc1 + mac.w %d2u,%d1l,>>,-(%a1)&,%d1,%acc2 + mac.w %d2u,%d1l,>>,-(%a1)&,%a3,%acc1 + mac.w %d2u,%d1l,>>,-(%a1)&,%a3,%acc2 + mac.w %d2u,%d1l,>>,-(%a1)&,%d2,%acc1 + mac.w %d2u,%d1l,>>,-(%a1)&,%d2,%acc2 + mac.w %d2u,%d1l,>>,-(%a1)&,%a7,%acc1 + mac.w %d2u,%d1l,>>,-(%a1)&,%a7,%acc2 + mac.w %d2u,%d1l,#1,(%a3),%d1,%acc1 + mac.w %d2u,%d1l,#1,(%a3),%d1,%acc2 + mac.w %d2u,%d1l,#1,(%a3),%a3,%acc1 + mac.w %d2u,%d1l,#1,(%a3),%a3,%acc2 + mac.w %d2u,%d1l,#1,(%a3),%d2,%acc1 + mac.w %d2u,%d1l,#1,(%a3),%d2,%acc2 + mac.w %d2u,%d1l,#1,(%a3),%a7,%acc1 + mac.w %d2u,%d1l,#1,(%a3),%a7,%acc2 + mac.w %d2u,%d1l,#1,(%a3)&,%d1,%acc1 + mac.w %d2u,%d1l,#1,(%a3)&,%d1,%acc2 + mac.w %d2u,%d1l,#1,(%a3)&,%a3,%acc1 + mac.w %d2u,%d1l,#1,(%a3)&,%a3,%acc2 + mac.w %d2u,%d1l,#1,(%a3)&,%d2,%acc1 + mac.w %d2u,%d1l,#1,(%a3)&,%d2,%acc2 + mac.w %d2u,%d1l,#1,(%a3)&,%a7,%acc1 + mac.w %d2u,%d1l,#1,(%a3)&,%a7,%acc2 + mac.w %d2u,%d1l,#1,(%a2)+,%d1,%acc1 + mac.w %d2u,%d1l,#1,(%a2)+,%d1,%acc2 + mac.w %d2u,%d1l,#1,(%a2)+,%a3,%acc1 + mac.w %d2u,%d1l,#1,(%a2)+,%a3,%acc2 + mac.w %d2u,%d1l,#1,(%a2)+,%d2,%acc1 + mac.w %d2u,%d1l,#1,(%a2)+,%d2,%acc2 + mac.w %d2u,%d1l,#1,(%a2)+,%a7,%acc1 + mac.w %d2u,%d1l,#1,(%a2)+,%a7,%acc2 + mac.w %d2u,%d1l,#1,(%a2)+&,%d1,%acc1 + mac.w %d2u,%d1l,#1,(%a2)+&,%d1,%acc2 + mac.w %d2u,%d1l,#1,(%a2)+&,%a3,%acc1 + mac.w %d2u,%d1l,#1,(%a2)+&,%a3,%acc2 + mac.w %d2u,%d1l,#1,(%a2)+&,%d2,%acc1 + mac.w %d2u,%d1l,#1,(%a2)+&,%d2,%acc2 + mac.w %d2u,%d1l,#1,(%a2)+&,%a7,%acc1 + mac.w %d2u,%d1l,#1,(%a2)+&,%a7,%acc2 + mac.w %d2u,%d1l,#1,10(%a6),%d1,%acc1 + mac.w %d2u,%d1l,#1,10(%a6),%d1,%acc2 + mac.w %d2u,%d1l,#1,10(%a6),%a3,%acc1 + mac.w %d2u,%d1l,#1,10(%a6),%a3,%acc2 + mac.w %d2u,%d1l,#1,10(%a6),%d2,%acc1 + mac.w %d2u,%d1l,#1,10(%a6),%d2,%acc2 + mac.w %d2u,%d1l,#1,10(%a6),%a7,%acc1 + mac.w %d2u,%d1l,#1,10(%a6),%a7,%acc2 + mac.w %d2u,%d1l,#1,10(%a6)&,%d1,%acc1 + mac.w %d2u,%d1l,#1,10(%a6)&,%d1,%acc2 + mac.w %d2u,%d1l,#1,10(%a6)&,%a3,%acc1 + mac.w %d2u,%d1l,#1,10(%a6)&,%a3,%acc2 + mac.w %d2u,%d1l,#1,10(%a6)&,%d2,%acc1 + mac.w %d2u,%d1l,#1,10(%a6)&,%d2,%acc2 + mac.w %d2u,%d1l,#1,10(%a6)&,%a7,%acc1 + mac.w %d2u,%d1l,#1,10(%a6)&,%a7,%acc2 + mac.w %d2u,%d1l,#1,-(%a1),%d1,%acc1 + mac.w %d2u,%d1l,#1,-(%a1),%d1,%acc2 + mac.w %d2u,%d1l,#1,-(%a1),%a3,%acc1 + mac.w %d2u,%d1l,#1,-(%a1),%a3,%acc2 + mac.w %d2u,%d1l,#1,-(%a1),%d2,%acc1 + mac.w %d2u,%d1l,#1,-(%a1),%d2,%acc2 + mac.w %d2u,%d1l,#1,-(%a1),%a7,%acc1 + mac.w %d2u,%d1l,#1,-(%a1),%a7,%acc2 + mac.w %d2u,%d1l,#1,-(%a1)&,%d1,%acc1 + mac.w %d2u,%d1l,#1,-(%a1)&,%d1,%acc2 + mac.w %d2u,%d1l,#1,-(%a1)&,%a3,%acc1 + mac.w %d2u,%d1l,#1,-(%a1)&,%a3,%acc2 + mac.w %d2u,%d1l,#1,-(%a1)&,%d2,%acc1 + mac.w %d2u,%d1l,#1,-(%a1)&,%d2,%acc2 + mac.w %d2u,%d1l,#1,-(%a1)&,%a7,%acc1 + mac.w %d2u,%d1l,#1,-(%a1)&,%a7,%acc2 + mac.w %d2u,%d1l,#-1,(%a3),%d1,%acc1 + mac.w %d2u,%d1l,#-1,(%a3),%d1,%acc2 + mac.w %d2u,%d1l,#-1,(%a3),%a3,%acc1 + mac.w %d2u,%d1l,#-1,(%a3),%a3,%acc2 + mac.w %d2u,%d1l,#-1,(%a3),%d2,%acc1 + mac.w %d2u,%d1l,#-1,(%a3),%d2,%acc2 + mac.w %d2u,%d1l,#-1,(%a3),%a7,%acc1 + mac.w %d2u,%d1l,#-1,(%a3),%a7,%acc2 + mac.w %d2u,%d1l,#-1,(%a3)&,%d1,%acc1 + mac.w %d2u,%d1l,#-1,(%a3)&,%d1,%acc2 + mac.w %d2u,%d1l,#-1,(%a3)&,%a3,%acc1 + mac.w %d2u,%d1l,#-1,(%a3)&,%a3,%acc2 + mac.w %d2u,%d1l,#-1,(%a3)&,%d2,%acc1 + mac.w %d2u,%d1l,#-1,(%a3)&,%d2,%acc2 + mac.w %d2u,%d1l,#-1,(%a3)&,%a7,%acc1 + mac.w %d2u,%d1l,#-1,(%a3)&,%a7,%acc2 + mac.w %d2u,%d1l,#-1,(%a2)+,%d1,%acc1 + mac.w %d2u,%d1l,#-1,(%a2)+,%d1,%acc2 + mac.w %d2u,%d1l,#-1,(%a2)+,%a3,%acc1 + mac.w %d2u,%d1l,#-1,(%a2)+,%a3,%acc2 + mac.w %d2u,%d1l,#-1,(%a2)+,%d2,%acc1 + mac.w %d2u,%d1l,#-1,(%a2)+,%d2,%acc2 + mac.w %d2u,%d1l,#-1,(%a2)+,%a7,%acc1 + mac.w %d2u,%d1l,#-1,(%a2)+,%a7,%acc2 + mac.w %d2u,%d1l,#-1,(%a2)+&,%d1,%acc1 + mac.w %d2u,%d1l,#-1,(%a2)+&,%d1,%acc2 + mac.w %d2u,%d1l,#-1,(%a2)+&,%a3,%acc1 + mac.w %d2u,%d1l,#-1,(%a2)+&,%a3,%acc2 + mac.w %d2u,%d1l,#-1,(%a2)+&,%d2,%acc1 + mac.w %d2u,%d1l,#-1,(%a2)+&,%d2,%acc2 + mac.w %d2u,%d1l,#-1,(%a2)+&,%a7,%acc1 + mac.w %d2u,%d1l,#-1,(%a2)+&,%a7,%acc2 + mac.w %d2u,%d1l,#-1,10(%a6),%d1,%acc1 + mac.w %d2u,%d1l,#-1,10(%a6),%d1,%acc2 + mac.w %d2u,%d1l,#-1,10(%a6),%a3,%acc1 + mac.w %d2u,%d1l,#-1,10(%a6),%a3,%acc2 + mac.w %d2u,%d1l,#-1,10(%a6),%d2,%acc1 + mac.w %d2u,%d1l,#-1,10(%a6),%d2,%acc2 + mac.w %d2u,%d1l,#-1,10(%a6),%a7,%acc1 + mac.w %d2u,%d1l,#-1,10(%a6),%a7,%acc2 + mac.w %d2u,%d1l,#-1,10(%a6)&,%d1,%acc1 + mac.w %d2u,%d1l,#-1,10(%a6)&,%d1,%acc2 + mac.w %d2u,%d1l,#-1,10(%a6)&,%a3,%acc1 + mac.w %d2u,%d1l,#-1,10(%a6)&,%a3,%acc2 + mac.w %d2u,%d1l,#-1,10(%a6)&,%d2,%acc1 + mac.w %d2u,%d1l,#-1,10(%a6)&,%d2,%acc2 + mac.w %d2u,%d1l,#-1,10(%a6)&,%a7,%acc1 + mac.w %d2u,%d1l,#-1,10(%a6)&,%a7,%acc2 + mac.w %d2u,%d1l,#-1,-(%a1),%d1,%acc1 + mac.w %d2u,%d1l,#-1,-(%a1),%d1,%acc2 + mac.w %d2u,%d1l,#-1,-(%a1),%a3,%acc1 + mac.w %d2u,%d1l,#-1,-(%a1),%a3,%acc2 + mac.w %d2u,%d1l,#-1,-(%a1),%d2,%acc1 + mac.w %d2u,%d1l,#-1,-(%a1),%d2,%acc2 + mac.w %d2u,%d1l,#-1,-(%a1),%a7,%acc1 + mac.w %d2u,%d1l,#-1,-(%a1),%a7,%acc2 + mac.w %d2u,%d1l,#-1,-(%a1)&,%d1,%acc1 + mac.w %d2u,%d1l,#-1,-(%a1)&,%d1,%acc2 + mac.w %d2u,%d1l,#-1,-(%a1)&,%a3,%acc1 + mac.w %d2u,%d1l,#-1,-(%a1)&,%a3,%acc2 + mac.w %d2u,%d1l,#-1,-(%a1)&,%d2,%acc1 + mac.w %d2u,%d1l,#-1,-(%a1)&,%d2,%acc2 + mac.w %d2u,%d1l,#-1,-(%a1)&,%a7,%acc1 + mac.w %d2u,%d1l,#-1,-(%a1)&,%a7,%acc2 + mac.w %a5l,%a2u,(%a3),%d1,%acc1 + mac.w %a5l,%a2u,(%a3),%d1,%acc2 + mac.w %a5l,%a2u,(%a3),%a3,%acc1 + mac.w %a5l,%a2u,(%a3),%a3,%acc2 + mac.w %a5l,%a2u,(%a3),%d2,%acc1 + mac.w %a5l,%a2u,(%a3),%d2,%acc2 + mac.w %a5l,%a2u,(%a3),%a7,%acc1 + mac.w %a5l,%a2u,(%a3),%a7,%acc2 + mac.w %a5l,%a2u,(%a3)&,%d1,%acc1 + mac.w %a5l,%a2u,(%a3)&,%d1,%acc2 + mac.w %a5l,%a2u,(%a3)&,%a3,%acc1 + mac.w %a5l,%a2u,(%a3)&,%a3,%acc2 + mac.w %a5l,%a2u,(%a3)&,%d2,%acc1 + mac.w %a5l,%a2u,(%a3)&,%d2,%acc2 + mac.w %a5l,%a2u,(%a3)&,%a7,%acc1 + mac.w %a5l,%a2u,(%a3)&,%a7,%acc2 + mac.w %a5l,%a2u,(%a2)+,%d1,%acc1 + mac.w %a5l,%a2u,(%a2)+,%d1,%acc2 + mac.w %a5l,%a2u,(%a2)+,%a3,%acc1 + mac.w %a5l,%a2u,(%a2)+,%a3,%acc2 + mac.w %a5l,%a2u,(%a2)+,%d2,%acc1 + mac.w %a5l,%a2u,(%a2)+,%d2,%acc2 + mac.w %a5l,%a2u,(%a2)+,%a7,%acc1 + mac.w %a5l,%a2u,(%a2)+,%a7,%acc2 + mac.w %a5l,%a2u,(%a2)+&,%d1,%acc1 + mac.w %a5l,%a2u,(%a2)+&,%d1,%acc2 + mac.w %a5l,%a2u,(%a2)+&,%a3,%acc1 + mac.w %a5l,%a2u,(%a2)+&,%a3,%acc2 + mac.w %a5l,%a2u,(%a2)+&,%d2,%acc1 + mac.w %a5l,%a2u,(%a2)+&,%d2,%acc2 + mac.w %a5l,%a2u,(%a2)+&,%a7,%acc1 + mac.w %a5l,%a2u,(%a2)+&,%a7,%acc2 + mac.w %a5l,%a2u,10(%a6),%d1,%acc1 + mac.w %a5l,%a2u,10(%a6),%d1,%acc2 + mac.w %a5l,%a2u,10(%a6),%a3,%acc1 + mac.w %a5l,%a2u,10(%a6),%a3,%acc2 + mac.w %a5l,%a2u,10(%a6),%d2,%acc1 + mac.w %a5l,%a2u,10(%a6),%d2,%acc2 + mac.w %a5l,%a2u,10(%a6),%a7,%acc1 + mac.w %a5l,%a2u,10(%a6),%a7,%acc2 + mac.w %a5l,%a2u,10(%a6)&,%d1,%acc1 + mac.w %a5l,%a2u,10(%a6)&,%d1,%acc2 + mac.w %a5l,%a2u,10(%a6)&,%a3,%acc1 + mac.w %a5l,%a2u,10(%a6)&,%a3,%acc2 + mac.w %a5l,%a2u,10(%a6)&,%d2,%acc1 + mac.w %a5l,%a2u,10(%a6)&,%d2,%acc2 + mac.w %a5l,%a2u,10(%a6)&,%a7,%acc1 + mac.w %a5l,%a2u,10(%a6)&,%a7,%acc2 + mac.w %a5l,%a2u,-(%a1),%d1,%acc1 + mac.w %a5l,%a2u,-(%a1),%d1,%acc2 + mac.w %a5l,%a2u,-(%a1),%a3,%acc1 + mac.w %a5l,%a2u,-(%a1),%a3,%acc2 + mac.w %a5l,%a2u,-(%a1),%d2,%acc1 + mac.w %a5l,%a2u,-(%a1),%d2,%acc2 + mac.w %a5l,%a2u,-(%a1),%a7,%acc1 + mac.w %a5l,%a2u,-(%a1),%a7,%acc2 + mac.w %a5l,%a2u,-(%a1)&,%d1,%acc1 + mac.w %a5l,%a2u,-(%a1)&,%d1,%acc2 + mac.w %a5l,%a2u,-(%a1)&,%a3,%acc1 + mac.w %a5l,%a2u,-(%a1)&,%a3,%acc2 + mac.w %a5l,%a2u,-(%a1)&,%d2,%acc1 + mac.w %a5l,%a2u,-(%a1)&,%d2,%acc2 + mac.w %a5l,%a2u,-(%a1)&,%a7,%acc1 + mac.w %a5l,%a2u,-(%a1)&,%a7,%acc2 + mac.w %a5l,%a2u,<<,(%a3),%d1,%acc1 + mac.w %a5l,%a2u,<<,(%a3),%d1,%acc2 + mac.w %a5l,%a2u,<<,(%a3),%a3,%acc1 + mac.w %a5l,%a2u,<<,(%a3),%a3,%acc2 + mac.w %a5l,%a2u,<<,(%a3),%d2,%acc1 + mac.w %a5l,%a2u,<<,(%a3),%d2,%acc2 + mac.w %a5l,%a2u,<<,(%a3),%a7,%acc1 + mac.w %a5l,%a2u,<<,(%a3),%a7,%acc2 + mac.w %a5l,%a2u,<<,(%a3)&,%d1,%acc1 + mac.w %a5l,%a2u,<<,(%a3)&,%d1,%acc2 + mac.w %a5l,%a2u,<<,(%a3)&,%a3,%acc1 + mac.w %a5l,%a2u,<<,(%a3)&,%a3,%acc2 + mac.w %a5l,%a2u,<<,(%a3)&,%d2,%acc1 + mac.w %a5l,%a2u,<<,(%a3)&,%d2,%acc2 + mac.w %a5l,%a2u,<<,(%a3)&,%a7,%acc1 + mac.w %a5l,%a2u,<<,(%a3)&,%a7,%acc2 + mac.w %a5l,%a2u,<<,(%a2)+,%d1,%acc1 + mac.w %a5l,%a2u,<<,(%a2)+,%d1,%acc2 + mac.w %a5l,%a2u,<<,(%a2)+,%a3,%acc1 + mac.w %a5l,%a2u,<<,(%a2)+,%a3,%acc2 + mac.w %a5l,%a2u,<<,(%a2)+,%d2,%acc1 + mac.w %a5l,%a2u,<<,(%a2)+,%d2,%acc2 + mac.w %a5l,%a2u,<<,(%a2)+,%a7,%acc1 + mac.w %a5l,%a2u,<<,(%a2)+,%a7,%acc2 + mac.w %a5l,%a2u,<<,(%a2)+&,%d1,%acc1 + mac.w %a5l,%a2u,<<,(%a2)+&,%d1,%acc2 + mac.w %a5l,%a2u,<<,(%a2)+&,%a3,%acc1 + mac.w %a5l,%a2u,<<,(%a2)+&,%a3,%acc2 + mac.w %a5l,%a2u,<<,(%a2)+&,%d2,%acc1 + mac.w %a5l,%a2u,<<,(%a2)+&,%d2,%acc2 + mac.w %a5l,%a2u,<<,(%a2)+&,%a7,%acc1 + mac.w %a5l,%a2u,<<,(%a2)+&,%a7,%acc2 + mac.w %a5l,%a2u,<<,10(%a6),%d1,%acc1 + mac.w %a5l,%a2u,<<,10(%a6),%d1,%acc2 + mac.w %a5l,%a2u,<<,10(%a6),%a3,%acc1 + mac.w %a5l,%a2u,<<,10(%a6),%a3,%acc2 + mac.w %a5l,%a2u,<<,10(%a6),%d2,%acc1 + mac.w %a5l,%a2u,<<,10(%a6),%d2,%acc2 + mac.w %a5l,%a2u,<<,10(%a6),%a7,%acc1 + mac.w %a5l,%a2u,<<,10(%a6),%a7,%acc2 + mac.w %a5l,%a2u,<<,10(%a6)&,%d1,%acc1 + mac.w %a5l,%a2u,<<,10(%a6)&,%d1,%acc2 + mac.w %a5l,%a2u,<<,10(%a6)&,%a3,%acc1 + mac.w %a5l,%a2u,<<,10(%a6)&,%a3,%acc2 + mac.w %a5l,%a2u,<<,10(%a6)&,%d2,%acc1 + mac.w %a5l,%a2u,<<,10(%a6)&,%d2,%acc2 + mac.w %a5l,%a2u,<<,10(%a6)&,%a7,%acc1 + mac.w %a5l,%a2u,<<,10(%a6)&,%a7,%acc2 + mac.w %a5l,%a2u,<<,-(%a1),%d1,%acc1 + mac.w %a5l,%a2u,<<,-(%a1),%d1,%acc2 + mac.w %a5l,%a2u,<<,-(%a1),%a3,%acc1 + mac.w %a5l,%a2u,<<,-(%a1),%a3,%acc2 + mac.w %a5l,%a2u,<<,-(%a1),%d2,%acc1 + mac.w %a5l,%a2u,<<,-(%a1),%d2,%acc2 + mac.w %a5l,%a2u,<<,-(%a1),%a7,%acc1 + mac.w %a5l,%a2u,<<,-(%a1),%a7,%acc2 + mac.w %a5l,%a2u,<<,-(%a1)&,%d1,%acc1 + mac.w %a5l,%a2u,<<,-(%a1)&,%d1,%acc2 + mac.w %a5l,%a2u,<<,-(%a1)&,%a3,%acc1 + mac.w %a5l,%a2u,<<,-(%a1)&,%a3,%acc2 + mac.w %a5l,%a2u,<<,-(%a1)&,%d2,%acc1 + mac.w %a5l,%a2u,<<,-(%a1)&,%d2,%acc2 + mac.w %a5l,%a2u,<<,-(%a1)&,%a7,%acc1 + mac.w %a5l,%a2u,<<,-(%a1)&,%a7,%acc2 + mac.w %a5l,%a2u,>>,(%a3),%d1,%acc1 + mac.w %a5l,%a2u,>>,(%a3),%d1,%acc2 + mac.w %a5l,%a2u,>>,(%a3),%a3,%acc1 + mac.w %a5l,%a2u,>>,(%a3),%a3,%acc2 + mac.w %a5l,%a2u,>>,(%a3),%d2,%acc1 + mac.w %a5l,%a2u,>>,(%a3),%d2,%acc2 + mac.w %a5l,%a2u,>>,(%a3),%a7,%acc1 + mac.w %a5l,%a2u,>>,(%a3),%a7,%acc2 + mac.w %a5l,%a2u,>>,(%a3)&,%d1,%acc1 + mac.w %a5l,%a2u,>>,(%a3)&,%d1,%acc2 + mac.w %a5l,%a2u,>>,(%a3)&,%a3,%acc1 + mac.w %a5l,%a2u,>>,(%a3)&,%a3,%acc2 + mac.w %a5l,%a2u,>>,(%a3)&,%d2,%acc1 + mac.w %a5l,%a2u,>>,(%a3)&,%d2,%acc2 + mac.w %a5l,%a2u,>>,(%a3)&,%a7,%acc1 + mac.w %a5l,%a2u,>>,(%a3)&,%a7,%acc2 + mac.w %a5l,%a2u,>>,(%a2)+,%d1,%acc1 + mac.w %a5l,%a2u,>>,(%a2)+,%d1,%acc2 + mac.w %a5l,%a2u,>>,(%a2)+,%a3,%acc1 + mac.w %a5l,%a2u,>>,(%a2)+,%a3,%acc2 + mac.w %a5l,%a2u,>>,(%a2)+,%d2,%acc1 + mac.w %a5l,%a2u,>>,(%a2)+,%d2,%acc2 + mac.w %a5l,%a2u,>>,(%a2)+,%a7,%acc1 + mac.w %a5l,%a2u,>>,(%a2)+,%a7,%acc2 + mac.w %a5l,%a2u,>>,(%a2)+&,%d1,%acc1 + mac.w %a5l,%a2u,>>,(%a2)+&,%d1,%acc2 + mac.w %a5l,%a2u,>>,(%a2)+&,%a3,%acc1 + mac.w %a5l,%a2u,>>,(%a2)+&,%a3,%acc2 + mac.w %a5l,%a2u,>>,(%a2)+&,%d2,%acc1 + mac.w %a5l,%a2u,>>,(%a2)+&,%d2,%acc2 + mac.w %a5l,%a2u,>>,(%a2)+&,%a7,%acc1 + mac.w %a5l,%a2u,>>,(%a2)+&,%a7,%acc2 + mac.w %a5l,%a2u,>>,10(%a6),%d1,%acc1 + mac.w %a5l,%a2u,>>,10(%a6),%d1,%acc2 + mac.w %a5l,%a2u,>>,10(%a6),%a3,%acc1 + mac.w %a5l,%a2u,>>,10(%a6),%a3,%acc2 + mac.w %a5l,%a2u,>>,10(%a6),%d2,%acc1 + mac.w %a5l,%a2u,>>,10(%a6),%d2,%acc2 + mac.w %a5l,%a2u,>>,10(%a6),%a7,%acc1 + mac.w %a5l,%a2u,>>,10(%a6),%a7,%acc2 + mac.w %a5l,%a2u,>>,10(%a6)&,%d1,%acc1 + mac.w %a5l,%a2u,>>,10(%a6)&,%d1,%acc2 + mac.w %a5l,%a2u,>>,10(%a6)&,%a3,%acc1 + mac.w %a5l,%a2u,>>,10(%a6)&,%a3,%acc2 + mac.w %a5l,%a2u,>>,10(%a6)&,%d2,%acc1 + mac.w %a5l,%a2u,>>,10(%a6)&,%d2,%acc2 + mac.w %a5l,%a2u,>>,10(%a6)&,%a7,%acc1 + mac.w %a5l,%a2u,>>,10(%a6)&,%a7,%acc2 + mac.w %a5l,%a2u,>>,-(%a1),%d1,%acc1 + mac.w %a5l,%a2u,>>,-(%a1),%d1,%acc2 + mac.w %a5l,%a2u,>>,-(%a1),%a3,%acc1 + mac.w %a5l,%a2u,>>,-(%a1),%a3,%acc2 + mac.w %a5l,%a2u,>>,-(%a1),%d2,%acc1 + mac.w %a5l,%a2u,>>,-(%a1),%d2,%acc2 + mac.w %a5l,%a2u,>>,-(%a1),%a7,%acc1 + mac.w %a5l,%a2u,>>,-(%a1),%a7,%acc2 + mac.w %a5l,%a2u,>>,-(%a1)&,%d1,%acc1 + mac.w %a5l,%a2u,>>,-(%a1)&,%d1,%acc2 + mac.w %a5l,%a2u,>>,-(%a1)&,%a3,%acc1 + mac.w %a5l,%a2u,>>,-(%a1)&,%a3,%acc2 + mac.w %a5l,%a2u,>>,-(%a1)&,%d2,%acc1 + mac.w %a5l,%a2u,>>,-(%a1)&,%d2,%acc2 + mac.w %a5l,%a2u,>>,-(%a1)&,%a7,%acc1 + mac.w %a5l,%a2u,>>,-(%a1)&,%a7,%acc2 + mac.w %a5l,%a2u,#1,(%a3),%d1,%acc1 + mac.w %a5l,%a2u,#1,(%a3),%d1,%acc2 + mac.w %a5l,%a2u,#1,(%a3),%a3,%acc1 + mac.w %a5l,%a2u,#1,(%a3),%a3,%acc2 + mac.w %a5l,%a2u,#1,(%a3),%d2,%acc1 + mac.w %a5l,%a2u,#1,(%a3),%d2,%acc2 + mac.w %a5l,%a2u,#1,(%a3),%a7,%acc1 + mac.w %a5l,%a2u,#1,(%a3),%a7,%acc2 + mac.w %a5l,%a2u,#1,(%a3)&,%d1,%acc1 + mac.w %a5l,%a2u,#1,(%a3)&,%d1,%acc2 + mac.w %a5l,%a2u,#1,(%a3)&,%a3,%acc1 + mac.w %a5l,%a2u,#1,(%a3)&,%a3,%acc2 + mac.w %a5l,%a2u,#1,(%a3)&,%d2,%acc1 + mac.w %a5l,%a2u,#1,(%a3)&,%d2,%acc2 + mac.w %a5l,%a2u,#1,(%a3)&,%a7,%acc1 + mac.w %a5l,%a2u,#1,(%a3)&,%a7,%acc2 + mac.w %a5l,%a2u,#1,(%a2)+,%d1,%acc1 + mac.w %a5l,%a2u,#1,(%a2)+,%d1,%acc2 + mac.w %a5l,%a2u,#1,(%a2)+,%a3,%acc1 + mac.w %a5l,%a2u,#1,(%a2)+,%a3,%acc2 + mac.w %a5l,%a2u,#1,(%a2)+,%d2,%acc1 + mac.w %a5l,%a2u,#1,(%a2)+,%d2,%acc2 + mac.w %a5l,%a2u,#1,(%a2)+,%a7,%acc1 + mac.w %a5l,%a2u,#1,(%a2)+,%a7,%acc2 + mac.w %a5l,%a2u,#1,(%a2)+&,%d1,%acc1 + mac.w %a5l,%a2u,#1,(%a2)+&,%d1,%acc2 + mac.w %a5l,%a2u,#1,(%a2)+&,%a3,%acc1 + mac.w %a5l,%a2u,#1,(%a2)+&,%a3,%acc2 + mac.w %a5l,%a2u,#1,(%a2)+&,%d2,%acc1 + mac.w %a5l,%a2u,#1,(%a2)+&,%d2,%acc2 + mac.w %a5l,%a2u,#1,(%a2)+&,%a7,%acc1 + mac.w %a5l,%a2u,#1,(%a2)+&,%a7,%acc2 + mac.w %a5l,%a2u,#1,10(%a6),%d1,%acc1 + mac.w %a5l,%a2u,#1,10(%a6),%d1,%acc2 + mac.w %a5l,%a2u,#1,10(%a6),%a3,%acc1 + mac.w %a5l,%a2u,#1,10(%a6),%a3,%acc2 + mac.w %a5l,%a2u,#1,10(%a6),%d2,%acc1 + mac.w %a5l,%a2u,#1,10(%a6),%d2,%acc2 + mac.w %a5l,%a2u,#1,10(%a6),%a7,%acc1 + mac.w %a5l,%a2u,#1,10(%a6),%a7,%acc2 + mac.w %a5l,%a2u,#1,10(%a6)&,%d1,%acc1 + mac.w %a5l,%a2u,#1,10(%a6)&,%d1,%acc2 + mac.w %a5l,%a2u,#1,10(%a6)&,%a3,%acc1 + mac.w %a5l,%a2u,#1,10(%a6)&,%a3,%acc2 + mac.w %a5l,%a2u,#1,10(%a6)&,%d2,%acc1 + mac.w %a5l,%a2u,#1,10(%a6)&,%d2,%acc2 + mac.w %a5l,%a2u,#1,10(%a6)&,%a7,%acc1 + mac.w %a5l,%a2u,#1,10(%a6)&,%a7,%acc2 + mac.w %a5l,%a2u,#1,-(%a1),%d1,%acc1 + mac.w %a5l,%a2u,#1,-(%a1),%d1,%acc2 + mac.w %a5l,%a2u,#1,-(%a1),%a3,%acc1 + mac.w %a5l,%a2u,#1,-(%a1),%a3,%acc2 + mac.w %a5l,%a2u,#1,-(%a1),%d2,%acc1 + mac.w %a5l,%a2u,#1,-(%a1),%d2,%acc2 + mac.w %a5l,%a2u,#1,-(%a1),%a7,%acc1 + mac.w %a5l,%a2u,#1,-(%a1),%a7,%acc2 + mac.w %a5l,%a2u,#1,-(%a1)&,%d1,%acc1 + mac.w %a5l,%a2u,#1,-(%a1)&,%d1,%acc2 + mac.w %a5l,%a2u,#1,-(%a1)&,%a3,%acc1 + mac.w %a5l,%a2u,#1,-(%a1)&,%a3,%acc2 + mac.w %a5l,%a2u,#1,-(%a1)&,%d2,%acc1 + mac.w %a5l,%a2u,#1,-(%a1)&,%d2,%acc2 + mac.w %a5l,%a2u,#1,-(%a1)&,%a7,%acc1 + mac.w %a5l,%a2u,#1,-(%a1)&,%a7,%acc2 + mac.w %a5l,%a2u,#-1,(%a3),%d1,%acc1 + mac.w %a5l,%a2u,#-1,(%a3),%d1,%acc2 + mac.w %a5l,%a2u,#-1,(%a3),%a3,%acc1 + mac.w %a5l,%a2u,#-1,(%a3),%a3,%acc2 + mac.w %a5l,%a2u,#-1,(%a3),%d2,%acc1 + mac.w %a5l,%a2u,#-1,(%a3),%d2,%acc2 + mac.w %a5l,%a2u,#-1,(%a3),%a7,%acc1 + mac.w %a5l,%a2u,#-1,(%a3),%a7,%acc2 + mac.w %a5l,%a2u,#-1,(%a3)&,%d1,%acc1 + mac.w %a5l,%a2u,#-1,(%a3)&,%d1,%acc2 + mac.w %a5l,%a2u,#-1,(%a3)&,%a3,%acc1 + mac.w %a5l,%a2u,#-1,(%a3)&,%a3,%acc2 + mac.w %a5l,%a2u,#-1,(%a3)&,%d2,%acc1 + mac.w %a5l,%a2u,#-1,(%a3)&,%d2,%acc2 + mac.w %a5l,%a2u,#-1,(%a3)&,%a7,%acc1 + mac.w %a5l,%a2u,#-1,(%a3)&,%a7,%acc2 + mac.w %a5l,%a2u,#-1,(%a2)+,%d1,%acc1 + mac.w %a5l,%a2u,#-1,(%a2)+,%d1,%acc2 + mac.w %a5l,%a2u,#-1,(%a2)+,%a3,%acc1 + mac.w %a5l,%a2u,#-1,(%a2)+,%a3,%acc2 + mac.w %a5l,%a2u,#-1,(%a2)+,%d2,%acc1 + mac.w %a5l,%a2u,#-1,(%a2)+,%d2,%acc2 + mac.w %a5l,%a2u,#-1,(%a2)+,%a7,%acc1 + mac.w %a5l,%a2u,#-1,(%a2)+,%a7,%acc2 + mac.w %a5l,%a2u,#-1,(%a2)+&,%d1,%acc1 + mac.w %a5l,%a2u,#-1,(%a2)+&,%d1,%acc2 + mac.w %a5l,%a2u,#-1,(%a2)+&,%a3,%acc1 + mac.w %a5l,%a2u,#-1,(%a2)+&,%a3,%acc2 + mac.w %a5l,%a2u,#-1,(%a2)+&,%d2,%acc1 + mac.w %a5l,%a2u,#-1,(%a2)+&,%d2,%acc2 + mac.w %a5l,%a2u,#-1,(%a2)+&,%a7,%acc1 + mac.w %a5l,%a2u,#-1,(%a2)+&,%a7,%acc2 + mac.w %a5l,%a2u,#-1,10(%a6),%d1,%acc1 + mac.w %a5l,%a2u,#-1,10(%a6),%d1,%acc2 + mac.w %a5l,%a2u,#-1,10(%a6),%a3,%acc1 + mac.w %a5l,%a2u,#-1,10(%a6),%a3,%acc2 + mac.w %a5l,%a2u,#-1,10(%a6),%d2,%acc1 + mac.w %a5l,%a2u,#-1,10(%a6),%d2,%acc2 + mac.w %a5l,%a2u,#-1,10(%a6),%a7,%acc1 + mac.w %a5l,%a2u,#-1,10(%a6),%a7,%acc2 + mac.w %a5l,%a2u,#-1,10(%a6)&,%d1,%acc1 + mac.w %a5l,%a2u,#-1,10(%a6)&,%d1,%acc2 + mac.w %a5l,%a2u,#-1,10(%a6)&,%a3,%acc1 + mac.w %a5l,%a2u,#-1,10(%a6)&,%a3,%acc2 + mac.w %a5l,%a2u,#-1,10(%a6)&,%d2,%acc1 + mac.w %a5l,%a2u,#-1,10(%a6)&,%d2,%acc2 + mac.w %a5l,%a2u,#-1,10(%a6)&,%a7,%acc1 + mac.w %a5l,%a2u,#-1,10(%a6)&,%a7,%acc2 + mac.w %a5l,%a2u,#-1,-(%a1),%d1,%acc1 + mac.w %a5l,%a2u,#-1,-(%a1),%d1,%acc2 + mac.w %a5l,%a2u,#-1,-(%a1),%a3,%acc1 + mac.w %a5l,%a2u,#-1,-(%a1),%a3,%acc2 + mac.w %a5l,%a2u,#-1,-(%a1),%d2,%acc1 + mac.w %a5l,%a2u,#-1,-(%a1),%d2,%acc2 + mac.w %a5l,%a2u,#-1,-(%a1),%a7,%acc1 + mac.w %a5l,%a2u,#-1,-(%a1),%a7,%acc2 + mac.w %a5l,%a2u,#-1,-(%a1)&,%d1,%acc1 + mac.w %a5l,%a2u,#-1,-(%a1)&,%d1,%acc2 + mac.w %a5l,%a2u,#-1,-(%a1)&,%a3,%acc1 + mac.w %a5l,%a2u,#-1,-(%a1)&,%a3,%acc2 + mac.w %a5l,%a2u,#-1,-(%a1)&,%d2,%acc1 + mac.w %a5l,%a2u,#-1,-(%a1)&,%d2,%acc2 + mac.w %a5l,%a2u,#-1,-(%a1)&,%a7,%acc1 + mac.w %a5l,%a2u,#-1,-(%a1)&,%a7,%acc2 + mac.w %a5l,%d3l,(%a3),%d1,%acc1 + mac.w %a5l,%d3l,(%a3),%d1,%acc2 + mac.w %a5l,%d3l,(%a3),%a3,%acc1 + mac.w %a5l,%d3l,(%a3),%a3,%acc2 + mac.w %a5l,%d3l,(%a3),%d2,%acc1 + mac.w %a5l,%d3l,(%a3),%d2,%acc2 + mac.w %a5l,%d3l,(%a3),%a7,%acc1 + mac.w %a5l,%d3l,(%a3),%a7,%acc2 + mac.w %a5l,%d3l,(%a3)&,%d1,%acc1 + mac.w %a5l,%d3l,(%a3)&,%d1,%acc2 + mac.w %a5l,%d3l,(%a3)&,%a3,%acc1 + mac.w %a5l,%d3l,(%a3)&,%a3,%acc2 + mac.w %a5l,%d3l,(%a3)&,%d2,%acc1 + mac.w %a5l,%d3l,(%a3)&,%d2,%acc2 + mac.w %a5l,%d3l,(%a3)&,%a7,%acc1 + mac.w %a5l,%d3l,(%a3)&,%a7,%acc2 + mac.w %a5l,%d3l,(%a2)+,%d1,%acc1 + mac.w %a5l,%d3l,(%a2)+,%d1,%acc2 + mac.w %a5l,%d3l,(%a2)+,%a3,%acc1 + mac.w %a5l,%d3l,(%a2)+,%a3,%acc2 + mac.w %a5l,%d3l,(%a2)+,%d2,%acc1 + mac.w %a5l,%d3l,(%a2)+,%d2,%acc2 + mac.w %a5l,%d3l,(%a2)+,%a7,%acc1 + mac.w %a5l,%d3l,(%a2)+,%a7,%acc2 + mac.w %a5l,%d3l,(%a2)+&,%d1,%acc1 + mac.w %a5l,%d3l,(%a2)+&,%d1,%acc2 + mac.w %a5l,%d3l,(%a2)+&,%a3,%acc1 + mac.w %a5l,%d3l,(%a2)+&,%a3,%acc2 + mac.w %a5l,%d3l,(%a2)+&,%d2,%acc1 + mac.w %a5l,%d3l,(%a2)+&,%d2,%acc2 + mac.w %a5l,%d3l,(%a2)+&,%a7,%acc1 + mac.w %a5l,%d3l,(%a2)+&,%a7,%acc2 + mac.w %a5l,%d3l,10(%a6),%d1,%acc1 + mac.w %a5l,%d3l,10(%a6),%d1,%acc2 + mac.w %a5l,%d3l,10(%a6),%a3,%acc1 + mac.w %a5l,%d3l,10(%a6),%a3,%acc2 + mac.w %a5l,%d3l,10(%a6),%d2,%acc1 + mac.w %a5l,%d3l,10(%a6),%d2,%acc2 + mac.w %a5l,%d3l,10(%a6),%a7,%acc1 + mac.w %a5l,%d3l,10(%a6),%a7,%acc2 + mac.w %a5l,%d3l,10(%a6)&,%d1,%acc1 + mac.w %a5l,%d3l,10(%a6)&,%d1,%acc2 + mac.w %a5l,%d3l,10(%a6)&,%a3,%acc1 + mac.w %a5l,%d3l,10(%a6)&,%a3,%acc2 + mac.w %a5l,%d3l,10(%a6)&,%d2,%acc1 + mac.w %a5l,%d3l,10(%a6)&,%d2,%acc2 + mac.w %a5l,%d3l,10(%a6)&,%a7,%acc1 + mac.w %a5l,%d3l,10(%a6)&,%a7,%acc2 + mac.w %a5l,%d3l,-(%a1),%d1,%acc1 + mac.w %a5l,%d3l,-(%a1),%d1,%acc2 + mac.w %a5l,%d3l,-(%a1),%a3,%acc1 + mac.w %a5l,%d3l,-(%a1),%a3,%acc2 + mac.w %a5l,%d3l,-(%a1),%d2,%acc1 + mac.w %a5l,%d3l,-(%a1),%d2,%acc2 + mac.w %a5l,%d3l,-(%a1),%a7,%acc1 + mac.w %a5l,%d3l,-(%a1),%a7,%acc2 + mac.w %a5l,%d3l,-(%a1)&,%d1,%acc1 + mac.w %a5l,%d3l,-(%a1)&,%d1,%acc2 + mac.w %a5l,%d3l,-(%a1)&,%a3,%acc1 + mac.w %a5l,%d3l,-(%a1)&,%a3,%acc2 + mac.w %a5l,%d3l,-(%a1)&,%d2,%acc1 + mac.w %a5l,%d3l,-(%a1)&,%d2,%acc2 + mac.w %a5l,%d3l,-(%a1)&,%a7,%acc1 + mac.w %a5l,%d3l,-(%a1)&,%a7,%acc2 + mac.w %a5l,%d3l,<<,(%a3),%d1,%acc1 + mac.w %a5l,%d3l,<<,(%a3),%d1,%acc2 + mac.w %a5l,%d3l,<<,(%a3),%a3,%acc1 + mac.w %a5l,%d3l,<<,(%a3),%a3,%acc2 + mac.w %a5l,%d3l,<<,(%a3),%d2,%acc1 + mac.w %a5l,%d3l,<<,(%a3),%d2,%acc2 + mac.w %a5l,%d3l,<<,(%a3),%a7,%acc1 + mac.w %a5l,%d3l,<<,(%a3),%a7,%acc2 + mac.w %a5l,%d3l,<<,(%a3)&,%d1,%acc1 + mac.w %a5l,%d3l,<<,(%a3)&,%d1,%acc2 + mac.w %a5l,%d3l,<<,(%a3)&,%a3,%acc1 + mac.w %a5l,%d3l,<<,(%a3)&,%a3,%acc2 + mac.w %a5l,%d3l,<<,(%a3)&,%d2,%acc1 + mac.w %a5l,%d3l,<<,(%a3)&,%d2,%acc2 + mac.w %a5l,%d3l,<<,(%a3)&,%a7,%acc1 + mac.w %a5l,%d3l,<<,(%a3)&,%a7,%acc2 + mac.w %a5l,%d3l,<<,(%a2)+,%d1,%acc1 + mac.w %a5l,%d3l,<<,(%a2)+,%d1,%acc2 + mac.w %a5l,%d3l,<<,(%a2)+,%a3,%acc1 + mac.w %a5l,%d3l,<<,(%a2)+,%a3,%acc2 + mac.w %a5l,%d3l,<<,(%a2)+,%d2,%acc1 + mac.w %a5l,%d3l,<<,(%a2)+,%d2,%acc2 + mac.w %a5l,%d3l,<<,(%a2)+,%a7,%acc1 + mac.w %a5l,%d3l,<<,(%a2)+,%a7,%acc2 + mac.w %a5l,%d3l,<<,(%a2)+&,%d1,%acc1 + mac.w %a5l,%d3l,<<,(%a2)+&,%d1,%acc2 + mac.w %a5l,%d3l,<<,(%a2)+&,%a3,%acc1 + mac.w %a5l,%d3l,<<,(%a2)+&,%a3,%acc2 + mac.w %a5l,%d3l,<<,(%a2)+&,%d2,%acc1 + mac.w %a5l,%d3l,<<,(%a2)+&,%d2,%acc2 + mac.w %a5l,%d3l,<<,(%a2)+&,%a7,%acc1 + mac.w %a5l,%d3l,<<,(%a2)+&,%a7,%acc2 + mac.w %a5l,%d3l,<<,10(%a6),%d1,%acc1 + mac.w %a5l,%d3l,<<,10(%a6),%d1,%acc2 + mac.w %a5l,%d3l,<<,10(%a6),%a3,%acc1 + mac.w %a5l,%d3l,<<,10(%a6),%a3,%acc2 + mac.w %a5l,%d3l,<<,10(%a6),%d2,%acc1 + mac.w %a5l,%d3l,<<,10(%a6),%d2,%acc2 + mac.w %a5l,%d3l,<<,10(%a6),%a7,%acc1 + mac.w %a5l,%d3l,<<,10(%a6),%a7,%acc2 + mac.w %a5l,%d3l,<<,10(%a6)&,%d1,%acc1 + mac.w %a5l,%d3l,<<,10(%a6)&,%d1,%acc2 + mac.w %a5l,%d3l,<<,10(%a6)&,%a3,%acc1 + mac.w %a5l,%d3l,<<,10(%a6)&,%a3,%acc2 + mac.w %a5l,%d3l,<<,10(%a6)&,%d2,%acc1 + mac.w %a5l,%d3l,<<,10(%a6)&,%d2,%acc2 + mac.w %a5l,%d3l,<<,10(%a6)&,%a7,%acc1 + mac.w %a5l,%d3l,<<,10(%a6)&,%a7,%acc2 + mac.w %a5l,%d3l,<<,-(%a1),%d1,%acc1 + mac.w %a5l,%d3l,<<,-(%a1),%d1,%acc2 + mac.w %a5l,%d3l,<<,-(%a1),%a3,%acc1 + mac.w %a5l,%d3l,<<,-(%a1),%a3,%acc2 + mac.w %a5l,%d3l,<<,-(%a1),%d2,%acc1 + mac.w %a5l,%d3l,<<,-(%a1),%d2,%acc2 + mac.w %a5l,%d3l,<<,-(%a1),%a7,%acc1 + mac.w %a5l,%d3l,<<,-(%a1),%a7,%acc2 + mac.w %a5l,%d3l,<<,-(%a1)&,%d1,%acc1 + mac.w %a5l,%d3l,<<,-(%a1)&,%d1,%acc2 + mac.w %a5l,%d3l,<<,-(%a1)&,%a3,%acc1 + mac.w %a5l,%d3l,<<,-(%a1)&,%a3,%acc2 + mac.w %a5l,%d3l,<<,-(%a1)&,%d2,%acc1 + mac.w %a5l,%d3l,<<,-(%a1)&,%d2,%acc2 + mac.w %a5l,%d3l,<<,-(%a1)&,%a7,%acc1 + mac.w %a5l,%d3l,<<,-(%a1)&,%a7,%acc2 + mac.w %a5l,%d3l,>>,(%a3),%d1,%acc1 + mac.w %a5l,%d3l,>>,(%a3),%d1,%acc2 + mac.w %a5l,%d3l,>>,(%a3),%a3,%acc1 + mac.w %a5l,%d3l,>>,(%a3),%a3,%acc2 + mac.w %a5l,%d3l,>>,(%a3),%d2,%acc1 + mac.w %a5l,%d3l,>>,(%a3),%d2,%acc2 + mac.w %a5l,%d3l,>>,(%a3),%a7,%acc1 + mac.w %a5l,%d3l,>>,(%a3),%a7,%acc2 + mac.w %a5l,%d3l,>>,(%a3)&,%d1,%acc1 + mac.w %a5l,%d3l,>>,(%a3)&,%d1,%acc2 + mac.w %a5l,%d3l,>>,(%a3)&,%a3,%acc1 + mac.w %a5l,%d3l,>>,(%a3)&,%a3,%acc2 + mac.w %a5l,%d3l,>>,(%a3)&,%d2,%acc1 + mac.w %a5l,%d3l,>>,(%a3)&,%d2,%acc2 + mac.w %a5l,%d3l,>>,(%a3)&,%a7,%acc1 + mac.w %a5l,%d3l,>>,(%a3)&,%a7,%acc2 + mac.w %a5l,%d3l,>>,(%a2)+,%d1,%acc1 + mac.w %a5l,%d3l,>>,(%a2)+,%d1,%acc2 + mac.w %a5l,%d3l,>>,(%a2)+,%a3,%acc1 + mac.w %a5l,%d3l,>>,(%a2)+,%a3,%acc2 + mac.w %a5l,%d3l,>>,(%a2)+,%d2,%acc1 + mac.w %a5l,%d3l,>>,(%a2)+,%d2,%acc2 + mac.w %a5l,%d3l,>>,(%a2)+,%a7,%acc1 + mac.w %a5l,%d3l,>>,(%a2)+,%a7,%acc2 + mac.w %a5l,%d3l,>>,(%a2)+&,%d1,%acc1 + mac.w %a5l,%d3l,>>,(%a2)+&,%d1,%acc2 + mac.w %a5l,%d3l,>>,(%a2)+&,%a3,%acc1 + mac.w %a5l,%d3l,>>,(%a2)+&,%a3,%acc2 + mac.w %a5l,%d3l,>>,(%a2)+&,%d2,%acc1 + mac.w %a5l,%d3l,>>,(%a2)+&,%d2,%acc2 + mac.w %a5l,%d3l,>>,(%a2)+&,%a7,%acc1 + mac.w %a5l,%d3l,>>,(%a2)+&,%a7,%acc2 + mac.w %a5l,%d3l,>>,10(%a6),%d1,%acc1 + mac.w %a5l,%d3l,>>,10(%a6),%d1,%acc2 + mac.w %a5l,%d3l,>>,10(%a6),%a3,%acc1 + mac.w %a5l,%d3l,>>,10(%a6),%a3,%acc2 + mac.w %a5l,%d3l,>>,10(%a6),%d2,%acc1 + mac.w %a5l,%d3l,>>,10(%a6),%d2,%acc2 + mac.w %a5l,%d3l,>>,10(%a6),%a7,%acc1 + mac.w %a5l,%d3l,>>,10(%a6),%a7,%acc2 + mac.w %a5l,%d3l,>>,10(%a6)&,%d1,%acc1 + mac.w %a5l,%d3l,>>,10(%a6)&,%d1,%acc2 + mac.w %a5l,%d3l,>>,10(%a6)&,%a3,%acc1 + mac.w %a5l,%d3l,>>,10(%a6)&,%a3,%acc2 + mac.w %a5l,%d3l,>>,10(%a6)&,%d2,%acc1 + mac.w %a5l,%d3l,>>,10(%a6)&,%d2,%acc2 + mac.w %a5l,%d3l,>>,10(%a6)&,%a7,%acc1 + mac.w %a5l,%d3l,>>,10(%a6)&,%a7,%acc2 + mac.w %a5l,%d3l,>>,-(%a1),%d1,%acc1 + mac.w %a5l,%d3l,>>,-(%a1),%d1,%acc2 + mac.w %a5l,%d3l,>>,-(%a1),%a3,%acc1 + mac.w %a5l,%d3l,>>,-(%a1),%a3,%acc2 + mac.w %a5l,%d3l,>>,-(%a1),%d2,%acc1 + mac.w %a5l,%d3l,>>,-(%a1),%d2,%acc2 + mac.w %a5l,%d3l,>>,-(%a1),%a7,%acc1 + mac.w %a5l,%d3l,>>,-(%a1),%a7,%acc2 + mac.w %a5l,%d3l,>>,-(%a1)&,%d1,%acc1 + mac.w %a5l,%d3l,>>,-(%a1)&,%d1,%acc2 + mac.w %a5l,%d3l,>>,-(%a1)&,%a3,%acc1 + mac.w %a5l,%d3l,>>,-(%a1)&,%a3,%acc2 + mac.w %a5l,%d3l,>>,-(%a1)&,%d2,%acc1 + mac.w %a5l,%d3l,>>,-(%a1)&,%d2,%acc2 + mac.w %a5l,%d3l,>>,-(%a1)&,%a7,%acc1 + mac.w %a5l,%d3l,>>,-(%a1)&,%a7,%acc2 + mac.w %a5l,%d3l,#1,(%a3),%d1,%acc1 + mac.w %a5l,%d3l,#1,(%a3),%d1,%acc2 + mac.w %a5l,%d3l,#1,(%a3),%a3,%acc1 + mac.w %a5l,%d3l,#1,(%a3),%a3,%acc2 + mac.w %a5l,%d3l,#1,(%a3),%d2,%acc1 + mac.w %a5l,%d3l,#1,(%a3),%d2,%acc2 + mac.w %a5l,%d3l,#1,(%a3),%a7,%acc1 + mac.w %a5l,%d3l,#1,(%a3),%a7,%acc2 + mac.w %a5l,%d3l,#1,(%a3)&,%d1,%acc1 + mac.w %a5l,%d3l,#1,(%a3)&,%d1,%acc2 + mac.w %a5l,%d3l,#1,(%a3)&,%a3,%acc1 + mac.w %a5l,%d3l,#1,(%a3)&,%a3,%acc2 + mac.w %a5l,%d3l,#1,(%a3)&,%d2,%acc1 + mac.w %a5l,%d3l,#1,(%a3)&,%d2,%acc2 + mac.w %a5l,%d3l,#1,(%a3)&,%a7,%acc1 + mac.w %a5l,%d3l,#1,(%a3)&,%a7,%acc2 + mac.w %a5l,%d3l,#1,(%a2)+,%d1,%acc1 + mac.w %a5l,%d3l,#1,(%a2)+,%d1,%acc2 + mac.w %a5l,%d3l,#1,(%a2)+,%a3,%acc1 + mac.w %a5l,%d3l,#1,(%a2)+,%a3,%acc2 + mac.w %a5l,%d3l,#1,(%a2)+,%d2,%acc1 + mac.w %a5l,%d3l,#1,(%a2)+,%d2,%acc2 + mac.w %a5l,%d3l,#1,(%a2)+,%a7,%acc1 + mac.w %a5l,%d3l,#1,(%a2)+,%a7,%acc2 + mac.w %a5l,%d3l,#1,(%a2)+&,%d1,%acc1 + mac.w %a5l,%d3l,#1,(%a2)+&,%d1,%acc2 + mac.w %a5l,%d3l,#1,(%a2)+&,%a3,%acc1 + mac.w %a5l,%d3l,#1,(%a2)+&,%a3,%acc2 + mac.w %a5l,%d3l,#1,(%a2)+&,%d2,%acc1 + mac.w %a5l,%d3l,#1,(%a2)+&,%d2,%acc2 + mac.w %a5l,%d3l,#1,(%a2)+&,%a7,%acc1 + mac.w %a5l,%d3l,#1,(%a2)+&,%a7,%acc2 + mac.w %a5l,%d3l,#1,10(%a6),%d1,%acc1 + mac.w %a5l,%d3l,#1,10(%a6),%d1,%acc2 + mac.w %a5l,%d3l,#1,10(%a6),%a3,%acc1 + mac.w %a5l,%d3l,#1,10(%a6),%a3,%acc2 + mac.w %a5l,%d3l,#1,10(%a6),%d2,%acc1 + mac.w %a5l,%d3l,#1,10(%a6),%d2,%acc2 + mac.w %a5l,%d3l,#1,10(%a6),%a7,%acc1 + mac.w %a5l,%d3l,#1,10(%a6),%a7,%acc2 + mac.w %a5l,%d3l,#1,10(%a6)&,%d1,%acc1 + mac.w %a5l,%d3l,#1,10(%a6)&,%d1,%acc2 + mac.w %a5l,%d3l,#1,10(%a6)&,%a3,%acc1 + mac.w %a5l,%d3l,#1,10(%a6)&,%a3,%acc2 + mac.w %a5l,%d3l,#1,10(%a6)&,%d2,%acc1 + mac.w %a5l,%d3l,#1,10(%a6)&,%d2,%acc2 + mac.w %a5l,%d3l,#1,10(%a6)&,%a7,%acc1 + mac.w %a5l,%d3l,#1,10(%a6)&,%a7,%acc2 + mac.w %a5l,%d3l,#1,-(%a1),%d1,%acc1 + mac.w %a5l,%d3l,#1,-(%a1),%d1,%acc2 + mac.w %a5l,%d3l,#1,-(%a1),%a3,%acc1 + mac.w %a5l,%d3l,#1,-(%a1),%a3,%acc2 + mac.w %a5l,%d3l,#1,-(%a1),%d2,%acc1 + mac.w %a5l,%d3l,#1,-(%a1),%d2,%acc2 + mac.w %a5l,%d3l,#1,-(%a1),%a7,%acc1 + mac.w %a5l,%d3l,#1,-(%a1),%a7,%acc2 + mac.w %a5l,%d3l,#1,-(%a1)&,%d1,%acc1 + mac.w %a5l,%d3l,#1,-(%a1)&,%d1,%acc2 + mac.w %a5l,%d3l,#1,-(%a1)&,%a3,%acc1 + mac.w %a5l,%d3l,#1,-(%a1)&,%a3,%acc2 + mac.w %a5l,%d3l,#1,-(%a1)&,%d2,%acc1 + mac.w %a5l,%d3l,#1,-(%a1)&,%d2,%acc2 + mac.w %a5l,%d3l,#1,-(%a1)&,%a7,%acc1 + mac.w %a5l,%d3l,#1,-(%a1)&,%a7,%acc2 + mac.w %a5l,%d3l,#-1,(%a3),%d1,%acc1 + mac.w %a5l,%d3l,#-1,(%a3),%d1,%acc2 + mac.w %a5l,%d3l,#-1,(%a3),%a3,%acc1 + mac.w %a5l,%d3l,#-1,(%a3),%a3,%acc2 + mac.w %a5l,%d3l,#-1,(%a3),%d2,%acc1 + mac.w %a5l,%d3l,#-1,(%a3),%d2,%acc2 + mac.w %a5l,%d3l,#-1,(%a3),%a7,%acc1 + mac.w %a5l,%d3l,#-1,(%a3),%a7,%acc2 + mac.w %a5l,%d3l,#-1,(%a3)&,%d1,%acc1 + mac.w %a5l,%d3l,#-1,(%a3)&,%d1,%acc2 + mac.w %a5l,%d3l,#-1,(%a3)&,%a3,%acc1 + mac.w %a5l,%d3l,#-1,(%a3)&,%a3,%acc2 + mac.w %a5l,%d3l,#-1,(%a3)&,%d2,%acc1 + mac.w %a5l,%d3l,#-1,(%a3)&,%d2,%acc2 + mac.w %a5l,%d3l,#-1,(%a3)&,%a7,%acc1 + mac.w %a5l,%d3l,#-1,(%a3)&,%a7,%acc2 + mac.w %a5l,%d3l,#-1,(%a2)+,%d1,%acc1 + mac.w %a5l,%d3l,#-1,(%a2)+,%d1,%acc2 + mac.w %a5l,%d3l,#-1,(%a2)+,%a3,%acc1 + mac.w %a5l,%d3l,#-1,(%a2)+,%a3,%acc2 + mac.w %a5l,%d3l,#-1,(%a2)+,%d2,%acc1 + mac.w %a5l,%d3l,#-1,(%a2)+,%d2,%acc2 + mac.w %a5l,%d3l,#-1,(%a2)+,%a7,%acc1 + mac.w %a5l,%d3l,#-1,(%a2)+,%a7,%acc2 + mac.w %a5l,%d3l,#-1,(%a2)+&,%d1,%acc1 + mac.w %a5l,%d3l,#-1,(%a2)+&,%d1,%acc2 + mac.w %a5l,%d3l,#-1,(%a2)+&,%a3,%acc1 + mac.w %a5l,%d3l,#-1,(%a2)+&,%a3,%acc2 + mac.w %a5l,%d3l,#-1,(%a2)+&,%d2,%acc1 + mac.w %a5l,%d3l,#-1,(%a2)+&,%d2,%acc2 + mac.w %a5l,%d3l,#-1,(%a2)+&,%a7,%acc1 + mac.w %a5l,%d3l,#-1,(%a2)+&,%a7,%acc2 + mac.w %a5l,%d3l,#-1,10(%a6),%d1,%acc1 + mac.w %a5l,%d3l,#-1,10(%a6),%d1,%acc2 + mac.w %a5l,%d3l,#-1,10(%a6),%a3,%acc1 + mac.w %a5l,%d3l,#-1,10(%a6),%a3,%acc2 + mac.w %a5l,%d3l,#-1,10(%a6),%d2,%acc1 + mac.w %a5l,%d3l,#-1,10(%a6),%d2,%acc2 + mac.w %a5l,%d3l,#-1,10(%a6),%a7,%acc1 + mac.w %a5l,%d3l,#-1,10(%a6),%a7,%acc2 + mac.w %a5l,%d3l,#-1,10(%a6)&,%d1,%acc1 + mac.w %a5l,%d3l,#-1,10(%a6)&,%d1,%acc2 + mac.w %a5l,%d3l,#-1,10(%a6)&,%a3,%acc1 + mac.w %a5l,%d3l,#-1,10(%a6)&,%a3,%acc2 + mac.w %a5l,%d3l,#-1,10(%a6)&,%d2,%acc1 + mac.w %a5l,%d3l,#-1,10(%a6)&,%d2,%acc2 + mac.w %a5l,%d3l,#-1,10(%a6)&,%a7,%acc1 + mac.w %a5l,%d3l,#-1,10(%a6)&,%a7,%acc2 + mac.w %a5l,%d3l,#-1,-(%a1),%d1,%acc1 + mac.w %a5l,%d3l,#-1,-(%a1),%d1,%acc2 + mac.w %a5l,%d3l,#-1,-(%a1),%a3,%acc1 + mac.w %a5l,%d3l,#-1,-(%a1),%a3,%acc2 + mac.w %a5l,%d3l,#-1,-(%a1),%d2,%acc1 + mac.w %a5l,%d3l,#-1,-(%a1),%d2,%acc2 + mac.w %a5l,%d3l,#-1,-(%a1),%a7,%acc1 + mac.w %a5l,%d3l,#-1,-(%a1),%a7,%acc2 + mac.w %a5l,%d3l,#-1,-(%a1)&,%d1,%acc1 + mac.w %a5l,%d3l,#-1,-(%a1)&,%d1,%acc2 + mac.w %a5l,%d3l,#-1,-(%a1)&,%a3,%acc1 + mac.w %a5l,%d3l,#-1,-(%a1)&,%a3,%acc2 + mac.w %a5l,%d3l,#-1,-(%a1)&,%d2,%acc1 + mac.w %a5l,%d3l,#-1,-(%a1)&,%d2,%acc2 + mac.w %a5l,%d3l,#-1,-(%a1)&,%a7,%acc1 + mac.w %a5l,%d3l,#-1,-(%a1)&,%a7,%acc2 + mac.w %a5l,%a7u,(%a3),%d1,%acc1 + mac.w %a5l,%a7u,(%a3),%d1,%acc2 + mac.w %a5l,%a7u,(%a3),%a3,%acc1 + mac.w %a5l,%a7u,(%a3),%a3,%acc2 + mac.w %a5l,%a7u,(%a3),%d2,%acc1 + mac.w %a5l,%a7u,(%a3),%d2,%acc2 + mac.w %a5l,%a7u,(%a3),%a7,%acc1 + mac.w %a5l,%a7u,(%a3),%a7,%acc2 + mac.w %a5l,%a7u,(%a3)&,%d1,%acc1 + mac.w %a5l,%a7u,(%a3)&,%d1,%acc2 + mac.w %a5l,%a7u,(%a3)&,%a3,%acc1 + mac.w %a5l,%a7u,(%a3)&,%a3,%acc2 + mac.w %a5l,%a7u,(%a3)&,%d2,%acc1 + mac.w %a5l,%a7u,(%a3)&,%d2,%acc2 + mac.w %a5l,%a7u,(%a3)&,%a7,%acc1 + mac.w %a5l,%a7u,(%a3)&,%a7,%acc2 + mac.w %a5l,%a7u,(%a2)+,%d1,%acc1 + mac.w %a5l,%a7u,(%a2)+,%d1,%acc2 + mac.w %a5l,%a7u,(%a2)+,%a3,%acc1 + mac.w %a5l,%a7u,(%a2)+,%a3,%acc2 + mac.w %a5l,%a7u,(%a2)+,%d2,%acc1 + mac.w %a5l,%a7u,(%a2)+,%d2,%acc2 + mac.w %a5l,%a7u,(%a2)+,%a7,%acc1 + mac.w %a5l,%a7u,(%a2)+,%a7,%acc2 + mac.w %a5l,%a7u,(%a2)+&,%d1,%acc1 + mac.w %a5l,%a7u,(%a2)+&,%d1,%acc2 + mac.w %a5l,%a7u,(%a2)+&,%a3,%acc1 + mac.w %a5l,%a7u,(%a2)+&,%a3,%acc2 + mac.w %a5l,%a7u,(%a2)+&,%d2,%acc1 + mac.w %a5l,%a7u,(%a2)+&,%d2,%acc2 + mac.w %a5l,%a7u,(%a2)+&,%a7,%acc1 + mac.w %a5l,%a7u,(%a2)+&,%a7,%acc2 + mac.w %a5l,%a7u,10(%a6),%d1,%acc1 + mac.w %a5l,%a7u,10(%a6),%d1,%acc2 + mac.w %a5l,%a7u,10(%a6),%a3,%acc1 + mac.w %a5l,%a7u,10(%a6),%a3,%acc2 + mac.w %a5l,%a7u,10(%a6),%d2,%acc1 + mac.w %a5l,%a7u,10(%a6),%d2,%acc2 + mac.w %a5l,%a7u,10(%a6),%a7,%acc1 + mac.w %a5l,%a7u,10(%a6),%a7,%acc2 + mac.w %a5l,%a7u,10(%a6)&,%d1,%acc1 + mac.w %a5l,%a7u,10(%a6)&,%d1,%acc2 + mac.w %a5l,%a7u,10(%a6)&,%a3,%acc1 + mac.w %a5l,%a7u,10(%a6)&,%a3,%acc2 + mac.w %a5l,%a7u,10(%a6)&,%d2,%acc1 + mac.w %a5l,%a7u,10(%a6)&,%d2,%acc2 + mac.w %a5l,%a7u,10(%a6)&,%a7,%acc1 + mac.w %a5l,%a7u,10(%a6)&,%a7,%acc2 + mac.w %a5l,%a7u,-(%a1),%d1,%acc1 + mac.w %a5l,%a7u,-(%a1),%d1,%acc2 + mac.w %a5l,%a7u,-(%a1),%a3,%acc1 + mac.w %a5l,%a7u,-(%a1),%a3,%acc2 + mac.w %a5l,%a7u,-(%a1),%d2,%acc1 + mac.w %a5l,%a7u,-(%a1),%d2,%acc2 + mac.w %a5l,%a7u,-(%a1),%a7,%acc1 + mac.w %a5l,%a7u,-(%a1),%a7,%acc2 + mac.w %a5l,%a7u,-(%a1)&,%d1,%acc1 + mac.w %a5l,%a7u,-(%a1)&,%d1,%acc2 + mac.w %a5l,%a7u,-(%a1)&,%a3,%acc1 + mac.w %a5l,%a7u,-(%a1)&,%a3,%acc2 + mac.w %a5l,%a7u,-(%a1)&,%d2,%acc1 + mac.w %a5l,%a7u,-(%a1)&,%d2,%acc2 + mac.w %a5l,%a7u,-(%a1)&,%a7,%acc1 + mac.w %a5l,%a7u,-(%a1)&,%a7,%acc2 + mac.w %a5l,%a7u,<<,(%a3),%d1,%acc1 + mac.w %a5l,%a7u,<<,(%a3),%d1,%acc2 + mac.w %a5l,%a7u,<<,(%a3),%a3,%acc1 + mac.w %a5l,%a7u,<<,(%a3),%a3,%acc2 + mac.w %a5l,%a7u,<<,(%a3),%d2,%acc1 + mac.w %a5l,%a7u,<<,(%a3),%d2,%acc2 + mac.w %a5l,%a7u,<<,(%a3),%a7,%acc1 + mac.w %a5l,%a7u,<<,(%a3),%a7,%acc2 + mac.w %a5l,%a7u,<<,(%a3)&,%d1,%acc1 + mac.w %a5l,%a7u,<<,(%a3)&,%d1,%acc2 + mac.w %a5l,%a7u,<<,(%a3)&,%a3,%acc1 + mac.w %a5l,%a7u,<<,(%a3)&,%a3,%acc2 + mac.w %a5l,%a7u,<<,(%a3)&,%d2,%acc1 + mac.w %a5l,%a7u,<<,(%a3)&,%d2,%acc2 + mac.w %a5l,%a7u,<<,(%a3)&,%a7,%acc1 + mac.w %a5l,%a7u,<<,(%a3)&,%a7,%acc2 + mac.w %a5l,%a7u,<<,(%a2)+,%d1,%acc1 + mac.w %a5l,%a7u,<<,(%a2)+,%d1,%acc2 + mac.w %a5l,%a7u,<<,(%a2)+,%a3,%acc1 + mac.w %a5l,%a7u,<<,(%a2)+,%a3,%acc2 + mac.w %a5l,%a7u,<<,(%a2)+,%d2,%acc1 + mac.w %a5l,%a7u,<<,(%a2)+,%d2,%acc2 + mac.w %a5l,%a7u,<<,(%a2)+,%a7,%acc1 + mac.w %a5l,%a7u,<<,(%a2)+,%a7,%acc2 + mac.w %a5l,%a7u,<<,(%a2)+&,%d1,%acc1 + mac.w %a5l,%a7u,<<,(%a2)+&,%d1,%acc2 + mac.w %a5l,%a7u,<<,(%a2)+&,%a3,%acc1 + mac.w %a5l,%a7u,<<,(%a2)+&,%a3,%acc2 + mac.w %a5l,%a7u,<<,(%a2)+&,%d2,%acc1 + mac.w %a5l,%a7u,<<,(%a2)+&,%d2,%acc2 + mac.w %a5l,%a7u,<<,(%a2)+&,%a7,%acc1 + mac.w %a5l,%a7u,<<,(%a2)+&,%a7,%acc2 + mac.w %a5l,%a7u,<<,10(%a6),%d1,%acc1 + mac.w %a5l,%a7u,<<,10(%a6),%d1,%acc2 + mac.w %a5l,%a7u,<<,10(%a6),%a3,%acc1 + mac.w %a5l,%a7u,<<,10(%a6),%a3,%acc2 + mac.w %a5l,%a7u,<<,10(%a6),%d2,%acc1 + mac.w %a5l,%a7u,<<,10(%a6),%d2,%acc2 + mac.w %a5l,%a7u,<<,10(%a6),%a7,%acc1 + mac.w %a5l,%a7u,<<,10(%a6),%a7,%acc2 + mac.w %a5l,%a7u,<<,10(%a6)&,%d1,%acc1 + mac.w %a5l,%a7u,<<,10(%a6)&,%d1,%acc2 + mac.w %a5l,%a7u,<<,10(%a6)&,%a3,%acc1 + mac.w %a5l,%a7u,<<,10(%a6)&,%a3,%acc2 + mac.w %a5l,%a7u,<<,10(%a6)&,%d2,%acc1 + mac.w %a5l,%a7u,<<,10(%a6)&,%d2,%acc2 + mac.w %a5l,%a7u,<<,10(%a6)&,%a7,%acc1 + mac.w %a5l,%a7u,<<,10(%a6)&,%a7,%acc2 + mac.w %a5l,%a7u,<<,-(%a1),%d1,%acc1 + mac.w %a5l,%a7u,<<,-(%a1),%d1,%acc2 + mac.w %a5l,%a7u,<<,-(%a1),%a3,%acc1 + mac.w %a5l,%a7u,<<,-(%a1),%a3,%acc2 + mac.w %a5l,%a7u,<<,-(%a1),%d2,%acc1 + mac.w %a5l,%a7u,<<,-(%a1),%d2,%acc2 + mac.w %a5l,%a7u,<<,-(%a1),%a7,%acc1 + mac.w %a5l,%a7u,<<,-(%a1),%a7,%acc2 + mac.w %a5l,%a7u,<<,-(%a1)&,%d1,%acc1 + mac.w %a5l,%a7u,<<,-(%a1)&,%d1,%acc2 + mac.w %a5l,%a7u,<<,-(%a1)&,%a3,%acc1 + mac.w %a5l,%a7u,<<,-(%a1)&,%a3,%acc2 + mac.w %a5l,%a7u,<<,-(%a1)&,%d2,%acc1 + mac.w %a5l,%a7u,<<,-(%a1)&,%d2,%acc2 + mac.w %a5l,%a7u,<<,-(%a1)&,%a7,%acc1 + mac.w %a5l,%a7u,<<,-(%a1)&,%a7,%acc2 + mac.w %a5l,%a7u,>>,(%a3),%d1,%acc1 + mac.w %a5l,%a7u,>>,(%a3),%d1,%acc2 + mac.w %a5l,%a7u,>>,(%a3),%a3,%acc1 + mac.w %a5l,%a7u,>>,(%a3),%a3,%acc2 + mac.w %a5l,%a7u,>>,(%a3),%d2,%acc1 + mac.w %a5l,%a7u,>>,(%a3),%d2,%acc2 + mac.w %a5l,%a7u,>>,(%a3),%a7,%acc1 + mac.w %a5l,%a7u,>>,(%a3),%a7,%acc2 + mac.w %a5l,%a7u,>>,(%a3)&,%d1,%acc1 + mac.w %a5l,%a7u,>>,(%a3)&,%d1,%acc2 + mac.w %a5l,%a7u,>>,(%a3)&,%a3,%acc1 + mac.w %a5l,%a7u,>>,(%a3)&,%a3,%acc2 + mac.w %a5l,%a7u,>>,(%a3)&,%d2,%acc1 + mac.w %a5l,%a7u,>>,(%a3)&,%d2,%acc2 + mac.w %a5l,%a7u,>>,(%a3)&,%a7,%acc1 + mac.w %a5l,%a7u,>>,(%a3)&,%a7,%acc2 + mac.w %a5l,%a7u,>>,(%a2)+,%d1,%acc1 + mac.w %a5l,%a7u,>>,(%a2)+,%d1,%acc2 + mac.w %a5l,%a7u,>>,(%a2)+,%a3,%acc1 + mac.w %a5l,%a7u,>>,(%a2)+,%a3,%acc2 + mac.w %a5l,%a7u,>>,(%a2)+,%d2,%acc1 + mac.w %a5l,%a7u,>>,(%a2)+,%d2,%acc2 + mac.w %a5l,%a7u,>>,(%a2)+,%a7,%acc1 + mac.w %a5l,%a7u,>>,(%a2)+,%a7,%acc2 + mac.w %a5l,%a7u,>>,(%a2)+&,%d1,%acc1 + mac.w %a5l,%a7u,>>,(%a2)+&,%d1,%acc2 + mac.w %a5l,%a7u,>>,(%a2)+&,%a3,%acc1 + mac.w %a5l,%a7u,>>,(%a2)+&,%a3,%acc2 + mac.w %a5l,%a7u,>>,(%a2)+&,%d2,%acc1 + mac.w %a5l,%a7u,>>,(%a2)+&,%d2,%acc2 + mac.w %a5l,%a7u,>>,(%a2)+&,%a7,%acc1 + mac.w %a5l,%a7u,>>,(%a2)+&,%a7,%acc2 + mac.w %a5l,%a7u,>>,10(%a6),%d1,%acc1 + mac.w %a5l,%a7u,>>,10(%a6),%d1,%acc2 + mac.w %a5l,%a7u,>>,10(%a6),%a3,%acc1 + mac.w %a5l,%a7u,>>,10(%a6),%a3,%acc2 + mac.w %a5l,%a7u,>>,10(%a6),%d2,%acc1 + mac.w %a5l,%a7u,>>,10(%a6),%d2,%acc2 + mac.w %a5l,%a7u,>>,10(%a6),%a7,%acc1 + mac.w %a5l,%a7u,>>,10(%a6),%a7,%acc2 + mac.w %a5l,%a7u,>>,10(%a6)&,%d1,%acc1 + mac.w %a5l,%a7u,>>,10(%a6)&,%d1,%acc2 + mac.w %a5l,%a7u,>>,10(%a6)&,%a3,%acc1 + mac.w %a5l,%a7u,>>,10(%a6)&,%a3,%acc2 + mac.w %a5l,%a7u,>>,10(%a6)&,%d2,%acc1 + mac.w %a5l,%a7u,>>,10(%a6)&,%d2,%acc2 + mac.w %a5l,%a7u,>>,10(%a6)&,%a7,%acc1 + mac.w %a5l,%a7u,>>,10(%a6)&,%a7,%acc2 + mac.w %a5l,%a7u,>>,-(%a1),%d1,%acc1 + mac.w %a5l,%a7u,>>,-(%a1),%d1,%acc2 + mac.w %a5l,%a7u,>>,-(%a1),%a3,%acc1 + mac.w %a5l,%a7u,>>,-(%a1),%a3,%acc2 + mac.w %a5l,%a7u,>>,-(%a1),%d2,%acc1 + mac.w %a5l,%a7u,>>,-(%a1),%d2,%acc2 + mac.w %a5l,%a7u,>>,-(%a1),%a7,%acc1 + mac.w %a5l,%a7u,>>,-(%a1),%a7,%acc2 + mac.w %a5l,%a7u,>>,-(%a1)&,%d1,%acc1 + mac.w %a5l,%a7u,>>,-(%a1)&,%d1,%acc2 + mac.w %a5l,%a7u,>>,-(%a1)&,%a3,%acc1 + mac.w %a5l,%a7u,>>,-(%a1)&,%a3,%acc2 + mac.w %a5l,%a7u,>>,-(%a1)&,%d2,%acc1 + mac.w %a5l,%a7u,>>,-(%a1)&,%d2,%acc2 + mac.w %a5l,%a7u,>>,-(%a1)&,%a7,%acc1 + mac.w %a5l,%a7u,>>,-(%a1)&,%a7,%acc2 + mac.w %a5l,%a7u,#1,(%a3),%d1,%acc1 + mac.w %a5l,%a7u,#1,(%a3),%d1,%acc2 + mac.w %a5l,%a7u,#1,(%a3),%a3,%acc1 + mac.w %a5l,%a7u,#1,(%a3),%a3,%acc2 + mac.w %a5l,%a7u,#1,(%a3),%d2,%acc1 + mac.w %a5l,%a7u,#1,(%a3),%d2,%acc2 + mac.w %a5l,%a7u,#1,(%a3),%a7,%acc1 + mac.w %a5l,%a7u,#1,(%a3),%a7,%acc2 + mac.w %a5l,%a7u,#1,(%a3)&,%d1,%acc1 + mac.w %a5l,%a7u,#1,(%a3)&,%d1,%acc2 + mac.w %a5l,%a7u,#1,(%a3)&,%a3,%acc1 + mac.w %a5l,%a7u,#1,(%a3)&,%a3,%acc2 + mac.w %a5l,%a7u,#1,(%a3)&,%d2,%acc1 + mac.w %a5l,%a7u,#1,(%a3)&,%d2,%acc2 + mac.w %a5l,%a7u,#1,(%a3)&,%a7,%acc1 + mac.w %a5l,%a7u,#1,(%a3)&,%a7,%acc2 + mac.w %a5l,%a7u,#1,(%a2)+,%d1,%acc1 + mac.w %a5l,%a7u,#1,(%a2)+,%d1,%acc2 + mac.w %a5l,%a7u,#1,(%a2)+,%a3,%acc1 + mac.w %a5l,%a7u,#1,(%a2)+,%a3,%acc2 + mac.w %a5l,%a7u,#1,(%a2)+,%d2,%acc1 + mac.w %a5l,%a7u,#1,(%a2)+,%d2,%acc2 + mac.w %a5l,%a7u,#1,(%a2)+,%a7,%acc1 + mac.w %a5l,%a7u,#1,(%a2)+,%a7,%acc2 + mac.w %a5l,%a7u,#1,(%a2)+&,%d1,%acc1 + mac.w %a5l,%a7u,#1,(%a2)+&,%d1,%acc2 + mac.w %a5l,%a7u,#1,(%a2)+&,%a3,%acc1 + mac.w %a5l,%a7u,#1,(%a2)+&,%a3,%acc2 + mac.w %a5l,%a7u,#1,(%a2)+&,%d2,%acc1 + mac.w %a5l,%a7u,#1,(%a2)+&,%d2,%acc2 + mac.w %a5l,%a7u,#1,(%a2)+&,%a7,%acc1 + mac.w %a5l,%a7u,#1,(%a2)+&,%a7,%acc2 + mac.w %a5l,%a7u,#1,10(%a6),%d1,%acc1 + mac.w %a5l,%a7u,#1,10(%a6),%d1,%acc2 + mac.w %a5l,%a7u,#1,10(%a6),%a3,%acc1 + mac.w %a5l,%a7u,#1,10(%a6),%a3,%acc2 + mac.w %a5l,%a7u,#1,10(%a6),%d2,%acc1 + mac.w %a5l,%a7u,#1,10(%a6),%d2,%acc2 + mac.w %a5l,%a7u,#1,10(%a6),%a7,%acc1 + mac.w %a5l,%a7u,#1,10(%a6),%a7,%acc2 + mac.w %a5l,%a7u,#1,10(%a6)&,%d1,%acc1 + mac.w %a5l,%a7u,#1,10(%a6)&,%d1,%acc2 + mac.w %a5l,%a7u,#1,10(%a6)&,%a3,%acc1 + mac.w %a5l,%a7u,#1,10(%a6)&,%a3,%acc2 + mac.w %a5l,%a7u,#1,10(%a6)&,%d2,%acc1 + mac.w %a5l,%a7u,#1,10(%a6)&,%d2,%acc2 + mac.w %a5l,%a7u,#1,10(%a6)&,%a7,%acc1 + mac.w %a5l,%a7u,#1,10(%a6)&,%a7,%acc2 + mac.w %a5l,%a7u,#1,-(%a1),%d1,%acc1 + mac.w %a5l,%a7u,#1,-(%a1),%d1,%acc2 + mac.w %a5l,%a7u,#1,-(%a1),%a3,%acc1 + mac.w %a5l,%a7u,#1,-(%a1),%a3,%acc2 + mac.w %a5l,%a7u,#1,-(%a1),%d2,%acc1 + mac.w %a5l,%a7u,#1,-(%a1),%d2,%acc2 + mac.w %a5l,%a7u,#1,-(%a1),%a7,%acc1 + mac.w %a5l,%a7u,#1,-(%a1),%a7,%acc2 + mac.w %a5l,%a7u,#1,-(%a1)&,%d1,%acc1 + mac.w %a5l,%a7u,#1,-(%a1)&,%d1,%acc2 + mac.w %a5l,%a7u,#1,-(%a1)&,%a3,%acc1 + mac.w %a5l,%a7u,#1,-(%a1)&,%a3,%acc2 + mac.w %a5l,%a7u,#1,-(%a1)&,%d2,%acc1 + mac.w %a5l,%a7u,#1,-(%a1)&,%d2,%acc2 + mac.w %a5l,%a7u,#1,-(%a1)&,%a7,%acc1 + mac.w %a5l,%a7u,#1,-(%a1)&,%a7,%acc2 + mac.w %a5l,%a7u,#-1,(%a3),%d1,%acc1 + mac.w %a5l,%a7u,#-1,(%a3),%d1,%acc2 + mac.w %a5l,%a7u,#-1,(%a3),%a3,%acc1 + mac.w %a5l,%a7u,#-1,(%a3),%a3,%acc2 + mac.w %a5l,%a7u,#-1,(%a3),%d2,%acc1 + mac.w %a5l,%a7u,#-1,(%a3),%d2,%acc2 + mac.w %a5l,%a7u,#-1,(%a3),%a7,%acc1 + mac.w %a5l,%a7u,#-1,(%a3),%a7,%acc2 + mac.w %a5l,%a7u,#-1,(%a3)&,%d1,%acc1 + mac.w %a5l,%a7u,#-1,(%a3)&,%d1,%acc2 + mac.w %a5l,%a7u,#-1,(%a3)&,%a3,%acc1 + mac.w %a5l,%a7u,#-1,(%a3)&,%a3,%acc2 + mac.w %a5l,%a7u,#-1,(%a3)&,%d2,%acc1 + mac.w %a5l,%a7u,#-1,(%a3)&,%d2,%acc2 + mac.w %a5l,%a7u,#-1,(%a3)&,%a7,%acc1 + mac.w %a5l,%a7u,#-1,(%a3)&,%a7,%acc2 + mac.w %a5l,%a7u,#-1,(%a2)+,%d1,%acc1 + mac.w %a5l,%a7u,#-1,(%a2)+,%d1,%acc2 + mac.w %a5l,%a7u,#-1,(%a2)+,%a3,%acc1 + mac.w %a5l,%a7u,#-1,(%a2)+,%a3,%acc2 + mac.w %a5l,%a7u,#-1,(%a2)+,%d2,%acc1 + mac.w %a5l,%a7u,#-1,(%a2)+,%d2,%acc2 + mac.w %a5l,%a7u,#-1,(%a2)+,%a7,%acc1 + mac.w %a5l,%a7u,#-1,(%a2)+,%a7,%acc2 + mac.w %a5l,%a7u,#-1,(%a2)+&,%d1,%acc1 + mac.w %a5l,%a7u,#-1,(%a2)+&,%d1,%acc2 + mac.w %a5l,%a7u,#-1,(%a2)+&,%a3,%acc1 + mac.w %a5l,%a7u,#-1,(%a2)+&,%a3,%acc2 + mac.w %a5l,%a7u,#-1,(%a2)+&,%d2,%acc1 + mac.w %a5l,%a7u,#-1,(%a2)+&,%d2,%acc2 + mac.w %a5l,%a7u,#-1,(%a2)+&,%a7,%acc1 + mac.w %a5l,%a7u,#-1,(%a2)+&,%a7,%acc2 + mac.w %a5l,%a7u,#-1,10(%a6),%d1,%acc1 + mac.w %a5l,%a7u,#-1,10(%a6),%d1,%acc2 + mac.w %a5l,%a7u,#-1,10(%a6),%a3,%acc1 + mac.w %a5l,%a7u,#-1,10(%a6),%a3,%acc2 + mac.w %a5l,%a7u,#-1,10(%a6),%d2,%acc1 + mac.w %a5l,%a7u,#-1,10(%a6),%d2,%acc2 + mac.w %a5l,%a7u,#-1,10(%a6),%a7,%acc1 + mac.w %a5l,%a7u,#-1,10(%a6),%a7,%acc2 + mac.w %a5l,%a7u,#-1,10(%a6)&,%d1,%acc1 + mac.w %a5l,%a7u,#-1,10(%a6)&,%d1,%acc2 + mac.w %a5l,%a7u,#-1,10(%a6)&,%a3,%acc1 + mac.w %a5l,%a7u,#-1,10(%a6)&,%a3,%acc2 + mac.w %a5l,%a7u,#-1,10(%a6)&,%d2,%acc1 + mac.w %a5l,%a7u,#-1,10(%a6)&,%d2,%acc2 + mac.w %a5l,%a7u,#-1,10(%a6)&,%a7,%acc1 + mac.w %a5l,%a7u,#-1,10(%a6)&,%a7,%acc2 + mac.w %a5l,%a7u,#-1,-(%a1),%d1,%acc1 + mac.w %a5l,%a7u,#-1,-(%a1),%d1,%acc2 + mac.w %a5l,%a7u,#-1,-(%a1),%a3,%acc1 + mac.w %a5l,%a7u,#-1,-(%a1),%a3,%acc2 + mac.w %a5l,%a7u,#-1,-(%a1),%d2,%acc1 + mac.w %a5l,%a7u,#-1,-(%a1),%d2,%acc2 + mac.w %a5l,%a7u,#-1,-(%a1),%a7,%acc1 + mac.w %a5l,%a7u,#-1,-(%a1),%a7,%acc2 + mac.w %a5l,%a7u,#-1,-(%a1)&,%d1,%acc1 + mac.w %a5l,%a7u,#-1,-(%a1)&,%d1,%acc2 + mac.w %a5l,%a7u,#-1,-(%a1)&,%a3,%acc1 + mac.w %a5l,%a7u,#-1,-(%a1)&,%a3,%acc2 + mac.w %a5l,%a7u,#-1,-(%a1)&,%d2,%acc1 + mac.w %a5l,%a7u,#-1,-(%a1)&,%d2,%acc2 + mac.w %a5l,%a7u,#-1,-(%a1)&,%a7,%acc1 + mac.w %a5l,%a7u,#-1,-(%a1)&,%a7,%acc2 + mac.w %a5l,%d1l,(%a3),%d1,%acc1 + mac.w %a5l,%d1l,(%a3),%d1,%acc2 + mac.w %a5l,%d1l,(%a3),%a3,%acc1 + mac.w %a5l,%d1l,(%a3),%a3,%acc2 + mac.w %a5l,%d1l,(%a3),%d2,%acc1 + mac.w %a5l,%d1l,(%a3),%d2,%acc2 + mac.w %a5l,%d1l,(%a3),%a7,%acc1 + mac.w %a5l,%d1l,(%a3),%a7,%acc2 + mac.w %a5l,%d1l,(%a3)&,%d1,%acc1 + mac.w %a5l,%d1l,(%a3)&,%d1,%acc2 + mac.w %a5l,%d1l,(%a3)&,%a3,%acc1 + mac.w %a5l,%d1l,(%a3)&,%a3,%acc2 + mac.w %a5l,%d1l,(%a3)&,%d2,%acc1 + mac.w %a5l,%d1l,(%a3)&,%d2,%acc2 + mac.w %a5l,%d1l,(%a3)&,%a7,%acc1 + mac.w %a5l,%d1l,(%a3)&,%a7,%acc2 + mac.w %a5l,%d1l,(%a2)+,%d1,%acc1 + mac.w %a5l,%d1l,(%a2)+,%d1,%acc2 + mac.w %a5l,%d1l,(%a2)+,%a3,%acc1 + mac.w %a5l,%d1l,(%a2)+,%a3,%acc2 + mac.w %a5l,%d1l,(%a2)+,%d2,%acc1 + mac.w %a5l,%d1l,(%a2)+,%d2,%acc2 + mac.w %a5l,%d1l,(%a2)+,%a7,%acc1 + mac.w %a5l,%d1l,(%a2)+,%a7,%acc2 + mac.w %a5l,%d1l,(%a2)+&,%d1,%acc1 + mac.w %a5l,%d1l,(%a2)+&,%d1,%acc2 + mac.w %a5l,%d1l,(%a2)+&,%a3,%acc1 + mac.w %a5l,%d1l,(%a2)+&,%a3,%acc2 + mac.w %a5l,%d1l,(%a2)+&,%d2,%acc1 + mac.w %a5l,%d1l,(%a2)+&,%d2,%acc2 + mac.w %a5l,%d1l,(%a2)+&,%a7,%acc1 + mac.w %a5l,%d1l,(%a2)+&,%a7,%acc2 + mac.w %a5l,%d1l,10(%a6),%d1,%acc1 + mac.w %a5l,%d1l,10(%a6),%d1,%acc2 + mac.w %a5l,%d1l,10(%a6),%a3,%acc1 + mac.w %a5l,%d1l,10(%a6),%a3,%acc2 + mac.w %a5l,%d1l,10(%a6),%d2,%acc1 + mac.w %a5l,%d1l,10(%a6),%d2,%acc2 + mac.w %a5l,%d1l,10(%a6),%a7,%acc1 + mac.w %a5l,%d1l,10(%a6),%a7,%acc2 + mac.w %a5l,%d1l,10(%a6)&,%d1,%acc1 + mac.w %a5l,%d1l,10(%a6)&,%d1,%acc2 + mac.w %a5l,%d1l,10(%a6)&,%a3,%acc1 + mac.w %a5l,%d1l,10(%a6)&,%a3,%acc2 + mac.w %a5l,%d1l,10(%a6)&,%d2,%acc1 + mac.w %a5l,%d1l,10(%a6)&,%d2,%acc2 + mac.w %a5l,%d1l,10(%a6)&,%a7,%acc1 + mac.w %a5l,%d1l,10(%a6)&,%a7,%acc2 + mac.w %a5l,%d1l,-(%a1),%d1,%acc1 + mac.w %a5l,%d1l,-(%a1),%d1,%acc2 + mac.w %a5l,%d1l,-(%a1),%a3,%acc1 + mac.w %a5l,%d1l,-(%a1),%a3,%acc2 + mac.w %a5l,%d1l,-(%a1),%d2,%acc1 + mac.w %a5l,%d1l,-(%a1),%d2,%acc2 + mac.w %a5l,%d1l,-(%a1),%a7,%acc1 + mac.w %a5l,%d1l,-(%a1),%a7,%acc2 + mac.w %a5l,%d1l,-(%a1)&,%d1,%acc1 + mac.w %a5l,%d1l,-(%a1)&,%d1,%acc2 + mac.w %a5l,%d1l,-(%a1)&,%a3,%acc1 + mac.w %a5l,%d1l,-(%a1)&,%a3,%acc2 + mac.w %a5l,%d1l,-(%a1)&,%d2,%acc1 + mac.w %a5l,%d1l,-(%a1)&,%d2,%acc2 + mac.w %a5l,%d1l,-(%a1)&,%a7,%acc1 + mac.w %a5l,%d1l,-(%a1)&,%a7,%acc2 + mac.w %a5l,%d1l,<<,(%a3),%d1,%acc1 + mac.w %a5l,%d1l,<<,(%a3),%d1,%acc2 + mac.w %a5l,%d1l,<<,(%a3),%a3,%acc1 + mac.w %a5l,%d1l,<<,(%a3),%a3,%acc2 + mac.w %a5l,%d1l,<<,(%a3),%d2,%acc1 + mac.w %a5l,%d1l,<<,(%a3),%d2,%acc2 + mac.w %a5l,%d1l,<<,(%a3),%a7,%acc1 + mac.w %a5l,%d1l,<<,(%a3),%a7,%acc2 + mac.w %a5l,%d1l,<<,(%a3)&,%d1,%acc1 + mac.w %a5l,%d1l,<<,(%a3)&,%d1,%acc2 + mac.w %a5l,%d1l,<<,(%a3)&,%a3,%acc1 + mac.w %a5l,%d1l,<<,(%a3)&,%a3,%acc2 + mac.w %a5l,%d1l,<<,(%a3)&,%d2,%acc1 + mac.w %a5l,%d1l,<<,(%a3)&,%d2,%acc2 + mac.w %a5l,%d1l,<<,(%a3)&,%a7,%acc1 + mac.w %a5l,%d1l,<<,(%a3)&,%a7,%acc2 + mac.w %a5l,%d1l,<<,(%a2)+,%d1,%acc1 + mac.w %a5l,%d1l,<<,(%a2)+,%d1,%acc2 + mac.w %a5l,%d1l,<<,(%a2)+,%a3,%acc1 + mac.w %a5l,%d1l,<<,(%a2)+,%a3,%acc2 + mac.w %a5l,%d1l,<<,(%a2)+,%d2,%acc1 + mac.w %a5l,%d1l,<<,(%a2)+,%d2,%acc2 + mac.w %a5l,%d1l,<<,(%a2)+,%a7,%acc1 + mac.w %a5l,%d1l,<<,(%a2)+,%a7,%acc2 + mac.w %a5l,%d1l,<<,(%a2)+&,%d1,%acc1 + mac.w %a5l,%d1l,<<,(%a2)+&,%d1,%acc2 + mac.w %a5l,%d1l,<<,(%a2)+&,%a3,%acc1 + mac.w %a5l,%d1l,<<,(%a2)+&,%a3,%acc2 + mac.w %a5l,%d1l,<<,(%a2)+&,%d2,%acc1 + mac.w %a5l,%d1l,<<,(%a2)+&,%d2,%acc2 + mac.w %a5l,%d1l,<<,(%a2)+&,%a7,%acc1 + mac.w %a5l,%d1l,<<,(%a2)+&,%a7,%acc2 + mac.w %a5l,%d1l,<<,10(%a6),%d1,%acc1 + mac.w %a5l,%d1l,<<,10(%a6),%d1,%acc2 + mac.w %a5l,%d1l,<<,10(%a6),%a3,%acc1 + mac.w %a5l,%d1l,<<,10(%a6),%a3,%acc2 + mac.w %a5l,%d1l,<<,10(%a6),%d2,%acc1 + mac.w %a5l,%d1l,<<,10(%a6),%d2,%acc2 + mac.w %a5l,%d1l,<<,10(%a6),%a7,%acc1 + mac.w %a5l,%d1l,<<,10(%a6),%a7,%acc2 + mac.w %a5l,%d1l,<<,10(%a6)&,%d1,%acc1 + mac.w %a5l,%d1l,<<,10(%a6)&,%d1,%acc2 + mac.w %a5l,%d1l,<<,10(%a6)&,%a3,%acc1 + mac.w %a5l,%d1l,<<,10(%a6)&,%a3,%acc2 + mac.w %a5l,%d1l,<<,10(%a6)&,%d2,%acc1 + mac.w %a5l,%d1l,<<,10(%a6)&,%d2,%acc2 + mac.w %a5l,%d1l,<<,10(%a6)&,%a7,%acc1 + mac.w %a5l,%d1l,<<,10(%a6)&,%a7,%acc2 + mac.w %a5l,%d1l,<<,-(%a1),%d1,%acc1 + mac.w %a5l,%d1l,<<,-(%a1),%d1,%acc2 + mac.w %a5l,%d1l,<<,-(%a1),%a3,%acc1 + mac.w %a5l,%d1l,<<,-(%a1),%a3,%acc2 + mac.w %a5l,%d1l,<<,-(%a1),%d2,%acc1 + mac.w %a5l,%d1l,<<,-(%a1),%d2,%acc2 + mac.w %a5l,%d1l,<<,-(%a1),%a7,%acc1 + mac.w %a5l,%d1l,<<,-(%a1),%a7,%acc2 + mac.w %a5l,%d1l,<<,-(%a1)&,%d1,%acc1 + mac.w %a5l,%d1l,<<,-(%a1)&,%d1,%acc2 + mac.w %a5l,%d1l,<<,-(%a1)&,%a3,%acc1 + mac.w %a5l,%d1l,<<,-(%a1)&,%a3,%acc2 + mac.w %a5l,%d1l,<<,-(%a1)&,%d2,%acc1 + mac.w %a5l,%d1l,<<,-(%a1)&,%d2,%acc2 + mac.w %a5l,%d1l,<<,-(%a1)&,%a7,%acc1 + mac.w %a5l,%d1l,<<,-(%a1)&,%a7,%acc2 + mac.w %a5l,%d1l,>>,(%a3),%d1,%acc1 + mac.w %a5l,%d1l,>>,(%a3),%d1,%acc2 + mac.w %a5l,%d1l,>>,(%a3),%a3,%acc1 + mac.w %a5l,%d1l,>>,(%a3),%a3,%acc2 + mac.w %a5l,%d1l,>>,(%a3),%d2,%acc1 + mac.w %a5l,%d1l,>>,(%a3),%d2,%acc2 + mac.w %a5l,%d1l,>>,(%a3),%a7,%acc1 + mac.w %a5l,%d1l,>>,(%a3),%a7,%acc2 + mac.w %a5l,%d1l,>>,(%a3)&,%d1,%acc1 + mac.w %a5l,%d1l,>>,(%a3)&,%d1,%acc2 + mac.w %a5l,%d1l,>>,(%a3)&,%a3,%acc1 + mac.w %a5l,%d1l,>>,(%a3)&,%a3,%acc2 + mac.w %a5l,%d1l,>>,(%a3)&,%d2,%acc1 + mac.w %a5l,%d1l,>>,(%a3)&,%d2,%acc2 + mac.w %a5l,%d1l,>>,(%a3)&,%a7,%acc1 + mac.w %a5l,%d1l,>>,(%a3)&,%a7,%acc2 + mac.w %a5l,%d1l,>>,(%a2)+,%d1,%acc1 + mac.w %a5l,%d1l,>>,(%a2)+,%d1,%acc2 + mac.w %a5l,%d1l,>>,(%a2)+,%a3,%acc1 + mac.w %a5l,%d1l,>>,(%a2)+,%a3,%acc2 + mac.w %a5l,%d1l,>>,(%a2)+,%d2,%acc1 + mac.w %a5l,%d1l,>>,(%a2)+,%d2,%acc2 + mac.w %a5l,%d1l,>>,(%a2)+,%a7,%acc1 + mac.w %a5l,%d1l,>>,(%a2)+,%a7,%acc2 + mac.w %a5l,%d1l,>>,(%a2)+&,%d1,%acc1 + mac.w %a5l,%d1l,>>,(%a2)+&,%d1,%acc2 + mac.w %a5l,%d1l,>>,(%a2)+&,%a3,%acc1 + mac.w %a5l,%d1l,>>,(%a2)+&,%a3,%acc2 + mac.w %a5l,%d1l,>>,(%a2)+&,%d2,%acc1 + mac.w %a5l,%d1l,>>,(%a2)+&,%d2,%acc2 + mac.w %a5l,%d1l,>>,(%a2)+&,%a7,%acc1 + mac.w %a5l,%d1l,>>,(%a2)+&,%a7,%acc2 + mac.w %a5l,%d1l,>>,10(%a6),%d1,%acc1 + mac.w %a5l,%d1l,>>,10(%a6),%d1,%acc2 + mac.w %a5l,%d1l,>>,10(%a6),%a3,%acc1 + mac.w %a5l,%d1l,>>,10(%a6),%a3,%acc2 + mac.w %a5l,%d1l,>>,10(%a6),%d2,%acc1 + mac.w %a5l,%d1l,>>,10(%a6),%d2,%acc2 + mac.w %a5l,%d1l,>>,10(%a6),%a7,%acc1 + mac.w %a5l,%d1l,>>,10(%a6),%a7,%acc2 + mac.w %a5l,%d1l,>>,10(%a6)&,%d1,%acc1 + mac.w %a5l,%d1l,>>,10(%a6)&,%d1,%acc2 + mac.w %a5l,%d1l,>>,10(%a6)&,%a3,%acc1 + mac.w %a5l,%d1l,>>,10(%a6)&,%a3,%acc2 + mac.w %a5l,%d1l,>>,10(%a6)&,%d2,%acc1 + mac.w %a5l,%d1l,>>,10(%a6)&,%d2,%acc2 + mac.w %a5l,%d1l,>>,10(%a6)&,%a7,%acc1 + mac.w %a5l,%d1l,>>,10(%a6)&,%a7,%acc2 + mac.w %a5l,%d1l,>>,-(%a1),%d1,%acc1 + mac.w %a5l,%d1l,>>,-(%a1),%d1,%acc2 + mac.w %a5l,%d1l,>>,-(%a1),%a3,%acc1 + mac.w %a5l,%d1l,>>,-(%a1),%a3,%acc2 + mac.w %a5l,%d1l,>>,-(%a1),%d2,%acc1 + mac.w %a5l,%d1l,>>,-(%a1),%d2,%acc2 + mac.w %a5l,%d1l,>>,-(%a1),%a7,%acc1 + mac.w %a5l,%d1l,>>,-(%a1),%a7,%acc2 + mac.w %a5l,%d1l,>>,-(%a1)&,%d1,%acc1 + mac.w %a5l,%d1l,>>,-(%a1)&,%d1,%acc2 + mac.w %a5l,%d1l,>>,-(%a1)&,%a3,%acc1 + mac.w %a5l,%d1l,>>,-(%a1)&,%a3,%acc2 + mac.w %a5l,%d1l,>>,-(%a1)&,%d2,%acc1 + mac.w %a5l,%d1l,>>,-(%a1)&,%d2,%acc2 + mac.w %a5l,%d1l,>>,-(%a1)&,%a7,%acc1 + mac.w %a5l,%d1l,>>,-(%a1)&,%a7,%acc2 + mac.w %a5l,%d1l,#1,(%a3),%d1,%acc1 + mac.w %a5l,%d1l,#1,(%a3),%d1,%acc2 + mac.w %a5l,%d1l,#1,(%a3),%a3,%acc1 + mac.w %a5l,%d1l,#1,(%a3),%a3,%acc2 + mac.w %a5l,%d1l,#1,(%a3),%d2,%acc1 + mac.w %a5l,%d1l,#1,(%a3),%d2,%acc2 + mac.w %a5l,%d1l,#1,(%a3),%a7,%acc1 + mac.w %a5l,%d1l,#1,(%a3),%a7,%acc2 + mac.w %a5l,%d1l,#1,(%a3)&,%d1,%acc1 + mac.w %a5l,%d1l,#1,(%a3)&,%d1,%acc2 + mac.w %a5l,%d1l,#1,(%a3)&,%a3,%acc1 + mac.w %a5l,%d1l,#1,(%a3)&,%a3,%acc2 + mac.w %a5l,%d1l,#1,(%a3)&,%d2,%acc1 + mac.w %a5l,%d1l,#1,(%a3)&,%d2,%acc2 + mac.w %a5l,%d1l,#1,(%a3)&,%a7,%acc1 + mac.w %a5l,%d1l,#1,(%a3)&,%a7,%acc2 + mac.w %a5l,%d1l,#1,(%a2)+,%d1,%acc1 + mac.w %a5l,%d1l,#1,(%a2)+,%d1,%acc2 + mac.w %a5l,%d1l,#1,(%a2)+,%a3,%acc1 + mac.w %a5l,%d1l,#1,(%a2)+,%a3,%acc2 + mac.w %a5l,%d1l,#1,(%a2)+,%d2,%acc1 + mac.w %a5l,%d1l,#1,(%a2)+,%d2,%acc2 + mac.w %a5l,%d1l,#1,(%a2)+,%a7,%acc1 + mac.w %a5l,%d1l,#1,(%a2)+,%a7,%acc2 + mac.w %a5l,%d1l,#1,(%a2)+&,%d1,%acc1 + mac.w %a5l,%d1l,#1,(%a2)+&,%d1,%acc2 + mac.w %a5l,%d1l,#1,(%a2)+&,%a3,%acc1 + mac.w %a5l,%d1l,#1,(%a2)+&,%a3,%acc2 + mac.w %a5l,%d1l,#1,(%a2)+&,%d2,%acc1 + mac.w %a5l,%d1l,#1,(%a2)+&,%d2,%acc2 + mac.w %a5l,%d1l,#1,(%a2)+&,%a7,%acc1 + mac.w %a5l,%d1l,#1,(%a2)+&,%a7,%acc2 + mac.w %a5l,%d1l,#1,10(%a6),%d1,%acc1 + mac.w %a5l,%d1l,#1,10(%a6),%d1,%acc2 + mac.w %a5l,%d1l,#1,10(%a6),%a3,%acc1 + mac.w %a5l,%d1l,#1,10(%a6),%a3,%acc2 + mac.w %a5l,%d1l,#1,10(%a6),%d2,%acc1 + mac.w %a5l,%d1l,#1,10(%a6),%d2,%acc2 + mac.w %a5l,%d1l,#1,10(%a6),%a7,%acc1 + mac.w %a5l,%d1l,#1,10(%a6),%a7,%acc2 + mac.w %a5l,%d1l,#1,10(%a6)&,%d1,%acc1 + mac.w %a5l,%d1l,#1,10(%a6)&,%d1,%acc2 + mac.w %a5l,%d1l,#1,10(%a6)&,%a3,%acc1 + mac.w %a5l,%d1l,#1,10(%a6)&,%a3,%acc2 + mac.w %a5l,%d1l,#1,10(%a6)&,%d2,%acc1 + mac.w %a5l,%d1l,#1,10(%a6)&,%d2,%acc2 + mac.w %a5l,%d1l,#1,10(%a6)&,%a7,%acc1 + mac.w %a5l,%d1l,#1,10(%a6)&,%a7,%acc2 + mac.w %a5l,%d1l,#1,-(%a1),%d1,%acc1 + mac.w %a5l,%d1l,#1,-(%a1),%d1,%acc2 + mac.w %a5l,%d1l,#1,-(%a1),%a3,%acc1 + mac.w %a5l,%d1l,#1,-(%a1),%a3,%acc2 + mac.w %a5l,%d1l,#1,-(%a1),%d2,%acc1 + mac.w %a5l,%d1l,#1,-(%a1),%d2,%acc2 + mac.w %a5l,%d1l,#1,-(%a1),%a7,%acc1 + mac.w %a5l,%d1l,#1,-(%a1),%a7,%acc2 + mac.w %a5l,%d1l,#1,-(%a1)&,%d1,%acc1 + mac.w %a5l,%d1l,#1,-(%a1)&,%d1,%acc2 + mac.w %a5l,%d1l,#1,-(%a1)&,%a3,%acc1 + mac.w %a5l,%d1l,#1,-(%a1)&,%a3,%acc2 + mac.w %a5l,%d1l,#1,-(%a1)&,%d2,%acc1 + mac.w %a5l,%d1l,#1,-(%a1)&,%d2,%acc2 + mac.w %a5l,%d1l,#1,-(%a1)&,%a7,%acc1 + mac.w %a5l,%d1l,#1,-(%a1)&,%a7,%acc2 + mac.w %a5l,%d1l,#-1,(%a3),%d1,%acc1 + mac.w %a5l,%d1l,#-1,(%a3),%d1,%acc2 + mac.w %a5l,%d1l,#-1,(%a3),%a3,%acc1 + mac.w %a5l,%d1l,#-1,(%a3),%a3,%acc2 + mac.w %a5l,%d1l,#-1,(%a3),%d2,%acc1 + mac.w %a5l,%d1l,#-1,(%a3),%d2,%acc2 + mac.w %a5l,%d1l,#-1,(%a3),%a7,%acc1 + mac.w %a5l,%d1l,#-1,(%a3),%a7,%acc2 + mac.w %a5l,%d1l,#-1,(%a3)&,%d1,%acc1 + mac.w %a5l,%d1l,#-1,(%a3)&,%d1,%acc2 + mac.w %a5l,%d1l,#-1,(%a3)&,%a3,%acc1 + mac.w %a5l,%d1l,#-1,(%a3)&,%a3,%acc2 + mac.w %a5l,%d1l,#-1,(%a3)&,%d2,%acc1 + mac.w %a5l,%d1l,#-1,(%a3)&,%d2,%acc2 + mac.w %a5l,%d1l,#-1,(%a3)&,%a7,%acc1 + mac.w %a5l,%d1l,#-1,(%a3)&,%a7,%acc2 + mac.w %a5l,%d1l,#-1,(%a2)+,%d1,%acc1 + mac.w %a5l,%d1l,#-1,(%a2)+,%d1,%acc2 + mac.w %a5l,%d1l,#-1,(%a2)+,%a3,%acc1 + mac.w %a5l,%d1l,#-1,(%a2)+,%a3,%acc2 + mac.w %a5l,%d1l,#-1,(%a2)+,%d2,%acc1 + mac.w %a5l,%d1l,#-1,(%a2)+,%d2,%acc2 + mac.w %a5l,%d1l,#-1,(%a2)+,%a7,%acc1 + mac.w %a5l,%d1l,#-1,(%a2)+,%a7,%acc2 + mac.w %a5l,%d1l,#-1,(%a2)+&,%d1,%acc1 + mac.w %a5l,%d1l,#-1,(%a2)+&,%d1,%acc2 + mac.w %a5l,%d1l,#-1,(%a2)+&,%a3,%acc1 + mac.w %a5l,%d1l,#-1,(%a2)+&,%a3,%acc2 + mac.w %a5l,%d1l,#-1,(%a2)+&,%d2,%acc1 + mac.w %a5l,%d1l,#-1,(%a2)+&,%d2,%acc2 + mac.w %a5l,%d1l,#-1,(%a2)+&,%a7,%acc1 + mac.w %a5l,%d1l,#-1,(%a2)+&,%a7,%acc2 + mac.w %a5l,%d1l,#-1,10(%a6),%d1,%acc1 + mac.w %a5l,%d1l,#-1,10(%a6),%d1,%acc2 + mac.w %a5l,%d1l,#-1,10(%a6),%a3,%acc1 + mac.w %a5l,%d1l,#-1,10(%a6),%a3,%acc2 + mac.w %a5l,%d1l,#-1,10(%a6),%d2,%acc1 + mac.w %a5l,%d1l,#-1,10(%a6),%d2,%acc2 + mac.w %a5l,%d1l,#-1,10(%a6),%a7,%acc1 + mac.w %a5l,%d1l,#-1,10(%a6),%a7,%acc2 + mac.w %a5l,%d1l,#-1,10(%a6)&,%d1,%acc1 + mac.w %a5l,%d1l,#-1,10(%a6)&,%d1,%acc2 + mac.w %a5l,%d1l,#-1,10(%a6)&,%a3,%acc1 + mac.w %a5l,%d1l,#-1,10(%a6)&,%a3,%acc2 + mac.w %a5l,%d1l,#-1,10(%a6)&,%d2,%acc1 + mac.w %a5l,%d1l,#-1,10(%a6)&,%d2,%acc2 + mac.w %a5l,%d1l,#-1,10(%a6)&,%a7,%acc1 + mac.w %a5l,%d1l,#-1,10(%a6)&,%a7,%acc2 + mac.w %a5l,%d1l,#-1,-(%a1),%d1,%acc1 + mac.w %a5l,%d1l,#-1,-(%a1),%d1,%acc2 + mac.w %a5l,%d1l,#-1,-(%a1),%a3,%acc1 + mac.w %a5l,%d1l,#-1,-(%a1),%a3,%acc2 + mac.w %a5l,%d1l,#-1,-(%a1),%d2,%acc1 + mac.w %a5l,%d1l,#-1,-(%a1),%d2,%acc2 + mac.w %a5l,%d1l,#-1,-(%a1),%a7,%acc1 + mac.w %a5l,%d1l,#-1,-(%a1),%a7,%acc2 + mac.w %a5l,%d1l,#-1,-(%a1)&,%d1,%acc1 + mac.w %a5l,%d1l,#-1,-(%a1)&,%d1,%acc2 + mac.w %a5l,%d1l,#-1,-(%a1)&,%a3,%acc1 + mac.w %a5l,%d1l,#-1,-(%a1)&,%a3,%acc2 + mac.w %a5l,%d1l,#-1,-(%a1)&,%d2,%acc1 + mac.w %a5l,%d1l,#-1,-(%a1)&,%d2,%acc2 + mac.w %a5l,%d1l,#-1,-(%a1)&,%a7,%acc1 + mac.w %a5l,%d1l,#-1,-(%a1)&,%a7,%acc2 + mac.w %d6u,%a2u,(%a3),%d1,%acc1 + mac.w %d6u,%a2u,(%a3),%d1,%acc2 + mac.w %d6u,%a2u,(%a3),%a3,%acc1 + mac.w %d6u,%a2u,(%a3),%a3,%acc2 + mac.w %d6u,%a2u,(%a3),%d2,%acc1 + mac.w %d6u,%a2u,(%a3),%d2,%acc2 + mac.w %d6u,%a2u,(%a3),%a7,%acc1 + mac.w %d6u,%a2u,(%a3),%a7,%acc2 + mac.w %d6u,%a2u,(%a3)&,%d1,%acc1 + mac.w %d6u,%a2u,(%a3)&,%d1,%acc2 + mac.w %d6u,%a2u,(%a3)&,%a3,%acc1 + mac.w %d6u,%a2u,(%a3)&,%a3,%acc2 + mac.w %d6u,%a2u,(%a3)&,%d2,%acc1 + mac.w %d6u,%a2u,(%a3)&,%d2,%acc2 + mac.w %d6u,%a2u,(%a3)&,%a7,%acc1 + mac.w %d6u,%a2u,(%a3)&,%a7,%acc2 + mac.w %d6u,%a2u,(%a2)+,%d1,%acc1 + mac.w %d6u,%a2u,(%a2)+,%d1,%acc2 + mac.w %d6u,%a2u,(%a2)+,%a3,%acc1 + mac.w %d6u,%a2u,(%a2)+,%a3,%acc2 + mac.w %d6u,%a2u,(%a2)+,%d2,%acc1 + mac.w %d6u,%a2u,(%a2)+,%d2,%acc2 + mac.w %d6u,%a2u,(%a2)+,%a7,%acc1 + mac.w %d6u,%a2u,(%a2)+,%a7,%acc2 + mac.w %d6u,%a2u,(%a2)+&,%d1,%acc1 + mac.w %d6u,%a2u,(%a2)+&,%d1,%acc2 + mac.w %d6u,%a2u,(%a2)+&,%a3,%acc1 + mac.w %d6u,%a2u,(%a2)+&,%a3,%acc2 + mac.w %d6u,%a2u,(%a2)+&,%d2,%acc1 + mac.w %d6u,%a2u,(%a2)+&,%d2,%acc2 + mac.w %d6u,%a2u,(%a2)+&,%a7,%acc1 + mac.w %d6u,%a2u,(%a2)+&,%a7,%acc2 + mac.w %d6u,%a2u,10(%a6),%d1,%acc1 + mac.w %d6u,%a2u,10(%a6),%d1,%acc2 + mac.w %d6u,%a2u,10(%a6),%a3,%acc1 + mac.w %d6u,%a2u,10(%a6),%a3,%acc2 + mac.w %d6u,%a2u,10(%a6),%d2,%acc1 + mac.w %d6u,%a2u,10(%a6),%d2,%acc2 + mac.w %d6u,%a2u,10(%a6),%a7,%acc1 + mac.w %d6u,%a2u,10(%a6),%a7,%acc2 + mac.w %d6u,%a2u,10(%a6)&,%d1,%acc1 + mac.w %d6u,%a2u,10(%a6)&,%d1,%acc2 + mac.w %d6u,%a2u,10(%a6)&,%a3,%acc1 + mac.w %d6u,%a2u,10(%a6)&,%a3,%acc2 + mac.w %d6u,%a2u,10(%a6)&,%d2,%acc1 + mac.w %d6u,%a2u,10(%a6)&,%d2,%acc2 + mac.w %d6u,%a2u,10(%a6)&,%a7,%acc1 + mac.w %d6u,%a2u,10(%a6)&,%a7,%acc2 + mac.w %d6u,%a2u,-(%a1),%d1,%acc1 + mac.w %d6u,%a2u,-(%a1),%d1,%acc2 + mac.w %d6u,%a2u,-(%a1),%a3,%acc1 + mac.w %d6u,%a2u,-(%a1),%a3,%acc2 + mac.w %d6u,%a2u,-(%a1),%d2,%acc1 + mac.w %d6u,%a2u,-(%a1),%d2,%acc2 + mac.w %d6u,%a2u,-(%a1),%a7,%acc1 + mac.w %d6u,%a2u,-(%a1),%a7,%acc2 + mac.w %d6u,%a2u,-(%a1)&,%d1,%acc1 + mac.w %d6u,%a2u,-(%a1)&,%d1,%acc2 + mac.w %d6u,%a2u,-(%a1)&,%a3,%acc1 + mac.w %d6u,%a2u,-(%a1)&,%a3,%acc2 + mac.w %d6u,%a2u,-(%a1)&,%d2,%acc1 + mac.w %d6u,%a2u,-(%a1)&,%d2,%acc2 + mac.w %d6u,%a2u,-(%a1)&,%a7,%acc1 + mac.w %d6u,%a2u,-(%a1)&,%a7,%acc2 + mac.w %d6u,%a2u,<<,(%a3),%d1,%acc1 + mac.w %d6u,%a2u,<<,(%a3),%d1,%acc2 + mac.w %d6u,%a2u,<<,(%a3),%a3,%acc1 + mac.w %d6u,%a2u,<<,(%a3),%a3,%acc2 + mac.w %d6u,%a2u,<<,(%a3),%d2,%acc1 + mac.w %d6u,%a2u,<<,(%a3),%d2,%acc2 + mac.w %d6u,%a2u,<<,(%a3),%a7,%acc1 + mac.w %d6u,%a2u,<<,(%a3),%a7,%acc2 + mac.w %d6u,%a2u,<<,(%a3)&,%d1,%acc1 + mac.w %d6u,%a2u,<<,(%a3)&,%d1,%acc2 + mac.w %d6u,%a2u,<<,(%a3)&,%a3,%acc1 + mac.w %d6u,%a2u,<<,(%a3)&,%a3,%acc2 + mac.w %d6u,%a2u,<<,(%a3)&,%d2,%acc1 + mac.w %d6u,%a2u,<<,(%a3)&,%d2,%acc2 + mac.w %d6u,%a2u,<<,(%a3)&,%a7,%acc1 + mac.w %d6u,%a2u,<<,(%a3)&,%a7,%acc2 + mac.w %d6u,%a2u,<<,(%a2)+,%d1,%acc1 + mac.w %d6u,%a2u,<<,(%a2)+,%d1,%acc2 + mac.w %d6u,%a2u,<<,(%a2)+,%a3,%acc1 + mac.w %d6u,%a2u,<<,(%a2)+,%a3,%acc2 + mac.w %d6u,%a2u,<<,(%a2)+,%d2,%acc1 + mac.w %d6u,%a2u,<<,(%a2)+,%d2,%acc2 + mac.w %d6u,%a2u,<<,(%a2)+,%a7,%acc1 + mac.w %d6u,%a2u,<<,(%a2)+,%a7,%acc2 + mac.w %d6u,%a2u,<<,(%a2)+&,%d1,%acc1 + mac.w %d6u,%a2u,<<,(%a2)+&,%d1,%acc2 + mac.w %d6u,%a2u,<<,(%a2)+&,%a3,%acc1 + mac.w %d6u,%a2u,<<,(%a2)+&,%a3,%acc2 + mac.w %d6u,%a2u,<<,(%a2)+&,%d2,%acc1 + mac.w %d6u,%a2u,<<,(%a2)+&,%d2,%acc2 + mac.w %d6u,%a2u,<<,(%a2)+&,%a7,%acc1 + mac.w %d6u,%a2u,<<,(%a2)+&,%a7,%acc2 + mac.w %d6u,%a2u,<<,10(%a6),%d1,%acc1 + mac.w %d6u,%a2u,<<,10(%a6),%d1,%acc2 + mac.w %d6u,%a2u,<<,10(%a6),%a3,%acc1 + mac.w %d6u,%a2u,<<,10(%a6),%a3,%acc2 + mac.w %d6u,%a2u,<<,10(%a6),%d2,%acc1 + mac.w %d6u,%a2u,<<,10(%a6),%d2,%acc2 + mac.w %d6u,%a2u,<<,10(%a6),%a7,%acc1 + mac.w %d6u,%a2u,<<,10(%a6),%a7,%acc2 + mac.w %d6u,%a2u,<<,10(%a6)&,%d1,%acc1 + mac.w %d6u,%a2u,<<,10(%a6)&,%d1,%acc2 + mac.w %d6u,%a2u,<<,10(%a6)&,%a3,%acc1 + mac.w %d6u,%a2u,<<,10(%a6)&,%a3,%acc2 + mac.w %d6u,%a2u,<<,10(%a6)&,%d2,%acc1 + mac.w %d6u,%a2u,<<,10(%a6)&,%d2,%acc2 + mac.w %d6u,%a2u,<<,10(%a6)&,%a7,%acc1 + mac.w %d6u,%a2u,<<,10(%a6)&,%a7,%acc2 + mac.w %d6u,%a2u,<<,-(%a1),%d1,%acc1 + mac.w %d6u,%a2u,<<,-(%a1),%d1,%acc2 + mac.w %d6u,%a2u,<<,-(%a1),%a3,%acc1 + mac.w %d6u,%a2u,<<,-(%a1),%a3,%acc2 + mac.w %d6u,%a2u,<<,-(%a1),%d2,%acc1 + mac.w %d6u,%a2u,<<,-(%a1),%d2,%acc2 + mac.w %d6u,%a2u,<<,-(%a1),%a7,%acc1 + mac.w %d6u,%a2u,<<,-(%a1),%a7,%acc2 + mac.w %d6u,%a2u,<<,-(%a1)&,%d1,%acc1 + mac.w %d6u,%a2u,<<,-(%a1)&,%d1,%acc2 + mac.w %d6u,%a2u,<<,-(%a1)&,%a3,%acc1 + mac.w %d6u,%a2u,<<,-(%a1)&,%a3,%acc2 + mac.w %d6u,%a2u,<<,-(%a1)&,%d2,%acc1 + mac.w %d6u,%a2u,<<,-(%a1)&,%d2,%acc2 + mac.w %d6u,%a2u,<<,-(%a1)&,%a7,%acc1 + mac.w %d6u,%a2u,<<,-(%a1)&,%a7,%acc2 + mac.w %d6u,%a2u,>>,(%a3),%d1,%acc1 + mac.w %d6u,%a2u,>>,(%a3),%d1,%acc2 + mac.w %d6u,%a2u,>>,(%a3),%a3,%acc1 + mac.w %d6u,%a2u,>>,(%a3),%a3,%acc2 + mac.w %d6u,%a2u,>>,(%a3),%d2,%acc1 + mac.w %d6u,%a2u,>>,(%a3),%d2,%acc2 + mac.w %d6u,%a2u,>>,(%a3),%a7,%acc1 + mac.w %d6u,%a2u,>>,(%a3),%a7,%acc2 + mac.w %d6u,%a2u,>>,(%a3)&,%d1,%acc1 + mac.w %d6u,%a2u,>>,(%a3)&,%d1,%acc2 + mac.w %d6u,%a2u,>>,(%a3)&,%a3,%acc1 + mac.w %d6u,%a2u,>>,(%a3)&,%a3,%acc2 + mac.w %d6u,%a2u,>>,(%a3)&,%d2,%acc1 + mac.w %d6u,%a2u,>>,(%a3)&,%d2,%acc2 + mac.w %d6u,%a2u,>>,(%a3)&,%a7,%acc1 + mac.w %d6u,%a2u,>>,(%a3)&,%a7,%acc2 + mac.w %d6u,%a2u,>>,(%a2)+,%d1,%acc1 + mac.w %d6u,%a2u,>>,(%a2)+,%d1,%acc2 + mac.w %d6u,%a2u,>>,(%a2)+,%a3,%acc1 + mac.w %d6u,%a2u,>>,(%a2)+,%a3,%acc2 + mac.w %d6u,%a2u,>>,(%a2)+,%d2,%acc1 + mac.w %d6u,%a2u,>>,(%a2)+,%d2,%acc2 + mac.w %d6u,%a2u,>>,(%a2)+,%a7,%acc1 + mac.w %d6u,%a2u,>>,(%a2)+,%a7,%acc2 + mac.w %d6u,%a2u,>>,(%a2)+&,%d1,%acc1 + mac.w %d6u,%a2u,>>,(%a2)+&,%d1,%acc2 + mac.w %d6u,%a2u,>>,(%a2)+&,%a3,%acc1 + mac.w %d6u,%a2u,>>,(%a2)+&,%a3,%acc2 + mac.w %d6u,%a2u,>>,(%a2)+&,%d2,%acc1 + mac.w %d6u,%a2u,>>,(%a2)+&,%d2,%acc2 + mac.w %d6u,%a2u,>>,(%a2)+&,%a7,%acc1 + mac.w %d6u,%a2u,>>,(%a2)+&,%a7,%acc2 + mac.w %d6u,%a2u,>>,10(%a6),%d1,%acc1 + mac.w %d6u,%a2u,>>,10(%a6),%d1,%acc2 + mac.w %d6u,%a2u,>>,10(%a6),%a3,%acc1 + mac.w %d6u,%a2u,>>,10(%a6),%a3,%acc2 + mac.w %d6u,%a2u,>>,10(%a6),%d2,%acc1 + mac.w %d6u,%a2u,>>,10(%a6),%d2,%acc2 + mac.w %d6u,%a2u,>>,10(%a6),%a7,%acc1 + mac.w %d6u,%a2u,>>,10(%a6),%a7,%acc2 + mac.w %d6u,%a2u,>>,10(%a6)&,%d1,%acc1 + mac.w %d6u,%a2u,>>,10(%a6)&,%d1,%acc2 + mac.w %d6u,%a2u,>>,10(%a6)&,%a3,%acc1 + mac.w %d6u,%a2u,>>,10(%a6)&,%a3,%acc2 + mac.w %d6u,%a2u,>>,10(%a6)&,%d2,%acc1 + mac.w %d6u,%a2u,>>,10(%a6)&,%d2,%acc2 + mac.w %d6u,%a2u,>>,10(%a6)&,%a7,%acc1 + mac.w %d6u,%a2u,>>,10(%a6)&,%a7,%acc2 + mac.w %d6u,%a2u,>>,-(%a1),%d1,%acc1 + mac.w %d6u,%a2u,>>,-(%a1),%d1,%acc2 + mac.w %d6u,%a2u,>>,-(%a1),%a3,%acc1 + mac.w %d6u,%a2u,>>,-(%a1),%a3,%acc2 + mac.w %d6u,%a2u,>>,-(%a1),%d2,%acc1 + mac.w %d6u,%a2u,>>,-(%a1),%d2,%acc2 + mac.w %d6u,%a2u,>>,-(%a1),%a7,%acc1 + mac.w %d6u,%a2u,>>,-(%a1),%a7,%acc2 + mac.w %d6u,%a2u,>>,-(%a1)&,%d1,%acc1 + mac.w %d6u,%a2u,>>,-(%a1)&,%d1,%acc2 + mac.w %d6u,%a2u,>>,-(%a1)&,%a3,%acc1 + mac.w %d6u,%a2u,>>,-(%a1)&,%a3,%acc2 + mac.w %d6u,%a2u,>>,-(%a1)&,%d2,%acc1 + mac.w %d6u,%a2u,>>,-(%a1)&,%d2,%acc2 + mac.w %d6u,%a2u,>>,-(%a1)&,%a7,%acc1 + mac.w %d6u,%a2u,>>,-(%a1)&,%a7,%acc2 + mac.w %d6u,%a2u,#1,(%a3),%d1,%acc1 + mac.w %d6u,%a2u,#1,(%a3),%d1,%acc2 + mac.w %d6u,%a2u,#1,(%a3),%a3,%acc1 + mac.w %d6u,%a2u,#1,(%a3),%a3,%acc2 + mac.w %d6u,%a2u,#1,(%a3),%d2,%acc1 + mac.w %d6u,%a2u,#1,(%a3),%d2,%acc2 + mac.w %d6u,%a2u,#1,(%a3),%a7,%acc1 + mac.w %d6u,%a2u,#1,(%a3),%a7,%acc2 + mac.w %d6u,%a2u,#1,(%a3)&,%d1,%acc1 + mac.w %d6u,%a2u,#1,(%a3)&,%d1,%acc2 + mac.w %d6u,%a2u,#1,(%a3)&,%a3,%acc1 + mac.w %d6u,%a2u,#1,(%a3)&,%a3,%acc2 + mac.w %d6u,%a2u,#1,(%a3)&,%d2,%acc1 + mac.w %d6u,%a2u,#1,(%a3)&,%d2,%acc2 + mac.w %d6u,%a2u,#1,(%a3)&,%a7,%acc1 + mac.w %d6u,%a2u,#1,(%a3)&,%a7,%acc2 + mac.w %d6u,%a2u,#1,(%a2)+,%d1,%acc1 + mac.w %d6u,%a2u,#1,(%a2)+,%d1,%acc2 + mac.w %d6u,%a2u,#1,(%a2)+,%a3,%acc1 + mac.w %d6u,%a2u,#1,(%a2)+,%a3,%acc2 + mac.w %d6u,%a2u,#1,(%a2)+,%d2,%acc1 + mac.w %d6u,%a2u,#1,(%a2)+,%d2,%acc2 + mac.w %d6u,%a2u,#1,(%a2)+,%a7,%acc1 + mac.w %d6u,%a2u,#1,(%a2)+,%a7,%acc2 + mac.w %d6u,%a2u,#1,(%a2)+&,%d1,%acc1 + mac.w %d6u,%a2u,#1,(%a2)+&,%d1,%acc2 + mac.w %d6u,%a2u,#1,(%a2)+&,%a3,%acc1 + mac.w %d6u,%a2u,#1,(%a2)+&,%a3,%acc2 + mac.w %d6u,%a2u,#1,(%a2)+&,%d2,%acc1 + mac.w %d6u,%a2u,#1,(%a2)+&,%d2,%acc2 + mac.w %d6u,%a2u,#1,(%a2)+&,%a7,%acc1 + mac.w %d6u,%a2u,#1,(%a2)+&,%a7,%acc2 + mac.w %d6u,%a2u,#1,10(%a6),%d1,%acc1 + mac.w %d6u,%a2u,#1,10(%a6),%d1,%acc2 + mac.w %d6u,%a2u,#1,10(%a6),%a3,%acc1 + mac.w %d6u,%a2u,#1,10(%a6),%a3,%acc2 + mac.w %d6u,%a2u,#1,10(%a6),%d2,%acc1 + mac.w %d6u,%a2u,#1,10(%a6),%d2,%acc2 + mac.w %d6u,%a2u,#1,10(%a6),%a7,%acc1 + mac.w %d6u,%a2u,#1,10(%a6),%a7,%acc2 + mac.w %d6u,%a2u,#1,10(%a6)&,%d1,%acc1 + mac.w %d6u,%a2u,#1,10(%a6)&,%d1,%acc2 + mac.w %d6u,%a2u,#1,10(%a6)&,%a3,%acc1 + mac.w %d6u,%a2u,#1,10(%a6)&,%a3,%acc2 + mac.w %d6u,%a2u,#1,10(%a6)&,%d2,%acc1 + mac.w %d6u,%a2u,#1,10(%a6)&,%d2,%acc2 + mac.w %d6u,%a2u,#1,10(%a6)&,%a7,%acc1 + mac.w %d6u,%a2u,#1,10(%a6)&,%a7,%acc2 + mac.w %d6u,%a2u,#1,-(%a1),%d1,%acc1 + mac.w %d6u,%a2u,#1,-(%a1),%d1,%acc2 + mac.w %d6u,%a2u,#1,-(%a1),%a3,%acc1 + mac.w %d6u,%a2u,#1,-(%a1),%a3,%acc2 + mac.w %d6u,%a2u,#1,-(%a1),%d2,%acc1 + mac.w %d6u,%a2u,#1,-(%a1),%d2,%acc2 + mac.w %d6u,%a2u,#1,-(%a1),%a7,%acc1 + mac.w %d6u,%a2u,#1,-(%a1),%a7,%acc2 + mac.w %d6u,%a2u,#1,-(%a1)&,%d1,%acc1 + mac.w %d6u,%a2u,#1,-(%a1)&,%d1,%acc2 + mac.w %d6u,%a2u,#1,-(%a1)&,%a3,%acc1 + mac.w %d6u,%a2u,#1,-(%a1)&,%a3,%acc2 + mac.w %d6u,%a2u,#1,-(%a1)&,%d2,%acc1 + mac.w %d6u,%a2u,#1,-(%a1)&,%d2,%acc2 + mac.w %d6u,%a2u,#1,-(%a1)&,%a7,%acc1 + mac.w %d6u,%a2u,#1,-(%a1)&,%a7,%acc2 + mac.w %d6u,%a2u,#-1,(%a3),%d1,%acc1 + mac.w %d6u,%a2u,#-1,(%a3),%d1,%acc2 + mac.w %d6u,%a2u,#-1,(%a3),%a3,%acc1 + mac.w %d6u,%a2u,#-1,(%a3),%a3,%acc2 + mac.w %d6u,%a2u,#-1,(%a3),%d2,%acc1 + mac.w %d6u,%a2u,#-1,(%a3),%d2,%acc2 + mac.w %d6u,%a2u,#-1,(%a3),%a7,%acc1 + mac.w %d6u,%a2u,#-1,(%a3),%a7,%acc2 + mac.w %d6u,%a2u,#-1,(%a3)&,%d1,%acc1 + mac.w %d6u,%a2u,#-1,(%a3)&,%d1,%acc2 + mac.w %d6u,%a2u,#-1,(%a3)&,%a3,%acc1 + mac.w %d6u,%a2u,#-1,(%a3)&,%a3,%acc2 + mac.w %d6u,%a2u,#-1,(%a3)&,%d2,%acc1 + mac.w %d6u,%a2u,#-1,(%a3)&,%d2,%acc2 + mac.w %d6u,%a2u,#-1,(%a3)&,%a7,%acc1 + mac.w %d6u,%a2u,#-1,(%a3)&,%a7,%acc2 + mac.w %d6u,%a2u,#-1,(%a2)+,%d1,%acc1 + mac.w %d6u,%a2u,#-1,(%a2)+,%d1,%acc2 + mac.w %d6u,%a2u,#-1,(%a2)+,%a3,%acc1 + mac.w %d6u,%a2u,#-1,(%a2)+,%a3,%acc2 + mac.w %d6u,%a2u,#-1,(%a2)+,%d2,%acc1 + mac.w %d6u,%a2u,#-1,(%a2)+,%d2,%acc2 + mac.w %d6u,%a2u,#-1,(%a2)+,%a7,%acc1 + mac.w %d6u,%a2u,#-1,(%a2)+,%a7,%acc2 + mac.w %d6u,%a2u,#-1,(%a2)+&,%d1,%acc1 + mac.w %d6u,%a2u,#-1,(%a2)+&,%d1,%acc2 + mac.w %d6u,%a2u,#-1,(%a2)+&,%a3,%acc1 + mac.w %d6u,%a2u,#-1,(%a2)+&,%a3,%acc2 + mac.w %d6u,%a2u,#-1,(%a2)+&,%d2,%acc1 + mac.w %d6u,%a2u,#-1,(%a2)+&,%d2,%acc2 + mac.w %d6u,%a2u,#-1,(%a2)+&,%a7,%acc1 + mac.w %d6u,%a2u,#-1,(%a2)+&,%a7,%acc2 + mac.w %d6u,%a2u,#-1,10(%a6),%d1,%acc1 + mac.w %d6u,%a2u,#-1,10(%a6),%d1,%acc2 + mac.w %d6u,%a2u,#-1,10(%a6),%a3,%acc1 + mac.w %d6u,%a2u,#-1,10(%a6),%a3,%acc2 + mac.w %d6u,%a2u,#-1,10(%a6),%d2,%acc1 + mac.w %d6u,%a2u,#-1,10(%a6),%d2,%acc2 + mac.w %d6u,%a2u,#-1,10(%a6),%a7,%acc1 + mac.w %d6u,%a2u,#-1,10(%a6),%a7,%acc2 + mac.w %d6u,%a2u,#-1,10(%a6)&,%d1,%acc1 + mac.w %d6u,%a2u,#-1,10(%a6)&,%d1,%acc2 + mac.w %d6u,%a2u,#-1,10(%a6)&,%a3,%acc1 + mac.w %d6u,%a2u,#-1,10(%a6)&,%a3,%acc2 + mac.w %d6u,%a2u,#-1,10(%a6)&,%d2,%acc1 + mac.w %d6u,%a2u,#-1,10(%a6)&,%d2,%acc2 + mac.w %d6u,%a2u,#-1,10(%a6)&,%a7,%acc1 + mac.w %d6u,%a2u,#-1,10(%a6)&,%a7,%acc2 + mac.w %d6u,%a2u,#-1,-(%a1),%d1,%acc1 + mac.w %d6u,%a2u,#-1,-(%a1),%d1,%acc2 + mac.w %d6u,%a2u,#-1,-(%a1),%a3,%acc1 + mac.w %d6u,%a2u,#-1,-(%a1),%a3,%acc2 + mac.w %d6u,%a2u,#-1,-(%a1),%d2,%acc1 + mac.w %d6u,%a2u,#-1,-(%a1),%d2,%acc2 + mac.w %d6u,%a2u,#-1,-(%a1),%a7,%acc1 + mac.w %d6u,%a2u,#-1,-(%a1),%a7,%acc2 + mac.w %d6u,%a2u,#-1,-(%a1)&,%d1,%acc1 + mac.w %d6u,%a2u,#-1,-(%a1)&,%d1,%acc2 + mac.w %d6u,%a2u,#-1,-(%a1)&,%a3,%acc1 + mac.w %d6u,%a2u,#-1,-(%a1)&,%a3,%acc2 + mac.w %d6u,%a2u,#-1,-(%a1)&,%d2,%acc1 + mac.w %d6u,%a2u,#-1,-(%a1)&,%d2,%acc2 + mac.w %d6u,%a2u,#-1,-(%a1)&,%a7,%acc1 + mac.w %d6u,%a2u,#-1,-(%a1)&,%a7,%acc2 + mac.w %d6u,%d3l,(%a3),%d1,%acc1 + mac.w %d6u,%d3l,(%a3),%d1,%acc2 + mac.w %d6u,%d3l,(%a3),%a3,%acc1 + mac.w %d6u,%d3l,(%a3),%a3,%acc2 + mac.w %d6u,%d3l,(%a3),%d2,%acc1 + mac.w %d6u,%d3l,(%a3),%d2,%acc2 + mac.w %d6u,%d3l,(%a3),%a7,%acc1 + mac.w %d6u,%d3l,(%a3),%a7,%acc2 + mac.w %d6u,%d3l,(%a3)&,%d1,%acc1 + mac.w %d6u,%d3l,(%a3)&,%d1,%acc2 + mac.w %d6u,%d3l,(%a3)&,%a3,%acc1 + mac.w %d6u,%d3l,(%a3)&,%a3,%acc2 + mac.w %d6u,%d3l,(%a3)&,%d2,%acc1 + mac.w %d6u,%d3l,(%a3)&,%d2,%acc2 + mac.w %d6u,%d3l,(%a3)&,%a7,%acc1 + mac.w %d6u,%d3l,(%a3)&,%a7,%acc2 + mac.w %d6u,%d3l,(%a2)+,%d1,%acc1 + mac.w %d6u,%d3l,(%a2)+,%d1,%acc2 + mac.w %d6u,%d3l,(%a2)+,%a3,%acc1 + mac.w %d6u,%d3l,(%a2)+,%a3,%acc2 + mac.w %d6u,%d3l,(%a2)+,%d2,%acc1 + mac.w %d6u,%d3l,(%a2)+,%d2,%acc2 + mac.w %d6u,%d3l,(%a2)+,%a7,%acc1 + mac.w %d6u,%d3l,(%a2)+,%a7,%acc2 + mac.w %d6u,%d3l,(%a2)+&,%d1,%acc1 + mac.w %d6u,%d3l,(%a2)+&,%d1,%acc2 + mac.w %d6u,%d3l,(%a2)+&,%a3,%acc1 + mac.w %d6u,%d3l,(%a2)+&,%a3,%acc2 + mac.w %d6u,%d3l,(%a2)+&,%d2,%acc1 + mac.w %d6u,%d3l,(%a2)+&,%d2,%acc2 + mac.w %d6u,%d3l,(%a2)+&,%a7,%acc1 + mac.w %d6u,%d3l,(%a2)+&,%a7,%acc2 + mac.w %d6u,%d3l,10(%a6),%d1,%acc1 + mac.w %d6u,%d3l,10(%a6),%d1,%acc2 + mac.w %d6u,%d3l,10(%a6),%a3,%acc1 + mac.w %d6u,%d3l,10(%a6),%a3,%acc2 + mac.w %d6u,%d3l,10(%a6),%d2,%acc1 + mac.w %d6u,%d3l,10(%a6),%d2,%acc2 + mac.w %d6u,%d3l,10(%a6),%a7,%acc1 + mac.w %d6u,%d3l,10(%a6),%a7,%acc2 + mac.w %d6u,%d3l,10(%a6)&,%d1,%acc1 + mac.w %d6u,%d3l,10(%a6)&,%d1,%acc2 + mac.w %d6u,%d3l,10(%a6)&,%a3,%acc1 + mac.w %d6u,%d3l,10(%a6)&,%a3,%acc2 + mac.w %d6u,%d3l,10(%a6)&,%d2,%acc1 + mac.w %d6u,%d3l,10(%a6)&,%d2,%acc2 + mac.w %d6u,%d3l,10(%a6)&,%a7,%acc1 + mac.w %d6u,%d3l,10(%a6)&,%a7,%acc2 + mac.w %d6u,%d3l,-(%a1),%d1,%acc1 + mac.w %d6u,%d3l,-(%a1),%d1,%acc2 + mac.w %d6u,%d3l,-(%a1),%a3,%acc1 + mac.w %d6u,%d3l,-(%a1),%a3,%acc2 + mac.w %d6u,%d3l,-(%a1),%d2,%acc1 + mac.w %d6u,%d3l,-(%a1),%d2,%acc2 + mac.w %d6u,%d3l,-(%a1),%a7,%acc1 + mac.w %d6u,%d3l,-(%a1),%a7,%acc2 + mac.w %d6u,%d3l,-(%a1)&,%d1,%acc1 + mac.w %d6u,%d3l,-(%a1)&,%d1,%acc2 + mac.w %d6u,%d3l,-(%a1)&,%a3,%acc1 + mac.w %d6u,%d3l,-(%a1)&,%a3,%acc2 + mac.w %d6u,%d3l,-(%a1)&,%d2,%acc1 + mac.w %d6u,%d3l,-(%a1)&,%d2,%acc2 + mac.w %d6u,%d3l,-(%a1)&,%a7,%acc1 + mac.w %d6u,%d3l,-(%a1)&,%a7,%acc2 + mac.w %d6u,%d3l,<<,(%a3),%d1,%acc1 + mac.w %d6u,%d3l,<<,(%a3),%d1,%acc2 + mac.w %d6u,%d3l,<<,(%a3),%a3,%acc1 + mac.w %d6u,%d3l,<<,(%a3),%a3,%acc2 + mac.w %d6u,%d3l,<<,(%a3),%d2,%acc1 + mac.w %d6u,%d3l,<<,(%a3),%d2,%acc2 + mac.w %d6u,%d3l,<<,(%a3),%a7,%acc1 + mac.w %d6u,%d3l,<<,(%a3),%a7,%acc2 + mac.w %d6u,%d3l,<<,(%a3)&,%d1,%acc1 + mac.w %d6u,%d3l,<<,(%a3)&,%d1,%acc2 + mac.w %d6u,%d3l,<<,(%a3)&,%a3,%acc1 + mac.w %d6u,%d3l,<<,(%a3)&,%a3,%acc2 + mac.w %d6u,%d3l,<<,(%a3)&,%d2,%acc1 + mac.w %d6u,%d3l,<<,(%a3)&,%d2,%acc2 + mac.w %d6u,%d3l,<<,(%a3)&,%a7,%acc1 + mac.w %d6u,%d3l,<<,(%a3)&,%a7,%acc2 + mac.w %d6u,%d3l,<<,(%a2)+,%d1,%acc1 + mac.w %d6u,%d3l,<<,(%a2)+,%d1,%acc2 + mac.w %d6u,%d3l,<<,(%a2)+,%a3,%acc1 + mac.w %d6u,%d3l,<<,(%a2)+,%a3,%acc2 + mac.w %d6u,%d3l,<<,(%a2)+,%d2,%acc1 + mac.w %d6u,%d3l,<<,(%a2)+,%d2,%acc2 + mac.w %d6u,%d3l,<<,(%a2)+,%a7,%acc1 + mac.w %d6u,%d3l,<<,(%a2)+,%a7,%acc2 + mac.w %d6u,%d3l,<<,(%a2)+&,%d1,%acc1 + mac.w %d6u,%d3l,<<,(%a2)+&,%d1,%acc2 + mac.w %d6u,%d3l,<<,(%a2)+&,%a3,%acc1 + mac.w %d6u,%d3l,<<,(%a2)+&,%a3,%acc2 + mac.w %d6u,%d3l,<<,(%a2)+&,%d2,%acc1 + mac.w %d6u,%d3l,<<,(%a2)+&,%d2,%acc2 + mac.w %d6u,%d3l,<<,(%a2)+&,%a7,%acc1 + mac.w %d6u,%d3l,<<,(%a2)+&,%a7,%acc2 + mac.w %d6u,%d3l,<<,10(%a6),%d1,%acc1 + mac.w %d6u,%d3l,<<,10(%a6),%d1,%acc2 + mac.w %d6u,%d3l,<<,10(%a6),%a3,%acc1 + mac.w %d6u,%d3l,<<,10(%a6),%a3,%acc2 + mac.w %d6u,%d3l,<<,10(%a6),%d2,%acc1 + mac.w %d6u,%d3l,<<,10(%a6),%d2,%acc2 + mac.w %d6u,%d3l,<<,10(%a6),%a7,%acc1 + mac.w %d6u,%d3l,<<,10(%a6),%a7,%acc2 + mac.w %d6u,%d3l,<<,10(%a6)&,%d1,%acc1 + mac.w %d6u,%d3l,<<,10(%a6)&,%d1,%acc2 + mac.w %d6u,%d3l,<<,10(%a6)&,%a3,%acc1 + mac.w %d6u,%d3l,<<,10(%a6)&,%a3,%acc2 + mac.w %d6u,%d3l,<<,10(%a6)&,%d2,%acc1 + mac.w %d6u,%d3l,<<,10(%a6)&,%d2,%acc2 + mac.w %d6u,%d3l,<<,10(%a6)&,%a7,%acc1 + mac.w %d6u,%d3l,<<,10(%a6)&,%a7,%acc2 + mac.w %d6u,%d3l,<<,-(%a1),%d1,%acc1 + mac.w %d6u,%d3l,<<,-(%a1),%d1,%acc2 + mac.w %d6u,%d3l,<<,-(%a1),%a3,%acc1 + mac.w %d6u,%d3l,<<,-(%a1),%a3,%acc2 + mac.w %d6u,%d3l,<<,-(%a1),%d2,%acc1 + mac.w %d6u,%d3l,<<,-(%a1),%d2,%acc2 + mac.w %d6u,%d3l,<<,-(%a1),%a7,%acc1 + mac.w %d6u,%d3l,<<,-(%a1),%a7,%acc2 + mac.w %d6u,%d3l,<<,-(%a1)&,%d1,%acc1 + mac.w %d6u,%d3l,<<,-(%a1)&,%d1,%acc2 + mac.w %d6u,%d3l,<<,-(%a1)&,%a3,%acc1 + mac.w %d6u,%d3l,<<,-(%a1)&,%a3,%acc2 + mac.w %d6u,%d3l,<<,-(%a1)&,%d2,%acc1 + mac.w %d6u,%d3l,<<,-(%a1)&,%d2,%acc2 + mac.w %d6u,%d3l,<<,-(%a1)&,%a7,%acc1 + mac.w %d6u,%d3l,<<,-(%a1)&,%a7,%acc2 + mac.w %d6u,%d3l,>>,(%a3),%d1,%acc1 + mac.w %d6u,%d3l,>>,(%a3),%d1,%acc2 + mac.w %d6u,%d3l,>>,(%a3),%a3,%acc1 + mac.w %d6u,%d3l,>>,(%a3),%a3,%acc2 + mac.w %d6u,%d3l,>>,(%a3),%d2,%acc1 + mac.w %d6u,%d3l,>>,(%a3),%d2,%acc2 + mac.w %d6u,%d3l,>>,(%a3),%a7,%acc1 + mac.w %d6u,%d3l,>>,(%a3),%a7,%acc2 + mac.w %d6u,%d3l,>>,(%a3)&,%d1,%acc1 + mac.w %d6u,%d3l,>>,(%a3)&,%d1,%acc2 + mac.w %d6u,%d3l,>>,(%a3)&,%a3,%acc1 + mac.w %d6u,%d3l,>>,(%a3)&,%a3,%acc2 + mac.w %d6u,%d3l,>>,(%a3)&,%d2,%acc1 + mac.w %d6u,%d3l,>>,(%a3)&,%d2,%acc2 + mac.w %d6u,%d3l,>>,(%a3)&,%a7,%acc1 + mac.w %d6u,%d3l,>>,(%a3)&,%a7,%acc2 + mac.w %d6u,%d3l,>>,(%a2)+,%d1,%acc1 + mac.w %d6u,%d3l,>>,(%a2)+,%d1,%acc2 + mac.w %d6u,%d3l,>>,(%a2)+,%a3,%acc1 + mac.w %d6u,%d3l,>>,(%a2)+,%a3,%acc2 + mac.w %d6u,%d3l,>>,(%a2)+,%d2,%acc1 + mac.w %d6u,%d3l,>>,(%a2)+,%d2,%acc2 + mac.w %d6u,%d3l,>>,(%a2)+,%a7,%acc1 + mac.w %d6u,%d3l,>>,(%a2)+,%a7,%acc2 + mac.w %d6u,%d3l,>>,(%a2)+&,%d1,%acc1 + mac.w %d6u,%d3l,>>,(%a2)+&,%d1,%acc2 + mac.w %d6u,%d3l,>>,(%a2)+&,%a3,%acc1 + mac.w %d6u,%d3l,>>,(%a2)+&,%a3,%acc2 + mac.w %d6u,%d3l,>>,(%a2)+&,%d2,%acc1 + mac.w %d6u,%d3l,>>,(%a2)+&,%d2,%acc2 + mac.w %d6u,%d3l,>>,(%a2)+&,%a7,%acc1 + mac.w %d6u,%d3l,>>,(%a2)+&,%a7,%acc2 + mac.w %d6u,%d3l,>>,10(%a6),%d1,%acc1 + mac.w %d6u,%d3l,>>,10(%a6),%d1,%acc2 + mac.w %d6u,%d3l,>>,10(%a6),%a3,%acc1 + mac.w %d6u,%d3l,>>,10(%a6),%a3,%acc2 + mac.w %d6u,%d3l,>>,10(%a6),%d2,%acc1 + mac.w %d6u,%d3l,>>,10(%a6),%d2,%acc2 + mac.w %d6u,%d3l,>>,10(%a6),%a7,%acc1 + mac.w %d6u,%d3l,>>,10(%a6),%a7,%acc2 + mac.w %d6u,%d3l,>>,10(%a6)&,%d1,%acc1 + mac.w %d6u,%d3l,>>,10(%a6)&,%d1,%acc2 + mac.w %d6u,%d3l,>>,10(%a6)&,%a3,%acc1 + mac.w %d6u,%d3l,>>,10(%a6)&,%a3,%acc2 + mac.w %d6u,%d3l,>>,10(%a6)&,%d2,%acc1 + mac.w %d6u,%d3l,>>,10(%a6)&,%d2,%acc2 + mac.w %d6u,%d3l,>>,10(%a6)&,%a7,%acc1 + mac.w %d6u,%d3l,>>,10(%a6)&,%a7,%acc2 + mac.w %d6u,%d3l,>>,-(%a1),%d1,%acc1 + mac.w %d6u,%d3l,>>,-(%a1),%d1,%acc2 + mac.w %d6u,%d3l,>>,-(%a1),%a3,%acc1 + mac.w %d6u,%d3l,>>,-(%a1),%a3,%acc2 + mac.w %d6u,%d3l,>>,-(%a1),%d2,%acc1 + mac.w %d6u,%d3l,>>,-(%a1),%d2,%acc2 + mac.w %d6u,%d3l,>>,-(%a1),%a7,%acc1 + mac.w %d6u,%d3l,>>,-(%a1),%a7,%acc2 + mac.w %d6u,%d3l,>>,-(%a1)&,%d1,%acc1 + mac.w %d6u,%d3l,>>,-(%a1)&,%d1,%acc2 + mac.w %d6u,%d3l,>>,-(%a1)&,%a3,%acc1 + mac.w %d6u,%d3l,>>,-(%a1)&,%a3,%acc2 + mac.w %d6u,%d3l,>>,-(%a1)&,%d2,%acc1 + mac.w %d6u,%d3l,>>,-(%a1)&,%d2,%acc2 + mac.w %d6u,%d3l,>>,-(%a1)&,%a7,%acc1 + mac.w %d6u,%d3l,>>,-(%a1)&,%a7,%acc2 + mac.w %d6u,%d3l,#1,(%a3),%d1,%acc1 + mac.w %d6u,%d3l,#1,(%a3),%d1,%acc2 + mac.w %d6u,%d3l,#1,(%a3),%a3,%acc1 + mac.w %d6u,%d3l,#1,(%a3),%a3,%acc2 + mac.w %d6u,%d3l,#1,(%a3),%d2,%acc1 + mac.w %d6u,%d3l,#1,(%a3),%d2,%acc2 + mac.w %d6u,%d3l,#1,(%a3),%a7,%acc1 + mac.w %d6u,%d3l,#1,(%a3),%a7,%acc2 + mac.w %d6u,%d3l,#1,(%a3)&,%d1,%acc1 + mac.w %d6u,%d3l,#1,(%a3)&,%d1,%acc2 + mac.w %d6u,%d3l,#1,(%a3)&,%a3,%acc1 + mac.w %d6u,%d3l,#1,(%a3)&,%a3,%acc2 + mac.w %d6u,%d3l,#1,(%a3)&,%d2,%acc1 + mac.w %d6u,%d3l,#1,(%a3)&,%d2,%acc2 + mac.w %d6u,%d3l,#1,(%a3)&,%a7,%acc1 + mac.w %d6u,%d3l,#1,(%a3)&,%a7,%acc2 + mac.w %d6u,%d3l,#1,(%a2)+,%d1,%acc1 + mac.w %d6u,%d3l,#1,(%a2)+,%d1,%acc2 + mac.w %d6u,%d3l,#1,(%a2)+,%a3,%acc1 + mac.w %d6u,%d3l,#1,(%a2)+,%a3,%acc2 + mac.w %d6u,%d3l,#1,(%a2)+,%d2,%acc1 + mac.w %d6u,%d3l,#1,(%a2)+,%d2,%acc2 + mac.w %d6u,%d3l,#1,(%a2)+,%a7,%acc1 + mac.w %d6u,%d3l,#1,(%a2)+,%a7,%acc2 + mac.w %d6u,%d3l,#1,(%a2)+&,%d1,%acc1 + mac.w %d6u,%d3l,#1,(%a2)+&,%d1,%acc2 + mac.w %d6u,%d3l,#1,(%a2)+&,%a3,%acc1 + mac.w %d6u,%d3l,#1,(%a2)+&,%a3,%acc2 + mac.w %d6u,%d3l,#1,(%a2)+&,%d2,%acc1 + mac.w %d6u,%d3l,#1,(%a2)+&,%d2,%acc2 + mac.w %d6u,%d3l,#1,(%a2)+&,%a7,%acc1 + mac.w %d6u,%d3l,#1,(%a2)+&,%a7,%acc2 + mac.w %d6u,%d3l,#1,10(%a6),%d1,%acc1 + mac.w %d6u,%d3l,#1,10(%a6),%d1,%acc2 + mac.w %d6u,%d3l,#1,10(%a6),%a3,%acc1 + mac.w %d6u,%d3l,#1,10(%a6),%a3,%acc2 + mac.w %d6u,%d3l,#1,10(%a6),%d2,%acc1 + mac.w %d6u,%d3l,#1,10(%a6),%d2,%acc2 + mac.w %d6u,%d3l,#1,10(%a6),%a7,%acc1 + mac.w %d6u,%d3l,#1,10(%a6),%a7,%acc2 + mac.w %d6u,%d3l,#1,10(%a6)&,%d1,%acc1 + mac.w %d6u,%d3l,#1,10(%a6)&,%d1,%acc2 + mac.w %d6u,%d3l,#1,10(%a6)&,%a3,%acc1 + mac.w %d6u,%d3l,#1,10(%a6)&,%a3,%acc2 + mac.w %d6u,%d3l,#1,10(%a6)&,%d2,%acc1 + mac.w %d6u,%d3l,#1,10(%a6)&,%d2,%acc2 + mac.w %d6u,%d3l,#1,10(%a6)&,%a7,%acc1 + mac.w %d6u,%d3l,#1,10(%a6)&,%a7,%acc2 + mac.w %d6u,%d3l,#1,-(%a1),%d1,%acc1 + mac.w %d6u,%d3l,#1,-(%a1),%d1,%acc2 + mac.w %d6u,%d3l,#1,-(%a1),%a3,%acc1 + mac.w %d6u,%d3l,#1,-(%a1),%a3,%acc2 + mac.w %d6u,%d3l,#1,-(%a1),%d2,%acc1 + mac.w %d6u,%d3l,#1,-(%a1),%d2,%acc2 + mac.w %d6u,%d3l,#1,-(%a1),%a7,%acc1 + mac.w %d6u,%d3l,#1,-(%a1),%a7,%acc2 + mac.w %d6u,%d3l,#1,-(%a1)&,%d1,%acc1 + mac.w %d6u,%d3l,#1,-(%a1)&,%d1,%acc2 + mac.w %d6u,%d3l,#1,-(%a1)&,%a3,%acc1 + mac.w %d6u,%d3l,#1,-(%a1)&,%a3,%acc2 + mac.w %d6u,%d3l,#1,-(%a1)&,%d2,%acc1 + mac.w %d6u,%d3l,#1,-(%a1)&,%d2,%acc2 + mac.w %d6u,%d3l,#1,-(%a1)&,%a7,%acc1 + mac.w %d6u,%d3l,#1,-(%a1)&,%a7,%acc2 + mac.w %d6u,%d3l,#-1,(%a3),%d1,%acc1 + mac.w %d6u,%d3l,#-1,(%a3),%d1,%acc2 + mac.w %d6u,%d3l,#-1,(%a3),%a3,%acc1 + mac.w %d6u,%d3l,#-1,(%a3),%a3,%acc2 + mac.w %d6u,%d3l,#-1,(%a3),%d2,%acc1 + mac.w %d6u,%d3l,#-1,(%a3),%d2,%acc2 + mac.w %d6u,%d3l,#-1,(%a3),%a7,%acc1 + mac.w %d6u,%d3l,#-1,(%a3),%a7,%acc2 + mac.w %d6u,%d3l,#-1,(%a3)&,%d1,%acc1 + mac.w %d6u,%d3l,#-1,(%a3)&,%d1,%acc2 + mac.w %d6u,%d3l,#-1,(%a3)&,%a3,%acc1 + mac.w %d6u,%d3l,#-1,(%a3)&,%a3,%acc2 + mac.w %d6u,%d3l,#-1,(%a3)&,%d2,%acc1 + mac.w %d6u,%d3l,#-1,(%a3)&,%d2,%acc2 + mac.w %d6u,%d3l,#-1,(%a3)&,%a7,%acc1 + mac.w %d6u,%d3l,#-1,(%a3)&,%a7,%acc2 + mac.w %d6u,%d3l,#-1,(%a2)+,%d1,%acc1 + mac.w %d6u,%d3l,#-1,(%a2)+,%d1,%acc2 + mac.w %d6u,%d3l,#-1,(%a2)+,%a3,%acc1 + mac.w %d6u,%d3l,#-1,(%a2)+,%a3,%acc2 + mac.w %d6u,%d3l,#-1,(%a2)+,%d2,%acc1 + mac.w %d6u,%d3l,#-1,(%a2)+,%d2,%acc2 + mac.w %d6u,%d3l,#-1,(%a2)+,%a7,%acc1 + mac.w %d6u,%d3l,#-1,(%a2)+,%a7,%acc2 + mac.w %d6u,%d3l,#-1,(%a2)+&,%d1,%acc1 + mac.w %d6u,%d3l,#-1,(%a2)+&,%d1,%acc2 + mac.w %d6u,%d3l,#-1,(%a2)+&,%a3,%acc1 + mac.w %d6u,%d3l,#-1,(%a2)+&,%a3,%acc2 + mac.w %d6u,%d3l,#-1,(%a2)+&,%d2,%acc1 + mac.w %d6u,%d3l,#-1,(%a2)+&,%d2,%acc2 + mac.w %d6u,%d3l,#-1,(%a2)+&,%a7,%acc1 + mac.w %d6u,%d3l,#-1,(%a2)+&,%a7,%acc2 + mac.w %d6u,%d3l,#-1,10(%a6),%d1,%acc1 + mac.w %d6u,%d3l,#-1,10(%a6),%d1,%acc2 + mac.w %d6u,%d3l,#-1,10(%a6),%a3,%acc1 + mac.w %d6u,%d3l,#-1,10(%a6),%a3,%acc2 + mac.w %d6u,%d3l,#-1,10(%a6),%d2,%acc1 + mac.w %d6u,%d3l,#-1,10(%a6),%d2,%acc2 + mac.w %d6u,%d3l,#-1,10(%a6),%a7,%acc1 + mac.w %d6u,%d3l,#-1,10(%a6),%a7,%acc2 + mac.w %d6u,%d3l,#-1,10(%a6)&,%d1,%acc1 + mac.w %d6u,%d3l,#-1,10(%a6)&,%d1,%acc2 + mac.w %d6u,%d3l,#-1,10(%a6)&,%a3,%acc1 + mac.w %d6u,%d3l,#-1,10(%a6)&,%a3,%acc2 + mac.w %d6u,%d3l,#-1,10(%a6)&,%d2,%acc1 + mac.w %d6u,%d3l,#-1,10(%a6)&,%d2,%acc2 + mac.w %d6u,%d3l,#-1,10(%a6)&,%a7,%acc1 + mac.w %d6u,%d3l,#-1,10(%a6)&,%a7,%acc2 + mac.w %d6u,%d3l,#-1,-(%a1),%d1,%acc1 + mac.w %d6u,%d3l,#-1,-(%a1),%d1,%acc2 + mac.w %d6u,%d3l,#-1,-(%a1),%a3,%acc1 + mac.w %d6u,%d3l,#-1,-(%a1),%a3,%acc2 + mac.w %d6u,%d3l,#-1,-(%a1),%d2,%acc1 + mac.w %d6u,%d3l,#-1,-(%a1),%d2,%acc2 + mac.w %d6u,%d3l,#-1,-(%a1),%a7,%acc1 + mac.w %d6u,%d3l,#-1,-(%a1),%a7,%acc2 + mac.w %d6u,%d3l,#-1,-(%a1)&,%d1,%acc1 + mac.w %d6u,%d3l,#-1,-(%a1)&,%d1,%acc2 + mac.w %d6u,%d3l,#-1,-(%a1)&,%a3,%acc1 + mac.w %d6u,%d3l,#-1,-(%a1)&,%a3,%acc2 + mac.w %d6u,%d3l,#-1,-(%a1)&,%d2,%acc1 + mac.w %d6u,%d3l,#-1,-(%a1)&,%d2,%acc2 + mac.w %d6u,%d3l,#-1,-(%a1)&,%a7,%acc1 + mac.w %d6u,%d3l,#-1,-(%a1)&,%a7,%acc2 + mac.w %d6u,%a7u,(%a3),%d1,%acc1 + mac.w %d6u,%a7u,(%a3),%d1,%acc2 + mac.w %d6u,%a7u,(%a3),%a3,%acc1 + mac.w %d6u,%a7u,(%a3),%a3,%acc2 + mac.w %d6u,%a7u,(%a3),%d2,%acc1 + mac.w %d6u,%a7u,(%a3),%d2,%acc2 + mac.w %d6u,%a7u,(%a3),%a7,%acc1 + mac.w %d6u,%a7u,(%a3),%a7,%acc2 + mac.w %d6u,%a7u,(%a3)&,%d1,%acc1 + mac.w %d6u,%a7u,(%a3)&,%d1,%acc2 + mac.w %d6u,%a7u,(%a3)&,%a3,%acc1 + mac.w %d6u,%a7u,(%a3)&,%a3,%acc2 + mac.w %d6u,%a7u,(%a3)&,%d2,%acc1 + mac.w %d6u,%a7u,(%a3)&,%d2,%acc2 + mac.w %d6u,%a7u,(%a3)&,%a7,%acc1 + mac.w %d6u,%a7u,(%a3)&,%a7,%acc2 + mac.w %d6u,%a7u,(%a2)+,%d1,%acc1 + mac.w %d6u,%a7u,(%a2)+,%d1,%acc2 + mac.w %d6u,%a7u,(%a2)+,%a3,%acc1 + mac.w %d6u,%a7u,(%a2)+,%a3,%acc2 + mac.w %d6u,%a7u,(%a2)+,%d2,%acc1 + mac.w %d6u,%a7u,(%a2)+,%d2,%acc2 + mac.w %d6u,%a7u,(%a2)+,%a7,%acc1 + mac.w %d6u,%a7u,(%a2)+,%a7,%acc2 + mac.w %d6u,%a7u,(%a2)+&,%d1,%acc1 + mac.w %d6u,%a7u,(%a2)+&,%d1,%acc2 + mac.w %d6u,%a7u,(%a2)+&,%a3,%acc1 + mac.w %d6u,%a7u,(%a2)+&,%a3,%acc2 + mac.w %d6u,%a7u,(%a2)+&,%d2,%acc1 + mac.w %d6u,%a7u,(%a2)+&,%d2,%acc2 + mac.w %d6u,%a7u,(%a2)+&,%a7,%acc1 + mac.w %d6u,%a7u,(%a2)+&,%a7,%acc2 + mac.w %d6u,%a7u,10(%a6),%d1,%acc1 + mac.w %d6u,%a7u,10(%a6),%d1,%acc2 + mac.w %d6u,%a7u,10(%a6),%a3,%acc1 + mac.w %d6u,%a7u,10(%a6),%a3,%acc2 + mac.w %d6u,%a7u,10(%a6),%d2,%acc1 + mac.w %d6u,%a7u,10(%a6),%d2,%acc2 + mac.w %d6u,%a7u,10(%a6),%a7,%acc1 + mac.w %d6u,%a7u,10(%a6),%a7,%acc2 + mac.w %d6u,%a7u,10(%a6)&,%d1,%acc1 + mac.w %d6u,%a7u,10(%a6)&,%d1,%acc2 + mac.w %d6u,%a7u,10(%a6)&,%a3,%acc1 + mac.w %d6u,%a7u,10(%a6)&,%a3,%acc2 + mac.w %d6u,%a7u,10(%a6)&,%d2,%acc1 + mac.w %d6u,%a7u,10(%a6)&,%d2,%acc2 + mac.w %d6u,%a7u,10(%a6)&,%a7,%acc1 + mac.w %d6u,%a7u,10(%a6)&,%a7,%acc2 + mac.w %d6u,%a7u,-(%a1),%d1,%acc1 + mac.w %d6u,%a7u,-(%a1),%d1,%acc2 + mac.w %d6u,%a7u,-(%a1),%a3,%acc1 + mac.w %d6u,%a7u,-(%a1),%a3,%acc2 + mac.w %d6u,%a7u,-(%a1),%d2,%acc1 + mac.w %d6u,%a7u,-(%a1),%d2,%acc2 + mac.w %d6u,%a7u,-(%a1),%a7,%acc1 + mac.w %d6u,%a7u,-(%a1),%a7,%acc2 + mac.w %d6u,%a7u,-(%a1)&,%d1,%acc1 + mac.w %d6u,%a7u,-(%a1)&,%d1,%acc2 + mac.w %d6u,%a7u,-(%a1)&,%a3,%acc1 + mac.w %d6u,%a7u,-(%a1)&,%a3,%acc2 + mac.w %d6u,%a7u,-(%a1)&,%d2,%acc1 + mac.w %d6u,%a7u,-(%a1)&,%d2,%acc2 + mac.w %d6u,%a7u,-(%a1)&,%a7,%acc1 + mac.w %d6u,%a7u,-(%a1)&,%a7,%acc2 + mac.w %d6u,%a7u,<<,(%a3),%d1,%acc1 + mac.w %d6u,%a7u,<<,(%a3),%d1,%acc2 + mac.w %d6u,%a7u,<<,(%a3),%a3,%acc1 + mac.w %d6u,%a7u,<<,(%a3),%a3,%acc2 + mac.w %d6u,%a7u,<<,(%a3),%d2,%acc1 + mac.w %d6u,%a7u,<<,(%a3),%d2,%acc2 + mac.w %d6u,%a7u,<<,(%a3),%a7,%acc1 + mac.w %d6u,%a7u,<<,(%a3),%a7,%acc2 + mac.w %d6u,%a7u,<<,(%a3)&,%d1,%acc1 + mac.w %d6u,%a7u,<<,(%a3)&,%d1,%acc2 + mac.w %d6u,%a7u,<<,(%a3)&,%a3,%acc1 + mac.w %d6u,%a7u,<<,(%a3)&,%a3,%acc2 + mac.w %d6u,%a7u,<<,(%a3)&,%d2,%acc1 + mac.w %d6u,%a7u,<<,(%a3)&,%d2,%acc2 + mac.w %d6u,%a7u,<<,(%a3)&,%a7,%acc1 + mac.w %d6u,%a7u,<<,(%a3)&,%a7,%acc2 + mac.w %d6u,%a7u,<<,(%a2)+,%d1,%acc1 + mac.w %d6u,%a7u,<<,(%a2)+,%d1,%acc2 + mac.w %d6u,%a7u,<<,(%a2)+,%a3,%acc1 + mac.w %d6u,%a7u,<<,(%a2)+,%a3,%acc2 + mac.w %d6u,%a7u,<<,(%a2)+,%d2,%acc1 + mac.w %d6u,%a7u,<<,(%a2)+,%d2,%acc2 + mac.w %d6u,%a7u,<<,(%a2)+,%a7,%acc1 + mac.w %d6u,%a7u,<<,(%a2)+,%a7,%acc2 + mac.w %d6u,%a7u,<<,(%a2)+&,%d1,%acc1 + mac.w %d6u,%a7u,<<,(%a2)+&,%d1,%acc2 + mac.w %d6u,%a7u,<<,(%a2)+&,%a3,%acc1 + mac.w %d6u,%a7u,<<,(%a2)+&,%a3,%acc2 + mac.w %d6u,%a7u,<<,(%a2)+&,%d2,%acc1 + mac.w %d6u,%a7u,<<,(%a2)+&,%d2,%acc2 + mac.w %d6u,%a7u,<<,(%a2)+&,%a7,%acc1 + mac.w %d6u,%a7u,<<,(%a2)+&,%a7,%acc2 + mac.w %d6u,%a7u,<<,10(%a6),%d1,%acc1 + mac.w %d6u,%a7u,<<,10(%a6),%d1,%acc2 + mac.w %d6u,%a7u,<<,10(%a6),%a3,%acc1 + mac.w %d6u,%a7u,<<,10(%a6),%a3,%acc2 + mac.w %d6u,%a7u,<<,10(%a6),%d2,%acc1 + mac.w %d6u,%a7u,<<,10(%a6),%d2,%acc2 + mac.w %d6u,%a7u,<<,10(%a6),%a7,%acc1 + mac.w %d6u,%a7u,<<,10(%a6),%a7,%acc2 + mac.w %d6u,%a7u,<<,10(%a6)&,%d1,%acc1 + mac.w %d6u,%a7u,<<,10(%a6)&,%d1,%acc2 + mac.w %d6u,%a7u,<<,10(%a6)&,%a3,%acc1 + mac.w %d6u,%a7u,<<,10(%a6)&,%a3,%acc2 + mac.w %d6u,%a7u,<<,10(%a6)&,%d2,%acc1 + mac.w %d6u,%a7u,<<,10(%a6)&,%d2,%acc2 + mac.w %d6u,%a7u,<<,10(%a6)&,%a7,%acc1 + mac.w %d6u,%a7u,<<,10(%a6)&,%a7,%acc2 + mac.w %d6u,%a7u,<<,-(%a1),%d1,%acc1 + mac.w %d6u,%a7u,<<,-(%a1),%d1,%acc2 + mac.w %d6u,%a7u,<<,-(%a1),%a3,%acc1 + mac.w %d6u,%a7u,<<,-(%a1),%a3,%acc2 + mac.w %d6u,%a7u,<<,-(%a1),%d2,%acc1 + mac.w %d6u,%a7u,<<,-(%a1),%d2,%acc2 + mac.w %d6u,%a7u,<<,-(%a1),%a7,%acc1 + mac.w %d6u,%a7u,<<,-(%a1),%a7,%acc2 + mac.w %d6u,%a7u,<<,-(%a1)&,%d1,%acc1 + mac.w %d6u,%a7u,<<,-(%a1)&,%d1,%acc2 + mac.w %d6u,%a7u,<<,-(%a1)&,%a3,%acc1 + mac.w %d6u,%a7u,<<,-(%a1)&,%a3,%acc2 + mac.w %d6u,%a7u,<<,-(%a1)&,%d2,%acc1 + mac.w %d6u,%a7u,<<,-(%a1)&,%d2,%acc2 + mac.w %d6u,%a7u,<<,-(%a1)&,%a7,%acc1 + mac.w %d6u,%a7u,<<,-(%a1)&,%a7,%acc2 + mac.w %d6u,%a7u,>>,(%a3),%d1,%acc1 + mac.w %d6u,%a7u,>>,(%a3),%d1,%acc2 + mac.w %d6u,%a7u,>>,(%a3),%a3,%acc1 + mac.w %d6u,%a7u,>>,(%a3),%a3,%acc2 + mac.w %d6u,%a7u,>>,(%a3),%d2,%acc1 + mac.w %d6u,%a7u,>>,(%a3),%d2,%acc2 + mac.w %d6u,%a7u,>>,(%a3),%a7,%acc1 + mac.w %d6u,%a7u,>>,(%a3),%a7,%acc2 + mac.w %d6u,%a7u,>>,(%a3)&,%d1,%acc1 + mac.w %d6u,%a7u,>>,(%a3)&,%d1,%acc2 + mac.w %d6u,%a7u,>>,(%a3)&,%a3,%acc1 + mac.w %d6u,%a7u,>>,(%a3)&,%a3,%acc2 + mac.w %d6u,%a7u,>>,(%a3)&,%d2,%acc1 + mac.w %d6u,%a7u,>>,(%a3)&,%d2,%acc2 + mac.w %d6u,%a7u,>>,(%a3)&,%a7,%acc1 + mac.w %d6u,%a7u,>>,(%a3)&,%a7,%acc2 + mac.w %d6u,%a7u,>>,(%a2)+,%d1,%acc1 + mac.w %d6u,%a7u,>>,(%a2)+,%d1,%acc2 + mac.w %d6u,%a7u,>>,(%a2)+,%a3,%acc1 + mac.w %d6u,%a7u,>>,(%a2)+,%a3,%acc2 + mac.w %d6u,%a7u,>>,(%a2)+,%d2,%acc1 + mac.w %d6u,%a7u,>>,(%a2)+,%d2,%acc2 + mac.w %d6u,%a7u,>>,(%a2)+,%a7,%acc1 + mac.w %d6u,%a7u,>>,(%a2)+,%a7,%acc2 + mac.w %d6u,%a7u,>>,(%a2)+&,%d1,%acc1 + mac.w %d6u,%a7u,>>,(%a2)+&,%d1,%acc2 + mac.w %d6u,%a7u,>>,(%a2)+&,%a3,%acc1 + mac.w %d6u,%a7u,>>,(%a2)+&,%a3,%acc2 + mac.w %d6u,%a7u,>>,(%a2)+&,%d2,%acc1 + mac.w %d6u,%a7u,>>,(%a2)+&,%d2,%acc2 + mac.w %d6u,%a7u,>>,(%a2)+&,%a7,%acc1 + mac.w %d6u,%a7u,>>,(%a2)+&,%a7,%acc2 + mac.w %d6u,%a7u,>>,10(%a6),%d1,%acc1 + mac.w %d6u,%a7u,>>,10(%a6),%d1,%acc2 + mac.w %d6u,%a7u,>>,10(%a6),%a3,%acc1 + mac.w %d6u,%a7u,>>,10(%a6),%a3,%acc2 + mac.w %d6u,%a7u,>>,10(%a6),%d2,%acc1 + mac.w %d6u,%a7u,>>,10(%a6),%d2,%acc2 + mac.w %d6u,%a7u,>>,10(%a6),%a7,%acc1 + mac.w %d6u,%a7u,>>,10(%a6),%a7,%acc2 + mac.w %d6u,%a7u,>>,10(%a6)&,%d1,%acc1 + mac.w %d6u,%a7u,>>,10(%a6)&,%d1,%acc2 + mac.w %d6u,%a7u,>>,10(%a6)&,%a3,%acc1 + mac.w %d6u,%a7u,>>,10(%a6)&,%a3,%acc2 + mac.w %d6u,%a7u,>>,10(%a6)&,%d2,%acc1 + mac.w %d6u,%a7u,>>,10(%a6)&,%d2,%acc2 + mac.w %d6u,%a7u,>>,10(%a6)&,%a7,%acc1 + mac.w %d6u,%a7u,>>,10(%a6)&,%a7,%acc2 + mac.w %d6u,%a7u,>>,-(%a1),%d1,%acc1 + mac.w %d6u,%a7u,>>,-(%a1),%d1,%acc2 + mac.w %d6u,%a7u,>>,-(%a1),%a3,%acc1 + mac.w %d6u,%a7u,>>,-(%a1),%a3,%acc2 + mac.w %d6u,%a7u,>>,-(%a1),%d2,%acc1 + mac.w %d6u,%a7u,>>,-(%a1),%d2,%acc2 + mac.w %d6u,%a7u,>>,-(%a1),%a7,%acc1 + mac.w %d6u,%a7u,>>,-(%a1),%a7,%acc2 + mac.w %d6u,%a7u,>>,-(%a1)&,%d1,%acc1 + mac.w %d6u,%a7u,>>,-(%a1)&,%d1,%acc2 + mac.w %d6u,%a7u,>>,-(%a1)&,%a3,%acc1 + mac.w %d6u,%a7u,>>,-(%a1)&,%a3,%acc2 + mac.w %d6u,%a7u,>>,-(%a1)&,%d2,%acc1 + mac.w %d6u,%a7u,>>,-(%a1)&,%d2,%acc2 + mac.w %d6u,%a7u,>>,-(%a1)&,%a7,%acc1 + mac.w %d6u,%a7u,>>,-(%a1)&,%a7,%acc2 + mac.w %d6u,%a7u,#1,(%a3),%d1,%acc1 + mac.w %d6u,%a7u,#1,(%a3),%d1,%acc2 + mac.w %d6u,%a7u,#1,(%a3),%a3,%acc1 + mac.w %d6u,%a7u,#1,(%a3),%a3,%acc2 + mac.w %d6u,%a7u,#1,(%a3),%d2,%acc1 + mac.w %d6u,%a7u,#1,(%a3),%d2,%acc2 + mac.w %d6u,%a7u,#1,(%a3),%a7,%acc1 + mac.w %d6u,%a7u,#1,(%a3),%a7,%acc2 + mac.w %d6u,%a7u,#1,(%a3)&,%d1,%acc1 + mac.w %d6u,%a7u,#1,(%a3)&,%d1,%acc2 + mac.w %d6u,%a7u,#1,(%a3)&,%a3,%acc1 + mac.w %d6u,%a7u,#1,(%a3)&,%a3,%acc2 + mac.w %d6u,%a7u,#1,(%a3)&,%d2,%acc1 + mac.w %d6u,%a7u,#1,(%a3)&,%d2,%acc2 + mac.w %d6u,%a7u,#1,(%a3)&,%a7,%acc1 + mac.w %d6u,%a7u,#1,(%a3)&,%a7,%acc2 + mac.w %d6u,%a7u,#1,(%a2)+,%d1,%acc1 + mac.w %d6u,%a7u,#1,(%a2)+,%d1,%acc2 + mac.w %d6u,%a7u,#1,(%a2)+,%a3,%acc1 + mac.w %d6u,%a7u,#1,(%a2)+,%a3,%acc2 + mac.w %d6u,%a7u,#1,(%a2)+,%d2,%acc1 + mac.w %d6u,%a7u,#1,(%a2)+,%d2,%acc2 + mac.w %d6u,%a7u,#1,(%a2)+,%a7,%acc1 + mac.w %d6u,%a7u,#1,(%a2)+,%a7,%acc2 + mac.w %d6u,%a7u,#1,(%a2)+&,%d1,%acc1 + mac.w %d6u,%a7u,#1,(%a2)+&,%d1,%acc2 + mac.w %d6u,%a7u,#1,(%a2)+&,%a3,%acc1 + mac.w %d6u,%a7u,#1,(%a2)+&,%a3,%acc2 + mac.w %d6u,%a7u,#1,(%a2)+&,%d2,%acc1 + mac.w %d6u,%a7u,#1,(%a2)+&,%d2,%acc2 + mac.w %d6u,%a7u,#1,(%a2)+&,%a7,%acc1 + mac.w %d6u,%a7u,#1,(%a2)+&,%a7,%acc2 + mac.w %d6u,%a7u,#1,10(%a6),%d1,%acc1 + mac.w %d6u,%a7u,#1,10(%a6),%d1,%acc2 + mac.w %d6u,%a7u,#1,10(%a6),%a3,%acc1 + mac.w %d6u,%a7u,#1,10(%a6),%a3,%acc2 + mac.w %d6u,%a7u,#1,10(%a6),%d2,%acc1 + mac.w %d6u,%a7u,#1,10(%a6),%d2,%acc2 + mac.w %d6u,%a7u,#1,10(%a6),%a7,%acc1 + mac.w %d6u,%a7u,#1,10(%a6),%a7,%acc2 + mac.w %d6u,%a7u,#1,10(%a6)&,%d1,%acc1 + mac.w %d6u,%a7u,#1,10(%a6)&,%d1,%acc2 + mac.w %d6u,%a7u,#1,10(%a6)&,%a3,%acc1 + mac.w %d6u,%a7u,#1,10(%a6)&,%a3,%acc2 + mac.w %d6u,%a7u,#1,10(%a6)&,%d2,%acc1 + mac.w %d6u,%a7u,#1,10(%a6)&,%d2,%acc2 + mac.w %d6u,%a7u,#1,10(%a6)&,%a7,%acc1 + mac.w %d6u,%a7u,#1,10(%a6)&,%a7,%acc2 + mac.w %d6u,%a7u,#1,-(%a1),%d1,%acc1 + mac.w %d6u,%a7u,#1,-(%a1),%d1,%acc2 + mac.w %d6u,%a7u,#1,-(%a1),%a3,%acc1 + mac.w %d6u,%a7u,#1,-(%a1),%a3,%acc2 + mac.w %d6u,%a7u,#1,-(%a1),%d2,%acc1 + mac.w %d6u,%a7u,#1,-(%a1),%d2,%acc2 + mac.w %d6u,%a7u,#1,-(%a1),%a7,%acc1 + mac.w %d6u,%a7u,#1,-(%a1),%a7,%acc2 + mac.w %d6u,%a7u,#1,-(%a1)&,%d1,%acc1 + mac.w %d6u,%a7u,#1,-(%a1)&,%d1,%acc2 + mac.w %d6u,%a7u,#1,-(%a1)&,%a3,%acc1 + mac.w %d6u,%a7u,#1,-(%a1)&,%a3,%acc2 + mac.w %d6u,%a7u,#1,-(%a1)&,%d2,%acc1 + mac.w %d6u,%a7u,#1,-(%a1)&,%d2,%acc2 + mac.w %d6u,%a7u,#1,-(%a1)&,%a7,%acc1 + mac.w %d6u,%a7u,#1,-(%a1)&,%a7,%acc2 + mac.w %d6u,%a7u,#-1,(%a3),%d1,%acc1 + mac.w %d6u,%a7u,#-1,(%a3),%d1,%acc2 + mac.w %d6u,%a7u,#-1,(%a3),%a3,%acc1 + mac.w %d6u,%a7u,#-1,(%a3),%a3,%acc2 + mac.w %d6u,%a7u,#-1,(%a3),%d2,%acc1 + mac.w %d6u,%a7u,#-1,(%a3),%d2,%acc2 + mac.w %d6u,%a7u,#-1,(%a3),%a7,%acc1 + mac.w %d6u,%a7u,#-1,(%a3),%a7,%acc2 + mac.w %d6u,%a7u,#-1,(%a3)&,%d1,%acc1 + mac.w %d6u,%a7u,#-1,(%a3)&,%d1,%acc2 + mac.w %d6u,%a7u,#-1,(%a3)&,%a3,%acc1 + mac.w %d6u,%a7u,#-1,(%a3)&,%a3,%acc2 + mac.w %d6u,%a7u,#-1,(%a3)&,%d2,%acc1 + mac.w %d6u,%a7u,#-1,(%a3)&,%d2,%acc2 + mac.w %d6u,%a7u,#-1,(%a3)&,%a7,%acc1 + mac.w %d6u,%a7u,#-1,(%a3)&,%a7,%acc2 + mac.w %d6u,%a7u,#-1,(%a2)+,%d1,%acc1 + mac.w %d6u,%a7u,#-1,(%a2)+,%d1,%acc2 + mac.w %d6u,%a7u,#-1,(%a2)+,%a3,%acc1 + mac.w %d6u,%a7u,#-1,(%a2)+,%a3,%acc2 + mac.w %d6u,%a7u,#-1,(%a2)+,%d2,%acc1 + mac.w %d6u,%a7u,#-1,(%a2)+,%d2,%acc2 + mac.w %d6u,%a7u,#-1,(%a2)+,%a7,%acc1 + mac.w %d6u,%a7u,#-1,(%a2)+,%a7,%acc2 + mac.w %d6u,%a7u,#-1,(%a2)+&,%d1,%acc1 + mac.w %d6u,%a7u,#-1,(%a2)+&,%d1,%acc2 + mac.w %d6u,%a7u,#-1,(%a2)+&,%a3,%acc1 + mac.w %d6u,%a7u,#-1,(%a2)+&,%a3,%acc2 + mac.w %d6u,%a7u,#-1,(%a2)+&,%d2,%acc1 + mac.w %d6u,%a7u,#-1,(%a2)+&,%d2,%acc2 + mac.w %d6u,%a7u,#-1,(%a2)+&,%a7,%acc1 + mac.w %d6u,%a7u,#-1,(%a2)+&,%a7,%acc2 + mac.w %d6u,%a7u,#-1,10(%a6),%d1,%acc1 + mac.w %d6u,%a7u,#-1,10(%a6),%d1,%acc2 + mac.w %d6u,%a7u,#-1,10(%a6),%a3,%acc1 + mac.w %d6u,%a7u,#-1,10(%a6),%a3,%acc2 + mac.w %d6u,%a7u,#-1,10(%a6),%d2,%acc1 + mac.w %d6u,%a7u,#-1,10(%a6),%d2,%acc2 + mac.w %d6u,%a7u,#-1,10(%a6),%a7,%acc1 + mac.w %d6u,%a7u,#-1,10(%a6),%a7,%acc2 + mac.w %d6u,%a7u,#-1,10(%a6)&,%d1,%acc1 + mac.w %d6u,%a7u,#-1,10(%a6)&,%d1,%acc2 + mac.w %d6u,%a7u,#-1,10(%a6)&,%a3,%acc1 + mac.w %d6u,%a7u,#-1,10(%a6)&,%a3,%acc2 + mac.w %d6u,%a7u,#-1,10(%a6)&,%d2,%acc1 + mac.w %d6u,%a7u,#-1,10(%a6)&,%d2,%acc2 + mac.w %d6u,%a7u,#-1,10(%a6)&,%a7,%acc1 + mac.w %d6u,%a7u,#-1,10(%a6)&,%a7,%acc2 + mac.w %d6u,%a7u,#-1,-(%a1),%d1,%acc1 + mac.w %d6u,%a7u,#-1,-(%a1),%d1,%acc2 + mac.w %d6u,%a7u,#-1,-(%a1),%a3,%acc1 + mac.w %d6u,%a7u,#-1,-(%a1),%a3,%acc2 + mac.w %d6u,%a7u,#-1,-(%a1),%d2,%acc1 + mac.w %d6u,%a7u,#-1,-(%a1),%d2,%acc2 + mac.w %d6u,%a7u,#-1,-(%a1),%a7,%acc1 + mac.w %d6u,%a7u,#-1,-(%a1),%a7,%acc2 + mac.w %d6u,%a7u,#-1,-(%a1)&,%d1,%acc1 + mac.w %d6u,%a7u,#-1,-(%a1)&,%d1,%acc2 + mac.w %d6u,%a7u,#-1,-(%a1)&,%a3,%acc1 + mac.w %d6u,%a7u,#-1,-(%a1)&,%a3,%acc2 + mac.w %d6u,%a7u,#-1,-(%a1)&,%d2,%acc1 + mac.w %d6u,%a7u,#-1,-(%a1)&,%d2,%acc2 + mac.w %d6u,%a7u,#-1,-(%a1)&,%a7,%acc1 + mac.w %d6u,%a7u,#-1,-(%a1)&,%a7,%acc2 + mac.w %d6u,%d1l,(%a3),%d1,%acc1 + mac.w %d6u,%d1l,(%a3),%d1,%acc2 + mac.w %d6u,%d1l,(%a3),%a3,%acc1 + mac.w %d6u,%d1l,(%a3),%a3,%acc2 + mac.w %d6u,%d1l,(%a3),%d2,%acc1 + mac.w %d6u,%d1l,(%a3),%d2,%acc2 + mac.w %d6u,%d1l,(%a3),%a7,%acc1 + mac.w %d6u,%d1l,(%a3),%a7,%acc2 + mac.w %d6u,%d1l,(%a3)&,%d1,%acc1 + mac.w %d6u,%d1l,(%a3)&,%d1,%acc2 + mac.w %d6u,%d1l,(%a3)&,%a3,%acc1 + mac.w %d6u,%d1l,(%a3)&,%a3,%acc2 + mac.w %d6u,%d1l,(%a3)&,%d2,%acc1 + mac.w %d6u,%d1l,(%a3)&,%d2,%acc2 + mac.w %d6u,%d1l,(%a3)&,%a7,%acc1 + mac.w %d6u,%d1l,(%a3)&,%a7,%acc2 + mac.w %d6u,%d1l,(%a2)+,%d1,%acc1 + mac.w %d6u,%d1l,(%a2)+,%d1,%acc2 + mac.w %d6u,%d1l,(%a2)+,%a3,%acc1 + mac.w %d6u,%d1l,(%a2)+,%a3,%acc2 + mac.w %d6u,%d1l,(%a2)+,%d2,%acc1 + mac.w %d6u,%d1l,(%a2)+,%d2,%acc2 + mac.w %d6u,%d1l,(%a2)+,%a7,%acc1 + mac.w %d6u,%d1l,(%a2)+,%a7,%acc2 + mac.w %d6u,%d1l,(%a2)+&,%d1,%acc1 + mac.w %d6u,%d1l,(%a2)+&,%d1,%acc2 + mac.w %d6u,%d1l,(%a2)+&,%a3,%acc1 + mac.w %d6u,%d1l,(%a2)+&,%a3,%acc2 + mac.w %d6u,%d1l,(%a2)+&,%d2,%acc1 + mac.w %d6u,%d1l,(%a2)+&,%d2,%acc2 + mac.w %d6u,%d1l,(%a2)+&,%a7,%acc1 + mac.w %d6u,%d1l,(%a2)+&,%a7,%acc2 + mac.w %d6u,%d1l,10(%a6),%d1,%acc1 + mac.w %d6u,%d1l,10(%a6),%d1,%acc2 + mac.w %d6u,%d1l,10(%a6),%a3,%acc1 + mac.w %d6u,%d1l,10(%a6),%a3,%acc2 + mac.w %d6u,%d1l,10(%a6),%d2,%acc1 + mac.w %d6u,%d1l,10(%a6),%d2,%acc2 + mac.w %d6u,%d1l,10(%a6),%a7,%acc1 + mac.w %d6u,%d1l,10(%a6),%a7,%acc2 + mac.w %d6u,%d1l,10(%a6)&,%d1,%acc1 + mac.w %d6u,%d1l,10(%a6)&,%d1,%acc2 + mac.w %d6u,%d1l,10(%a6)&,%a3,%acc1 + mac.w %d6u,%d1l,10(%a6)&,%a3,%acc2 + mac.w %d6u,%d1l,10(%a6)&,%d2,%acc1 + mac.w %d6u,%d1l,10(%a6)&,%d2,%acc2 + mac.w %d6u,%d1l,10(%a6)&,%a7,%acc1 + mac.w %d6u,%d1l,10(%a6)&,%a7,%acc2 + mac.w %d6u,%d1l,-(%a1),%d1,%acc1 + mac.w %d6u,%d1l,-(%a1),%d1,%acc2 + mac.w %d6u,%d1l,-(%a1),%a3,%acc1 + mac.w %d6u,%d1l,-(%a1),%a3,%acc2 + mac.w %d6u,%d1l,-(%a1),%d2,%acc1 + mac.w %d6u,%d1l,-(%a1),%d2,%acc2 + mac.w %d6u,%d1l,-(%a1),%a7,%acc1 + mac.w %d6u,%d1l,-(%a1),%a7,%acc2 + mac.w %d6u,%d1l,-(%a1)&,%d1,%acc1 + mac.w %d6u,%d1l,-(%a1)&,%d1,%acc2 + mac.w %d6u,%d1l,-(%a1)&,%a3,%acc1 + mac.w %d6u,%d1l,-(%a1)&,%a3,%acc2 + mac.w %d6u,%d1l,-(%a1)&,%d2,%acc1 + mac.w %d6u,%d1l,-(%a1)&,%d2,%acc2 + mac.w %d6u,%d1l,-(%a1)&,%a7,%acc1 + mac.w %d6u,%d1l,-(%a1)&,%a7,%acc2 + mac.w %d6u,%d1l,<<,(%a3),%d1,%acc1 + mac.w %d6u,%d1l,<<,(%a3),%d1,%acc2 + mac.w %d6u,%d1l,<<,(%a3),%a3,%acc1 + mac.w %d6u,%d1l,<<,(%a3),%a3,%acc2 + mac.w %d6u,%d1l,<<,(%a3),%d2,%acc1 + mac.w %d6u,%d1l,<<,(%a3),%d2,%acc2 + mac.w %d6u,%d1l,<<,(%a3),%a7,%acc1 + mac.w %d6u,%d1l,<<,(%a3),%a7,%acc2 + mac.w %d6u,%d1l,<<,(%a3)&,%d1,%acc1 + mac.w %d6u,%d1l,<<,(%a3)&,%d1,%acc2 + mac.w %d6u,%d1l,<<,(%a3)&,%a3,%acc1 + mac.w %d6u,%d1l,<<,(%a3)&,%a3,%acc2 + mac.w %d6u,%d1l,<<,(%a3)&,%d2,%acc1 + mac.w %d6u,%d1l,<<,(%a3)&,%d2,%acc2 + mac.w %d6u,%d1l,<<,(%a3)&,%a7,%acc1 + mac.w %d6u,%d1l,<<,(%a3)&,%a7,%acc2 + mac.w %d6u,%d1l,<<,(%a2)+,%d1,%acc1 + mac.w %d6u,%d1l,<<,(%a2)+,%d1,%acc2 + mac.w %d6u,%d1l,<<,(%a2)+,%a3,%acc1 + mac.w %d6u,%d1l,<<,(%a2)+,%a3,%acc2 + mac.w %d6u,%d1l,<<,(%a2)+,%d2,%acc1 + mac.w %d6u,%d1l,<<,(%a2)+,%d2,%acc2 + mac.w %d6u,%d1l,<<,(%a2)+,%a7,%acc1 + mac.w %d6u,%d1l,<<,(%a2)+,%a7,%acc2 + mac.w %d6u,%d1l,<<,(%a2)+&,%d1,%acc1 + mac.w %d6u,%d1l,<<,(%a2)+&,%d1,%acc2 + mac.w %d6u,%d1l,<<,(%a2)+&,%a3,%acc1 + mac.w %d6u,%d1l,<<,(%a2)+&,%a3,%acc2 + mac.w %d6u,%d1l,<<,(%a2)+&,%d2,%acc1 + mac.w %d6u,%d1l,<<,(%a2)+&,%d2,%acc2 + mac.w %d6u,%d1l,<<,(%a2)+&,%a7,%acc1 + mac.w %d6u,%d1l,<<,(%a2)+&,%a7,%acc2 + mac.w %d6u,%d1l,<<,10(%a6),%d1,%acc1 + mac.w %d6u,%d1l,<<,10(%a6),%d1,%acc2 + mac.w %d6u,%d1l,<<,10(%a6),%a3,%acc1 + mac.w %d6u,%d1l,<<,10(%a6),%a3,%acc2 + mac.w %d6u,%d1l,<<,10(%a6),%d2,%acc1 + mac.w %d6u,%d1l,<<,10(%a6),%d2,%acc2 + mac.w %d6u,%d1l,<<,10(%a6),%a7,%acc1 + mac.w %d6u,%d1l,<<,10(%a6),%a7,%acc2 + mac.w %d6u,%d1l,<<,10(%a6)&,%d1,%acc1 + mac.w %d6u,%d1l,<<,10(%a6)&,%d1,%acc2 + mac.w %d6u,%d1l,<<,10(%a6)&,%a3,%acc1 + mac.w %d6u,%d1l,<<,10(%a6)&,%a3,%acc2 + mac.w %d6u,%d1l,<<,10(%a6)&,%d2,%acc1 + mac.w %d6u,%d1l,<<,10(%a6)&,%d2,%acc2 + mac.w %d6u,%d1l,<<,10(%a6)&,%a7,%acc1 + mac.w %d6u,%d1l,<<,10(%a6)&,%a7,%acc2 + mac.w %d6u,%d1l,<<,-(%a1),%d1,%acc1 + mac.w %d6u,%d1l,<<,-(%a1),%d1,%acc2 + mac.w %d6u,%d1l,<<,-(%a1),%a3,%acc1 + mac.w %d6u,%d1l,<<,-(%a1),%a3,%acc2 + mac.w %d6u,%d1l,<<,-(%a1),%d2,%acc1 + mac.w %d6u,%d1l,<<,-(%a1),%d2,%acc2 + mac.w %d6u,%d1l,<<,-(%a1),%a7,%acc1 + mac.w %d6u,%d1l,<<,-(%a1),%a7,%acc2 + mac.w %d6u,%d1l,<<,-(%a1)&,%d1,%acc1 + mac.w %d6u,%d1l,<<,-(%a1)&,%d1,%acc2 + mac.w %d6u,%d1l,<<,-(%a1)&,%a3,%acc1 + mac.w %d6u,%d1l,<<,-(%a1)&,%a3,%acc2 + mac.w %d6u,%d1l,<<,-(%a1)&,%d2,%acc1 + mac.w %d6u,%d1l,<<,-(%a1)&,%d2,%acc2 + mac.w %d6u,%d1l,<<,-(%a1)&,%a7,%acc1 + mac.w %d6u,%d1l,<<,-(%a1)&,%a7,%acc2 + mac.w %d6u,%d1l,>>,(%a3),%d1,%acc1 + mac.w %d6u,%d1l,>>,(%a3),%d1,%acc2 + mac.w %d6u,%d1l,>>,(%a3),%a3,%acc1 + mac.w %d6u,%d1l,>>,(%a3),%a3,%acc2 + mac.w %d6u,%d1l,>>,(%a3),%d2,%acc1 + mac.w %d6u,%d1l,>>,(%a3),%d2,%acc2 + mac.w %d6u,%d1l,>>,(%a3),%a7,%acc1 + mac.w %d6u,%d1l,>>,(%a3),%a7,%acc2 + mac.w %d6u,%d1l,>>,(%a3)&,%d1,%acc1 + mac.w %d6u,%d1l,>>,(%a3)&,%d1,%acc2 + mac.w %d6u,%d1l,>>,(%a3)&,%a3,%acc1 + mac.w %d6u,%d1l,>>,(%a3)&,%a3,%acc2 + mac.w %d6u,%d1l,>>,(%a3)&,%d2,%acc1 + mac.w %d6u,%d1l,>>,(%a3)&,%d2,%acc2 + mac.w %d6u,%d1l,>>,(%a3)&,%a7,%acc1 + mac.w %d6u,%d1l,>>,(%a3)&,%a7,%acc2 + mac.w %d6u,%d1l,>>,(%a2)+,%d1,%acc1 + mac.w %d6u,%d1l,>>,(%a2)+,%d1,%acc2 + mac.w %d6u,%d1l,>>,(%a2)+,%a3,%acc1 + mac.w %d6u,%d1l,>>,(%a2)+,%a3,%acc2 + mac.w %d6u,%d1l,>>,(%a2)+,%d2,%acc1 + mac.w %d6u,%d1l,>>,(%a2)+,%d2,%acc2 + mac.w %d6u,%d1l,>>,(%a2)+,%a7,%acc1 + mac.w %d6u,%d1l,>>,(%a2)+,%a7,%acc2 + mac.w %d6u,%d1l,>>,(%a2)+&,%d1,%acc1 + mac.w %d6u,%d1l,>>,(%a2)+&,%d1,%acc2 + mac.w %d6u,%d1l,>>,(%a2)+&,%a3,%acc1 + mac.w %d6u,%d1l,>>,(%a2)+&,%a3,%acc2 + mac.w %d6u,%d1l,>>,(%a2)+&,%d2,%acc1 + mac.w %d6u,%d1l,>>,(%a2)+&,%d2,%acc2 + mac.w %d6u,%d1l,>>,(%a2)+&,%a7,%acc1 + mac.w %d6u,%d1l,>>,(%a2)+&,%a7,%acc2 + mac.w %d6u,%d1l,>>,10(%a6),%d1,%acc1 + mac.w %d6u,%d1l,>>,10(%a6),%d1,%acc2 + mac.w %d6u,%d1l,>>,10(%a6),%a3,%acc1 + mac.w %d6u,%d1l,>>,10(%a6),%a3,%acc2 + mac.w %d6u,%d1l,>>,10(%a6),%d2,%acc1 + mac.w %d6u,%d1l,>>,10(%a6),%d2,%acc2 + mac.w %d6u,%d1l,>>,10(%a6),%a7,%acc1 + mac.w %d6u,%d1l,>>,10(%a6),%a7,%acc2 + mac.w %d6u,%d1l,>>,10(%a6)&,%d1,%acc1 + mac.w %d6u,%d1l,>>,10(%a6)&,%d1,%acc2 + mac.w %d6u,%d1l,>>,10(%a6)&,%a3,%acc1 + mac.w %d6u,%d1l,>>,10(%a6)&,%a3,%acc2 + mac.w %d6u,%d1l,>>,10(%a6)&,%d2,%acc1 + mac.w %d6u,%d1l,>>,10(%a6)&,%d2,%acc2 + mac.w %d6u,%d1l,>>,10(%a6)&,%a7,%acc1 + mac.w %d6u,%d1l,>>,10(%a6)&,%a7,%acc2 + mac.w %d6u,%d1l,>>,-(%a1),%d1,%acc1 + mac.w %d6u,%d1l,>>,-(%a1),%d1,%acc2 + mac.w %d6u,%d1l,>>,-(%a1),%a3,%acc1 + mac.w %d6u,%d1l,>>,-(%a1),%a3,%acc2 + mac.w %d6u,%d1l,>>,-(%a1),%d2,%acc1 + mac.w %d6u,%d1l,>>,-(%a1),%d2,%acc2 + mac.w %d6u,%d1l,>>,-(%a1),%a7,%acc1 + mac.w %d6u,%d1l,>>,-(%a1),%a7,%acc2 + mac.w %d6u,%d1l,>>,-(%a1)&,%d1,%acc1 + mac.w %d6u,%d1l,>>,-(%a1)&,%d1,%acc2 + mac.w %d6u,%d1l,>>,-(%a1)&,%a3,%acc1 + mac.w %d6u,%d1l,>>,-(%a1)&,%a3,%acc2 + mac.w %d6u,%d1l,>>,-(%a1)&,%d2,%acc1 + mac.w %d6u,%d1l,>>,-(%a1)&,%d2,%acc2 + mac.w %d6u,%d1l,>>,-(%a1)&,%a7,%acc1 + mac.w %d6u,%d1l,>>,-(%a1)&,%a7,%acc2 + mac.w %d6u,%d1l,#1,(%a3),%d1,%acc1 + mac.w %d6u,%d1l,#1,(%a3),%d1,%acc2 + mac.w %d6u,%d1l,#1,(%a3),%a3,%acc1 + mac.w %d6u,%d1l,#1,(%a3),%a3,%acc2 + mac.w %d6u,%d1l,#1,(%a3),%d2,%acc1 + mac.w %d6u,%d1l,#1,(%a3),%d2,%acc2 + mac.w %d6u,%d1l,#1,(%a3),%a7,%acc1 + mac.w %d6u,%d1l,#1,(%a3),%a7,%acc2 + mac.w %d6u,%d1l,#1,(%a3)&,%d1,%acc1 + mac.w %d6u,%d1l,#1,(%a3)&,%d1,%acc2 + mac.w %d6u,%d1l,#1,(%a3)&,%a3,%acc1 + mac.w %d6u,%d1l,#1,(%a3)&,%a3,%acc2 + mac.w %d6u,%d1l,#1,(%a3)&,%d2,%acc1 + mac.w %d6u,%d1l,#1,(%a3)&,%d2,%acc2 + mac.w %d6u,%d1l,#1,(%a3)&,%a7,%acc1 + mac.w %d6u,%d1l,#1,(%a3)&,%a7,%acc2 + mac.w %d6u,%d1l,#1,(%a2)+,%d1,%acc1 + mac.w %d6u,%d1l,#1,(%a2)+,%d1,%acc2 + mac.w %d6u,%d1l,#1,(%a2)+,%a3,%acc1 + mac.w %d6u,%d1l,#1,(%a2)+,%a3,%acc2 + mac.w %d6u,%d1l,#1,(%a2)+,%d2,%acc1 + mac.w %d6u,%d1l,#1,(%a2)+,%d2,%acc2 + mac.w %d6u,%d1l,#1,(%a2)+,%a7,%acc1 + mac.w %d6u,%d1l,#1,(%a2)+,%a7,%acc2 + mac.w %d6u,%d1l,#1,(%a2)+&,%d1,%acc1 + mac.w %d6u,%d1l,#1,(%a2)+&,%d1,%acc2 + mac.w %d6u,%d1l,#1,(%a2)+&,%a3,%acc1 + mac.w %d6u,%d1l,#1,(%a2)+&,%a3,%acc2 + mac.w %d6u,%d1l,#1,(%a2)+&,%d2,%acc1 + mac.w %d6u,%d1l,#1,(%a2)+&,%d2,%acc2 + mac.w %d6u,%d1l,#1,(%a2)+&,%a7,%acc1 + mac.w %d6u,%d1l,#1,(%a2)+&,%a7,%acc2 + mac.w %d6u,%d1l,#1,10(%a6),%d1,%acc1 + mac.w %d6u,%d1l,#1,10(%a6),%d1,%acc2 + mac.w %d6u,%d1l,#1,10(%a6),%a3,%acc1 + mac.w %d6u,%d1l,#1,10(%a6),%a3,%acc2 + mac.w %d6u,%d1l,#1,10(%a6),%d2,%acc1 + mac.w %d6u,%d1l,#1,10(%a6),%d2,%acc2 + mac.w %d6u,%d1l,#1,10(%a6),%a7,%acc1 + mac.w %d6u,%d1l,#1,10(%a6),%a7,%acc2 + mac.w %d6u,%d1l,#1,10(%a6)&,%d1,%acc1 + mac.w %d6u,%d1l,#1,10(%a6)&,%d1,%acc2 + mac.w %d6u,%d1l,#1,10(%a6)&,%a3,%acc1 + mac.w %d6u,%d1l,#1,10(%a6)&,%a3,%acc2 + mac.w %d6u,%d1l,#1,10(%a6)&,%d2,%acc1 + mac.w %d6u,%d1l,#1,10(%a6)&,%d2,%acc2 + mac.w %d6u,%d1l,#1,10(%a6)&,%a7,%acc1 + mac.w %d6u,%d1l,#1,10(%a6)&,%a7,%acc2 + mac.w %d6u,%d1l,#1,-(%a1),%d1,%acc1 + mac.w %d6u,%d1l,#1,-(%a1),%d1,%acc2 + mac.w %d6u,%d1l,#1,-(%a1),%a3,%acc1 + mac.w %d6u,%d1l,#1,-(%a1),%a3,%acc2 + mac.w %d6u,%d1l,#1,-(%a1),%d2,%acc1 + mac.w %d6u,%d1l,#1,-(%a1),%d2,%acc2 + mac.w %d6u,%d1l,#1,-(%a1),%a7,%acc1 + mac.w %d6u,%d1l,#1,-(%a1),%a7,%acc2 + mac.w %d6u,%d1l,#1,-(%a1)&,%d1,%acc1 + mac.w %d6u,%d1l,#1,-(%a1)&,%d1,%acc2 + mac.w %d6u,%d1l,#1,-(%a1)&,%a3,%acc1 + mac.w %d6u,%d1l,#1,-(%a1)&,%a3,%acc2 + mac.w %d6u,%d1l,#1,-(%a1)&,%d2,%acc1 + mac.w %d6u,%d1l,#1,-(%a1)&,%d2,%acc2 + mac.w %d6u,%d1l,#1,-(%a1)&,%a7,%acc1 + mac.w %d6u,%d1l,#1,-(%a1)&,%a7,%acc2 + mac.w %d6u,%d1l,#-1,(%a3),%d1,%acc1 + mac.w %d6u,%d1l,#-1,(%a3),%d1,%acc2 + mac.w %d6u,%d1l,#-1,(%a3),%a3,%acc1 + mac.w %d6u,%d1l,#-1,(%a3),%a3,%acc2 + mac.w %d6u,%d1l,#-1,(%a3),%d2,%acc1 + mac.w %d6u,%d1l,#-1,(%a3),%d2,%acc2 + mac.w %d6u,%d1l,#-1,(%a3),%a7,%acc1 + mac.w %d6u,%d1l,#-1,(%a3),%a7,%acc2 + mac.w %d6u,%d1l,#-1,(%a3)&,%d1,%acc1 + mac.w %d6u,%d1l,#-1,(%a3)&,%d1,%acc2 + mac.w %d6u,%d1l,#-1,(%a3)&,%a3,%acc1 + mac.w %d6u,%d1l,#-1,(%a3)&,%a3,%acc2 + mac.w %d6u,%d1l,#-1,(%a3)&,%d2,%acc1 + mac.w %d6u,%d1l,#-1,(%a3)&,%d2,%acc2 + mac.w %d6u,%d1l,#-1,(%a3)&,%a7,%acc1 + mac.w %d6u,%d1l,#-1,(%a3)&,%a7,%acc2 + mac.w %d6u,%d1l,#-1,(%a2)+,%d1,%acc1 + mac.w %d6u,%d1l,#-1,(%a2)+,%d1,%acc2 + mac.w %d6u,%d1l,#-1,(%a2)+,%a3,%acc1 + mac.w %d6u,%d1l,#-1,(%a2)+,%a3,%acc2 + mac.w %d6u,%d1l,#-1,(%a2)+,%d2,%acc1 + mac.w %d6u,%d1l,#-1,(%a2)+,%d2,%acc2 + mac.w %d6u,%d1l,#-1,(%a2)+,%a7,%acc1 + mac.w %d6u,%d1l,#-1,(%a2)+,%a7,%acc2 + mac.w %d6u,%d1l,#-1,(%a2)+&,%d1,%acc1 + mac.w %d6u,%d1l,#-1,(%a2)+&,%d1,%acc2 + mac.w %d6u,%d1l,#-1,(%a2)+&,%a3,%acc1 + mac.w %d6u,%d1l,#-1,(%a2)+&,%a3,%acc2 + mac.w %d6u,%d1l,#-1,(%a2)+&,%d2,%acc1 + mac.w %d6u,%d1l,#-1,(%a2)+&,%d2,%acc2 + mac.w %d6u,%d1l,#-1,(%a2)+&,%a7,%acc1 + mac.w %d6u,%d1l,#-1,(%a2)+&,%a7,%acc2 + mac.w %d6u,%d1l,#-1,10(%a6),%d1,%acc1 + mac.w %d6u,%d1l,#-1,10(%a6),%d1,%acc2 + mac.w %d6u,%d1l,#-1,10(%a6),%a3,%acc1 + mac.w %d6u,%d1l,#-1,10(%a6),%a3,%acc2 + mac.w %d6u,%d1l,#-1,10(%a6),%d2,%acc1 + mac.w %d6u,%d1l,#-1,10(%a6),%d2,%acc2 + mac.w %d6u,%d1l,#-1,10(%a6),%a7,%acc1 + mac.w %d6u,%d1l,#-1,10(%a6),%a7,%acc2 + mac.w %d6u,%d1l,#-1,10(%a6)&,%d1,%acc1 + mac.w %d6u,%d1l,#-1,10(%a6)&,%d1,%acc2 + mac.w %d6u,%d1l,#-1,10(%a6)&,%a3,%acc1 + mac.w %d6u,%d1l,#-1,10(%a6)&,%a3,%acc2 + mac.w %d6u,%d1l,#-1,10(%a6)&,%d2,%acc1 + mac.w %d6u,%d1l,#-1,10(%a6)&,%d2,%acc2 + mac.w %d6u,%d1l,#-1,10(%a6)&,%a7,%acc1 + mac.w %d6u,%d1l,#-1,10(%a6)&,%a7,%acc2 + mac.w %d6u,%d1l,#-1,-(%a1),%d1,%acc1 + mac.w %d6u,%d1l,#-1,-(%a1),%d1,%acc2 + mac.w %d6u,%d1l,#-1,-(%a1),%a3,%acc1 + mac.w %d6u,%d1l,#-1,-(%a1),%a3,%acc2 + mac.w %d6u,%d1l,#-1,-(%a1),%d2,%acc1 + mac.w %d6u,%d1l,#-1,-(%a1),%d2,%acc2 + mac.w %d6u,%d1l,#-1,-(%a1),%a7,%acc1 + mac.w %d6u,%d1l,#-1,-(%a1),%a7,%acc2 + mac.w %d6u,%d1l,#-1,-(%a1)&,%d1,%acc1 + mac.w %d6u,%d1l,#-1,-(%a1)&,%d1,%acc2 + mac.w %d6u,%d1l,#-1,-(%a1)&,%a3,%acc1 + mac.w %d6u,%d1l,#-1,-(%a1)&,%a3,%acc2 + mac.w %d6u,%d1l,#-1,-(%a1)&,%d2,%acc1 + mac.w %d6u,%d1l,#-1,-(%a1)&,%d2,%acc2 + mac.w %d6u,%d1l,#-1,-(%a1)&,%a7,%acc1 + mac.w %d6u,%d1l,#-1,-(%a1)&,%a7,%acc2 + + mac.l %a1,%a3,%acc1 + mac.l %a1,%a3,%acc2 + mac.l %a1,%a3,<<,%acc1 + mac.l %a1,%a3,<<,%acc2 + mac.l %a1,%a3,>>,%acc1 + mac.l %a1,%a3,>>,%acc2 + mac.l %a1,%a3,#1,%acc1 + mac.l %a1,%a3,#1,%acc2 + mac.l %a1,%a3,#-1,%acc1 + mac.l %a1,%a3,#-1,%acc2 + mac.l %a1,%d4,%acc1 + mac.l %a1,%d4,%acc2 + mac.l %a1,%d4,<<,%acc1 + mac.l %a1,%d4,<<,%acc2 + mac.l %a1,%d4,>>,%acc1 + mac.l %a1,%d4,>>,%acc2 + mac.l %a1,%d4,#1,%acc1 + mac.l %a1,%d4,#1,%acc2 + mac.l %a1,%d4,#-1,%acc1 + mac.l %a1,%d4,#-1,%acc2 + mac.l %d6,%a3,%acc1 + mac.l %d6,%a3,%acc2 + mac.l %d6,%a3,<<,%acc1 + mac.l %d6,%a3,<<,%acc2 + mac.l %d6,%a3,>>,%acc1 + mac.l %d6,%a3,>>,%acc2 + mac.l %d6,%a3,#1,%acc1 + mac.l %d6,%a3,#1,%acc2 + mac.l %d6,%a3,#-1,%acc1 + mac.l %d6,%a3,#-1,%acc2 + mac.l %d6,%d4,%acc1 + mac.l %d6,%d4,%acc2 + mac.l %d6,%d4,<<,%acc1 + mac.l %d6,%d4,<<,%acc2 + mac.l %d6,%d4,>>,%acc1 + mac.l %d6,%d4,>>,%acc2 + mac.l %d6,%d4,#1,%acc1 + mac.l %d6,%d4,#1,%acc2 + mac.l %d6,%d4,#-1,%acc1 + mac.l %d6,%d4,#-1,%acc2 + + mac.l %a1,%a3,(%a3),%d1,%acc1 + mac.l %a1,%a3,(%a3),%d1,%acc2 + mac.l %a1,%a3,(%a3),%a3,%acc1 + mac.l %a1,%a3,(%a3),%a3,%acc2 + mac.l %a1,%a3,(%a3),%d2,%acc1 + mac.l %a1,%a3,(%a3),%d2,%acc2 + mac.l %a1,%a3,(%a3),%a7,%acc1 + mac.l %a1,%a3,(%a3),%a7,%acc2 + mac.l %a1,%a3,(%a3)&,%d1,%acc1 + mac.l %a1,%a3,(%a3)&,%d1,%acc2 + mac.l %a1,%a3,(%a3)&,%a3,%acc1 + mac.l %a1,%a3,(%a3)&,%a3,%acc2 + mac.l %a1,%a3,(%a3)&,%d2,%acc1 + mac.l %a1,%a3,(%a3)&,%d2,%acc2 + mac.l %a1,%a3,(%a3)&,%a7,%acc1 + mac.l %a1,%a3,(%a3)&,%a7,%acc2 + mac.l %a1,%a3,(%a2)+,%d1,%acc1 + mac.l %a1,%a3,(%a2)+,%d1,%acc2 + mac.l %a1,%a3,(%a2)+,%a3,%acc1 + mac.l %a1,%a3,(%a2)+,%a3,%acc2 + mac.l %a1,%a3,(%a2)+,%d2,%acc1 + mac.l %a1,%a3,(%a2)+,%d2,%acc2 + mac.l %a1,%a3,(%a2)+,%a7,%acc1 + mac.l %a1,%a3,(%a2)+,%a7,%acc2 + mac.l %a1,%a3,(%a2)+&,%d1,%acc1 + mac.l %a1,%a3,(%a2)+&,%d1,%acc2 + mac.l %a1,%a3,(%a2)+&,%a3,%acc1 + mac.l %a1,%a3,(%a2)+&,%a3,%acc2 + mac.l %a1,%a3,(%a2)+&,%d2,%acc1 + mac.l %a1,%a3,(%a2)+&,%d2,%acc2 + mac.l %a1,%a3,(%a2)+&,%a7,%acc1 + mac.l %a1,%a3,(%a2)+&,%a7,%acc2 + mac.l %a1,%a3,10(%a6),%d1,%acc1 + mac.l %a1,%a3,10(%a6),%d1,%acc2 + mac.l %a1,%a3,10(%a6),%a3,%acc1 + mac.l %a1,%a3,10(%a6),%a3,%acc2 + mac.l %a1,%a3,10(%a6),%d2,%acc1 + mac.l %a1,%a3,10(%a6),%d2,%acc2 + mac.l %a1,%a3,10(%a6),%a7,%acc1 + mac.l %a1,%a3,10(%a6),%a7,%acc2 + mac.l %a1,%a3,10(%a6)&,%d1,%acc1 + mac.l %a1,%a3,10(%a6)&,%d1,%acc2 + mac.l %a1,%a3,10(%a6)&,%a3,%acc1 + mac.l %a1,%a3,10(%a6)&,%a3,%acc2 + mac.l %a1,%a3,10(%a6)&,%d2,%acc1 + mac.l %a1,%a3,10(%a6)&,%d2,%acc2 + mac.l %a1,%a3,10(%a6)&,%a7,%acc1 + mac.l %a1,%a3,10(%a6)&,%a7,%acc2 + mac.l %a1,%a3,-(%a1),%d1,%acc1 + mac.l %a1,%a3,-(%a1),%d1,%acc2 + mac.l %a1,%a3,-(%a1),%a3,%acc1 + mac.l %a1,%a3,-(%a1),%a3,%acc2 + mac.l %a1,%a3,-(%a1),%d2,%acc1 + mac.l %a1,%a3,-(%a1),%d2,%acc2 + mac.l %a1,%a3,-(%a1),%a7,%acc1 + mac.l %a1,%a3,-(%a1),%a7,%acc2 + mac.l %a1,%a3,-(%a1)&,%d1,%acc1 + mac.l %a1,%a3,-(%a1)&,%d1,%acc2 + mac.l %a1,%a3,-(%a1)&,%a3,%acc1 + mac.l %a1,%a3,-(%a1)&,%a3,%acc2 + mac.l %a1,%a3,-(%a1)&,%d2,%acc1 + mac.l %a1,%a3,-(%a1)&,%d2,%acc2 + mac.l %a1,%a3,-(%a1)&,%a7,%acc1 + mac.l %a1,%a3,-(%a1)&,%a7,%acc2 + mac.l %a1,%a3,<<,(%a3),%d1,%acc1 + mac.l %a1,%a3,<<,(%a3),%d1,%acc2 + mac.l %a1,%a3,<<,(%a3),%a3,%acc1 + mac.l %a1,%a3,<<,(%a3),%a3,%acc2 + mac.l %a1,%a3,<<,(%a3),%d2,%acc1 + mac.l %a1,%a3,<<,(%a3),%d2,%acc2 + mac.l %a1,%a3,<<,(%a3),%a7,%acc1 + mac.l %a1,%a3,<<,(%a3),%a7,%acc2 + mac.l %a1,%a3,<<,(%a3)&,%d1,%acc1 + mac.l %a1,%a3,<<,(%a3)&,%d1,%acc2 + mac.l %a1,%a3,<<,(%a3)&,%a3,%acc1 + mac.l %a1,%a3,<<,(%a3)&,%a3,%acc2 + mac.l %a1,%a3,<<,(%a3)&,%d2,%acc1 + mac.l %a1,%a3,<<,(%a3)&,%d2,%acc2 + mac.l %a1,%a3,<<,(%a3)&,%a7,%acc1 + mac.l %a1,%a3,<<,(%a3)&,%a7,%acc2 + mac.l %a1,%a3,<<,(%a2)+,%d1,%acc1 + mac.l %a1,%a3,<<,(%a2)+,%d1,%acc2 + mac.l %a1,%a3,<<,(%a2)+,%a3,%acc1 + mac.l %a1,%a3,<<,(%a2)+,%a3,%acc2 + mac.l %a1,%a3,<<,(%a2)+,%d2,%acc1 + mac.l %a1,%a3,<<,(%a2)+,%d2,%acc2 + mac.l %a1,%a3,<<,(%a2)+,%a7,%acc1 + mac.l %a1,%a3,<<,(%a2)+,%a7,%acc2 + mac.l %a1,%a3,<<,(%a2)+&,%d1,%acc1 + mac.l %a1,%a3,<<,(%a2)+&,%d1,%acc2 + mac.l %a1,%a3,<<,(%a2)+&,%a3,%acc1 + mac.l %a1,%a3,<<,(%a2)+&,%a3,%acc2 + mac.l %a1,%a3,<<,(%a2)+&,%d2,%acc1 + mac.l %a1,%a3,<<,(%a2)+&,%d2,%acc2 + mac.l %a1,%a3,<<,(%a2)+&,%a7,%acc1 + mac.l %a1,%a3,<<,(%a2)+&,%a7,%acc2 + mac.l %a1,%a3,<<,10(%a6),%d1,%acc1 + mac.l %a1,%a3,<<,10(%a6),%d1,%acc2 + mac.l %a1,%a3,<<,10(%a6),%a3,%acc1 + mac.l %a1,%a3,<<,10(%a6),%a3,%acc2 + mac.l %a1,%a3,<<,10(%a6),%d2,%acc1 + mac.l %a1,%a3,<<,10(%a6),%d2,%acc2 + mac.l %a1,%a3,<<,10(%a6),%a7,%acc1 + mac.l %a1,%a3,<<,10(%a6),%a7,%acc2 + mac.l %a1,%a3,<<,10(%a6)&,%d1,%acc1 + mac.l %a1,%a3,<<,10(%a6)&,%d1,%acc2 + mac.l %a1,%a3,<<,10(%a6)&,%a3,%acc1 + mac.l %a1,%a3,<<,10(%a6)&,%a3,%acc2 + mac.l %a1,%a3,<<,10(%a6)&,%d2,%acc1 + mac.l %a1,%a3,<<,10(%a6)&,%d2,%acc2 + mac.l %a1,%a3,<<,10(%a6)&,%a7,%acc1 + mac.l %a1,%a3,<<,10(%a6)&,%a7,%acc2 + mac.l %a1,%a3,<<,-(%a1),%d1,%acc1 + mac.l %a1,%a3,<<,-(%a1),%d1,%acc2 + mac.l %a1,%a3,<<,-(%a1),%a3,%acc1 + mac.l %a1,%a3,<<,-(%a1),%a3,%acc2 + mac.l %a1,%a3,<<,-(%a1),%d2,%acc1 + mac.l %a1,%a3,<<,-(%a1),%d2,%acc2 + mac.l %a1,%a3,<<,-(%a1),%a7,%acc1 + mac.l %a1,%a3,<<,-(%a1),%a7,%acc2 + mac.l %a1,%a3,<<,-(%a1)&,%d1,%acc1 + mac.l %a1,%a3,<<,-(%a1)&,%d1,%acc2 + mac.l %a1,%a3,<<,-(%a1)&,%a3,%acc1 + mac.l %a1,%a3,<<,-(%a1)&,%a3,%acc2 + mac.l %a1,%a3,<<,-(%a1)&,%d2,%acc1 + mac.l %a1,%a3,<<,-(%a1)&,%d2,%acc2 + mac.l %a1,%a3,<<,-(%a1)&,%a7,%acc1 + mac.l %a1,%a3,<<,-(%a1)&,%a7,%acc2 + mac.l %a1,%a3,>>,(%a3),%d1,%acc1 + mac.l %a1,%a3,>>,(%a3),%d1,%acc2 + mac.l %a1,%a3,>>,(%a3),%a3,%acc1 + mac.l %a1,%a3,>>,(%a3),%a3,%acc2 + mac.l %a1,%a3,>>,(%a3),%d2,%acc1 + mac.l %a1,%a3,>>,(%a3),%d2,%acc2 + mac.l %a1,%a3,>>,(%a3),%a7,%acc1 + mac.l %a1,%a3,>>,(%a3),%a7,%acc2 + mac.l %a1,%a3,>>,(%a3)&,%d1,%acc1 + mac.l %a1,%a3,>>,(%a3)&,%d1,%acc2 + mac.l %a1,%a3,>>,(%a3)&,%a3,%acc1 + mac.l %a1,%a3,>>,(%a3)&,%a3,%acc2 + mac.l %a1,%a3,>>,(%a3)&,%d2,%acc1 + mac.l %a1,%a3,>>,(%a3)&,%d2,%acc2 + mac.l %a1,%a3,>>,(%a3)&,%a7,%acc1 + mac.l %a1,%a3,>>,(%a3)&,%a7,%acc2 + mac.l %a1,%a3,>>,(%a2)+,%d1,%acc1 + mac.l %a1,%a3,>>,(%a2)+,%d1,%acc2 + mac.l %a1,%a3,>>,(%a2)+,%a3,%acc1 + mac.l %a1,%a3,>>,(%a2)+,%a3,%acc2 + mac.l %a1,%a3,>>,(%a2)+,%d2,%acc1 + mac.l %a1,%a3,>>,(%a2)+,%d2,%acc2 + mac.l %a1,%a3,>>,(%a2)+,%a7,%acc1 + mac.l %a1,%a3,>>,(%a2)+,%a7,%acc2 + mac.l %a1,%a3,>>,(%a2)+&,%d1,%acc1 + mac.l %a1,%a3,>>,(%a2)+&,%d1,%acc2 + mac.l %a1,%a3,>>,(%a2)+&,%a3,%acc1 + mac.l %a1,%a3,>>,(%a2)+&,%a3,%acc2 + mac.l %a1,%a3,>>,(%a2)+&,%d2,%acc1 + mac.l %a1,%a3,>>,(%a2)+&,%d2,%acc2 + mac.l %a1,%a3,>>,(%a2)+&,%a7,%acc1 + mac.l %a1,%a3,>>,(%a2)+&,%a7,%acc2 + mac.l %a1,%a3,>>,10(%a6),%d1,%acc1 + mac.l %a1,%a3,>>,10(%a6),%d1,%acc2 + mac.l %a1,%a3,>>,10(%a6),%a3,%acc1 + mac.l %a1,%a3,>>,10(%a6),%a3,%acc2 + mac.l %a1,%a3,>>,10(%a6),%d2,%acc1 + mac.l %a1,%a3,>>,10(%a6),%d2,%acc2 + mac.l %a1,%a3,>>,10(%a6),%a7,%acc1 + mac.l %a1,%a3,>>,10(%a6),%a7,%acc2 + mac.l %a1,%a3,>>,10(%a6)&,%d1,%acc1 + mac.l %a1,%a3,>>,10(%a6)&,%d1,%acc2 + mac.l %a1,%a3,>>,10(%a6)&,%a3,%acc1 + mac.l %a1,%a3,>>,10(%a6)&,%a3,%acc2 + mac.l %a1,%a3,>>,10(%a6)&,%d2,%acc1 + mac.l %a1,%a3,>>,10(%a6)&,%d2,%acc2 + mac.l %a1,%a3,>>,10(%a6)&,%a7,%acc1 + mac.l %a1,%a3,>>,10(%a6)&,%a7,%acc2 + mac.l %a1,%a3,>>,-(%a1),%d1,%acc1 + mac.l %a1,%a3,>>,-(%a1),%d1,%acc2 + mac.l %a1,%a3,>>,-(%a1),%a3,%acc1 + mac.l %a1,%a3,>>,-(%a1),%a3,%acc2 + mac.l %a1,%a3,>>,-(%a1),%d2,%acc1 + mac.l %a1,%a3,>>,-(%a1),%d2,%acc2 + mac.l %a1,%a3,>>,-(%a1),%a7,%acc1 + mac.l %a1,%a3,>>,-(%a1),%a7,%acc2 + mac.l %a1,%a3,>>,-(%a1)&,%d1,%acc1 + mac.l %a1,%a3,>>,-(%a1)&,%d1,%acc2 + mac.l %a1,%a3,>>,-(%a1)&,%a3,%acc1 + mac.l %a1,%a3,>>,-(%a1)&,%a3,%acc2 + mac.l %a1,%a3,>>,-(%a1)&,%d2,%acc1 + mac.l %a1,%a3,>>,-(%a1)&,%d2,%acc2 + mac.l %a1,%a3,>>,-(%a1)&,%a7,%acc1 + mac.l %a1,%a3,>>,-(%a1)&,%a7,%acc2 + mac.l %a1,%a3,#1,(%a3),%d1,%acc1 + mac.l %a1,%a3,#1,(%a3),%d1,%acc2 + mac.l %a1,%a3,#1,(%a3),%a3,%acc1 + mac.l %a1,%a3,#1,(%a3),%a3,%acc2 + mac.l %a1,%a3,#1,(%a3),%d2,%acc1 + mac.l %a1,%a3,#1,(%a3),%d2,%acc2 + mac.l %a1,%a3,#1,(%a3),%a7,%acc1 + mac.l %a1,%a3,#1,(%a3),%a7,%acc2 + mac.l %a1,%a3,#1,(%a3)&,%d1,%acc1 + mac.l %a1,%a3,#1,(%a3)&,%d1,%acc2 + mac.l %a1,%a3,#1,(%a3)&,%a3,%acc1 + mac.l %a1,%a3,#1,(%a3)&,%a3,%acc2 + mac.l %a1,%a3,#1,(%a3)&,%d2,%acc1 + mac.l %a1,%a3,#1,(%a3)&,%d2,%acc2 + mac.l %a1,%a3,#1,(%a3)&,%a7,%acc1 + mac.l %a1,%a3,#1,(%a3)&,%a7,%acc2 + mac.l %a1,%a3,#1,(%a2)+,%d1,%acc1 + mac.l %a1,%a3,#1,(%a2)+,%d1,%acc2 + mac.l %a1,%a3,#1,(%a2)+,%a3,%acc1 + mac.l %a1,%a3,#1,(%a2)+,%a3,%acc2 + mac.l %a1,%a3,#1,(%a2)+,%d2,%acc1 + mac.l %a1,%a3,#1,(%a2)+,%d2,%acc2 + mac.l %a1,%a3,#1,(%a2)+,%a7,%acc1 + mac.l %a1,%a3,#1,(%a2)+,%a7,%acc2 + mac.l %a1,%a3,#1,(%a2)+&,%d1,%acc1 + mac.l %a1,%a3,#1,(%a2)+&,%d1,%acc2 + mac.l %a1,%a3,#1,(%a2)+&,%a3,%acc1 + mac.l %a1,%a3,#1,(%a2)+&,%a3,%acc2 + mac.l %a1,%a3,#1,(%a2)+&,%d2,%acc1 + mac.l %a1,%a3,#1,(%a2)+&,%d2,%acc2 + mac.l %a1,%a3,#1,(%a2)+&,%a7,%acc1 + mac.l %a1,%a3,#1,(%a2)+&,%a7,%acc2 + mac.l %a1,%a3,#1,10(%a6),%d1,%acc1 + mac.l %a1,%a3,#1,10(%a6),%d1,%acc2 + mac.l %a1,%a3,#1,10(%a6),%a3,%acc1 + mac.l %a1,%a3,#1,10(%a6),%a3,%acc2 + mac.l %a1,%a3,#1,10(%a6),%d2,%acc1 + mac.l %a1,%a3,#1,10(%a6),%d2,%acc2 + mac.l %a1,%a3,#1,10(%a6),%a7,%acc1 + mac.l %a1,%a3,#1,10(%a6),%a7,%acc2 + mac.l %a1,%a3,#1,10(%a6)&,%d1,%acc1 + mac.l %a1,%a3,#1,10(%a6)&,%d1,%acc2 + mac.l %a1,%a3,#1,10(%a6)&,%a3,%acc1 + mac.l %a1,%a3,#1,10(%a6)&,%a3,%acc2 + mac.l %a1,%a3,#1,10(%a6)&,%d2,%acc1 + mac.l %a1,%a3,#1,10(%a6)&,%d2,%acc2 + mac.l %a1,%a3,#1,10(%a6)&,%a7,%acc1 + mac.l %a1,%a3,#1,10(%a6)&,%a7,%acc2 + mac.l %a1,%a3,#1,-(%a1),%d1,%acc1 + mac.l %a1,%a3,#1,-(%a1),%d1,%acc2 + mac.l %a1,%a3,#1,-(%a1),%a3,%acc1 + mac.l %a1,%a3,#1,-(%a1),%a3,%acc2 + mac.l %a1,%a3,#1,-(%a1),%d2,%acc1 + mac.l %a1,%a3,#1,-(%a1),%d2,%acc2 + mac.l %a1,%a3,#1,-(%a1),%a7,%acc1 + mac.l %a1,%a3,#1,-(%a1),%a7,%acc2 + mac.l %a1,%a3,#1,-(%a1)&,%d1,%acc1 + mac.l %a1,%a3,#1,-(%a1)&,%d1,%acc2 + mac.l %a1,%a3,#1,-(%a1)&,%a3,%acc1 + mac.l %a1,%a3,#1,-(%a1)&,%a3,%acc2 + mac.l %a1,%a3,#1,-(%a1)&,%d2,%acc1 + mac.l %a1,%a3,#1,-(%a1)&,%d2,%acc2 + mac.l %a1,%a3,#1,-(%a1)&,%a7,%acc1 + mac.l %a1,%a3,#1,-(%a1)&,%a7,%acc2 + mac.l %a1,%a3,#-1,(%a3),%d1,%acc1 + mac.l %a1,%a3,#-1,(%a3),%d1,%acc2 + mac.l %a1,%a3,#-1,(%a3),%a3,%acc1 + mac.l %a1,%a3,#-1,(%a3),%a3,%acc2 + mac.l %a1,%a3,#-1,(%a3),%d2,%acc1 + mac.l %a1,%a3,#-1,(%a3),%d2,%acc2 + mac.l %a1,%a3,#-1,(%a3),%a7,%acc1 + mac.l %a1,%a3,#-1,(%a3),%a7,%acc2 + mac.l %a1,%a3,#-1,(%a3)&,%d1,%acc1 + mac.l %a1,%a3,#-1,(%a3)&,%d1,%acc2 + mac.l %a1,%a3,#-1,(%a3)&,%a3,%acc1 + mac.l %a1,%a3,#-1,(%a3)&,%a3,%acc2 + mac.l %a1,%a3,#-1,(%a3)&,%d2,%acc1 + mac.l %a1,%a3,#-1,(%a3)&,%d2,%acc2 + mac.l %a1,%a3,#-1,(%a3)&,%a7,%acc1 + mac.l %a1,%a3,#-1,(%a3)&,%a7,%acc2 + mac.l %a1,%a3,#-1,(%a2)+,%d1,%acc1 + mac.l %a1,%a3,#-1,(%a2)+,%d1,%acc2 + mac.l %a1,%a3,#-1,(%a2)+,%a3,%acc1 + mac.l %a1,%a3,#-1,(%a2)+,%a3,%acc2 + mac.l %a1,%a3,#-1,(%a2)+,%d2,%acc1 + mac.l %a1,%a3,#-1,(%a2)+,%d2,%acc2 + mac.l %a1,%a3,#-1,(%a2)+,%a7,%acc1 + mac.l %a1,%a3,#-1,(%a2)+,%a7,%acc2 + mac.l %a1,%a3,#-1,(%a2)+&,%d1,%acc1 + mac.l %a1,%a3,#-1,(%a2)+&,%d1,%acc2 + mac.l %a1,%a3,#-1,(%a2)+&,%a3,%acc1 + mac.l %a1,%a3,#-1,(%a2)+&,%a3,%acc2 + mac.l %a1,%a3,#-1,(%a2)+&,%d2,%acc1 + mac.l %a1,%a3,#-1,(%a2)+&,%d2,%acc2 + mac.l %a1,%a3,#-1,(%a2)+&,%a7,%acc1 + mac.l %a1,%a3,#-1,(%a2)+&,%a7,%acc2 + mac.l %a1,%a3,#-1,10(%a6),%d1,%acc1 + mac.l %a1,%a3,#-1,10(%a6),%d1,%acc2 + mac.l %a1,%a3,#-1,10(%a6),%a3,%acc1 + mac.l %a1,%a3,#-1,10(%a6),%a3,%acc2 + mac.l %a1,%a3,#-1,10(%a6),%d2,%acc1 + mac.l %a1,%a3,#-1,10(%a6),%d2,%acc2 + mac.l %a1,%a3,#-1,10(%a6),%a7,%acc1 + mac.l %a1,%a3,#-1,10(%a6),%a7,%acc2 + mac.l %a1,%a3,#-1,10(%a6)&,%d1,%acc1 + mac.l %a1,%a3,#-1,10(%a6)&,%d1,%acc2 + mac.l %a1,%a3,#-1,10(%a6)&,%a3,%acc1 + mac.l %a1,%a3,#-1,10(%a6)&,%a3,%acc2 + mac.l %a1,%a3,#-1,10(%a6)&,%d2,%acc1 + mac.l %a1,%a3,#-1,10(%a6)&,%d2,%acc2 + mac.l %a1,%a3,#-1,10(%a6)&,%a7,%acc1 + mac.l %a1,%a3,#-1,10(%a6)&,%a7,%acc2 + mac.l %a1,%a3,#-1,-(%a1),%d1,%acc1 + mac.l %a1,%a3,#-1,-(%a1),%d1,%acc2 + mac.l %a1,%a3,#-1,-(%a1),%a3,%acc1 + mac.l %a1,%a3,#-1,-(%a1),%a3,%acc2 + mac.l %a1,%a3,#-1,-(%a1),%d2,%acc1 + mac.l %a1,%a3,#-1,-(%a1),%d2,%acc2 + mac.l %a1,%a3,#-1,-(%a1),%a7,%acc1 + mac.l %a1,%a3,#-1,-(%a1),%a7,%acc2 + mac.l %a1,%a3,#-1,-(%a1)&,%d1,%acc1 + mac.l %a1,%a3,#-1,-(%a1)&,%d1,%acc2 + mac.l %a1,%a3,#-1,-(%a1)&,%a3,%acc1 + mac.l %a1,%a3,#-1,-(%a1)&,%a3,%acc2 + mac.l %a1,%a3,#-1,-(%a1)&,%d2,%acc1 + mac.l %a1,%a3,#-1,-(%a1)&,%d2,%acc2 + mac.l %a1,%a3,#-1,-(%a1)&,%a7,%acc1 + mac.l %a1,%a3,#-1,-(%a1)&,%a7,%acc2 + mac.l %a1,%d4,(%a3),%d1,%acc1 + mac.l %a1,%d4,(%a3),%d1,%acc2 + mac.l %a1,%d4,(%a3),%a3,%acc1 + mac.l %a1,%d4,(%a3),%a3,%acc2 + mac.l %a1,%d4,(%a3),%d2,%acc1 + mac.l %a1,%d4,(%a3),%d2,%acc2 + mac.l %a1,%d4,(%a3),%a7,%acc1 + mac.l %a1,%d4,(%a3),%a7,%acc2 + mac.l %a1,%d4,(%a3)&,%d1,%acc1 + mac.l %a1,%d4,(%a3)&,%d1,%acc2 + mac.l %a1,%d4,(%a3)&,%a3,%acc1 + mac.l %a1,%d4,(%a3)&,%a3,%acc2 + mac.l %a1,%d4,(%a3)&,%d2,%acc1 + mac.l %a1,%d4,(%a3)&,%d2,%acc2 + mac.l %a1,%d4,(%a3)&,%a7,%acc1 + mac.l %a1,%d4,(%a3)&,%a7,%acc2 + mac.l %a1,%d4,(%a2)+,%d1,%acc1 + mac.l %a1,%d4,(%a2)+,%d1,%acc2 + mac.l %a1,%d4,(%a2)+,%a3,%acc1 + mac.l %a1,%d4,(%a2)+,%a3,%acc2 + mac.l %a1,%d4,(%a2)+,%d2,%acc1 + mac.l %a1,%d4,(%a2)+,%d2,%acc2 + mac.l %a1,%d4,(%a2)+,%a7,%acc1 + mac.l %a1,%d4,(%a2)+,%a7,%acc2 + mac.l %a1,%d4,(%a2)+&,%d1,%acc1 + mac.l %a1,%d4,(%a2)+&,%d1,%acc2 + mac.l %a1,%d4,(%a2)+&,%a3,%acc1 + mac.l %a1,%d4,(%a2)+&,%a3,%acc2 + mac.l %a1,%d4,(%a2)+&,%d2,%acc1 + mac.l %a1,%d4,(%a2)+&,%d2,%acc2 + mac.l %a1,%d4,(%a2)+&,%a7,%acc1 + mac.l %a1,%d4,(%a2)+&,%a7,%acc2 + mac.l %a1,%d4,10(%a6),%d1,%acc1 + mac.l %a1,%d4,10(%a6),%d1,%acc2 + mac.l %a1,%d4,10(%a6),%a3,%acc1 + mac.l %a1,%d4,10(%a6),%a3,%acc2 + mac.l %a1,%d4,10(%a6),%d2,%acc1 + mac.l %a1,%d4,10(%a6),%d2,%acc2 + mac.l %a1,%d4,10(%a6),%a7,%acc1 + mac.l %a1,%d4,10(%a6),%a7,%acc2 + mac.l %a1,%d4,10(%a6)&,%d1,%acc1 + mac.l %a1,%d4,10(%a6)&,%d1,%acc2 + mac.l %a1,%d4,10(%a6)&,%a3,%acc1 + mac.l %a1,%d4,10(%a6)&,%a3,%acc2 + mac.l %a1,%d4,10(%a6)&,%d2,%acc1 + mac.l %a1,%d4,10(%a6)&,%d2,%acc2 + mac.l %a1,%d4,10(%a6)&,%a7,%acc1 + mac.l %a1,%d4,10(%a6)&,%a7,%acc2 + mac.l %a1,%d4,-(%a1),%d1,%acc1 + mac.l %a1,%d4,-(%a1),%d1,%acc2 + mac.l %a1,%d4,-(%a1),%a3,%acc1 + mac.l %a1,%d4,-(%a1),%a3,%acc2 + mac.l %a1,%d4,-(%a1),%d2,%acc1 + mac.l %a1,%d4,-(%a1),%d2,%acc2 + mac.l %a1,%d4,-(%a1),%a7,%acc1 + mac.l %a1,%d4,-(%a1),%a7,%acc2 + mac.l %a1,%d4,-(%a1)&,%d1,%acc1 + mac.l %a1,%d4,-(%a1)&,%d1,%acc2 + mac.l %a1,%d4,-(%a1)&,%a3,%acc1 + mac.l %a1,%d4,-(%a1)&,%a3,%acc2 + mac.l %a1,%d4,-(%a1)&,%d2,%acc1 + mac.l %a1,%d4,-(%a1)&,%d2,%acc2 + mac.l %a1,%d4,-(%a1)&,%a7,%acc1 + mac.l %a1,%d4,-(%a1)&,%a7,%acc2 + mac.l %a1,%d4,<<,(%a3),%d1,%acc1 + mac.l %a1,%d4,<<,(%a3),%d1,%acc2 + mac.l %a1,%d4,<<,(%a3),%a3,%acc1 + mac.l %a1,%d4,<<,(%a3),%a3,%acc2 + mac.l %a1,%d4,<<,(%a3),%d2,%acc1 + mac.l %a1,%d4,<<,(%a3),%d2,%acc2 + mac.l %a1,%d4,<<,(%a3),%a7,%acc1 + mac.l %a1,%d4,<<,(%a3),%a7,%acc2 + mac.l %a1,%d4,<<,(%a3)&,%d1,%acc1 + mac.l %a1,%d4,<<,(%a3)&,%d1,%acc2 + mac.l %a1,%d4,<<,(%a3)&,%a3,%acc1 + mac.l %a1,%d4,<<,(%a3)&,%a3,%acc2 + mac.l %a1,%d4,<<,(%a3)&,%d2,%acc1 + mac.l %a1,%d4,<<,(%a3)&,%d2,%acc2 + mac.l %a1,%d4,<<,(%a3)&,%a7,%acc1 + mac.l %a1,%d4,<<,(%a3)&,%a7,%acc2 + mac.l %a1,%d4,<<,(%a2)+,%d1,%acc1 + mac.l %a1,%d4,<<,(%a2)+,%d1,%acc2 + mac.l %a1,%d4,<<,(%a2)+,%a3,%acc1 + mac.l %a1,%d4,<<,(%a2)+,%a3,%acc2 + mac.l %a1,%d4,<<,(%a2)+,%d2,%acc1 + mac.l %a1,%d4,<<,(%a2)+,%d2,%acc2 + mac.l %a1,%d4,<<,(%a2)+,%a7,%acc1 + mac.l %a1,%d4,<<,(%a2)+,%a7,%acc2 + mac.l %a1,%d4,<<,(%a2)+&,%d1,%acc1 + mac.l %a1,%d4,<<,(%a2)+&,%d1,%acc2 + mac.l %a1,%d4,<<,(%a2)+&,%a3,%acc1 + mac.l %a1,%d4,<<,(%a2)+&,%a3,%acc2 + mac.l %a1,%d4,<<,(%a2)+&,%d2,%acc1 + mac.l %a1,%d4,<<,(%a2)+&,%d2,%acc2 + mac.l %a1,%d4,<<,(%a2)+&,%a7,%acc1 + mac.l %a1,%d4,<<,(%a2)+&,%a7,%acc2 + mac.l %a1,%d4,<<,10(%a6),%d1,%acc1 + mac.l %a1,%d4,<<,10(%a6),%d1,%acc2 + mac.l %a1,%d4,<<,10(%a6),%a3,%acc1 + mac.l %a1,%d4,<<,10(%a6),%a3,%acc2 + mac.l %a1,%d4,<<,10(%a6),%d2,%acc1 + mac.l %a1,%d4,<<,10(%a6),%d2,%acc2 + mac.l %a1,%d4,<<,10(%a6),%a7,%acc1 + mac.l %a1,%d4,<<,10(%a6),%a7,%acc2 + mac.l %a1,%d4,<<,10(%a6)&,%d1,%acc1 + mac.l %a1,%d4,<<,10(%a6)&,%d1,%acc2 + mac.l %a1,%d4,<<,10(%a6)&,%a3,%acc1 + mac.l %a1,%d4,<<,10(%a6)&,%a3,%acc2 + mac.l %a1,%d4,<<,10(%a6)&,%d2,%acc1 + mac.l %a1,%d4,<<,10(%a6)&,%d2,%acc2 + mac.l %a1,%d4,<<,10(%a6)&,%a7,%acc1 + mac.l %a1,%d4,<<,10(%a6)&,%a7,%acc2 + mac.l %a1,%d4,<<,-(%a1),%d1,%acc1 + mac.l %a1,%d4,<<,-(%a1),%d1,%acc2 + mac.l %a1,%d4,<<,-(%a1),%a3,%acc1 + mac.l %a1,%d4,<<,-(%a1),%a3,%acc2 + mac.l %a1,%d4,<<,-(%a1),%d2,%acc1 + mac.l %a1,%d4,<<,-(%a1),%d2,%acc2 + mac.l %a1,%d4,<<,-(%a1),%a7,%acc1 + mac.l %a1,%d4,<<,-(%a1),%a7,%acc2 + mac.l %a1,%d4,<<,-(%a1)&,%d1,%acc1 + mac.l %a1,%d4,<<,-(%a1)&,%d1,%acc2 + mac.l %a1,%d4,<<,-(%a1)&,%a3,%acc1 + mac.l %a1,%d4,<<,-(%a1)&,%a3,%acc2 + mac.l %a1,%d4,<<,-(%a1)&,%d2,%acc1 + mac.l %a1,%d4,<<,-(%a1)&,%d2,%acc2 + mac.l %a1,%d4,<<,-(%a1)&,%a7,%acc1 + mac.l %a1,%d4,<<,-(%a1)&,%a7,%acc2 + mac.l %a1,%d4,>>,(%a3),%d1,%acc1 + mac.l %a1,%d4,>>,(%a3),%d1,%acc2 + mac.l %a1,%d4,>>,(%a3),%a3,%acc1 + mac.l %a1,%d4,>>,(%a3),%a3,%acc2 + mac.l %a1,%d4,>>,(%a3),%d2,%acc1 + mac.l %a1,%d4,>>,(%a3),%d2,%acc2 + mac.l %a1,%d4,>>,(%a3),%a7,%acc1 + mac.l %a1,%d4,>>,(%a3),%a7,%acc2 + mac.l %a1,%d4,>>,(%a3)&,%d1,%acc1 + mac.l %a1,%d4,>>,(%a3)&,%d1,%acc2 + mac.l %a1,%d4,>>,(%a3)&,%a3,%acc1 + mac.l %a1,%d4,>>,(%a3)&,%a3,%acc2 + mac.l %a1,%d4,>>,(%a3)&,%d2,%acc1 + mac.l %a1,%d4,>>,(%a3)&,%d2,%acc2 + mac.l %a1,%d4,>>,(%a3)&,%a7,%acc1 + mac.l %a1,%d4,>>,(%a3)&,%a7,%acc2 + mac.l %a1,%d4,>>,(%a2)+,%d1,%acc1 + mac.l %a1,%d4,>>,(%a2)+,%d1,%acc2 + mac.l %a1,%d4,>>,(%a2)+,%a3,%acc1 + mac.l %a1,%d4,>>,(%a2)+,%a3,%acc2 + mac.l %a1,%d4,>>,(%a2)+,%d2,%acc1 + mac.l %a1,%d4,>>,(%a2)+,%d2,%acc2 + mac.l %a1,%d4,>>,(%a2)+,%a7,%acc1 + mac.l %a1,%d4,>>,(%a2)+,%a7,%acc2 + mac.l %a1,%d4,>>,(%a2)+&,%d1,%acc1 + mac.l %a1,%d4,>>,(%a2)+&,%d1,%acc2 + mac.l %a1,%d4,>>,(%a2)+&,%a3,%acc1 + mac.l %a1,%d4,>>,(%a2)+&,%a3,%acc2 + mac.l %a1,%d4,>>,(%a2)+&,%d2,%acc1 + mac.l %a1,%d4,>>,(%a2)+&,%d2,%acc2 + mac.l %a1,%d4,>>,(%a2)+&,%a7,%acc1 + mac.l %a1,%d4,>>,(%a2)+&,%a7,%acc2 + mac.l %a1,%d4,>>,10(%a6),%d1,%acc1 + mac.l %a1,%d4,>>,10(%a6),%d1,%acc2 + mac.l %a1,%d4,>>,10(%a6),%a3,%acc1 + mac.l %a1,%d4,>>,10(%a6),%a3,%acc2 + mac.l %a1,%d4,>>,10(%a6),%d2,%acc1 + mac.l %a1,%d4,>>,10(%a6),%d2,%acc2 + mac.l %a1,%d4,>>,10(%a6),%a7,%acc1 + mac.l %a1,%d4,>>,10(%a6),%a7,%acc2 + mac.l %a1,%d4,>>,10(%a6)&,%d1,%acc1 + mac.l %a1,%d4,>>,10(%a6)&,%d1,%acc2 + mac.l %a1,%d4,>>,10(%a6)&,%a3,%acc1 + mac.l %a1,%d4,>>,10(%a6)&,%a3,%acc2 + mac.l %a1,%d4,>>,10(%a6)&,%d2,%acc1 + mac.l %a1,%d4,>>,10(%a6)&,%d2,%acc2 + mac.l %a1,%d4,>>,10(%a6)&,%a7,%acc1 + mac.l %a1,%d4,>>,10(%a6)&,%a7,%acc2 + mac.l %a1,%d4,>>,-(%a1),%d1,%acc1 + mac.l %a1,%d4,>>,-(%a1),%d1,%acc2 + mac.l %a1,%d4,>>,-(%a1),%a3,%acc1 + mac.l %a1,%d4,>>,-(%a1),%a3,%acc2 + mac.l %a1,%d4,>>,-(%a1),%d2,%acc1 + mac.l %a1,%d4,>>,-(%a1),%d2,%acc2 + mac.l %a1,%d4,>>,-(%a1),%a7,%acc1 + mac.l %a1,%d4,>>,-(%a1),%a7,%acc2 + mac.l %a1,%d4,>>,-(%a1)&,%d1,%acc1 + mac.l %a1,%d4,>>,-(%a1)&,%d1,%acc2 + mac.l %a1,%d4,>>,-(%a1)&,%a3,%acc1 + mac.l %a1,%d4,>>,-(%a1)&,%a3,%acc2 + mac.l %a1,%d4,>>,-(%a1)&,%d2,%acc1 + mac.l %a1,%d4,>>,-(%a1)&,%d2,%acc2 + mac.l %a1,%d4,>>,-(%a1)&,%a7,%acc1 + mac.l %a1,%d4,>>,-(%a1)&,%a7,%acc2 + mac.l %a1,%d4,#1,(%a3),%d1,%acc1 + mac.l %a1,%d4,#1,(%a3),%d1,%acc2 + mac.l %a1,%d4,#1,(%a3),%a3,%acc1 + mac.l %a1,%d4,#1,(%a3),%a3,%acc2 + mac.l %a1,%d4,#1,(%a3),%d2,%acc1 + mac.l %a1,%d4,#1,(%a3),%d2,%acc2 + mac.l %a1,%d4,#1,(%a3),%a7,%acc1 + mac.l %a1,%d4,#1,(%a3),%a7,%acc2 + mac.l %a1,%d4,#1,(%a3)&,%d1,%acc1 + mac.l %a1,%d4,#1,(%a3)&,%d1,%acc2 + mac.l %a1,%d4,#1,(%a3)&,%a3,%acc1 + mac.l %a1,%d4,#1,(%a3)&,%a3,%acc2 + mac.l %a1,%d4,#1,(%a3)&,%d2,%acc1 + mac.l %a1,%d4,#1,(%a3)&,%d2,%acc2 + mac.l %a1,%d4,#1,(%a3)&,%a7,%acc1 + mac.l %a1,%d4,#1,(%a3)&,%a7,%acc2 + mac.l %a1,%d4,#1,(%a2)+,%d1,%acc1 + mac.l %a1,%d4,#1,(%a2)+,%d1,%acc2 + mac.l %a1,%d4,#1,(%a2)+,%a3,%acc1 + mac.l %a1,%d4,#1,(%a2)+,%a3,%acc2 + mac.l %a1,%d4,#1,(%a2)+,%d2,%acc1 + mac.l %a1,%d4,#1,(%a2)+,%d2,%acc2 + mac.l %a1,%d4,#1,(%a2)+,%a7,%acc1 + mac.l %a1,%d4,#1,(%a2)+,%a7,%acc2 + mac.l %a1,%d4,#1,(%a2)+&,%d1,%acc1 + mac.l %a1,%d4,#1,(%a2)+&,%d1,%acc2 + mac.l %a1,%d4,#1,(%a2)+&,%a3,%acc1 + mac.l %a1,%d4,#1,(%a2)+&,%a3,%acc2 + mac.l %a1,%d4,#1,(%a2)+&,%d2,%acc1 + mac.l %a1,%d4,#1,(%a2)+&,%d2,%acc2 + mac.l %a1,%d4,#1,(%a2)+&,%a7,%acc1 + mac.l %a1,%d4,#1,(%a2)+&,%a7,%acc2 + mac.l %a1,%d4,#1,10(%a6),%d1,%acc1 + mac.l %a1,%d4,#1,10(%a6),%d1,%acc2 + mac.l %a1,%d4,#1,10(%a6),%a3,%acc1 + mac.l %a1,%d4,#1,10(%a6),%a3,%acc2 + mac.l %a1,%d4,#1,10(%a6),%d2,%acc1 + mac.l %a1,%d4,#1,10(%a6),%d2,%acc2 + mac.l %a1,%d4,#1,10(%a6),%a7,%acc1 + mac.l %a1,%d4,#1,10(%a6),%a7,%acc2 + mac.l %a1,%d4,#1,10(%a6)&,%d1,%acc1 + mac.l %a1,%d4,#1,10(%a6)&,%d1,%acc2 + mac.l %a1,%d4,#1,10(%a6)&,%a3,%acc1 + mac.l %a1,%d4,#1,10(%a6)&,%a3,%acc2 + mac.l %a1,%d4,#1,10(%a6)&,%d2,%acc1 + mac.l %a1,%d4,#1,10(%a6)&,%d2,%acc2 + mac.l %a1,%d4,#1,10(%a6)&,%a7,%acc1 + mac.l %a1,%d4,#1,10(%a6)&,%a7,%acc2 + mac.l %a1,%d4,#1,-(%a1),%d1,%acc1 + mac.l %a1,%d4,#1,-(%a1),%d1,%acc2 + mac.l %a1,%d4,#1,-(%a1),%a3,%acc1 + mac.l %a1,%d4,#1,-(%a1),%a3,%acc2 + mac.l %a1,%d4,#1,-(%a1),%d2,%acc1 + mac.l %a1,%d4,#1,-(%a1),%d2,%acc2 + mac.l %a1,%d4,#1,-(%a1),%a7,%acc1 + mac.l %a1,%d4,#1,-(%a1),%a7,%acc2 + mac.l %a1,%d4,#1,-(%a1)&,%d1,%acc1 + mac.l %a1,%d4,#1,-(%a1)&,%d1,%acc2 + mac.l %a1,%d4,#1,-(%a1)&,%a3,%acc1 + mac.l %a1,%d4,#1,-(%a1)&,%a3,%acc2 + mac.l %a1,%d4,#1,-(%a1)&,%d2,%acc1 + mac.l %a1,%d4,#1,-(%a1)&,%d2,%acc2 + mac.l %a1,%d4,#1,-(%a1)&,%a7,%acc1 + mac.l %a1,%d4,#1,-(%a1)&,%a7,%acc2 + mac.l %a1,%d4,#-1,(%a3),%d1,%acc1 + mac.l %a1,%d4,#-1,(%a3),%d1,%acc2 + mac.l %a1,%d4,#-1,(%a3),%a3,%acc1 + mac.l %a1,%d4,#-1,(%a3),%a3,%acc2 + mac.l %a1,%d4,#-1,(%a3),%d2,%acc1 + mac.l %a1,%d4,#-1,(%a3),%d2,%acc2 + mac.l %a1,%d4,#-1,(%a3),%a7,%acc1 + mac.l %a1,%d4,#-1,(%a3),%a7,%acc2 + mac.l %a1,%d4,#-1,(%a3)&,%d1,%acc1 + mac.l %a1,%d4,#-1,(%a3)&,%d1,%acc2 + mac.l %a1,%d4,#-1,(%a3)&,%a3,%acc1 + mac.l %a1,%d4,#-1,(%a3)&,%a3,%acc2 + mac.l %a1,%d4,#-1,(%a3)&,%d2,%acc1 + mac.l %a1,%d4,#-1,(%a3)&,%d2,%acc2 + mac.l %a1,%d4,#-1,(%a3)&,%a7,%acc1 + mac.l %a1,%d4,#-1,(%a3)&,%a7,%acc2 + mac.l %a1,%d4,#-1,(%a2)+,%d1,%acc1 + mac.l %a1,%d4,#-1,(%a2)+,%d1,%acc2 + mac.l %a1,%d4,#-1,(%a2)+,%a3,%acc1 + mac.l %a1,%d4,#-1,(%a2)+,%a3,%acc2 + mac.l %a1,%d4,#-1,(%a2)+,%d2,%acc1 + mac.l %a1,%d4,#-1,(%a2)+,%d2,%acc2 + mac.l %a1,%d4,#-1,(%a2)+,%a7,%acc1 + mac.l %a1,%d4,#-1,(%a2)+,%a7,%acc2 + mac.l %a1,%d4,#-1,(%a2)+&,%d1,%acc1 + mac.l %a1,%d4,#-1,(%a2)+&,%d1,%acc2 + mac.l %a1,%d4,#-1,(%a2)+&,%a3,%acc1 + mac.l %a1,%d4,#-1,(%a2)+&,%a3,%acc2 + mac.l %a1,%d4,#-1,(%a2)+&,%d2,%acc1 + mac.l %a1,%d4,#-1,(%a2)+&,%d2,%acc2 + mac.l %a1,%d4,#-1,(%a2)+&,%a7,%acc1 + mac.l %a1,%d4,#-1,(%a2)+&,%a7,%acc2 + mac.l %a1,%d4,#-1,10(%a6),%d1,%acc1 + mac.l %a1,%d4,#-1,10(%a6),%d1,%acc2 + mac.l %a1,%d4,#-1,10(%a6),%a3,%acc1 + mac.l %a1,%d4,#-1,10(%a6),%a3,%acc2 + mac.l %a1,%d4,#-1,10(%a6),%d2,%acc1 + mac.l %a1,%d4,#-1,10(%a6),%d2,%acc2 + mac.l %a1,%d4,#-1,10(%a6),%a7,%acc1 + mac.l %a1,%d4,#-1,10(%a6),%a7,%acc2 + mac.l %a1,%d4,#-1,10(%a6)&,%d1,%acc1 + mac.l %a1,%d4,#-1,10(%a6)&,%d1,%acc2 + mac.l %a1,%d4,#-1,10(%a6)&,%a3,%acc1 + mac.l %a1,%d4,#-1,10(%a6)&,%a3,%acc2 + mac.l %a1,%d4,#-1,10(%a6)&,%d2,%acc1 + mac.l %a1,%d4,#-1,10(%a6)&,%d2,%acc2 + mac.l %a1,%d4,#-1,10(%a6)&,%a7,%acc1 + mac.l %a1,%d4,#-1,10(%a6)&,%a7,%acc2 + mac.l %a1,%d4,#-1,-(%a1),%d1,%acc1 + mac.l %a1,%d4,#-1,-(%a1),%d1,%acc2 + mac.l %a1,%d4,#-1,-(%a1),%a3,%acc1 + mac.l %a1,%d4,#-1,-(%a1),%a3,%acc2 + mac.l %a1,%d4,#-1,-(%a1),%d2,%acc1 + mac.l %a1,%d4,#-1,-(%a1),%d2,%acc2 + mac.l %a1,%d4,#-1,-(%a1),%a7,%acc1 + mac.l %a1,%d4,#-1,-(%a1),%a7,%acc2 + mac.l %a1,%d4,#-1,-(%a1)&,%d1,%acc1 + mac.l %a1,%d4,#-1,-(%a1)&,%d1,%acc2 + mac.l %a1,%d4,#-1,-(%a1)&,%a3,%acc1 + mac.l %a1,%d4,#-1,-(%a1)&,%a3,%acc2 + mac.l %a1,%d4,#-1,-(%a1)&,%d2,%acc1 + mac.l %a1,%d4,#-1,-(%a1)&,%d2,%acc2 + mac.l %a1,%d4,#-1,-(%a1)&,%a7,%acc1 + mac.l %a1,%d4,#-1,-(%a1)&,%a7,%acc2 + mac.l %d6,%a3,(%a3),%d1,%acc1 + mac.l %d6,%a3,(%a3),%d1,%acc2 + mac.l %d6,%a3,(%a3),%a3,%acc1 + mac.l %d6,%a3,(%a3),%a3,%acc2 + mac.l %d6,%a3,(%a3),%d2,%acc1 + mac.l %d6,%a3,(%a3),%d2,%acc2 + mac.l %d6,%a3,(%a3),%a7,%acc1 + mac.l %d6,%a3,(%a3),%a7,%acc2 + mac.l %d6,%a3,(%a3)&,%d1,%acc1 + mac.l %d6,%a3,(%a3)&,%d1,%acc2 + mac.l %d6,%a3,(%a3)&,%a3,%acc1 + mac.l %d6,%a3,(%a3)&,%a3,%acc2 + mac.l %d6,%a3,(%a3)&,%d2,%acc1 + mac.l %d6,%a3,(%a3)&,%d2,%acc2 + mac.l %d6,%a3,(%a3)&,%a7,%acc1 + mac.l %d6,%a3,(%a3)&,%a7,%acc2 + mac.l %d6,%a3,(%a2)+,%d1,%acc1 + mac.l %d6,%a3,(%a2)+,%d1,%acc2 + mac.l %d6,%a3,(%a2)+,%a3,%acc1 + mac.l %d6,%a3,(%a2)+,%a3,%acc2 + mac.l %d6,%a3,(%a2)+,%d2,%acc1 + mac.l %d6,%a3,(%a2)+,%d2,%acc2 + mac.l %d6,%a3,(%a2)+,%a7,%acc1 + mac.l %d6,%a3,(%a2)+,%a7,%acc2 + mac.l %d6,%a3,(%a2)+&,%d1,%acc1 + mac.l %d6,%a3,(%a2)+&,%d1,%acc2 + mac.l %d6,%a3,(%a2)+&,%a3,%acc1 + mac.l %d6,%a3,(%a2)+&,%a3,%acc2 + mac.l %d6,%a3,(%a2)+&,%d2,%acc1 + mac.l %d6,%a3,(%a2)+&,%d2,%acc2 + mac.l %d6,%a3,(%a2)+&,%a7,%acc1 + mac.l %d6,%a3,(%a2)+&,%a7,%acc2 + mac.l %d6,%a3,10(%a6),%d1,%acc1 + mac.l %d6,%a3,10(%a6),%d1,%acc2 + mac.l %d6,%a3,10(%a6),%a3,%acc1 + mac.l %d6,%a3,10(%a6),%a3,%acc2 + mac.l %d6,%a3,10(%a6),%d2,%acc1 + mac.l %d6,%a3,10(%a6),%d2,%acc2 + mac.l %d6,%a3,10(%a6),%a7,%acc1 + mac.l %d6,%a3,10(%a6),%a7,%acc2 + mac.l %d6,%a3,10(%a6)&,%d1,%acc1 + mac.l %d6,%a3,10(%a6)&,%d1,%acc2 + mac.l %d6,%a3,10(%a6)&,%a3,%acc1 + mac.l %d6,%a3,10(%a6)&,%a3,%acc2 + mac.l %d6,%a3,10(%a6)&,%d2,%acc1 + mac.l %d6,%a3,10(%a6)&,%d2,%acc2 + mac.l %d6,%a3,10(%a6)&,%a7,%acc1 + mac.l %d6,%a3,10(%a6)&,%a7,%acc2 + mac.l %d6,%a3,-(%a1),%d1,%acc1 + mac.l %d6,%a3,-(%a1),%d1,%acc2 + mac.l %d6,%a3,-(%a1),%a3,%acc1 + mac.l %d6,%a3,-(%a1),%a3,%acc2 + mac.l %d6,%a3,-(%a1),%d2,%acc1 + mac.l %d6,%a3,-(%a1),%d2,%acc2 + mac.l %d6,%a3,-(%a1),%a7,%acc1 + mac.l %d6,%a3,-(%a1),%a7,%acc2 + mac.l %d6,%a3,-(%a1)&,%d1,%acc1 + mac.l %d6,%a3,-(%a1)&,%d1,%acc2 + mac.l %d6,%a3,-(%a1)&,%a3,%acc1 + mac.l %d6,%a3,-(%a1)&,%a3,%acc2 + mac.l %d6,%a3,-(%a1)&,%d2,%acc1 + mac.l %d6,%a3,-(%a1)&,%d2,%acc2 + mac.l %d6,%a3,-(%a1)&,%a7,%acc1 + mac.l %d6,%a3,-(%a1)&,%a7,%acc2 + mac.l %d6,%a3,<<,(%a3),%d1,%acc1 + mac.l %d6,%a3,<<,(%a3),%d1,%acc2 + mac.l %d6,%a3,<<,(%a3),%a3,%acc1 + mac.l %d6,%a3,<<,(%a3),%a3,%acc2 + mac.l %d6,%a3,<<,(%a3),%d2,%acc1 + mac.l %d6,%a3,<<,(%a3),%d2,%acc2 + mac.l %d6,%a3,<<,(%a3),%a7,%acc1 + mac.l %d6,%a3,<<,(%a3),%a7,%acc2 + mac.l %d6,%a3,<<,(%a3)&,%d1,%acc1 + mac.l %d6,%a3,<<,(%a3)&,%d1,%acc2 + mac.l %d6,%a3,<<,(%a3)&,%a3,%acc1 + mac.l %d6,%a3,<<,(%a3)&,%a3,%acc2 + mac.l %d6,%a3,<<,(%a3)&,%d2,%acc1 + mac.l %d6,%a3,<<,(%a3)&,%d2,%acc2 + mac.l %d6,%a3,<<,(%a3)&,%a7,%acc1 + mac.l %d6,%a3,<<,(%a3)&,%a7,%acc2 + mac.l %d6,%a3,<<,(%a2)+,%d1,%acc1 + mac.l %d6,%a3,<<,(%a2)+,%d1,%acc2 + mac.l %d6,%a3,<<,(%a2)+,%a3,%acc1 + mac.l %d6,%a3,<<,(%a2)+,%a3,%acc2 + mac.l %d6,%a3,<<,(%a2)+,%d2,%acc1 + mac.l %d6,%a3,<<,(%a2)+,%d2,%acc2 + mac.l %d6,%a3,<<,(%a2)+,%a7,%acc1 + mac.l %d6,%a3,<<,(%a2)+,%a7,%acc2 + mac.l %d6,%a3,<<,(%a2)+&,%d1,%acc1 + mac.l %d6,%a3,<<,(%a2)+&,%d1,%acc2 + mac.l %d6,%a3,<<,(%a2)+&,%a3,%acc1 + mac.l %d6,%a3,<<,(%a2)+&,%a3,%acc2 + mac.l %d6,%a3,<<,(%a2)+&,%d2,%acc1 + mac.l %d6,%a3,<<,(%a2)+&,%d2,%acc2 + mac.l %d6,%a3,<<,(%a2)+&,%a7,%acc1 + mac.l %d6,%a3,<<,(%a2)+&,%a7,%acc2 + mac.l %d6,%a3,<<,10(%a6),%d1,%acc1 + mac.l %d6,%a3,<<,10(%a6),%d1,%acc2 + mac.l %d6,%a3,<<,10(%a6),%a3,%acc1 + mac.l %d6,%a3,<<,10(%a6),%a3,%acc2 + mac.l %d6,%a3,<<,10(%a6),%d2,%acc1 + mac.l %d6,%a3,<<,10(%a6),%d2,%acc2 + mac.l %d6,%a3,<<,10(%a6),%a7,%acc1 + mac.l %d6,%a3,<<,10(%a6),%a7,%acc2 + mac.l %d6,%a3,<<,10(%a6)&,%d1,%acc1 + mac.l %d6,%a3,<<,10(%a6)&,%d1,%acc2 + mac.l %d6,%a3,<<,10(%a6)&,%a3,%acc1 + mac.l %d6,%a3,<<,10(%a6)&,%a3,%acc2 + mac.l %d6,%a3,<<,10(%a6)&,%d2,%acc1 + mac.l %d6,%a3,<<,10(%a6)&,%d2,%acc2 + mac.l %d6,%a3,<<,10(%a6)&,%a7,%acc1 + mac.l %d6,%a3,<<,10(%a6)&,%a7,%acc2 + mac.l %d6,%a3,<<,-(%a1),%d1,%acc1 + mac.l %d6,%a3,<<,-(%a1),%d1,%acc2 + mac.l %d6,%a3,<<,-(%a1),%a3,%acc1 + mac.l %d6,%a3,<<,-(%a1),%a3,%acc2 + mac.l %d6,%a3,<<,-(%a1),%d2,%acc1 + mac.l %d6,%a3,<<,-(%a1),%d2,%acc2 + mac.l %d6,%a3,<<,-(%a1),%a7,%acc1 + mac.l %d6,%a3,<<,-(%a1),%a7,%acc2 + mac.l %d6,%a3,<<,-(%a1)&,%d1,%acc1 + mac.l %d6,%a3,<<,-(%a1)&,%d1,%acc2 + mac.l %d6,%a3,<<,-(%a1)&,%a3,%acc1 + mac.l %d6,%a3,<<,-(%a1)&,%a3,%acc2 + mac.l %d6,%a3,<<,-(%a1)&,%d2,%acc1 + mac.l %d6,%a3,<<,-(%a1)&,%d2,%acc2 + mac.l %d6,%a3,<<,-(%a1)&,%a7,%acc1 + mac.l %d6,%a3,<<,-(%a1)&,%a7,%acc2 + mac.l %d6,%a3,>>,(%a3),%d1,%acc1 + mac.l %d6,%a3,>>,(%a3),%d1,%acc2 + mac.l %d6,%a3,>>,(%a3),%a3,%acc1 + mac.l %d6,%a3,>>,(%a3),%a3,%acc2 + mac.l %d6,%a3,>>,(%a3),%d2,%acc1 + mac.l %d6,%a3,>>,(%a3),%d2,%acc2 + mac.l %d6,%a3,>>,(%a3),%a7,%acc1 + mac.l %d6,%a3,>>,(%a3),%a7,%acc2 + mac.l %d6,%a3,>>,(%a3)&,%d1,%acc1 + mac.l %d6,%a3,>>,(%a3)&,%d1,%acc2 + mac.l %d6,%a3,>>,(%a3)&,%a3,%acc1 + mac.l %d6,%a3,>>,(%a3)&,%a3,%acc2 + mac.l %d6,%a3,>>,(%a3)&,%d2,%acc1 + mac.l %d6,%a3,>>,(%a3)&,%d2,%acc2 + mac.l %d6,%a3,>>,(%a3)&,%a7,%acc1 + mac.l %d6,%a3,>>,(%a3)&,%a7,%acc2 + mac.l %d6,%a3,>>,(%a2)+,%d1,%acc1 + mac.l %d6,%a3,>>,(%a2)+,%d1,%acc2 + mac.l %d6,%a3,>>,(%a2)+,%a3,%acc1 + mac.l %d6,%a3,>>,(%a2)+,%a3,%acc2 + mac.l %d6,%a3,>>,(%a2)+,%d2,%acc1 + mac.l %d6,%a3,>>,(%a2)+,%d2,%acc2 + mac.l %d6,%a3,>>,(%a2)+,%a7,%acc1 + mac.l %d6,%a3,>>,(%a2)+,%a7,%acc2 + mac.l %d6,%a3,>>,(%a2)+&,%d1,%acc1 + mac.l %d6,%a3,>>,(%a2)+&,%d1,%acc2 + mac.l %d6,%a3,>>,(%a2)+&,%a3,%acc1 + mac.l %d6,%a3,>>,(%a2)+&,%a3,%acc2 + mac.l %d6,%a3,>>,(%a2)+&,%d2,%acc1 + mac.l %d6,%a3,>>,(%a2)+&,%d2,%acc2 + mac.l %d6,%a3,>>,(%a2)+&,%a7,%acc1 + mac.l %d6,%a3,>>,(%a2)+&,%a7,%acc2 + mac.l %d6,%a3,>>,10(%a6),%d1,%acc1 + mac.l %d6,%a3,>>,10(%a6),%d1,%acc2 + mac.l %d6,%a3,>>,10(%a6),%a3,%acc1 + mac.l %d6,%a3,>>,10(%a6),%a3,%acc2 + mac.l %d6,%a3,>>,10(%a6),%d2,%acc1 + mac.l %d6,%a3,>>,10(%a6),%d2,%acc2 + mac.l %d6,%a3,>>,10(%a6),%a7,%acc1 + mac.l %d6,%a3,>>,10(%a6),%a7,%acc2 + mac.l %d6,%a3,>>,10(%a6)&,%d1,%acc1 + mac.l %d6,%a3,>>,10(%a6)&,%d1,%acc2 + mac.l %d6,%a3,>>,10(%a6)&,%a3,%acc1 + mac.l %d6,%a3,>>,10(%a6)&,%a3,%acc2 + mac.l %d6,%a3,>>,10(%a6)&,%d2,%acc1 + mac.l %d6,%a3,>>,10(%a6)&,%d2,%acc2 + mac.l %d6,%a3,>>,10(%a6)&,%a7,%acc1 + mac.l %d6,%a3,>>,10(%a6)&,%a7,%acc2 + mac.l %d6,%a3,>>,-(%a1),%d1,%acc1 + mac.l %d6,%a3,>>,-(%a1),%d1,%acc2 + mac.l %d6,%a3,>>,-(%a1),%a3,%acc1 + mac.l %d6,%a3,>>,-(%a1),%a3,%acc2 + mac.l %d6,%a3,>>,-(%a1),%d2,%acc1 + mac.l %d6,%a3,>>,-(%a1),%d2,%acc2 + mac.l %d6,%a3,>>,-(%a1),%a7,%acc1 + mac.l %d6,%a3,>>,-(%a1),%a7,%acc2 + mac.l %d6,%a3,>>,-(%a1)&,%d1,%acc1 + mac.l %d6,%a3,>>,-(%a1)&,%d1,%acc2 + mac.l %d6,%a3,>>,-(%a1)&,%a3,%acc1 + mac.l %d6,%a3,>>,-(%a1)&,%a3,%acc2 + mac.l %d6,%a3,>>,-(%a1)&,%d2,%acc1 + mac.l %d6,%a3,>>,-(%a1)&,%d2,%acc2 + mac.l %d6,%a3,>>,-(%a1)&,%a7,%acc1 + mac.l %d6,%a3,>>,-(%a1)&,%a7,%acc2 + mac.l %d6,%a3,#1,(%a3),%d1,%acc1 + mac.l %d6,%a3,#1,(%a3),%d1,%acc2 + mac.l %d6,%a3,#1,(%a3),%a3,%acc1 + mac.l %d6,%a3,#1,(%a3),%a3,%acc2 + mac.l %d6,%a3,#1,(%a3),%d2,%acc1 + mac.l %d6,%a3,#1,(%a3),%d2,%acc2 + mac.l %d6,%a3,#1,(%a3),%a7,%acc1 + mac.l %d6,%a3,#1,(%a3),%a7,%acc2 + mac.l %d6,%a3,#1,(%a3)&,%d1,%acc1 + mac.l %d6,%a3,#1,(%a3)&,%d1,%acc2 + mac.l %d6,%a3,#1,(%a3)&,%a3,%acc1 + mac.l %d6,%a3,#1,(%a3)&,%a3,%acc2 + mac.l %d6,%a3,#1,(%a3)&,%d2,%acc1 + mac.l %d6,%a3,#1,(%a3)&,%d2,%acc2 + mac.l %d6,%a3,#1,(%a3)&,%a7,%acc1 + mac.l %d6,%a3,#1,(%a3)&,%a7,%acc2 + mac.l %d6,%a3,#1,(%a2)+,%d1,%acc1 + mac.l %d6,%a3,#1,(%a2)+,%d1,%acc2 + mac.l %d6,%a3,#1,(%a2)+,%a3,%acc1 + mac.l %d6,%a3,#1,(%a2)+,%a3,%acc2 + mac.l %d6,%a3,#1,(%a2)+,%d2,%acc1 + mac.l %d6,%a3,#1,(%a2)+,%d2,%acc2 + mac.l %d6,%a3,#1,(%a2)+,%a7,%acc1 + mac.l %d6,%a3,#1,(%a2)+,%a7,%acc2 + mac.l %d6,%a3,#1,(%a2)+&,%d1,%acc1 + mac.l %d6,%a3,#1,(%a2)+&,%d1,%acc2 + mac.l %d6,%a3,#1,(%a2)+&,%a3,%acc1 + mac.l %d6,%a3,#1,(%a2)+&,%a3,%acc2 + mac.l %d6,%a3,#1,(%a2)+&,%d2,%acc1 + mac.l %d6,%a3,#1,(%a2)+&,%d2,%acc2 + mac.l %d6,%a3,#1,(%a2)+&,%a7,%acc1 + mac.l %d6,%a3,#1,(%a2)+&,%a7,%acc2 + mac.l %d6,%a3,#1,10(%a6),%d1,%acc1 + mac.l %d6,%a3,#1,10(%a6),%d1,%acc2 + mac.l %d6,%a3,#1,10(%a6),%a3,%acc1 + mac.l %d6,%a3,#1,10(%a6),%a3,%acc2 + mac.l %d6,%a3,#1,10(%a6),%d2,%acc1 + mac.l %d6,%a3,#1,10(%a6),%d2,%acc2 + mac.l %d6,%a3,#1,10(%a6),%a7,%acc1 + mac.l %d6,%a3,#1,10(%a6),%a7,%acc2 + mac.l %d6,%a3,#1,10(%a6)&,%d1,%acc1 + mac.l %d6,%a3,#1,10(%a6)&,%d1,%acc2 + mac.l %d6,%a3,#1,10(%a6)&,%a3,%acc1 + mac.l %d6,%a3,#1,10(%a6)&,%a3,%acc2 + mac.l %d6,%a3,#1,10(%a6)&,%d2,%acc1 + mac.l %d6,%a3,#1,10(%a6)&,%d2,%acc2 + mac.l %d6,%a3,#1,10(%a6)&,%a7,%acc1 + mac.l %d6,%a3,#1,10(%a6)&,%a7,%acc2 + mac.l %d6,%a3,#1,-(%a1),%d1,%acc1 + mac.l %d6,%a3,#1,-(%a1),%d1,%acc2 + mac.l %d6,%a3,#1,-(%a1),%a3,%acc1 + mac.l %d6,%a3,#1,-(%a1),%a3,%acc2 + mac.l %d6,%a3,#1,-(%a1),%d2,%acc1 + mac.l %d6,%a3,#1,-(%a1),%d2,%acc2 + mac.l %d6,%a3,#1,-(%a1),%a7,%acc1 + mac.l %d6,%a3,#1,-(%a1),%a7,%acc2 + mac.l %d6,%a3,#1,-(%a1)&,%d1,%acc1 + mac.l %d6,%a3,#1,-(%a1)&,%d1,%acc2 + mac.l %d6,%a3,#1,-(%a1)&,%a3,%acc1 + mac.l %d6,%a3,#1,-(%a1)&,%a3,%acc2 + mac.l %d6,%a3,#1,-(%a1)&,%d2,%acc1 + mac.l %d6,%a3,#1,-(%a1)&,%d2,%acc2 + mac.l %d6,%a3,#1,-(%a1)&,%a7,%acc1 + mac.l %d6,%a3,#1,-(%a1)&,%a7,%acc2 + mac.l %d6,%a3,#-1,(%a3),%d1,%acc1 + mac.l %d6,%a3,#-1,(%a3),%d1,%acc2 + mac.l %d6,%a3,#-1,(%a3),%a3,%acc1 + mac.l %d6,%a3,#-1,(%a3),%a3,%acc2 + mac.l %d6,%a3,#-1,(%a3),%d2,%acc1 + mac.l %d6,%a3,#-1,(%a3),%d2,%acc2 + mac.l %d6,%a3,#-1,(%a3),%a7,%acc1 + mac.l %d6,%a3,#-1,(%a3),%a7,%acc2 + mac.l %d6,%a3,#-1,(%a3)&,%d1,%acc1 + mac.l %d6,%a3,#-1,(%a3)&,%d1,%acc2 + mac.l %d6,%a3,#-1,(%a3)&,%a3,%acc1 + mac.l %d6,%a3,#-1,(%a3)&,%a3,%acc2 + mac.l %d6,%a3,#-1,(%a3)&,%d2,%acc1 + mac.l %d6,%a3,#-1,(%a3)&,%d2,%acc2 + mac.l %d6,%a3,#-1,(%a3)&,%a7,%acc1 + mac.l %d6,%a3,#-1,(%a3)&,%a7,%acc2 + mac.l %d6,%a3,#-1,(%a2)+,%d1,%acc1 + mac.l %d6,%a3,#-1,(%a2)+,%d1,%acc2 + mac.l %d6,%a3,#-1,(%a2)+,%a3,%acc1 + mac.l %d6,%a3,#-1,(%a2)+,%a3,%acc2 + mac.l %d6,%a3,#-1,(%a2)+,%d2,%acc1 + mac.l %d6,%a3,#-1,(%a2)+,%d2,%acc2 + mac.l %d6,%a3,#-1,(%a2)+,%a7,%acc1 + mac.l %d6,%a3,#-1,(%a2)+,%a7,%acc2 + mac.l %d6,%a3,#-1,(%a2)+&,%d1,%acc1 + mac.l %d6,%a3,#-1,(%a2)+&,%d1,%acc2 + mac.l %d6,%a3,#-1,(%a2)+&,%a3,%acc1 + mac.l %d6,%a3,#-1,(%a2)+&,%a3,%acc2 + mac.l %d6,%a3,#-1,(%a2)+&,%d2,%acc1 + mac.l %d6,%a3,#-1,(%a2)+&,%d2,%acc2 + mac.l %d6,%a3,#-1,(%a2)+&,%a7,%acc1 + mac.l %d6,%a3,#-1,(%a2)+&,%a7,%acc2 + mac.l %d6,%a3,#-1,10(%a6),%d1,%acc1 + mac.l %d6,%a3,#-1,10(%a6),%d1,%acc2 + mac.l %d6,%a3,#-1,10(%a6),%a3,%acc1 + mac.l %d6,%a3,#-1,10(%a6),%a3,%acc2 + mac.l %d6,%a3,#-1,10(%a6),%d2,%acc1 + mac.l %d6,%a3,#-1,10(%a6),%d2,%acc2 + mac.l %d6,%a3,#-1,10(%a6),%a7,%acc1 + mac.l %d6,%a3,#-1,10(%a6),%a7,%acc2 + mac.l %d6,%a3,#-1,10(%a6)&,%d1,%acc1 + mac.l %d6,%a3,#-1,10(%a6)&,%d1,%acc2 + mac.l %d6,%a3,#-1,10(%a6)&,%a3,%acc1 + mac.l %d6,%a3,#-1,10(%a6)&,%a3,%acc2 + mac.l %d6,%a3,#-1,10(%a6)&,%d2,%acc1 + mac.l %d6,%a3,#-1,10(%a6)&,%d2,%acc2 + mac.l %d6,%a3,#-1,10(%a6)&,%a7,%acc1 + mac.l %d6,%a3,#-1,10(%a6)&,%a7,%acc2 + mac.l %d6,%a3,#-1,-(%a1),%d1,%acc1 + mac.l %d6,%a3,#-1,-(%a1),%d1,%acc2 + mac.l %d6,%a3,#-1,-(%a1),%a3,%acc1 + mac.l %d6,%a3,#-1,-(%a1),%a3,%acc2 + mac.l %d6,%a3,#-1,-(%a1),%d2,%acc1 + mac.l %d6,%a3,#-1,-(%a1),%d2,%acc2 + mac.l %d6,%a3,#-1,-(%a1),%a7,%acc1 + mac.l %d6,%a3,#-1,-(%a1),%a7,%acc2 + mac.l %d6,%a3,#-1,-(%a1)&,%d1,%acc1 + mac.l %d6,%a3,#-1,-(%a1)&,%d1,%acc2 + mac.l %d6,%a3,#-1,-(%a1)&,%a3,%acc1 + mac.l %d6,%a3,#-1,-(%a1)&,%a3,%acc2 + mac.l %d6,%a3,#-1,-(%a1)&,%d2,%acc1 + mac.l %d6,%a3,#-1,-(%a1)&,%d2,%acc2 + mac.l %d6,%a3,#-1,-(%a1)&,%a7,%acc1 + mac.l %d6,%a3,#-1,-(%a1)&,%a7,%acc2 + mac.l %d6,%d4,(%a3),%d1,%acc1 + mac.l %d6,%d4,(%a3),%d1,%acc2 + mac.l %d6,%d4,(%a3),%a3,%acc1 + mac.l %d6,%d4,(%a3),%a3,%acc2 + mac.l %d6,%d4,(%a3),%d2,%acc1 + mac.l %d6,%d4,(%a3),%d2,%acc2 + mac.l %d6,%d4,(%a3),%a7,%acc1 + mac.l %d6,%d4,(%a3),%a7,%acc2 + mac.l %d6,%d4,(%a3)&,%d1,%acc1 + mac.l %d6,%d4,(%a3)&,%d1,%acc2 + mac.l %d6,%d4,(%a3)&,%a3,%acc1 + mac.l %d6,%d4,(%a3)&,%a3,%acc2 + mac.l %d6,%d4,(%a3)&,%d2,%acc1 + mac.l %d6,%d4,(%a3)&,%d2,%acc2 + mac.l %d6,%d4,(%a3)&,%a7,%acc1 + mac.l %d6,%d4,(%a3)&,%a7,%acc2 + mac.l %d6,%d4,(%a2)+,%d1,%acc1 + mac.l %d6,%d4,(%a2)+,%d1,%acc2 + mac.l %d6,%d4,(%a2)+,%a3,%acc1 + mac.l %d6,%d4,(%a2)+,%a3,%acc2 + mac.l %d6,%d4,(%a2)+,%d2,%acc1 + mac.l %d6,%d4,(%a2)+,%d2,%acc2 + mac.l %d6,%d4,(%a2)+,%a7,%acc1 + mac.l %d6,%d4,(%a2)+,%a7,%acc2 + mac.l %d6,%d4,(%a2)+&,%d1,%acc1 + mac.l %d6,%d4,(%a2)+&,%d1,%acc2 + mac.l %d6,%d4,(%a2)+&,%a3,%acc1 + mac.l %d6,%d4,(%a2)+&,%a3,%acc2 + mac.l %d6,%d4,(%a2)+&,%d2,%acc1 + mac.l %d6,%d4,(%a2)+&,%d2,%acc2 + mac.l %d6,%d4,(%a2)+&,%a7,%acc1 + mac.l %d6,%d4,(%a2)+&,%a7,%acc2 + mac.l %d6,%d4,10(%a6),%d1,%acc1 + mac.l %d6,%d4,10(%a6),%d1,%acc2 + mac.l %d6,%d4,10(%a6),%a3,%acc1 + mac.l %d6,%d4,10(%a6),%a3,%acc2 + mac.l %d6,%d4,10(%a6),%d2,%acc1 + mac.l %d6,%d4,10(%a6),%d2,%acc2 + mac.l %d6,%d4,10(%a6),%a7,%acc1 + mac.l %d6,%d4,10(%a6),%a7,%acc2 + mac.l %d6,%d4,10(%a6)&,%d1,%acc1 + mac.l %d6,%d4,10(%a6)&,%d1,%acc2 + mac.l %d6,%d4,10(%a6)&,%a3,%acc1 + mac.l %d6,%d4,10(%a6)&,%a3,%acc2 + mac.l %d6,%d4,10(%a6)&,%d2,%acc1 + mac.l %d6,%d4,10(%a6)&,%d2,%acc2 + mac.l %d6,%d4,10(%a6)&,%a7,%acc1 + mac.l %d6,%d4,10(%a6)&,%a7,%acc2 + mac.l %d6,%d4,-(%a1),%d1,%acc1 + mac.l %d6,%d4,-(%a1),%d1,%acc2 + mac.l %d6,%d4,-(%a1),%a3,%acc1 + mac.l %d6,%d4,-(%a1),%a3,%acc2 + mac.l %d6,%d4,-(%a1),%d2,%acc1 + mac.l %d6,%d4,-(%a1),%d2,%acc2 + mac.l %d6,%d4,-(%a1),%a7,%acc1 + mac.l %d6,%d4,-(%a1),%a7,%acc2 + mac.l %d6,%d4,-(%a1)&,%d1,%acc1 + mac.l %d6,%d4,-(%a1)&,%d1,%acc2 + mac.l %d6,%d4,-(%a1)&,%a3,%acc1 + mac.l %d6,%d4,-(%a1)&,%a3,%acc2 + mac.l %d6,%d4,-(%a1)&,%d2,%acc1 + mac.l %d6,%d4,-(%a1)&,%d2,%acc2 + mac.l %d6,%d4,-(%a1)&,%a7,%acc1 + mac.l %d6,%d4,-(%a1)&,%a7,%acc2 + mac.l %d6,%d4,<<,(%a3),%d1,%acc1 + mac.l %d6,%d4,<<,(%a3),%d1,%acc2 + mac.l %d6,%d4,<<,(%a3),%a3,%acc1 + mac.l %d6,%d4,<<,(%a3),%a3,%acc2 + mac.l %d6,%d4,<<,(%a3),%d2,%acc1 + mac.l %d6,%d4,<<,(%a3),%d2,%acc2 + mac.l %d6,%d4,<<,(%a3),%a7,%acc1 + mac.l %d6,%d4,<<,(%a3),%a7,%acc2 + mac.l %d6,%d4,<<,(%a3)&,%d1,%acc1 + mac.l %d6,%d4,<<,(%a3)&,%d1,%acc2 + mac.l %d6,%d4,<<,(%a3)&,%a3,%acc1 + mac.l %d6,%d4,<<,(%a3)&,%a3,%acc2 + mac.l %d6,%d4,<<,(%a3)&,%d2,%acc1 + mac.l %d6,%d4,<<,(%a3)&,%d2,%acc2 + mac.l %d6,%d4,<<,(%a3)&,%a7,%acc1 + mac.l %d6,%d4,<<,(%a3)&,%a7,%acc2 + mac.l %d6,%d4,<<,(%a2)+,%d1,%acc1 + mac.l %d6,%d4,<<,(%a2)+,%d1,%acc2 + mac.l %d6,%d4,<<,(%a2)+,%a3,%acc1 + mac.l %d6,%d4,<<,(%a2)+,%a3,%acc2 + mac.l %d6,%d4,<<,(%a2)+,%d2,%acc1 + mac.l %d6,%d4,<<,(%a2)+,%d2,%acc2 + mac.l %d6,%d4,<<,(%a2)+,%a7,%acc1 + mac.l %d6,%d4,<<,(%a2)+,%a7,%acc2 + mac.l %d6,%d4,<<,(%a2)+&,%d1,%acc1 + mac.l %d6,%d4,<<,(%a2)+&,%d1,%acc2 + mac.l %d6,%d4,<<,(%a2)+&,%a3,%acc1 + mac.l %d6,%d4,<<,(%a2)+&,%a3,%acc2 + mac.l %d6,%d4,<<,(%a2)+&,%d2,%acc1 + mac.l %d6,%d4,<<,(%a2)+&,%d2,%acc2 + mac.l %d6,%d4,<<,(%a2)+&,%a7,%acc1 + mac.l %d6,%d4,<<,(%a2)+&,%a7,%acc2 + mac.l %d6,%d4,<<,10(%a6),%d1,%acc1 + mac.l %d6,%d4,<<,10(%a6),%d1,%acc2 + mac.l %d6,%d4,<<,10(%a6),%a3,%acc1 + mac.l %d6,%d4,<<,10(%a6),%a3,%acc2 + mac.l %d6,%d4,<<,10(%a6),%d2,%acc1 + mac.l %d6,%d4,<<,10(%a6),%d2,%acc2 + mac.l %d6,%d4,<<,10(%a6),%a7,%acc1 + mac.l %d6,%d4,<<,10(%a6),%a7,%acc2 + mac.l %d6,%d4,<<,10(%a6)&,%d1,%acc1 + mac.l %d6,%d4,<<,10(%a6)&,%d1,%acc2 + mac.l %d6,%d4,<<,10(%a6)&,%a3,%acc1 + mac.l %d6,%d4,<<,10(%a6)&,%a3,%acc2 + mac.l %d6,%d4,<<,10(%a6)&,%d2,%acc1 + mac.l %d6,%d4,<<,10(%a6)&,%d2,%acc2 + mac.l %d6,%d4,<<,10(%a6)&,%a7,%acc1 + mac.l %d6,%d4,<<,10(%a6)&,%a7,%acc2 + mac.l %d6,%d4,<<,-(%a1),%d1,%acc1 + mac.l %d6,%d4,<<,-(%a1),%d1,%acc2 + mac.l %d6,%d4,<<,-(%a1),%a3,%acc1 + mac.l %d6,%d4,<<,-(%a1),%a3,%acc2 + mac.l %d6,%d4,<<,-(%a1),%d2,%acc1 + mac.l %d6,%d4,<<,-(%a1),%d2,%acc2 + mac.l %d6,%d4,<<,-(%a1),%a7,%acc1 + mac.l %d6,%d4,<<,-(%a1),%a7,%acc2 + mac.l %d6,%d4,<<,-(%a1)&,%d1,%acc1 + mac.l %d6,%d4,<<,-(%a1)&,%d1,%acc2 + mac.l %d6,%d4,<<,-(%a1)&,%a3,%acc1 + mac.l %d6,%d4,<<,-(%a1)&,%a3,%acc2 + mac.l %d6,%d4,<<,-(%a1)&,%d2,%acc1 + mac.l %d6,%d4,<<,-(%a1)&,%d2,%acc2 + mac.l %d6,%d4,<<,-(%a1)&,%a7,%acc1 + mac.l %d6,%d4,<<,-(%a1)&,%a7,%acc2 + mac.l %d6,%d4,>>,(%a3),%d1,%acc1 + mac.l %d6,%d4,>>,(%a3),%d1,%acc2 + mac.l %d6,%d4,>>,(%a3),%a3,%acc1 + mac.l %d6,%d4,>>,(%a3),%a3,%acc2 + mac.l %d6,%d4,>>,(%a3),%d2,%acc1 + mac.l %d6,%d4,>>,(%a3),%d2,%acc2 + mac.l %d6,%d4,>>,(%a3),%a7,%acc1 + mac.l %d6,%d4,>>,(%a3),%a7,%acc2 + mac.l %d6,%d4,>>,(%a3)&,%d1,%acc1 + mac.l %d6,%d4,>>,(%a3)&,%d1,%acc2 + mac.l %d6,%d4,>>,(%a3)&,%a3,%acc1 + mac.l %d6,%d4,>>,(%a3)&,%a3,%acc2 + mac.l %d6,%d4,>>,(%a3)&,%d2,%acc1 + mac.l %d6,%d4,>>,(%a3)&,%d2,%acc2 + mac.l %d6,%d4,>>,(%a3)&,%a7,%acc1 + mac.l %d6,%d4,>>,(%a3)&,%a7,%acc2 + mac.l %d6,%d4,>>,(%a2)+,%d1,%acc1 + mac.l %d6,%d4,>>,(%a2)+,%d1,%acc2 + mac.l %d6,%d4,>>,(%a2)+,%a3,%acc1 + mac.l %d6,%d4,>>,(%a2)+,%a3,%acc2 + mac.l %d6,%d4,>>,(%a2)+,%d2,%acc1 + mac.l %d6,%d4,>>,(%a2)+,%d2,%acc2 + mac.l %d6,%d4,>>,(%a2)+,%a7,%acc1 + mac.l %d6,%d4,>>,(%a2)+,%a7,%acc2 + mac.l %d6,%d4,>>,(%a2)+&,%d1,%acc1 + mac.l %d6,%d4,>>,(%a2)+&,%d1,%acc2 + mac.l %d6,%d4,>>,(%a2)+&,%a3,%acc1 + mac.l %d6,%d4,>>,(%a2)+&,%a3,%acc2 + mac.l %d6,%d4,>>,(%a2)+&,%d2,%acc1 + mac.l %d6,%d4,>>,(%a2)+&,%d2,%acc2 + mac.l %d6,%d4,>>,(%a2)+&,%a7,%acc1 + mac.l %d6,%d4,>>,(%a2)+&,%a7,%acc2 + mac.l %d6,%d4,>>,10(%a6),%d1,%acc1 + mac.l %d6,%d4,>>,10(%a6),%d1,%acc2 + mac.l %d6,%d4,>>,10(%a6),%a3,%acc1 + mac.l %d6,%d4,>>,10(%a6),%a3,%acc2 + mac.l %d6,%d4,>>,10(%a6),%d2,%acc1 + mac.l %d6,%d4,>>,10(%a6),%d2,%acc2 + mac.l %d6,%d4,>>,10(%a6),%a7,%acc1 + mac.l %d6,%d4,>>,10(%a6),%a7,%acc2 + mac.l %d6,%d4,>>,10(%a6)&,%d1,%acc1 + mac.l %d6,%d4,>>,10(%a6)&,%d1,%acc2 + mac.l %d6,%d4,>>,10(%a6)&,%a3,%acc1 + mac.l %d6,%d4,>>,10(%a6)&,%a3,%acc2 + mac.l %d6,%d4,>>,10(%a6)&,%d2,%acc1 + mac.l %d6,%d4,>>,10(%a6)&,%d2,%acc2 + mac.l %d6,%d4,>>,10(%a6)&,%a7,%acc1 + mac.l %d6,%d4,>>,10(%a6)&,%a7,%acc2 + mac.l %d6,%d4,>>,-(%a1),%d1,%acc1 + mac.l %d6,%d4,>>,-(%a1),%d1,%acc2 + mac.l %d6,%d4,>>,-(%a1),%a3,%acc1 + mac.l %d6,%d4,>>,-(%a1),%a3,%acc2 + mac.l %d6,%d4,>>,-(%a1),%d2,%acc1 + mac.l %d6,%d4,>>,-(%a1),%d2,%acc2 + mac.l %d6,%d4,>>,-(%a1),%a7,%acc1 + mac.l %d6,%d4,>>,-(%a1),%a7,%acc2 + mac.l %d6,%d4,>>,-(%a1)&,%d1,%acc1 + mac.l %d6,%d4,>>,-(%a1)&,%d1,%acc2 + mac.l %d6,%d4,>>,-(%a1)&,%a3,%acc1 + mac.l %d6,%d4,>>,-(%a1)&,%a3,%acc2 + mac.l %d6,%d4,>>,-(%a1)&,%d2,%acc1 + mac.l %d6,%d4,>>,-(%a1)&,%d2,%acc2 + mac.l %d6,%d4,>>,-(%a1)&,%a7,%acc1 + mac.l %d6,%d4,>>,-(%a1)&,%a7,%acc2 + mac.l %d6,%d4,#1,(%a3),%d1,%acc1 + mac.l %d6,%d4,#1,(%a3),%d1,%acc2 + mac.l %d6,%d4,#1,(%a3),%a3,%acc1 + mac.l %d6,%d4,#1,(%a3),%a3,%acc2 + mac.l %d6,%d4,#1,(%a3),%d2,%acc1 + mac.l %d6,%d4,#1,(%a3),%d2,%acc2 + mac.l %d6,%d4,#1,(%a3),%a7,%acc1 + mac.l %d6,%d4,#1,(%a3),%a7,%acc2 + mac.l %d6,%d4,#1,(%a3)&,%d1,%acc1 + mac.l %d6,%d4,#1,(%a3)&,%d1,%acc2 + mac.l %d6,%d4,#1,(%a3)&,%a3,%acc1 + mac.l %d6,%d4,#1,(%a3)&,%a3,%acc2 + mac.l %d6,%d4,#1,(%a3)&,%d2,%acc1 + mac.l %d6,%d4,#1,(%a3)&,%d2,%acc2 + mac.l %d6,%d4,#1,(%a3)&,%a7,%acc1 + mac.l %d6,%d4,#1,(%a3)&,%a7,%acc2 + mac.l %d6,%d4,#1,(%a2)+,%d1,%acc1 + mac.l %d6,%d4,#1,(%a2)+,%d1,%acc2 + mac.l %d6,%d4,#1,(%a2)+,%a3,%acc1 + mac.l %d6,%d4,#1,(%a2)+,%a3,%acc2 + mac.l %d6,%d4,#1,(%a2)+,%d2,%acc1 + mac.l %d6,%d4,#1,(%a2)+,%d2,%acc2 + mac.l %d6,%d4,#1,(%a2)+,%a7,%acc1 + mac.l %d6,%d4,#1,(%a2)+,%a7,%acc2 + mac.l %d6,%d4,#1,(%a2)+&,%d1,%acc1 + mac.l %d6,%d4,#1,(%a2)+&,%d1,%acc2 + mac.l %d6,%d4,#1,(%a2)+&,%a3,%acc1 + mac.l %d6,%d4,#1,(%a2)+&,%a3,%acc2 + mac.l %d6,%d4,#1,(%a2)+&,%d2,%acc1 + mac.l %d6,%d4,#1,(%a2)+&,%d2,%acc2 + mac.l %d6,%d4,#1,(%a2)+&,%a7,%acc1 + mac.l %d6,%d4,#1,(%a2)+&,%a7,%acc2 + mac.l %d6,%d4,#1,10(%a6),%d1,%acc1 + mac.l %d6,%d4,#1,10(%a6),%d1,%acc2 + mac.l %d6,%d4,#1,10(%a6),%a3,%acc1 + mac.l %d6,%d4,#1,10(%a6),%a3,%acc2 + mac.l %d6,%d4,#1,10(%a6),%d2,%acc1 + mac.l %d6,%d4,#1,10(%a6),%d2,%acc2 + mac.l %d6,%d4,#1,10(%a6),%a7,%acc1 + mac.l %d6,%d4,#1,10(%a6),%a7,%acc2 + mac.l %d6,%d4,#1,10(%a6)&,%d1,%acc1 + mac.l %d6,%d4,#1,10(%a6)&,%d1,%acc2 + mac.l %d6,%d4,#1,10(%a6)&,%a3,%acc1 + mac.l %d6,%d4,#1,10(%a6)&,%a3,%acc2 + mac.l %d6,%d4,#1,10(%a6)&,%d2,%acc1 + mac.l %d6,%d4,#1,10(%a6)&,%d2,%acc2 + mac.l %d6,%d4,#1,10(%a6)&,%a7,%acc1 + mac.l %d6,%d4,#1,10(%a6)&,%a7,%acc2 + mac.l %d6,%d4,#1,-(%a1),%d1,%acc1 + mac.l %d6,%d4,#1,-(%a1),%d1,%acc2 + mac.l %d6,%d4,#1,-(%a1),%a3,%acc1 + mac.l %d6,%d4,#1,-(%a1),%a3,%acc2 + mac.l %d6,%d4,#1,-(%a1),%d2,%acc1 + mac.l %d6,%d4,#1,-(%a1),%d2,%acc2 + mac.l %d6,%d4,#1,-(%a1),%a7,%acc1 + mac.l %d6,%d4,#1,-(%a1),%a7,%acc2 + mac.l %d6,%d4,#1,-(%a1)&,%d1,%acc1 + mac.l %d6,%d4,#1,-(%a1)&,%d1,%acc2 + mac.l %d6,%d4,#1,-(%a1)&,%a3,%acc1 + mac.l %d6,%d4,#1,-(%a1)&,%a3,%acc2 + mac.l %d6,%d4,#1,-(%a1)&,%d2,%acc1 + mac.l %d6,%d4,#1,-(%a1)&,%d2,%acc2 + mac.l %d6,%d4,#1,-(%a1)&,%a7,%acc1 + mac.l %d6,%d4,#1,-(%a1)&,%a7,%acc2 + mac.l %d6,%d4,#-1,(%a3),%d1,%acc1 + mac.l %d6,%d4,#-1,(%a3),%d1,%acc2 + mac.l %d6,%d4,#-1,(%a3),%a3,%acc1 + mac.l %d6,%d4,#-1,(%a3),%a3,%acc2 + mac.l %d6,%d4,#-1,(%a3),%d2,%acc1 + mac.l %d6,%d4,#-1,(%a3),%d2,%acc2 + mac.l %d6,%d4,#-1,(%a3),%a7,%acc1 + mac.l %d6,%d4,#-1,(%a3),%a7,%acc2 + mac.l %d6,%d4,#-1,(%a3)&,%d1,%acc1 + mac.l %d6,%d4,#-1,(%a3)&,%d1,%acc2 + mac.l %d6,%d4,#-1,(%a3)&,%a3,%acc1 + mac.l %d6,%d4,#-1,(%a3)&,%a3,%acc2 + mac.l %d6,%d4,#-1,(%a3)&,%d2,%acc1 + mac.l %d6,%d4,#-1,(%a3)&,%d2,%acc2 + mac.l %d6,%d4,#-1,(%a3)&,%a7,%acc1 + mac.l %d6,%d4,#-1,(%a3)&,%a7,%acc2 + mac.l %d6,%d4,#-1,(%a2)+,%d1,%acc1 + mac.l %d6,%d4,#-1,(%a2)+,%d1,%acc2 + mac.l %d6,%d4,#-1,(%a2)+,%a3,%acc1 + mac.l %d6,%d4,#-1,(%a2)+,%a3,%acc2 + mac.l %d6,%d4,#-1,(%a2)+,%d2,%acc1 + mac.l %d6,%d4,#-1,(%a2)+,%d2,%acc2 + mac.l %d6,%d4,#-1,(%a2)+,%a7,%acc1 + mac.l %d6,%d4,#-1,(%a2)+,%a7,%acc2 + mac.l %d6,%d4,#-1,(%a2)+&,%d1,%acc1 + mac.l %d6,%d4,#-1,(%a2)+&,%d1,%acc2 + mac.l %d6,%d4,#-1,(%a2)+&,%a3,%acc1 + mac.l %d6,%d4,#-1,(%a2)+&,%a3,%acc2 + mac.l %d6,%d4,#-1,(%a2)+&,%d2,%acc1 + mac.l %d6,%d4,#-1,(%a2)+&,%d2,%acc2 + mac.l %d6,%d4,#-1,(%a2)+&,%a7,%acc1 + mac.l %d6,%d4,#-1,(%a2)+&,%a7,%acc2 + mac.l %d6,%d4,#-1,10(%a6),%d1,%acc1 + mac.l %d6,%d4,#-1,10(%a6),%d1,%acc2 + mac.l %d6,%d4,#-1,10(%a6),%a3,%acc1 + mac.l %d6,%d4,#-1,10(%a6),%a3,%acc2 + mac.l %d6,%d4,#-1,10(%a6),%d2,%acc1 + mac.l %d6,%d4,#-1,10(%a6),%d2,%acc2 + mac.l %d6,%d4,#-1,10(%a6),%a7,%acc1 + mac.l %d6,%d4,#-1,10(%a6),%a7,%acc2 + mac.l %d6,%d4,#-1,10(%a6)&,%d1,%acc1 + mac.l %d6,%d4,#-1,10(%a6)&,%d1,%acc2 + mac.l %d6,%d4,#-1,10(%a6)&,%a3,%acc1 + mac.l %d6,%d4,#-1,10(%a6)&,%a3,%acc2 + mac.l %d6,%d4,#-1,10(%a6)&,%d2,%acc1 + mac.l %d6,%d4,#-1,10(%a6)&,%d2,%acc2 + mac.l %d6,%d4,#-1,10(%a6)&,%a7,%acc1 + mac.l %d6,%d4,#-1,10(%a6)&,%a7,%acc2 + mac.l %d6,%d4,#-1,-(%a1),%d1,%acc1 + mac.l %d6,%d4,#-1,-(%a1),%d1,%acc2 + mac.l %d6,%d4,#-1,-(%a1),%a3,%acc1 + mac.l %d6,%d4,#-1,-(%a1),%a3,%acc2 + mac.l %d6,%d4,#-1,-(%a1),%d2,%acc1 + mac.l %d6,%d4,#-1,-(%a1),%d2,%acc2 + mac.l %d6,%d4,#-1,-(%a1),%a7,%acc1 + mac.l %d6,%d4,#-1,-(%a1),%a7,%acc2 + mac.l %d6,%d4,#-1,-(%a1)&,%d1,%acc1 + mac.l %d6,%d4,#-1,-(%a1)&,%d1,%acc2 + mac.l %d6,%d4,#-1,-(%a1)&,%a3,%acc1 + mac.l %d6,%d4,#-1,-(%a1)&,%a3,%acc2 + mac.l %d6,%d4,#-1,-(%a1)&,%d2,%acc1 + mac.l %d6,%d4,#-1,-(%a1)&,%d2,%acc2 + mac.l %d6,%d4,#-1,-(%a1)&,%a7,%acc1 + mac.l %d6,%d4,#-1,-(%a1)&,%a7,%acc2 diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/m68k/mcf-mac.d binutils-2.15.91.0.1/gas/testsuite/gas/m68k/mcf-mac.d --- binutils-2.15.90.0.3/gas/testsuite/gas/m68k/mcf-mac.d 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/m68k/mcf-mac.d 2004-05-27 11:26:04.329210996 -0700 @@ -0,0 +1,3325 @@ +#name: mcf-mac +#objdump: -d --architecture=m68k:5407 +#as: -m5407 + +.*: file format .* + +Disassembly of section .text: + +00000000 <.text>: + 0: a182 movel %acc,%d2 + 2: a189 movel %acc,%a1 + 4: a989 movel %macsr,%a1 + 6: a982 movel %macsr,%d2 + 8: ad89 movel %mask,%a1 + a: ad82 movel %mask,%d2 + c: a9c0 movel %macsr,%ccr + e: a13c 1234 5678 movel #305419896,%acc + 14: a101 movel %d1,%acc + 16: a10a movel %a2,%acc + 18: a93c 1234 5678 movel #305419896,%macsr + 1e: a901 movel %d1,%macsr + 20: a90a movel %a2,%macsr + 22: ad3c 1234 5678 movel #305419896,%mask + 28: ad01 movel %d1,%mask + 2a: ad0a movel %a2,%mask + 2c: a449 0080 macw %a1l,%a2u + 30: a449 0280 macw %a1l,%a2u,<< + 34: a449 0680 macw %a1l,%a2u,>> + 38: a449 0280 macw %a1l,%a2u,<< + 3c: a449 0680 macw %a1l,%a2u,>> + 40: a609 0000 macw %a1l,%d3l + 44: a609 0200 macw %a1l,%d3l,<< + 48: a609 0600 macw %a1l,%d3l,>> + 4c: a609 0200 macw %a1l,%d3l,<< + 50: a609 0600 macw %a1l,%d3l,>> + 54: ae49 0080 macw %a1l,%a7u + 58: ae49 0280 macw %a1l,%a7u,<< + 5c: ae49 0680 macw %a1l,%a7u,>> + 60: ae49 0280 macw %a1l,%a7u,<< + 64: ae49 0680 macw %a1l,%a7u,>> + 68: a209 0000 macw %a1l,%d1l + 6c: a209 0200 macw %a1l,%d1l,<< + 70: a209 0600 macw %a1l,%d1l,>> + 74: a209 0200 macw %a1l,%d1l,<< + 78: a209 0600 macw %a1l,%d1l,>> + 7c: a442 00c0 macw %d2u,%a2u + 80: a442 02c0 macw %d2u,%a2u,<< + 84: a442 06c0 macw %d2u,%a2u,>> + 88: a442 02c0 macw %d2u,%a2u,<< + 8c: a442 06c0 macw %d2u,%a2u,>> + 90: a602 0040 macw %d2u,%d3l + 94: a602 0240 macw %d2u,%d3l,<< + 98: a602 0640 macw %d2u,%d3l,>> + 9c: a602 0240 macw %d2u,%d3l,<< + a0: a602 0640 macw %d2u,%d3l,>> + a4: ae42 00c0 macw %d2u,%a7u + a8: ae42 02c0 macw %d2u,%a7u,<< + ac: ae42 06c0 macw %d2u,%a7u,>> + b0: ae42 02c0 macw %d2u,%a7u,<< + b4: ae42 06c0 macw %d2u,%a7u,>> + b8: a202 0040 macw %d2u,%d1l + bc: a202 0240 macw %d2u,%d1l,<< + c0: a202 0640 macw %d2u,%d1l,>> + c4: a202 0240 macw %d2u,%d1l,<< + c8: a202 0640 macw %d2u,%d1l,>> + cc: a44d 0080 macw %a5l,%a2u + d0: a44d 0280 macw %a5l,%a2u,<< + d4: a44d 0680 macw %a5l,%a2u,>> + d8: a44d 0280 macw %a5l,%a2u,<< + dc: a44d 0680 macw %a5l,%a2u,>> + e0: a60d 0000 macw %a5l,%d3l + e4: a60d 0200 macw %a5l,%d3l,<< + e8: a60d 0600 macw %a5l,%d3l,>> + ec: a60d 0200 macw %a5l,%d3l,<< + f0: a60d 0600 macw %a5l,%d3l,>> + f4: ae4d 0080 macw %a5l,%a7u + f8: ae4d 0280 macw %a5l,%a7u,<< + fc: ae4d 0680 macw %a5l,%a7u,>> + 100: ae4d 0280 macw %a5l,%a7u,<< + 104: ae4d 0680 macw %a5l,%a7u,>> + 108: a20d 0000 macw %a5l,%d1l + 10c: a20d 0200 macw %a5l,%d1l,<< + 110: a20d 0600 macw %a5l,%d1l,>> + 114: a20d 0200 macw %a5l,%d1l,<< + 118: a20d 0600 macw %a5l,%d1l,>> + 11c: a446 00c0 macw %d6u,%a2u + 120: a446 02c0 macw %d6u,%a2u,<< + 124: a446 06c0 macw %d6u,%a2u,>> + 128: a446 02c0 macw %d6u,%a2u,<< + 12c: a446 06c0 macw %d6u,%a2u,>> + 130: a606 0040 macw %d6u,%d3l + 134: a606 0240 macw %d6u,%d3l,<< + 138: a606 0640 macw %d6u,%d3l,>> + 13c: a606 0240 macw %d6u,%d3l,<< + 140: a606 0640 macw %d6u,%d3l,>> + 144: ae46 00c0 macw %d6u,%a7u + 148: ae46 02c0 macw %d6u,%a7u,<< + 14c: ae46 06c0 macw %d6u,%a7u,>> + 150: ae46 02c0 macw %d6u,%a7u,<< + 154: ae46 06c0 macw %d6u,%a7u,>> + 158: a206 0040 macw %d6u,%d1l + 15c: a206 0240 macw %d6u,%d1l,<< + 160: a206 0640 macw %d6u,%d1l,>> + 164: a206 0240 macw %d6u,%d1l,<< + 168: a206 0640 macw %d6u,%d1l,>> + 16c: a293 a089 macw %a1l,%a2u,%a3@,%d1 + 170: a6d3 a089 macw %a1l,%a2u,%a3@,%a3 + 174: a493 a089 macw %a1l,%a2u,%a3@,%d2 + 178: aed3 a089 macw %a1l,%a2u,%a3@,%sp + 17c: a293 a0a9 macw %a1l,%a2u,%a3@&,%d1 + 180: a6d3 a0a9 macw %a1l,%a2u,%a3@&,%a3 + 184: a493 a0a9 macw %a1l,%a2u,%a3@&,%d2 + 188: aed3 a0a9 macw %a1l,%a2u,%a3@&,%sp + 18c: a29a a089 macw %a1l,%a2u,%a2@\+,%d1 + 190: a6da a089 macw %a1l,%a2u,%a2@\+,%a3 + 194: a49a a089 macw %a1l,%a2u,%a2@\+,%d2 + 198: aeda a089 macw %a1l,%a2u,%a2@\+,%sp + 19c: a29a a0a9 macw %a1l,%a2u,%a2@\+&,%d1 + 1a0: a6da a0a9 macw %a1l,%a2u,%a2@\+&,%a3 + 1a4: a49a a0a9 macw %a1l,%a2u,%a2@\+&,%d2 + 1a8: aeda a0a9 macw %a1l,%a2u,%a2@\+&,%sp + 1ac: a2ae a089 000a macw %a1l,%a2u,%fp@\(10\),%d1 + 1b2: a6ee a089 000a macw %a1l,%a2u,%fp@\(10\),%a3 + 1b8: a4ae a089 000a macw %a1l,%a2u,%fp@\(10\),%d2 + 1be: aeee a089 000a macw %a1l,%a2u,%fp@\(10\),%sp + 1c4: a2ae a0a9 000a macw %a1l,%a2u,%fp@\(10\)&,%d1 + 1ca: a6ee a0a9 000a macw %a1l,%a2u,%fp@\(10\)&,%a3 + 1d0: a4ae a0a9 000a macw %a1l,%a2u,%fp@\(10\)&,%d2 + 1d6: aeee a0a9 000a macw %a1l,%a2u,%fp@\(10\)&,%sp + 1dc: a2a1 a089 macw %a1l,%a2u,%a1@-,%d1 + 1e0: a6e1 a089 macw %a1l,%a2u,%a1@-,%a3 + 1e4: a4a1 a089 macw %a1l,%a2u,%a1@-,%d2 + 1e8: aee1 a089 macw %a1l,%a2u,%a1@-,%sp + 1ec: a2a1 a0a9 macw %a1l,%a2u,%a1@-&,%d1 + 1f0: a6e1 a0a9 macw %a1l,%a2u,%a1@-&,%a3 + 1f4: a4a1 a0a9 macw %a1l,%a2u,%a1@-&,%d2 + 1f8: aee1 a0a9 macw %a1l,%a2u,%a1@-&,%sp + 1fc: a293 a289 macw %a1l,%a2u,<<,%a3@,%d1 + 200: a6d3 a289 macw %a1l,%a2u,<<,%a3@,%a3 + 204: a493 a289 macw %a1l,%a2u,<<,%a3@,%d2 + 208: aed3 a289 macw %a1l,%a2u,<<,%a3@,%sp + 20c: a293 a2a9 macw %a1l,%a2u,<<,%a3@&,%d1 + 210: a6d3 a2a9 macw %a1l,%a2u,<<,%a3@&,%a3 + 214: a493 a2a9 macw %a1l,%a2u,<<,%a3@&,%d2 + 218: aed3 a2a9 macw %a1l,%a2u,<<,%a3@&,%sp + 21c: a29a a289 macw %a1l,%a2u,<<,%a2@\+,%d1 + 220: a6da a289 macw %a1l,%a2u,<<,%a2@\+,%a3 + 224: a49a a289 macw %a1l,%a2u,<<,%a2@\+,%d2 + 228: aeda a289 macw %a1l,%a2u,<<,%a2@\+,%sp + 22c: a29a a2a9 macw %a1l,%a2u,<<,%a2@\+&,%d1 + 230: a6da a2a9 macw %a1l,%a2u,<<,%a2@\+&,%a3 + 234: a49a a2a9 macw %a1l,%a2u,<<,%a2@\+&,%d2 + 238: aeda a2a9 macw %a1l,%a2u,<<,%a2@\+&,%sp + 23c: a2ae a289 000a macw %a1l,%a2u,<<,%fp@\(10\),%d1 + 242: a6ee a289 000a macw %a1l,%a2u,<<,%fp@\(10\),%a3 + 248: a4ae a289 000a macw %a1l,%a2u,<<,%fp@\(10\),%d2 + 24e: aeee a289 000a macw %a1l,%a2u,<<,%fp@\(10\),%sp + 254: a2ae a2a9 000a macw %a1l,%a2u,<<,%fp@\(10\)&,%d1 + 25a: a6ee a2a9 000a macw %a1l,%a2u,<<,%fp@\(10\)&,%a3 + 260: a4ae a2a9 000a macw %a1l,%a2u,<<,%fp@\(10\)&,%d2 + 266: aeee a2a9 000a macw %a1l,%a2u,<<,%fp@\(10\)&,%sp + 26c: a2a1 a289 macw %a1l,%a2u,<<,%a1@-,%d1 + 270: a6e1 a289 macw %a1l,%a2u,<<,%a1@-,%a3 + 274: a4a1 a289 macw %a1l,%a2u,<<,%a1@-,%d2 + 278: aee1 a289 macw %a1l,%a2u,<<,%a1@-,%sp + 27c: a2a1 a2a9 macw %a1l,%a2u,<<,%a1@-&,%d1 + 280: a6e1 a2a9 macw %a1l,%a2u,<<,%a1@-&,%a3 + 284: a4a1 a2a9 macw %a1l,%a2u,<<,%a1@-&,%d2 + 288: aee1 a2a9 macw %a1l,%a2u,<<,%a1@-&,%sp + 28c: a293 a689 macw %a1l,%a2u,>>,%a3@,%d1 + 290: a6d3 a689 macw %a1l,%a2u,>>,%a3@,%a3 + 294: a493 a689 macw %a1l,%a2u,>>,%a3@,%d2 + 298: aed3 a689 macw %a1l,%a2u,>>,%a3@,%sp + 29c: a293 a6a9 macw %a1l,%a2u,>>,%a3@&,%d1 + 2a0: a6d3 a6a9 macw %a1l,%a2u,>>,%a3@&,%a3 + 2a4: a493 a6a9 macw %a1l,%a2u,>>,%a3@&,%d2 + 2a8: aed3 a6a9 macw %a1l,%a2u,>>,%a3@&,%sp + 2ac: a29a a689 macw %a1l,%a2u,>>,%a2@\+,%d1 + 2b0: a6da a689 macw %a1l,%a2u,>>,%a2@\+,%a3 + 2b4: a49a a689 macw %a1l,%a2u,>>,%a2@\+,%d2 + 2b8: aeda a689 macw %a1l,%a2u,>>,%a2@\+,%sp + 2bc: a29a a6a9 macw %a1l,%a2u,>>,%a2@\+&,%d1 + 2c0: a6da a6a9 macw %a1l,%a2u,>>,%a2@\+&,%a3 + 2c4: a49a a6a9 macw %a1l,%a2u,>>,%a2@\+&,%d2 + 2c8: aeda a6a9 macw %a1l,%a2u,>>,%a2@\+&,%sp + 2cc: a2ae a689 000a macw %a1l,%a2u,>>,%fp@\(10\),%d1 + 2d2: a6ee a689 000a macw %a1l,%a2u,>>,%fp@\(10\),%a3 + 2d8: a4ae a689 000a macw %a1l,%a2u,>>,%fp@\(10\),%d2 + 2de: aeee a689 000a macw %a1l,%a2u,>>,%fp@\(10\),%sp + 2e4: a2ae a6a9 000a macw %a1l,%a2u,>>,%fp@\(10\)&,%d1 + 2ea: a6ee a6a9 000a macw %a1l,%a2u,>>,%fp@\(10\)&,%a3 + 2f0: a4ae a6a9 000a macw %a1l,%a2u,>>,%fp@\(10\)&,%d2 + 2f6: aeee a6a9 000a macw %a1l,%a2u,>>,%fp@\(10\)&,%sp + 2fc: a2a1 a689 macw %a1l,%a2u,>>,%a1@-,%d1 + 300: a6e1 a689 macw %a1l,%a2u,>>,%a1@-,%a3 + 304: a4a1 a689 macw %a1l,%a2u,>>,%a1@-,%d2 + 308: aee1 a689 macw %a1l,%a2u,>>,%a1@-,%sp + 30c: a2a1 a6a9 macw %a1l,%a2u,>>,%a1@-&,%d1 + 310: a6e1 a6a9 macw %a1l,%a2u,>>,%a1@-&,%a3 + 314: a4a1 a6a9 macw %a1l,%a2u,>>,%a1@-&,%d2 + 318: aee1 a6a9 macw %a1l,%a2u,>>,%a1@-&,%sp + 31c: a293 a289 macw %a1l,%a2u,<<,%a3@,%d1 + 320: a6d3 a289 macw %a1l,%a2u,<<,%a3@,%a3 + 324: a493 a289 macw %a1l,%a2u,<<,%a3@,%d2 + 328: aed3 a289 macw %a1l,%a2u,<<,%a3@,%sp + 32c: a293 a2a9 macw %a1l,%a2u,<<,%a3@&,%d1 + 330: a6d3 a2a9 macw %a1l,%a2u,<<,%a3@&,%a3 + 334: a493 a2a9 macw %a1l,%a2u,<<,%a3@&,%d2 + 338: aed3 a2a9 macw %a1l,%a2u,<<,%a3@&,%sp + 33c: a29a a289 macw %a1l,%a2u,<<,%a2@\+,%d1 + 340: a6da a289 macw %a1l,%a2u,<<,%a2@\+,%a3 + 344: a49a a289 macw %a1l,%a2u,<<,%a2@\+,%d2 + 348: aeda a289 macw %a1l,%a2u,<<,%a2@\+,%sp + 34c: a29a a2a9 macw %a1l,%a2u,<<,%a2@\+&,%d1 + 350: a6da a2a9 macw %a1l,%a2u,<<,%a2@\+&,%a3 + 354: a49a a2a9 macw %a1l,%a2u,<<,%a2@\+&,%d2 + 358: aeda a2a9 macw %a1l,%a2u,<<,%a2@\+&,%sp + 35c: a2ae a289 000a macw %a1l,%a2u,<<,%fp@\(10\),%d1 + 362: a6ee a289 000a macw %a1l,%a2u,<<,%fp@\(10\),%a3 + 368: a4ae a289 000a macw %a1l,%a2u,<<,%fp@\(10\),%d2 + 36e: aeee a289 000a macw %a1l,%a2u,<<,%fp@\(10\),%sp + 374: a2ae a2a9 000a macw %a1l,%a2u,<<,%fp@\(10\)&,%d1 + 37a: a6ee a2a9 000a macw %a1l,%a2u,<<,%fp@\(10\)&,%a3 + 380: a4ae a2a9 000a macw %a1l,%a2u,<<,%fp@\(10\)&,%d2 + 386: aeee a2a9 000a macw %a1l,%a2u,<<,%fp@\(10\)&,%sp + 38c: a2a1 a289 macw %a1l,%a2u,<<,%a1@-,%d1 + 390: a6e1 a289 macw %a1l,%a2u,<<,%a1@-,%a3 + 394: a4a1 a289 macw %a1l,%a2u,<<,%a1@-,%d2 + 398: aee1 a289 macw %a1l,%a2u,<<,%a1@-,%sp + 39c: a2a1 a2a9 macw %a1l,%a2u,<<,%a1@-&,%d1 + 3a0: a6e1 a2a9 macw %a1l,%a2u,<<,%a1@-&,%a3 + 3a4: a4a1 a2a9 macw %a1l,%a2u,<<,%a1@-&,%d2 + 3a8: aee1 a2a9 macw %a1l,%a2u,<<,%a1@-&,%sp + 3ac: a293 a689 macw %a1l,%a2u,>>,%a3@,%d1 + 3b0: a6d3 a689 macw %a1l,%a2u,>>,%a3@,%a3 + 3b4: a493 a689 macw %a1l,%a2u,>>,%a3@,%d2 + 3b8: aed3 a689 macw %a1l,%a2u,>>,%a3@,%sp + 3bc: a293 a6a9 macw %a1l,%a2u,>>,%a3@&,%d1 + 3c0: a6d3 a6a9 macw %a1l,%a2u,>>,%a3@&,%a3 + 3c4: a493 a6a9 macw %a1l,%a2u,>>,%a3@&,%d2 + 3c8: aed3 a6a9 macw %a1l,%a2u,>>,%a3@&,%sp + 3cc: a29a a689 macw %a1l,%a2u,>>,%a2@\+,%d1 + 3d0: a6da a689 macw %a1l,%a2u,>>,%a2@\+,%a3 + 3d4: a49a a689 macw %a1l,%a2u,>>,%a2@\+,%d2 + 3d8: aeda a689 macw %a1l,%a2u,>>,%a2@\+,%sp + 3dc: a29a a6a9 macw %a1l,%a2u,>>,%a2@\+&,%d1 + 3e0: a6da a6a9 macw %a1l,%a2u,>>,%a2@\+&,%a3 + 3e4: a49a a6a9 macw %a1l,%a2u,>>,%a2@\+&,%d2 + 3e8: aeda a6a9 macw %a1l,%a2u,>>,%a2@\+&,%sp + 3ec: a2ae a689 000a macw %a1l,%a2u,>>,%fp@\(10\),%d1 + 3f2: a6ee a689 000a macw %a1l,%a2u,>>,%fp@\(10\),%a3 + 3f8: a4ae a689 000a macw %a1l,%a2u,>>,%fp@\(10\),%d2 + 3fe: aeee a689 000a macw %a1l,%a2u,>>,%fp@\(10\),%sp + 404: a2ae a6a9 000a macw %a1l,%a2u,>>,%fp@\(10\)&,%d1 + 40a: a6ee a6a9 000a macw %a1l,%a2u,>>,%fp@\(10\)&,%a3 + 410: a4ae a6a9 000a macw %a1l,%a2u,>>,%fp@\(10\)&,%d2 + 416: aeee a6a9 000a macw %a1l,%a2u,>>,%fp@\(10\)&,%sp + 41c: a2a1 a689 macw %a1l,%a2u,>>,%a1@-,%d1 + 420: a6e1 a689 macw %a1l,%a2u,>>,%a1@-,%a3 + 424: a4a1 a689 macw %a1l,%a2u,>>,%a1@-,%d2 + 428: aee1 a689 macw %a1l,%a2u,>>,%a1@-,%sp + 42c: a2a1 a6a9 macw %a1l,%a2u,>>,%a1@-&,%d1 + 430: a6e1 a6a9 macw %a1l,%a2u,>>,%a1@-&,%a3 + 434: a4a1 a6a9 macw %a1l,%a2u,>>,%a1@-&,%d2 + 438: aee1 a6a9 macw %a1l,%a2u,>>,%a1@-&,%sp + 43c: a293 3009 macw %a1l,%d3l,%a3@,%d1 + 440: a6d3 3009 macw %a1l,%d3l,%a3@,%a3 + 444: a493 3009 macw %a1l,%d3l,%a3@,%d2 + 448: aed3 3009 macw %a1l,%d3l,%a3@,%sp + 44c: a293 3029 macw %a1l,%d3l,%a3@&,%d1 + 450: a6d3 3029 macw %a1l,%d3l,%a3@&,%a3 + 454: a493 3029 macw %a1l,%d3l,%a3@&,%d2 + 458: aed3 3029 macw %a1l,%d3l,%a3@&,%sp + 45c: a29a 3009 macw %a1l,%d3l,%a2@\+,%d1 + 460: a6da 3009 macw %a1l,%d3l,%a2@\+,%a3 + 464: a49a 3009 macw %a1l,%d3l,%a2@\+,%d2 + 468: aeda 3009 macw %a1l,%d3l,%a2@\+,%sp + 46c: a29a 3029 macw %a1l,%d3l,%a2@\+&,%d1 + 470: a6da 3029 macw %a1l,%d3l,%a2@\+&,%a3 + 474: a49a 3029 macw %a1l,%d3l,%a2@\+&,%d2 + 478: aeda 3029 macw %a1l,%d3l,%a2@\+&,%sp + 47c: a2ae 3009 000a macw %a1l,%d3l,%fp@\(10\),%d1 + 482: a6ee 3009 000a macw %a1l,%d3l,%fp@\(10\),%a3 + 488: a4ae 3009 000a macw %a1l,%d3l,%fp@\(10\),%d2 + 48e: aeee 3009 000a macw %a1l,%d3l,%fp@\(10\),%sp + 494: a2ae 3029 000a macw %a1l,%d3l,%fp@\(10\)&,%d1 + 49a: a6ee 3029 000a macw %a1l,%d3l,%fp@\(10\)&,%a3 + 4a0: a4ae 3029 000a macw %a1l,%d3l,%fp@\(10\)&,%d2 + 4a6: aeee 3029 000a macw %a1l,%d3l,%fp@\(10\)&,%sp + 4ac: a2a1 3009 macw %a1l,%d3l,%a1@-,%d1 + 4b0: a6e1 3009 macw %a1l,%d3l,%a1@-,%a3 + 4b4: a4a1 3009 macw %a1l,%d3l,%a1@-,%d2 + 4b8: aee1 3009 macw %a1l,%d3l,%a1@-,%sp + 4bc: a2a1 3029 macw %a1l,%d3l,%a1@-&,%d1 + 4c0: a6e1 3029 macw %a1l,%d3l,%a1@-&,%a3 + 4c4: a4a1 3029 macw %a1l,%d3l,%a1@-&,%d2 + 4c8: aee1 3029 macw %a1l,%d3l,%a1@-&,%sp + 4cc: a293 3209 macw %a1l,%d3l,<<,%a3@,%d1 + 4d0: a6d3 3209 macw %a1l,%d3l,<<,%a3@,%a3 + 4d4: a493 3209 macw %a1l,%d3l,<<,%a3@,%d2 + 4d8: aed3 3209 macw %a1l,%d3l,<<,%a3@,%sp + 4dc: a293 3229 macw %a1l,%d3l,<<,%a3@&,%d1 + 4e0: a6d3 3229 macw %a1l,%d3l,<<,%a3@&,%a3 + 4e4: a493 3229 macw %a1l,%d3l,<<,%a3@&,%d2 + 4e8: aed3 3229 macw %a1l,%d3l,<<,%a3@&,%sp + 4ec: a29a 3209 macw %a1l,%d3l,<<,%a2@\+,%d1 + 4f0: a6da 3209 macw %a1l,%d3l,<<,%a2@\+,%a3 + 4f4: a49a 3209 macw %a1l,%d3l,<<,%a2@\+,%d2 + 4f8: aeda 3209 macw %a1l,%d3l,<<,%a2@\+,%sp + 4fc: a29a 3229 macw %a1l,%d3l,<<,%a2@\+&,%d1 + 500: a6da 3229 macw %a1l,%d3l,<<,%a2@\+&,%a3 + 504: a49a 3229 macw %a1l,%d3l,<<,%a2@\+&,%d2 + 508: aeda 3229 macw %a1l,%d3l,<<,%a2@\+&,%sp + 50c: a2ae 3209 000a macw %a1l,%d3l,<<,%fp@\(10\),%d1 + 512: a6ee 3209 000a macw %a1l,%d3l,<<,%fp@\(10\),%a3 + 518: a4ae 3209 000a macw %a1l,%d3l,<<,%fp@\(10\),%d2 + 51e: aeee 3209 000a macw %a1l,%d3l,<<,%fp@\(10\),%sp + 524: a2ae 3229 000a macw %a1l,%d3l,<<,%fp@\(10\)&,%d1 + 52a: a6ee 3229 000a macw %a1l,%d3l,<<,%fp@\(10\)&,%a3 + 530: a4ae 3229 000a macw %a1l,%d3l,<<,%fp@\(10\)&,%d2 + 536: aeee 3229 000a macw %a1l,%d3l,<<,%fp@\(10\)&,%sp + 53c: a2a1 3209 macw %a1l,%d3l,<<,%a1@-,%d1 + 540: a6e1 3209 macw %a1l,%d3l,<<,%a1@-,%a3 + 544: a4a1 3209 macw %a1l,%d3l,<<,%a1@-,%d2 + 548: aee1 3209 macw %a1l,%d3l,<<,%a1@-,%sp + 54c: a2a1 3229 macw %a1l,%d3l,<<,%a1@-&,%d1 + 550: a6e1 3229 macw %a1l,%d3l,<<,%a1@-&,%a3 + 554: a4a1 3229 macw %a1l,%d3l,<<,%a1@-&,%d2 + 558: aee1 3229 macw %a1l,%d3l,<<,%a1@-&,%sp + 55c: a293 3609 macw %a1l,%d3l,>>,%a3@,%d1 + 560: a6d3 3609 macw %a1l,%d3l,>>,%a3@,%a3 + 564: a493 3609 macw %a1l,%d3l,>>,%a3@,%d2 + 568: aed3 3609 macw %a1l,%d3l,>>,%a3@,%sp + 56c: a293 3629 macw %a1l,%d3l,>>,%a3@&,%d1 + 570: a6d3 3629 macw %a1l,%d3l,>>,%a3@&,%a3 + 574: a493 3629 macw %a1l,%d3l,>>,%a3@&,%d2 + 578: aed3 3629 macw %a1l,%d3l,>>,%a3@&,%sp + 57c: a29a 3609 macw %a1l,%d3l,>>,%a2@\+,%d1 + 580: a6da 3609 macw %a1l,%d3l,>>,%a2@\+,%a3 + 584: a49a 3609 macw %a1l,%d3l,>>,%a2@\+,%d2 + 588: aeda 3609 macw %a1l,%d3l,>>,%a2@\+,%sp + 58c: a29a 3629 macw %a1l,%d3l,>>,%a2@\+&,%d1 + 590: a6da 3629 macw %a1l,%d3l,>>,%a2@\+&,%a3 + 594: a49a 3629 macw %a1l,%d3l,>>,%a2@\+&,%d2 + 598: aeda 3629 macw %a1l,%d3l,>>,%a2@\+&,%sp + 59c: a2ae 3609 000a macw %a1l,%d3l,>>,%fp@\(10\),%d1 + 5a2: a6ee 3609 000a macw %a1l,%d3l,>>,%fp@\(10\),%a3 + 5a8: a4ae 3609 000a macw %a1l,%d3l,>>,%fp@\(10\),%d2 + 5ae: aeee 3609 000a macw %a1l,%d3l,>>,%fp@\(10\),%sp + 5b4: a2ae 3629 000a macw %a1l,%d3l,>>,%fp@\(10\)&,%d1 + 5ba: a6ee 3629 000a macw %a1l,%d3l,>>,%fp@\(10\)&,%a3 + 5c0: a4ae 3629 000a macw %a1l,%d3l,>>,%fp@\(10\)&,%d2 + 5c6: aeee 3629 000a macw %a1l,%d3l,>>,%fp@\(10\)&,%sp + 5cc: a2a1 3609 macw %a1l,%d3l,>>,%a1@-,%d1 + 5d0: a6e1 3609 macw %a1l,%d3l,>>,%a1@-,%a3 + 5d4: a4a1 3609 macw %a1l,%d3l,>>,%a1@-,%d2 + 5d8: aee1 3609 macw %a1l,%d3l,>>,%a1@-,%sp + 5dc: a2a1 3629 macw %a1l,%d3l,>>,%a1@-&,%d1 + 5e0: a6e1 3629 macw %a1l,%d3l,>>,%a1@-&,%a3 + 5e4: a4a1 3629 macw %a1l,%d3l,>>,%a1@-&,%d2 + 5e8: aee1 3629 macw %a1l,%d3l,>>,%a1@-&,%sp + 5ec: a293 3209 macw %a1l,%d3l,<<,%a3@,%d1 + 5f0: a6d3 3209 macw %a1l,%d3l,<<,%a3@,%a3 + 5f4: a493 3209 macw %a1l,%d3l,<<,%a3@,%d2 + 5f8: aed3 3209 macw %a1l,%d3l,<<,%a3@,%sp + 5fc: a293 3229 macw %a1l,%d3l,<<,%a3@&,%d1 + 600: a6d3 3229 macw %a1l,%d3l,<<,%a3@&,%a3 + 604: a493 3229 macw %a1l,%d3l,<<,%a3@&,%d2 + 608: aed3 3229 macw %a1l,%d3l,<<,%a3@&,%sp + 60c: a29a 3209 macw %a1l,%d3l,<<,%a2@\+,%d1 + 610: a6da 3209 macw %a1l,%d3l,<<,%a2@\+,%a3 + 614: a49a 3209 macw %a1l,%d3l,<<,%a2@\+,%d2 + 618: aeda 3209 macw %a1l,%d3l,<<,%a2@\+,%sp + 61c: a29a 3229 macw %a1l,%d3l,<<,%a2@\+&,%d1 + 620: a6da 3229 macw %a1l,%d3l,<<,%a2@\+&,%a3 + 624: a49a 3229 macw %a1l,%d3l,<<,%a2@\+&,%d2 + 628: aeda 3229 macw %a1l,%d3l,<<,%a2@\+&,%sp + 62c: a2ae 3209 000a macw %a1l,%d3l,<<,%fp@\(10\),%d1 + 632: a6ee 3209 000a macw %a1l,%d3l,<<,%fp@\(10\),%a3 + 638: a4ae 3209 000a macw %a1l,%d3l,<<,%fp@\(10\),%d2 + 63e: aeee 3209 000a macw %a1l,%d3l,<<,%fp@\(10\),%sp + 644: a2ae 3229 000a macw %a1l,%d3l,<<,%fp@\(10\)&,%d1 + 64a: a6ee 3229 000a macw %a1l,%d3l,<<,%fp@\(10\)&,%a3 + 650: a4ae 3229 000a macw %a1l,%d3l,<<,%fp@\(10\)&,%d2 + 656: aeee 3229 000a macw %a1l,%d3l,<<,%fp@\(10\)&,%sp + 65c: a2a1 3209 macw %a1l,%d3l,<<,%a1@-,%d1 + 660: a6e1 3209 macw %a1l,%d3l,<<,%a1@-,%a3 + 664: a4a1 3209 macw %a1l,%d3l,<<,%a1@-,%d2 + 668: aee1 3209 macw %a1l,%d3l,<<,%a1@-,%sp + 66c: a2a1 3229 macw %a1l,%d3l,<<,%a1@-&,%d1 + 670: a6e1 3229 macw %a1l,%d3l,<<,%a1@-&,%a3 + 674: a4a1 3229 macw %a1l,%d3l,<<,%a1@-&,%d2 + 678: aee1 3229 macw %a1l,%d3l,<<,%a1@-&,%sp + 67c: a293 3609 macw %a1l,%d3l,>>,%a3@,%d1 + 680: a6d3 3609 macw %a1l,%d3l,>>,%a3@,%a3 + 684: a493 3609 macw %a1l,%d3l,>>,%a3@,%d2 + 688: aed3 3609 macw %a1l,%d3l,>>,%a3@,%sp + 68c: a293 3629 macw %a1l,%d3l,>>,%a3@&,%d1 + 690: a6d3 3629 macw %a1l,%d3l,>>,%a3@&,%a3 + 694: a493 3629 macw %a1l,%d3l,>>,%a3@&,%d2 + 698: aed3 3629 macw %a1l,%d3l,>>,%a3@&,%sp + 69c: a29a 3609 macw %a1l,%d3l,>>,%a2@\+,%d1 + 6a0: a6da 3609 macw %a1l,%d3l,>>,%a2@\+,%a3 + 6a4: a49a 3609 macw %a1l,%d3l,>>,%a2@\+,%d2 + 6a8: aeda 3609 macw %a1l,%d3l,>>,%a2@\+,%sp + 6ac: a29a 3629 macw %a1l,%d3l,>>,%a2@\+&,%d1 + 6b0: a6da 3629 macw %a1l,%d3l,>>,%a2@\+&,%a3 + 6b4: a49a 3629 macw %a1l,%d3l,>>,%a2@\+&,%d2 + 6b8: aeda 3629 macw %a1l,%d3l,>>,%a2@\+&,%sp + 6bc: a2ae 3609 000a macw %a1l,%d3l,>>,%fp@\(10\),%d1 + 6c2: a6ee 3609 000a macw %a1l,%d3l,>>,%fp@\(10\),%a3 + 6c8: a4ae 3609 000a macw %a1l,%d3l,>>,%fp@\(10\),%d2 + 6ce: aeee 3609 000a macw %a1l,%d3l,>>,%fp@\(10\),%sp + 6d4: a2ae 3629 000a macw %a1l,%d3l,>>,%fp@\(10\)&,%d1 + 6da: a6ee 3629 000a macw %a1l,%d3l,>>,%fp@\(10\)&,%a3 + 6e0: a4ae 3629 000a macw %a1l,%d3l,>>,%fp@\(10\)&,%d2 + 6e6: aeee 3629 000a macw %a1l,%d3l,>>,%fp@\(10\)&,%sp + 6ec: a2a1 3609 macw %a1l,%d3l,>>,%a1@-,%d1 + 6f0: a6e1 3609 macw %a1l,%d3l,>>,%a1@-,%a3 + 6f4: a4a1 3609 macw %a1l,%d3l,>>,%a1@-,%d2 + 6f8: aee1 3609 macw %a1l,%d3l,>>,%a1@-,%sp + 6fc: a2a1 3629 macw %a1l,%d3l,>>,%a1@-&,%d1 + 700: a6e1 3629 macw %a1l,%d3l,>>,%a1@-&,%a3 + 704: a4a1 3629 macw %a1l,%d3l,>>,%a1@-&,%d2 + 708: aee1 3629 macw %a1l,%d3l,>>,%a1@-&,%sp + 70c: a293 f089 macw %a1l,%a7u,%a3@,%d1 + 710: a6d3 f089 macw %a1l,%a7u,%a3@,%a3 + 714: a493 f089 macw %a1l,%a7u,%a3@,%d2 + 718: aed3 f089 macw %a1l,%a7u,%a3@,%sp + 71c: a293 f0a9 macw %a1l,%a7u,%a3@&,%d1 + 720: a6d3 f0a9 macw %a1l,%a7u,%a3@&,%a3 + 724: a493 f0a9 macw %a1l,%a7u,%a3@&,%d2 + 728: aed3 f0a9 macw %a1l,%a7u,%a3@&,%sp + 72c: a29a f089 macw %a1l,%a7u,%a2@\+,%d1 + 730: a6da f089 macw %a1l,%a7u,%a2@\+,%a3 + 734: a49a f089 macw %a1l,%a7u,%a2@\+,%d2 + 738: aeda f089 macw %a1l,%a7u,%a2@\+,%sp + 73c: a29a f0a9 macw %a1l,%a7u,%a2@\+&,%d1 + 740: a6da f0a9 macw %a1l,%a7u,%a2@\+&,%a3 + 744: a49a f0a9 macw %a1l,%a7u,%a2@\+&,%d2 + 748: aeda f0a9 macw %a1l,%a7u,%a2@\+&,%sp + 74c: a2ae f089 000a macw %a1l,%a7u,%fp@\(10\),%d1 + 752: a6ee f089 000a macw %a1l,%a7u,%fp@\(10\),%a3 + 758: a4ae f089 000a macw %a1l,%a7u,%fp@\(10\),%d2 + 75e: aeee f089 000a macw %a1l,%a7u,%fp@\(10\),%sp + 764: a2ae f0a9 000a macw %a1l,%a7u,%fp@\(10\)&,%d1 + 76a: a6ee f0a9 000a macw %a1l,%a7u,%fp@\(10\)&,%a3 + 770: a4ae f0a9 000a macw %a1l,%a7u,%fp@\(10\)&,%d2 + 776: aeee f0a9 000a macw %a1l,%a7u,%fp@\(10\)&,%sp + 77c: a2a1 f089 macw %a1l,%a7u,%a1@-,%d1 + 780: a6e1 f089 macw %a1l,%a7u,%a1@-,%a3 + 784: a4a1 f089 macw %a1l,%a7u,%a1@-,%d2 + 788: aee1 f089 macw %a1l,%a7u,%a1@-,%sp + 78c: a2a1 f0a9 macw %a1l,%a7u,%a1@-&,%d1 + 790: a6e1 f0a9 macw %a1l,%a7u,%a1@-&,%a3 + 794: a4a1 f0a9 macw %a1l,%a7u,%a1@-&,%d2 + 798: aee1 f0a9 macw %a1l,%a7u,%a1@-&,%sp + 79c: a293 f289 macw %a1l,%a7u,<<,%a3@,%d1 + 7a0: a6d3 f289 macw %a1l,%a7u,<<,%a3@,%a3 + 7a4: a493 f289 macw %a1l,%a7u,<<,%a3@,%d2 + 7a8: aed3 f289 macw %a1l,%a7u,<<,%a3@,%sp + 7ac: a293 f2a9 macw %a1l,%a7u,<<,%a3@&,%d1 + 7b0: a6d3 f2a9 macw %a1l,%a7u,<<,%a3@&,%a3 + 7b4: a493 f2a9 macw %a1l,%a7u,<<,%a3@&,%d2 + 7b8: aed3 f2a9 macw %a1l,%a7u,<<,%a3@&,%sp + 7bc: a29a f289 macw %a1l,%a7u,<<,%a2@\+,%d1 + 7c0: a6da f289 macw %a1l,%a7u,<<,%a2@\+,%a3 + 7c4: a49a f289 macw %a1l,%a7u,<<,%a2@\+,%d2 + 7c8: aeda f289 macw %a1l,%a7u,<<,%a2@\+,%sp + 7cc: a29a f2a9 macw %a1l,%a7u,<<,%a2@\+&,%d1 + 7d0: a6da f2a9 macw %a1l,%a7u,<<,%a2@\+&,%a3 + 7d4: a49a f2a9 macw %a1l,%a7u,<<,%a2@\+&,%d2 + 7d8: aeda f2a9 macw %a1l,%a7u,<<,%a2@\+&,%sp + 7dc: a2ae f289 000a macw %a1l,%a7u,<<,%fp@\(10\),%d1 + 7e2: a6ee f289 000a macw %a1l,%a7u,<<,%fp@\(10\),%a3 + 7e8: a4ae f289 000a macw %a1l,%a7u,<<,%fp@\(10\),%d2 + 7ee: aeee f289 000a macw %a1l,%a7u,<<,%fp@\(10\),%sp + 7f4: a2ae f2a9 000a macw %a1l,%a7u,<<,%fp@\(10\)&,%d1 + 7fa: a6ee f2a9 000a macw %a1l,%a7u,<<,%fp@\(10\)&,%a3 + 800: a4ae f2a9 000a macw %a1l,%a7u,<<,%fp@\(10\)&,%d2 + 806: aeee f2a9 000a macw %a1l,%a7u,<<,%fp@\(10\)&,%sp + 80c: a2a1 f289 macw %a1l,%a7u,<<,%a1@-,%d1 + 810: a6e1 f289 macw %a1l,%a7u,<<,%a1@-,%a3 + 814: a4a1 f289 macw %a1l,%a7u,<<,%a1@-,%d2 + 818: aee1 f289 macw %a1l,%a7u,<<,%a1@-,%sp + 81c: a2a1 f2a9 macw %a1l,%a7u,<<,%a1@-&,%d1 + 820: a6e1 f2a9 macw %a1l,%a7u,<<,%a1@-&,%a3 + 824: a4a1 f2a9 macw %a1l,%a7u,<<,%a1@-&,%d2 + 828: aee1 f2a9 macw %a1l,%a7u,<<,%a1@-&,%sp + 82c: a293 f689 macw %a1l,%a7u,>>,%a3@,%d1 + 830: a6d3 f689 macw %a1l,%a7u,>>,%a3@,%a3 + 834: a493 f689 macw %a1l,%a7u,>>,%a3@,%d2 + 838: aed3 f689 macw %a1l,%a7u,>>,%a3@,%sp + 83c: a293 f6a9 macw %a1l,%a7u,>>,%a3@&,%d1 + 840: a6d3 f6a9 macw %a1l,%a7u,>>,%a3@&,%a3 + 844: a493 f6a9 macw %a1l,%a7u,>>,%a3@&,%d2 + 848: aed3 f6a9 macw %a1l,%a7u,>>,%a3@&,%sp + 84c: a29a f689 macw %a1l,%a7u,>>,%a2@\+,%d1 + 850: a6da f689 macw %a1l,%a7u,>>,%a2@\+,%a3 + 854: a49a f689 macw %a1l,%a7u,>>,%a2@\+,%d2 + 858: aeda f689 macw %a1l,%a7u,>>,%a2@\+,%sp + 85c: a29a f6a9 macw %a1l,%a7u,>>,%a2@\+&,%d1 + 860: a6da f6a9 macw %a1l,%a7u,>>,%a2@\+&,%a3 + 864: a49a f6a9 macw %a1l,%a7u,>>,%a2@\+&,%d2 + 868: aeda f6a9 macw %a1l,%a7u,>>,%a2@\+&,%sp + 86c: a2ae f689 000a macw %a1l,%a7u,>>,%fp@\(10\),%d1 + 872: a6ee f689 000a macw %a1l,%a7u,>>,%fp@\(10\),%a3 + 878: a4ae f689 000a macw %a1l,%a7u,>>,%fp@\(10\),%d2 + 87e: aeee f689 000a macw %a1l,%a7u,>>,%fp@\(10\),%sp + 884: a2ae f6a9 000a macw %a1l,%a7u,>>,%fp@\(10\)&,%d1 + 88a: a6ee f6a9 000a macw %a1l,%a7u,>>,%fp@\(10\)&,%a3 + 890: a4ae f6a9 000a macw %a1l,%a7u,>>,%fp@\(10\)&,%d2 + 896: aeee f6a9 000a macw %a1l,%a7u,>>,%fp@\(10\)&,%sp + 89c: a2a1 f689 macw %a1l,%a7u,>>,%a1@-,%d1 + 8a0: a6e1 f689 macw %a1l,%a7u,>>,%a1@-,%a3 + 8a4: a4a1 f689 macw %a1l,%a7u,>>,%a1@-,%d2 + 8a8: aee1 f689 macw %a1l,%a7u,>>,%a1@-,%sp + 8ac: a2a1 f6a9 macw %a1l,%a7u,>>,%a1@-&,%d1 + 8b0: a6e1 f6a9 macw %a1l,%a7u,>>,%a1@-&,%a3 + 8b4: a4a1 f6a9 macw %a1l,%a7u,>>,%a1@-&,%d2 + 8b8: aee1 f6a9 macw %a1l,%a7u,>>,%a1@-&,%sp + 8bc: a293 f289 macw %a1l,%a7u,<<,%a3@,%d1 + 8c0: a6d3 f289 macw %a1l,%a7u,<<,%a3@,%a3 + 8c4: a493 f289 macw %a1l,%a7u,<<,%a3@,%d2 + 8c8: aed3 f289 macw %a1l,%a7u,<<,%a3@,%sp + 8cc: a293 f2a9 macw %a1l,%a7u,<<,%a3@&,%d1 + 8d0: a6d3 f2a9 macw %a1l,%a7u,<<,%a3@&,%a3 + 8d4: a493 f2a9 macw %a1l,%a7u,<<,%a3@&,%d2 + 8d8: aed3 f2a9 macw %a1l,%a7u,<<,%a3@&,%sp + 8dc: a29a f289 macw %a1l,%a7u,<<,%a2@\+,%d1 + 8e0: a6da f289 macw %a1l,%a7u,<<,%a2@\+,%a3 + 8e4: a49a f289 macw %a1l,%a7u,<<,%a2@\+,%d2 + 8e8: aeda f289 macw %a1l,%a7u,<<,%a2@\+,%sp + 8ec: a29a f2a9 macw %a1l,%a7u,<<,%a2@\+&,%d1 + 8f0: a6da f2a9 macw %a1l,%a7u,<<,%a2@\+&,%a3 + 8f4: a49a f2a9 macw %a1l,%a7u,<<,%a2@\+&,%d2 + 8f8: aeda f2a9 macw %a1l,%a7u,<<,%a2@\+&,%sp + 8fc: a2ae f289 000a macw %a1l,%a7u,<<,%fp@\(10\),%d1 + 902: a6ee f289 000a macw %a1l,%a7u,<<,%fp@\(10\),%a3 + 908: a4ae f289 000a macw %a1l,%a7u,<<,%fp@\(10\),%d2 + 90e: aeee f289 000a macw %a1l,%a7u,<<,%fp@\(10\),%sp + 914: a2ae f2a9 000a macw %a1l,%a7u,<<,%fp@\(10\)&,%d1 + 91a: a6ee f2a9 000a macw %a1l,%a7u,<<,%fp@\(10\)&,%a3 + 920: a4ae f2a9 000a macw %a1l,%a7u,<<,%fp@\(10\)&,%d2 + 926: aeee f2a9 000a macw %a1l,%a7u,<<,%fp@\(10\)&,%sp + 92c: a2a1 f289 macw %a1l,%a7u,<<,%a1@-,%d1 + 930: a6e1 f289 macw %a1l,%a7u,<<,%a1@-,%a3 + 934: a4a1 f289 macw %a1l,%a7u,<<,%a1@-,%d2 + 938: aee1 f289 macw %a1l,%a7u,<<,%a1@-,%sp + 93c: a2a1 f2a9 macw %a1l,%a7u,<<,%a1@-&,%d1 + 940: a6e1 f2a9 macw %a1l,%a7u,<<,%a1@-&,%a3 + 944: a4a1 f2a9 macw %a1l,%a7u,<<,%a1@-&,%d2 + 948: aee1 f2a9 macw %a1l,%a7u,<<,%a1@-&,%sp + 94c: a293 f689 macw %a1l,%a7u,>>,%a3@,%d1 + 950: a6d3 f689 macw %a1l,%a7u,>>,%a3@,%a3 + 954: a493 f689 macw %a1l,%a7u,>>,%a3@,%d2 + 958: aed3 f689 macw %a1l,%a7u,>>,%a3@,%sp + 95c: a293 f6a9 macw %a1l,%a7u,>>,%a3@&,%d1 + 960: a6d3 f6a9 macw %a1l,%a7u,>>,%a3@&,%a3 + 964: a493 f6a9 macw %a1l,%a7u,>>,%a3@&,%d2 + 968: aed3 f6a9 macw %a1l,%a7u,>>,%a3@&,%sp + 96c: a29a f689 macw %a1l,%a7u,>>,%a2@\+,%d1 + 970: a6da f689 macw %a1l,%a7u,>>,%a2@\+,%a3 + 974: a49a f689 macw %a1l,%a7u,>>,%a2@\+,%d2 + 978: aeda f689 macw %a1l,%a7u,>>,%a2@\+,%sp + 97c: a29a f6a9 macw %a1l,%a7u,>>,%a2@\+&,%d1 + 980: a6da f6a9 macw %a1l,%a7u,>>,%a2@\+&,%a3 + 984: a49a f6a9 macw %a1l,%a7u,>>,%a2@\+&,%d2 + 988: aeda f6a9 macw %a1l,%a7u,>>,%a2@\+&,%sp + 98c: a2ae f689 000a macw %a1l,%a7u,>>,%fp@\(10\),%d1 + 992: a6ee f689 000a macw %a1l,%a7u,>>,%fp@\(10\),%a3 + 998: a4ae f689 000a macw %a1l,%a7u,>>,%fp@\(10\),%d2 + 99e: aeee f689 000a macw %a1l,%a7u,>>,%fp@\(10\),%sp + 9a4: a2ae f6a9 000a macw %a1l,%a7u,>>,%fp@\(10\)&,%d1 + 9aa: a6ee f6a9 000a macw %a1l,%a7u,>>,%fp@\(10\)&,%a3 + 9b0: a4ae f6a9 000a macw %a1l,%a7u,>>,%fp@\(10\)&,%d2 + 9b6: aeee f6a9 000a macw %a1l,%a7u,>>,%fp@\(10\)&,%sp + 9bc: a2a1 f689 macw %a1l,%a7u,>>,%a1@-,%d1 + 9c0: a6e1 f689 macw %a1l,%a7u,>>,%a1@-,%a3 + 9c4: a4a1 f689 macw %a1l,%a7u,>>,%a1@-,%d2 + 9c8: aee1 f689 macw %a1l,%a7u,>>,%a1@-,%sp + 9cc: a2a1 f6a9 macw %a1l,%a7u,>>,%a1@-&,%d1 + 9d0: a6e1 f6a9 macw %a1l,%a7u,>>,%a1@-&,%a3 + 9d4: a4a1 f6a9 macw %a1l,%a7u,>>,%a1@-&,%d2 + 9d8: aee1 f6a9 macw %a1l,%a7u,>>,%a1@-&,%sp + 9dc: a293 1009 macw %a1l,%d1l,%a3@,%d1 + 9e0: a6d3 1009 macw %a1l,%d1l,%a3@,%a3 + 9e4: a493 1009 macw %a1l,%d1l,%a3@,%d2 + 9e8: aed3 1009 macw %a1l,%d1l,%a3@,%sp + 9ec: a293 1029 macw %a1l,%d1l,%a3@&,%d1 + 9f0: a6d3 1029 macw %a1l,%d1l,%a3@&,%a3 + 9f4: a493 1029 macw %a1l,%d1l,%a3@&,%d2 + 9f8: aed3 1029 macw %a1l,%d1l,%a3@&,%sp + 9fc: a29a 1009 macw %a1l,%d1l,%a2@\+,%d1 + a00: a6da 1009 macw %a1l,%d1l,%a2@\+,%a3 + a04: a49a 1009 macw %a1l,%d1l,%a2@\+,%d2 + a08: aeda 1009 macw %a1l,%d1l,%a2@\+,%sp + a0c: a29a 1029 macw %a1l,%d1l,%a2@\+&,%d1 + a10: a6da 1029 macw %a1l,%d1l,%a2@\+&,%a3 + a14: a49a 1029 macw %a1l,%d1l,%a2@\+&,%d2 + a18: aeda 1029 macw %a1l,%d1l,%a2@\+&,%sp + a1c: a2ae 1009 000a macw %a1l,%d1l,%fp@\(10\),%d1 + a22: a6ee 1009 000a macw %a1l,%d1l,%fp@\(10\),%a3 + a28: a4ae 1009 000a macw %a1l,%d1l,%fp@\(10\),%d2 + a2e: aeee 1009 000a macw %a1l,%d1l,%fp@\(10\),%sp + a34: a2ae 1029 000a macw %a1l,%d1l,%fp@\(10\)&,%d1 + a3a: a6ee 1029 000a macw %a1l,%d1l,%fp@\(10\)&,%a3 + a40: a4ae 1029 000a macw %a1l,%d1l,%fp@\(10\)&,%d2 + a46: aeee 1029 000a macw %a1l,%d1l,%fp@\(10\)&,%sp + a4c: a2a1 1009 macw %a1l,%d1l,%a1@-,%d1 + a50: a6e1 1009 macw %a1l,%d1l,%a1@-,%a3 + a54: a4a1 1009 macw %a1l,%d1l,%a1@-,%d2 + a58: aee1 1009 macw %a1l,%d1l,%a1@-,%sp + a5c: a2a1 1029 macw %a1l,%d1l,%a1@-&,%d1 + a60: a6e1 1029 macw %a1l,%d1l,%a1@-&,%a3 + a64: a4a1 1029 macw %a1l,%d1l,%a1@-&,%d2 + a68: aee1 1029 macw %a1l,%d1l,%a1@-&,%sp + a6c: a293 1209 macw %a1l,%d1l,<<,%a3@,%d1 + a70: a6d3 1209 macw %a1l,%d1l,<<,%a3@,%a3 + a74: a493 1209 macw %a1l,%d1l,<<,%a3@,%d2 + a78: aed3 1209 macw %a1l,%d1l,<<,%a3@,%sp + a7c: a293 1229 macw %a1l,%d1l,<<,%a3@&,%d1 + a80: a6d3 1229 macw %a1l,%d1l,<<,%a3@&,%a3 + a84: a493 1229 macw %a1l,%d1l,<<,%a3@&,%d2 + a88: aed3 1229 macw %a1l,%d1l,<<,%a3@&,%sp + a8c: a29a 1209 macw %a1l,%d1l,<<,%a2@\+,%d1 + a90: a6da 1209 macw %a1l,%d1l,<<,%a2@\+,%a3 + a94: a49a 1209 macw %a1l,%d1l,<<,%a2@\+,%d2 + a98: aeda 1209 macw %a1l,%d1l,<<,%a2@\+,%sp + a9c: a29a 1229 macw %a1l,%d1l,<<,%a2@\+&,%d1 + aa0: a6da 1229 macw %a1l,%d1l,<<,%a2@\+&,%a3 + aa4: a49a 1229 macw %a1l,%d1l,<<,%a2@\+&,%d2 + aa8: aeda 1229 macw %a1l,%d1l,<<,%a2@\+&,%sp + aac: a2ae 1209 000a macw %a1l,%d1l,<<,%fp@\(10\),%d1 + ab2: a6ee 1209 000a macw %a1l,%d1l,<<,%fp@\(10\),%a3 + ab8: a4ae 1209 000a macw %a1l,%d1l,<<,%fp@\(10\),%d2 + abe: aeee 1209 000a macw %a1l,%d1l,<<,%fp@\(10\),%sp + ac4: a2ae 1229 000a macw %a1l,%d1l,<<,%fp@\(10\)&,%d1 + aca: a6ee 1229 000a macw %a1l,%d1l,<<,%fp@\(10\)&,%a3 + ad0: a4ae 1229 000a macw %a1l,%d1l,<<,%fp@\(10\)&,%d2 + ad6: aeee 1229 000a macw %a1l,%d1l,<<,%fp@\(10\)&,%sp + adc: a2a1 1209 macw %a1l,%d1l,<<,%a1@-,%d1 + ae0: a6e1 1209 macw %a1l,%d1l,<<,%a1@-,%a3 + ae4: a4a1 1209 macw %a1l,%d1l,<<,%a1@-,%d2 + ae8: aee1 1209 macw %a1l,%d1l,<<,%a1@-,%sp + aec: a2a1 1229 macw %a1l,%d1l,<<,%a1@-&,%d1 + af0: a6e1 1229 macw %a1l,%d1l,<<,%a1@-&,%a3 + af4: a4a1 1229 macw %a1l,%d1l,<<,%a1@-&,%d2 + af8: aee1 1229 macw %a1l,%d1l,<<,%a1@-&,%sp + afc: a293 1609 macw %a1l,%d1l,>>,%a3@,%d1 + b00: a6d3 1609 macw %a1l,%d1l,>>,%a3@,%a3 + b04: a493 1609 macw %a1l,%d1l,>>,%a3@,%d2 + b08: aed3 1609 macw %a1l,%d1l,>>,%a3@,%sp + b0c: a293 1629 macw %a1l,%d1l,>>,%a3@&,%d1 + b10: a6d3 1629 macw %a1l,%d1l,>>,%a3@&,%a3 + b14: a493 1629 macw %a1l,%d1l,>>,%a3@&,%d2 + b18: aed3 1629 macw %a1l,%d1l,>>,%a3@&,%sp + b1c: a29a 1609 macw %a1l,%d1l,>>,%a2@\+,%d1 + b20: a6da 1609 macw %a1l,%d1l,>>,%a2@\+,%a3 + b24: a49a 1609 macw %a1l,%d1l,>>,%a2@\+,%d2 + b28: aeda 1609 macw %a1l,%d1l,>>,%a2@\+,%sp + b2c: a29a 1629 macw %a1l,%d1l,>>,%a2@\+&,%d1 + b30: a6da 1629 macw %a1l,%d1l,>>,%a2@\+&,%a3 + b34: a49a 1629 macw %a1l,%d1l,>>,%a2@\+&,%d2 + b38: aeda 1629 macw %a1l,%d1l,>>,%a2@\+&,%sp + b3c: a2ae 1609 000a macw %a1l,%d1l,>>,%fp@\(10\),%d1 + b42: a6ee 1609 000a macw %a1l,%d1l,>>,%fp@\(10\),%a3 + b48: a4ae 1609 000a macw %a1l,%d1l,>>,%fp@\(10\),%d2 + b4e: aeee 1609 000a macw %a1l,%d1l,>>,%fp@\(10\),%sp + b54: a2ae 1629 000a macw %a1l,%d1l,>>,%fp@\(10\)&,%d1 + b5a: a6ee 1629 000a macw %a1l,%d1l,>>,%fp@\(10\)&,%a3 + b60: a4ae 1629 000a macw %a1l,%d1l,>>,%fp@\(10\)&,%d2 + b66: aeee 1629 000a macw %a1l,%d1l,>>,%fp@\(10\)&,%sp + b6c: a2a1 1609 macw %a1l,%d1l,>>,%a1@-,%d1 + b70: a6e1 1609 macw %a1l,%d1l,>>,%a1@-,%a3 + b74: a4a1 1609 macw %a1l,%d1l,>>,%a1@-,%d2 + b78: aee1 1609 macw %a1l,%d1l,>>,%a1@-,%sp + b7c: a2a1 1629 macw %a1l,%d1l,>>,%a1@-&,%d1 + b80: a6e1 1629 macw %a1l,%d1l,>>,%a1@-&,%a3 + b84: a4a1 1629 macw %a1l,%d1l,>>,%a1@-&,%d2 + b88: aee1 1629 macw %a1l,%d1l,>>,%a1@-&,%sp + b8c: a293 1209 macw %a1l,%d1l,<<,%a3@,%d1 + b90: a6d3 1209 macw %a1l,%d1l,<<,%a3@,%a3 + b94: a493 1209 macw %a1l,%d1l,<<,%a3@,%d2 + b98: aed3 1209 macw %a1l,%d1l,<<,%a3@,%sp + b9c: a293 1229 macw %a1l,%d1l,<<,%a3@&,%d1 + ba0: a6d3 1229 macw %a1l,%d1l,<<,%a3@&,%a3 + ba4: a493 1229 macw %a1l,%d1l,<<,%a3@&,%d2 + ba8: aed3 1229 macw %a1l,%d1l,<<,%a3@&,%sp + bac: a29a 1209 macw %a1l,%d1l,<<,%a2@\+,%d1 + bb0: a6da 1209 macw %a1l,%d1l,<<,%a2@\+,%a3 + bb4: a49a 1209 macw %a1l,%d1l,<<,%a2@\+,%d2 + bb8: aeda 1209 macw %a1l,%d1l,<<,%a2@\+,%sp + bbc: a29a 1229 macw %a1l,%d1l,<<,%a2@\+&,%d1 + bc0: a6da 1229 macw %a1l,%d1l,<<,%a2@\+&,%a3 + bc4: a49a 1229 macw %a1l,%d1l,<<,%a2@\+&,%d2 + bc8: aeda 1229 macw %a1l,%d1l,<<,%a2@\+&,%sp + bcc: a2ae 1209 000a macw %a1l,%d1l,<<,%fp@\(10\),%d1 + bd2: a6ee 1209 000a macw %a1l,%d1l,<<,%fp@\(10\),%a3 + bd8: a4ae 1209 000a macw %a1l,%d1l,<<,%fp@\(10\),%d2 + bde: aeee 1209 000a macw %a1l,%d1l,<<,%fp@\(10\),%sp + be4: a2ae 1229 000a macw %a1l,%d1l,<<,%fp@\(10\)&,%d1 + bea: a6ee 1229 000a macw %a1l,%d1l,<<,%fp@\(10\)&,%a3 + bf0: a4ae 1229 000a macw %a1l,%d1l,<<,%fp@\(10\)&,%d2 + bf6: aeee 1229 000a macw %a1l,%d1l,<<,%fp@\(10\)&,%sp + bfc: a2a1 1209 macw %a1l,%d1l,<<,%a1@-,%d1 + c00: a6e1 1209 macw %a1l,%d1l,<<,%a1@-,%a3 + c04: a4a1 1209 macw %a1l,%d1l,<<,%a1@-,%d2 + c08: aee1 1209 macw %a1l,%d1l,<<,%a1@-,%sp + c0c: a2a1 1229 macw %a1l,%d1l,<<,%a1@-&,%d1 + c10: a6e1 1229 macw %a1l,%d1l,<<,%a1@-&,%a3 + c14: a4a1 1229 macw %a1l,%d1l,<<,%a1@-&,%d2 + c18: aee1 1229 macw %a1l,%d1l,<<,%a1@-&,%sp + c1c: a293 1609 macw %a1l,%d1l,>>,%a3@,%d1 + c20: a6d3 1609 macw %a1l,%d1l,>>,%a3@,%a3 + c24: a493 1609 macw %a1l,%d1l,>>,%a3@,%d2 + c28: aed3 1609 macw %a1l,%d1l,>>,%a3@,%sp + c2c: a293 1629 macw %a1l,%d1l,>>,%a3@&,%d1 + c30: a6d3 1629 macw %a1l,%d1l,>>,%a3@&,%a3 + c34: a493 1629 macw %a1l,%d1l,>>,%a3@&,%d2 + c38: aed3 1629 macw %a1l,%d1l,>>,%a3@&,%sp + c3c: a29a 1609 macw %a1l,%d1l,>>,%a2@\+,%d1 + c40: a6da 1609 macw %a1l,%d1l,>>,%a2@\+,%a3 + c44: a49a 1609 macw %a1l,%d1l,>>,%a2@\+,%d2 + c48: aeda 1609 macw %a1l,%d1l,>>,%a2@\+,%sp + c4c: a29a 1629 macw %a1l,%d1l,>>,%a2@\+&,%d1 + c50: a6da 1629 macw %a1l,%d1l,>>,%a2@\+&,%a3 + c54: a49a 1629 macw %a1l,%d1l,>>,%a2@\+&,%d2 + c58: aeda 1629 macw %a1l,%d1l,>>,%a2@\+&,%sp + c5c: a2ae 1609 000a macw %a1l,%d1l,>>,%fp@\(10\),%d1 + c62: a6ee 1609 000a macw %a1l,%d1l,>>,%fp@\(10\),%a3 + c68: a4ae 1609 000a macw %a1l,%d1l,>>,%fp@\(10\),%d2 + c6e: aeee 1609 000a macw %a1l,%d1l,>>,%fp@\(10\),%sp + c74: a2ae 1629 000a macw %a1l,%d1l,>>,%fp@\(10\)&,%d1 + c7a: a6ee 1629 000a macw %a1l,%d1l,>>,%fp@\(10\)&,%a3 + c80: a4ae 1629 000a macw %a1l,%d1l,>>,%fp@\(10\)&,%d2 + c86: aeee 1629 000a macw %a1l,%d1l,>>,%fp@\(10\)&,%sp + c8c: a2a1 1609 macw %a1l,%d1l,>>,%a1@-,%d1 + c90: a6e1 1609 macw %a1l,%d1l,>>,%a1@-,%a3 + c94: a4a1 1609 macw %a1l,%d1l,>>,%a1@-,%d2 + c98: aee1 1609 macw %a1l,%d1l,>>,%a1@-,%sp + c9c: a2a1 1629 macw %a1l,%d1l,>>,%a1@-&,%d1 + ca0: a6e1 1629 macw %a1l,%d1l,>>,%a1@-&,%a3 + ca4: a4a1 1629 macw %a1l,%d1l,>>,%a1@-&,%d2 + ca8: aee1 1629 macw %a1l,%d1l,>>,%a1@-&,%sp + cac: a293 a0c2 macw %d2u,%a2u,%a3@,%d1 + cb0: a6d3 a0c2 macw %d2u,%a2u,%a3@,%a3 + cb4: a493 a0c2 macw %d2u,%a2u,%a3@,%d2 + cb8: aed3 a0c2 macw %d2u,%a2u,%a3@,%sp + cbc: a293 a0e2 macw %d2u,%a2u,%a3@&,%d1 + cc0: a6d3 a0e2 macw %d2u,%a2u,%a3@&,%a3 + cc4: a493 a0e2 macw %d2u,%a2u,%a3@&,%d2 + cc8: aed3 a0e2 macw %d2u,%a2u,%a3@&,%sp + ccc: a29a a0c2 macw %d2u,%a2u,%a2@\+,%d1 + cd0: a6da a0c2 macw %d2u,%a2u,%a2@\+,%a3 + cd4: a49a a0c2 macw %d2u,%a2u,%a2@\+,%d2 + cd8: aeda a0c2 macw %d2u,%a2u,%a2@\+,%sp + cdc: a29a a0e2 macw %d2u,%a2u,%a2@\+&,%d1 + ce0: a6da a0e2 macw %d2u,%a2u,%a2@\+&,%a3 + ce4: a49a a0e2 macw %d2u,%a2u,%a2@\+&,%d2 + ce8: aeda a0e2 macw %d2u,%a2u,%a2@\+&,%sp + cec: a2ae a0c2 000a macw %d2u,%a2u,%fp@\(10\),%d1 + cf2: a6ee a0c2 000a macw %d2u,%a2u,%fp@\(10\),%a3 + cf8: a4ae a0c2 000a macw %d2u,%a2u,%fp@\(10\),%d2 + cfe: aeee a0c2 000a macw %d2u,%a2u,%fp@\(10\),%sp + d04: a2ae a0e2 000a macw %d2u,%a2u,%fp@\(10\)&,%d1 + d0a: a6ee a0e2 000a macw %d2u,%a2u,%fp@\(10\)&,%a3 + d10: a4ae a0e2 000a macw %d2u,%a2u,%fp@\(10\)&,%d2 + d16: aeee a0e2 000a macw %d2u,%a2u,%fp@\(10\)&,%sp + d1c: a2a1 a0c2 macw %d2u,%a2u,%a1@-,%d1 + d20: a6e1 a0c2 macw %d2u,%a2u,%a1@-,%a3 + d24: a4a1 a0c2 macw %d2u,%a2u,%a1@-,%d2 + d28: aee1 a0c2 macw %d2u,%a2u,%a1@-,%sp + d2c: a2a1 a0e2 macw %d2u,%a2u,%a1@-&,%d1 + d30: a6e1 a0e2 macw %d2u,%a2u,%a1@-&,%a3 + d34: a4a1 a0e2 macw %d2u,%a2u,%a1@-&,%d2 + d38: aee1 a0e2 macw %d2u,%a2u,%a1@-&,%sp + d3c: a293 a2c2 macw %d2u,%a2u,<<,%a3@,%d1 + d40: a6d3 a2c2 macw %d2u,%a2u,<<,%a3@,%a3 + d44: a493 a2c2 macw %d2u,%a2u,<<,%a3@,%d2 + d48: aed3 a2c2 macw %d2u,%a2u,<<,%a3@,%sp + d4c: a293 a2e2 macw %d2u,%a2u,<<,%a3@&,%d1 + d50: a6d3 a2e2 macw %d2u,%a2u,<<,%a3@&,%a3 + d54: a493 a2e2 macw %d2u,%a2u,<<,%a3@&,%d2 + d58: aed3 a2e2 macw %d2u,%a2u,<<,%a3@&,%sp + d5c: a29a a2c2 macw %d2u,%a2u,<<,%a2@\+,%d1 + d60: a6da a2c2 macw %d2u,%a2u,<<,%a2@\+,%a3 + d64: a49a a2c2 macw %d2u,%a2u,<<,%a2@\+,%d2 + d68: aeda a2c2 macw %d2u,%a2u,<<,%a2@\+,%sp + d6c: a29a a2e2 macw %d2u,%a2u,<<,%a2@\+&,%d1 + d70: a6da a2e2 macw %d2u,%a2u,<<,%a2@\+&,%a3 + d74: a49a a2e2 macw %d2u,%a2u,<<,%a2@\+&,%d2 + d78: aeda a2e2 macw %d2u,%a2u,<<,%a2@\+&,%sp + d7c: a2ae a2c2 000a macw %d2u,%a2u,<<,%fp@\(10\),%d1 + d82: a6ee a2c2 000a macw %d2u,%a2u,<<,%fp@\(10\),%a3 + d88: a4ae a2c2 000a macw %d2u,%a2u,<<,%fp@\(10\),%d2 + d8e: aeee a2c2 000a macw %d2u,%a2u,<<,%fp@\(10\),%sp + d94: a2ae a2e2 000a macw %d2u,%a2u,<<,%fp@\(10\)&,%d1 + d9a: a6ee a2e2 000a macw %d2u,%a2u,<<,%fp@\(10\)&,%a3 + da0: a4ae a2e2 000a macw %d2u,%a2u,<<,%fp@\(10\)&,%d2 + da6: aeee a2e2 000a macw %d2u,%a2u,<<,%fp@\(10\)&,%sp + dac: a2a1 a2c2 macw %d2u,%a2u,<<,%a1@-,%d1 + db0: a6e1 a2c2 macw %d2u,%a2u,<<,%a1@-,%a3 + db4: a4a1 a2c2 macw %d2u,%a2u,<<,%a1@-,%d2 + db8: aee1 a2c2 macw %d2u,%a2u,<<,%a1@-,%sp + dbc: a2a1 a2e2 macw %d2u,%a2u,<<,%a1@-&,%d1 + dc0: a6e1 a2e2 macw %d2u,%a2u,<<,%a1@-&,%a3 + dc4: a4a1 a2e2 macw %d2u,%a2u,<<,%a1@-&,%d2 + dc8: aee1 a2e2 macw %d2u,%a2u,<<,%a1@-&,%sp + dcc: a293 a6c2 macw %d2u,%a2u,>>,%a3@,%d1 + dd0: a6d3 a6c2 macw %d2u,%a2u,>>,%a3@,%a3 + dd4: a493 a6c2 macw %d2u,%a2u,>>,%a3@,%d2 + dd8: aed3 a6c2 macw %d2u,%a2u,>>,%a3@,%sp + ddc: a293 a6e2 macw %d2u,%a2u,>>,%a3@&,%d1 + de0: a6d3 a6e2 macw %d2u,%a2u,>>,%a3@&,%a3 + de4: a493 a6e2 macw %d2u,%a2u,>>,%a3@&,%d2 + de8: aed3 a6e2 macw %d2u,%a2u,>>,%a3@&,%sp + dec: a29a a6c2 macw %d2u,%a2u,>>,%a2@\+,%d1 + df0: a6da a6c2 macw %d2u,%a2u,>>,%a2@\+,%a3 + df4: a49a a6c2 macw %d2u,%a2u,>>,%a2@\+,%d2 + df8: aeda a6c2 macw %d2u,%a2u,>>,%a2@\+,%sp + dfc: a29a a6e2 macw %d2u,%a2u,>>,%a2@\+&,%d1 + e00: a6da a6e2 macw %d2u,%a2u,>>,%a2@\+&,%a3 + e04: a49a a6e2 macw %d2u,%a2u,>>,%a2@\+&,%d2 + e08: aeda a6e2 macw %d2u,%a2u,>>,%a2@\+&,%sp + e0c: a2ae a6c2 000a macw %d2u,%a2u,>>,%fp@\(10\),%d1 + e12: a6ee a6c2 000a macw %d2u,%a2u,>>,%fp@\(10\),%a3 + e18: a4ae a6c2 000a macw %d2u,%a2u,>>,%fp@\(10\),%d2 + e1e: aeee a6c2 000a macw %d2u,%a2u,>>,%fp@\(10\),%sp + e24: a2ae a6e2 000a macw %d2u,%a2u,>>,%fp@\(10\)&,%d1 + e2a: a6ee a6e2 000a macw %d2u,%a2u,>>,%fp@\(10\)&,%a3 + e30: a4ae a6e2 000a macw %d2u,%a2u,>>,%fp@\(10\)&,%d2 + e36: aeee a6e2 000a macw %d2u,%a2u,>>,%fp@\(10\)&,%sp + e3c: a2a1 a6c2 macw %d2u,%a2u,>>,%a1@-,%d1 + e40: a6e1 a6c2 macw %d2u,%a2u,>>,%a1@-,%a3 + e44: a4a1 a6c2 macw %d2u,%a2u,>>,%a1@-,%d2 + e48: aee1 a6c2 macw %d2u,%a2u,>>,%a1@-,%sp + e4c: a2a1 a6e2 macw %d2u,%a2u,>>,%a1@-&,%d1 + e50: a6e1 a6e2 macw %d2u,%a2u,>>,%a1@-&,%a3 + e54: a4a1 a6e2 macw %d2u,%a2u,>>,%a1@-&,%d2 + e58: aee1 a6e2 macw %d2u,%a2u,>>,%a1@-&,%sp + e5c: a293 a2c2 macw %d2u,%a2u,<<,%a3@,%d1 + e60: a6d3 a2c2 macw %d2u,%a2u,<<,%a3@,%a3 + e64: a493 a2c2 macw %d2u,%a2u,<<,%a3@,%d2 + e68: aed3 a2c2 macw %d2u,%a2u,<<,%a3@,%sp + e6c: a293 a2e2 macw %d2u,%a2u,<<,%a3@&,%d1 + e70: a6d3 a2e2 macw %d2u,%a2u,<<,%a3@&,%a3 + e74: a493 a2e2 macw %d2u,%a2u,<<,%a3@&,%d2 + e78: aed3 a2e2 macw %d2u,%a2u,<<,%a3@&,%sp + e7c: a29a a2c2 macw %d2u,%a2u,<<,%a2@\+,%d1 + e80: a6da a2c2 macw %d2u,%a2u,<<,%a2@\+,%a3 + e84: a49a a2c2 macw %d2u,%a2u,<<,%a2@\+,%d2 + e88: aeda a2c2 macw %d2u,%a2u,<<,%a2@\+,%sp + e8c: a29a a2e2 macw %d2u,%a2u,<<,%a2@\+&,%d1 + e90: a6da a2e2 macw %d2u,%a2u,<<,%a2@\+&,%a3 + e94: a49a a2e2 macw %d2u,%a2u,<<,%a2@\+&,%d2 + e98: aeda a2e2 macw %d2u,%a2u,<<,%a2@\+&,%sp + e9c: a2ae a2c2 000a macw %d2u,%a2u,<<,%fp@\(10\),%d1 + ea2: a6ee a2c2 000a macw %d2u,%a2u,<<,%fp@\(10\),%a3 + ea8: a4ae a2c2 000a macw %d2u,%a2u,<<,%fp@\(10\),%d2 + eae: aeee a2c2 000a macw %d2u,%a2u,<<,%fp@\(10\),%sp + eb4: a2ae a2e2 000a macw %d2u,%a2u,<<,%fp@\(10\)&,%d1 + eba: a6ee a2e2 000a macw %d2u,%a2u,<<,%fp@\(10\)&,%a3 + ec0: a4ae a2e2 000a macw %d2u,%a2u,<<,%fp@\(10\)&,%d2 + ec6: aeee a2e2 000a macw %d2u,%a2u,<<,%fp@\(10\)&,%sp + ecc: a2a1 a2c2 macw %d2u,%a2u,<<,%a1@-,%d1 + ed0: a6e1 a2c2 macw %d2u,%a2u,<<,%a1@-,%a3 + ed4: a4a1 a2c2 macw %d2u,%a2u,<<,%a1@-,%d2 + ed8: aee1 a2c2 macw %d2u,%a2u,<<,%a1@-,%sp + edc: a2a1 a2e2 macw %d2u,%a2u,<<,%a1@-&,%d1 + ee0: a6e1 a2e2 macw %d2u,%a2u,<<,%a1@-&,%a3 + ee4: a4a1 a2e2 macw %d2u,%a2u,<<,%a1@-&,%d2 + ee8: aee1 a2e2 macw %d2u,%a2u,<<,%a1@-&,%sp + eec: a293 a6c2 macw %d2u,%a2u,>>,%a3@,%d1 + ef0: a6d3 a6c2 macw %d2u,%a2u,>>,%a3@,%a3 + ef4: a493 a6c2 macw %d2u,%a2u,>>,%a3@,%d2 + ef8: aed3 a6c2 macw %d2u,%a2u,>>,%a3@,%sp + efc: a293 a6e2 macw %d2u,%a2u,>>,%a3@&,%d1 + f00: a6d3 a6e2 macw %d2u,%a2u,>>,%a3@&,%a3 + f04: a493 a6e2 macw %d2u,%a2u,>>,%a3@&,%d2 + f08: aed3 a6e2 macw %d2u,%a2u,>>,%a3@&,%sp + f0c: a29a a6c2 macw %d2u,%a2u,>>,%a2@\+,%d1 + f10: a6da a6c2 macw %d2u,%a2u,>>,%a2@\+,%a3 + f14: a49a a6c2 macw %d2u,%a2u,>>,%a2@\+,%d2 + f18: aeda a6c2 macw %d2u,%a2u,>>,%a2@\+,%sp + f1c: a29a a6e2 macw %d2u,%a2u,>>,%a2@\+&,%d1 + f20: a6da a6e2 macw %d2u,%a2u,>>,%a2@\+&,%a3 + f24: a49a a6e2 macw %d2u,%a2u,>>,%a2@\+&,%d2 + f28: aeda a6e2 macw %d2u,%a2u,>>,%a2@\+&,%sp + f2c: a2ae a6c2 000a macw %d2u,%a2u,>>,%fp@\(10\),%d1 + f32: a6ee a6c2 000a macw %d2u,%a2u,>>,%fp@\(10\),%a3 + f38: a4ae a6c2 000a macw %d2u,%a2u,>>,%fp@\(10\),%d2 + f3e: aeee a6c2 000a macw %d2u,%a2u,>>,%fp@\(10\),%sp + f44: a2ae a6e2 000a macw %d2u,%a2u,>>,%fp@\(10\)&,%d1 + f4a: a6ee a6e2 000a macw %d2u,%a2u,>>,%fp@\(10\)&,%a3 + f50: a4ae a6e2 000a macw %d2u,%a2u,>>,%fp@\(10\)&,%d2 + f56: aeee a6e2 000a macw %d2u,%a2u,>>,%fp@\(10\)&,%sp + f5c: a2a1 a6c2 macw %d2u,%a2u,>>,%a1@-,%d1 + f60: a6e1 a6c2 macw %d2u,%a2u,>>,%a1@-,%a3 + f64: a4a1 a6c2 macw %d2u,%a2u,>>,%a1@-,%d2 + f68: aee1 a6c2 macw %d2u,%a2u,>>,%a1@-,%sp + f6c: a2a1 a6e2 macw %d2u,%a2u,>>,%a1@-&,%d1 + f70: a6e1 a6e2 macw %d2u,%a2u,>>,%a1@-&,%a3 + f74: a4a1 a6e2 macw %d2u,%a2u,>>,%a1@-&,%d2 + f78: aee1 a6e2 macw %d2u,%a2u,>>,%a1@-&,%sp + f7c: a293 3042 macw %d2u,%d3l,%a3@,%d1 + f80: a6d3 3042 macw %d2u,%d3l,%a3@,%a3 + f84: a493 3042 macw %d2u,%d3l,%a3@,%d2 + f88: aed3 3042 macw %d2u,%d3l,%a3@,%sp + f8c: a293 3062 macw %d2u,%d3l,%a3@&,%d1 + f90: a6d3 3062 macw %d2u,%d3l,%a3@&,%a3 + f94: a493 3062 macw %d2u,%d3l,%a3@&,%d2 + f98: aed3 3062 macw %d2u,%d3l,%a3@&,%sp + f9c: a29a 3042 macw %d2u,%d3l,%a2@\+,%d1 + fa0: a6da 3042 macw %d2u,%d3l,%a2@\+,%a3 + fa4: a49a 3042 macw %d2u,%d3l,%a2@\+,%d2 + fa8: aeda 3042 macw %d2u,%d3l,%a2@\+,%sp + fac: a29a 3062 macw %d2u,%d3l,%a2@\+&,%d1 + fb0: a6da 3062 macw %d2u,%d3l,%a2@\+&,%a3 + fb4: a49a 3062 macw %d2u,%d3l,%a2@\+&,%d2 + fb8: aeda 3062 macw %d2u,%d3l,%a2@\+&,%sp + fbc: a2ae 3042 000a macw %d2u,%d3l,%fp@\(10\),%d1 + fc2: a6ee 3042 000a macw %d2u,%d3l,%fp@\(10\),%a3 + fc8: a4ae 3042 000a macw %d2u,%d3l,%fp@\(10\),%d2 + fce: aeee 3042 000a macw %d2u,%d3l,%fp@\(10\),%sp + fd4: a2ae 3062 000a macw %d2u,%d3l,%fp@\(10\)&,%d1 + fda: a6ee 3062 000a macw %d2u,%d3l,%fp@\(10\)&,%a3 + fe0: a4ae 3062 000a macw %d2u,%d3l,%fp@\(10\)&,%d2 + fe6: aeee 3062 000a macw %d2u,%d3l,%fp@\(10\)&,%sp + fec: a2a1 3042 macw %d2u,%d3l,%a1@-,%d1 + ff0: a6e1 3042 macw %d2u,%d3l,%a1@-,%a3 + ff4: a4a1 3042 macw %d2u,%d3l,%a1@-,%d2 + ff8: aee1 3042 macw %d2u,%d3l,%a1@-,%sp + ffc: a2a1 3062 macw %d2u,%d3l,%a1@-&,%d1 + 1000: a6e1 3062 macw %d2u,%d3l,%a1@-&,%a3 + 1004: a4a1 3062 macw %d2u,%d3l,%a1@-&,%d2 + 1008: aee1 3062 macw %d2u,%d3l,%a1@-&,%sp + 100c: a293 3242 macw %d2u,%d3l,<<,%a3@,%d1 + 1010: a6d3 3242 macw %d2u,%d3l,<<,%a3@,%a3 + 1014: a493 3242 macw %d2u,%d3l,<<,%a3@,%d2 + 1018: aed3 3242 macw %d2u,%d3l,<<,%a3@,%sp + 101c: a293 3262 macw %d2u,%d3l,<<,%a3@&,%d1 + 1020: a6d3 3262 macw %d2u,%d3l,<<,%a3@&,%a3 + 1024: a493 3262 macw %d2u,%d3l,<<,%a3@&,%d2 + 1028: aed3 3262 macw %d2u,%d3l,<<,%a3@&,%sp + 102c: a29a 3242 macw %d2u,%d3l,<<,%a2@\+,%d1 + 1030: a6da 3242 macw %d2u,%d3l,<<,%a2@\+,%a3 + 1034: a49a 3242 macw %d2u,%d3l,<<,%a2@\+,%d2 + 1038: aeda 3242 macw %d2u,%d3l,<<,%a2@\+,%sp + 103c: a29a 3262 macw %d2u,%d3l,<<,%a2@\+&,%d1 + 1040: a6da 3262 macw %d2u,%d3l,<<,%a2@\+&,%a3 + 1044: a49a 3262 macw %d2u,%d3l,<<,%a2@\+&,%d2 + 1048: aeda 3262 macw %d2u,%d3l,<<,%a2@\+&,%sp + 104c: a2ae 3242 000a macw %d2u,%d3l,<<,%fp@\(10\),%d1 + 1052: a6ee 3242 000a macw %d2u,%d3l,<<,%fp@\(10\),%a3 + 1058: a4ae 3242 000a macw %d2u,%d3l,<<,%fp@\(10\),%d2 + 105e: aeee 3242 000a macw %d2u,%d3l,<<,%fp@\(10\),%sp + 1064: a2ae 3262 000a macw %d2u,%d3l,<<,%fp@\(10\)&,%d1 + 106a: a6ee 3262 000a macw %d2u,%d3l,<<,%fp@\(10\)&,%a3 + 1070: a4ae 3262 000a macw %d2u,%d3l,<<,%fp@\(10\)&,%d2 + 1076: aeee 3262 000a macw %d2u,%d3l,<<,%fp@\(10\)&,%sp + 107c: a2a1 3242 macw %d2u,%d3l,<<,%a1@-,%d1 + 1080: a6e1 3242 macw %d2u,%d3l,<<,%a1@-,%a3 + 1084: a4a1 3242 macw %d2u,%d3l,<<,%a1@-,%d2 + 1088: aee1 3242 macw %d2u,%d3l,<<,%a1@-,%sp + 108c: a2a1 3262 macw %d2u,%d3l,<<,%a1@-&,%d1 + 1090: a6e1 3262 macw %d2u,%d3l,<<,%a1@-&,%a3 + 1094: a4a1 3262 macw %d2u,%d3l,<<,%a1@-&,%d2 + 1098: aee1 3262 macw %d2u,%d3l,<<,%a1@-&,%sp + 109c: a293 3642 macw %d2u,%d3l,>>,%a3@,%d1 + 10a0: a6d3 3642 macw %d2u,%d3l,>>,%a3@,%a3 + 10a4: a493 3642 macw %d2u,%d3l,>>,%a3@,%d2 + 10a8: aed3 3642 macw %d2u,%d3l,>>,%a3@,%sp + 10ac: a293 3662 macw %d2u,%d3l,>>,%a3@&,%d1 + 10b0: a6d3 3662 macw %d2u,%d3l,>>,%a3@&,%a3 + 10b4: a493 3662 macw %d2u,%d3l,>>,%a3@&,%d2 + 10b8: aed3 3662 macw %d2u,%d3l,>>,%a3@&,%sp + 10bc: a29a 3642 macw %d2u,%d3l,>>,%a2@\+,%d1 + 10c0: a6da 3642 macw %d2u,%d3l,>>,%a2@\+,%a3 + 10c4: a49a 3642 macw %d2u,%d3l,>>,%a2@\+,%d2 + 10c8: aeda 3642 macw %d2u,%d3l,>>,%a2@\+,%sp + 10cc: a29a 3662 macw %d2u,%d3l,>>,%a2@\+&,%d1 + 10d0: a6da 3662 macw %d2u,%d3l,>>,%a2@\+&,%a3 + 10d4: a49a 3662 macw %d2u,%d3l,>>,%a2@\+&,%d2 + 10d8: aeda 3662 macw %d2u,%d3l,>>,%a2@\+&,%sp + 10dc: a2ae 3642 000a macw %d2u,%d3l,>>,%fp@\(10\),%d1 + 10e2: a6ee 3642 000a macw %d2u,%d3l,>>,%fp@\(10\),%a3 + 10e8: a4ae 3642 000a macw %d2u,%d3l,>>,%fp@\(10\),%d2 + 10ee: aeee 3642 000a macw %d2u,%d3l,>>,%fp@\(10\),%sp + 10f4: a2ae 3662 000a macw %d2u,%d3l,>>,%fp@\(10\)&,%d1 + 10fa: a6ee 3662 000a macw %d2u,%d3l,>>,%fp@\(10\)&,%a3 + 1100: a4ae 3662 000a macw %d2u,%d3l,>>,%fp@\(10\)&,%d2 + 1106: aeee 3662 000a macw %d2u,%d3l,>>,%fp@\(10\)&,%sp + 110c: a2a1 3642 macw %d2u,%d3l,>>,%a1@-,%d1 + 1110: a6e1 3642 macw %d2u,%d3l,>>,%a1@-,%a3 + 1114: a4a1 3642 macw %d2u,%d3l,>>,%a1@-,%d2 + 1118: aee1 3642 macw %d2u,%d3l,>>,%a1@-,%sp + 111c: a2a1 3662 macw %d2u,%d3l,>>,%a1@-&,%d1 + 1120: a6e1 3662 macw %d2u,%d3l,>>,%a1@-&,%a3 + 1124: a4a1 3662 macw %d2u,%d3l,>>,%a1@-&,%d2 + 1128: aee1 3662 macw %d2u,%d3l,>>,%a1@-&,%sp + 112c: a293 3242 macw %d2u,%d3l,<<,%a3@,%d1 + 1130: a6d3 3242 macw %d2u,%d3l,<<,%a3@,%a3 + 1134: a493 3242 macw %d2u,%d3l,<<,%a3@,%d2 + 1138: aed3 3242 macw %d2u,%d3l,<<,%a3@,%sp + 113c: a293 3262 macw %d2u,%d3l,<<,%a3@&,%d1 + 1140: a6d3 3262 macw %d2u,%d3l,<<,%a3@&,%a3 + 1144: a493 3262 macw %d2u,%d3l,<<,%a3@&,%d2 + 1148: aed3 3262 macw %d2u,%d3l,<<,%a3@&,%sp + 114c: a29a 3242 macw %d2u,%d3l,<<,%a2@\+,%d1 + 1150: a6da 3242 macw %d2u,%d3l,<<,%a2@\+,%a3 + 1154: a49a 3242 macw %d2u,%d3l,<<,%a2@\+,%d2 + 1158: aeda 3242 macw %d2u,%d3l,<<,%a2@\+,%sp + 115c: a29a 3262 macw %d2u,%d3l,<<,%a2@\+&,%d1 + 1160: a6da 3262 macw %d2u,%d3l,<<,%a2@\+&,%a3 + 1164: a49a 3262 macw %d2u,%d3l,<<,%a2@\+&,%d2 + 1168: aeda 3262 macw %d2u,%d3l,<<,%a2@\+&,%sp + 116c: a2ae 3242 000a macw %d2u,%d3l,<<,%fp@\(10\),%d1 + 1172: a6ee 3242 000a macw %d2u,%d3l,<<,%fp@\(10\),%a3 + 1178: a4ae 3242 000a macw %d2u,%d3l,<<,%fp@\(10\),%d2 + 117e: aeee 3242 000a macw %d2u,%d3l,<<,%fp@\(10\),%sp + 1184: a2ae 3262 000a macw %d2u,%d3l,<<,%fp@\(10\)&,%d1 + 118a: a6ee 3262 000a macw %d2u,%d3l,<<,%fp@\(10\)&,%a3 + 1190: a4ae 3262 000a macw %d2u,%d3l,<<,%fp@\(10\)&,%d2 + 1196: aeee 3262 000a macw %d2u,%d3l,<<,%fp@\(10\)&,%sp + 119c: a2a1 3242 macw %d2u,%d3l,<<,%a1@-,%d1 + 11a0: a6e1 3242 macw %d2u,%d3l,<<,%a1@-,%a3 + 11a4: a4a1 3242 macw %d2u,%d3l,<<,%a1@-,%d2 + 11a8: aee1 3242 macw %d2u,%d3l,<<,%a1@-,%sp + 11ac: a2a1 3262 macw %d2u,%d3l,<<,%a1@-&,%d1 + 11b0: a6e1 3262 macw %d2u,%d3l,<<,%a1@-&,%a3 + 11b4: a4a1 3262 macw %d2u,%d3l,<<,%a1@-&,%d2 + 11b8: aee1 3262 macw %d2u,%d3l,<<,%a1@-&,%sp + 11bc: a293 3642 macw %d2u,%d3l,>>,%a3@,%d1 + 11c0: a6d3 3642 macw %d2u,%d3l,>>,%a3@,%a3 + 11c4: a493 3642 macw %d2u,%d3l,>>,%a3@,%d2 + 11c8: aed3 3642 macw %d2u,%d3l,>>,%a3@,%sp + 11cc: a293 3662 macw %d2u,%d3l,>>,%a3@&,%d1 + 11d0: a6d3 3662 macw %d2u,%d3l,>>,%a3@&,%a3 + 11d4: a493 3662 macw %d2u,%d3l,>>,%a3@&,%d2 + 11d8: aed3 3662 macw %d2u,%d3l,>>,%a3@&,%sp + 11dc: a29a 3642 macw %d2u,%d3l,>>,%a2@\+,%d1 + 11e0: a6da 3642 macw %d2u,%d3l,>>,%a2@\+,%a3 + 11e4: a49a 3642 macw %d2u,%d3l,>>,%a2@\+,%d2 + 11e8: aeda 3642 macw %d2u,%d3l,>>,%a2@\+,%sp + 11ec: a29a 3662 macw %d2u,%d3l,>>,%a2@\+&,%d1 + 11f0: a6da 3662 macw %d2u,%d3l,>>,%a2@\+&,%a3 + 11f4: a49a 3662 macw %d2u,%d3l,>>,%a2@\+&,%d2 + 11f8: aeda 3662 macw %d2u,%d3l,>>,%a2@\+&,%sp + 11fc: a2ae 3642 000a macw %d2u,%d3l,>>,%fp@\(10\),%d1 + 1202: a6ee 3642 000a macw %d2u,%d3l,>>,%fp@\(10\),%a3 + 1208: a4ae 3642 000a macw %d2u,%d3l,>>,%fp@\(10\),%d2 + 120e: aeee 3642 000a macw %d2u,%d3l,>>,%fp@\(10\),%sp + 1214: a2ae 3662 000a macw %d2u,%d3l,>>,%fp@\(10\)&,%d1 + 121a: a6ee 3662 000a macw %d2u,%d3l,>>,%fp@\(10\)&,%a3 + 1220: a4ae 3662 000a macw %d2u,%d3l,>>,%fp@\(10\)&,%d2 + 1226: aeee 3662 000a macw %d2u,%d3l,>>,%fp@\(10\)&,%sp + 122c: a2a1 3642 macw %d2u,%d3l,>>,%a1@-,%d1 + 1230: a6e1 3642 macw %d2u,%d3l,>>,%a1@-,%a3 + 1234: a4a1 3642 macw %d2u,%d3l,>>,%a1@-,%d2 + 1238: aee1 3642 macw %d2u,%d3l,>>,%a1@-,%sp + 123c: a2a1 3662 macw %d2u,%d3l,>>,%a1@-&,%d1 + 1240: a6e1 3662 macw %d2u,%d3l,>>,%a1@-&,%a3 + 1244: a4a1 3662 macw %d2u,%d3l,>>,%a1@-&,%d2 + 1248: aee1 3662 macw %d2u,%d3l,>>,%a1@-&,%sp + 124c: a293 f0c2 macw %d2u,%a7u,%a3@,%d1 + 1250: a6d3 f0c2 macw %d2u,%a7u,%a3@,%a3 + 1254: a493 f0c2 macw %d2u,%a7u,%a3@,%d2 + 1258: aed3 f0c2 macw %d2u,%a7u,%a3@,%sp + 125c: a293 f0e2 macw %d2u,%a7u,%a3@&,%d1 + 1260: a6d3 f0e2 macw %d2u,%a7u,%a3@&,%a3 + 1264: a493 f0e2 macw %d2u,%a7u,%a3@&,%d2 + 1268: aed3 f0e2 macw %d2u,%a7u,%a3@&,%sp + 126c: a29a f0c2 macw %d2u,%a7u,%a2@\+,%d1 + 1270: a6da f0c2 macw %d2u,%a7u,%a2@\+,%a3 + 1274: a49a f0c2 macw %d2u,%a7u,%a2@\+,%d2 + 1278: aeda f0c2 macw %d2u,%a7u,%a2@\+,%sp + 127c: a29a f0e2 macw %d2u,%a7u,%a2@\+&,%d1 + 1280: a6da f0e2 macw %d2u,%a7u,%a2@\+&,%a3 + 1284: a49a f0e2 macw %d2u,%a7u,%a2@\+&,%d2 + 1288: aeda f0e2 macw %d2u,%a7u,%a2@\+&,%sp + 128c: a2ae f0c2 000a macw %d2u,%a7u,%fp@\(10\),%d1 + 1292: a6ee f0c2 000a macw %d2u,%a7u,%fp@\(10\),%a3 + 1298: a4ae f0c2 000a macw %d2u,%a7u,%fp@\(10\),%d2 + 129e: aeee f0c2 000a macw %d2u,%a7u,%fp@\(10\),%sp + 12a4: a2ae f0e2 000a macw %d2u,%a7u,%fp@\(10\)&,%d1 + 12aa: a6ee f0e2 000a macw %d2u,%a7u,%fp@\(10\)&,%a3 + 12b0: a4ae f0e2 000a macw %d2u,%a7u,%fp@\(10\)&,%d2 + 12b6: aeee f0e2 000a macw %d2u,%a7u,%fp@\(10\)&,%sp + 12bc: a2a1 f0c2 macw %d2u,%a7u,%a1@-,%d1 + 12c0: a6e1 f0c2 macw %d2u,%a7u,%a1@-,%a3 + 12c4: a4a1 f0c2 macw %d2u,%a7u,%a1@-,%d2 + 12c8: aee1 f0c2 macw %d2u,%a7u,%a1@-,%sp + 12cc: a2a1 f0e2 macw %d2u,%a7u,%a1@-&,%d1 + 12d0: a6e1 f0e2 macw %d2u,%a7u,%a1@-&,%a3 + 12d4: a4a1 f0e2 macw %d2u,%a7u,%a1@-&,%d2 + 12d8: aee1 f0e2 macw %d2u,%a7u,%a1@-&,%sp + 12dc: a293 f2c2 macw %d2u,%a7u,<<,%a3@,%d1 + 12e0: a6d3 f2c2 macw %d2u,%a7u,<<,%a3@,%a3 + 12e4: a493 f2c2 macw %d2u,%a7u,<<,%a3@,%d2 + 12e8: aed3 f2c2 macw %d2u,%a7u,<<,%a3@,%sp + 12ec: a293 f2e2 macw %d2u,%a7u,<<,%a3@&,%d1 + 12f0: a6d3 f2e2 macw %d2u,%a7u,<<,%a3@&,%a3 + 12f4: a493 f2e2 macw %d2u,%a7u,<<,%a3@&,%d2 + 12f8: aed3 f2e2 macw %d2u,%a7u,<<,%a3@&,%sp + 12fc: a29a f2c2 macw %d2u,%a7u,<<,%a2@\+,%d1 + 1300: a6da f2c2 macw %d2u,%a7u,<<,%a2@\+,%a3 + 1304: a49a f2c2 macw %d2u,%a7u,<<,%a2@\+,%d2 + 1308: aeda f2c2 macw %d2u,%a7u,<<,%a2@\+,%sp + 130c: a29a f2e2 macw %d2u,%a7u,<<,%a2@\+&,%d1 + 1310: a6da f2e2 macw %d2u,%a7u,<<,%a2@\+&,%a3 + 1314: a49a f2e2 macw %d2u,%a7u,<<,%a2@\+&,%d2 + 1318: aeda f2e2 macw %d2u,%a7u,<<,%a2@\+&,%sp + 131c: a2ae f2c2 000a macw %d2u,%a7u,<<,%fp@\(10\),%d1 + 1322: a6ee f2c2 000a macw %d2u,%a7u,<<,%fp@\(10\),%a3 + 1328: a4ae f2c2 000a macw %d2u,%a7u,<<,%fp@\(10\),%d2 + 132e: aeee f2c2 000a macw %d2u,%a7u,<<,%fp@\(10\),%sp + 1334: a2ae f2e2 000a macw %d2u,%a7u,<<,%fp@\(10\)&,%d1 + 133a: a6ee f2e2 000a macw %d2u,%a7u,<<,%fp@\(10\)&,%a3 + 1340: a4ae f2e2 000a macw %d2u,%a7u,<<,%fp@\(10\)&,%d2 + 1346: aeee f2e2 000a macw %d2u,%a7u,<<,%fp@\(10\)&,%sp + 134c: a2a1 f2c2 macw %d2u,%a7u,<<,%a1@-,%d1 + 1350: a6e1 f2c2 macw %d2u,%a7u,<<,%a1@-,%a3 + 1354: a4a1 f2c2 macw %d2u,%a7u,<<,%a1@-,%d2 + 1358: aee1 f2c2 macw %d2u,%a7u,<<,%a1@-,%sp + 135c: a2a1 f2e2 macw %d2u,%a7u,<<,%a1@-&,%d1 + 1360: a6e1 f2e2 macw %d2u,%a7u,<<,%a1@-&,%a3 + 1364: a4a1 f2e2 macw %d2u,%a7u,<<,%a1@-&,%d2 + 1368: aee1 f2e2 macw %d2u,%a7u,<<,%a1@-&,%sp + 136c: a293 f6c2 macw %d2u,%a7u,>>,%a3@,%d1 + 1370: a6d3 f6c2 macw %d2u,%a7u,>>,%a3@,%a3 + 1374: a493 f6c2 macw %d2u,%a7u,>>,%a3@,%d2 + 1378: aed3 f6c2 macw %d2u,%a7u,>>,%a3@,%sp + 137c: a293 f6e2 macw %d2u,%a7u,>>,%a3@&,%d1 + 1380: a6d3 f6e2 macw %d2u,%a7u,>>,%a3@&,%a3 + 1384: a493 f6e2 macw %d2u,%a7u,>>,%a3@&,%d2 + 1388: aed3 f6e2 macw %d2u,%a7u,>>,%a3@&,%sp + 138c: a29a f6c2 macw %d2u,%a7u,>>,%a2@\+,%d1 + 1390: a6da f6c2 macw %d2u,%a7u,>>,%a2@\+,%a3 + 1394: a49a f6c2 macw %d2u,%a7u,>>,%a2@\+,%d2 + 1398: aeda f6c2 macw %d2u,%a7u,>>,%a2@\+,%sp + 139c: a29a f6e2 macw %d2u,%a7u,>>,%a2@\+&,%d1 + 13a0: a6da f6e2 macw %d2u,%a7u,>>,%a2@\+&,%a3 + 13a4: a49a f6e2 macw %d2u,%a7u,>>,%a2@\+&,%d2 + 13a8: aeda f6e2 macw %d2u,%a7u,>>,%a2@\+&,%sp + 13ac: a2ae f6c2 000a macw %d2u,%a7u,>>,%fp@\(10\),%d1 + 13b2: a6ee f6c2 000a macw %d2u,%a7u,>>,%fp@\(10\),%a3 + 13b8: a4ae f6c2 000a macw %d2u,%a7u,>>,%fp@\(10\),%d2 + 13be: aeee f6c2 000a macw %d2u,%a7u,>>,%fp@\(10\),%sp + 13c4: a2ae f6e2 000a macw %d2u,%a7u,>>,%fp@\(10\)&,%d1 + 13ca: a6ee f6e2 000a macw %d2u,%a7u,>>,%fp@\(10\)&,%a3 + 13d0: a4ae f6e2 000a macw %d2u,%a7u,>>,%fp@\(10\)&,%d2 + 13d6: aeee f6e2 000a macw %d2u,%a7u,>>,%fp@\(10\)&,%sp + 13dc: a2a1 f6c2 macw %d2u,%a7u,>>,%a1@-,%d1 + 13e0: a6e1 f6c2 macw %d2u,%a7u,>>,%a1@-,%a3 + 13e4: a4a1 f6c2 macw %d2u,%a7u,>>,%a1@-,%d2 + 13e8: aee1 f6c2 macw %d2u,%a7u,>>,%a1@-,%sp + 13ec: a2a1 f6e2 macw %d2u,%a7u,>>,%a1@-&,%d1 + 13f0: a6e1 f6e2 macw %d2u,%a7u,>>,%a1@-&,%a3 + 13f4: a4a1 f6e2 macw %d2u,%a7u,>>,%a1@-&,%d2 + 13f8: aee1 f6e2 macw %d2u,%a7u,>>,%a1@-&,%sp + 13fc: a293 f2c2 macw %d2u,%a7u,<<,%a3@,%d1 + 1400: a6d3 f2c2 macw %d2u,%a7u,<<,%a3@,%a3 + 1404: a493 f2c2 macw %d2u,%a7u,<<,%a3@,%d2 + 1408: aed3 f2c2 macw %d2u,%a7u,<<,%a3@,%sp + 140c: a293 f2e2 macw %d2u,%a7u,<<,%a3@&,%d1 + 1410: a6d3 f2e2 macw %d2u,%a7u,<<,%a3@&,%a3 + 1414: a493 f2e2 macw %d2u,%a7u,<<,%a3@&,%d2 + 1418: aed3 f2e2 macw %d2u,%a7u,<<,%a3@&,%sp + 141c: a29a f2c2 macw %d2u,%a7u,<<,%a2@\+,%d1 + 1420: a6da f2c2 macw %d2u,%a7u,<<,%a2@\+,%a3 + 1424: a49a f2c2 macw %d2u,%a7u,<<,%a2@\+,%d2 + 1428: aeda f2c2 macw %d2u,%a7u,<<,%a2@\+,%sp + 142c: a29a f2e2 macw %d2u,%a7u,<<,%a2@\+&,%d1 + 1430: a6da f2e2 macw %d2u,%a7u,<<,%a2@\+&,%a3 + 1434: a49a f2e2 macw %d2u,%a7u,<<,%a2@\+&,%d2 + 1438: aeda f2e2 macw %d2u,%a7u,<<,%a2@\+&,%sp + 143c: a2ae f2c2 000a macw %d2u,%a7u,<<,%fp@\(10\),%d1 + 1442: a6ee f2c2 000a macw %d2u,%a7u,<<,%fp@\(10\),%a3 + 1448: a4ae f2c2 000a macw %d2u,%a7u,<<,%fp@\(10\),%d2 + 144e: aeee f2c2 000a macw %d2u,%a7u,<<,%fp@\(10\),%sp + 1454: a2ae f2e2 000a macw %d2u,%a7u,<<,%fp@\(10\)&,%d1 + 145a: a6ee f2e2 000a macw %d2u,%a7u,<<,%fp@\(10\)&,%a3 + 1460: a4ae f2e2 000a macw %d2u,%a7u,<<,%fp@\(10\)&,%d2 + 1466: aeee f2e2 000a macw %d2u,%a7u,<<,%fp@\(10\)&,%sp + 146c: a2a1 f2c2 macw %d2u,%a7u,<<,%a1@-,%d1 + 1470: a6e1 f2c2 macw %d2u,%a7u,<<,%a1@-,%a3 + 1474: a4a1 f2c2 macw %d2u,%a7u,<<,%a1@-,%d2 + 1478: aee1 f2c2 macw %d2u,%a7u,<<,%a1@-,%sp + 147c: a2a1 f2e2 macw %d2u,%a7u,<<,%a1@-&,%d1 + 1480: a6e1 f2e2 macw %d2u,%a7u,<<,%a1@-&,%a3 + 1484: a4a1 f2e2 macw %d2u,%a7u,<<,%a1@-&,%d2 + 1488: aee1 f2e2 macw %d2u,%a7u,<<,%a1@-&,%sp + 148c: a293 f6c2 macw %d2u,%a7u,>>,%a3@,%d1 + 1490: a6d3 f6c2 macw %d2u,%a7u,>>,%a3@,%a3 + 1494: a493 f6c2 macw %d2u,%a7u,>>,%a3@,%d2 + 1498: aed3 f6c2 macw %d2u,%a7u,>>,%a3@,%sp + 149c: a293 f6e2 macw %d2u,%a7u,>>,%a3@&,%d1 + 14a0: a6d3 f6e2 macw %d2u,%a7u,>>,%a3@&,%a3 + 14a4: a493 f6e2 macw %d2u,%a7u,>>,%a3@&,%d2 + 14a8: aed3 f6e2 macw %d2u,%a7u,>>,%a3@&,%sp + 14ac: a29a f6c2 macw %d2u,%a7u,>>,%a2@\+,%d1 + 14b0: a6da f6c2 macw %d2u,%a7u,>>,%a2@\+,%a3 + 14b4: a49a f6c2 macw %d2u,%a7u,>>,%a2@\+,%d2 + 14b8: aeda f6c2 macw %d2u,%a7u,>>,%a2@\+,%sp + 14bc: a29a f6e2 macw %d2u,%a7u,>>,%a2@\+&,%d1 + 14c0: a6da f6e2 macw %d2u,%a7u,>>,%a2@\+&,%a3 + 14c4: a49a f6e2 macw %d2u,%a7u,>>,%a2@\+&,%d2 + 14c8: aeda f6e2 macw %d2u,%a7u,>>,%a2@\+&,%sp + 14cc: a2ae f6c2 000a macw %d2u,%a7u,>>,%fp@\(10\),%d1 + 14d2: a6ee f6c2 000a macw %d2u,%a7u,>>,%fp@\(10\),%a3 + 14d8: a4ae f6c2 000a macw %d2u,%a7u,>>,%fp@\(10\),%d2 + 14de: aeee f6c2 000a macw %d2u,%a7u,>>,%fp@\(10\),%sp + 14e4: a2ae f6e2 000a macw %d2u,%a7u,>>,%fp@\(10\)&,%d1 + 14ea: a6ee f6e2 000a macw %d2u,%a7u,>>,%fp@\(10\)&,%a3 + 14f0: a4ae f6e2 000a macw %d2u,%a7u,>>,%fp@\(10\)&,%d2 + 14f6: aeee f6e2 000a macw %d2u,%a7u,>>,%fp@\(10\)&,%sp + 14fc: a2a1 f6c2 macw %d2u,%a7u,>>,%a1@-,%d1 + 1500: a6e1 f6c2 macw %d2u,%a7u,>>,%a1@-,%a3 + 1504: a4a1 f6c2 macw %d2u,%a7u,>>,%a1@-,%d2 + 1508: aee1 f6c2 macw %d2u,%a7u,>>,%a1@-,%sp + 150c: a2a1 f6e2 macw %d2u,%a7u,>>,%a1@-&,%d1 + 1510: a6e1 f6e2 macw %d2u,%a7u,>>,%a1@-&,%a3 + 1514: a4a1 f6e2 macw %d2u,%a7u,>>,%a1@-&,%d2 + 1518: aee1 f6e2 macw %d2u,%a7u,>>,%a1@-&,%sp + 151c: a293 1042 macw %d2u,%d1l,%a3@,%d1 + 1520: a6d3 1042 macw %d2u,%d1l,%a3@,%a3 + 1524: a493 1042 macw %d2u,%d1l,%a3@,%d2 + 1528: aed3 1042 macw %d2u,%d1l,%a3@,%sp + 152c: a293 1062 macw %d2u,%d1l,%a3@&,%d1 + 1530: a6d3 1062 macw %d2u,%d1l,%a3@&,%a3 + 1534: a493 1062 macw %d2u,%d1l,%a3@&,%d2 + 1538: aed3 1062 macw %d2u,%d1l,%a3@&,%sp + 153c: a29a 1042 macw %d2u,%d1l,%a2@\+,%d1 + 1540: a6da 1042 macw %d2u,%d1l,%a2@\+,%a3 + 1544: a49a 1042 macw %d2u,%d1l,%a2@\+,%d2 + 1548: aeda 1042 macw %d2u,%d1l,%a2@\+,%sp + 154c: a29a 1062 macw %d2u,%d1l,%a2@\+&,%d1 + 1550: a6da 1062 macw %d2u,%d1l,%a2@\+&,%a3 + 1554: a49a 1062 macw %d2u,%d1l,%a2@\+&,%d2 + 1558: aeda 1062 macw %d2u,%d1l,%a2@\+&,%sp + 155c: a2ae 1042 000a macw %d2u,%d1l,%fp@\(10\),%d1 + 1562: a6ee 1042 000a macw %d2u,%d1l,%fp@\(10\),%a3 + 1568: a4ae 1042 000a macw %d2u,%d1l,%fp@\(10\),%d2 + 156e: aeee 1042 000a macw %d2u,%d1l,%fp@\(10\),%sp + 1574: a2ae 1062 000a macw %d2u,%d1l,%fp@\(10\)&,%d1 + 157a: a6ee 1062 000a macw %d2u,%d1l,%fp@\(10\)&,%a3 + 1580: a4ae 1062 000a macw %d2u,%d1l,%fp@\(10\)&,%d2 + 1586: aeee 1062 000a macw %d2u,%d1l,%fp@\(10\)&,%sp + 158c: a2a1 1042 macw %d2u,%d1l,%a1@-,%d1 + 1590: a6e1 1042 macw %d2u,%d1l,%a1@-,%a3 + 1594: a4a1 1042 macw %d2u,%d1l,%a1@-,%d2 + 1598: aee1 1042 macw %d2u,%d1l,%a1@-,%sp + 159c: a2a1 1062 macw %d2u,%d1l,%a1@-&,%d1 + 15a0: a6e1 1062 macw %d2u,%d1l,%a1@-&,%a3 + 15a4: a4a1 1062 macw %d2u,%d1l,%a1@-&,%d2 + 15a8: aee1 1062 macw %d2u,%d1l,%a1@-&,%sp + 15ac: a293 1242 macw %d2u,%d1l,<<,%a3@,%d1 + 15b0: a6d3 1242 macw %d2u,%d1l,<<,%a3@,%a3 + 15b4: a493 1242 macw %d2u,%d1l,<<,%a3@,%d2 + 15b8: aed3 1242 macw %d2u,%d1l,<<,%a3@,%sp + 15bc: a293 1262 macw %d2u,%d1l,<<,%a3@&,%d1 + 15c0: a6d3 1262 macw %d2u,%d1l,<<,%a3@&,%a3 + 15c4: a493 1262 macw %d2u,%d1l,<<,%a3@&,%d2 + 15c8: aed3 1262 macw %d2u,%d1l,<<,%a3@&,%sp + 15cc: a29a 1242 macw %d2u,%d1l,<<,%a2@\+,%d1 + 15d0: a6da 1242 macw %d2u,%d1l,<<,%a2@\+,%a3 + 15d4: a49a 1242 macw %d2u,%d1l,<<,%a2@\+,%d2 + 15d8: aeda 1242 macw %d2u,%d1l,<<,%a2@\+,%sp + 15dc: a29a 1262 macw %d2u,%d1l,<<,%a2@\+&,%d1 + 15e0: a6da 1262 macw %d2u,%d1l,<<,%a2@\+&,%a3 + 15e4: a49a 1262 macw %d2u,%d1l,<<,%a2@\+&,%d2 + 15e8: aeda 1262 macw %d2u,%d1l,<<,%a2@\+&,%sp + 15ec: a2ae 1242 000a macw %d2u,%d1l,<<,%fp@\(10\),%d1 + 15f2: a6ee 1242 000a macw %d2u,%d1l,<<,%fp@\(10\),%a3 + 15f8: a4ae 1242 000a macw %d2u,%d1l,<<,%fp@\(10\),%d2 + 15fe: aeee 1242 000a macw %d2u,%d1l,<<,%fp@\(10\),%sp + 1604: a2ae 1262 000a macw %d2u,%d1l,<<,%fp@\(10\)&,%d1 + 160a: a6ee 1262 000a macw %d2u,%d1l,<<,%fp@\(10\)&,%a3 + 1610: a4ae 1262 000a macw %d2u,%d1l,<<,%fp@\(10\)&,%d2 + 1616: aeee 1262 000a macw %d2u,%d1l,<<,%fp@\(10\)&,%sp + 161c: a2a1 1242 macw %d2u,%d1l,<<,%a1@-,%d1 + 1620: a6e1 1242 macw %d2u,%d1l,<<,%a1@-,%a3 + 1624: a4a1 1242 macw %d2u,%d1l,<<,%a1@-,%d2 + 1628: aee1 1242 macw %d2u,%d1l,<<,%a1@-,%sp + 162c: a2a1 1262 macw %d2u,%d1l,<<,%a1@-&,%d1 + 1630: a6e1 1262 macw %d2u,%d1l,<<,%a1@-&,%a3 + 1634: a4a1 1262 macw %d2u,%d1l,<<,%a1@-&,%d2 + 1638: aee1 1262 macw %d2u,%d1l,<<,%a1@-&,%sp + 163c: a293 1642 macw %d2u,%d1l,>>,%a3@,%d1 + 1640: a6d3 1642 macw %d2u,%d1l,>>,%a3@,%a3 + 1644: a493 1642 macw %d2u,%d1l,>>,%a3@,%d2 + 1648: aed3 1642 macw %d2u,%d1l,>>,%a3@,%sp + 164c: a293 1662 macw %d2u,%d1l,>>,%a3@&,%d1 + 1650: a6d3 1662 macw %d2u,%d1l,>>,%a3@&,%a3 + 1654: a493 1662 macw %d2u,%d1l,>>,%a3@&,%d2 + 1658: aed3 1662 macw %d2u,%d1l,>>,%a3@&,%sp + 165c: a29a 1642 macw %d2u,%d1l,>>,%a2@\+,%d1 + 1660: a6da 1642 macw %d2u,%d1l,>>,%a2@\+,%a3 + 1664: a49a 1642 macw %d2u,%d1l,>>,%a2@\+,%d2 + 1668: aeda 1642 macw %d2u,%d1l,>>,%a2@\+,%sp + 166c: a29a 1662 macw %d2u,%d1l,>>,%a2@\+&,%d1 + 1670: a6da 1662 macw %d2u,%d1l,>>,%a2@\+&,%a3 + 1674: a49a 1662 macw %d2u,%d1l,>>,%a2@\+&,%d2 + 1678: aeda 1662 macw %d2u,%d1l,>>,%a2@\+&,%sp + 167c: a2ae 1642 000a macw %d2u,%d1l,>>,%fp@\(10\),%d1 + 1682: a6ee 1642 000a macw %d2u,%d1l,>>,%fp@\(10\),%a3 + 1688: a4ae 1642 000a macw %d2u,%d1l,>>,%fp@\(10\),%d2 + 168e: aeee 1642 000a macw %d2u,%d1l,>>,%fp@\(10\),%sp + 1694: a2ae 1662 000a macw %d2u,%d1l,>>,%fp@\(10\)&,%d1 + 169a: a6ee 1662 000a macw %d2u,%d1l,>>,%fp@\(10\)&,%a3 + 16a0: a4ae 1662 000a macw %d2u,%d1l,>>,%fp@\(10\)&,%d2 + 16a6: aeee 1662 000a macw %d2u,%d1l,>>,%fp@\(10\)&,%sp + 16ac: a2a1 1642 macw %d2u,%d1l,>>,%a1@-,%d1 + 16b0: a6e1 1642 macw %d2u,%d1l,>>,%a1@-,%a3 + 16b4: a4a1 1642 macw %d2u,%d1l,>>,%a1@-,%d2 + 16b8: aee1 1642 macw %d2u,%d1l,>>,%a1@-,%sp + 16bc: a2a1 1662 macw %d2u,%d1l,>>,%a1@-&,%d1 + 16c0: a6e1 1662 macw %d2u,%d1l,>>,%a1@-&,%a3 + 16c4: a4a1 1662 macw %d2u,%d1l,>>,%a1@-&,%d2 + 16c8: aee1 1662 macw %d2u,%d1l,>>,%a1@-&,%sp + 16cc: a293 1242 macw %d2u,%d1l,<<,%a3@,%d1 + 16d0: a6d3 1242 macw %d2u,%d1l,<<,%a3@,%a3 + 16d4: a493 1242 macw %d2u,%d1l,<<,%a3@,%d2 + 16d8: aed3 1242 macw %d2u,%d1l,<<,%a3@,%sp + 16dc: a293 1262 macw %d2u,%d1l,<<,%a3@&,%d1 + 16e0: a6d3 1262 macw %d2u,%d1l,<<,%a3@&,%a3 + 16e4: a493 1262 macw %d2u,%d1l,<<,%a3@&,%d2 + 16e8: aed3 1262 macw %d2u,%d1l,<<,%a3@&,%sp + 16ec: a29a 1242 macw %d2u,%d1l,<<,%a2@\+,%d1 + 16f0: a6da 1242 macw %d2u,%d1l,<<,%a2@\+,%a3 + 16f4: a49a 1242 macw %d2u,%d1l,<<,%a2@\+,%d2 + 16f8: aeda 1242 macw %d2u,%d1l,<<,%a2@\+,%sp + 16fc: a29a 1262 macw %d2u,%d1l,<<,%a2@\+&,%d1 + 1700: a6da 1262 macw %d2u,%d1l,<<,%a2@\+&,%a3 + 1704: a49a 1262 macw %d2u,%d1l,<<,%a2@\+&,%d2 + 1708: aeda 1262 macw %d2u,%d1l,<<,%a2@\+&,%sp + 170c: a2ae 1242 000a macw %d2u,%d1l,<<,%fp@\(10\),%d1 + 1712: a6ee 1242 000a macw %d2u,%d1l,<<,%fp@\(10\),%a3 + 1718: a4ae 1242 000a macw %d2u,%d1l,<<,%fp@\(10\),%d2 + 171e: aeee 1242 000a macw %d2u,%d1l,<<,%fp@\(10\),%sp + 1724: a2ae 1262 000a macw %d2u,%d1l,<<,%fp@\(10\)&,%d1 + 172a: a6ee 1262 000a macw %d2u,%d1l,<<,%fp@\(10\)&,%a3 + 1730: a4ae 1262 000a macw %d2u,%d1l,<<,%fp@\(10\)&,%d2 + 1736: aeee 1262 000a macw %d2u,%d1l,<<,%fp@\(10\)&,%sp + 173c: a2a1 1242 macw %d2u,%d1l,<<,%a1@-,%d1 + 1740: a6e1 1242 macw %d2u,%d1l,<<,%a1@-,%a3 + 1744: a4a1 1242 macw %d2u,%d1l,<<,%a1@-,%d2 + 1748: aee1 1242 macw %d2u,%d1l,<<,%a1@-,%sp + 174c: a2a1 1262 macw %d2u,%d1l,<<,%a1@-&,%d1 + 1750: a6e1 1262 macw %d2u,%d1l,<<,%a1@-&,%a3 + 1754: a4a1 1262 macw %d2u,%d1l,<<,%a1@-&,%d2 + 1758: aee1 1262 macw %d2u,%d1l,<<,%a1@-&,%sp + 175c: a293 1642 macw %d2u,%d1l,>>,%a3@,%d1 + 1760: a6d3 1642 macw %d2u,%d1l,>>,%a3@,%a3 + 1764: a493 1642 macw %d2u,%d1l,>>,%a3@,%d2 + 1768: aed3 1642 macw %d2u,%d1l,>>,%a3@,%sp + 176c: a293 1662 macw %d2u,%d1l,>>,%a3@&,%d1 + 1770: a6d3 1662 macw %d2u,%d1l,>>,%a3@&,%a3 + 1774: a493 1662 macw %d2u,%d1l,>>,%a3@&,%d2 + 1778: aed3 1662 macw %d2u,%d1l,>>,%a3@&,%sp + 177c: a29a 1642 macw %d2u,%d1l,>>,%a2@\+,%d1 + 1780: a6da 1642 macw %d2u,%d1l,>>,%a2@\+,%a3 + 1784: a49a 1642 macw %d2u,%d1l,>>,%a2@\+,%d2 + 1788: aeda 1642 macw %d2u,%d1l,>>,%a2@\+,%sp + 178c: a29a 1662 macw %d2u,%d1l,>>,%a2@\+&,%d1 + 1790: a6da 1662 macw %d2u,%d1l,>>,%a2@\+&,%a3 + 1794: a49a 1662 macw %d2u,%d1l,>>,%a2@\+&,%d2 + 1798: aeda 1662 macw %d2u,%d1l,>>,%a2@\+&,%sp + 179c: a2ae 1642 000a macw %d2u,%d1l,>>,%fp@\(10\),%d1 + 17a2: a6ee 1642 000a macw %d2u,%d1l,>>,%fp@\(10\),%a3 + 17a8: a4ae 1642 000a macw %d2u,%d1l,>>,%fp@\(10\),%d2 + 17ae: aeee 1642 000a macw %d2u,%d1l,>>,%fp@\(10\),%sp + 17b4: a2ae 1662 000a macw %d2u,%d1l,>>,%fp@\(10\)&,%d1 + 17ba: a6ee 1662 000a macw %d2u,%d1l,>>,%fp@\(10\)&,%a3 + 17c0: a4ae 1662 000a macw %d2u,%d1l,>>,%fp@\(10\)&,%d2 + 17c6: aeee 1662 000a macw %d2u,%d1l,>>,%fp@\(10\)&,%sp + 17cc: a2a1 1642 macw %d2u,%d1l,>>,%a1@-,%d1 + 17d0: a6e1 1642 macw %d2u,%d1l,>>,%a1@-,%a3 + 17d4: a4a1 1642 macw %d2u,%d1l,>>,%a1@-,%d2 + 17d8: aee1 1642 macw %d2u,%d1l,>>,%a1@-,%sp + 17dc: a2a1 1662 macw %d2u,%d1l,>>,%a1@-&,%d1 + 17e0: a6e1 1662 macw %d2u,%d1l,>>,%a1@-&,%a3 + 17e4: a4a1 1662 macw %d2u,%d1l,>>,%a1@-&,%d2 + 17e8: aee1 1662 macw %d2u,%d1l,>>,%a1@-&,%sp + 17ec: a293 a08d macw %a5l,%a2u,%a3@,%d1 + 17f0: a6d3 a08d macw %a5l,%a2u,%a3@,%a3 + 17f4: a493 a08d macw %a5l,%a2u,%a3@,%d2 + 17f8: aed3 a08d macw %a5l,%a2u,%a3@,%sp + 17fc: a293 a0ad macw %a5l,%a2u,%a3@&,%d1 + 1800: a6d3 a0ad macw %a5l,%a2u,%a3@&,%a3 + 1804: a493 a0ad macw %a5l,%a2u,%a3@&,%d2 + 1808: aed3 a0ad macw %a5l,%a2u,%a3@&,%sp + 180c: a29a a08d macw %a5l,%a2u,%a2@\+,%d1 + 1810: a6da a08d macw %a5l,%a2u,%a2@\+,%a3 + 1814: a49a a08d macw %a5l,%a2u,%a2@\+,%d2 + 1818: aeda a08d macw %a5l,%a2u,%a2@\+,%sp + 181c: a29a a0ad macw %a5l,%a2u,%a2@\+&,%d1 + 1820: a6da a0ad macw %a5l,%a2u,%a2@\+&,%a3 + 1824: a49a a0ad macw %a5l,%a2u,%a2@\+&,%d2 + 1828: aeda a0ad macw %a5l,%a2u,%a2@\+&,%sp + 182c: a2ae a08d 000a macw %a5l,%a2u,%fp@\(10\),%d1 + 1832: a6ee a08d 000a macw %a5l,%a2u,%fp@\(10\),%a3 + 1838: a4ae a08d 000a macw %a5l,%a2u,%fp@\(10\),%d2 + 183e: aeee a08d 000a macw %a5l,%a2u,%fp@\(10\),%sp + 1844: a2ae a0ad 000a macw %a5l,%a2u,%fp@\(10\)&,%d1 + 184a: a6ee a0ad 000a macw %a5l,%a2u,%fp@\(10\)&,%a3 + 1850: a4ae a0ad 000a macw %a5l,%a2u,%fp@\(10\)&,%d2 + 1856: aeee a0ad 000a macw %a5l,%a2u,%fp@\(10\)&,%sp + 185c: a2a1 a08d macw %a5l,%a2u,%a1@-,%d1 + 1860: a6e1 a08d macw %a5l,%a2u,%a1@-,%a3 + 1864: a4a1 a08d macw %a5l,%a2u,%a1@-,%d2 + 1868: aee1 a08d macw %a5l,%a2u,%a1@-,%sp + 186c: a2a1 a0ad macw %a5l,%a2u,%a1@-&,%d1 + 1870: a6e1 a0ad macw %a5l,%a2u,%a1@-&,%a3 + 1874: a4a1 a0ad macw %a5l,%a2u,%a1@-&,%d2 + 1878: aee1 a0ad macw %a5l,%a2u,%a1@-&,%sp + 187c: a293 a28d macw %a5l,%a2u,<<,%a3@,%d1 + 1880: a6d3 a28d macw %a5l,%a2u,<<,%a3@,%a3 + 1884: a493 a28d macw %a5l,%a2u,<<,%a3@,%d2 + 1888: aed3 a28d macw %a5l,%a2u,<<,%a3@,%sp + 188c: a293 a2ad macw %a5l,%a2u,<<,%a3@&,%d1 + 1890: a6d3 a2ad macw %a5l,%a2u,<<,%a3@&,%a3 + 1894: a493 a2ad macw %a5l,%a2u,<<,%a3@&,%d2 + 1898: aed3 a2ad macw %a5l,%a2u,<<,%a3@&,%sp + 189c: a29a a28d macw %a5l,%a2u,<<,%a2@\+,%d1 + 18a0: a6da a28d macw %a5l,%a2u,<<,%a2@\+,%a3 + 18a4: a49a a28d macw %a5l,%a2u,<<,%a2@\+,%d2 + 18a8: aeda a28d macw %a5l,%a2u,<<,%a2@\+,%sp + 18ac: a29a a2ad macw %a5l,%a2u,<<,%a2@\+&,%d1 + 18b0: a6da a2ad macw %a5l,%a2u,<<,%a2@\+&,%a3 + 18b4: a49a a2ad macw %a5l,%a2u,<<,%a2@\+&,%d2 + 18b8: aeda a2ad macw %a5l,%a2u,<<,%a2@\+&,%sp + 18bc: a2ae a28d 000a macw %a5l,%a2u,<<,%fp@\(10\),%d1 + 18c2: a6ee a28d 000a macw %a5l,%a2u,<<,%fp@\(10\),%a3 + 18c8: a4ae a28d 000a macw %a5l,%a2u,<<,%fp@\(10\),%d2 + 18ce: aeee a28d 000a macw %a5l,%a2u,<<,%fp@\(10\),%sp + 18d4: a2ae a2ad 000a macw %a5l,%a2u,<<,%fp@\(10\)&,%d1 + 18da: a6ee a2ad 000a macw %a5l,%a2u,<<,%fp@\(10\)&,%a3 + 18e0: a4ae a2ad 000a macw %a5l,%a2u,<<,%fp@\(10\)&,%d2 + 18e6: aeee a2ad 000a macw %a5l,%a2u,<<,%fp@\(10\)&,%sp + 18ec: a2a1 a28d macw %a5l,%a2u,<<,%a1@-,%d1 + 18f0: a6e1 a28d macw %a5l,%a2u,<<,%a1@-,%a3 + 18f4: a4a1 a28d macw %a5l,%a2u,<<,%a1@-,%d2 + 18f8: aee1 a28d macw %a5l,%a2u,<<,%a1@-,%sp + 18fc: a2a1 a2ad macw %a5l,%a2u,<<,%a1@-&,%d1 + 1900: a6e1 a2ad macw %a5l,%a2u,<<,%a1@-&,%a3 + 1904: a4a1 a2ad macw %a5l,%a2u,<<,%a1@-&,%d2 + 1908: aee1 a2ad macw %a5l,%a2u,<<,%a1@-&,%sp + 190c: a293 a68d macw %a5l,%a2u,>>,%a3@,%d1 + 1910: a6d3 a68d macw %a5l,%a2u,>>,%a3@,%a3 + 1914: a493 a68d macw %a5l,%a2u,>>,%a3@,%d2 + 1918: aed3 a68d macw %a5l,%a2u,>>,%a3@,%sp + 191c: a293 a6ad macw %a5l,%a2u,>>,%a3@&,%d1 + 1920: a6d3 a6ad macw %a5l,%a2u,>>,%a3@&,%a3 + 1924: a493 a6ad macw %a5l,%a2u,>>,%a3@&,%d2 + 1928: aed3 a6ad macw %a5l,%a2u,>>,%a3@&,%sp + 192c: a29a a68d macw %a5l,%a2u,>>,%a2@\+,%d1 + 1930: a6da a68d macw %a5l,%a2u,>>,%a2@\+,%a3 + 1934: a49a a68d macw %a5l,%a2u,>>,%a2@\+,%d2 + 1938: aeda a68d macw %a5l,%a2u,>>,%a2@\+,%sp + 193c: a29a a6ad macw %a5l,%a2u,>>,%a2@\+&,%d1 + 1940: a6da a6ad macw %a5l,%a2u,>>,%a2@\+&,%a3 + 1944: a49a a6ad macw %a5l,%a2u,>>,%a2@\+&,%d2 + 1948: aeda a6ad macw %a5l,%a2u,>>,%a2@\+&,%sp + 194c: a2ae a68d 000a macw %a5l,%a2u,>>,%fp@\(10\),%d1 + 1952: a6ee a68d 000a macw %a5l,%a2u,>>,%fp@\(10\),%a3 + 1958: a4ae a68d 000a macw %a5l,%a2u,>>,%fp@\(10\),%d2 + 195e: aeee a68d 000a macw %a5l,%a2u,>>,%fp@\(10\),%sp + 1964: a2ae a6ad 000a macw %a5l,%a2u,>>,%fp@\(10\)&,%d1 + 196a: a6ee a6ad 000a macw %a5l,%a2u,>>,%fp@\(10\)&,%a3 + 1970: a4ae a6ad 000a macw %a5l,%a2u,>>,%fp@\(10\)&,%d2 + 1976: aeee a6ad 000a macw %a5l,%a2u,>>,%fp@\(10\)&,%sp + 197c: a2a1 a68d macw %a5l,%a2u,>>,%a1@-,%d1 + 1980: a6e1 a68d macw %a5l,%a2u,>>,%a1@-,%a3 + 1984: a4a1 a68d macw %a5l,%a2u,>>,%a1@-,%d2 + 1988: aee1 a68d macw %a5l,%a2u,>>,%a1@-,%sp + 198c: a2a1 a6ad macw %a5l,%a2u,>>,%a1@-&,%d1 + 1990: a6e1 a6ad macw %a5l,%a2u,>>,%a1@-&,%a3 + 1994: a4a1 a6ad macw %a5l,%a2u,>>,%a1@-&,%d2 + 1998: aee1 a6ad macw %a5l,%a2u,>>,%a1@-&,%sp + 199c: a293 a28d macw %a5l,%a2u,<<,%a3@,%d1 + 19a0: a6d3 a28d macw %a5l,%a2u,<<,%a3@,%a3 + 19a4: a493 a28d macw %a5l,%a2u,<<,%a3@,%d2 + 19a8: aed3 a28d macw %a5l,%a2u,<<,%a3@,%sp + 19ac: a293 a2ad macw %a5l,%a2u,<<,%a3@&,%d1 + 19b0: a6d3 a2ad macw %a5l,%a2u,<<,%a3@&,%a3 + 19b4: a493 a2ad macw %a5l,%a2u,<<,%a3@&,%d2 + 19b8: aed3 a2ad macw %a5l,%a2u,<<,%a3@&,%sp + 19bc: a29a a28d macw %a5l,%a2u,<<,%a2@\+,%d1 + 19c0: a6da a28d macw %a5l,%a2u,<<,%a2@\+,%a3 + 19c4: a49a a28d macw %a5l,%a2u,<<,%a2@\+,%d2 + 19c8: aeda a28d macw %a5l,%a2u,<<,%a2@\+,%sp + 19cc: a29a a2ad macw %a5l,%a2u,<<,%a2@\+&,%d1 + 19d0: a6da a2ad macw %a5l,%a2u,<<,%a2@\+&,%a3 + 19d4: a49a a2ad macw %a5l,%a2u,<<,%a2@\+&,%d2 + 19d8: aeda a2ad macw %a5l,%a2u,<<,%a2@\+&,%sp + 19dc: a2ae a28d 000a macw %a5l,%a2u,<<,%fp@\(10\),%d1 + 19e2: a6ee a28d 000a macw %a5l,%a2u,<<,%fp@\(10\),%a3 + 19e8: a4ae a28d 000a macw %a5l,%a2u,<<,%fp@\(10\),%d2 + 19ee: aeee a28d 000a macw %a5l,%a2u,<<,%fp@\(10\),%sp + 19f4: a2ae a2ad 000a macw %a5l,%a2u,<<,%fp@\(10\)&,%d1 + 19fa: a6ee a2ad 000a macw %a5l,%a2u,<<,%fp@\(10\)&,%a3 + 1a00: a4ae a2ad 000a macw %a5l,%a2u,<<,%fp@\(10\)&,%d2 + 1a06: aeee a2ad 000a macw %a5l,%a2u,<<,%fp@\(10\)&,%sp + 1a0c: a2a1 a28d macw %a5l,%a2u,<<,%a1@-,%d1 + 1a10: a6e1 a28d macw %a5l,%a2u,<<,%a1@-,%a3 + 1a14: a4a1 a28d macw %a5l,%a2u,<<,%a1@-,%d2 + 1a18: aee1 a28d macw %a5l,%a2u,<<,%a1@-,%sp + 1a1c: a2a1 a2ad macw %a5l,%a2u,<<,%a1@-&,%d1 + 1a20: a6e1 a2ad macw %a5l,%a2u,<<,%a1@-&,%a3 + 1a24: a4a1 a2ad macw %a5l,%a2u,<<,%a1@-&,%d2 + 1a28: aee1 a2ad macw %a5l,%a2u,<<,%a1@-&,%sp + 1a2c: a293 a68d macw %a5l,%a2u,>>,%a3@,%d1 + 1a30: a6d3 a68d macw %a5l,%a2u,>>,%a3@,%a3 + 1a34: a493 a68d macw %a5l,%a2u,>>,%a3@,%d2 + 1a38: aed3 a68d macw %a5l,%a2u,>>,%a3@,%sp + 1a3c: a293 a6ad macw %a5l,%a2u,>>,%a3@&,%d1 + 1a40: a6d3 a6ad macw %a5l,%a2u,>>,%a3@&,%a3 + 1a44: a493 a6ad macw %a5l,%a2u,>>,%a3@&,%d2 + 1a48: aed3 a6ad macw %a5l,%a2u,>>,%a3@&,%sp + 1a4c: a29a a68d macw %a5l,%a2u,>>,%a2@\+,%d1 + 1a50: a6da a68d macw %a5l,%a2u,>>,%a2@\+,%a3 + 1a54: a49a a68d macw %a5l,%a2u,>>,%a2@\+,%d2 + 1a58: aeda a68d macw %a5l,%a2u,>>,%a2@\+,%sp + 1a5c: a29a a6ad macw %a5l,%a2u,>>,%a2@\+&,%d1 + 1a60: a6da a6ad macw %a5l,%a2u,>>,%a2@\+&,%a3 + 1a64: a49a a6ad macw %a5l,%a2u,>>,%a2@\+&,%d2 + 1a68: aeda a6ad macw %a5l,%a2u,>>,%a2@\+&,%sp + 1a6c: a2ae a68d 000a macw %a5l,%a2u,>>,%fp@\(10\),%d1 + 1a72: a6ee a68d 000a macw %a5l,%a2u,>>,%fp@\(10\),%a3 + 1a78: a4ae a68d 000a macw %a5l,%a2u,>>,%fp@\(10\),%d2 + 1a7e: aeee a68d 000a macw %a5l,%a2u,>>,%fp@\(10\),%sp + 1a84: a2ae a6ad 000a macw %a5l,%a2u,>>,%fp@\(10\)&,%d1 + 1a8a: a6ee a6ad 000a macw %a5l,%a2u,>>,%fp@\(10\)&,%a3 + 1a90: a4ae a6ad 000a macw %a5l,%a2u,>>,%fp@\(10\)&,%d2 + 1a96: aeee a6ad 000a macw %a5l,%a2u,>>,%fp@\(10\)&,%sp + 1a9c: a2a1 a68d macw %a5l,%a2u,>>,%a1@-,%d1 + 1aa0: a6e1 a68d macw %a5l,%a2u,>>,%a1@-,%a3 + 1aa4: a4a1 a68d macw %a5l,%a2u,>>,%a1@-,%d2 + 1aa8: aee1 a68d macw %a5l,%a2u,>>,%a1@-,%sp + 1aac: a2a1 a6ad macw %a5l,%a2u,>>,%a1@-&,%d1 + 1ab0: a6e1 a6ad macw %a5l,%a2u,>>,%a1@-&,%a3 + 1ab4: a4a1 a6ad macw %a5l,%a2u,>>,%a1@-&,%d2 + 1ab8: aee1 a6ad macw %a5l,%a2u,>>,%a1@-&,%sp + 1abc: a293 300d macw %a5l,%d3l,%a3@,%d1 + 1ac0: a6d3 300d macw %a5l,%d3l,%a3@,%a3 + 1ac4: a493 300d macw %a5l,%d3l,%a3@,%d2 + 1ac8: aed3 300d macw %a5l,%d3l,%a3@,%sp + 1acc: a293 302d macw %a5l,%d3l,%a3@&,%d1 + 1ad0: a6d3 302d macw %a5l,%d3l,%a3@&,%a3 + 1ad4: a493 302d macw %a5l,%d3l,%a3@&,%d2 + 1ad8: aed3 302d macw %a5l,%d3l,%a3@&,%sp + 1adc: a29a 300d macw %a5l,%d3l,%a2@\+,%d1 + 1ae0: a6da 300d macw %a5l,%d3l,%a2@\+,%a3 + 1ae4: a49a 300d macw %a5l,%d3l,%a2@\+,%d2 + 1ae8: aeda 300d macw %a5l,%d3l,%a2@\+,%sp + 1aec: a29a 302d macw %a5l,%d3l,%a2@\+&,%d1 + 1af0: a6da 302d macw %a5l,%d3l,%a2@\+&,%a3 + 1af4: a49a 302d macw %a5l,%d3l,%a2@\+&,%d2 + 1af8: aeda 302d macw %a5l,%d3l,%a2@\+&,%sp + 1afc: a2ae 300d 000a macw %a5l,%d3l,%fp@\(10\),%d1 + 1b02: a6ee 300d 000a macw %a5l,%d3l,%fp@\(10\),%a3 + 1b08: a4ae 300d 000a macw %a5l,%d3l,%fp@\(10\),%d2 + 1b0e: aeee 300d 000a macw %a5l,%d3l,%fp@\(10\),%sp + 1b14: a2ae 302d 000a macw %a5l,%d3l,%fp@\(10\)&,%d1 + 1b1a: a6ee 302d 000a macw %a5l,%d3l,%fp@\(10\)&,%a3 + 1b20: a4ae 302d 000a macw %a5l,%d3l,%fp@\(10\)&,%d2 + 1b26: aeee 302d 000a macw %a5l,%d3l,%fp@\(10\)&,%sp + 1b2c: a2a1 300d macw %a5l,%d3l,%a1@-,%d1 + 1b30: a6e1 300d macw %a5l,%d3l,%a1@-,%a3 + 1b34: a4a1 300d macw %a5l,%d3l,%a1@-,%d2 + 1b38: aee1 300d macw %a5l,%d3l,%a1@-,%sp + 1b3c: a2a1 302d macw %a5l,%d3l,%a1@-&,%d1 + 1b40: a6e1 302d macw %a5l,%d3l,%a1@-&,%a3 + 1b44: a4a1 302d macw %a5l,%d3l,%a1@-&,%d2 + 1b48: aee1 302d macw %a5l,%d3l,%a1@-&,%sp + 1b4c: a293 320d macw %a5l,%d3l,<<,%a3@,%d1 + 1b50: a6d3 320d macw %a5l,%d3l,<<,%a3@,%a3 + 1b54: a493 320d macw %a5l,%d3l,<<,%a3@,%d2 + 1b58: aed3 320d macw %a5l,%d3l,<<,%a3@,%sp + 1b5c: a293 322d macw %a5l,%d3l,<<,%a3@&,%d1 + 1b60: a6d3 322d macw %a5l,%d3l,<<,%a3@&,%a3 + 1b64: a493 322d macw %a5l,%d3l,<<,%a3@&,%d2 + 1b68: aed3 322d macw %a5l,%d3l,<<,%a3@&,%sp + 1b6c: a29a 320d macw %a5l,%d3l,<<,%a2@\+,%d1 + 1b70: a6da 320d macw %a5l,%d3l,<<,%a2@\+,%a3 + 1b74: a49a 320d macw %a5l,%d3l,<<,%a2@\+,%d2 + 1b78: aeda 320d macw %a5l,%d3l,<<,%a2@\+,%sp + 1b7c: a29a 322d macw %a5l,%d3l,<<,%a2@\+&,%d1 + 1b80: a6da 322d macw %a5l,%d3l,<<,%a2@\+&,%a3 + 1b84: a49a 322d macw %a5l,%d3l,<<,%a2@\+&,%d2 + 1b88: aeda 322d macw %a5l,%d3l,<<,%a2@\+&,%sp + 1b8c: a2ae 320d 000a macw %a5l,%d3l,<<,%fp@\(10\),%d1 + 1b92: a6ee 320d 000a macw %a5l,%d3l,<<,%fp@\(10\),%a3 + 1b98: a4ae 320d 000a macw %a5l,%d3l,<<,%fp@\(10\),%d2 + 1b9e: aeee 320d 000a macw %a5l,%d3l,<<,%fp@\(10\),%sp + 1ba4: a2ae 322d 000a macw %a5l,%d3l,<<,%fp@\(10\)&,%d1 + 1baa: a6ee 322d 000a macw %a5l,%d3l,<<,%fp@\(10\)&,%a3 + 1bb0: a4ae 322d 000a macw %a5l,%d3l,<<,%fp@\(10\)&,%d2 + 1bb6: aeee 322d 000a macw %a5l,%d3l,<<,%fp@\(10\)&,%sp + 1bbc: a2a1 320d macw %a5l,%d3l,<<,%a1@-,%d1 + 1bc0: a6e1 320d macw %a5l,%d3l,<<,%a1@-,%a3 + 1bc4: a4a1 320d macw %a5l,%d3l,<<,%a1@-,%d2 + 1bc8: aee1 320d macw %a5l,%d3l,<<,%a1@-,%sp + 1bcc: a2a1 322d macw %a5l,%d3l,<<,%a1@-&,%d1 + 1bd0: a6e1 322d macw %a5l,%d3l,<<,%a1@-&,%a3 + 1bd4: a4a1 322d macw %a5l,%d3l,<<,%a1@-&,%d2 + 1bd8: aee1 322d macw %a5l,%d3l,<<,%a1@-&,%sp + 1bdc: a293 360d macw %a5l,%d3l,>>,%a3@,%d1 + 1be0: a6d3 360d macw %a5l,%d3l,>>,%a3@,%a3 + 1be4: a493 360d macw %a5l,%d3l,>>,%a3@,%d2 + 1be8: aed3 360d macw %a5l,%d3l,>>,%a3@,%sp + 1bec: a293 362d macw %a5l,%d3l,>>,%a3@&,%d1 + 1bf0: a6d3 362d macw %a5l,%d3l,>>,%a3@&,%a3 + 1bf4: a493 362d macw %a5l,%d3l,>>,%a3@&,%d2 + 1bf8: aed3 362d macw %a5l,%d3l,>>,%a3@&,%sp + 1bfc: a29a 360d macw %a5l,%d3l,>>,%a2@\+,%d1 + 1c00: a6da 360d macw %a5l,%d3l,>>,%a2@\+,%a3 + 1c04: a49a 360d macw %a5l,%d3l,>>,%a2@\+,%d2 + 1c08: aeda 360d macw %a5l,%d3l,>>,%a2@\+,%sp + 1c0c: a29a 362d macw %a5l,%d3l,>>,%a2@\+&,%d1 + 1c10: a6da 362d macw %a5l,%d3l,>>,%a2@\+&,%a3 + 1c14: a49a 362d macw %a5l,%d3l,>>,%a2@\+&,%d2 + 1c18: aeda 362d macw %a5l,%d3l,>>,%a2@\+&,%sp + 1c1c: a2ae 360d 000a macw %a5l,%d3l,>>,%fp@\(10\),%d1 + 1c22: a6ee 360d 000a macw %a5l,%d3l,>>,%fp@\(10\),%a3 + 1c28: a4ae 360d 000a macw %a5l,%d3l,>>,%fp@\(10\),%d2 + 1c2e: aeee 360d 000a macw %a5l,%d3l,>>,%fp@\(10\),%sp + 1c34: a2ae 362d 000a macw %a5l,%d3l,>>,%fp@\(10\)&,%d1 + 1c3a: a6ee 362d 000a macw %a5l,%d3l,>>,%fp@\(10\)&,%a3 + 1c40: a4ae 362d 000a macw %a5l,%d3l,>>,%fp@\(10\)&,%d2 + 1c46: aeee 362d 000a macw %a5l,%d3l,>>,%fp@\(10\)&,%sp + 1c4c: a2a1 360d macw %a5l,%d3l,>>,%a1@-,%d1 + 1c50: a6e1 360d macw %a5l,%d3l,>>,%a1@-,%a3 + 1c54: a4a1 360d macw %a5l,%d3l,>>,%a1@-,%d2 + 1c58: aee1 360d macw %a5l,%d3l,>>,%a1@-,%sp + 1c5c: a2a1 362d macw %a5l,%d3l,>>,%a1@-&,%d1 + 1c60: a6e1 362d macw %a5l,%d3l,>>,%a1@-&,%a3 + 1c64: a4a1 362d macw %a5l,%d3l,>>,%a1@-&,%d2 + 1c68: aee1 362d macw %a5l,%d3l,>>,%a1@-&,%sp + 1c6c: a293 320d macw %a5l,%d3l,<<,%a3@,%d1 + 1c70: a6d3 320d macw %a5l,%d3l,<<,%a3@,%a3 + 1c74: a493 320d macw %a5l,%d3l,<<,%a3@,%d2 + 1c78: aed3 320d macw %a5l,%d3l,<<,%a3@,%sp + 1c7c: a293 322d macw %a5l,%d3l,<<,%a3@&,%d1 + 1c80: a6d3 322d macw %a5l,%d3l,<<,%a3@&,%a3 + 1c84: a493 322d macw %a5l,%d3l,<<,%a3@&,%d2 + 1c88: aed3 322d macw %a5l,%d3l,<<,%a3@&,%sp + 1c8c: a29a 320d macw %a5l,%d3l,<<,%a2@\+,%d1 + 1c90: a6da 320d macw %a5l,%d3l,<<,%a2@\+,%a3 + 1c94: a49a 320d macw %a5l,%d3l,<<,%a2@\+,%d2 + 1c98: aeda 320d macw %a5l,%d3l,<<,%a2@\+,%sp + 1c9c: a29a 322d macw %a5l,%d3l,<<,%a2@\+&,%d1 + 1ca0: a6da 322d macw %a5l,%d3l,<<,%a2@\+&,%a3 + 1ca4: a49a 322d macw %a5l,%d3l,<<,%a2@\+&,%d2 + 1ca8: aeda 322d macw %a5l,%d3l,<<,%a2@\+&,%sp + 1cac: a2ae 320d 000a macw %a5l,%d3l,<<,%fp@\(10\),%d1 + 1cb2: a6ee 320d 000a macw %a5l,%d3l,<<,%fp@\(10\),%a3 + 1cb8: a4ae 320d 000a macw %a5l,%d3l,<<,%fp@\(10\),%d2 + 1cbe: aeee 320d 000a macw %a5l,%d3l,<<,%fp@\(10\),%sp + 1cc4: a2ae 322d 000a macw %a5l,%d3l,<<,%fp@\(10\)&,%d1 + 1cca: a6ee 322d 000a macw %a5l,%d3l,<<,%fp@\(10\)&,%a3 + 1cd0: a4ae 322d 000a macw %a5l,%d3l,<<,%fp@\(10\)&,%d2 + 1cd6: aeee 322d 000a macw %a5l,%d3l,<<,%fp@\(10\)&,%sp + 1cdc: a2a1 320d macw %a5l,%d3l,<<,%a1@-,%d1 + 1ce0: a6e1 320d macw %a5l,%d3l,<<,%a1@-,%a3 + 1ce4: a4a1 320d macw %a5l,%d3l,<<,%a1@-,%d2 + 1ce8: aee1 320d macw %a5l,%d3l,<<,%a1@-,%sp + 1cec: a2a1 322d macw %a5l,%d3l,<<,%a1@-&,%d1 + 1cf0: a6e1 322d macw %a5l,%d3l,<<,%a1@-&,%a3 + 1cf4: a4a1 322d macw %a5l,%d3l,<<,%a1@-&,%d2 + 1cf8: aee1 322d macw %a5l,%d3l,<<,%a1@-&,%sp + 1cfc: a293 360d macw %a5l,%d3l,>>,%a3@,%d1 + 1d00: a6d3 360d macw %a5l,%d3l,>>,%a3@,%a3 + 1d04: a493 360d macw %a5l,%d3l,>>,%a3@,%d2 + 1d08: aed3 360d macw %a5l,%d3l,>>,%a3@,%sp + 1d0c: a293 362d macw %a5l,%d3l,>>,%a3@&,%d1 + 1d10: a6d3 362d macw %a5l,%d3l,>>,%a3@&,%a3 + 1d14: a493 362d macw %a5l,%d3l,>>,%a3@&,%d2 + 1d18: aed3 362d macw %a5l,%d3l,>>,%a3@&,%sp + 1d1c: a29a 360d macw %a5l,%d3l,>>,%a2@\+,%d1 + 1d20: a6da 360d macw %a5l,%d3l,>>,%a2@\+,%a3 + 1d24: a49a 360d macw %a5l,%d3l,>>,%a2@\+,%d2 + 1d28: aeda 360d macw %a5l,%d3l,>>,%a2@\+,%sp + 1d2c: a29a 362d macw %a5l,%d3l,>>,%a2@\+&,%d1 + 1d30: a6da 362d macw %a5l,%d3l,>>,%a2@\+&,%a3 + 1d34: a49a 362d macw %a5l,%d3l,>>,%a2@\+&,%d2 + 1d38: aeda 362d macw %a5l,%d3l,>>,%a2@\+&,%sp + 1d3c: a2ae 360d 000a macw %a5l,%d3l,>>,%fp@\(10\),%d1 + 1d42: a6ee 360d 000a macw %a5l,%d3l,>>,%fp@\(10\),%a3 + 1d48: a4ae 360d 000a macw %a5l,%d3l,>>,%fp@\(10\),%d2 + 1d4e: aeee 360d 000a macw %a5l,%d3l,>>,%fp@\(10\),%sp + 1d54: a2ae 362d 000a macw %a5l,%d3l,>>,%fp@\(10\)&,%d1 + 1d5a: a6ee 362d 000a macw %a5l,%d3l,>>,%fp@\(10\)&,%a3 + 1d60: a4ae 362d 000a macw %a5l,%d3l,>>,%fp@\(10\)&,%d2 + 1d66: aeee 362d 000a macw %a5l,%d3l,>>,%fp@\(10\)&,%sp + 1d6c: a2a1 360d macw %a5l,%d3l,>>,%a1@-,%d1 + 1d70: a6e1 360d macw %a5l,%d3l,>>,%a1@-,%a3 + 1d74: a4a1 360d macw %a5l,%d3l,>>,%a1@-,%d2 + 1d78: aee1 360d macw %a5l,%d3l,>>,%a1@-,%sp + 1d7c: a2a1 362d macw %a5l,%d3l,>>,%a1@-&,%d1 + 1d80: a6e1 362d macw %a5l,%d3l,>>,%a1@-&,%a3 + 1d84: a4a1 362d macw %a5l,%d3l,>>,%a1@-&,%d2 + 1d88: aee1 362d macw %a5l,%d3l,>>,%a1@-&,%sp + 1d8c: a293 f08d macw %a5l,%a7u,%a3@,%d1 + 1d90: a6d3 f08d macw %a5l,%a7u,%a3@,%a3 + 1d94: a493 f08d macw %a5l,%a7u,%a3@,%d2 + 1d98: aed3 f08d macw %a5l,%a7u,%a3@,%sp + 1d9c: a293 f0ad macw %a5l,%a7u,%a3@&,%d1 + 1da0: a6d3 f0ad macw %a5l,%a7u,%a3@&,%a3 + 1da4: a493 f0ad macw %a5l,%a7u,%a3@&,%d2 + 1da8: aed3 f0ad macw %a5l,%a7u,%a3@&,%sp + 1dac: a29a f08d macw %a5l,%a7u,%a2@\+,%d1 + 1db0: a6da f08d macw %a5l,%a7u,%a2@\+,%a3 + 1db4: a49a f08d macw %a5l,%a7u,%a2@\+,%d2 + 1db8: aeda f08d macw %a5l,%a7u,%a2@\+,%sp + 1dbc: a29a f0ad macw %a5l,%a7u,%a2@\+&,%d1 + 1dc0: a6da f0ad macw %a5l,%a7u,%a2@\+&,%a3 + 1dc4: a49a f0ad macw %a5l,%a7u,%a2@\+&,%d2 + 1dc8: aeda f0ad macw %a5l,%a7u,%a2@\+&,%sp + 1dcc: a2ae f08d 000a macw %a5l,%a7u,%fp@\(10\),%d1 + 1dd2: a6ee f08d 000a macw %a5l,%a7u,%fp@\(10\),%a3 + 1dd8: a4ae f08d 000a macw %a5l,%a7u,%fp@\(10\),%d2 + 1dde: aeee f08d 000a macw %a5l,%a7u,%fp@\(10\),%sp + 1de4: a2ae f0ad 000a macw %a5l,%a7u,%fp@\(10\)&,%d1 + 1dea: a6ee f0ad 000a macw %a5l,%a7u,%fp@\(10\)&,%a3 + 1df0: a4ae f0ad 000a macw %a5l,%a7u,%fp@\(10\)&,%d2 + 1df6: aeee f0ad 000a macw %a5l,%a7u,%fp@\(10\)&,%sp + 1dfc: a2a1 f08d macw %a5l,%a7u,%a1@-,%d1 + 1e00: a6e1 f08d macw %a5l,%a7u,%a1@-,%a3 + 1e04: a4a1 f08d macw %a5l,%a7u,%a1@-,%d2 + 1e08: aee1 f08d macw %a5l,%a7u,%a1@-,%sp + 1e0c: a2a1 f0ad macw %a5l,%a7u,%a1@-&,%d1 + 1e10: a6e1 f0ad macw %a5l,%a7u,%a1@-&,%a3 + 1e14: a4a1 f0ad macw %a5l,%a7u,%a1@-&,%d2 + 1e18: aee1 f0ad macw %a5l,%a7u,%a1@-&,%sp + 1e1c: a293 f28d macw %a5l,%a7u,<<,%a3@,%d1 + 1e20: a6d3 f28d macw %a5l,%a7u,<<,%a3@,%a3 + 1e24: a493 f28d macw %a5l,%a7u,<<,%a3@,%d2 + 1e28: aed3 f28d macw %a5l,%a7u,<<,%a3@,%sp + 1e2c: a293 f2ad macw %a5l,%a7u,<<,%a3@&,%d1 + 1e30: a6d3 f2ad macw %a5l,%a7u,<<,%a3@&,%a3 + 1e34: a493 f2ad macw %a5l,%a7u,<<,%a3@&,%d2 + 1e38: aed3 f2ad macw %a5l,%a7u,<<,%a3@&,%sp + 1e3c: a29a f28d macw %a5l,%a7u,<<,%a2@\+,%d1 + 1e40: a6da f28d macw %a5l,%a7u,<<,%a2@\+,%a3 + 1e44: a49a f28d macw %a5l,%a7u,<<,%a2@\+,%d2 + 1e48: aeda f28d macw %a5l,%a7u,<<,%a2@\+,%sp + 1e4c: a29a f2ad macw %a5l,%a7u,<<,%a2@\+&,%d1 + 1e50: a6da f2ad macw %a5l,%a7u,<<,%a2@\+&,%a3 + 1e54: a49a f2ad macw %a5l,%a7u,<<,%a2@\+&,%d2 + 1e58: aeda f2ad macw %a5l,%a7u,<<,%a2@\+&,%sp + 1e5c: a2ae f28d 000a macw %a5l,%a7u,<<,%fp@\(10\),%d1 + 1e62: a6ee f28d 000a macw %a5l,%a7u,<<,%fp@\(10\),%a3 + 1e68: a4ae f28d 000a macw %a5l,%a7u,<<,%fp@\(10\),%d2 + 1e6e: aeee f28d 000a macw %a5l,%a7u,<<,%fp@\(10\),%sp + 1e74: a2ae f2ad 000a macw %a5l,%a7u,<<,%fp@\(10\)&,%d1 + 1e7a: a6ee f2ad 000a macw %a5l,%a7u,<<,%fp@\(10\)&,%a3 + 1e80: a4ae f2ad 000a macw %a5l,%a7u,<<,%fp@\(10\)&,%d2 + 1e86: aeee f2ad 000a macw %a5l,%a7u,<<,%fp@\(10\)&,%sp + 1e8c: a2a1 f28d macw %a5l,%a7u,<<,%a1@-,%d1 + 1e90: a6e1 f28d macw %a5l,%a7u,<<,%a1@-,%a3 + 1e94: a4a1 f28d macw %a5l,%a7u,<<,%a1@-,%d2 + 1e98: aee1 f28d macw %a5l,%a7u,<<,%a1@-,%sp + 1e9c: a2a1 f2ad macw %a5l,%a7u,<<,%a1@-&,%d1 + 1ea0: a6e1 f2ad macw %a5l,%a7u,<<,%a1@-&,%a3 + 1ea4: a4a1 f2ad macw %a5l,%a7u,<<,%a1@-&,%d2 + 1ea8: aee1 f2ad macw %a5l,%a7u,<<,%a1@-&,%sp + 1eac: a293 f68d macw %a5l,%a7u,>>,%a3@,%d1 + 1eb0: a6d3 f68d macw %a5l,%a7u,>>,%a3@,%a3 + 1eb4: a493 f68d macw %a5l,%a7u,>>,%a3@,%d2 + 1eb8: aed3 f68d macw %a5l,%a7u,>>,%a3@,%sp + 1ebc: a293 f6ad macw %a5l,%a7u,>>,%a3@&,%d1 + 1ec0: a6d3 f6ad macw %a5l,%a7u,>>,%a3@&,%a3 + 1ec4: a493 f6ad macw %a5l,%a7u,>>,%a3@&,%d2 + 1ec8: aed3 f6ad macw %a5l,%a7u,>>,%a3@&,%sp + 1ecc: a29a f68d macw %a5l,%a7u,>>,%a2@\+,%d1 + 1ed0: a6da f68d macw %a5l,%a7u,>>,%a2@\+,%a3 + 1ed4: a49a f68d macw %a5l,%a7u,>>,%a2@\+,%d2 + 1ed8: aeda f68d macw %a5l,%a7u,>>,%a2@\+,%sp + 1edc: a29a f6ad macw %a5l,%a7u,>>,%a2@\+&,%d1 + 1ee0: a6da f6ad macw %a5l,%a7u,>>,%a2@\+&,%a3 + 1ee4: a49a f6ad macw %a5l,%a7u,>>,%a2@\+&,%d2 + 1ee8: aeda f6ad macw %a5l,%a7u,>>,%a2@\+&,%sp + 1eec: a2ae f68d 000a macw %a5l,%a7u,>>,%fp@\(10\),%d1 + 1ef2: a6ee f68d 000a macw %a5l,%a7u,>>,%fp@\(10\),%a3 + 1ef8: a4ae f68d 000a macw %a5l,%a7u,>>,%fp@\(10\),%d2 + 1efe: aeee f68d 000a macw %a5l,%a7u,>>,%fp@\(10\),%sp + 1f04: a2ae f6ad 000a macw %a5l,%a7u,>>,%fp@\(10\)&,%d1 + 1f0a: a6ee f6ad 000a macw %a5l,%a7u,>>,%fp@\(10\)&,%a3 + 1f10: a4ae f6ad 000a macw %a5l,%a7u,>>,%fp@\(10\)&,%d2 + 1f16: aeee f6ad 000a macw %a5l,%a7u,>>,%fp@\(10\)&,%sp + 1f1c: a2a1 f68d macw %a5l,%a7u,>>,%a1@-,%d1 + 1f20: a6e1 f68d macw %a5l,%a7u,>>,%a1@-,%a3 + 1f24: a4a1 f68d macw %a5l,%a7u,>>,%a1@-,%d2 + 1f28: aee1 f68d macw %a5l,%a7u,>>,%a1@-,%sp + 1f2c: a2a1 f6ad macw %a5l,%a7u,>>,%a1@-&,%d1 + 1f30: a6e1 f6ad macw %a5l,%a7u,>>,%a1@-&,%a3 + 1f34: a4a1 f6ad macw %a5l,%a7u,>>,%a1@-&,%d2 + 1f38: aee1 f6ad macw %a5l,%a7u,>>,%a1@-&,%sp + 1f3c: a293 f28d macw %a5l,%a7u,<<,%a3@,%d1 + 1f40: a6d3 f28d macw %a5l,%a7u,<<,%a3@,%a3 + 1f44: a493 f28d macw %a5l,%a7u,<<,%a3@,%d2 + 1f48: aed3 f28d macw %a5l,%a7u,<<,%a3@,%sp + 1f4c: a293 f2ad macw %a5l,%a7u,<<,%a3@&,%d1 + 1f50: a6d3 f2ad macw %a5l,%a7u,<<,%a3@&,%a3 + 1f54: a493 f2ad macw %a5l,%a7u,<<,%a3@&,%d2 + 1f58: aed3 f2ad macw %a5l,%a7u,<<,%a3@&,%sp + 1f5c: a29a f28d macw %a5l,%a7u,<<,%a2@\+,%d1 + 1f60: a6da f28d macw %a5l,%a7u,<<,%a2@\+,%a3 + 1f64: a49a f28d macw %a5l,%a7u,<<,%a2@\+,%d2 + 1f68: aeda f28d macw %a5l,%a7u,<<,%a2@\+,%sp + 1f6c: a29a f2ad macw %a5l,%a7u,<<,%a2@\+&,%d1 + 1f70: a6da f2ad macw %a5l,%a7u,<<,%a2@\+&,%a3 + 1f74: a49a f2ad macw %a5l,%a7u,<<,%a2@\+&,%d2 + 1f78: aeda f2ad macw %a5l,%a7u,<<,%a2@\+&,%sp + 1f7c: a2ae f28d 000a macw %a5l,%a7u,<<,%fp@\(10\),%d1 + 1f82: a6ee f28d 000a macw %a5l,%a7u,<<,%fp@\(10\),%a3 + 1f88: a4ae f28d 000a macw %a5l,%a7u,<<,%fp@\(10\),%d2 + 1f8e: aeee f28d 000a macw %a5l,%a7u,<<,%fp@\(10\),%sp + 1f94: a2ae f2ad 000a macw %a5l,%a7u,<<,%fp@\(10\)&,%d1 + 1f9a: a6ee f2ad 000a macw %a5l,%a7u,<<,%fp@\(10\)&,%a3 + 1fa0: a4ae f2ad 000a macw %a5l,%a7u,<<,%fp@\(10\)&,%d2 + 1fa6: aeee f2ad 000a macw %a5l,%a7u,<<,%fp@\(10\)&,%sp + 1fac: a2a1 f28d macw %a5l,%a7u,<<,%a1@-,%d1 + 1fb0: a6e1 f28d macw %a5l,%a7u,<<,%a1@-,%a3 + 1fb4: a4a1 f28d macw %a5l,%a7u,<<,%a1@-,%d2 + 1fb8: aee1 f28d macw %a5l,%a7u,<<,%a1@-,%sp + 1fbc: a2a1 f2ad macw %a5l,%a7u,<<,%a1@-&,%d1 + 1fc0: a6e1 f2ad macw %a5l,%a7u,<<,%a1@-&,%a3 + 1fc4: a4a1 f2ad macw %a5l,%a7u,<<,%a1@-&,%d2 + 1fc8: aee1 f2ad macw %a5l,%a7u,<<,%a1@-&,%sp + 1fcc: a293 f68d macw %a5l,%a7u,>>,%a3@,%d1 + 1fd0: a6d3 f68d macw %a5l,%a7u,>>,%a3@,%a3 + 1fd4: a493 f68d macw %a5l,%a7u,>>,%a3@,%d2 + 1fd8: aed3 f68d macw %a5l,%a7u,>>,%a3@,%sp + 1fdc: a293 f6ad macw %a5l,%a7u,>>,%a3@&,%d1 + 1fe0: a6d3 f6ad macw %a5l,%a7u,>>,%a3@&,%a3 + 1fe4: a493 f6ad macw %a5l,%a7u,>>,%a3@&,%d2 + 1fe8: aed3 f6ad macw %a5l,%a7u,>>,%a3@&,%sp + 1fec: a29a f68d macw %a5l,%a7u,>>,%a2@\+,%d1 + 1ff0: a6da f68d macw %a5l,%a7u,>>,%a2@\+,%a3 + 1ff4: a49a f68d macw %a5l,%a7u,>>,%a2@\+,%d2 + 1ff8: aeda f68d macw %a5l,%a7u,>>,%a2@\+,%sp + 1ffc: a29a f6ad macw %a5l,%a7u,>>,%a2@\+&,%d1 + 2000: a6da f6ad macw %a5l,%a7u,>>,%a2@\+&,%a3 + 2004: a49a f6ad macw %a5l,%a7u,>>,%a2@\+&,%d2 + 2008: aeda f6ad macw %a5l,%a7u,>>,%a2@\+&,%sp + 200c: a2ae f68d 000a macw %a5l,%a7u,>>,%fp@\(10\),%d1 + 2012: a6ee f68d 000a macw %a5l,%a7u,>>,%fp@\(10\),%a3 + 2018: a4ae f68d 000a macw %a5l,%a7u,>>,%fp@\(10\),%d2 + 201e: aeee f68d 000a macw %a5l,%a7u,>>,%fp@\(10\),%sp + 2024: a2ae f6ad 000a macw %a5l,%a7u,>>,%fp@\(10\)&,%d1 + 202a: a6ee f6ad 000a macw %a5l,%a7u,>>,%fp@\(10\)&,%a3 + 2030: a4ae f6ad 000a macw %a5l,%a7u,>>,%fp@\(10\)&,%d2 + 2036: aeee f6ad 000a macw %a5l,%a7u,>>,%fp@\(10\)&,%sp + 203c: a2a1 f68d macw %a5l,%a7u,>>,%a1@-,%d1 + 2040: a6e1 f68d macw %a5l,%a7u,>>,%a1@-,%a3 + 2044: a4a1 f68d macw %a5l,%a7u,>>,%a1@-,%d2 + 2048: aee1 f68d macw %a5l,%a7u,>>,%a1@-,%sp + 204c: a2a1 f6ad macw %a5l,%a7u,>>,%a1@-&,%d1 + 2050: a6e1 f6ad macw %a5l,%a7u,>>,%a1@-&,%a3 + 2054: a4a1 f6ad macw %a5l,%a7u,>>,%a1@-&,%d2 + 2058: aee1 f6ad macw %a5l,%a7u,>>,%a1@-&,%sp + 205c: a293 100d macw %a5l,%d1l,%a3@,%d1 + 2060: a6d3 100d macw %a5l,%d1l,%a3@,%a3 + 2064: a493 100d macw %a5l,%d1l,%a3@,%d2 + 2068: aed3 100d macw %a5l,%d1l,%a3@,%sp + 206c: a293 102d macw %a5l,%d1l,%a3@&,%d1 + 2070: a6d3 102d macw %a5l,%d1l,%a3@&,%a3 + 2074: a493 102d macw %a5l,%d1l,%a3@&,%d2 + 2078: aed3 102d macw %a5l,%d1l,%a3@&,%sp + 207c: a29a 100d macw %a5l,%d1l,%a2@\+,%d1 + 2080: a6da 100d macw %a5l,%d1l,%a2@\+,%a3 + 2084: a49a 100d macw %a5l,%d1l,%a2@\+,%d2 + 2088: aeda 100d macw %a5l,%d1l,%a2@\+,%sp + 208c: a29a 102d macw %a5l,%d1l,%a2@\+&,%d1 + 2090: a6da 102d macw %a5l,%d1l,%a2@\+&,%a3 + 2094: a49a 102d macw %a5l,%d1l,%a2@\+&,%d2 + 2098: aeda 102d macw %a5l,%d1l,%a2@\+&,%sp + 209c: a2ae 100d 000a macw %a5l,%d1l,%fp@\(10\),%d1 + 20a2: a6ee 100d 000a macw %a5l,%d1l,%fp@\(10\),%a3 + 20a8: a4ae 100d 000a macw %a5l,%d1l,%fp@\(10\),%d2 + 20ae: aeee 100d 000a macw %a5l,%d1l,%fp@\(10\),%sp + 20b4: a2ae 102d 000a macw %a5l,%d1l,%fp@\(10\)&,%d1 + 20ba: a6ee 102d 000a macw %a5l,%d1l,%fp@\(10\)&,%a3 + 20c0: a4ae 102d 000a macw %a5l,%d1l,%fp@\(10\)&,%d2 + 20c6: aeee 102d 000a macw %a5l,%d1l,%fp@\(10\)&,%sp + 20cc: a2a1 100d macw %a5l,%d1l,%a1@-,%d1 + 20d0: a6e1 100d macw %a5l,%d1l,%a1@-,%a3 + 20d4: a4a1 100d macw %a5l,%d1l,%a1@-,%d2 + 20d8: aee1 100d macw %a5l,%d1l,%a1@-,%sp + 20dc: a2a1 102d macw %a5l,%d1l,%a1@-&,%d1 + 20e0: a6e1 102d macw %a5l,%d1l,%a1@-&,%a3 + 20e4: a4a1 102d macw %a5l,%d1l,%a1@-&,%d2 + 20e8: aee1 102d macw %a5l,%d1l,%a1@-&,%sp + 20ec: a293 120d macw %a5l,%d1l,<<,%a3@,%d1 + 20f0: a6d3 120d macw %a5l,%d1l,<<,%a3@,%a3 + 20f4: a493 120d macw %a5l,%d1l,<<,%a3@,%d2 + 20f8: aed3 120d macw %a5l,%d1l,<<,%a3@,%sp + 20fc: a293 122d macw %a5l,%d1l,<<,%a3@&,%d1 + 2100: a6d3 122d macw %a5l,%d1l,<<,%a3@&,%a3 + 2104: a493 122d macw %a5l,%d1l,<<,%a3@&,%d2 + 2108: aed3 122d macw %a5l,%d1l,<<,%a3@&,%sp + 210c: a29a 120d macw %a5l,%d1l,<<,%a2@\+,%d1 + 2110: a6da 120d macw %a5l,%d1l,<<,%a2@\+,%a3 + 2114: a49a 120d macw %a5l,%d1l,<<,%a2@\+,%d2 + 2118: aeda 120d macw %a5l,%d1l,<<,%a2@\+,%sp + 211c: a29a 122d macw %a5l,%d1l,<<,%a2@\+&,%d1 + 2120: a6da 122d macw %a5l,%d1l,<<,%a2@\+&,%a3 + 2124: a49a 122d macw %a5l,%d1l,<<,%a2@\+&,%d2 + 2128: aeda 122d macw %a5l,%d1l,<<,%a2@\+&,%sp + 212c: a2ae 120d 000a macw %a5l,%d1l,<<,%fp@\(10\),%d1 + 2132: a6ee 120d 000a macw %a5l,%d1l,<<,%fp@\(10\),%a3 + 2138: a4ae 120d 000a macw %a5l,%d1l,<<,%fp@\(10\),%d2 + 213e: aeee 120d 000a macw %a5l,%d1l,<<,%fp@\(10\),%sp + 2144: a2ae 122d 000a macw %a5l,%d1l,<<,%fp@\(10\)&,%d1 + 214a: a6ee 122d 000a macw %a5l,%d1l,<<,%fp@\(10\)&,%a3 + 2150: a4ae 122d 000a macw %a5l,%d1l,<<,%fp@\(10\)&,%d2 + 2156: aeee 122d 000a macw %a5l,%d1l,<<,%fp@\(10\)&,%sp + 215c: a2a1 120d macw %a5l,%d1l,<<,%a1@-,%d1 + 2160: a6e1 120d macw %a5l,%d1l,<<,%a1@-,%a3 + 2164: a4a1 120d macw %a5l,%d1l,<<,%a1@-,%d2 + 2168: aee1 120d macw %a5l,%d1l,<<,%a1@-,%sp + 216c: a2a1 122d macw %a5l,%d1l,<<,%a1@-&,%d1 + 2170: a6e1 122d macw %a5l,%d1l,<<,%a1@-&,%a3 + 2174: a4a1 122d macw %a5l,%d1l,<<,%a1@-&,%d2 + 2178: aee1 122d macw %a5l,%d1l,<<,%a1@-&,%sp + 217c: a293 160d macw %a5l,%d1l,>>,%a3@,%d1 + 2180: a6d3 160d macw %a5l,%d1l,>>,%a3@,%a3 + 2184: a493 160d macw %a5l,%d1l,>>,%a3@,%d2 + 2188: aed3 160d macw %a5l,%d1l,>>,%a3@,%sp + 218c: a293 162d macw %a5l,%d1l,>>,%a3@&,%d1 + 2190: a6d3 162d macw %a5l,%d1l,>>,%a3@&,%a3 + 2194: a493 162d macw %a5l,%d1l,>>,%a3@&,%d2 + 2198: aed3 162d macw %a5l,%d1l,>>,%a3@&,%sp + 219c: a29a 160d macw %a5l,%d1l,>>,%a2@\+,%d1 + 21a0: a6da 160d macw %a5l,%d1l,>>,%a2@\+,%a3 + 21a4: a49a 160d macw %a5l,%d1l,>>,%a2@\+,%d2 + 21a8: aeda 160d macw %a5l,%d1l,>>,%a2@\+,%sp + 21ac: a29a 162d macw %a5l,%d1l,>>,%a2@\+&,%d1 + 21b0: a6da 162d macw %a5l,%d1l,>>,%a2@\+&,%a3 + 21b4: a49a 162d macw %a5l,%d1l,>>,%a2@\+&,%d2 + 21b8: aeda 162d macw %a5l,%d1l,>>,%a2@\+&,%sp + 21bc: a2ae 160d 000a macw %a5l,%d1l,>>,%fp@\(10\),%d1 + 21c2: a6ee 160d 000a macw %a5l,%d1l,>>,%fp@\(10\),%a3 + 21c8: a4ae 160d 000a macw %a5l,%d1l,>>,%fp@\(10\),%d2 + 21ce: aeee 160d 000a macw %a5l,%d1l,>>,%fp@\(10\),%sp + 21d4: a2ae 162d 000a macw %a5l,%d1l,>>,%fp@\(10\)&,%d1 + 21da: a6ee 162d 000a macw %a5l,%d1l,>>,%fp@\(10\)&,%a3 + 21e0: a4ae 162d 000a macw %a5l,%d1l,>>,%fp@\(10\)&,%d2 + 21e6: aeee 162d 000a macw %a5l,%d1l,>>,%fp@\(10\)&,%sp + 21ec: a2a1 160d macw %a5l,%d1l,>>,%a1@-,%d1 + 21f0: a6e1 160d macw %a5l,%d1l,>>,%a1@-,%a3 + 21f4: a4a1 160d macw %a5l,%d1l,>>,%a1@-,%d2 + 21f8: aee1 160d macw %a5l,%d1l,>>,%a1@-,%sp + 21fc: a2a1 162d macw %a5l,%d1l,>>,%a1@-&,%d1 + 2200: a6e1 162d macw %a5l,%d1l,>>,%a1@-&,%a3 + 2204: a4a1 162d macw %a5l,%d1l,>>,%a1@-&,%d2 + 2208: aee1 162d macw %a5l,%d1l,>>,%a1@-&,%sp + 220c: a293 120d macw %a5l,%d1l,<<,%a3@,%d1 + 2210: a6d3 120d macw %a5l,%d1l,<<,%a3@,%a3 + 2214: a493 120d macw %a5l,%d1l,<<,%a3@,%d2 + 2218: aed3 120d macw %a5l,%d1l,<<,%a3@,%sp + 221c: a293 122d macw %a5l,%d1l,<<,%a3@&,%d1 + 2220: a6d3 122d macw %a5l,%d1l,<<,%a3@&,%a3 + 2224: a493 122d macw %a5l,%d1l,<<,%a3@&,%d2 + 2228: aed3 122d macw %a5l,%d1l,<<,%a3@&,%sp + 222c: a29a 120d macw %a5l,%d1l,<<,%a2@\+,%d1 + 2230: a6da 120d macw %a5l,%d1l,<<,%a2@\+,%a3 + 2234: a49a 120d macw %a5l,%d1l,<<,%a2@\+,%d2 + 2238: aeda 120d macw %a5l,%d1l,<<,%a2@\+,%sp + 223c: a29a 122d macw %a5l,%d1l,<<,%a2@\+&,%d1 + 2240: a6da 122d macw %a5l,%d1l,<<,%a2@\+&,%a3 + 2244: a49a 122d macw %a5l,%d1l,<<,%a2@\+&,%d2 + 2248: aeda 122d macw %a5l,%d1l,<<,%a2@\+&,%sp + 224c: a2ae 120d 000a macw %a5l,%d1l,<<,%fp@\(10\),%d1 + 2252: a6ee 120d 000a macw %a5l,%d1l,<<,%fp@\(10\),%a3 + 2258: a4ae 120d 000a macw %a5l,%d1l,<<,%fp@\(10\),%d2 + 225e: aeee 120d 000a macw %a5l,%d1l,<<,%fp@\(10\),%sp + 2264: a2ae 122d 000a macw %a5l,%d1l,<<,%fp@\(10\)&,%d1 + 226a: a6ee 122d 000a macw %a5l,%d1l,<<,%fp@\(10\)&,%a3 + 2270: a4ae 122d 000a macw %a5l,%d1l,<<,%fp@\(10\)&,%d2 + 2276: aeee 122d 000a macw %a5l,%d1l,<<,%fp@\(10\)&,%sp + 227c: a2a1 120d macw %a5l,%d1l,<<,%a1@-,%d1 + 2280: a6e1 120d macw %a5l,%d1l,<<,%a1@-,%a3 + 2284: a4a1 120d macw %a5l,%d1l,<<,%a1@-,%d2 + 2288: aee1 120d macw %a5l,%d1l,<<,%a1@-,%sp + 228c: a2a1 122d macw %a5l,%d1l,<<,%a1@-&,%d1 + 2290: a6e1 122d macw %a5l,%d1l,<<,%a1@-&,%a3 + 2294: a4a1 122d macw %a5l,%d1l,<<,%a1@-&,%d2 + 2298: aee1 122d macw %a5l,%d1l,<<,%a1@-&,%sp + 229c: a293 160d macw %a5l,%d1l,>>,%a3@,%d1 + 22a0: a6d3 160d macw %a5l,%d1l,>>,%a3@,%a3 + 22a4: a493 160d macw %a5l,%d1l,>>,%a3@,%d2 + 22a8: aed3 160d macw %a5l,%d1l,>>,%a3@,%sp + 22ac: a293 162d macw %a5l,%d1l,>>,%a3@&,%d1 + 22b0: a6d3 162d macw %a5l,%d1l,>>,%a3@&,%a3 + 22b4: a493 162d macw %a5l,%d1l,>>,%a3@&,%d2 + 22b8: aed3 162d macw %a5l,%d1l,>>,%a3@&,%sp + 22bc: a29a 160d macw %a5l,%d1l,>>,%a2@\+,%d1 + 22c0: a6da 160d macw %a5l,%d1l,>>,%a2@\+,%a3 + 22c4: a49a 160d macw %a5l,%d1l,>>,%a2@\+,%d2 + 22c8: aeda 160d macw %a5l,%d1l,>>,%a2@\+,%sp + 22cc: a29a 162d macw %a5l,%d1l,>>,%a2@\+&,%d1 + 22d0: a6da 162d macw %a5l,%d1l,>>,%a2@\+&,%a3 + 22d4: a49a 162d macw %a5l,%d1l,>>,%a2@\+&,%d2 + 22d8: aeda 162d macw %a5l,%d1l,>>,%a2@\+&,%sp + 22dc: a2ae 160d 000a macw %a5l,%d1l,>>,%fp@\(10\),%d1 + 22e2: a6ee 160d 000a macw %a5l,%d1l,>>,%fp@\(10\),%a3 + 22e8: a4ae 160d 000a macw %a5l,%d1l,>>,%fp@\(10\),%d2 + 22ee: aeee 160d 000a macw %a5l,%d1l,>>,%fp@\(10\),%sp + 22f4: a2ae 162d 000a macw %a5l,%d1l,>>,%fp@\(10\)&,%d1 + 22fa: a6ee 162d 000a macw %a5l,%d1l,>>,%fp@\(10\)&,%a3 + 2300: a4ae 162d 000a macw %a5l,%d1l,>>,%fp@\(10\)&,%d2 + 2306: aeee 162d 000a macw %a5l,%d1l,>>,%fp@\(10\)&,%sp + 230c: a2a1 160d macw %a5l,%d1l,>>,%a1@-,%d1 + 2310: a6e1 160d macw %a5l,%d1l,>>,%a1@-,%a3 + 2314: a4a1 160d macw %a5l,%d1l,>>,%a1@-,%d2 + 2318: aee1 160d macw %a5l,%d1l,>>,%a1@-,%sp + 231c: a2a1 162d macw %a5l,%d1l,>>,%a1@-&,%d1 + 2320: a6e1 162d macw %a5l,%d1l,>>,%a1@-&,%a3 + 2324: a4a1 162d macw %a5l,%d1l,>>,%a1@-&,%d2 + 2328: aee1 162d macw %a5l,%d1l,>>,%a1@-&,%sp + 232c: a293 a0c6 macw %d6u,%a2u,%a3@,%d1 + 2330: a6d3 a0c6 macw %d6u,%a2u,%a3@,%a3 + 2334: a493 a0c6 macw %d6u,%a2u,%a3@,%d2 + 2338: aed3 a0c6 macw %d6u,%a2u,%a3@,%sp + 233c: a293 a0e6 macw %d6u,%a2u,%a3@&,%d1 + 2340: a6d3 a0e6 macw %d6u,%a2u,%a3@&,%a3 + 2344: a493 a0e6 macw %d6u,%a2u,%a3@&,%d2 + 2348: aed3 a0e6 macw %d6u,%a2u,%a3@&,%sp + 234c: a29a a0c6 macw %d6u,%a2u,%a2@\+,%d1 + 2350: a6da a0c6 macw %d6u,%a2u,%a2@\+,%a3 + 2354: a49a a0c6 macw %d6u,%a2u,%a2@\+,%d2 + 2358: aeda a0c6 macw %d6u,%a2u,%a2@\+,%sp + 235c: a29a a0e6 macw %d6u,%a2u,%a2@\+&,%d1 + 2360: a6da a0e6 macw %d6u,%a2u,%a2@\+&,%a3 + 2364: a49a a0e6 macw %d6u,%a2u,%a2@\+&,%d2 + 2368: aeda a0e6 macw %d6u,%a2u,%a2@\+&,%sp + 236c: a2ae a0c6 000a macw %d6u,%a2u,%fp@\(10\),%d1 + 2372: a6ee a0c6 000a macw %d6u,%a2u,%fp@\(10\),%a3 + 2378: a4ae a0c6 000a macw %d6u,%a2u,%fp@\(10\),%d2 + 237e: aeee a0c6 000a macw %d6u,%a2u,%fp@\(10\),%sp + 2384: a2ae a0e6 000a macw %d6u,%a2u,%fp@\(10\)&,%d1 + 238a: a6ee a0e6 000a macw %d6u,%a2u,%fp@\(10\)&,%a3 + 2390: a4ae a0e6 000a macw %d6u,%a2u,%fp@\(10\)&,%d2 + 2396: aeee a0e6 000a macw %d6u,%a2u,%fp@\(10\)&,%sp + 239c: a2a1 a0c6 macw %d6u,%a2u,%a1@-,%d1 + 23a0: a6e1 a0c6 macw %d6u,%a2u,%a1@-,%a3 + 23a4: a4a1 a0c6 macw %d6u,%a2u,%a1@-,%d2 + 23a8: aee1 a0c6 macw %d6u,%a2u,%a1@-,%sp + 23ac: a2a1 a0e6 macw %d6u,%a2u,%a1@-&,%d1 + 23b0: a6e1 a0e6 macw %d6u,%a2u,%a1@-&,%a3 + 23b4: a4a1 a0e6 macw %d6u,%a2u,%a1@-&,%d2 + 23b8: aee1 a0e6 macw %d6u,%a2u,%a1@-&,%sp + 23bc: a293 a2c6 macw %d6u,%a2u,<<,%a3@,%d1 + 23c0: a6d3 a2c6 macw %d6u,%a2u,<<,%a3@,%a3 + 23c4: a493 a2c6 macw %d6u,%a2u,<<,%a3@,%d2 + 23c8: aed3 a2c6 macw %d6u,%a2u,<<,%a3@,%sp + 23cc: a293 a2e6 macw %d6u,%a2u,<<,%a3@&,%d1 + 23d0: a6d3 a2e6 macw %d6u,%a2u,<<,%a3@&,%a3 + 23d4: a493 a2e6 macw %d6u,%a2u,<<,%a3@&,%d2 + 23d8: aed3 a2e6 macw %d6u,%a2u,<<,%a3@&,%sp + 23dc: a29a a2c6 macw %d6u,%a2u,<<,%a2@\+,%d1 + 23e0: a6da a2c6 macw %d6u,%a2u,<<,%a2@\+,%a3 + 23e4: a49a a2c6 macw %d6u,%a2u,<<,%a2@\+,%d2 + 23e8: aeda a2c6 macw %d6u,%a2u,<<,%a2@\+,%sp + 23ec: a29a a2e6 macw %d6u,%a2u,<<,%a2@\+&,%d1 + 23f0: a6da a2e6 macw %d6u,%a2u,<<,%a2@\+&,%a3 + 23f4: a49a a2e6 macw %d6u,%a2u,<<,%a2@\+&,%d2 + 23f8: aeda a2e6 macw %d6u,%a2u,<<,%a2@\+&,%sp + 23fc: a2ae a2c6 000a macw %d6u,%a2u,<<,%fp@\(10\),%d1 + 2402: a6ee a2c6 000a macw %d6u,%a2u,<<,%fp@\(10\),%a3 + 2408: a4ae a2c6 000a macw %d6u,%a2u,<<,%fp@\(10\),%d2 + 240e: aeee a2c6 000a macw %d6u,%a2u,<<,%fp@\(10\),%sp + 2414: a2ae a2e6 000a macw %d6u,%a2u,<<,%fp@\(10\)&,%d1 + 241a: a6ee a2e6 000a macw %d6u,%a2u,<<,%fp@\(10\)&,%a3 + 2420: a4ae a2e6 000a macw %d6u,%a2u,<<,%fp@\(10\)&,%d2 + 2426: aeee a2e6 000a macw %d6u,%a2u,<<,%fp@\(10\)&,%sp + 242c: a2a1 a2c6 macw %d6u,%a2u,<<,%a1@-,%d1 + 2430: a6e1 a2c6 macw %d6u,%a2u,<<,%a1@-,%a3 + 2434: a4a1 a2c6 macw %d6u,%a2u,<<,%a1@-,%d2 + 2438: aee1 a2c6 macw %d6u,%a2u,<<,%a1@-,%sp + 243c: a2a1 a2e6 macw %d6u,%a2u,<<,%a1@-&,%d1 + 2440: a6e1 a2e6 macw %d6u,%a2u,<<,%a1@-&,%a3 + 2444: a4a1 a2e6 macw %d6u,%a2u,<<,%a1@-&,%d2 + 2448: aee1 a2e6 macw %d6u,%a2u,<<,%a1@-&,%sp + 244c: a293 a6c6 macw %d6u,%a2u,>>,%a3@,%d1 + 2450: a6d3 a6c6 macw %d6u,%a2u,>>,%a3@,%a3 + 2454: a493 a6c6 macw %d6u,%a2u,>>,%a3@,%d2 + 2458: aed3 a6c6 macw %d6u,%a2u,>>,%a3@,%sp + 245c: a293 a6e6 macw %d6u,%a2u,>>,%a3@&,%d1 + 2460: a6d3 a6e6 macw %d6u,%a2u,>>,%a3@&,%a3 + 2464: a493 a6e6 macw %d6u,%a2u,>>,%a3@&,%d2 + 2468: aed3 a6e6 macw %d6u,%a2u,>>,%a3@&,%sp + 246c: a29a a6c6 macw %d6u,%a2u,>>,%a2@\+,%d1 + 2470: a6da a6c6 macw %d6u,%a2u,>>,%a2@\+,%a3 + 2474: a49a a6c6 macw %d6u,%a2u,>>,%a2@\+,%d2 + 2478: aeda a6c6 macw %d6u,%a2u,>>,%a2@\+,%sp + 247c: a29a a6e6 macw %d6u,%a2u,>>,%a2@\+&,%d1 + 2480: a6da a6e6 macw %d6u,%a2u,>>,%a2@\+&,%a3 + 2484: a49a a6e6 macw %d6u,%a2u,>>,%a2@\+&,%d2 + 2488: aeda a6e6 macw %d6u,%a2u,>>,%a2@\+&,%sp + 248c: a2ae a6c6 000a macw %d6u,%a2u,>>,%fp@\(10\),%d1 + 2492: a6ee a6c6 000a macw %d6u,%a2u,>>,%fp@\(10\),%a3 + 2498: a4ae a6c6 000a macw %d6u,%a2u,>>,%fp@\(10\),%d2 + 249e: aeee a6c6 000a macw %d6u,%a2u,>>,%fp@\(10\),%sp + 24a4: a2ae a6e6 000a macw %d6u,%a2u,>>,%fp@\(10\)&,%d1 + 24aa: a6ee a6e6 000a macw %d6u,%a2u,>>,%fp@\(10\)&,%a3 + 24b0: a4ae a6e6 000a macw %d6u,%a2u,>>,%fp@\(10\)&,%d2 + 24b6: aeee a6e6 000a macw %d6u,%a2u,>>,%fp@\(10\)&,%sp + 24bc: a2a1 a6c6 macw %d6u,%a2u,>>,%a1@-,%d1 + 24c0: a6e1 a6c6 macw %d6u,%a2u,>>,%a1@-,%a3 + 24c4: a4a1 a6c6 macw %d6u,%a2u,>>,%a1@-,%d2 + 24c8: aee1 a6c6 macw %d6u,%a2u,>>,%a1@-,%sp + 24cc: a2a1 a6e6 macw %d6u,%a2u,>>,%a1@-&,%d1 + 24d0: a6e1 a6e6 macw %d6u,%a2u,>>,%a1@-&,%a3 + 24d4: a4a1 a6e6 macw %d6u,%a2u,>>,%a1@-&,%d2 + 24d8: aee1 a6e6 macw %d6u,%a2u,>>,%a1@-&,%sp + 24dc: a293 a2c6 macw %d6u,%a2u,<<,%a3@,%d1 + 24e0: a6d3 a2c6 macw %d6u,%a2u,<<,%a3@,%a3 + 24e4: a493 a2c6 macw %d6u,%a2u,<<,%a3@,%d2 + 24e8: aed3 a2c6 macw %d6u,%a2u,<<,%a3@,%sp + 24ec: a293 a2e6 macw %d6u,%a2u,<<,%a3@&,%d1 + 24f0: a6d3 a2e6 macw %d6u,%a2u,<<,%a3@&,%a3 + 24f4: a493 a2e6 macw %d6u,%a2u,<<,%a3@&,%d2 + 24f8: aed3 a2e6 macw %d6u,%a2u,<<,%a3@&,%sp + 24fc: a29a a2c6 macw %d6u,%a2u,<<,%a2@\+,%d1 + 2500: a6da a2c6 macw %d6u,%a2u,<<,%a2@\+,%a3 + 2504: a49a a2c6 macw %d6u,%a2u,<<,%a2@\+,%d2 + 2508: aeda a2c6 macw %d6u,%a2u,<<,%a2@\+,%sp + 250c: a29a a2e6 macw %d6u,%a2u,<<,%a2@\+&,%d1 + 2510: a6da a2e6 macw %d6u,%a2u,<<,%a2@\+&,%a3 + 2514: a49a a2e6 macw %d6u,%a2u,<<,%a2@\+&,%d2 + 2518: aeda a2e6 macw %d6u,%a2u,<<,%a2@\+&,%sp + 251c: a2ae a2c6 000a macw %d6u,%a2u,<<,%fp@\(10\),%d1 + 2522: a6ee a2c6 000a macw %d6u,%a2u,<<,%fp@\(10\),%a3 + 2528: a4ae a2c6 000a macw %d6u,%a2u,<<,%fp@\(10\),%d2 + 252e: aeee a2c6 000a macw %d6u,%a2u,<<,%fp@\(10\),%sp + 2534: a2ae a2e6 000a macw %d6u,%a2u,<<,%fp@\(10\)&,%d1 + 253a: a6ee a2e6 000a macw %d6u,%a2u,<<,%fp@\(10\)&,%a3 + 2540: a4ae a2e6 000a macw %d6u,%a2u,<<,%fp@\(10\)&,%d2 + 2546: aeee a2e6 000a macw %d6u,%a2u,<<,%fp@\(10\)&,%sp + 254c: a2a1 a2c6 macw %d6u,%a2u,<<,%a1@-,%d1 + 2550: a6e1 a2c6 macw %d6u,%a2u,<<,%a1@-,%a3 + 2554: a4a1 a2c6 macw %d6u,%a2u,<<,%a1@-,%d2 + 2558: aee1 a2c6 macw %d6u,%a2u,<<,%a1@-,%sp + 255c: a2a1 a2e6 macw %d6u,%a2u,<<,%a1@-&,%d1 + 2560: a6e1 a2e6 macw %d6u,%a2u,<<,%a1@-&,%a3 + 2564: a4a1 a2e6 macw %d6u,%a2u,<<,%a1@-&,%d2 + 2568: aee1 a2e6 macw %d6u,%a2u,<<,%a1@-&,%sp + 256c: a293 a6c6 macw %d6u,%a2u,>>,%a3@,%d1 + 2570: a6d3 a6c6 macw %d6u,%a2u,>>,%a3@,%a3 + 2574: a493 a6c6 macw %d6u,%a2u,>>,%a3@,%d2 + 2578: aed3 a6c6 macw %d6u,%a2u,>>,%a3@,%sp + 257c: a293 a6e6 macw %d6u,%a2u,>>,%a3@&,%d1 + 2580: a6d3 a6e6 macw %d6u,%a2u,>>,%a3@&,%a3 + 2584: a493 a6e6 macw %d6u,%a2u,>>,%a3@&,%d2 + 2588: aed3 a6e6 macw %d6u,%a2u,>>,%a3@&,%sp + 258c: a29a a6c6 macw %d6u,%a2u,>>,%a2@\+,%d1 + 2590: a6da a6c6 macw %d6u,%a2u,>>,%a2@\+,%a3 + 2594: a49a a6c6 macw %d6u,%a2u,>>,%a2@\+,%d2 + 2598: aeda a6c6 macw %d6u,%a2u,>>,%a2@\+,%sp + 259c: a29a a6e6 macw %d6u,%a2u,>>,%a2@\+&,%d1 + 25a0: a6da a6e6 macw %d6u,%a2u,>>,%a2@\+&,%a3 + 25a4: a49a a6e6 macw %d6u,%a2u,>>,%a2@\+&,%d2 + 25a8: aeda a6e6 macw %d6u,%a2u,>>,%a2@\+&,%sp + 25ac: a2ae a6c6 000a macw %d6u,%a2u,>>,%fp@\(10\),%d1 + 25b2: a6ee a6c6 000a macw %d6u,%a2u,>>,%fp@\(10\),%a3 + 25b8: a4ae a6c6 000a macw %d6u,%a2u,>>,%fp@\(10\),%d2 + 25be: aeee a6c6 000a macw %d6u,%a2u,>>,%fp@\(10\),%sp + 25c4: a2ae a6e6 000a macw %d6u,%a2u,>>,%fp@\(10\)&,%d1 + 25ca: a6ee a6e6 000a macw %d6u,%a2u,>>,%fp@\(10\)&,%a3 + 25d0: a4ae a6e6 000a macw %d6u,%a2u,>>,%fp@\(10\)&,%d2 + 25d6: aeee a6e6 000a macw %d6u,%a2u,>>,%fp@\(10\)&,%sp + 25dc: a2a1 a6c6 macw %d6u,%a2u,>>,%a1@-,%d1 + 25e0: a6e1 a6c6 macw %d6u,%a2u,>>,%a1@-,%a3 + 25e4: a4a1 a6c6 macw %d6u,%a2u,>>,%a1@-,%d2 + 25e8: aee1 a6c6 macw %d6u,%a2u,>>,%a1@-,%sp + 25ec: a2a1 a6e6 macw %d6u,%a2u,>>,%a1@-&,%d1 + 25f0: a6e1 a6e6 macw %d6u,%a2u,>>,%a1@-&,%a3 + 25f4: a4a1 a6e6 macw %d6u,%a2u,>>,%a1@-&,%d2 + 25f8: aee1 a6e6 macw %d6u,%a2u,>>,%a1@-&,%sp + 25fc: a293 3046 macw %d6u,%d3l,%a3@,%d1 + 2600: a6d3 3046 macw %d6u,%d3l,%a3@,%a3 + 2604: a493 3046 macw %d6u,%d3l,%a3@,%d2 + 2608: aed3 3046 macw %d6u,%d3l,%a3@,%sp + 260c: a293 3066 macw %d6u,%d3l,%a3@&,%d1 + 2610: a6d3 3066 macw %d6u,%d3l,%a3@&,%a3 + 2614: a493 3066 macw %d6u,%d3l,%a3@&,%d2 + 2618: aed3 3066 macw %d6u,%d3l,%a3@&,%sp + 261c: a29a 3046 macw %d6u,%d3l,%a2@\+,%d1 + 2620: a6da 3046 macw %d6u,%d3l,%a2@\+,%a3 + 2624: a49a 3046 macw %d6u,%d3l,%a2@\+,%d2 + 2628: aeda 3046 macw %d6u,%d3l,%a2@\+,%sp + 262c: a29a 3066 macw %d6u,%d3l,%a2@\+&,%d1 + 2630: a6da 3066 macw %d6u,%d3l,%a2@\+&,%a3 + 2634: a49a 3066 macw %d6u,%d3l,%a2@\+&,%d2 + 2638: aeda 3066 macw %d6u,%d3l,%a2@\+&,%sp + 263c: a2ae 3046 000a macw %d6u,%d3l,%fp@\(10\),%d1 + 2642: a6ee 3046 000a macw %d6u,%d3l,%fp@\(10\),%a3 + 2648: a4ae 3046 000a macw %d6u,%d3l,%fp@\(10\),%d2 + 264e: aeee 3046 000a macw %d6u,%d3l,%fp@\(10\),%sp + 2654: a2ae 3066 000a macw %d6u,%d3l,%fp@\(10\)&,%d1 + 265a: a6ee 3066 000a macw %d6u,%d3l,%fp@\(10\)&,%a3 + 2660: a4ae 3066 000a macw %d6u,%d3l,%fp@\(10\)&,%d2 + 2666: aeee 3066 000a macw %d6u,%d3l,%fp@\(10\)&,%sp + 266c: a2a1 3046 macw %d6u,%d3l,%a1@-,%d1 + 2670: a6e1 3046 macw %d6u,%d3l,%a1@-,%a3 + 2674: a4a1 3046 macw %d6u,%d3l,%a1@-,%d2 + 2678: aee1 3046 macw %d6u,%d3l,%a1@-,%sp + 267c: a2a1 3066 macw %d6u,%d3l,%a1@-&,%d1 + 2680: a6e1 3066 macw %d6u,%d3l,%a1@-&,%a3 + 2684: a4a1 3066 macw %d6u,%d3l,%a1@-&,%d2 + 2688: aee1 3066 macw %d6u,%d3l,%a1@-&,%sp + 268c: a293 3246 macw %d6u,%d3l,<<,%a3@,%d1 + 2690: a6d3 3246 macw %d6u,%d3l,<<,%a3@,%a3 + 2694: a493 3246 macw %d6u,%d3l,<<,%a3@,%d2 + 2698: aed3 3246 macw %d6u,%d3l,<<,%a3@,%sp + 269c: a293 3266 macw %d6u,%d3l,<<,%a3@&,%d1 + 26a0: a6d3 3266 macw %d6u,%d3l,<<,%a3@&,%a3 + 26a4: a493 3266 macw %d6u,%d3l,<<,%a3@&,%d2 + 26a8: aed3 3266 macw %d6u,%d3l,<<,%a3@&,%sp + 26ac: a29a 3246 macw %d6u,%d3l,<<,%a2@\+,%d1 + 26b0: a6da 3246 macw %d6u,%d3l,<<,%a2@\+,%a3 + 26b4: a49a 3246 macw %d6u,%d3l,<<,%a2@\+,%d2 + 26b8: aeda 3246 macw %d6u,%d3l,<<,%a2@\+,%sp + 26bc: a29a 3266 macw %d6u,%d3l,<<,%a2@\+&,%d1 + 26c0: a6da 3266 macw %d6u,%d3l,<<,%a2@\+&,%a3 + 26c4: a49a 3266 macw %d6u,%d3l,<<,%a2@\+&,%d2 + 26c8: aeda 3266 macw %d6u,%d3l,<<,%a2@\+&,%sp + 26cc: a2ae 3246 000a macw %d6u,%d3l,<<,%fp@\(10\),%d1 + 26d2: a6ee 3246 000a macw %d6u,%d3l,<<,%fp@\(10\),%a3 + 26d8: a4ae 3246 000a macw %d6u,%d3l,<<,%fp@\(10\),%d2 + 26de: aeee 3246 000a macw %d6u,%d3l,<<,%fp@\(10\),%sp + 26e4: a2ae 3266 000a macw %d6u,%d3l,<<,%fp@\(10\)&,%d1 + 26ea: a6ee 3266 000a macw %d6u,%d3l,<<,%fp@\(10\)&,%a3 + 26f0: a4ae 3266 000a macw %d6u,%d3l,<<,%fp@\(10\)&,%d2 + 26f6: aeee 3266 000a macw %d6u,%d3l,<<,%fp@\(10\)&,%sp + 26fc: a2a1 3246 macw %d6u,%d3l,<<,%a1@-,%d1 + 2700: a6e1 3246 macw %d6u,%d3l,<<,%a1@-,%a3 + 2704: a4a1 3246 macw %d6u,%d3l,<<,%a1@-,%d2 + 2708: aee1 3246 macw %d6u,%d3l,<<,%a1@-,%sp + 270c: a2a1 3266 macw %d6u,%d3l,<<,%a1@-&,%d1 + 2710: a6e1 3266 macw %d6u,%d3l,<<,%a1@-&,%a3 + 2714: a4a1 3266 macw %d6u,%d3l,<<,%a1@-&,%d2 + 2718: aee1 3266 macw %d6u,%d3l,<<,%a1@-&,%sp + 271c: a293 3646 macw %d6u,%d3l,>>,%a3@,%d1 + 2720: a6d3 3646 macw %d6u,%d3l,>>,%a3@,%a3 + 2724: a493 3646 macw %d6u,%d3l,>>,%a3@,%d2 + 2728: aed3 3646 macw %d6u,%d3l,>>,%a3@,%sp + 272c: a293 3666 macw %d6u,%d3l,>>,%a3@&,%d1 + 2730: a6d3 3666 macw %d6u,%d3l,>>,%a3@&,%a3 + 2734: a493 3666 macw %d6u,%d3l,>>,%a3@&,%d2 + 2738: aed3 3666 macw %d6u,%d3l,>>,%a3@&,%sp + 273c: a29a 3646 macw %d6u,%d3l,>>,%a2@\+,%d1 + 2740: a6da 3646 macw %d6u,%d3l,>>,%a2@\+,%a3 + 2744: a49a 3646 macw %d6u,%d3l,>>,%a2@\+,%d2 + 2748: aeda 3646 macw %d6u,%d3l,>>,%a2@\+,%sp + 274c: a29a 3666 macw %d6u,%d3l,>>,%a2@\+&,%d1 + 2750: a6da 3666 macw %d6u,%d3l,>>,%a2@\+&,%a3 + 2754: a49a 3666 macw %d6u,%d3l,>>,%a2@\+&,%d2 + 2758: aeda 3666 macw %d6u,%d3l,>>,%a2@\+&,%sp + 275c: a2ae 3646 000a macw %d6u,%d3l,>>,%fp@\(10\),%d1 + 2762: a6ee 3646 000a macw %d6u,%d3l,>>,%fp@\(10\),%a3 + 2768: a4ae 3646 000a macw %d6u,%d3l,>>,%fp@\(10\),%d2 + 276e: aeee 3646 000a macw %d6u,%d3l,>>,%fp@\(10\),%sp + 2774: a2ae 3666 000a macw %d6u,%d3l,>>,%fp@\(10\)&,%d1 + 277a: a6ee 3666 000a macw %d6u,%d3l,>>,%fp@\(10\)&,%a3 + 2780: a4ae 3666 000a macw %d6u,%d3l,>>,%fp@\(10\)&,%d2 + 2786: aeee 3666 000a macw %d6u,%d3l,>>,%fp@\(10\)&,%sp + 278c: a2a1 3646 macw %d6u,%d3l,>>,%a1@-,%d1 + 2790: a6e1 3646 macw %d6u,%d3l,>>,%a1@-,%a3 + 2794: a4a1 3646 macw %d6u,%d3l,>>,%a1@-,%d2 + 2798: aee1 3646 macw %d6u,%d3l,>>,%a1@-,%sp + 279c: a2a1 3666 macw %d6u,%d3l,>>,%a1@-&,%d1 + 27a0: a6e1 3666 macw %d6u,%d3l,>>,%a1@-&,%a3 + 27a4: a4a1 3666 macw %d6u,%d3l,>>,%a1@-&,%d2 + 27a8: aee1 3666 macw %d6u,%d3l,>>,%a1@-&,%sp + 27ac: a293 3246 macw %d6u,%d3l,<<,%a3@,%d1 + 27b0: a6d3 3246 macw %d6u,%d3l,<<,%a3@,%a3 + 27b4: a493 3246 macw %d6u,%d3l,<<,%a3@,%d2 + 27b8: aed3 3246 macw %d6u,%d3l,<<,%a3@,%sp + 27bc: a293 3266 macw %d6u,%d3l,<<,%a3@&,%d1 + 27c0: a6d3 3266 macw %d6u,%d3l,<<,%a3@&,%a3 + 27c4: a493 3266 macw %d6u,%d3l,<<,%a3@&,%d2 + 27c8: aed3 3266 macw %d6u,%d3l,<<,%a3@&,%sp + 27cc: a29a 3246 macw %d6u,%d3l,<<,%a2@\+,%d1 + 27d0: a6da 3246 macw %d6u,%d3l,<<,%a2@\+,%a3 + 27d4: a49a 3246 macw %d6u,%d3l,<<,%a2@\+,%d2 + 27d8: aeda 3246 macw %d6u,%d3l,<<,%a2@\+,%sp + 27dc: a29a 3266 macw %d6u,%d3l,<<,%a2@\+&,%d1 + 27e0: a6da 3266 macw %d6u,%d3l,<<,%a2@\+&,%a3 + 27e4: a49a 3266 macw %d6u,%d3l,<<,%a2@\+&,%d2 + 27e8: aeda 3266 macw %d6u,%d3l,<<,%a2@\+&,%sp + 27ec: a2ae 3246 000a macw %d6u,%d3l,<<,%fp@\(10\),%d1 + 27f2: a6ee 3246 000a macw %d6u,%d3l,<<,%fp@\(10\),%a3 + 27f8: a4ae 3246 000a macw %d6u,%d3l,<<,%fp@\(10\),%d2 + 27fe: aeee 3246 000a macw %d6u,%d3l,<<,%fp@\(10\),%sp + 2804: a2ae 3266 000a macw %d6u,%d3l,<<,%fp@\(10\)&,%d1 + 280a: a6ee 3266 000a macw %d6u,%d3l,<<,%fp@\(10\)&,%a3 + 2810: a4ae 3266 000a macw %d6u,%d3l,<<,%fp@\(10\)&,%d2 + 2816: aeee 3266 000a macw %d6u,%d3l,<<,%fp@\(10\)&,%sp + 281c: a2a1 3246 macw %d6u,%d3l,<<,%a1@-,%d1 + 2820: a6e1 3246 macw %d6u,%d3l,<<,%a1@-,%a3 + 2824: a4a1 3246 macw %d6u,%d3l,<<,%a1@-,%d2 + 2828: aee1 3246 macw %d6u,%d3l,<<,%a1@-,%sp + 282c: a2a1 3266 macw %d6u,%d3l,<<,%a1@-&,%d1 + 2830: a6e1 3266 macw %d6u,%d3l,<<,%a1@-&,%a3 + 2834: a4a1 3266 macw %d6u,%d3l,<<,%a1@-&,%d2 + 2838: aee1 3266 macw %d6u,%d3l,<<,%a1@-&,%sp + 283c: a293 3646 macw %d6u,%d3l,>>,%a3@,%d1 + 2840: a6d3 3646 macw %d6u,%d3l,>>,%a3@,%a3 + 2844: a493 3646 macw %d6u,%d3l,>>,%a3@,%d2 + 2848: aed3 3646 macw %d6u,%d3l,>>,%a3@,%sp + 284c: a293 3666 macw %d6u,%d3l,>>,%a3@&,%d1 + 2850: a6d3 3666 macw %d6u,%d3l,>>,%a3@&,%a3 + 2854: a493 3666 macw %d6u,%d3l,>>,%a3@&,%d2 + 2858: aed3 3666 macw %d6u,%d3l,>>,%a3@&,%sp + 285c: a29a 3646 macw %d6u,%d3l,>>,%a2@\+,%d1 + 2860: a6da 3646 macw %d6u,%d3l,>>,%a2@\+,%a3 + 2864: a49a 3646 macw %d6u,%d3l,>>,%a2@\+,%d2 + 2868: aeda 3646 macw %d6u,%d3l,>>,%a2@\+,%sp + 286c: a29a 3666 macw %d6u,%d3l,>>,%a2@\+&,%d1 + 2870: a6da 3666 macw %d6u,%d3l,>>,%a2@\+&,%a3 + 2874: a49a 3666 macw %d6u,%d3l,>>,%a2@\+&,%d2 + 2878: aeda 3666 macw %d6u,%d3l,>>,%a2@\+&,%sp + 287c: a2ae 3646 000a macw %d6u,%d3l,>>,%fp@\(10\),%d1 + 2882: a6ee 3646 000a macw %d6u,%d3l,>>,%fp@\(10\),%a3 + 2888: a4ae 3646 000a macw %d6u,%d3l,>>,%fp@\(10\),%d2 + 288e: aeee 3646 000a macw %d6u,%d3l,>>,%fp@\(10\),%sp + 2894: a2ae 3666 000a macw %d6u,%d3l,>>,%fp@\(10\)&,%d1 + 289a: a6ee 3666 000a macw %d6u,%d3l,>>,%fp@\(10\)&,%a3 + 28a0: a4ae 3666 000a macw %d6u,%d3l,>>,%fp@\(10\)&,%d2 + 28a6: aeee 3666 000a macw %d6u,%d3l,>>,%fp@\(10\)&,%sp + 28ac: a2a1 3646 macw %d6u,%d3l,>>,%a1@-,%d1 + 28b0: a6e1 3646 macw %d6u,%d3l,>>,%a1@-,%a3 + 28b4: a4a1 3646 macw %d6u,%d3l,>>,%a1@-,%d2 + 28b8: aee1 3646 macw %d6u,%d3l,>>,%a1@-,%sp + 28bc: a2a1 3666 macw %d6u,%d3l,>>,%a1@-&,%d1 + 28c0: a6e1 3666 macw %d6u,%d3l,>>,%a1@-&,%a3 + 28c4: a4a1 3666 macw %d6u,%d3l,>>,%a1@-&,%d2 + 28c8: aee1 3666 macw %d6u,%d3l,>>,%a1@-&,%sp + 28cc: a293 f0c6 macw %d6u,%a7u,%a3@,%d1 + 28d0: a6d3 f0c6 macw %d6u,%a7u,%a3@,%a3 + 28d4: a493 f0c6 macw %d6u,%a7u,%a3@,%d2 + 28d8: aed3 f0c6 macw %d6u,%a7u,%a3@,%sp + 28dc: a293 f0e6 macw %d6u,%a7u,%a3@&,%d1 + 28e0: a6d3 f0e6 macw %d6u,%a7u,%a3@&,%a3 + 28e4: a493 f0e6 macw %d6u,%a7u,%a3@&,%d2 + 28e8: aed3 f0e6 macw %d6u,%a7u,%a3@&,%sp + 28ec: a29a f0c6 macw %d6u,%a7u,%a2@\+,%d1 + 28f0: a6da f0c6 macw %d6u,%a7u,%a2@\+,%a3 + 28f4: a49a f0c6 macw %d6u,%a7u,%a2@\+,%d2 + 28f8: aeda f0c6 macw %d6u,%a7u,%a2@\+,%sp + 28fc: a29a f0e6 macw %d6u,%a7u,%a2@\+&,%d1 + 2900: a6da f0e6 macw %d6u,%a7u,%a2@\+&,%a3 + 2904: a49a f0e6 macw %d6u,%a7u,%a2@\+&,%d2 + 2908: aeda f0e6 macw %d6u,%a7u,%a2@\+&,%sp + 290c: a2ae f0c6 000a macw %d6u,%a7u,%fp@\(10\),%d1 + 2912: a6ee f0c6 000a macw %d6u,%a7u,%fp@\(10\),%a3 + 2918: a4ae f0c6 000a macw %d6u,%a7u,%fp@\(10\),%d2 + 291e: aeee f0c6 000a macw %d6u,%a7u,%fp@\(10\),%sp + 2924: a2ae f0e6 000a macw %d6u,%a7u,%fp@\(10\)&,%d1 + 292a: a6ee f0e6 000a macw %d6u,%a7u,%fp@\(10\)&,%a3 + 2930: a4ae f0e6 000a macw %d6u,%a7u,%fp@\(10\)&,%d2 + 2936: aeee f0e6 000a macw %d6u,%a7u,%fp@\(10\)&,%sp + 293c: a2a1 f0c6 macw %d6u,%a7u,%a1@-,%d1 + 2940: a6e1 f0c6 macw %d6u,%a7u,%a1@-,%a3 + 2944: a4a1 f0c6 macw %d6u,%a7u,%a1@-,%d2 + 2948: aee1 f0c6 macw %d6u,%a7u,%a1@-,%sp + 294c: a2a1 f0e6 macw %d6u,%a7u,%a1@-&,%d1 + 2950: a6e1 f0e6 macw %d6u,%a7u,%a1@-&,%a3 + 2954: a4a1 f0e6 macw %d6u,%a7u,%a1@-&,%d2 + 2958: aee1 f0e6 macw %d6u,%a7u,%a1@-&,%sp + 295c: a293 f2c6 macw %d6u,%a7u,<<,%a3@,%d1 + 2960: a6d3 f2c6 macw %d6u,%a7u,<<,%a3@,%a3 + 2964: a493 f2c6 macw %d6u,%a7u,<<,%a3@,%d2 + 2968: aed3 f2c6 macw %d6u,%a7u,<<,%a3@,%sp + 296c: a293 f2e6 macw %d6u,%a7u,<<,%a3@&,%d1 + 2970: a6d3 f2e6 macw %d6u,%a7u,<<,%a3@&,%a3 + 2974: a493 f2e6 macw %d6u,%a7u,<<,%a3@&,%d2 + 2978: aed3 f2e6 macw %d6u,%a7u,<<,%a3@&,%sp + 297c: a29a f2c6 macw %d6u,%a7u,<<,%a2@\+,%d1 + 2980: a6da f2c6 macw %d6u,%a7u,<<,%a2@\+,%a3 + 2984: a49a f2c6 macw %d6u,%a7u,<<,%a2@\+,%d2 + 2988: aeda f2c6 macw %d6u,%a7u,<<,%a2@\+,%sp + 298c: a29a f2e6 macw %d6u,%a7u,<<,%a2@\+&,%d1 + 2990: a6da f2e6 macw %d6u,%a7u,<<,%a2@\+&,%a3 + 2994: a49a f2e6 macw %d6u,%a7u,<<,%a2@\+&,%d2 + 2998: aeda f2e6 macw %d6u,%a7u,<<,%a2@\+&,%sp + 299c: a2ae f2c6 000a macw %d6u,%a7u,<<,%fp@\(10\),%d1 + 29a2: a6ee f2c6 000a macw %d6u,%a7u,<<,%fp@\(10\),%a3 + 29a8: a4ae f2c6 000a macw %d6u,%a7u,<<,%fp@\(10\),%d2 + 29ae: aeee f2c6 000a macw %d6u,%a7u,<<,%fp@\(10\),%sp + 29b4: a2ae f2e6 000a macw %d6u,%a7u,<<,%fp@\(10\)&,%d1 + 29ba: a6ee f2e6 000a macw %d6u,%a7u,<<,%fp@\(10\)&,%a3 + 29c0: a4ae f2e6 000a macw %d6u,%a7u,<<,%fp@\(10\)&,%d2 + 29c6: aeee f2e6 000a macw %d6u,%a7u,<<,%fp@\(10\)&,%sp + 29cc: a2a1 f2c6 macw %d6u,%a7u,<<,%a1@-,%d1 + 29d0: a6e1 f2c6 macw %d6u,%a7u,<<,%a1@-,%a3 + 29d4: a4a1 f2c6 macw %d6u,%a7u,<<,%a1@-,%d2 + 29d8: aee1 f2c6 macw %d6u,%a7u,<<,%a1@-,%sp + 29dc: a2a1 f2e6 macw %d6u,%a7u,<<,%a1@-&,%d1 + 29e0: a6e1 f2e6 macw %d6u,%a7u,<<,%a1@-&,%a3 + 29e4: a4a1 f2e6 macw %d6u,%a7u,<<,%a1@-&,%d2 + 29e8: aee1 f2e6 macw %d6u,%a7u,<<,%a1@-&,%sp + 29ec: a293 f6c6 macw %d6u,%a7u,>>,%a3@,%d1 + 29f0: a6d3 f6c6 macw %d6u,%a7u,>>,%a3@,%a3 + 29f4: a493 f6c6 macw %d6u,%a7u,>>,%a3@,%d2 + 29f8: aed3 f6c6 macw %d6u,%a7u,>>,%a3@,%sp + 29fc: a293 f6e6 macw %d6u,%a7u,>>,%a3@&,%d1 + 2a00: a6d3 f6e6 macw %d6u,%a7u,>>,%a3@&,%a3 + 2a04: a493 f6e6 macw %d6u,%a7u,>>,%a3@&,%d2 + 2a08: aed3 f6e6 macw %d6u,%a7u,>>,%a3@&,%sp + 2a0c: a29a f6c6 macw %d6u,%a7u,>>,%a2@\+,%d1 + 2a10: a6da f6c6 macw %d6u,%a7u,>>,%a2@\+,%a3 + 2a14: a49a f6c6 macw %d6u,%a7u,>>,%a2@\+,%d2 + 2a18: aeda f6c6 macw %d6u,%a7u,>>,%a2@\+,%sp + 2a1c: a29a f6e6 macw %d6u,%a7u,>>,%a2@\+&,%d1 + 2a20: a6da f6e6 macw %d6u,%a7u,>>,%a2@\+&,%a3 + 2a24: a49a f6e6 macw %d6u,%a7u,>>,%a2@\+&,%d2 + 2a28: aeda f6e6 macw %d6u,%a7u,>>,%a2@\+&,%sp + 2a2c: a2ae f6c6 000a macw %d6u,%a7u,>>,%fp@\(10\),%d1 + 2a32: a6ee f6c6 000a macw %d6u,%a7u,>>,%fp@\(10\),%a3 + 2a38: a4ae f6c6 000a macw %d6u,%a7u,>>,%fp@\(10\),%d2 + 2a3e: aeee f6c6 000a macw %d6u,%a7u,>>,%fp@\(10\),%sp + 2a44: a2ae f6e6 000a macw %d6u,%a7u,>>,%fp@\(10\)&,%d1 + 2a4a: a6ee f6e6 000a macw %d6u,%a7u,>>,%fp@\(10\)&,%a3 + 2a50: a4ae f6e6 000a macw %d6u,%a7u,>>,%fp@\(10\)&,%d2 + 2a56: aeee f6e6 000a macw %d6u,%a7u,>>,%fp@\(10\)&,%sp + 2a5c: a2a1 f6c6 macw %d6u,%a7u,>>,%a1@-,%d1 + 2a60: a6e1 f6c6 macw %d6u,%a7u,>>,%a1@-,%a3 + 2a64: a4a1 f6c6 macw %d6u,%a7u,>>,%a1@-,%d2 + 2a68: aee1 f6c6 macw %d6u,%a7u,>>,%a1@-,%sp + 2a6c: a2a1 f6e6 macw %d6u,%a7u,>>,%a1@-&,%d1 + 2a70: a6e1 f6e6 macw %d6u,%a7u,>>,%a1@-&,%a3 + 2a74: a4a1 f6e6 macw %d6u,%a7u,>>,%a1@-&,%d2 + 2a78: aee1 f6e6 macw %d6u,%a7u,>>,%a1@-&,%sp + 2a7c: a293 f2c6 macw %d6u,%a7u,<<,%a3@,%d1 + 2a80: a6d3 f2c6 macw %d6u,%a7u,<<,%a3@,%a3 + 2a84: a493 f2c6 macw %d6u,%a7u,<<,%a3@,%d2 + 2a88: aed3 f2c6 macw %d6u,%a7u,<<,%a3@,%sp + 2a8c: a293 f2e6 macw %d6u,%a7u,<<,%a3@&,%d1 + 2a90: a6d3 f2e6 macw %d6u,%a7u,<<,%a3@&,%a3 + 2a94: a493 f2e6 macw %d6u,%a7u,<<,%a3@&,%d2 + 2a98: aed3 f2e6 macw %d6u,%a7u,<<,%a3@&,%sp + 2a9c: a29a f2c6 macw %d6u,%a7u,<<,%a2@\+,%d1 + 2aa0: a6da f2c6 macw %d6u,%a7u,<<,%a2@\+,%a3 + 2aa4: a49a f2c6 macw %d6u,%a7u,<<,%a2@\+,%d2 + 2aa8: aeda f2c6 macw %d6u,%a7u,<<,%a2@\+,%sp + 2aac: a29a f2e6 macw %d6u,%a7u,<<,%a2@\+&,%d1 + 2ab0: a6da f2e6 macw %d6u,%a7u,<<,%a2@\+&,%a3 + 2ab4: a49a f2e6 macw %d6u,%a7u,<<,%a2@\+&,%d2 + 2ab8: aeda f2e6 macw %d6u,%a7u,<<,%a2@\+&,%sp + 2abc: a2ae f2c6 000a macw %d6u,%a7u,<<,%fp@\(10\),%d1 + 2ac2: a6ee f2c6 000a macw %d6u,%a7u,<<,%fp@\(10\),%a3 + 2ac8: a4ae f2c6 000a macw %d6u,%a7u,<<,%fp@\(10\),%d2 + 2ace: aeee f2c6 000a macw %d6u,%a7u,<<,%fp@\(10\),%sp + 2ad4: a2ae f2e6 000a macw %d6u,%a7u,<<,%fp@\(10\)&,%d1 + 2ada: a6ee f2e6 000a macw %d6u,%a7u,<<,%fp@\(10\)&,%a3 + 2ae0: a4ae f2e6 000a macw %d6u,%a7u,<<,%fp@\(10\)&,%d2 + 2ae6: aeee f2e6 000a macw %d6u,%a7u,<<,%fp@\(10\)&,%sp + 2aec: a2a1 f2c6 macw %d6u,%a7u,<<,%a1@-,%d1 + 2af0: a6e1 f2c6 macw %d6u,%a7u,<<,%a1@-,%a3 + 2af4: a4a1 f2c6 macw %d6u,%a7u,<<,%a1@-,%d2 + 2af8: aee1 f2c6 macw %d6u,%a7u,<<,%a1@-,%sp + 2afc: a2a1 f2e6 macw %d6u,%a7u,<<,%a1@-&,%d1 + 2b00: a6e1 f2e6 macw %d6u,%a7u,<<,%a1@-&,%a3 + 2b04: a4a1 f2e6 macw %d6u,%a7u,<<,%a1@-&,%d2 + 2b08: aee1 f2e6 macw %d6u,%a7u,<<,%a1@-&,%sp + 2b0c: a293 f6c6 macw %d6u,%a7u,>>,%a3@,%d1 + 2b10: a6d3 f6c6 macw %d6u,%a7u,>>,%a3@,%a3 + 2b14: a493 f6c6 macw %d6u,%a7u,>>,%a3@,%d2 + 2b18: aed3 f6c6 macw %d6u,%a7u,>>,%a3@,%sp + 2b1c: a293 f6e6 macw %d6u,%a7u,>>,%a3@&,%d1 + 2b20: a6d3 f6e6 macw %d6u,%a7u,>>,%a3@&,%a3 + 2b24: a493 f6e6 macw %d6u,%a7u,>>,%a3@&,%d2 + 2b28: aed3 f6e6 macw %d6u,%a7u,>>,%a3@&,%sp + 2b2c: a29a f6c6 macw %d6u,%a7u,>>,%a2@\+,%d1 + 2b30: a6da f6c6 macw %d6u,%a7u,>>,%a2@\+,%a3 + 2b34: a49a f6c6 macw %d6u,%a7u,>>,%a2@\+,%d2 + 2b38: aeda f6c6 macw %d6u,%a7u,>>,%a2@\+,%sp + 2b3c: a29a f6e6 macw %d6u,%a7u,>>,%a2@\+&,%d1 + 2b40: a6da f6e6 macw %d6u,%a7u,>>,%a2@\+&,%a3 + 2b44: a49a f6e6 macw %d6u,%a7u,>>,%a2@\+&,%d2 + 2b48: aeda f6e6 macw %d6u,%a7u,>>,%a2@\+&,%sp + 2b4c: a2ae f6c6 000a macw %d6u,%a7u,>>,%fp@\(10\),%d1 + 2b52: a6ee f6c6 000a macw %d6u,%a7u,>>,%fp@\(10\),%a3 + 2b58: a4ae f6c6 000a macw %d6u,%a7u,>>,%fp@\(10\),%d2 + 2b5e: aeee f6c6 000a macw %d6u,%a7u,>>,%fp@\(10\),%sp + 2b64: a2ae f6e6 000a macw %d6u,%a7u,>>,%fp@\(10\)&,%d1 + 2b6a: a6ee f6e6 000a macw %d6u,%a7u,>>,%fp@\(10\)&,%a3 + 2b70: a4ae f6e6 000a macw %d6u,%a7u,>>,%fp@\(10\)&,%d2 + 2b76: aeee f6e6 000a macw %d6u,%a7u,>>,%fp@\(10\)&,%sp + 2b7c: a2a1 f6c6 macw %d6u,%a7u,>>,%a1@-,%d1 + 2b80: a6e1 f6c6 macw %d6u,%a7u,>>,%a1@-,%a3 + 2b84: a4a1 f6c6 macw %d6u,%a7u,>>,%a1@-,%d2 + 2b88: aee1 f6c6 macw %d6u,%a7u,>>,%a1@-,%sp + 2b8c: a2a1 f6e6 macw %d6u,%a7u,>>,%a1@-&,%d1 + 2b90: a6e1 f6e6 macw %d6u,%a7u,>>,%a1@-&,%a3 + 2b94: a4a1 f6e6 macw %d6u,%a7u,>>,%a1@-&,%d2 + 2b98: aee1 f6e6 macw %d6u,%a7u,>>,%a1@-&,%sp + 2b9c: a293 1046 macw %d6u,%d1l,%a3@,%d1 + 2ba0: a6d3 1046 macw %d6u,%d1l,%a3@,%a3 + 2ba4: a493 1046 macw %d6u,%d1l,%a3@,%d2 + 2ba8: aed3 1046 macw %d6u,%d1l,%a3@,%sp + 2bac: a293 1066 macw %d6u,%d1l,%a3@&,%d1 + 2bb0: a6d3 1066 macw %d6u,%d1l,%a3@&,%a3 + 2bb4: a493 1066 macw %d6u,%d1l,%a3@&,%d2 + 2bb8: aed3 1066 macw %d6u,%d1l,%a3@&,%sp + 2bbc: a29a 1046 macw %d6u,%d1l,%a2@\+,%d1 + 2bc0: a6da 1046 macw %d6u,%d1l,%a2@\+,%a3 + 2bc4: a49a 1046 macw %d6u,%d1l,%a2@\+,%d2 + 2bc8: aeda 1046 macw %d6u,%d1l,%a2@\+,%sp + 2bcc: a29a 1066 macw %d6u,%d1l,%a2@\+&,%d1 + 2bd0: a6da 1066 macw %d6u,%d1l,%a2@\+&,%a3 + 2bd4: a49a 1066 macw %d6u,%d1l,%a2@\+&,%d2 + 2bd8: aeda 1066 macw %d6u,%d1l,%a2@\+&,%sp + 2bdc: a2ae 1046 000a macw %d6u,%d1l,%fp@\(10\),%d1 + 2be2: a6ee 1046 000a macw %d6u,%d1l,%fp@\(10\),%a3 + 2be8: a4ae 1046 000a macw %d6u,%d1l,%fp@\(10\),%d2 + 2bee: aeee 1046 000a macw %d6u,%d1l,%fp@\(10\),%sp + 2bf4: a2ae 1066 000a macw %d6u,%d1l,%fp@\(10\)&,%d1 + 2bfa: a6ee 1066 000a macw %d6u,%d1l,%fp@\(10\)&,%a3 + 2c00: a4ae 1066 000a macw %d6u,%d1l,%fp@\(10\)&,%d2 + 2c06: aeee 1066 000a macw %d6u,%d1l,%fp@\(10\)&,%sp + 2c0c: a2a1 1046 macw %d6u,%d1l,%a1@-,%d1 + 2c10: a6e1 1046 macw %d6u,%d1l,%a1@-,%a3 + 2c14: a4a1 1046 macw %d6u,%d1l,%a1@-,%d2 + 2c18: aee1 1046 macw %d6u,%d1l,%a1@-,%sp + 2c1c: a2a1 1066 macw %d6u,%d1l,%a1@-&,%d1 + 2c20: a6e1 1066 macw %d6u,%d1l,%a1@-&,%a3 + 2c24: a4a1 1066 macw %d6u,%d1l,%a1@-&,%d2 + 2c28: aee1 1066 macw %d6u,%d1l,%a1@-&,%sp + 2c2c: a293 1246 macw %d6u,%d1l,<<,%a3@,%d1 + 2c30: a6d3 1246 macw %d6u,%d1l,<<,%a3@,%a3 + 2c34: a493 1246 macw %d6u,%d1l,<<,%a3@,%d2 + 2c38: aed3 1246 macw %d6u,%d1l,<<,%a3@,%sp + 2c3c: a293 1266 macw %d6u,%d1l,<<,%a3@&,%d1 + 2c40: a6d3 1266 macw %d6u,%d1l,<<,%a3@&,%a3 + 2c44: a493 1266 macw %d6u,%d1l,<<,%a3@&,%d2 + 2c48: aed3 1266 macw %d6u,%d1l,<<,%a3@&,%sp + 2c4c: a29a 1246 macw %d6u,%d1l,<<,%a2@\+,%d1 + 2c50: a6da 1246 macw %d6u,%d1l,<<,%a2@\+,%a3 + 2c54: a49a 1246 macw %d6u,%d1l,<<,%a2@\+,%d2 + 2c58: aeda 1246 macw %d6u,%d1l,<<,%a2@\+,%sp + 2c5c: a29a 1266 macw %d6u,%d1l,<<,%a2@\+&,%d1 + 2c60: a6da 1266 macw %d6u,%d1l,<<,%a2@\+&,%a3 + 2c64: a49a 1266 macw %d6u,%d1l,<<,%a2@\+&,%d2 + 2c68: aeda 1266 macw %d6u,%d1l,<<,%a2@\+&,%sp + 2c6c: a2ae 1246 000a macw %d6u,%d1l,<<,%fp@\(10\),%d1 + 2c72: a6ee 1246 000a macw %d6u,%d1l,<<,%fp@\(10\),%a3 + 2c78: a4ae 1246 000a macw %d6u,%d1l,<<,%fp@\(10\),%d2 + 2c7e: aeee 1246 000a macw %d6u,%d1l,<<,%fp@\(10\),%sp + 2c84: a2ae 1266 000a macw %d6u,%d1l,<<,%fp@\(10\)&,%d1 + 2c8a: a6ee 1266 000a macw %d6u,%d1l,<<,%fp@\(10\)&,%a3 + 2c90: a4ae 1266 000a macw %d6u,%d1l,<<,%fp@\(10\)&,%d2 + 2c96: aeee 1266 000a macw %d6u,%d1l,<<,%fp@\(10\)&,%sp + 2c9c: a2a1 1246 macw %d6u,%d1l,<<,%a1@-,%d1 + 2ca0: a6e1 1246 macw %d6u,%d1l,<<,%a1@-,%a3 + 2ca4: a4a1 1246 macw %d6u,%d1l,<<,%a1@-,%d2 + 2ca8: aee1 1246 macw %d6u,%d1l,<<,%a1@-,%sp + 2cac: a2a1 1266 macw %d6u,%d1l,<<,%a1@-&,%d1 + 2cb0: a6e1 1266 macw %d6u,%d1l,<<,%a1@-&,%a3 + 2cb4: a4a1 1266 macw %d6u,%d1l,<<,%a1@-&,%d2 + 2cb8: aee1 1266 macw %d6u,%d1l,<<,%a1@-&,%sp + 2cbc: a293 1646 macw %d6u,%d1l,>>,%a3@,%d1 + 2cc0: a6d3 1646 macw %d6u,%d1l,>>,%a3@,%a3 + 2cc4: a493 1646 macw %d6u,%d1l,>>,%a3@,%d2 + 2cc8: aed3 1646 macw %d6u,%d1l,>>,%a3@,%sp + 2ccc: a293 1666 macw %d6u,%d1l,>>,%a3@&,%d1 + 2cd0: a6d3 1666 macw %d6u,%d1l,>>,%a3@&,%a3 + 2cd4: a493 1666 macw %d6u,%d1l,>>,%a3@&,%d2 + 2cd8: aed3 1666 macw %d6u,%d1l,>>,%a3@&,%sp + 2cdc: a29a 1646 macw %d6u,%d1l,>>,%a2@\+,%d1 + 2ce0: a6da 1646 macw %d6u,%d1l,>>,%a2@\+,%a3 + 2ce4: a49a 1646 macw %d6u,%d1l,>>,%a2@\+,%d2 + 2ce8: aeda 1646 macw %d6u,%d1l,>>,%a2@\+,%sp + 2cec: a29a 1666 macw %d6u,%d1l,>>,%a2@\+&,%d1 + 2cf0: a6da 1666 macw %d6u,%d1l,>>,%a2@\+&,%a3 + 2cf4: a49a 1666 macw %d6u,%d1l,>>,%a2@\+&,%d2 + 2cf8: aeda 1666 macw %d6u,%d1l,>>,%a2@\+&,%sp + 2cfc: a2ae 1646 000a macw %d6u,%d1l,>>,%fp@\(10\),%d1 + 2d02: a6ee 1646 000a macw %d6u,%d1l,>>,%fp@\(10\),%a3 + 2d08: a4ae 1646 000a macw %d6u,%d1l,>>,%fp@\(10\),%d2 + 2d0e: aeee 1646 000a macw %d6u,%d1l,>>,%fp@\(10\),%sp + 2d14: a2ae 1666 000a macw %d6u,%d1l,>>,%fp@\(10\)&,%d1 + 2d1a: a6ee 1666 000a macw %d6u,%d1l,>>,%fp@\(10\)&,%a3 + 2d20: a4ae 1666 000a macw %d6u,%d1l,>>,%fp@\(10\)&,%d2 + 2d26: aeee 1666 000a macw %d6u,%d1l,>>,%fp@\(10\)&,%sp + 2d2c: a2a1 1646 macw %d6u,%d1l,>>,%a1@-,%d1 + 2d30: a6e1 1646 macw %d6u,%d1l,>>,%a1@-,%a3 + 2d34: a4a1 1646 macw %d6u,%d1l,>>,%a1@-,%d2 + 2d38: aee1 1646 macw %d6u,%d1l,>>,%a1@-,%sp + 2d3c: a2a1 1666 macw %d6u,%d1l,>>,%a1@-&,%d1 + 2d40: a6e1 1666 macw %d6u,%d1l,>>,%a1@-&,%a3 + 2d44: a4a1 1666 macw %d6u,%d1l,>>,%a1@-&,%d2 + 2d48: aee1 1666 macw %d6u,%d1l,>>,%a1@-&,%sp + 2d4c: a293 1246 macw %d6u,%d1l,<<,%a3@,%d1 + 2d50: a6d3 1246 macw %d6u,%d1l,<<,%a3@,%a3 + 2d54: a493 1246 macw %d6u,%d1l,<<,%a3@,%d2 + 2d58: aed3 1246 macw %d6u,%d1l,<<,%a3@,%sp + 2d5c: a293 1266 macw %d6u,%d1l,<<,%a3@&,%d1 + 2d60: a6d3 1266 macw %d6u,%d1l,<<,%a3@&,%a3 + 2d64: a493 1266 macw %d6u,%d1l,<<,%a3@&,%d2 + 2d68: aed3 1266 macw %d6u,%d1l,<<,%a3@&,%sp + 2d6c: a29a 1246 macw %d6u,%d1l,<<,%a2@\+,%d1 + 2d70: a6da 1246 macw %d6u,%d1l,<<,%a2@\+,%a3 + 2d74: a49a 1246 macw %d6u,%d1l,<<,%a2@\+,%d2 + 2d78: aeda 1246 macw %d6u,%d1l,<<,%a2@\+,%sp + 2d7c: a29a 1266 macw %d6u,%d1l,<<,%a2@\+&,%d1 + 2d80: a6da 1266 macw %d6u,%d1l,<<,%a2@\+&,%a3 + 2d84: a49a 1266 macw %d6u,%d1l,<<,%a2@\+&,%d2 + 2d88: aeda 1266 macw %d6u,%d1l,<<,%a2@\+&,%sp + 2d8c: a2ae 1246 000a macw %d6u,%d1l,<<,%fp@\(10\),%d1 + 2d92: a6ee 1246 000a macw %d6u,%d1l,<<,%fp@\(10\),%a3 + 2d98: a4ae 1246 000a macw %d6u,%d1l,<<,%fp@\(10\),%d2 + 2d9e: aeee 1246 000a macw %d6u,%d1l,<<,%fp@\(10\),%sp + 2da4: a2ae 1266 000a macw %d6u,%d1l,<<,%fp@\(10\)&,%d1 + 2daa: a6ee 1266 000a macw %d6u,%d1l,<<,%fp@\(10\)&,%a3 + 2db0: a4ae 1266 000a macw %d6u,%d1l,<<,%fp@\(10\)&,%d2 + 2db6: aeee 1266 000a macw %d6u,%d1l,<<,%fp@\(10\)&,%sp + 2dbc: a2a1 1246 macw %d6u,%d1l,<<,%a1@-,%d1 + 2dc0: a6e1 1246 macw %d6u,%d1l,<<,%a1@-,%a3 + 2dc4: a4a1 1246 macw %d6u,%d1l,<<,%a1@-,%d2 + 2dc8: aee1 1246 macw %d6u,%d1l,<<,%a1@-,%sp + 2dcc: a2a1 1266 macw %d6u,%d1l,<<,%a1@-&,%d1 + 2dd0: a6e1 1266 macw %d6u,%d1l,<<,%a1@-&,%a3 + 2dd4: a4a1 1266 macw %d6u,%d1l,<<,%a1@-&,%d2 + 2dd8: aee1 1266 macw %d6u,%d1l,<<,%a1@-&,%sp + 2ddc: a293 1646 macw %d6u,%d1l,>>,%a3@,%d1 + 2de0: a6d3 1646 macw %d6u,%d1l,>>,%a3@,%a3 + 2de4: a493 1646 macw %d6u,%d1l,>>,%a3@,%d2 + 2de8: aed3 1646 macw %d6u,%d1l,>>,%a3@,%sp + 2dec: a293 1666 macw %d6u,%d1l,>>,%a3@&,%d1 + 2df0: a6d3 1666 macw %d6u,%d1l,>>,%a3@&,%a3 + 2df4: a493 1666 macw %d6u,%d1l,>>,%a3@&,%d2 + 2df8: aed3 1666 macw %d6u,%d1l,>>,%a3@&,%sp + 2dfc: a29a 1646 macw %d6u,%d1l,>>,%a2@\+,%d1 + 2e00: a6da 1646 macw %d6u,%d1l,>>,%a2@\+,%a3 + 2e04: a49a 1646 macw %d6u,%d1l,>>,%a2@\+,%d2 + 2e08: aeda 1646 macw %d6u,%d1l,>>,%a2@\+,%sp + 2e0c: a29a 1666 macw %d6u,%d1l,>>,%a2@\+&,%d1 + 2e10: a6da 1666 macw %d6u,%d1l,>>,%a2@\+&,%a3 + 2e14: a49a 1666 macw %d6u,%d1l,>>,%a2@\+&,%d2 + 2e18: aeda 1666 macw %d6u,%d1l,>>,%a2@\+&,%sp + 2e1c: a2ae 1646 000a macw %d6u,%d1l,>>,%fp@\(10\),%d1 + 2e22: a6ee 1646 000a macw %d6u,%d1l,>>,%fp@\(10\),%a3 + 2e28: a4ae 1646 000a macw %d6u,%d1l,>>,%fp@\(10\),%d2 + 2e2e: aeee 1646 000a macw %d6u,%d1l,>>,%fp@\(10\),%sp + 2e34: a2ae 1666 000a macw %d6u,%d1l,>>,%fp@\(10\)&,%d1 + 2e3a: a6ee 1666 000a macw %d6u,%d1l,>>,%fp@\(10\)&,%a3 + 2e40: a4ae 1666 000a macw %d6u,%d1l,>>,%fp@\(10\)&,%d2 + 2e46: aeee 1666 000a macw %d6u,%d1l,>>,%fp@\(10\)&,%sp + 2e4c: a2a1 1646 macw %d6u,%d1l,>>,%a1@-,%d1 + 2e50: a6e1 1646 macw %d6u,%d1l,>>,%a1@-,%a3 + 2e54: a4a1 1646 macw %d6u,%d1l,>>,%a1@-,%d2 + 2e58: aee1 1646 macw %d6u,%d1l,>>,%a1@-,%sp + 2e5c: a2a1 1666 macw %d6u,%d1l,>>,%a1@-&,%d1 + 2e60: a6e1 1666 macw %d6u,%d1l,>>,%a1@-&,%a3 + 2e64: a4a1 1666 macw %d6u,%d1l,>>,%a1@-&,%d2 + 2e68: aee1 1666 macw %d6u,%d1l,>>,%a1@-&,%sp + 2e6c: a649 0800 macl %a1,%a3 + 2e70: a649 0a00 macl %a1,%a3,<< + 2e74: a649 0e00 macl %a1,%a3,>> + 2e78: a649 0a00 macl %a1,%a3,<< + 2e7c: a649 0e00 macl %a1,%a3,>> + 2e80: a809 0800 macl %a1,%d4 + 2e84: a809 0a00 macl %a1,%d4,<< + 2e88: a809 0e00 macl %a1,%d4,>> + 2e8c: a809 0a00 macl %a1,%d4,<< + 2e90: a809 0e00 macl %a1,%d4,>> + 2e94: a646 0800 macl %d6,%a3 + 2e98: a646 0a00 macl %d6,%a3,<< + 2e9c: a646 0e00 macl %d6,%a3,>> + 2ea0: a646 0a00 macl %d6,%a3,<< + 2ea4: a646 0e00 macl %d6,%a3,>> + 2ea8: a806 0800 macl %d6,%d4 + 2eac: a806 0a00 macl %d6,%d4,<< + 2eb0: a806 0e00 macl %d6,%d4,>> + 2eb4: a806 0a00 macl %d6,%d4,<< + 2eb8: a806 0e00 macl %d6,%d4,>> + 2ebc: a293 b809 macl %a1,%a3,%a3@,%d1 + 2ec0: a6d3 b809 macl %a1,%a3,%a3@,%a3 + 2ec4: a493 b809 macl %a1,%a3,%a3@,%d2 + 2ec8: aed3 b809 macl %a1,%a3,%a3@,%sp + 2ecc: a293 b829 macl %a1,%a3,%a3@&,%d1 + 2ed0: a6d3 b829 macl %a1,%a3,%a3@&,%a3 + 2ed4: a493 b829 macl %a1,%a3,%a3@&,%d2 + 2ed8: aed3 b829 macl %a1,%a3,%a3@&,%sp + 2edc: a29a b809 macl %a1,%a3,%a2@\+,%d1 + 2ee0: a6da b809 macl %a1,%a3,%a2@\+,%a3 + 2ee4: a49a b809 macl %a1,%a3,%a2@\+,%d2 + 2ee8: aeda b809 macl %a1,%a3,%a2@\+,%sp + 2eec: a29a b829 macl %a1,%a3,%a2@\+&,%d1 + 2ef0: a6da b829 macl %a1,%a3,%a2@\+&,%a3 + 2ef4: a49a b829 macl %a1,%a3,%a2@\+&,%d2 + 2ef8: aeda b829 macl %a1,%a3,%a2@\+&,%sp + 2efc: a2ae b809 000a macl %a1,%a3,%fp@\(10\),%d1 + 2f02: a6ee b809 000a macl %a1,%a3,%fp@\(10\),%a3 + 2f08: a4ae b809 000a macl %a1,%a3,%fp@\(10\),%d2 + 2f0e: aeee b809 000a macl %a1,%a3,%fp@\(10\),%sp + 2f14: a2ae b829 000a macl %a1,%a3,%fp@\(10\)&,%d1 + 2f1a: a6ee b829 000a macl %a1,%a3,%fp@\(10\)&,%a3 + 2f20: a4ae b829 000a macl %a1,%a3,%fp@\(10\)&,%d2 + 2f26: aeee b829 000a macl %a1,%a3,%fp@\(10\)&,%sp + 2f2c: a2a1 b809 macl %a1,%a3,%a1@-,%d1 + 2f30: a6e1 b809 macl %a1,%a3,%a1@-,%a3 + 2f34: a4a1 b809 macl %a1,%a3,%a1@-,%d2 + 2f38: aee1 b809 macl %a1,%a3,%a1@-,%sp + 2f3c: a2a1 b829 macl %a1,%a3,%a1@-&,%d1 + 2f40: a6e1 b829 macl %a1,%a3,%a1@-&,%a3 + 2f44: a4a1 b829 macl %a1,%a3,%a1@-&,%d2 + 2f48: aee1 b829 macl %a1,%a3,%a1@-&,%sp + 2f4c: a293 ba09 macl %a1,%a3,<<,%a3@,%d1 + 2f50: a6d3 ba09 macl %a1,%a3,<<,%a3@,%a3 + 2f54: a493 ba09 macl %a1,%a3,<<,%a3@,%d2 + 2f58: aed3 ba09 macl %a1,%a3,<<,%a3@,%sp + 2f5c: a293 ba29 macl %a1,%a3,<<,%a3@&,%d1 + 2f60: a6d3 ba29 macl %a1,%a3,<<,%a3@&,%a3 + 2f64: a493 ba29 macl %a1,%a3,<<,%a3@&,%d2 + 2f68: aed3 ba29 macl %a1,%a3,<<,%a3@&,%sp + 2f6c: a29a ba09 macl %a1,%a3,<<,%a2@\+,%d1 + 2f70: a6da ba09 macl %a1,%a3,<<,%a2@\+,%a3 + 2f74: a49a ba09 macl %a1,%a3,<<,%a2@\+,%d2 + 2f78: aeda ba09 macl %a1,%a3,<<,%a2@\+,%sp + 2f7c: a29a ba29 macl %a1,%a3,<<,%a2@\+&,%d1 + 2f80: a6da ba29 macl %a1,%a3,<<,%a2@\+&,%a3 + 2f84: a49a ba29 macl %a1,%a3,<<,%a2@\+&,%d2 + 2f88: aeda ba29 macl %a1,%a3,<<,%a2@\+&,%sp + 2f8c: a2ae ba09 000a macl %a1,%a3,<<,%fp@\(10\),%d1 + 2f92: a6ee ba09 000a macl %a1,%a3,<<,%fp@\(10\),%a3 + 2f98: a4ae ba09 000a macl %a1,%a3,<<,%fp@\(10\),%d2 + 2f9e: aeee ba09 000a macl %a1,%a3,<<,%fp@\(10\),%sp + 2fa4: a2ae ba29 000a macl %a1,%a3,<<,%fp@\(10\)&,%d1 + 2faa: a6ee ba29 000a macl %a1,%a3,<<,%fp@\(10\)&,%a3 + 2fb0: a4ae ba29 000a macl %a1,%a3,<<,%fp@\(10\)&,%d2 + 2fb6: aeee ba29 000a macl %a1,%a3,<<,%fp@\(10\)&,%sp + 2fbc: a2a1 ba09 macl %a1,%a3,<<,%a1@-,%d1 + 2fc0: a6e1 ba09 macl %a1,%a3,<<,%a1@-,%a3 + 2fc4: a4a1 ba09 macl %a1,%a3,<<,%a1@-,%d2 + 2fc8: aee1 ba09 macl %a1,%a3,<<,%a1@-,%sp + 2fcc: a2a1 ba29 macl %a1,%a3,<<,%a1@-&,%d1 + 2fd0: a6e1 ba29 macl %a1,%a3,<<,%a1@-&,%a3 + 2fd4: a4a1 ba29 macl %a1,%a3,<<,%a1@-&,%d2 + 2fd8: aee1 ba29 macl %a1,%a3,<<,%a1@-&,%sp + 2fdc: a293 be09 macl %a1,%a3,>>,%a3@,%d1 + 2fe0: a6d3 be09 macl %a1,%a3,>>,%a3@,%a3 + 2fe4: a493 be09 macl %a1,%a3,>>,%a3@,%d2 + 2fe8: aed3 be09 macl %a1,%a3,>>,%a3@,%sp + 2fec: a293 be29 macl %a1,%a3,>>,%a3@&,%d1 + 2ff0: a6d3 be29 macl %a1,%a3,>>,%a3@&,%a3 + 2ff4: a493 be29 macl %a1,%a3,>>,%a3@&,%d2 + 2ff8: aed3 be29 macl %a1,%a3,>>,%a3@&,%sp + 2ffc: a29a be09 macl %a1,%a3,>>,%a2@\+,%d1 + 3000: a6da be09 macl %a1,%a3,>>,%a2@\+,%a3 + 3004: a49a be09 macl %a1,%a3,>>,%a2@\+,%d2 + 3008: aeda be09 macl %a1,%a3,>>,%a2@\+,%sp + 300c: a29a be29 macl %a1,%a3,>>,%a2@\+&,%d1 + 3010: a6da be29 macl %a1,%a3,>>,%a2@\+&,%a3 + 3014: a49a be29 macl %a1,%a3,>>,%a2@\+&,%d2 + 3018: aeda be29 macl %a1,%a3,>>,%a2@\+&,%sp + 301c: a2ae be09 000a macl %a1,%a3,>>,%fp@\(10\),%d1 + 3022: a6ee be09 000a macl %a1,%a3,>>,%fp@\(10\),%a3 + 3028: a4ae be09 000a macl %a1,%a3,>>,%fp@\(10\),%d2 + 302e: aeee be09 000a macl %a1,%a3,>>,%fp@\(10\),%sp + 3034: a2ae be29 000a macl %a1,%a3,>>,%fp@\(10\)&,%d1 + 303a: a6ee be29 000a macl %a1,%a3,>>,%fp@\(10\)&,%a3 + 3040: a4ae be29 000a macl %a1,%a3,>>,%fp@\(10\)&,%d2 + 3046: aeee be29 000a macl %a1,%a3,>>,%fp@\(10\)&,%sp + 304c: a2a1 be09 macl %a1,%a3,>>,%a1@-,%d1 + 3050: a6e1 be09 macl %a1,%a3,>>,%a1@-,%a3 + 3054: a4a1 be09 macl %a1,%a3,>>,%a1@-,%d2 + 3058: aee1 be09 macl %a1,%a3,>>,%a1@-,%sp + 305c: a2a1 be29 macl %a1,%a3,>>,%a1@-&,%d1 + 3060: a6e1 be29 macl %a1,%a3,>>,%a1@-&,%a3 + 3064: a4a1 be29 macl %a1,%a3,>>,%a1@-&,%d2 + 3068: aee1 be29 macl %a1,%a3,>>,%a1@-&,%sp + 306c: a293 ba09 macl %a1,%a3,<<,%a3@,%d1 + 3070: a6d3 ba09 macl %a1,%a3,<<,%a3@,%a3 + 3074: a493 ba09 macl %a1,%a3,<<,%a3@,%d2 + 3078: aed3 ba09 macl %a1,%a3,<<,%a3@,%sp + 307c: a293 ba29 macl %a1,%a3,<<,%a3@&,%d1 + 3080: a6d3 ba29 macl %a1,%a3,<<,%a3@&,%a3 + 3084: a493 ba29 macl %a1,%a3,<<,%a3@&,%d2 + 3088: aed3 ba29 macl %a1,%a3,<<,%a3@&,%sp + 308c: a29a ba09 macl %a1,%a3,<<,%a2@\+,%d1 + 3090: a6da ba09 macl %a1,%a3,<<,%a2@\+,%a3 + 3094: a49a ba09 macl %a1,%a3,<<,%a2@\+,%d2 + 3098: aeda ba09 macl %a1,%a3,<<,%a2@\+,%sp + 309c: a29a ba29 macl %a1,%a3,<<,%a2@\+&,%d1 + 30a0: a6da ba29 macl %a1,%a3,<<,%a2@\+&,%a3 + 30a4: a49a ba29 macl %a1,%a3,<<,%a2@\+&,%d2 + 30a8: aeda ba29 macl %a1,%a3,<<,%a2@\+&,%sp + 30ac: a2ae ba09 000a macl %a1,%a3,<<,%fp@\(10\),%d1 + 30b2: a6ee ba09 000a macl %a1,%a3,<<,%fp@\(10\),%a3 + 30b8: a4ae ba09 000a macl %a1,%a3,<<,%fp@\(10\),%d2 + 30be: aeee ba09 000a macl %a1,%a3,<<,%fp@\(10\),%sp + 30c4: a2ae ba29 000a macl %a1,%a3,<<,%fp@\(10\)&,%d1 + 30ca: a6ee ba29 000a macl %a1,%a3,<<,%fp@\(10\)&,%a3 + 30d0: a4ae ba29 000a macl %a1,%a3,<<,%fp@\(10\)&,%d2 + 30d6: aeee ba29 000a macl %a1,%a3,<<,%fp@\(10\)&,%sp + 30dc: a2a1 ba09 macl %a1,%a3,<<,%a1@-,%d1 + 30e0: a6e1 ba09 macl %a1,%a3,<<,%a1@-,%a3 + 30e4: a4a1 ba09 macl %a1,%a3,<<,%a1@-,%d2 + 30e8: aee1 ba09 macl %a1,%a3,<<,%a1@-,%sp + 30ec: a2a1 ba29 macl %a1,%a3,<<,%a1@-&,%d1 + 30f0: a6e1 ba29 macl %a1,%a3,<<,%a1@-&,%a3 + 30f4: a4a1 ba29 macl %a1,%a3,<<,%a1@-&,%d2 + 30f8: aee1 ba29 macl %a1,%a3,<<,%a1@-&,%sp + 30fc: a293 be09 macl %a1,%a3,>>,%a3@,%d1 + 3100: a6d3 be09 macl %a1,%a3,>>,%a3@,%a3 + 3104: a493 be09 macl %a1,%a3,>>,%a3@,%d2 + 3108: aed3 be09 macl %a1,%a3,>>,%a3@,%sp + 310c: a293 be29 macl %a1,%a3,>>,%a3@&,%d1 + 3110: a6d3 be29 macl %a1,%a3,>>,%a3@&,%a3 + 3114: a493 be29 macl %a1,%a3,>>,%a3@&,%d2 + 3118: aed3 be29 macl %a1,%a3,>>,%a3@&,%sp + 311c: a29a be09 macl %a1,%a3,>>,%a2@\+,%d1 + 3120: a6da be09 macl %a1,%a3,>>,%a2@\+,%a3 + 3124: a49a be09 macl %a1,%a3,>>,%a2@\+,%d2 + 3128: aeda be09 macl %a1,%a3,>>,%a2@\+,%sp + 312c: a29a be29 macl %a1,%a3,>>,%a2@\+&,%d1 + 3130: a6da be29 macl %a1,%a3,>>,%a2@\+&,%a3 + 3134: a49a be29 macl %a1,%a3,>>,%a2@\+&,%d2 + 3138: aeda be29 macl %a1,%a3,>>,%a2@\+&,%sp + 313c: a2ae be09 000a macl %a1,%a3,>>,%fp@\(10\),%d1 + 3142: a6ee be09 000a macl %a1,%a3,>>,%fp@\(10\),%a3 + 3148: a4ae be09 000a macl %a1,%a3,>>,%fp@\(10\),%d2 + 314e: aeee be09 000a macl %a1,%a3,>>,%fp@\(10\),%sp + 3154: a2ae be29 000a macl %a1,%a3,>>,%fp@\(10\)&,%d1 + 315a: a6ee be29 000a macl %a1,%a3,>>,%fp@\(10\)&,%a3 + 3160: a4ae be29 000a macl %a1,%a3,>>,%fp@\(10\)&,%d2 + 3166: aeee be29 000a macl %a1,%a3,>>,%fp@\(10\)&,%sp + 316c: a2a1 be09 macl %a1,%a3,>>,%a1@-,%d1 + 3170: a6e1 be09 macl %a1,%a3,>>,%a1@-,%a3 + 3174: a4a1 be09 macl %a1,%a3,>>,%a1@-,%d2 + 3178: aee1 be09 macl %a1,%a3,>>,%a1@-,%sp + 317c: a2a1 be29 macl %a1,%a3,>>,%a1@-&,%d1 + 3180: a6e1 be29 macl %a1,%a3,>>,%a1@-&,%a3 + 3184: a4a1 be29 macl %a1,%a3,>>,%a1@-&,%d2 + 3188: aee1 be29 macl %a1,%a3,>>,%a1@-&,%sp + 318c: a293 4809 macl %a1,%d4,%a3@,%d1 + 3190: a6d3 4809 macl %a1,%d4,%a3@,%a3 + 3194: a493 4809 macl %a1,%d4,%a3@,%d2 + 3198: aed3 4809 macl %a1,%d4,%a3@,%sp + 319c: a293 4829 macl %a1,%d4,%a3@&,%d1 + 31a0: a6d3 4829 macl %a1,%d4,%a3@&,%a3 + 31a4: a493 4829 macl %a1,%d4,%a3@&,%d2 + 31a8: aed3 4829 macl %a1,%d4,%a3@&,%sp + 31ac: a29a 4809 macl %a1,%d4,%a2@\+,%d1 + 31b0: a6da 4809 macl %a1,%d4,%a2@\+,%a3 + 31b4: a49a 4809 macl %a1,%d4,%a2@\+,%d2 + 31b8: aeda 4809 macl %a1,%d4,%a2@\+,%sp + 31bc: a29a 4829 macl %a1,%d4,%a2@\+&,%d1 + 31c0: a6da 4829 macl %a1,%d4,%a2@\+&,%a3 + 31c4: a49a 4829 macl %a1,%d4,%a2@\+&,%d2 + 31c8: aeda 4829 macl %a1,%d4,%a2@\+&,%sp + 31cc: a2ae 4809 000a macl %a1,%d4,%fp@\(10\),%d1 + 31d2: a6ee 4809 000a macl %a1,%d4,%fp@\(10\),%a3 + 31d8: a4ae 4809 000a macl %a1,%d4,%fp@\(10\),%d2 + 31de: aeee 4809 000a macl %a1,%d4,%fp@\(10\),%sp + 31e4: a2ae 4829 000a macl %a1,%d4,%fp@\(10\)&,%d1 + 31ea: a6ee 4829 000a macl %a1,%d4,%fp@\(10\)&,%a3 + 31f0: a4ae 4829 000a macl %a1,%d4,%fp@\(10\)&,%d2 + 31f6: aeee 4829 000a macl %a1,%d4,%fp@\(10\)&,%sp + 31fc: a2a1 4809 macl %a1,%d4,%a1@-,%d1 + 3200: a6e1 4809 macl %a1,%d4,%a1@-,%a3 + 3204: a4a1 4809 macl %a1,%d4,%a1@-,%d2 + 3208: aee1 4809 macl %a1,%d4,%a1@-,%sp + 320c: a2a1 4829 macl %a1,%d4,%a1@-&,%d1 + 3210: a6e1 4829 macl %a1,%d4,%a1@-&,%a3 + 3214: a4a1 4829 macl %a1,%d4,%a1@-&,%d2 + 3218: aee1 4829 macl %a1,%d4,%a1@-&,%sp + 321c: a293 4a09 macl %a1,%d4,<<,%a3@,%d1 + 3220: a6d3 4a09 macl %a1,%d4,<<,%a3@,%a3 + 3224: a493 4a09 macl %a1,%d4,<<,%a3@,%d2 + 3228: aed3 4a09 macl %a1,%d4,<<,%a3@,%sp + 322c: a293 4a29 macl %a1,%d4,<<,%a3@&,%d1 + 3230: a6d3 4a29 macl %a1,%d4,<<,%a3@&,%a3 + 3234: a493 4a29 macl %a1,%d4,<<,%a3@&,%d2 + 3238: aed3 4a29 macl %a1,%d4,<<,%a3@&,%sp + 323c: a29a 4a09 macl %a1,%d4,<<,%a2@\+,%d1 + 3240: a6da 4a09 macl %a1,%d4,<<,%a2@\+,%a3 + 3244: a49a 4a09 macl %a1,%d4,<<,%a2@\+,%d2 + 3248: aeda 4a09 macl %a1,%d4,<<,%a2@\+,%sp + 324c: a29a 4a29 macl %a1,%d4,<<,%a2@\+&,%d1 + 3250: a6da 4a29 macl %a1,%d4,<<,%a2@\+&,%a3 + 3254: a49a 4a29 macl %a1,%d4,<<,%a2@\+&,%d2 + 3258: aeda 4a29 macl %a1,%d4,<<,%a2@\+&,%sp + 325c: a2ae 4a09 000a macl %a1,%d4,<<,%fp@\(10\),%d1 + 3262: a6ee 4a09 000a macl %a1,%d4,<<,%fp@\(10\),%a3 + 3268: a4ae 4a09 000a macl %a1,%d4,<<,%fp@\(10\),%d2 + 326e: aeee 4a09 000a macl %a1,%d4,<<,%fp@\(10\),%sp + 3274: a2ae 4a29 000a macl %a1,%d4,<<,%fp@\(10\)&,%d1 + 327a: a6ee 4a29 000a macl %a1,%d4,<<,%fp@\(10\)&,%a3 + 3280: a4ae 4a29 000a macl %a1,%d4,<<,%fp@\(10\)&,%d2 + 3286: aeee 4a29 000a macl %a1,%d4,<<,%fp@\(10\)&,%sp + 328c: a2a1 4a09 macl %a1,%d4,<<,%a1@-,%d1 + 3290: a6e1 4a09 macl %a1,%d4,<<,%a1@-,%a3 + 3294: a4a1 4a09 macl %a1,%d4,<<,%a1@-,%d2 + 3298: aee1 4a09 macl %a1,%d4,<<,%a1@-,%sp + 329c: a2a1 4a29 macl %a1,%d4,<<,%a1@-&,%d1 + 32a0: a6e1 4a29 macl %a1,%d4,<<,%a1@-&,%a3 + 32a4: a4a1 4a29 macl %a1,%d4,<<,%a1@-&,%d2 + 32a8: aee1 4a29 macl %a1,%d4,<<,%a1@-&,%sp + 32ac: a293 4e09 macl %a1,%d4,>>,%a3@,%d1 + 32b0: a6d3 4e09 macl %a1,%d4,>>,%a3@,%a3 + 32b4: a493 4e09 macl %a1,%d4,>>,%a3@,%d2 + 32b8: aed3 4e09 macl %a1,%d4,>>,%a3@,%sp + 32bc: a293 4e29 macl %a1,%d4,>>,%a3@&,%d1 + 32c0: a6d3 4e29 macl %a1,%d4,>>,%a3@&,%a3 + 32c4: a493 4e29 macl %a1,%d4,>>,%a3@&,%d2 + 32c8: aed3 4e29 macl %a1,%d4,>>,%a3@&,%sp + 32cc: a29a 4e09 macl %a1,%d4,>>,%a2@\+,%d1 + 32d0: a6da 4e09 macl %a1,%d4,>>,%a2@\+,%a3 + 32d4: a49a 4e09 macl %a1,%d4,>>,%a2@\+,%d2 + 32d8: aeda 4e09 macl %a1,%d4,>>,%a2@\+,%sp + 32dc: a29a 4e29 macl %a1,%d4,>>,%a2@\+&,%d1 + 32e0: a6da 4e29 macl %a1,%d4,>>,%a2@\+&,%a3 + 32e4: a49a 4e29 macl %a1,%d4,>>,%a2@\+&,%d2 + 32e8: aeda 4e29 macl %a1,%d4,>>,%a2@\+&,%sp + 32ec: a2ae 4e09 000a macl %a1,%d4,>>,%fp@\(10\),%d1 + 32f2: a6ee 4e09 000a macl %a1,%d4,>>,%fp@\(10\),%a3 + 32f8: a4ae 4e09 000a macl %a1,%d4,>>,%fp@\(10\),%d2 + 32fe: aeee 4e09 000a macl %a1,%d4,>>,%fp@\(10\),%sp + 3304: a2ae 4e29 000a macl %a1,%d4,>>,%fp@\(10\)&,%d1 + 330a: a6ee 4e29 000a macl %a1,%d4,>>,%fp@\(10\)&,%a3 + 3310: a4ae 4e29 000a macl %a1,%d4,>>,%fp@\(10\)&,%d2 + 3316: aeee 4e29 000a macl %a1,%d4,>>,%fp@\(10\)&,%sp + 331c: a2a1 4e09 macl %a1,%d4,>>,%a1@-,%d1 + 3320: a6e1 4e09 macl %a1,%d4,>>,%a1@-,%a3 + 3324: a4a1 4e09 macl %a1,%d4,>>,%a1@-,%d2 + 3328: aee1 4e09 macl %a1,%d4,>>,%a1@-,%sp + 332c: a2a1 4e29 macl %a1,%d4,>>,%a1@-&,%d1 + 3330: a6e1 4e29 macl %a1,%d4,>>,%a1@-&,%a3 + 3334: a4a1 4e29 macl %a1,%d4,>>,%a1@-&,%d2 + 3338: aee1 4e29 macl %a1,%d4,>>,%a1@-&,%sp + 333c: a293 4a09 macl %a1,%d4,<<,%a3@,%d1 + 3340: a6d3 4a09 macl %a1,%d4,<<,%a3@,%a3 + 3344: a493 4a09 macl %a1,%d4,<<,%a3@,%d2 + 3348: aed3 4a09 macl %a1,%d4,<<,%a3@,%sp + 334c: a293 4a29 macl %a1,%d4,<<,%a3@&,%d1 + 3350: a6d3 4a29 macl %a1,%d4,<<,%a3@&,%a3 + 3354: a493 4a29 macl %a1,%d4,<<,%a3@&,%d2 + 3358: aed3 4a29 macl %a1,%d4,<<,%a3@&,%sp + 335c: a29a 4a09 macl %a1,%d4,<<,%a2@\+,%d1 + 3360: a6da 4a09 macl %a1,%d4,<<,%a2@\+,%a3 + 3364: a49a 4a09 macl %a1,%d4,<<,%a2@\+,%d2 + 3368: aeda 4a09 macl %a1,%d4,<<,%a2@\+,%sp + 336c: a29a 4a29 macl %a1,%d4,<<,%a2@\+&,%d1 + 3370: a6da 4a29 macl %a1,%d4,<<,%a2@\+&,%a3 + 3374: a49a 4a29 macl %a1,%d4,<<,%a2@\+&,%d2 + 3378: aeda 4a29 macl %a1,%d4,<<,%a2@\+&,%sp + 337c: a2ae 4a09 000a macl %a1,%d4,<<,%fp@\(10\),%d1 + 3382: a6ee 4a09 000a macl %a1,%d4,<<,%fp@\(10\),%a3 + 3388: a4ae 4a09 000a macl %a1,%d4,<<,%fp@\(10\),%d2 + 338e: aeee 4a09 000a macl %a1,%d4,<<,%fp@\(10\),%sp + 3394: a2ae 4a29 000a macl %a1,%d4,<<,%fp@\(10\)&,%d1 + 339a: a6ee 4a29 000a macl %a1,%d4,<<,%fp@\(10\)&,%a3 + 33a0: a4ae 4a29 000a macl %a1,%d4,<<,%fp@\(10\)&,%d2 + 33a6: aeee 4a29 000a macl %a1,%d4,<<,%fp@\(10\)&,%sp + 33ac: a2a1 4a09 macl %a1,%d4,<<,%a1@-,%d1 + 33b0: a6e1 4a09 macl %a1,%d4,<<,%a1@-,%a3 + 33b4: a4a1 4a09 macl %a1,%d4,<<,%a1@-,%d2 + 33b8: aee1 4a09 macl %a1,%d4,<<,%a1@-,%sp + 33bc: a2a1 4a29 macl %a1,%d4,<<,%a1@-&,%d1 + 33c0: a6e1 4a29 macl %a1,%d4,<<,%a1@-&,%a3 + 33c4: a4a1 4a29 macl %a1,%d4,<<,%a1@-&,%d2 + 33c8: aee1 4a29 macl %a1,%d4,<<,%a1@-&,%sp + 33cc: a293 4e09 macl %a1,%d4,>>,%a3@,%d1 + 33d0: a6d3 4e09 macl %a1,%d4,>>,%a3@,%a3 + 33d4: a493 4e09 macl %a1,%d4,>>,%a3@,%d2 + 33d8: aed3 4e09 macl %a1,%d4,>>,%a3@,%sp + 33dc: a293 4e29 macl %a1,%d4,>>,%a3@&,%d1 + 33e0: a6d3 4e29 macl %a1,%d4,>>,%a3@&,%a3 + 33e4: a493 4e29 macl %a1,%d4,>>,%a3@&,%d2 + 33e8: aed3 4e29 macl %a1,%d4,>>,%a3@&,%sp + 33ec: a29a 4e09 macl %a1,%d4,>>,%a2@\+,%d1 + 33f0: a6da 4e09 macl %a1,%d4,>>,%a2@\+,%a3 + 33f4: a49a 4e09 macl %a1,%d4,>>,%a2@\+,%d2 + 33f8: aeda 4e09 macl %a1,%d4,>>,%a2@\+,%sp + 33fc: a29a 4e29 macl %a1,%d4,>>,%a2@\+&,%d1 + 3400: a6da 4e29 macl %a1,%d4,>>,%a2@\+&,%a3 + 3404: a49a 4e29 macl %a1,%d4,>>,%a2@\+&,%d2 + 3408: aeda 4e29 macl %a1,%d4,>>,%a2@\+&,%sp + 340c: a2ae 4e09 000a macl %a1,%d4,>>,%fp@\(10\),%d1 + 3412: a6ee 4e09 000a macl %a1,%d4,>>,%fp@\(10\),%a3 + 3418: a4ae 4e09 000a macl %a1,%d4,>>,%fp@\(10\),%d2 + 341e: aeee 4e09 000a macl %a1,%d4,>>,%fp@\(10\),%sp + 3424: a2ae 4e29 000a macl %a1,%d4,>>,%fp@\(10\)&,%d1 + 342a: a6ee 4e29 000a macl %a1,%d4,>>,%fp@\(10\)&,%a3 + 3430: a4ae 4e29 000a macl %a1,%d4,>>,%fp@\(10\)&,%d2 + 3436: aeee 4e29 000a macl %a1,%d4,>>,%fp@\(10\)&,%sp + 343c: a2a1 4e09 macl %a1,%d4,>>,%a1@-,%d1 + 3440: a6e1 4e09 macl %a1,%d4,>>,%a1@-,%a3 + 3444: a4a1 4e09 macl %a1,%d4,>>,%a1@-,%d2 + 3448: aee1 4e09 macl %a1,%d4,>>,%a1@-,%sp + 344c: a2a1 4e29 macl %a1,%d4,>>,%a1@-&,%d1 + 3450: a6e1 4e29 macl %a1,%d4,>>,%a1@-&,%a3 + 3454: a4a1 4e29 macl %a1,%d4,>>,%a1@-&,%d2 + 3458: aee1 4e29 macl %a1,%d4,>>,%a1@-&,%sp + 345c: a293 b806 macl %d6,%a3,%a3@,%d1 + 3460: a6d3 b806 macl %d6,%a3,%a3@,%a3 + 3464: a493 b806 macl %d6,%a3,%a3@,%d2 + 3468: aed3 b806 macl %d6,%a3,%a3@,%sp + 346c: a293 b826 macl %d6,%a3,%a3@&,%d1 + 3470: a6d3 b826 macl %d6,%a3,%a3@&,%a3 + 3474: a493 b826 macl %d6,%a3,%a3@&,%d2 + 3478: aed3 b826 macl %d6,%a3,%a3@&,%sp + 347c: a29a b806 macl %d6,%a3,%a2@\+,%d1 + 3480: a6da b806 macl %d6,%a3,%a2@\+,%a3 + 3484: a49a b806 macl %d6,%a3,%a2@\+,%d2 + 3488: aeda b806 macl %d6,%a3,%a2@\+,%sp + 348c: a29a b826 macl %d6,%a3,%a2@\+&,%d1 + 3490: a6da b826 macl %d6,%a3,%a2@\+&,%a3 + 3494: a49a b826 macl %d6,%a3,%a2@\+&,%d2 + 3498: aeda b826 macl %d6,%a3,%a2@\+&,%sp + 349c: a2ae b806 000a macl %d6,%a3,%fp@\(10\),%d1 + 34a2: a6ee b806 000a macl %d6,%a3,%fp@\(10\),%a3 + 34a8: a4ae b806 000a macl %d6,%a3,%fp@\(10\),%d2 + 34ae: aeee b806 000a macl %d6,%a3,%fp@\(10\),%sp + 34b4: a2ae b826 000a macl %d6,%a3,%fp@\(10\)&,%d1 + 34ba: a6ee b826 000a macl %d6,%a3,%fp@\(10\)&,%a3 + 34c0: a4ae b826 000a macl %d6,%a3,%fp@\(10\)&,%d2 + 34c6: aeee b826 000a macl %d6,%a3,%fp@\(10\)&,%sp + 34cc: a2a1 b806 macl %d6,%a3,%a1@-,%d1 + 34d0: a6e1 b806 macl %d6,%a3,%a1@-,%a3 + 34d4: a4a1 b806 macl %d6,%a3,%a1@-,%d2 + 34d8: aee1 b806 macl %d6,%a3,%a1@-,%sp + 34dc: a2a1 b826 macl %d6,%a3,%a1@-&,%d1 + 34e0: a6e1 b826 macl %d6,%a3,%a1@-&,%a3 + 34e4: a4a1 b826 macl %d6,%a3,%a1@-&,%d2 + 34e8: aee1 b826 macl %d6,%a3,%a1@-&,%sp + 34ec: a293 ba06 macl %d6,%a3,<<,%a3@,%d1 + 34f0: a6d3 ba06 macl %d6,%a3,<<,%a3@,%a3 + 34f4: a493 ba06 macl %d6,%a3,<<,%a3@,%d2 + 34f8: aed3 ba06 macl %d6,%a3,<<,%a3@,%sp + 34fc: a293 ba26 macl %d6,%a3,<<,%a3@&,%d1 + 3500: a6d3 ba26 macl %d6,%a3,<<,%a3@&,%a3 + 3504: a493 ba26 macl %d6,%a3,<<,%a3@&,%d2 + 3508: aed3 ba26 macl %d6,%a3,<<,%a3@&,%sp + 350c: a29a ba06 macl %d6,%a3,<<,%a2@\+,%d1 + 3510: a6da ba06 macl %d6,%a3,<<,%a2@\+,%a3 + 3514: a49a ba06 macl %d6,%a3,<<,%a2@\+,%d2 + 3518: aeda ba06 macl %d6,%a3,<<,%a2@\+,%sp + 351c: a29a ba26 macl %d6,%a3,<<,%a2@\+&,%d1 + 3520: a6da ba26 macl %d6,%a3,<<,%a2@\+&,%a3 + 3524: a49a ba26 macl %d6,%a3,<<,%a2@\+&,%d2 + 3528: aeda ba26 macl %d6,%a3,<<,%a2@\+&,%sp + 352c: a2ae ba06 000a macl %d6,%a3,<<,%fp@\(10\),%d1 + 3532: a6ee ba06 000a macl %d6,%a3,<<,%fp@\(10\),%a3 + 3538: a4ae ba06 000a macl %d6,%a3,<<,%fp@\(10\),%d2 + 353e: aeee ba06 000a macl %d6,%a3,<<,%fp@\(10\),%sp + 3544: a2ae ba26 000a macl %d6,%a3,<<,%fp@\(10\)&,%d1 + 354a: a6ee ba26 000a macl %d6,%a3,<<,%fp@\(10\)&,%a3 + 3550: a4ae ba26 000a macl %d6,%a3,<<,%fp@\(10\)&,%d2 + 3556: aeee ba26 000a macl %d6,%a3,<<,%fp@\(10\)&,%sp + 355c: a2a1 ba06 macl %d6,%a3,<<,%a1@-,%d1 + 3560: a6e1 ba06 macl %d6,%a3,<<,%a1@-,%a3 + 3564: a4a1 ba06 macl %d6,%a3,<<,%a1@-,%d2 + 3568: aee1 ba06 macl %d6,%a3,<<,%a1@-,%sp + 356c: a2a1 ba26 macl %d6,%a3,<<,%a1@-&,%d1 + 3570: a6e1 ba26 macl %d6,%a3,<<,%a1@-&,%a3 + 3574: a4a1 ba26 macl %d6,%a3,<<,%a1@-&,%d2 + 3578: aee1 ba26 macl %d6,%a3,<<,%a1@-&,%sp + 357c: a293 be06 macl %d6,%a3,>>,%a3@,%d1 + 3580: a6d3 be06 macl %d6,%a3,>>,%a3@,%a3 + 3584: a493 be06 macl %d6,%a3,>>,%a3@,%d2 + 3588: aed3 be06 macl %d6,%a3,>>,%a3@,%sp + 358c: a293 be26 macl %d6,%a3,>>,%a3@&,%d1 + 3590: a6d3 be26 macl %d6,%a3,>>,%a3@&,%a3 + 3594: a493 be26 macl %d6,%a3,>>,%a3@&,%d2 + 3598: aed3 be26 macl %d6,%a3,>>,%a3@&,%sp + 359c: a29a be06 macl %d6,%a3,>>,%a2@\+,%d1 + 35a0: a6da be06 macl %d6,%a3,>>,%a2@\+,%a3 + 35a4: a49a be06 macl %d6,%a3,>>,%a2@\+,%d2 + 35a8: aeda be06 macl %d6,%a3,>>,%a2@\+,%sp + 35ac: a29a be26 macl %d6,%a3,>>,%a2@\+&,%d1 + 35b0: a6da be26 macl %d6,%a3,>>,%a2@\+&,%a3 + 35b4: a49a be26 macl %d6,%a3,>>,%a2@\+&,%d2 + 35b8: aeda be26 macl %d6,%a3,>>,%a2@\+&,%sp + 35bc: a2ae be06 000a macl %d6,%a3,>>,%fp@\(10\),%d1 + 35c2: a6ee be06 000a macl %d6,%a3,>>,%fp@\(10\),%a3 + 35c8: a4ae be06 000a macl %d6,%a3,>>,%fp@\(10\),%d2 + 35ce: aeee be06 000a macl %d6,%a3,>>,%fp@\(10\),%sp + 35d4: a2ae be26 000a macl %d6,%a3,>>,%fp@\(10\)&,%d1 + 35da: a6ee be26 000a macl %d6,%a3,>>,%fp@\(10\)&,%a3 + 35e0: a4ae be26 000a macl %d6,%a3,>>,%fp@\(10\)&,%d2 + 35e6: aeee be26 000a macl %d6,%a3,>>,%fp@\(10\)&,%sp + 35ec: a2a1 be06 macl %d6,%a3,>>,%a1@-,%d1 + 35f0: a6e1 be06 macl %d6,%a3,>>,%a1@-,%a3 + 35f4: a4a1 be06 macl %d6,%a3,>>,%a1@-,%d2 + 35f8: aee1 be06 macl %d6,%a3,>>,%a1@-,%sp + 35fc: a2a1 be26 macl %d6,%a3,>>,%a1@-&,%d1 + 3600: a6e1 be26 macl %d6,%a3,>>,%a1@-&,%a3 + 3604: a4a1 be26 macl %d6,%a3,>>,%a1@-&,%d2 + 3608: aee1 be26 macl %d6,%a3,>>,%a1@-&,%sp + 360c: a293 ba06 macl %d6,%a3,<<,%a3@,%d1 + 3610: a6d3 ba06 macl %d6,%a3,<<,%a3@,%a3 + 3614: a493 ba06 macl %d6,%a3,<<,%a3@,%d2 + 3618: aed3 ba06 macl %d6,%a3,<<,%a3@,%sp + 361c: a293 ba26 macl %d6,%a3,<<,%a3@&,%d1 + 3620: a6d3 ba26 macl %d6,%a3,<<,%a3@&,%a3 + 3624: a493 ba26 macl %d6,%a3,<<,%a3@&,%d2 + 3628: aed3 ba26 macl %d6,%a3,<<,%a3@&,%sp + 362c: a29a ba06 macl %d6,%a3,<<,%a2@\+,%d1 + 3630: a6da ba06 macl %d6,%a3,<<,%a2@\+,%a3 + 3634: a49a ba06 macl %d6,%a3,<<,%a2@\+,%d2 + 3638: aeda ba06 macl %d6,%a3,<<,%a2@\+,%sp + 363c: a29a ba26 macl %d6,%a3,<<,%a2@\+&,%d1 + 3640: a6da ba26 macl %d6,%a3,<<,%a2@\+&,%a3 + 3644: a49a ba26 macl %d6,%a3,<<,%a2@\+&,%d2 + 3648: aeda ba26 macl %d6,%a3,<<,%a2@\+&,%sp + 364c: a2ae ba06 000a macl %d6,%a3,<<,%fp@\(10\),%d1 + 3652: a6ee ba06 000a macl %d6,%a3,<<,%fp@\(10\),%a3 + 3658: a4ae ba06 000a macl %d6,%a3,<<,%fp@\(10\),%d2 + 365e: aeee ba06 000a macl %d6,%a3,<<,%fp@\(10\),%sp + 3664: a2ae ba26 000a macl %d6,%a3,<<,%fp@\(10\)&,%d1 + 366a: a6ee ba26 000a macl %d6,%a3,<<,%fp@\(10\)&,%a3 + 3670: a4ae ba26 000a macl %d6,%a3,<<,%fp@\(10\)&,%d2 + 3676: aeee ba26 000a macl %d6,%a3,<<,%fp@\(10\)&,%sp + 367c: a2a1 ba06 macl %d6,%a3,<<,%a1@-,%d1 + 3680: a6e1 ba06 macl %d6,%a3,<<,%a1@-,%a3 + 3684: a4a1 ba06 macl %d6,%a3,<<,%a1@-,%d2 + 3688: aee1 ba06 macl %d6,%a3,<<,%a1@-,%sp + 368c: a2a1 ba26 macl %d6,%a3,<<,%a1@-&,%d1 + 3690: a6e1 ba26 macl %d6,%a3,<<,%a1@-&,%a3 + 3694: a4a1 ba26 macl %d6,%a3,<<,%a1@-&,%d2 + 3698: aee1 ba26 macl %d6,%a3,<<,%a1@-&,%sp + 369c: a293 be06 macl %d6,%a3,>>,%a3@,%d1 + 36a0: a6d3 be06 macl %d6,%a3,>>,%a3@,%a3 + 36a4: a493 be06 macl %d6,%a3,>>,%a3@,%d2 + 36a8: aed3 be06 macl %d6,%a3,>>,%a3@,%sp + 36ac: a293 be26 macl %d6,%a3,>>,%a3@&,%d1 + 36b0: a6d3 be26 macl %d6,%a3,>>,%a3@&,%a3 + 36b4: a493 be26 macl %d6,%a3,>>,%a3@&,%d2 + 36b8: aed3 be26 macl %d6,%a3,>>,%a3@&,%sp + 36bc: a29a be06 macl %d6,%a3,>>,%a2@\+,%d1 + 36c0: a6da be06 macl %d6,%a3,>>,%a2@\+,%a3 + 36c4: a49a be06 macl %d6,%a3,>>,%a2@\+,%d2 + 36c8: aeda be06 macl %d6,%a3,>>,%a2@\+,%sp + 36cc: a29a be26 macl %d6,%a3,>>,%a2@\+&,%d1 + 36d0: a6da be26 macl %d6,%a3,>>,%a2@\+&,%a3 + 36d4: a49a be26 macl %d6,%a3,>>,%a2@\+&,%d2 + 36d8: aeda be26 macl %d6,%a3,>>,%a2@\+&,%sp + 36dc: a2ae be06 000a macl %d6,%a3,>>,%fp@\(10\),%d1 + 36e2: a6ee be06 000a macl %d6,%a3,>>,%fp@\(10\),%a3 + 36e8: a4ae be06 000a macl %d6,%a3,>>,%fp@\(10\),%d2 + 36ee: aeee be06 000a macl %d6,%a3,>>,%fp@\(10\),%sp + 36f4: a2ae be26 000a macl %d6,%a3,>>,%fp@\(10\)&,%d1 + 36fa: a6ee be26 000a macl %d6,%a3,>>,%fp@\(10\)&,%a3 + 3700: a4ae be26 000a macl %d6,%a3,>>,%fp@\(10\)&,%d2 + 3706: aeee be26 000a macl %d6,%a3,>>,%fp@\(10\)&,%sp + 370c: a2a1 be06 macl %d6,%a3,>>,%a1@-,%d1 + 3710: a6e1 be06 macl %d6,%a3,>>,%a1@-,%a3 + 3714: a4a1 be06 macl %d6,%a3,>>,%a1@-,%d2 + 3718: aee1 be06 macl %d6,%a3,>>,%a1@-,%sp + 371c: a2a1 be26 macl %d6,%a3,>>,%a1@-&,%d1 + 3720: a6e1 be26 macl %d6,%a3,>>,%a1@-&,%a3 + 3724: a4a1 be26 macl %d6,%a3,>>,%a1@-&,%d2 + 3728: aee1 be26 macl %d6,%a3,>>,%a1@-&,%sp + 372c: a293 4806 macl %d6,%d4,%a3@,%d1 + 3730: a6d3 4806 macl %d6,%d4,%a3@,%a3 + 3734: a493 4806 macl %d6,%d4,%a3@,%d2 + 3738: aed3 4806 macl %d6,%d4,%a3@,%sp + 373c: a293 4826 macl %d6,%d4,%a3@&,%d1 + 3740: a6d3 4826 macl %d6,%d4,%a3@&,%a3 + 3744: a493 4826 macl %d6,%d4,%a3@&,%d2 + 3748: aed3 4826 macl %d6,%d4,%a3@&,%sp + 374c: a29a 4806 macl %d6,%d4,%a2@\+,%d1 + 3750: a6da 4806 macl %d6,%d4,%a2@\+,%a3 + 3754: a49a 4806 macl %d6,%d4,%a2@\+,%d2 + 3758: aeda 4806 macl %d6,%d4,%a2@\+,%sp + 375c: a29a 4826 macl %d6,%d4,%a2@\+&,%d1 + 3760: a6da 4826 macl %d6,%d4,%a2@\+&,%a3 + 3764: a49a 4826 macl %d6,%d4,%a2@\+&,%d2 + 3768: aeda 4826 macl %d6,%d4,%a2@\+&,%sp + 376c: a2ae 4806 000a macl %d6,%d4,%fp@\(10\),%d1 + 3772: a6ee 4806 000a macl %d6,%d4,%fp@\(10\),%a3 + 3778: a4ae 4806 000a macl %d6,%d4,%fp@\(10\),%d2 + 377e: aeee 4806 000a macl %d6,%d4,%fp@\(10\),%sp + 3784: a2ae 4826 000a macl %d6,%d4,%fp@\(10\)&,%d1 + 378a: a6ee 4826 000a macl %d6,%d4,%fp@\(10\)&,%a3 + 3790: a4ae 4826 000a macl %d6,%d4,%fp@\(10\)&,%d2 + 3796: aeee 4826 000a macl %d6,%d4,%fp@\(10\)&,%sp + 379c: a2a1 4806 macl %d6,%d4,%a1@-,%d1 + 37a0: a6e1 4806 macl %d6,%d4,%a1@-,%a3 + 37a4: a4a1 4806 macl %d6,%d4,%a1@-,%d2 + 37a8: aee1 4806 macl %d6,%d4,%a1@-,%sp + 37ac: a2a1 4826 macl %d6,%d4,%a1@-&,%d1 + 37b0: a6e1 4826 macl %d6,%d4,%a1@-&,%a3 + 37b4: a4a1 4826 macl %d6,%d4,%a1@-&,%d2 + 37b8: aee1 4826 macl %d6,%d4,%a1@-&,%sp + 37bc: a293 4a06 macl %d6,%d4,<<,%a3@,%d1 + 37c0: a6d3 4a06 macl %d6,%d4,<<,%a3@,%a3 + 37c4: a493 4a06 macl %d6,%d4,<<,%a3@,%d2 + 37c8: aed3 4a06 macl %d6,%d4,<<,%a3@,%sp + 37cc: a293 4a26 macl %d6,%d4,<<,%a3@&,%d1 + 37d0: a6d3 4a26 macl %d6,%d4,<<,%a3@&,%a3 + 37d4: a493 4a26 macl %d6,%d4,<<,%a3@&,%d2 + 37d8: aed3 4a26 macl %d6,%d4,<<,%a3@&,%sp + 37dc: a29a 4a06 macl %d6,%d4,<<,%a2@\+,%d1 + 37e0: a6da 4a06 macl %d6,%d4,<<,%a2@\+,%a3 + 37e4: a49a 4a06 macl %d6,%d4,<<,%a2@\+,%d2 + 37e8: aeda 4a06 macl %d6,%d4,<<,%a2@\+,%sp + 37ec: a29a 4a26 macl %d6,%d4,<<,%a2@\+&,%d1 + 37f0: a6da 4a26 macl %d6,%d4,<<,%a2@\+&,%a3 + 37f4: a49a 4a26 macl %d6,%d4,<<,%a2@\+&,%d2 + 37f8: aeda 4a26 macl %d6,%d4,<<,%a2@\+&,%sp + 37fc: a2ae 4a06 000a macl %d6,%d4,<<,%fp@\(10\),%d1 + 3802: a6ee 4a06 000a macl %d6,%d4,<<,%fp@\(10\),%a3 + 3808: a4ae 4a06 000a macl %d6,%d4,<<,%fp@\(10\),%d2 + 380e: aeee 4a06 000a macl %d6,%d4,<<,%fp@\(10\),%sp + 3814: a2ae 4a26 000a macl %d6,%d4,<<,%fp@\(10\)&,%d1 + 381a: a6ee 4a26 000a macl %d6,%d4,<<,%fp@\(10\)&,%a3 + 3820: a4ae 4a26 000a macl %d6,%d4,<<,%fp@\(10\)&,%d2 + 3826: aeee 4a26 000a macl %d6,%d4,<<,%fp@\(10\)&,%sp + 382c: a2a1 4a06 macl %d6,%d4,<<,%a1@-,%d1 + 3830: a6e1 4a06 macl %d6,%d4,<<,%a1@-,%a3 + 3834: a4a1 4a06 macl %d6,%d4,<<,%a1@-,%d2 + 3838: aee1 4a06 macl %d6,%d4,<<,%a1@-,%sp + 383c: a2a1 4a26 macl %d6,%d4,<<,%a1@-&,%d1 + 3840: a6e1 4a26 macl %d6,%d4,<<,%a1@-&,%a3 + 3844: a4a1 4a26 macl %d6,%d4,<<,%a1@-&,%d2 + 3848: aee1 4a26 macl %d6,%d4,<<,%a1@-&,%sp + 384c: a293 4e06 macl %d6,%d4,>>,%a3@,%d1 + 3850: a6d3 4e06 macl %d6,%d4,>>,%a3@,%a3 + 3854: a493 4e06 macl %d6,%d4,>>,%a3@,%d2 + 3858: aed3 4e06 macl %d6,%d4,>>,%a3@,%sp + 385c: a293 4e26 macl %d6,%d4,>>,%a3@&,%d1 + 3860: a6d3 4e26 macl %d6,%d4,>>,%a3@&,%a3 + 3864: a493 4e26 macl %d6,%d4,>>,%a3@&,%d2 + 3868: aed3 4e26 macl %d6,%d4,>>,%a3@&,%sp + 386c: a29a 4e06 macl %d6,%d4,>>,%a2@\+,%d1 + 3870: a6da 4e06 macl %d6,%d4,>>,%a2@\+,%a3 + 3874: a49a 4e06 macl %d6,%d4,>>,%a2@\+,%d2 + 3878: aeda 4e06 macl %d6,%d4,>>,%a2@\+,%sp + 387c: a29a 4e26 macl %d6,%d4,>>,%a2@\+&,%d1 + 3880: a6da 4e26 macl %d6,%d4,>>,%a2@\+&,%a3 + 3884: a49a 4e26 macl %d6,%d4,>>,%a2@\+&,%d2 + 3888: aeda 4e26 macl %d6,%d4,>>,%a2@\+&,%sp + 388c: a2ae 4e06 000a macl %d6,%d4,>>,%fp@\(10\),%d1 + 3892: a6ee 4e06 000a macl %d6,%d4,>>,%fp@\(10\),%a3 + 3898: a4ae 4e06 000a macl %d6,%d4,>>,%fp@\(10\),%d2 + 389e: aeee 4e06 000a macl %d6,%d4,>>,%fp@\(10\),%sp + 38a4: a2ae 4e26 000a macl %d6,%d4,>>,%fp@\(10\)&,%d1 + 38aa: a6ee 4e26 000a macl %d6,%d4,>>,%fp@\(10\)&,%a3 + 38b0: a4ae 4e26 000a macl %d6,%d4,>>,%fp@\(10\)&,%d2 + 38b6: aeee 4e26 000a macl %d6,%d4,>>,%fp@\(10\)&,%sp + 38bc: a2a1 4e06 macl %d6,%d4,>>,%a1@-,%d1 + 38c0: a6e1 4e06 macl %d6,%d4,>>,%a1@-,%a3 + 38c4: a4a1 4e06 macl %d6,%d4,>>,%a1@-,%d2 + 38c8: aee1 4e06 macl %d6,%d4,>>,%a1@-,%sp + 38cc: a2a1 4e26 macl %d6,%d4,>>,%a1@-&,%d1 + 38d0: a6e1 4e26 macl %d6,%d4,>>,%a1@-&,%a3 + 38d4: a4a1 4e26 macl %d6,%d4,>>,%a1@-&,%d2 + 38d8: aee1 4e26 macl %d6,%d4,>>,%a1@-&,%sp + 38dc: a293 4a06 macl %d6,%d4,<<,%a3@,%d1 + 38e0: a6d3 4a06 macl %d6,%d4,<<,%a3@,%a3 + 38e4: a493 4a06 macl %d6,%d4,<<,%a3@,%d2 + 38e8: aed3 4a06 macl %d6,%d4,<<,%a3@,%sp + 38ec: a293 4a26 macl %d6,%d4,<<,%a3@&,%d1 + 38f0: a6d3 4a26 macl %d6,%d4,<<,%a3@&,%a3 + 38f4: a493 4a26 macl %d6,%d4,<<,%a3@&,%d2 + 38f8: aed3 4a26 macl %d6,%d4,<<,%a3@&,%sp + 38fc: a29a 4a06 macl %d6,%d4,<<,%a2@\+,%d1 + 3900: a6da 4a06 macl %d6,%d4,<<,%a2@\+,%a3 + 3904: a49a 4a06 macl %d6,%d4,<<,%a2@\+,%d2 + 3908: aeda 4a06 macl %d6,%d4,<<,%a2@\+,%sp + 390c: a29a 4a26 macl %d6,%d4,<<,%a2@\+&,%d1 + 3910: a6da 4a26 macl %d6,%d4,<<,%a2@\+&,%a3 + 3914: a49a 4a26 macl %d6,%d4,<<,%a2@\+&,%d2 + 3918: aeda 4a26 macl %d6,%d4,<<,%a2@\+&,%sp + 391c: a2ae 4a06 000a macl %d6,%d4,<<,%fp@\(10\),%d1 + 3922: a6ee 4a06 000a macl %d6,%d4,<<,%fp@\(10\),%a3 + 3928: a4ae 4a06 000a macl %d6,%d4,<<,%fp@\(10\),%d2 + 392e: aeee 4a06 000a macl %d6,%d4,<<,%fp@\(10\),%sp + 3934: a2ae 4a26 000a macl %d6,%d4,<<,%fp@\(10\)&,%d1 + 393a: a6ee 4a26 000a macl %d6,%d4,<<,%fp@\(10\)&,%a3 + 3940: a4ae 4a26 000a macl %d6,%d4,<<,%fp@\(10\)&,%d2 + 3946: aeee 4a26 000a macl %d6,%d4,<<,%fp@\(10\)&,%sp + 394c: a2a1 4a06 macl %d6,%d4,<<,%a1@-,%d1 + 3950: a6e1 4a06 macl %d6,%d4,<<,%a1@-,%a3 + 3954: a4a1 4a06 macl %d6,%d4,<<,%a1@-,%d2 + 3958: aee1 4a06 macl %d6,%d4,<<,%a1@-,%sp + 395c: a2a1 4a26 macl %d6,%d4,<<,%a1@-&,%d1 + 3960: a6e1 4a26 macl %d6,%d4,<<,%a1@-&,%a3 + 3964: a4a1 4a26 macl %d6,%d4,<<,%a1@-&,%d2 + 3968: aee1 4a26 macl %d6,%d4,<<,%a1@-&,%sp + 396c: a293 4e06 macl %d6,%d4,>>,%a3@,%d1 + 3970: a6d3 4e06 macl %d6,%d4,>>,%a3@,%a3 + 3974: a493 4e06 macl %d6,%d4,>>,%a3@,%d2 + 3978: aed3 4e06 macl %d6,%d4,>>,%a3@,%sp + 397c: a293 4e26 macl %d6,%d4,>>,%a3@&,%d1 + 3980: a6d3 4e26 macl %d6,%d4,>>,%a3@&,%a3 + 3984: a493 4e26 macl %d6,%d4,>>,%a3@&,%d2 + 3988: aed3 4e26 macl %d6,%d4,>>,%a3@&,%sp + 398c: a29a 4e06 macl %d6,%d4,>>,%a2@\+,%d1 + 3990: a6da 4e06 macl %d6,%d4,>>,%a2@\+,%a3 + 3994: a49a 4e06 macl %d6,%d4,>>,%a2@\+,%d2 + 3998: aeda 4e06 macl %d6,%d4,>>,%a2@\+,%sp + 399c: a29a 4e26 macl %d6,%d4,>>,%a2@\+&,%d1 + 39a0: a6da 4e26 macl %d6,%d4,>>,%a2@\+&,%a3 + 39a4: a49a 4e26 macl %d6,%d4,>>,%a2@\+&,%d2 + 39a8: aeda 4e26 macl %d6,%d4,>>,%a2@\+&,%sp + 39ac: a2ae 4e06 000a macl %d6,%d4,>>,%fp@\(10\),%d1 + 39b2: a6ee 4e06 000a macl %d6,%d4,>>,%fp@\(10\),%a3 + 39b8: a4ae 4e06 000a macl %d6,%d4,>>,%fp@\(10\),%d2 + 39be: aeee 4e06 000a macl %d6,%d4,>>,%fp@\(10\),%sp + 39c4: a2ae 4e26 000a macl %d6,%d4,>>,%fp@\(10\)&,%d1 + 39ca: a6ee 4e26 000a macl %d6,%d4,>>,%fp@\(10\)&,%a3 + 39d0: a4ae 4e26 000a macl %d6,%d4,>>,%fp@\(10\)&,%d2 + 39d6: aeee 4e26 000a macl %d6,%d4,>>,%fp@\(10\)&,%sp + 39dc: a2a1 4e06 macl %d6,%d4,>>,%a1@-,%d1 + 39e0: a6e1 4e06 macl %d6,%d4,>>,%a1@-,%a3 + 39e4: a4a1 4e06 macl %d6,%d4,>>,%a1@-,%d2 + 39e8: aee1 4e06 macl %d6,%d4,>>,%a1@-,%sp + 39ec: a2a1 4e26 macl %d6,%d4,>>,%a1@-&,%d1 + 39f0: a6e1 4e26 macl %d6,%d4,>>,%a1@-&,%a3 + 39f4: a4a1 4e26 macl %d6,%d4,>>,%a1@-&,%d2 + 39f8: aee1 4e26 macl %d6,%d4,>>,%a1@-&,%sp diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/m68k/mcf-mac.s binutils-2.15.91.0.1/gas/testsuite/gas/m68k/mcf-mac.s --- binutils-2.15.90.0.3/gas/testsuite/gas/m68k/mcf-mac.s 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/m68k/mcf-mac.s 2004-05-27 11:26:04.334210350 -0700 @@ -0,0 +1,3331 @@ + + .text + + move.l %acc,%d2 + move.l %acc,%a1 + + move.l %macsr,%a1 + move.l %macsr,%d2 + + move.l %mask,%a1 + move.l %mask,%d2 + + move.l %macsr,%ccr + + move.l #0x12345678,%acc + move.l %d1,%acc + move.l %a2,%acc + + move.l #0x12345678,%macsr + move.l %d1,%macsr + move.l %a2,%macsr + + move.l #0x12345678,%mask + move.l %d1,%mask + move.l %a2,%mask + + | automated from here + + mac.w %a1l,%a2u + mac.w %a1l,%a2u,<< + mac.w %a1l,%a2u,>> + mac.w %a1l,%a2u,#1 + mac.w %a1l,%a2u,#-1 + mac.w %a1l,%d3l + mac.w %a1l,%d3l,<< + mac.w %a1l,%d3l,>> + mac.w %a1l,%d3l,#1 + mac.w %a1l,%d3l,#-1 + mac.w %a1l,%a7u + mac.w %a1l,%a7u,<< + mac.w %a1l,%a7u,>> + mac.w %a1l,%a7u,#1 + mac.w %a1l,%a7u,#-1 + mac.w %a1l,%d1l + mac.w %a1l,%d1l,<< + mac.w %a1l,%d1l,>> + mac.w %a1l,%d1l,#1 + mac.w %a1l,%d1l,#-1 + mac.w %d2u,%a2u + mac.w %d2u,%a2u,<< + mac.w %d2u,%a2u,>> + mac.w %d2u,%a2u,#1 + mac.w %d2u,%a2u,#-1 + mac.w %d2u,%d3l + mac.w %d2u,%d3l,<< + mac.w %d2u,%d3l,>> + mac.w %d2u,%d3l,#1 + mac.w %d2u,%d3l,#-1 + mac.w %d2u,%a7u + mac.w %d2u,%a7u,<< + mac.w %d2u,%a7u,>> + mac.w %d2u,%a7u,#1 + mac.w %d2u,%a7u,#-1 + mac.w %d2u,%d1l + mac.w %d2u,%d1l,<< + mac.w %d2u,%d1l,>> + mac.w %d2u,%d1l,#1 + mac.w %d2u,%d1l,#-1 + mac.w %a5l,%a2u + mac.w %a5l,%a2u,<< + mac.w %a5l,%a2u,>> + mac.w %a5l,%a2u,#1 + mac.w %a5l,%a2u,#-1 + mac.w %a5l,%d3l + mac.w %a5l,%d3l,<< + mac.w %a5l,%d3l,>> + mac.w %a5l,%d3l,#1 + mac.w %a5l,%d3l,#-1 + mac.w %a5l,%a7u + mac.w %a5l,%a7u,<< + mac.w %a5l,%a7u,>> + mac.w %a5l,%a7u,#1 + mac.w %a5l,%a7u,#-1 + mac.w %a5l,%d1l + mac.w %a5l,%d1l,<< + mac.w %a5l,%d1l,>> + mac.w %a5l,%d1l,#1 + mac.w %a5l,%d1l,#-1 + mac.w %d6u,%a2u + mac.w %d6u,%a2u,<< + mac.w %d6u,%a2u,>> + mac.w %d6u,%a2u,#1 + mac.w %d6u,%a2u,#-1 + mac.w %d6u,%d3l + mac.w %d6u,%d3l,<< + mac.w %d6u,%d3l,>> + mac.w %d6u,%d3l,#1 + mac.w %d6u,%d3l,#-1 + mac.w %d6u,%a7u + mac.w %d6u,%a7u,<< + mac.w %d6u,%a7u,>> + mac.w %d6u,%a7u,#1 + mac.w %d6u,%a7u,#-1 + mac.w %d6u,%d1l + mac.w %d6u,%d1l,<< + mac.w %d6u,%d1l,>> + mac.w %d6u,%d1l,#1 + mac.w %d6u,%d1l,#-1 + + mac.w %a1l,%a2u,(%a3),%d1 + mac.w %a1l,%a2u,(%a3),%a3 + mac.w %a1l,%a2u,(%a3),%d2 + mac.w %a1l,%a2u,(%a3),%a7 + mac.w %a1l,%a2u,(%a3)&,%d1 + mac.w %a1l,%a2u,(%a3)&,%a3 + mac.w %a1l,%a2u,(%a3)&,%d2 + mac.w %a1l,%a2u,(%a3)&,%a7 + mac.w %a1l,%a2u,(%a2)+,%d1 + mac.w %a1l,%a2u,(%a2)+,%a3 + mac.w %a1l,%a2u,(%a2)+,%d2 + mac.w %a1l,%a2u,(%a2)+,%a7 + mac.w %a1l,%a2u,(%a2)+&,%d1 + mac.w %a1l,%a2u,(%a2)+&,%a3 + mac.w %a1l,%a2u,(%a2)+&,%d2 + mac.w %a1l,%a2u,(%a2)+&,%a7 + mac.w %a1l,%a2u,10(%a6),%d1 + mac.w %a1l,%a2u,10(%a6),%a3 + mac.w %a1l,%a2u,10(%a6),%d2 + mac.w %a1l,%a2u,10(%a6),%a7 + mac.w %a1l,%a2u,10(%a6)&,%d1 + mac.w %a1l,%a2u,10(%a6)&,%a3 + mac.w %a1l,%a2u,10(%a6)&,%d2 + mac.w %a1l,%a2u,10(%a6)&,%a7 + mac.w %a1l,%a2u,-(%a1),%d1 + mac.w %a1l,%a2u,-(%a1),%a3 + mac.w %a1l,%a2u,-(%a1),%d2 + mac.w %a1l,%a2u,-(%a1),%a7 + mac.w %a1l,%a2u,-(%a1)&,%d1 + mac.w %a1l,%a2u,-(%a1)&,%a3 + mac.w %a1l,%a2u,-(%a1)&,%d2 + mac.w %a1l,%a2u,-(%a1)&,%a7 + mac.w %a1l,%a2u,<<,(%a3),%d1 + mac.w %a1l,%a2u,<<,(%a3),%a3 + mac.w %a1l,%a2u,<<,(%a3),%d2 + mac.w %a1l,%a2u,<<,(%a3),%a7 + mac.w %a1l,%a2u,<<,(%a3)&,%d1 + mac.w %a1l,%a2u,<<,(%a3)&,%a3 + mac.w %a1l,%a2u,<<,(%a3)&,%d2 + mac.w %a1l,%a2u,<<,(%a3)&,%a7 + mac.w %a1l,%a2u,<<,(%a2)+,%d1 + mac.w %a1l,%a2u,<<,(%a2)+,%a3 + mac.w %a1l,%a2u,<<,(%a2)+,%d2 + mac.w %a1l,%a2u,<<,(%a2)+,%a7 + mac.w %a1l,%a2u,<<,(%a2)+&,%d1 + mac.w %a1l,%a2u,<<,(%a2)+&,%a3 + mac.w %a1l,%a2u,<<,(%a2)+&,%d2 + mac.w %a1l,%a2u,<<,(%a2)+&,%a7 + mac.w %a1l,%a2u,<<,10(%a6),%d1 + mac.w %a1l,%a2u,<<,10(%a6),%a3 + mac.w %a1l,%a2u,<<,10(%a6),%d2 + mac.w %a1l,%a2u,<<,10(%a6),%a7 + mac.w %a1l,%a2u,<<,10(%a6)&,%d1 + mac.w %a1l,%a2u,<<,10(%a6)&,%a3 + mac.w %a1l,%a2u,<<,10(%a6)&,%d2 + mac.w %a1l,%a2u,<<,10(%a6)&,%a7 + mac.w %a1l,%a2u,<<,-(%a1),%d1 + mac.w %a1l,%a2u,<<,-(%a1),%a3 + mac.w %a1l,%a2u,<<,-(%a1),%d2 + mac.w %a1l,%a2u,<<,-(%a1),%a7 + mac.w %a1l,%a2u,<<,-(%a1)&,%d1 + mac.w %a1l,%a2u,<<,-(%a1)&,%a3 + mac.w %a1l,%a2u,<<,-(%a1)&,%d2 + mac.w %a1l,%a2u,<<,-(%a1)&,%a7 + mac.w %a1l,%a2u,>>,(%a3),%d1 + mac.w %a1l,%a2u,>>,(%a3),%a3 + mac.w %a1l,%a2u,>>,(%a3),%d2 + mac.w %a1l,%a2u,>>,(%a3),%a7 + mac.w %a1l,%a2u,>>,(%a3)&,%d1 + mac.w %a1l,%a2u,>>,(%a3)&,%a3 + mac.w %a1l,%a2u,>>,(%a3)&,%d2 + mac.w %a1l,%a2u,>>,(%a3)&,%a7 + mac.w %a1l,%a2u,>>,(%a2)+,%d1 + mac.w %a1l,%a2u,>>,(%a2)+,%a3 + mac.w %a1l,%a2u,>>,(%a2)+,%d2 + mac.w %a1l,%a2u,>>,(%a2)+,%a7 + mac.w %a1l,%a2u,>>,(%a2)+&,%d1 + mac.w %a1l,%a2u,>>,(%a2)+&,%a3 + mac.w %a1l,%a2u,>>,(%a2)+&,%d2 + mac.w %a1l,%a2u,>>,(%a2)+&,%a7 + mac.w %a1l,%a2u,>>,10(%a6),%d1 + mac.w %a1l,%a2u,>>,10(%a6),%a3 + mac.w %a1l,%a2u,>>,10(%a6),%d2 + mac.w %a1l,%a2u,>>,10(%a6),%a7 + mac.w %a1l,%a2u,>>,10(%a6)&,%d1 + mac.w %a1l,%a2u,>>,10(%a6)&,%a3 + mac.w %a1l,%a2u,>>,10(%a6)&,%d2 + mac.w %a1l,%a2u,>>,10(%a6)&,%a7 + mac.w %a1l,%a2u,>>,-(%a1),%d1 + mac.w %a1l,%a2u,>>,-(%a1),%a3 + mac.w %a1l,%a2u,>>,-(%a1),%d2 + mac.w %a1l,%a2u,>>,-(%a1),%a7 + mac.w %a1l,%a2u,>>,-(%a1)&,%d1 + mac.w %a1l,%a2u,>>,-(%a1)&,%a3 + mac.w %a1l,%a2u,>>,-(%a1)&,%d2 + mac.w %a1l,%a2u,>>,-(%a1)&,%a7 + mac.w %a1l,%a2u,#1,(%a3),%d1 + mac.w %a1l,%a2u,#1,(%a3),%a3 + mac.w %a1l,%a2u,#1,(%a3),%d2 + mac.w %a1l,%a2u,#1,(%a3),%a7 + mac.w %a1l,%a2u,#1,(%a3)&,%d1 + mac.w %a1l,%a2u,#1,(%a3)&,%a3 + mac.w %a1l,%a2u,#1,(%a3)&,%d2 + mac.w %a1l,%a2u,#1,(%a3)&,%a7 + mac.w %a1l,%a2u,#1,(%a2)+,%d1 + mac.w %a1l,%a2u,#1,(%a2)+,%a3 + mac.w %a1l,%a2u,#1,(%a2)+,%d2 + mac.w %a1l,%a2u,#1,(%a2)+,%a7 + mac.w %a1l,%a2u,#1,(%a2)+&,%d1 + mac.w %a1l,%a2u,#1,(%a2)+&,%a3 + mac.w %a1l,%a2u,#1,(%a2)+&,%d2 + mac.w %a1l,%a2u,#1,(%a2)+&,%a7 + mac.w %a1l,%a2u,#1,10(%a6),%d1 + mac.w %a1l,%a2u,#1,10(%a6),%a3 + mac.w %a1l,%a2u,#1,10(%a6),%d2 + mac.w %a1l,%a2u,#1,10(%a6),%a7 + mac.w %a1l,%a2u,#1,10(%a6)&,%d1 + mac.w %a1l,%a2u,#1,10(%a6)&,%a3 + mac.w %a1l,%a2u,#1,10(%a6)&,%d2 + mac.w %a1l,%a2u,#1,10(%a6)&,%a7 + mac.w %a1l,%a2u,#1,-(%a1),%d1 + mac.w %a1l,%a2u,#1,-(%a1),%a3 + mac.w %a1l,%a2u,#1,-(%a1),%d2 + mac.w %a1l,%a2u,#1,-(%a1),%a7 + mac.w %a1l,%a2u,#1,-(%a1)&,%d1 + mac.w %a1l,%a2u,#1,-(%a1)&,%a3 + mac.w %a1l,%a2u,#1,-(%a1)&,%d2 + mac.w %a1l,%a2u,#1,-(%a1)&,%a7 + mac.w %a1l,%a2u,#-1,(%a3),%d1 + mac.w %a1l,%a2u,#-1,(%a3),%a3 + mac.w %a1l,%a2u,#-1,(%a3),%d2 + mac.w %a1l,%a2u,#-1,(%a3),%a7 + mac.w %a1l,%a2u,#-1,(%a3)&,%d1 + mac.w %a1l,%a2u,#-1,(%a3)&,%a3 + mac.w %a1l,%a2u,#-1,(%a3)&,%d2 + mac.w %a1l,%a2u,#-1,(%a3)&,%a7 + mac.w %a1l,%a2u,#-1,(%a2)+,%d1 + mac.w %a1l,%a2u,#-1,(%a2)+,%a3 + mac.w %a1l,%a2u,#-1,(%a2)+,%d2 + mac.w %a1l,%a2u,#-1,(%a2)+,%a7 + mac.w %a1l,%a2u,#-1,(%a2)+&,%d1 + mac.w %a1l,%a2u,#-1,(%a2)+&,%a3 + mac.w %a1l,%a2u,#-1,(%a2)+&,%d2 + mac.w %a1l,%a2u,#-1,(%a2)+&,%a7 + mac.w %a1l,%a2u,#-1,10(%a6),%d1 + mac.w %a1l,%a2u,#-1,10(%a6),%a3 + mac.w %a1l,%a2u,#-1,10(%a6),%d2 + mac.w %a1l,%a2u,#-1,10(%a6),%a7 + mac.w %a1l,%a2u,#-1,10(%a6)&,%d1 + mac.w %a1l,%a2u,#-1,10(%a6)&,%a3 + mac.w %a1l,%a2u,#-1,10(%a6)&,%d2 + mac.w %a1l,%a2u,#-1,10(%a6)&,%a7 + mac.w %a1l,%a2u,#-1,-(%a1),%d1 + mac.w %a1l,%a2u,#-1,-(%a1),%a3 + mac.w %a1l,%a2u,#-1,-(%a1),%d2 + mac.w %a1l,%a2u,#-1,-(%a1),%a7 + mac.w %a1l,%a2u,#-1,-(%a1)&,%d1 + mac.w %a1l,%a2u,#-1,-(%a1)&,%a3 + mac.w %a1l,%a2u,#-1,-(%a1)&,%d2 + mac.w %a1l,%a2u,#-1,-(%a1)&,%a7 + mac.w %a1l,%d3l,(%a3),%d1 + mac.w %a1l,%d3l,(%a3),%a3 + mac.w %a1l,%d3l,(%a3),%d2 + mac.w %a1l,%d3l,(%a3),%a7 + mac.w %a1l,%d3l,(%a3)&,%d1 + mac.w %a1l,%d3l,(%a3)&,%a3 + mac.w %a1l,%d3l,(%a3)&,%d2 + mac.w %a1l,%d3l,(%a3)&,%a7 + mac.w %a1l,%d3l,(%a2)+,%d1 + mac.w %a1l,%d3l,(%a2)+,%a3 + mac.w %a1l,%d3l,(%a2)+,%d2 + mac.w %a1l,%d3l,(%a2)+,%a7 + mac.w %a1l,%d3l,(%a2)+&,%d1 + mac.w %a1l,%d3l,(%a2)+&,%a3 + mac.w %a1l,%d3l,(%a2)+&,%d2 + mac.w %a1l,%d3l,(%a2)+&,%a7 + mac.w %a1l,%d3l,10(%a6),%d1 + mac.w %a1l,%d3l,10(%a6),%a3 + mac.w %a1l,%d3l,10(%a6),%d2 + mac.w %a1l,%d3l,10(%a6),%a7 + mac.w %a1l,%d3l,10(%a6)&,%d1 + mac.w %a1l,%d3l,10(%a6)&,%a3 + mac.w %a1l,%d3l,10(%a6)&,%d2 + mac.w %a1l,%d3l,10(%a6)&,%a7 + mac.w %a1l,%d3l,-(%a1),%d1 + mac.w %a1l,%d3l,-(%a1),%a3 + mac.w %a1l,%d3l,-(%a1),%d2 + mac.w %a1l,%d3l,-(%a1),%a7 + mac.w %a1l,%d3l,-(%a1)&,%d1 + mac.w %a1l,%d3l,-(%a1)&,%a3 + mac.w %a1l,%d3l,-(%a1)&,%d2 + mac.w %a1l,%d3l,-(%a1)&,%a7 + mac.w %a1l,%d3l,<<,(%a3),%d1 + mac.w %a1l,%d3l,<<,(%a3),%a3 + mac.w %a1l,%d3l,<<,(%a3),%d2 + mac.w %a1l,%d3l,<<,(%a3),%a7 + mac.w %a1l,%d3l,<<,(%a3)&,%d1 + mac.w %a1l,%d3l,<<,(%a3)&,%a3 + mac.w %a1l,%d3l,<<,(%a3)&,%d2 + mac.w %a1l,%d3l,<<,(%a3)&,%a7 + mac.w %a1l,%d3l,<<,(%a2)+,%d1 + mac.w %a1l,%d3l,<<,(%a2)+,%a3 + mac.w %a1l,%d3l,<<,(%a2)+,%d2 + mac.w %a1l,%d3l,<<,(%a2)+,%a7 + mac.w %a1l,%d3l,<<,(%a2)+&,%d1 + mac.w %a1l,%d3l,<<,(%a2)+&,%a3 + mac.w %a1l,%d3l,<<,(%a2)+&,%d2 + mac.w %a1l,%d3l,<<,(%a2)+&,%a7 + mac.w %a1l,%d3l,<<,10(%a6),%d1 + mac.w %a1l,%d3l,<<,10(%a6),%a3 + mac.w %a1l,%d3l,<<,10(%a6),%d2 + mac.w %a1l,%d3l,<<,10(%a6),%a7 + mac.w %a1l,%d3l,<<,10(%a6)&,%d1 + mac.w %a1l,%d3l,<<,10(%a6)&,%a3 + mac.w %a1l,%d3l,<<,10(%a6)&,%d2 + mac.w %a1l,%d3l,<<,10(%a6)&,%a7 + mac.w %a1l,%d3l,<<,-(%a1),%d1 + mac.w %a1l,%d3l,<<,-(%a1),%a3 + mac.w %a1l,%d3l,<<,-(%a1),%d2 + mac.w %a1l,%d3l,<<,-(%a1),%a7 + mac.w %a1l,%d3l,<<,-(%a1)&,%d1 + mac.w %a1l,%d3l,<<,-(%a1)&,%a3 + mac.w %a1l,%d3l,<<,-(%a1)&,%d2 + mac.w %a1l,%d3l,<<,-(%a1)&,%a7 + mac.w %a1l,%d3l,>>,(%a3),%d1 + mac.w %a1l,%d3l,>>,(%a3),%a3 + mac.w %a1l,%d3l,>>,(%a3),%d2 + mac.w %a1l,%d3l,>>,(%a3),%a7 + mac.w %a1l,%d3l,>>,(%a3)&,%d1 + mac.w %a1l,%d3l,>>,(%a3)&,%a3 + mac.w %a1l,%d3l,>>,(%a3)&,%d2 + mac.w %a1l,%d3l,>>,(%a3)&,%a7 + mac.w %a1l,%d3l,>>,(%a2)+,%d1 + mac.w %a1l,%d3l,>>,(%a2)+,%a3 + mac.w %a1l,%d3l,>>,(%a2)+,%d2 + mac.w %a1l,%d3l,>>,(%a2)+,%a7 + mac.w %a1l,%d3l,>>,(%a2)+&,%d1 + mac.w %a1l,%d3l,>>,(%a2)+&,%a3 + mac.w %a1l,%d3l,>>,(%a2)+&,%d2 + mac.w %a1l,%d3l,>>,(%a2)+&,%a7 + mac.w %a1l,%d3l,>>,10(%a6),%d1 + mac.w %a1l,%d3l,>>,10(%a6),%a3 + mac.w %a1l,%d3l,>>,10(%a6),%d2 + mac.w %a1l,%d3l,>>,10(%a6),%a7 + mac.w %a1l,%d3l,>>,10(%a6)&,%d1 + mac.w %a1l,%d3l,>>,10(%a6)&,%a3 + mac.w %a1l,%d3l,>>,10(%a6)&,%d2 + mac.w %a1l,%d3l,>>,10(%a6)&,%a7 + mac.w %a1l,%d3l,>>,-(%a1),%d1 + mac.w %a1l,%d3l,>>,-(%a1),%a3 + mac.w %a1l,%d3l,>>,-(%a1),%d2 + mac.w %a1l,%d3l,>>,-(%a1),%a7 + mac.w %a1l,%d3l,>>,-(%a1)&,%d1 + mac.w %a1l,%d3l,>>,-(%a1)&,%a3 + mac.w %a1l,%d3l,>>,-(%a1)&,%d2 + mac.w %a1l,%d3l,>>,-(%a1)&,%a7 + mac.w %a1l,%d3l,#1,(%a3),%d1 + mac.w %a1l,%d3l,#1,(%a3),%a3 + mac.w %a1l,%d3l,#1,(%a3),%d2 + mac.w %a1l,%d3l,#1,(%a3),%a7 + mac.w %a1l,%d3l,#1,(%a3)&,%d1 + mac.w %a1l,%d3l,#1,(%a3)&,%a3 + mac.w %a1l,%d3l,#1,(%a3)&,%d2 + mac.w %a1l,%d3l,#1,(%a3)&,%a7 + mac.w %a1l,%d3l,#1,(%a2)+,%d1 + mac.w %a1l,%d3l,#1,(%a2)+,%a3 + mac.w %a1l,%d3l,#1,(%a2)+,%d2 + mac.w %a1l,%d3l,#1,(%a2)+,%a7 + mac.w %a1l,%d3l,#1,(%a2)+&,%d1 + mac.w %a1l,%d3l,#1,(%a2)+&,%a3 + mac.w %a1l,%d3l,#1,(%a2)+&,%d2 + mac.w %a1l,%d3l,#1,(%a2)+&,%a7 + mac.w %a1l,%d3l,#1,10(%a6),%d1 + mac.w %a1l,%d3l,#1,10(%a6),%a3 + mac.w %a1l,%d3l,#1,10(%a6),%d2 + mac.w %a1l,%d3l,#1,10(%a6),%a7 + mac.w %a1l,%d3l,#1,10(%a6)&,%d1 + mac.w %a1l,%d3l,#1,10(%a6)&,%a3 + mac.w %a1l,%d3l,#1,10(%a6)&,%d2 + mac.w %a1l,%d3l,#1,10(%a6)&,%a7 + mac.w %a1l,%d3l,#1,-(%a1),%d1 + mac.w %a1l,%d3l,#1,-(%a1),%a3 + mac.w %a1l,%d3l,#1,-(%a1),%d2 + mac.w %a1l,%d3l,#1,-(%a1),%a7 + mac.w %a1l,%d3l,#1,-(%a1)&,%d1 + mac.w %a1l,%d3l,#1,-(%a1)&,%a3 + mac.w %a1l,%d3l,#1,-(%a1)&,%d2 + mac.w %a1l,%d3l,#1,-(%a1)&,%a7 + mac.w %a1l,%d3l,#-1,(%a3),%d1 + mac.w %a1l,%d3l,#-1,(%a3),%a3 + mac.w %a1l,%d3l,#-1,(%a3),%d2 + mac.w %a1l,%d3l,#-1,(%a3),%a7 + mac.w %a1l,%d3l,#-1,(%a3)&,%d1 + mac.w %a1l,%d3l,#-1,(%a3)&,%a3 + mac.w %a1l,%d3l,#-1,(%a3)&,%d2 + mac.w %a1l,%d3l,#-1,(%a3)&,%a7 + mac.w %a1l,%d3l,#-1,(%a2)+,%d1 + mac.w %a1l,%d3l,#-1,(%a2)+,%a3 + mac.w %a1l,%d3l,#-1,(%a2)+,%d2 + mac.w %a1l,%d3l,#-1,(%a2)+,%a7 + mac.w %a1l,%d3l,#-1,(%a2)+&,%d1 + mac.w %a1l,%d3l,#-1,(%a2)+&,%a3 + mac.w %a1l,%d3l,#-1,(%a2)+&,%d2 + mac.w %a1l,%d3l,#-1,(%a2)+&,%a7 + mac.w %a1l,%d3l,#-1,10(%a6),%d1 + mac.w %a1l,%d3l,#-1,10(%a6),%a3 + mac.w %a1l,%d3l,#-1,10(%a6),%d2 + mac.w %a1l,%d3l,#-1,10(%a6),%a7 + mac.w %a1l,%d3l,#-1,10(%a6)&,%d1 + mac.w %a1l,%d3l,#-1,10(%a6)&,%a3 + mac.w %a1l,%d3l,#-1,10(%a6)&,%d2 + mac.w %a1l,%d3l,#-1,10(%a6)&,%a7 + mac.w %a1l,%d3l,#-1,-(%a1),%d1 + mac.w %a1l,%d3l,#-1,-(%a1),%a3 + mac.w %a1l,%d3l,#-1,-(%a1),%d2 + mac.w %a1l,%d3l,#-1,-(%a1),%a7 + mac.w %a1l,%d3l,#-1,-(%a1)&,%d1 + mac.w %a1l,%d3l,#-1,-(%a1)&,%a3 + mac.w %a1l,%d3l,#-1,-(%a1)&,%d2 + mac.w %a1l,%d3l,#-1,-(%a1)&,%a7 + mac.w %a1l,%a7u,(%a3),%d1 + mac.w %a1l,%a7u,(%a3),%a3 + mac.w %a1l,%a7u,(%a3),%d2 + mac.w %a1l,%a7u,(%a3),%a7 + mac.w %a1l,%a7u,(%a3)&,%d1 + mac.w %a1l,%a7u,(%a3)&,%a3 + mac.w %a1l,%a7u,(%a3)&,%d2 + mac.w %a1l,%a7u,(%a3)&,%a7 + mac.w %a1l,%a7u,(%a2)+,%d1 + mac.w %a1l,%a7u,(%a2)+,%a3 + mac.w %a1l,%a7u,(%a2)+,%d2 + mac.w %a1l,%a7u,(%a2)+,%a7 + mac.w %a1l,%a7u,(%a2)+&,%d1 + mac.w %a1l,%a7u,(%a2)+&,%a3 + mac.w %a1l,%a7u,(%a2)+&,%d2 + mac.w %a1l,%a7u,(%a2)+&,%a7 + mac.w %a1l,%a7u,10(%a6),%d1 + mac.w %a1l,%a7u,10(%a6),%a3 + mac.w %a1l,%a7u,10(%a6),%d2 + mac.w %a1l,%a7u,10(%a6),%a7 + mac.w %a1l,%a7u,10(%a6)&,%d1 + mac.w %a1l,%a7u,10(%a6)&,%a3 + mac.w %a1l,%a7u,10(%a6)&,%d2 + mac.w %a1l,%a7u,10(%a6)&,%a7 + mac.w %a1l,%a7u,-(%a1),%d1 + mac.w %a1l,%a7u,-(%a1),%a3 + mac.w %a1l,%a7u,-(%a1),%d2 + mac.w %a1l,%a7u,-(%a1),%a7 + mac.w %a1l,%a7u,-(%a1)&,%d1 + mac.w %a1l,%a7u,-(%a1)&,%a3 + mac.w %a1l,%a7u,-(%a1)&,%d2 + mac.w %a1l,%a7u,-(%a1)&,%a7 + mac.w %a1l,%a7u,<<,(%a3),%d1 + mac.w %a1l,%a7u,<<,(%a3),%a3 + mac.w %a1l,%a7u,<<,(%a3),%d2 + mac.w %a1l,%a7u,<<,(%a3),%a7 + mac.w %a1l,%a7u,<<,(%a3)&,%d1 + mac.w %a1l,%a7u,<<,(%a3)&,%a3 + mac.w %a1l,%a7u,<<,(%a3)&,%d2 + mac.w %a1l,%a7u,<<,(%a3)&,%a7 + mac.w %a1l,%a7u,<<,(%a2)+,%d1 + mac.w %a1l,%a7u,<<,(%a2)+,%a3 + mac.w %a1l,%a7u,<<,(%a2)+,%d2 + mac.w %a1l,%a7u,<<,(%a2)+,%a7 + mac.w %a1l,%a7u,<<,(%a2)+&,%d1 + mac.w %a1l,%a7u,<<,(%a2)+&,%a3 + mac.w %a1l,%a7u,<<,(%a2)+&,%d2 + mac.w %a1l,%a7u,<<,(%a2)+&,%a7 + mac.w %a1l,%a7u,<<,10(%a6),%d1 + mac.w %a1l,%a7u,<<,10(%a6),%a3 + mac.w %a1l,%a7u,<<,10(%a6),%d2 + mac.w %a1l,%a7u,<<,10(%a6),%a7 + mac.w %a1l,%a7u,<<,10(%a6)&,%d1 + mac.w %a1l,%a7u,<<,10(%a6)&,%a3 + mac.w %a1l,%a7u,<<,10(%a6)&,%d2 + mac.w %a1l,%a7u,<<,10(%a6)&,%a7 + mac.w %a1l,%a7u,<<,-(%a1),%d1 + mac.w %a1l,%a7u,<<,-(%a1),%a3 + mac.w %a1l,%a7u,<<,-(%a1),%d2 + mac.w %a1l,%a7u,<<,-(%a1),%a7 + mac.w %a1l,%a7u,<<,-(%a1)&,%d1 + mac.w %a1l,%a7u,<<,-(%a1)&,%a3 + mac.w %a1l,%a7u,<<,-(%a1)&,%d2 + mac.w %a1l,%a7u,<<,-(%a1)&,%a7 + mac.w %a1l,%a7u,>>,(%a3),%d1 + mac.w %a1l,%a7u,>>,(%a3),%a3 + mac.w %a1l,%a7u,>>,(%a3),%d2 + mac.w %a1l,%a7u,>>,(%a3),%a7 + mac.w %a1l,%a7u,>>,(%a3)&,%d1 + mac.w %a1l,%a7u,>>,(%a3)&,%a3 + mac.w %a1l,%a7u,>>,(%a3)&,%d2 + mac.w %a1l,%a7u,>>,(%a3)&,%a7 + mac.w %a1l,%a7u,>>,(%a2)+,%d1 + mac.w %a1l,%a7u,>>,(%a2)+,%a3 + mac.w %a1l,%a7u,>>,(%a2)+,%d2 + mac.w %a1l,%a7u,>>,(%a2)+,%a7 + mac.w %a1l,%a7u,>>,(%a2)+&,%d1 + mac.w %a1l,%a7u,>>,(%a2)+&,%a3 + mac.w %a1l,%a7u,>>,(%a2)+&,%d2 + mac.w %a1l,%a7u,>>,(%a2)+&,%a7 + mac.w %a1l,%a7u,>>,10(%a6),%d1 + mac.w %a1l,%a7u,>>,10(%a6),%a3 + mac.w %a1l,%a7u,>>,10(%a6),%d2 + mac.w %a1l,%a7u,>>,10(%a6),%a7 + mac.w %a1l,%a7u,>>,10(%a6)&,%d1 + mac.w %a1l,%a7u,>>,10(%a6)&,%a3 + mac.w %a1l,%a7u,>>,10(%a6)&,%d2 + mac.w %a1l,%a7u,>>,10(%a6)&,%a7 + mac.w %a1l,%a7u,>>,-(%a1),%d1 + mac.w %a1l,%a7u,>>,-(%a1),%a3 + mac.w %a1l,%a7u,>>,-(%a1),%d2 + mac.w %a1l,%a7u,>>,-(%a1),%a7 + mac.w %a1l,%a7u,>>,-(%a1)&,%d1 + mac.w %a1l,%a7u,>>,-(%a1)&,%a3 + mac.w %a1l,%a7u,>>,-(%a1)&,%d2 + mac.w %a1l,%a7u,>>,-(%a1)&,%a7 + mac.w %a1l,%a7u,#1,(%a3),%d1 + mac.w %a1l,%a7u,#1,(%a3),%a3 + mac.w %a1l,%a7u,#1,(%a3),%d2 + mac.w %a1l,%a7u,#1,(%a3),%a7 + mac.w %a1l,%a7u,#1,(%a3)&,%d1 + mac.w %a1l,%a7u,#1,(%a3)&,%a3 + mac.w %a1l,%a7u,#1,(%a3)&,%d2 + mac.w %a1l,%a7u,#1,(%a3)&,%a7 + mac.w %a1l,%a7u,#1,(%a2)+,%d1 + mac.w %a1l,%a7u,#1,(%a2)+,%a3 + mac.w %a1l,%a7u,#1,(%a2)+,%d2 + mac.w %a1l,%a7u,#1,(%a2)+,%a7 + mac.w %a1l,%a7u,#1,(%a2)+&,%d1 + mac.w %a1l,%a7u,#1,(%a2)+&,%a3 + mac.w %a1l,%a7u,#1,(%a2)+&,%d2 + mac.w %a1l,%a7u,#1,(%a2)+&,%a7 + mac.w %a1l,%a7u,#1,10(%a6),%d1 + mac.w %a1l,%a7u,#1,10(%a6),%a3 + mac.w %a1l,%a7u,#1,10(%a6),%d2 + mac.w %a1l,%a7u,#1,10(%a6),%a7 + mac.w %a1l,%a7u,#1,10(%a6)&,%d1 + mac.w %a1l,%a7u,#1,10(%a6)&,%a3 + mac.w %a1l,%a7u,#1,10(%a6)&,%d2 + mac.w %a1l,%a7u,#1,10(%a6)&,%a7 + mac.w %a1l,%a7u,#1,-(%a1),%d1 + mac.w %a1l,%a7u,#1,-(%a1),%a3 + mac.w %a1l,%a7u,#1,-(%a1),%d2 + mac.w %a1l,%a7u,#1,-(%a1),%a7 + mac.w %a1l,%a7u,#1,-(%a1)&,%d1 + mac.w %a1l,%a7u,#1,-(%a1)&,%a3 + mac.w %a1l,%a7u,#1,-(%a1)&,%d2 + mac.w %a1l,%a7u,#1,-(%a1)&,%a7 + mac.w %a1l,%a7u,#-1,(%a3),%d1 + mac.w %a1l,%a7u,#-1,(%a3),%a3 + mac.w %a1l,%a7u,#-1,(%a3),%d2 + mac.w %a1l,%a7u,#-1,(%a3),%a7 + mac.w %a1l,%a7u,#-1,(%a3)&,%d1 + mac.w %a1l,%a7u,#-1,(%a3)&,%a3 + mac.w %a1l,%a7u,#-1,(%a3)&,%d2 + mac.w %a1l,%a7u,#-1,(%a3)&,%a7 + mac.w %a1l,%a7u,#-1,(%a2)+,%d1 + mac.w %a1l,%a7u,#-1,(%a2)+,%a3 + mac.w %a1l,%a7u,#-1,(%a2)+,%d2 + mac.w %a1l,%a7u,#-1,(%a2)+,%a7 + mac.w %a1l,%a7u,#-1,(%a2)+&,%d1 + mac.w %a1l,%a7u,#-1,(%a2)+&,%a3 + mac.w %a1l,%a7u,#-1,(%a2)+&,%d2 + mac.w %a1l,%a7u,#-1,(%a2)+&,%a7 + mac.w %a1l,%a7u,#-1,10(%a6),%d1 + mac.w %a1l,%a7u,#-1,10(%a6),%a3 + mac.w %a1l,%a7u,#-1,10(%a6),%d2 + mac.w %a1l,%a7u,#-1,10(%a6),%a7 + mac.w %a1l,%a7u,#-1,10(%a6)&,%d1 + mac.w %a1l,%a7u,#-1,10(%a6)&,%a3 + mac.w %a1l,%a7u,#-1,10(%a6)&,%d2 + mac.w %a1l,%a7u,#-1,10(%a6)&,%a7 + mac.w %a1l,%a7u,#-1,-(%a1),%d1 + mac.w %a1l,%a7u,#-1,-(%a1),%a3 + mac.w %a1l,%a7u,#-1,-(%a1),%d2 + mac.w %a1l,%a7u,#-1,-(%a1),%a7 + mac.w %a1l,%a7u,#-1,-(%a1)&,%d1 + mac.w %a1l,%a7u,#-1,-(%a1)&,%a3 + mac.w %a1l,%a7u,#-1,-(%a1)&,%d2 + mac.w %a1l,%a7u,#-1,-(%a1)&,%a7 + mac.w %a1l,%d1l,(%a3),%d1 + mac.w %a1l,%d1l,(%a3),%a3 + mac.w %a1l,%d1l,(%a3),%d2 + mac.w %a1l,%d1l,(%a3),%a7 + mac.w %a1l,%d1l,(%a3)&,%d1 + mac.w %a1l,%d1l,(%a3)&,%a3 + mac.w %a1l,%d1l,(%a3)&,%d2 + mac.w %a1l,%d1l,(%a3)&,%a7 + mac.w %a1l,%d1l,(%a2)+,%d1 + mac.w %a1l,%d1l,(%a2)+,%a3 + mac.w %a1l,%d1l,(%a2)+,%d2 + mac.w %a1l,%d1l,(%a2)+,%a7 + mac.w %a1l,%d1l,(%a2)+&,%d1 + mac.w %a1l,%d1l,(%a2)+&,%a3 + mac.w %a1l,%d1l,(%a2)+&,%d2 + mac.w %a1l,%d1l,(%a2)+&,%a7 + mac.w %a1l,%d1l,10(%a6),%d1 + mac.w %a1l,%d1l,10(%a6),%a3 + mac.w %a1l,%d1l,10(%a6),%d2 + mac.w %a1l,%d1l,10(%a6),%a7 + mac.w %a1l,%d1l,10(%a6)&,%d1 + mac.w %a1l,%d1l,10(%a6)&,%a3 + mac.w %a1l,%d1l,10(%a6)&,%d2 + mac.w %a1l,%d1l,10(%a6)&,%a7 + mac.w %a1l,%d1l,-(%a1),%d1 + mac.w %a1l,%d1l,-(%a1),%a3 + mac.w %a1l,%d1l,-(%a1),%d2 + mac.w %a1l,%d1l,-(%a1),%a7 + mac.w %a1l,%d1l,-(%a1)&,%d1 + mac.w %a1l,%d1l,-(%a1)&,%a3 + mac.w %a1l,%d1l,-(%a1)&,%d2 + mac.w %a1l,%d1l,-(%a1)&,%a7 + mac.w %a1l,%d1l,<<,(%a3),%d1 + mac.w %a1l,%d1l,<<,(%a3),%a3 + mac.w %a1l,%d1l,<<,(%a3),%d2 + mac.w %a1l,%d1l,<<,(%a3),%a7 + mac.w %a1l,%d1l,<<,(%a3)&,%d1 + mac.w %a1l,%d1l,<<,(%a3)&,%a3 + mac.w %a1l,%d1l,<<,(%a3)&,%d2 + mac.w %a1l,%d1l,<<,(%a3)&,%a7 + mac.w %a1l,%d1l,<<,(%a2)+,%d1 + mac.w %a1l,%d1l,<<,(%a2)+,%a3 + mac.w %a1l,%d1l,<<,(%a2)+,%d2 + mac.w %a1l,%d1l,<<,(%a2)+,%a7 + mac.w %a1l,%d1l,<<,(%a2)+&,%d1 + mac.w %a1l,%d1l,<<,(%a2)+&,%a3 + mac.w %a1l,%d1l,<<,(%a2)+&,%d2 + mac.w %a1l,%d1l,<<,(%a2)+&,%a7 + mac.w %a1l,%d1l,<<,10(%a6),%d1 + mac.w %a1l,%d1l,<<,10(%a6),%a3 + mac.w %a1l,%d1l,<<,10(%a6),%d2 + mac.w %a1l,%d1l,<<,10(%a6),%a7 + mac.w %a1l,%d1l,<<,10(%a6)&,%d1 + mac.w %a1l,%d1l,<<,10(%a6)&,%a3 + mac.w %a1l,%d1l,<<,10(%a6)&,%d2 + mac.w %a1l,%d1l,<<,10(%a6)&,%a7 + mac.w %a1l,%d1l,<<,-(%a1),%d1 + mac.w %a1l,%d1l,<<,-(%a1),%a3 + mac.w %a1l,%d1l,<<,-(%a1),%d2 + mac.w %a1l,%d1l,<<,-(%a1),%a7 + mac.w %a1l,%d1l,<<,-(%a1)&,%d1 + mac.w %a1l,%d1l,<<,-(%a1)&,%a3 + mac.w %a1l,%d1l,<<,-(%a1)&,%d2 + mac.w %a1l,%d1l,<<,-(%a1)&,%a7 + mac.w %a1l,%d1l,>>,(%a3),%d1 + mac.w %a1l,%d1l,>>,(%a3),%a3 + mac.w %a1l,%d1l,>>,(%a3),%d2 + mac.w %a1l,%d1l,>>,(%a3),%a7 + mac.w %a1l,%d1l,>>,(%a3)&,%d1 + mac.w %a1l,%d1l,>>,(%a3)&,%a3 + mac.w %a1l,%d1l,>>,(%a3)&,%d2 + mac.w %a1l,%d1l,>>,(%a3)&,%a7 + mac.w %a1l,%d1l,>>,(%a2)+,%d1 + mac.w %a1l,%d1l,>>,(%a2)+,%a3 + mac.w %a1l,%d1l,>>,(%a2)+,%d2 + mac.w %a1l,%d1l,>>,(%a2)+,%a7 + mac.w %a1l,%d1l,>>,(%a2)+&,%d1 + mac.w %a1l,%d1l,>>,(%a2)+&,%a3 + mac.w %a1l,%d1l,>>,(%a2)+&,%d2 + mac.w %a1l,%d1l,>>,(%a2)+&,%a7 + mac.w %a1l,%d1l,>>,10(%a6),%d1 + mac.w %a1l,%d1l,>>,10(%a6),%a3 + mac.w %a1l,%d1l,>>,10(%a6),%d2 + mac.w %a1l,%d1l,>>,10(%a6),%a7 + mac.w %a1l,%d1l,>>,10(%a6)&,%d1 + mac.w %a1l,%d1l,>>,10(%a6)&,%a3 + mac.w %a1l,%d1l,>>,10(%a6)&,%d2 + mac.w %a1l,%d1l,>>,10(%a6)&,%a7 + mac.w %a1l,%d1l,>>,-(%a1),%d1 + mac.w %a1l,%d1l,>>,-(%a1),%a3 + mac.w %a1l,%d1l,>>,-(%a1),%d2 + mac.w %a1l,%d1l,>>,-(%a1),%a7 + mac.w %a1l,%d1l,>>,-(%a1)&,%d1 + mac.w %a1l,%d1l,>>,-(%a1)&,%a3 + mac.w %a1l,%d1l,>>,-(%a1)&,%d2 + mac.w %a1l,%d1l,>>,-(%a1)&,%a7 + mac.w %a1l,%d1l,#1,(%a3),%d1 + mac.w %a1l,%d1l,#1,(%a3),%a3 + mac.w %a1l,%d1l,#1,(%a3),%d2 + mac.w %a1l,%d1l,#1,(%a3),%a7 + mac.w %a1l,%d1l,#1,(%a3)&,%d1 + mac.w %a1l,%d1l,#1,(%a3)&,%a3 + mac.w %a1l,%d1l,#1,(%a3)&,%d2 + mac.w %a1l,%d1l,#1,(%a3)&,%a7 + mac.w %a1l,%d1l,#1,(%a2)+,%d1 + mac.w %a1l,%d1l,#1,(%a2)+,%a3 + mac.w %a1l,%d1l,#1,(%a2)+,%d2 + mac.w %a1l,%d1l,#1,(%a2)+,%a7 + mac.w %a1l,%d1l,#1,(%a2)+&,%d1 + mac.w %a1l,%d1l,#1,(%a2)+&,%a3 + mac.w %a1l,%d1l,#1,(%a2)+&,%d2 + mac.w %a1l,%d1l,#1,(%a2)+&,%a7 + mac.w %a1l,%d1l,#1,10(%a6),%d1 + mac.w %a1l,%d1l,#1,10(%a6),%a3 + mac.w %a1l,%d1l,#1,10(%a6),%d2 + mac.w %a1l,%d1l,#1,10(%a6),%a7 + mac.w %a1l,%d1l,#1,10(%a6)&,%d1 + mac.w %a1l,%d1l,#1,10(%a6)&,%a3 + mac.w %a1l,%d1l,#1,10(%a6)&,%d2 + mac.w %a1l,%d1l,#1,10(%a6)&,%a7 + mac.w %a1l,%d1l,#1,-(%a1),%d1 + mac.w %a1l,%d1l,#1,-(%a1),%a3 + mac.w %a1l,%d1l,#1,-(%a1),%d2 + mac.w %a1l,%d1l,#1,-(%a1),%a7 + mac.w %a1l,%d1l,#1,-(%a1)&,%d1 + mac.w %a1l,%d1l,#1,-(%a1)&,%a3 + mac.w %a1l,%d1l,#1,-(%a1)&,%d2 + mac.w %a1l,%d1l,#1,-(%a1)&,%a7 + mac.w %a1l,%d1l,#-1,(%a3),%d1 + mac.w %a1l,%d1l,#-1,(%a3),%a3 + mac.w %a1l,%d1l,#-1,(%a3),%d2 + mac.w %a1l,%d1l,#-1,(%a3),%a7 + mac.w %a1l,%d1l,#-1,(%a3)&,%d1 + mac.w %a1l,%d1l,#-1,(%a3)&,%a3 + mac.w %a1l,%d1l,#-1,(%a3)&,%d2 + mac.w %a1l,%d1l,#-1,(%a3)&,%a7 + mac.w %a1l,%d1l,#-1,(%a2)+,%d1 + mac.w %a1l,%d1l,#-1,(%a2)+,%a3 + mac.w %a1l,%d1l,#-1,(%a2)+,%d2 + mac.w %a1l,%d1l,#-1,(%a2)+,%a7 + mac.w %a1l,%d1l,#-1,(%a2)+&,%d1 + mac.w %a1l,%d1l,#-1,(%a2)+&,%a3 + mac.w %a1l,%d1l,#-1,(%a2)+&,%d2 + mac.w %a1l,%d1l,#-1,(%a2)+&,%a7 + mac.w %a1l,%d1l,#-1,10(%a6),%d1 + mac.w %a1l,%d1l,#-1,10(%a6),%a3 + mac.w %a1l,%d1l,#-1,10(%a6),%d2 + mac.w %a1l,%d1l,#-1,10(%a6),%a7 + mac.w %a1l,%d1l,#-1,10(%a6)&,%d1 + mac.w %a1l,%d1l,#-1,10(%a6)&,%a3 + mac.w %a1l,%d1l,#-1,10(%a6)&,%d2 + mac.w %a1l,%d1l,#-1,10(%a6)&,%a7 + mac.w %a1l,%d1l,#-1,-(%a1),%d1 + mac.w %a1l,%d1l,#-1,-(%a1),%a3 + mac.w %a1l,%d1l,#-1,-(%a1),%d2 + mac.w %a1l,%d1l,#-1,-(%a1),%a7 + mac.w %a1l,%d1l,#-1,-(%a1)&,%d1 + mac.w %a1l,%d1l,#-1,-(%a1)&,%a3 + mac.w %a1l,%d1l,#-1,-(%a1)&,%d2 + mac.w %a1l,%d1l,#-1,-(%a1)&,%a7 + mac.w %d2u,%a2u,(%a3),%d1 + mac.w %d2u,%a2u,(%a3),%a3 + mac.w %d2u,%a2u,(%a3),%d2 + mac.w %d2u,%a2u,(%a3),%a7 + mac.w %d2u,%a2u,(%a3)&,%d1 + mac.w %d2u,%a2u,(%a3)&,%a3 + mac.w %d2u,%a2u,(%a3)&,%d2 + mac.w %d2u,%a2u,(%a3)&,%a7 + mac.w %d2u,%a2u,(%a2)+,%d1 + mac.w %d2u,%a2u,(%a2)+,%a3 + mac.w %d2u,%a2u,(%a2)+,%d2 + mac.w %d2u,%a2u,(%a2)+,%a7 + mac.w %d2u,%a2u,(%a2)+&,%d1 + mac.w %d2u,%a2u,(%a2)+&,%a3 + mac.w %d2u,%a2u,(%a2)+&,%d2 + mac.w %d2u,%a2u,(%a2)+&,%a7 + mac.w %d2u,%a2u,10(%a6),%d1 + mac.w %d2u,%a2u,10(%a6),%a3 + mac.w %d2u,%a2u,10(%a6),%d2 + mac.w %d2u,%a2u,10(%a6),%a7 + mac.w %d2u,%a2u,10(%a6)&,%d1 + mac.w %d2u,%a2u,10(%a6)&,%a3 + mac.w %d2u,%a2u,10(%a6)&,%d2 + mac.w %d2u,%a2u,10(%a6)&,%a7 + mac.w %d2u,%a2u,-(%a1),%d1 + mac.w %d2u,%a2u,-(%a1),%a3 + mac.w %d2u,%a2u,-(%a1),%d2 + mac.w %d2u,%a2u,-(%a1),%a7 + mac.w %d2u,%a2u,-(%a1)&,%d1 + mac.w %d2u,%a2u,-(%a1)&,%a3 + mac.w %d2u,%a2u,-(%a1)&,%d2 + mac.w %d2u,%a2u,-(%a1)&,%a7 + mac.w %d2u,%a2u,<<,(%a3),%d1 + mac.w %d2u,%a2u,<<,(%a3),%a3 + mac.w %d2u,%a2u,<<,(%a3),%d2 + mac.w %d2u,%a2u,<<,(%a3),%a7 + mac.w %d2u,%a2u,<<,(%a3)&,%d1 + mac.w %d2u,%a2u,<<,(%a3)&,%a3 + mac.w %d2u,%a2u,<<,(%a3)&,%d2 + mac.w %d2u,%a2u,<<,(%a3)&,%a7 + mac.w %d2u,%a2u,<<,(%a2)+,%d1 + mac.w %d2u,%a2u,<<,(%a2)+,%a3 + mac.w %d2u,%a2u,<<,(%a2)+,%d2 + mac.w %d2u,%a2u,<<,(%a2)+,%a7 + mac.w %d2u,%a2u,<<,(%a2)+&,%d1 + mac.w %d2u,%a2u,<<,(%a2)+&,%a3 + mac.w %d2u,%a2u,<<,(%a2)+&,%d2 + mac.w %d2u,%a2u,<<,(%a2)+&,%a7 + mac.w %d2u,%a2u,<<,10(%a6),%d1 + mac.w %d2u,%a2u,<<,10(%a6),%a3 + mac.w %d2u,%a2u,<<,10(%a6),%d2 + mac.w %d2u,%a2u,<<,10(%a6),%a7 + mac.w %d2u,%a2u,<<,10(%a6)&,%d1 + mac.w %d2u,%a2u,<<,10(%a6)&,%a3 + mac.w %d2u,%a2u,<<,10(%a6)&,%d2 + mac.w %d2u,%a2u,<<,10(%a6)&,%a7 + mac.w %d2u,%a2u,<<,-(%a1),%d1 + mac.w %d2u,%a2u,<<,-(%a1),%a3 + mac.w %d2u,%a2u,<<,-(%a1),%d2 + mac.w %d2u,%a2u,<<,-(%a1),%a7 + mac.w %d2u,%a2u,<<,-(%a1)&,%d1 + mac.w %d2u,%a2u,<<,-(%a1)&,%a3 + mac.w %d2u,%a2u,<<,-(%a1)&,%d2 + mac.w %d2u,%a2u,<<,-(%a1)&,%a7 + mac.w %d2u,%a2u,>>,(%a3),%d1 + mac.w %d2u,%a2u,>>,(%a3),%a3 + mac.w %d2u,%a2u,>>,(%a3),%d2 + mac.w %d2u,%a2u,>>,(%a3),%a7 + mac.w %d2u,%a2u,>>,(%a3)&,%d1 + mac.w %d2u,%a2u,>>,(%a3)&,%a3 + mac.w %d2u,%a2u,>>,(%a3)&,%d2 + mac.w %d2u,%a2u,>>,(%a3)&,%a7 + mac.w %d2u,%a2u,>>,(%a2)+,%d1 + mac.w %d2u,%a2u,>>,(%a2)+,%a3 + mac.w %d2u,%a2u,>>,(%a2)+,%d2 + mac.w %d2u,%a2u,>>,(%a2)+,%a7 + mac.w %d2u,%a2u,>>,(%a2)+&,%d1 + mac.w %d2u,%a2u,>>,(%a2)+&,%a3 + mac.w %d2u,%a2u,>>,(%a2)+&,%d2 + mac.w %d2u,%a2u,>>,(%a2)+&,%a7 + mac.w %d2u,%a2u,>>,10(%a6),%d1 + mac.w %d2u,%a2u,>>,10(%a6),%a3 + mac.w %d2u,%a2u,>>,10(%a6),%d2 + mac.w %d2u,%a2u,>>,10(%a6),%a7 + mac.w %d2u,%a2u,>>,10(%a6)&,%d1 + mac.w %d2u,%a2u,>>,10(%a6)&,%a3 + mac.w %d2u,%a2u,>>,10(%a6)&,%d2 + mac.w %d2u,%a2u,>>,10(%a6)&,%a7 + mac.w %d2u,%a2u,>>,-(%a1),%d1 + mac.w %d2u,%a2u,>>,-(%a1),%a3 + mac.w %d2u,%a2u,>>,-(%a1),%d2 + mac.w %d2u,%a2u,>>,-(%a1),%a7 + mac.w %d2u,%a2u,>>,-(%a1)&,%d1 + mac.w %d2u,%a2u,>>,-(%a1)&,%a3 + mac.w %d2u,%a2u,>>,-(%a1)&,%d2 + mac.w %d2u,%a2u,>>,-(%a1)&,%a7 + mac.w %d2u,%a2u,#1,(%a3),%d1 + mac.w %d2u,%a2u,#1,(%a3),%a3 + mac.w %d2u,%a2u,#1,(%a3),%d2 + mac.w %d2u,%a2u,#1,(%a3),%a7 + mac.w %d2u,%a2u,#1,(%a3)&,%d1 + mac.w %d2u,%a2u,#1,(%a3)&,%a3 + mac.w %d2u,%a2u,#1,(%a3)&,%d2 + mac.w %d2u,%a2u,#1,(%a3)&,%a7 + mac.w %d2u,%a2u,#1,(%a2)+,%d1 + mac.w %d2u,%a2u,#1,(%a2)+,%a3 + mac.w %d2u,%a2u,#1,(%a2)+,%d2 + mac.w %d2u,%a2u,#1,(%a2)+,%a7 + mac.w %d2u,%a2u,#1,(%a2)+&,%d1 + mac.w %d2u,%a2u,#1,(%a2)+&,%a3 + mac.w %d2u,%a2u,#1,(%a2)+&,%d2 + mac.w %d2u,%a2u,#1,(%a2)+&,%a7 + mac.w %d2u,%a2u,#1,10(%a6),%d1 + mac.w %d2u,%a2u,#1,10(%a6),%a3 + mac.w %d2u,%a2u,#1,10(%a6),%d2 + mac.w %d2u,%a2u,#1,10(%a6),%a7 + mac.w %d2u,%a2u,#1,10(%a6)&,%d1 + mac.w %d2u,%a2u,#1,10(%a6)&,%a3 + mac.w %d2u,%a2u,#1,10(%a6)&,%d2 + mac.w %d2u,%a2u,#1,10(%a6)&,%a7 + mac.w %d2u,%a2u,#1,-(%a1),%d1 + mac.w %d2u,%a2u,#1,-(%a1),%a3 + mac.w %d2u,%a2u,#1,-(%a1),%d2 + mac.w %d2u,%a2u,#1,-(%a1),%a7 + mac.w %d2u,%a2u,#1,-(%a1)&,%d1 + mac.w %d2u,%a2u,#1,-(%a1)&,%a3 + mac.w %d2u,%a2u,#1,-(%a1)&,%d2 + mac.w %d2u,%a2u,#1,-(%a1)&,%a7 + mac.w %d2u,%a2u,#-1,(%a3),%d1 + mac.w %d2u,%a2u,#-1,(%a3),%a3 + mac.w %d2u,%a2u,#-1,(%a3),%d2 + mac.w %d2u,%a2u,#-1,(%a3),%a7 + mac.w %d2u,%a2u,#-1,(%a3)&,%d1 + mac.w %d2u,%a2u,#-1,(%a3)&,%a3 + mac.w %d2u,%a2u,#-1,(%a3)&,%d2 + mac.w %d2u,%a2u,#-1,(%a3)&,%a7 + mac.w %d2u,%a2u,#-1,(%a2)+,%d1 + mac.w %d2u,%a2u,#-1,(%a2)+,%a3 + mac.w %d2u,%a2u,#-1,(%a2)+,%d2 + mac.w %d2u,%a2u,#-1,(%a2)+,%a7 + mac.w %d2u,%a2u,#-1,(%a2)+&,%d1 + mac.w %d2u,%a2u,#-1,(%a2)+&,%a3 + mac.w %d2u,%a2u,#-1,(%a2)+&,%d2 + mac.w %d2u,%a2u,#-1,(%a2)+&,%a7 + mac.w %d2u,%a2u,#-1,10(%a6),%d1 + mac.w %d2u,%a2u,#-1,10(%a6),%a3 + mac.w %d2u,%a2u,#-1,10(%a6),%d2 + mac.w %d2u,%a2u,#-1,10(%a6),%a7 + mac.w %d2u,%a2u,#-1,10(%a6)&,%d1 + mac.w %d2u,%a2u,#-1,10(%a6)&,%a3 + mac.w %d2u,%a2u,#-1,10(%a6)&,%d2 + mac.w %d2u,%a2u,#-1,10(%a6)&,%a7 + mac.w %d2u,%a2u,#-1,-(%a1),%d1 + mac.w %d2u,%a2u,#-1,-(%a1),%a3 + mac.w %d2u,%a2u,#-1,-(%a1),%d2 + mac.w %d2u,%a2u,#-1,-(%a1),%a7 + mac.w %d2u,%a2u,#-1,-(%a1)&,%d1 + mac.w %d2u,%a2u,#-1,-(%a1)&,%a3 + mac.w %d2u,%a2u,#-1,-(%a1)&,%d2 + mac.w %d2u,%a2u,#-1,-(%a1)&,%a7 + mac.w %d2u,%d3l,(%a3),%d1 + mac.w %d2u,%d3l,(%a3),%a3 + mac.w %d2u,%d3l,(%a3),%d2 + mac.w %d2u,%d3l,(%a3),%a7 + mac.w %d2u,%d3l,(%a3)&,%d1 + mac.w %d2u,%d3l,(%a3)&,%a3 + mac.w %d2u,%d3l,(%a3)&,%d2 + mac.w %d2u,%d3l,(%a3)&,%a7 + mac.w %d2u,%d3l,(%a2)+,%d1 + mac.w %d2u,%d3l,(%a2)+,%a3 + mac.w %d2u,%d3l,(%a2)+,%d2 + mac.w %d2u,%d3l,(%a2)+,%a7 + mac.w %d2u,%d3l,(%a2)+&,%d1 + mac.w %d2u,%d3l,(%a2)+&,%a3 + mac.w %d2u,%d3l,(%a2)+&,%d2 + mac.w %d2u,%d3l,(%a2)+&,%a7 + mac.w %d2u,%d3l,10(%a6),%d1 + mac.w %d2u,%d3l,10(%a6),%a3 + mac.w %d2u,%d3l,10(%a6),%d2 + mac.w %d2u,%d3l,10(%a6),%a7 + mac.w %d2u,%d3l,10(%a6)&,%d1 + mac.w %d2u,%d3l,10(%a6)&,%a3 + mac.w %d2u,%d3l,10(%a6)&,%d2 + mac.w %d2u,%d3l,10(%a6)&,%a7 + mac.w %d2u,%d3l,-(%a1),%d1 + mac.w %d2u,%d3l,-(%a1),%a3 + mac.w %d2u,%d3l,-(%a1),%d2 + mac.w %d2u,%d3l,-(%a1),%a7 + mac.w %d2u,%d3l,-(%a1)&,%d1 + mac.w %d2u,%d3l,-(%a1)&,%a3 + mac.w %d2u,%d3l,-(%a1)&,%d2 + mac.w %d2u,%d3l,-(%a1)&,%a7 + mac.w %d2u,%d3l,<<,(%a3),%d1 + mac.w %d2u,%d3l,<<,(%a3),%a3 + mac.w %d2u,%d3l,<<,(%a3),%d2 + mac.w %d2u,%d3l,<<,(%a3),%a7 + mac.w %d2u,%d3l,<<,(%a3)&,%d1 + mac.w %d2u,%d3l,<<,(%a3)&,%a3 + mac.w %d2u,%d3l,<<,(%a3)&,%d2 + mac.w %d2u,%d3l,<<,(%a3)&,%a7 + mac.w %d2u,%d3l,<<,(%a2)+,%d1 + mac.w %d2u,%d3l,<<,(%a2)+,%a3 + mac.w %d2u,%d3l,<<,(%a2)+,%d2 + mac.w %d2u,%d3l,<<,(%a2)+,%a7 + mac.w %d2u,%d3l,<<,(%a2)+&,%d1 + mac.w %d2u,%d3l,<<,(%a2)+&,%a3 + mac.w %d2u,%d3l,<<,(%a2)+&,%d2 + mac.w %d2u,%d3l,<<,(%a2)+&,%a7 + mac.w %d2u,%d3l,<<,10(%a6),%d1 + mac.w %d2u,%d3l,<<,10(%a6),%a3 + mac.w %d2u,%d3l,<<,10(%a6),%d2 + mac.w %d2u,%d3l,<<,10(%a6),%a7 + mac.w %d2u,%d3l,<<,10(%a6)&,%d1 + mac.w %d2u,%d3l,<<,10(%a6)&,%a3 + mac.w %d2u,%d3l,<<,10(%a6)&,%d2 + mac.w %d2u,%d3l,<<,10(%a6)&,%a7 + mac.w %d2u,%d3l,<<,-(%a1),%d1 + mac.w %d2u,%d3l,<<,-(%a1),%a3 + mac.w %d2u,%d3l,<<,-(%a1),%d2 + mac.w %d2u,%d3l,<<,-(%a1),%a7 + mac.w %d2u,%d3l,<<,-(%a1)&,%d1 + mac.w %d2u,%d3l,<<,-(%a1)&,%a3 + mac.w %d2u,%d3l,<<,-(%a1)&,%d2 + mac.w %d2u,%d3l,<<,-(%a1)&,%a7 + mac.w %d2u,%d3l,>>,(%a3),%d1 + mac.w %d2u,%d3l,>>,(%a3),%a3 + mac.w %d2u,%d3l,>>,(%a3),%d2 + mac.w %d2u,%d3l,>>,(%a3),%a7 + mac.w %d2u,%d3l,>>,(%a3)&,%d1 + mac.w %d2u,%d3l,>>,(%a3)&,%a3 + mac.w %d2u,%d3l,>>,(%a3)&,%d2 + mac.w %d2u,%d3l,>>,(%a3)&,%a7 + mac.w %d2u,%d3l,>>,(%a2)+,%d1 + mac.w %d2u,%d3l,>>,(%a2)+,%a3 + mac.w %d2u,%d3l,>>,(%a2)+,%d2 + mac.w %d2u,%d3l,>>,(%a2)+,%a7 + mac.w %d2u,%d3l,>>,(%a2)+&,%d1 + mac.w %d2u,%d3l,>>,(%a2)+&,%a3 + mac.w %d2u,%d3l,>>,(%a2)+&,%d2 + mac.w %d2u,%d3l,>>,(%a2)+&,%a7 + mac.w %d2u,%d3l,>>,10(%a6),%d1 + mac.w %d2u,%d3l,>>,10(%a6),%a3 + mac.w %d2u,%d3l,>>,10(%a6),%d2 + mac.w %d2u,%d3l,>>,10(%a6),%a7 + mac.w %d2u,%d3l,>>,10(%a6)&,%d1 + mac.w %d2u,%d3l,>>,10(%a6)&,%a3 + mac.w %d2u,%d3l,>>,10(%a6)&,%d2 + mac.w %d2u,%d3l,>>,10(%a6)&,%a7 + mac.w %d2u,%d3l,>>,-(%a1),%d1 + mac.w %d2u,%d3l,>>,-(%a1),%a3 + mac.w %d2u,%d3l,>>,-(%a1),%d2 + mac.w %d2u,%d3l,>>,-(%a1),%a7 + mac.w %d2u,%d3l,>>,-(%a1)&,%d1 + mac.w %d2u,%d3l,>>,-(%a1)&,%a3 + mac.w %d2u,%d3l,>>,-(%a1)&,%d2 + mac.w %d2u,%d3l,>>,-(%a1)&,%a7 + mac.w %d2u,%d3l,#1,(%a3),%d1 + mac.w %d2u,%d3l,#1,(%a3),%a3 + mac.w %d2u,%d3l,#1,(%a3),%d2 + mac.w %d2u,%d3l,#1,(%a3),%a7 + mac.w %d2u,%d3l,#1,(%a3)&,%d1 + mac.w %d2u,%d3l,#1,(%a3)&,%a3 + mac.w %d2u,%d3l,#1,(%a3)&,%d2 + mac.w %d2u,%d3l,#1,(%a3)&,%a7 + mac.w %d2u,%d3l,#1,(%a2)+,%d1 + mac.w %d2u,%d3l,#1,(%a2)+,%a3 + mac.w %d2u,%d3l,#1,(%a2)+,%d2 + mac.w %d2u,%d3l,#1,(%a2)+,%a7 + mac.w %d2u,%d3l,#1,(%a2)+&,%d1 + mac.w %d2u,%d3l,#1,(%a2)+&,%a3 + mac.w %d2u,%d3l,#1,(%a2)+&,%d2 + mac.w %d2u,%d3l,#1,(%a2)+&,%a7 + mac.w %d2u,%d3l,#1,10(%a6),%d1 + mac.w %d2u,%d3l,#1,10(%a6),%a3 + mac.w %d2u,%d3l,#1,10(%a6),%d2 + mac.w %d2u,%d3l,#1,10(%a6),%a7 + mac.w %d2u,%d3l,#1,10(%a6)&,%d1 + mac.w %d2u,%d3l,#1,10(%a6)&,%a3 + mac.w %d2u,%d3l,#1,10(%a6)&,%d2 + mac.w %d2u,%d3l,#1,10(%a6)&,%a7 + mac.w %d2u,%d3l,#1,-(%a1),%d1 + mac.w %d2u,%d3l,#1,-(%a1),%a3 + mac.w %d2u,%d3l,#1,-(%a1),%d2 + mac.w %d2u,%d3l,#1,-(%a1),%a7 + mac.w %d2u,%d3l,#1,-(%a1)&,%d1 + mac.w %d2u,%d3l,#1,-(%a1)&,%a3 + mac.w %d2u,%d3l,#1,-(%a1)&,%d2 + mac.w %d2u,%d3l,#1,-(%a1)&,%a7 + mac.w %d2u,%d3l,#-1,(%a3),%d1 + mac.w %d2u,%d3l,#-1,(%a3),%a3 + mac.w %d2u,%d3l,#-1,(%a3),%d2 + mac.w %d2u,%d3l,#-1,(%a3),%a7 + mac.w %d2u,%d3l,#-1,(%a3)&,%d1 + mac.w %d2u,%d3l,#-1,(%a3)&,%a3 + mac.w %d2u,%d3l,#-1,(%a3)&,%d2 + mac.w %d2u,%d3l,#-1,(%a3)&,%a7 + mac.w %d2u,%d3l,#-1,(%a2)+,%d1 + mac.w %d2u,%d3l,#-1,(%a2)+,%a3 + mac.w %d2u,%d3l,#-1,(%a2)+,%d2 + mac.w %d2u,%d3l,#-1,(%a2)+,%a7 + mac.w %d2u,%d3l,#-1,(%a2)+&,%d1 + mac.w %d2u,%d3l,#-1,(%a2)+&,%a3 + mac.w %d2u,%d3l,#-1,(%a2)+&,%d2 + mac.w %d2u,%d3l,#-1,(%a2)+&,%a7 + mac.w %d2u,%d3l,#-1,10(%a6),%d1 + mac.w %d2u,%d3l,#-1,10(%a6),%a3 + mac.w %d2u,%d3l,#-1,10(%a6),%d2 + mac.w %d2u,%d3l,#-1,10(%a6),%a7 + mac.w %d2u,%d3l,#-1,10(%a6)&,%d1 + mac.w %d2u,%d3l,#-1,10(%a6)&,%a3 + mac.w %d2u,%d3l,#-1,10(%a6)&,%d2 + mac.w %d2u,%d3l,#-1,10(%a6)&,%a7 + mac.w %d2u,%d3l,#-1,-(%a1),%d1 + mac.w %d2u,%d3l,#-1,-(%a1),%a3 + mac.w %d2u,%d3l,#-1,-(%a1),%d2 + mac.w %d2u,%d3l,#-1,-(%a1),%a7 + mac.w %d2u,%d3l,#-1,-(%a1)&,%d1 + mac.w %d2u,%d3l,#-1,-(%a1)&,%a3 + mac.w %d2u,%d3l,#-1,-(%a1)&,%d2 + mac.w %d2u,%d3l,#-1,-(%a1)&,%a7 + mac.w %d2u,%a7u,(%a3),%d1 + mac.w %d2u,%a7u,(%a3),%a3 + mac.w %d2u,%a7u,(%a3),%d2 + mac.w %d2u,%a7u,(%a3),%a7 + mac.w %d2u,%a7u,(%a3)&,%d1 + mac.w %d2u,%a7u,(%a3)&,%a3 + mac.w %d2u,%a7u,(%a3)&,%d2 + mac.w %d2u,%a7u,(%a3)&,%a7 + mac.w %d2u,%a7u,(%a2)+,%d1 + mac.w %d2u,%a7u,(%a2)+,%a3 + mac.w %d2u,%a7u,(%a2)+,%d2 + mac.w %d2u,%a7u,(%a2)+,%a7 + mac.w %d2u,%a7u,(%a2)+&,%d1 + mac.w %d2u,%a7u,(%a2)+&,%a3 + mac.w %d2u,%a7u,(%a2)+&,%d2 + mac.w %d2u,%a7u,(%a2)+&,%a7 + mac.w %d2u,%a7u,10(%a6),%d1 + mac.w %d2u,%a7u,10(%a6),%a3 + mac.w %d2u,%a7u,10(%a6),%d2 + mac.w %d2u,%a7u,10(%a6),%a7 + mac.w %d2u,%a7u,10(%a6)&,%d1 + mac.w %d2u,%a7u,10(%a6)&,%a3 + mac.w %d2u,%a7u,10(%a6)&,%d2 + mac.w %d2u,%a7u,10(%a6)&,%a7 + mac.w %d2u,%a7u,-(%a1),%d1 + mac.w %d2u,%a7u,-(%a1),%a3 + mac.w %d2u,%a7u,-(%a1),%d2 + mac.w %d2u,%a7u,-(%a1),%a7 + mac.w %d2u,%a7u,-(%a1)&,%d1 + mac.w %d2u,%a7u,-(%a1)&,%a3 + mac.w %d2u,%a7u,-(%a1)&,%d2 + mac.w %d2u,%a7u,-(%a1)&,%a7 + mac.w %d2u,%a7u,<<,(%a3),%d1 + mac.w %d2u,%a7u,<<,(%a3),%a3 + mac.w %d2u,%a7u,<<,(%a3),%d2 + mac.w %d2u,%a7u,<<,(%a3),%a7 + mac.w %d2u,%a7u,<<,(%a3)&,%d1 + mac.w %d2u,%a7u,<<,(%a3)&,%a3 + mac.w %d2u,%a7u,<<,(%a3)&,%d2 + mac.w %d2u,%a7u,<<,(%a3)&,%a7 + mac.w %d2u,%a7u,<<,(%a2)+,%d1 + mac.w %d2u,%a7u,<<,(%a2)+,%a3 + mac.w %d2u,%a7u,<<,(%a2)+,%d2 + mac.w %d2u,%a7u,<<,(%a2)+,%a7 + mac.w %d2u,%a7u,<<,(%a2)+&,%d1 + mac.w %d2u,%a7u,<<,(%a2)+&,%a3 + mac.w %d2u,%a7u,<<,(%a2)+&,%d2 + mac.w %d2u,%a7u,<<,(%a2)+&,%a7 + mac.w %d2u,%a7u,<<,10(%a6),%d1 + mac.w %d2u,%a7u,<<,10(%a6),%a3 + mac.w %d2u,%a7u,<<,10(%a6),%d2 + mac.w %d2u,%a7u,<<,10(%a6),%a7 + mac.w %d2u,%a7u,<<,10(%a6)&,%d1 + mac.w %d2u,%a7u,<<,10(%a6)&,%a3 + mac.w %d2u,%a7u,<<,10(%a6)&,%d2 + mac.w %d2u,%a7u,<<,10(%a6)&,%a7 + mac.w %d2u,%a7u,<<,-(%a1),%d1 + mac.w %d2u,%a7u,<<,-(%a1),%a3 + mac.w %d2u,%a7u,<<,-(%a1),%d2 + mac.w %d2u,%a7u,<<,-(%a1),%a7 + mac.w %d2u,%a7u,<<,-(%a1)&,%d1 + mac.w %d2u,%a7u,<<,-(%a1)&,%a3 + mac.w %d2u,%a7u,<<,-(%a1)&,%d2 + mac.w %d2u,%a7u,<<,-(%a1)&,%a7 + mac.w %d2u,%a7u,>>,(%a3),%d1 + mac.w %d2u,%a7u,>>,(%a3),%a3 + mac.w %d2u,%a7u,>>,(%a3),%d2 + mac.w %d2u,%a7u,>>,(%a3),%a7 + mac.w %d2u,%a7u,>>,(%a3)&,%d1 + mac.w %d2u,%a7u,>>,(%a3)&,%a3 + mac.w %d2u,%a7u,>>,(%a3)&,%d2 + mac.w %d2u,%a7u,>>,(%a3)&,%a7 + mac.w %d2u,%a7u,>>,(%a2)+,%d1 + mac.w %d2u,%a7u,>>,(%a2)+,%a3 + mac.w %d2u,%a7u,>>,(%a2)+,%d2 + mac.w %d2u,%a7u,>>,(%a2)+,%a7 + mac.w %d2u,%a7u,>>,(%a2)+&,%d1 + mac.w %d2u,%a7u,>>,(%a2)+&,%a3 + mac.w %d2u,%a7u,>>,(%a2)+&,%d2 + mac.w %d2u,%a7u,>>,(%a2)+&,%a7 + mac.w %d2u,%a7u,>>,10(%a6),%d1 + mac.w %d2u,%a7u,>>,10(%a6),%a3 + mac.w %d2u,%a7u,>>,10(%a6),%d2 + mac.w %d2u,%a7u,>>,10(%a6),%a7 + mac.w %d2u,%a7u,>>,10(%a6)&,%d1 + mac.w %d2u,%a7u,>>,10(%a6)&,%a3 + mac.w %d2u,%a7u,>>,10(%a6)&,%d2 + mac.w %d2u,%a7u,>>,10(%a6)&,%a7 + mac.w %d2u,%a7u,>>,-(%a1),%d1 + mac.w %d2u,%a7u,>>,-(%a1),%a3 + mac.w %d2u,%a7u,>>,-(%a1),%d2 + mac.w %d2u,%a7u,>>,-(%a1),%a7 + mac.w %d2u,%a7u,>>,-(%a1)&,%d1 + mac.w %d2u,%a7u,>>,-(%a1)&,%a3 + mac.w %d2u,%a7u,>>,-(%a1)&,%d2 + mac.w %d2u,%a7u,>>,-(%a1)&,%a7 + mac.w %d2u,%a7u,#1,(%a3),%d1 + mac.w %d2u,%a7u,#1,(%a3),%a3 + mac.w %d2u,%a7u,#1,(%a3),%d2 + mac.w %d2u,%a7u,#1,(%a3),%a7 + mac.w %d2u,%a7u,#1,(%a3)&,%d1 + mac.w %d2u,%a7u,#1,(%a3)&,%a3 + mac.w %d2u,%a7u,#1,(%a3)&,%d2 + mac.w %d2u,%a7u,#1,(%a3)&,%a7 + mac.w %d2u,%a7u,#1,(%a2)+,%d1 + mac.w %d2u,%a7u,#1,(%a2)+,%a3 + mac.w %d2u,%a7u,#1,(%a2)+,%d2 + mac.w %d2u,%a7u,#1,(%a2)+,%a7 + mac.w %d2u,%a7u,#1,(%a2)+&,%d1 + mac.w %d2u,%a7u,#1,(%a2)+&,%a3 + mac.w %d2u,%a7u,#1,(%a2)+&,%d2 + mac.w %d2u,%a7u,#1,(%a2)+&,%a7 + mac.w %d2u,%a7u,#1,10(%a6),%d1 + mac.w %d2u,%a7u,#1,10(%a6),%a3 + mac.w %d2u,%a7u,#1,10(%a6),%d2 + mac.w %d2u,%a7u,#1,10(%a6),%a7 + mac.w %d2u,%a7u,#1,10(%a6)&,%d1 + mac.w %d2u,%a7u,#1,10(%a6)&,%a3 + mac.w %d2u,%a7u,#1,10(%a6)&,%d2 + mac.w %d2u,%a7u,#1,10(%a6)&,%a7 + mac.w %d2u,%a7u,#1,-(%a1),%d1 + mac.w %d2u,%a7u,#1,-(%a1),%a3 + mac.w %d2u,%a7u,#1,-(%a1),%d2 + mac.w %d2u,%a7u,#1,-(%a1),%a7 + mac.w %d2u,%a7u,#1,-(%a1)&,%d1 + mac.w %d2u,%a7u,#1,-(%a1)&,%a3 + mac.w %d2u,%a7u,#1,-(%a1)&,%d2 + mac.w %d2u,%a7u,#1,-(%a1)&,%a7 + mac.w %d2u,%a7u,#-1,(%a3),%d1 + mac.w %d2u,%a7u,#-1,(%a3),%a3 + mac.w %d2u,%a7u,#-1,(%a3),%d2 + mac.w %d2u,%a7u,#-1,(%a3),%a7 + mac.w %d2u,%a7u,#-1,(%a3)&,%d1 + mac.w %d2u,%a7u,#-1,(%a3)&,%a3 + mac.w %d2u,%a7u,#-1,(%a3)&,%d2 + mac.w %d2u,%a7u,#-1,(%a3)&,%a7 + mac.w %d2u,%a7u,#-1,(%a2)+,%d1 + mac.w %d2u,%a7u,#-1,(%a2)+,%a3 + mac.w %d2u,%a7u,#-1,(%a2)+,%d2 + mac.w %d2u,%a7u,#-1,(%a2)+,%a7 + mac.w %d2u,%a7u,#-1,(%a2)+&,%d1 + mac.w %d2u,%a7u,#-1,(%a2)+&,%a3 + mac.w %d2u,%a7u,#-1,(%a2)+&,%d2 + mac.w %d2u,%a7u,#-1,(%a2)+&,%a7 + mac.w %d2u,%a7u,#-1,10(%a6),%d1 + mac.w %d2u,%a7u,#-1,10(%a6),%a3 + mac.w %d2u,%a7u,#-1,10(%a6),%d2 + mac.w %d2u,%a7u,#-1,10(%a6),%a7 + mac.w %d2u,%a7u,#-1,10(%a6)&,%d1 + mac.w %d2u,%a7u,#-1,10(%a6)&,%a3 + mac.w %d2u,%a7u,#-1,10(%a6)&,%d2 + mac.w %d2u,%a7u,#-1,10(%a6)&,%a7 + mac.w %d2u,%a7u,#-1,-(%a1),%d1 + mac.w %d2u,%a7u,#-1,-(%a1),%a3 + mac.w %d2u,%a7u,#-1,-(%a1),%d2 + mac.w %d2u,%a7u,#-1,-(%a1),%a7 + mac.w %d2u,%a7u,#-1,-(%a1)&,%d1 + mac.w %d2u,%a7u,#-1,-(%a1)&,%a3 + mac.w %d2u,%a7u,#-1,-(%a1)&,%d2 + mac.w %d2u,%a7u,#-1,-(%a1)&,%a7 + mac.w %d2u,%d1l,(%a3),%d1 + mac.w %d2u,%d1l,(%a3),%a3 + mac.w %d2u,%d1l,(%a3),%d2 + mac.w %d2u,%d1l,(%a3),%a7 + mac.w %d2u,%d1l,(%a3)&,%d1 + mac.w %d2u,%d1l,(%a3)&,%a3 + mac.w %d2u,%d1l,(%a3)&,%d2 + mac.w %d2u,%d1l,(%a3)&,%a7 + mac.w %d2u,%d1l,(%a2)+,%d1 + mac.w %d2u,%d1l,(%a2)+,%a3 + mac.w %d2u,%d1l,(%a2)+,%d2 + mac.w %d2u,%d1l,(%a2)+,%a7 + mac.w %d2u,%d1l,(%a2)+&,%d1 + mac.w %d2u,%d1l,(%a2)+&,%a3 + mac.w %d2u,%d1l,(%a2)+&,%d2 + mac.w %d2u,%d1l,(%a2)+&,%a7 + mac.w %d2u,%d1l,10(%a6),%d1 + mac.w %d2u,%d1l,10(%a6),%a3 + mac.w %d2u,%d1l,10(%a6),%d2 + mac.w %d2u,%d1l,10(%a6),%a7 + mac.w %d2u,%d1l,10(%a6)&,%d1 + mac.w %d2u,%d1l,10(%a6)&,%a3 + mac.w %d2u,%d1l,10(%a6)&,%d2 + mac.w %d2u,%d1l,10(%a6)&,%a7 + mac.w %d2u,%d1l,-(%a1),%d1 + mac.w %d2u,%d1l,-(%a1),%a3 + mac.w %d2u,%d1l,-(%a1),%d2 + mac.w %d2u,%d1l,-(%a1),%a7 + mac.w %d2u,%d1l,-(%a1)&,%d1 + mac.w %d2u,%d1l,-(%a1)&,%a3 + mac.w %d2u,%d1l,-(%a1)&,%d2 + mac.w %d2u,%d1l,-(%a1)&,%a7 + mac.w %d2u,%d1l,<<,(%a3),%d1 + mac.w %d2u,%d1l,<<,(%a3),%a3 + mac.w %d2u,%d1l,<<,(%a3),%d2 + mac.w %d2u,%d1l,<<,(%a3),%a7 + mac.w %d2u,%d1l,<<,(%a3)&,%d1 + mac.w %d2u,%d1l,<<,(%a3)&,%a3 + mac.w %d2u,%d1l,<<,(%a3)&,%d2 + mac.w %d2u,%d1l,<<,(%a3)&,%a7 + mac.w %d2u,%d1l,<<,(%a2)+,%d1 + mac.w %d2u,%d1l,<<,(%a2)+,%a3 + mac.w %d2u,%d1l,<<,(%a2)+,%d2 + mac.w %d2u,%d1l,<<,(%a2)+,%a7 + mac.w %d2u,%d1l,<<,(%a2)+&,%d1 + mac.w %d2u,%d1l,<<,(%a2)+&,%a3 + mac.w %d2u,%d1l,<<,(%a2)+&,%d2 + mac.w %d2u,%d1l,<<,(%a2)+&,%a7 + mac.w %d2u,%d1l,<<,10(%a6),%d1 + mac.w %d2u,%d1l,<<,10(%a6),%a3 + mac.w %d2u,%d1l,<<,10(%a6),%d2 + mac.w %d2u,%d1l,<<,10(%a6),%a7 + mac.w %d2u,%d1l,<<,10(%a6)&,%d1 + mac.w %d2u,%d1l,<<,10(%a6)&,%a3 + mac.w %d2u,%d1l,<<,10(%a6)&,%d2 + mac.w %d2u,%d1l,<<,10(%a6)&,%a7 + mac.w %d2u,%d1l,<<,-(%a1),%d1 + mac.w %d2u,%d1l,<<,-(%a1),%a3 + mac.w %d2u,%d1l,<<,-(%a1),%d2 + mac.w %d2u,%d1l,<<,-(%a1),%a7 + mac.w %d2u,%d1l,<<,-(%a1)&,%d1 + mac.w %d2u,%d1l,<<,-(%a1)&,%a3 + mac.w %d2u,%d1l,<<,-(%a1)&,%d2 + mac.w %d2u,%d1l,<<,-(%a1)&,%a7 + mac.w %d2u,%d1l,>>,(%a3),%d1 + mac.w %d2u,%d1l,>>,(%a3),%a3 + mac.w %d2u,%d1l,>>,(%a3),%d2 + mac.w %d2u,%d1l,>>,(%a3),%a7 + mac.w %d2u,%d1l,>>,(%a3)&,%d1 + mac.w %d2u,%d1l,>>,(%a3)&,%a3 + mac.w %d2u,%d1l,>>,(%a3)&,%d2 + mac.w %d2u,%d1l,>>,(%a3)&,%a7 + mac.w %d2u,%d1l,>>,(%a2)+,%d1 + mac.w %d2u,%d1l,>>,(%a2)+,%a3 + mac.w %d2u,%d1l,>>,(%a2)+,%d2 + mac.w %d2u,%d1l,>>,(%a2)+,%a7 + mac.w %d2u,%d1l,>>,(%a2)+&,%d1 + mac.w %d2u,%d1l,>>,(%a2)+&,%a3 + mac.w %d2u,%d1l,>>,(%a2)+&,%d2 + mac.w %d2u,%d1l,>>,(%a2)+&,%a7 + mac.w %d2u,%d1l,>>,10(%a6),%d1 + mac.w %d2u,%d1l,>>,10(%a6),%a3 + mac.w %d2u,%d1l,>>,10(%a6),%d2 + mac.w %d2u,%d1l,>>,10(%a6),%a7 + mac.w %d2u,%d1l,>>,10(%a6)&,%d1 + mac.w %d2u,%d1l,>>,10(%a6)&,%a3 + mac.w %d2u,%d1l,>>,10(%a6)&,%d2 + mac.w %d2u,%d1l,>>,10(%a6)&,%a7 + mac.w %d2u,%d1l,>>,-(%a1),%d1 + mac.w %d2u,%d1l,>>,-(%a1),%a3 + mac.w %d2u,%d1l,>>,-(%a1),%d2 + mac.w %d2u,%d1l,>>,-(%a1),%a7 + mac.w %d2u,%d1l,>>,-(%a1)&,%d1 + mac.w %d2u,%d1l,>>,-(%a1)&,%a3 + mac.w %d2u,%d1l,>>,-(%a1)&,%d2 + mac.w %d2u,%d1l,>>,-(%a1)&,%a7 + mac.w %d2u,%d1l,#1,(%a3),%d1 + mac.w %d2u,%d1l,#1,(%a3),%a3 + mac.w %d2u,%d1l,#1,(%a3),%d2 + mac.w %d2u,%d1l,#1,(%a3),%a7 + mac.w %d2u,%d1l,#1,(%a3)&,%d1 + mac.w %d2u,%d1l,#1,(%a3)&,%a3 + mac.w %d2u,%d1l,#1,(%a3)&,%d2 + mac.w %d2u,%d1l,#1,(%a3)&,%a7 + mac.w %d2u,%d1l,#1,(%a2)+,%d1 + mac.w %d2u,%d1l,#1,(%a2)+,%a3 + mac.w %d2u,%d1l,#1,(%a2)+,%d2 + mac.w %d2u,%d1l,#1,(%a2)+,%a7 + mac.w %d2u,%d1l,#1,(%a2)+&,%d1 + mac.w %d2u,%d1l,#1,(%a2)+&,%a3 + mac.w %d2u,%d1l,#1,(%a2)+&,%d2 + mac.w %d2u,%d1l,#1,(%a2)+&,%a7 + mac.w %d2u,%d1l,#1,10(%a6),%d1 + mac.w %d2u,%d1l,#1,10(%a6),%a3 + mac.w %d2u,%d1l,#1,10(%a6),%d2 + mac.w %d2u,%d1l,#1,10(%a6),%a7 + mac.w %d2u,%d1l,#1,10(%a6)&,%d1 + mac.w %d2u,%d1l,#1,10(%a6)&,%a3 + mac.w %d2u,%d1l,#1,10(%a6)&,%d2 + mac.w %d2u,%d1l,#1,10(%a6)&,%a7 + mac.w %d2u,%d1l,#1,-(%a1),%d1 + mac.w %d2u,%d1l,#1,-(%a1),%a3 + mac.w %d2u,%d1l,#1,-(%a1),%d2 + mac.w %d2u,%d1l,#1,-(%a1),%a7 + mac.w %d2u,%d1l,#1,-(%a1)&,%d1 + mac.w %d2u,%d1l,#1,-(%a1)&,%a3 + mac.w %d2u,%d1l,#1,-(%a1)&,%d2 + mac.w %d2u,%d1l,#1,-(%a1)&,%a7 + mac.w %d2u,%d1l,#-1,(%a3),%d1 + mac.w %d2u,%d1l,#-1,(%a3),%a3 + mac.w %d2u,%d1l,#-1,(%a3),%d2 + mac.w %d2u,%d1l,#-1,(%a3),%a7 + mac.w %d2u,%d1l,#-1,(%a3)&,%d1 + mac.w %d2u,%d1l,#-1,(%a3)&,%a3 + mac.w %d2u,%d1l,#-1,(%a3)&,%d2 + mac.w %d2u,%d1l,#-1,(%a3)&,%a7 + mac.w %d2u,%d1l,#-1,(%a2)+,%d1 + mac.w %d2u,%d1l,#-1,(%a2)+,%a3 + mac.w %d2u,%d1l,#-1,(%a2)+,%d2 + mac.w %d2u,%d1l,#-1,(%a2)+,%a7 + mac.w %d2u,%d1l,#-1,(%a2)+&,%d1 + mac.w %d2u,%d1l,#-1,(%a2)+&,%a3 + mac.w %d2u,%d1l,#-1,(%a2)+&,%d2 + mac.w %d2u,%d1l,#-1,(%a2)+&,%a7 + mac.w %d2u,%d1l,#-1,10(%a6),%d1 + mac.w %d2u,%d1l,#-1,10(%a6),%a3 + mac.w %d2u,%d1l,#-1,10(%a6),%d2 + mac.w %d2u,%d1l,#-1,10(%a6),%a7 + mac.w %d2u,%d1l,#-1,10(%a6)&,%d1 + mac.w %d2u,%d1l,#-1,10(%a6)&,%a3 + mac.w %d2u,%d1l,#-1,10(%a6)&,%d2 + mac.w %d2u,%d1l,#-1,10(%a6)&,%a7 + mac.w %d2u,%d1l,#-1,-(%a1),%d1 + mac.w %d2u,%d1l,#-1,-(%a1),%a3 + mac.w %d2u,%d1l,#-1,-(%a1),%d2 + mac.w %d2u,%d1l,#-1,-(%a1),%a7 + mac.w %d2u,%d1l,#-1,-(%a1)&,%d1 + mac.w %d2u,%d1l,#-1,-(%a1)&,%a3 + mac.w %d2u,%d1l,#-1,-(%a1)&,%d2 + mac.w %d2u,%d1l,#-1,-(%a1)&,%a7 + mac.w %a5l,%a2u,(%a3),%d1 + mac.w %a5l,%a2u,(%a3),%a3 + mac.w %a5l,%a2u,(%a3),%d2 + mac.w %a5l,%a2u,(%a3),%a7 + mac.w %a5l,%a2u,(%a3)&,%d1 + mac.w %a5l,%a2u,(%a3)&,%a3 + mac.w %a5l,%a2u,(%a3)&,%d2 + mac.w %a5l,%a2u,(%a3)&,%a7 + mac.w %a5l,%a2u,(%a2)+,%d1 + mac.w %a5l,%a2u,(%a2)+,%a3 + mac.w %a5l,%a2u,(%a2)+,%d2 + mac.w %a5l,%a2u,(%a2)+,%a7 + mac.w %a5l,%a2u,(%a2)+&,%d1 + mac.w %a5l,%a2u,(%a2)+&,%a3 + mac.w %a5l,%a2u,(%a2)+&,%d2 + mac.w %a5l,%a2u,(%a2)+&,%a7 + mac.w %a5l,%a2u,10(%a6),%d1 + mac.w %a5l,%a2u,10(%a6),%a3 + mac.w %a5l,%a2u,10(%a6),%d2 + mac.w %a5l,%a2u,10(%a6),%a7 + mac.w %a5l,%a2u,10(%a6)&,%d1 + mac.w %a5l,%a2u,10(%a6)&,%a3 + mac.w %a5l,%a2u,10(%a6)&,%d2 + mac.w %a5l,%a2u,10(%a6)&,%a7 + mac.w %a5l,%a2u,-(%a1),%d1 + mac.w %a5l,%a2u,-(%a1),%a3 + mac.w %a5l,%a2u,-(%a1),%d2 + mac.w %a5l,%a2u,-(%a1),%a7 + mac.w %a5l,%a2u,-(%a1)&,%d1 + mac.w %a5l,%a2u,-(%a1)&,%a3 + mac.w %a5l,%a2u,-(%a1)&,%d2 + mac.w %a5l,%a2u,-(%a1)&,%a7 + mac.w %a5l,%a2u,<<,(%a3),%d1 + mac.w %a5l,%a2u,<<,(%a3),%a3 + mac.w %a5l,%a2u,<<,(%a3),%d2 + mac.w %a5l,%a2u,<<,(%a3),%a7 + mac.w %a5l,%a2u,<<,(%a3)&,%d1 + mac.w %a5l,%a2u,<<,(%a3)&,%a3 + mac.w %a5l,%a2u,<<,(%a3)&,%d2 + mac.w %a5l,%a2u,<<,(%a3)&,%a7 + mac.w %a5l,%a2u,<<,(%a2)+,%d1 + mac.w %a5l,%a2u,<<,(%a2)+,%a3 + mac.w %a5l,%a2u,<<,(%a2)+,%d2 + mac.w %a5l,%a2u,<<,(%a2)+,%a7 + mac.w %a5l,%a2u,<<,(%a2)+&,%d1 + mac.w %a5l,%a2u,<<,(%a2)+&,%a3 + mac.w %a5l,%a2u,<<,(%a2)+&,%d2 + mac.w %a5l,%a2u,<<,(%a2)+&,%a7 + mac.w %a5l,%a2u,<<,10(%a6),%d1 + mac.w %a5l,%a2u,<<,10(%a6),%a3 + mac.w %a5l,%a2u,<<,10(%a6),%d2 + mac.w %a5l,%a2u,<<,10(%a6),%a7 + mac.w %a5l,%a2u,<<,10(%a6)&,%d1 + mac.w %a5l,%a2u,<<,10(%a6)&,%a3 + mac.w %a5l,%a2u,<<,10(%a6)&,%d2 + mac.w %a5l,%a2u,<<,10(%a6)&,%a7 + mac.w %a5l,%a2u,<<,-(%a1),%d1 + mac.w %a5l,%a2u,<<,-(%a1),%a3 + mac.w %a5l,%a2u,<<,-(%a1),%d2 + mac.w %a5l,%a2u,<<,-(%a1),%a7 + mac.w %a5l,%a2u,<<,-(%a1)&,%d1 + mac.w %a5l,%a2u,<<,-(%a1)&,%a3 + mac.w %a5l,%a2u,<<,-(%a1)&,%d2 + mac.w %a5l,%a2u,<<,-(%a1)&,%a7 + mac.w %a5l,%a2u,>>,(%a3),%d1 + mac.w %a5l,%a2u,>>,(%a3),%a3 + mac.w %a5l,%a2u,>>,(%a3),%d2 + mac.w %a5l,%a2u,>>,(%a3),%a7 + mac.w %a5l,%a2u,>>,(%a3)&,%d1 + mac.w %a5l,%a2u,>>,(%a3)&,%a3 + mac.w %a5l,%a2u,>>,(%a3)&,%d2 + mac.w %a5l,%a2u,>>,(%a3)&,%a7 + mac.w %a5l,%a2u,>>,(%a2)+,%d1 + mac.w %a5l,%a2u,>>,(%a2)+,%a3 + mac.w %a5l,%a2u,>>,(%a2)+,%d2 + mac.w %a5l,%a2u,>>,(%a2)+,%a7 + mac.w %a5l,%a2u,>>,(%a2)+&,%d1 + mac.w %a5l,%a2u,>>,(%a2)+&,%a3 + mac.w %a5l,%a2u,>>,(%a2)+&,%d2 + mac.w %a5l,%a2u,>>,(%a2)+&,%a7 + mac.w %a5l,%a2u,>>,10(%a6),%d1 + mac.w %a5l,%a2u,>>,10(%a6),%a3 + mac.w %a5l,%a2u,>>,10(%a6),%d2 + mac.w %a5l,%a2u,>>,10(%a6),%a7 + mac.w %a5l,%a2u,>>,10(%a6)&,%d1 + mac.w %a5l,%a2u,>>,10(%a6)&,%a3 + mac.w %a5l,%a2u,>>,10(%a6)&,%d2 + mac.w %a5l,%a2u,>>,10(%a6)&,%a7 + mac.w %a5l,%a2u,>>,-(%a1),%d1 + mac.w %a5l,%a2u,>>,-(%a1),%a3 + mac.w %a5l,%a2u,>>,-(%a1),%d2 + mac.w %a5l,%a2u,>>,-(%a1),%a7 + mac.w %a5l,%a2u,>>,-(%a1)&,%d1 + mac.w %a5l,%a2u,>>,-(%a1)&,%a3 + mac.w %a5l,%a2u,>>,-(%a1)&,%d2 + mac.w %a5l,%a2u,>>,-(%a1)&,%a7 + mac.w %a5l,%a2u,#1,(%a3),%d1 + mac.w %a5l,%a2u,#1,(%a3),%a3 + mac.w %a5l,%a2u,#1,(%a3),%d2 + mac.w %a5l,%a2u,#1,(%a3),%a7 + mac.w %a5l,%a2u,#1,(%a3)&,%d1 + mac.w %a5l,%a2u,#1,(%a3)&,%a3 + mac.w %a5l,%a2u,#1,(%a3)&,%d2 + mac.w %a5l,%a2u,#1,(%a3)&,%a7 + mac.w %a5l,%a2u,#1,(%a2)+,%d1 + mac.w %a5l,%a2u,#1,(%a2)+,%a3 + mac.w %a5l,%a2u,#1,(%a2)+,%d2 + mac.w %a5l,%a2u,#1,(%a2)+,%a7 + mac.w %a5l,%a2u,#1,(%a2)+&,%d1 + mac.w %a5l,%a2u,#1,(%a2)+&,%a3 + mac.w %a5l,%a2u,#1,(%a2)+&,%d2 + mac.w %a5l,%a2u,#1,(%a2)+&,%a7 + mac.w %a5l,%a2u,#1,10(%a6),%d1 + mac.w %a5l,%a2u,#1,10(%a6),%a3 + mac.w %a5l,%a2u,#1,10(%a6),%d2 + mac.w %a5l,%a2u,#1,10(%a6),%a7 + mac.w %a5l,%a2u,#1,10(%a6)&,%d1 + mac.w %a5l,%a2u,#1,10(%a6)&,%a3 + mac.w %a5l,%a2u,#1,10(%a6)&,%d2 + mac.w %a5l,%a2u,#1,10(%a6)&,%a7 + mac.w %a5l,%a2u,#1,-(%a1),%d1 + mac.w %a5l,%a2u,#1,-(%a1),%a3 + mac.w %a5l,%a2u,#1,-(%a1),%d2 + mac.w %a5l,%a2u,#1,-(%a1),%a7 + mac.w %a5l,%a2u,#1,-(%a1)&,%d1 + mac.w %a5l,%a2u,#1,-(%a1)&,%a3 + mac.w %a5l,%a2u,#1,-(%a1)&,%d2 + mac.w %a5l,%a2u,#1,-(%a1)&,%a7 + mac.w %a5l,%a2u,#-1,(%a3),%d1 + mac.w %a5l,%a2u,#-1,(%a3),%a3 + mac.w %a5l,%a2u,#-1,(%a3),%d2 + mac.w %a5l,%a2u,#-1,(%a3),%a7 + mac.w %a5l,%a2u,#-1,(%a3)&,%d1 + mac.w %a5l,%a2u,#-1,(%a3)&,%a3 + mac.w %a5l,%a2u,#-1,(%a3)&,%d2 + mac.w %a5l,%a2u,#-1,(%a3)&,%a7 + mac.w %a5l,%a2u,#-1,(%a2)+,%d1 + mac.w %a5l,%a2u,#-1,(%a2)+,%a3 + mac.w %a5l,%a2u,#-1,(%a2)+,%d2 + mac.w %a5l,%a2u,#-1,(%a2)+,%a7 + mac.w %a5l,%a2u,#-1,(%a2)+&,%d1 + mac.w %a5l,%a2u,#-1,(%a2)+&,%a3 + mac.w %a5l,%a2u,#-1,(%a2)+&,%d2 + mac.w %a5l,%a2u,#-1,(%a2)+&,%a7 + mac.w %a5l,%a2u,#-1,10(%a6),%d1 + mac.w %a5l,%a2u,#-1,10(%a6),%a3 + mac.w %a5l,%a2u,#-1,10(%a6),%d2 + mac.w %a5l,%a2u,#-1,10(%a6),%a7 + mac.w %a5l,%a2u,#-1,10(%a6)&,%d1 + mac.w %a5l,%a2u,#-1,10(%a6)&,%a3 + mac.w %a5l,%a2u,#-1,10(%a6)&,%d2 + mac.w %a5l,%a2u,#-1,10(%a6)&,%a7 + mac.w %a5l,%a2u,#-1,-(%a1),%d1 + mac.w %a5l,%a2u,#-1,-(%a1),%a3 + mac.w %a5l,%a2u,#-1,-(%a1),%d2 + mac.w %a5l,%a2u,#-1,-(%a1),%a7 + mac.w %a5l,%a2u,#-1,-(%a1)&,%d1 + mac.w %a5l,%a2u,#-1,-(%a1)&,%a3 + mac.w %a5l,%a2u,#-1,-(%a1)&,%d2 + mac.w %a5l,%a2u,#-1,-(%a1)&,%a7 + mac.w %a5l,%d3l,(%a3),%d1 + mac.w %a5l,%d3l,(%a3),%a3 + mac.w %a5l,%d3l,(%a3),%d2 + mac.w %a5l,%d3l,(%a3),%a7 + mac.w %a5l,%d3l,(%a3)&,%d1 + mac.w %a5l,%d3l,(%a3)&,%a3 + mac.w %a5l,%d3l,(%a3)&,%d2 + mac.w %a5l,%d3l,(%a3)&,%a7 + mac.w %a5l,%d3l,(%a2)+,%d1 + mac.w %a5l,%d3l,(%a2)+,%a3 + mac.w %a5l,%d3l,(%a2)+,%d2 + mac.w %a5l,%d3l,(%a2)+,%a7 + mac.w %a5l,%d3l,(%a2)+&,%d1 + mac.w %a5l,%d3l,(%a2)+&,%a3 + mac.w %a5l,%d3l,(%a2)+&,%d2 + mac.w %a5l,%d3l,(%a2)+&,%a7 + mac.w %a5l,%d3l,10(%a6),%d1 + mac.w %a5l,%d3l,10(%a6),%a3 + mac.w %a5l,%d3l,10(%a6),%d2 + mac.w %a5l,%d3l,10(%a6),%a7 + mac.w %a5l,%d3l,10(%a6)&,%d1 + mac.w %a5l,%d3l,10(%a6)&,%a3 + mac.w %a5l,%d3l,10(%a6)&,%d2 + mac.w %a5l,%d3l,10(%a6)&,%a7 + mac.w %a5l,%d3l,-(%a1),%d1 + mac.w %a5l,%d3l,-(%a1),%a3 + mac.w %a5l,%d3l,-(%a1),%d2 + mac.w %a5l,%d3l,-(%a1),%a7 + mac.w %a5l,%d3l,-(%a1)&,%d1 + mac.w %a5l,%d3l,-(%a1)&,%a3 + mac.w %a5l,%d3l,-(%a1)&,%d2 + mac.w %a5l,%d3l,-(%a1)&,%a7 + mac.w %a5l,%d3l,<<,(%a3),%d1 + mac.w %a5l,%d3l,<<,(%a3),%a3 + mac.w %a5l,%d3l,<<,(%a3),%d2 + mac.w %a5l,%d3l,<<,(%a3),%a7 + mac.w %a5l,%d3l,<<,(%a3)&,%d1 + mac.w %a5l,%d3l,<<,(%a3)&,%a3 + mac.w %a5l,%d3l,<<,(%a3)&,%d2 + mac.w %a5l,%d3l,<<,(%a3)&,%a7 + mac.w %a5l,%d3l,<<,(%a2)+,%d1 + mac.w %a5l,%d3l,<<,(%a2)+,%a3 + mac.w %a5l,%d3l,<<,(%a2)+,%d2 + mac.w %a5l,%d3l,<<,(%a2)+,%a7 + mac.w %a5l,%d3l,<<,(%a2)+&,%d1 + mac.w %a5l,%d3l,<<,(%a2)+&,%a3 + mac.w %a5l,%d3l,<<,(%a2)+&,%d2 + mac.w %a5l,%d3l,<<,(%a2)+&,%a7 + mac.w %a5l,%d3l,<<,10(%a6),%d1 + mac.w %a5l,%d3l,<<,10(%a6),%a3 + mac.w %a5l,%d3l,<<,10(%a6),%d2 + mac.w %a5l,%d3l,<<,10(%a6),%a7 + mac.w %a5l,%d3l,<<,10(%a6)&,%d1 + mac.w %a5l,%d3l,<<,10(%a6)&,%a3 + mac.w %a5l,%d3l,<<,10(%a6)&,%d2 + mac.w %a5l,%d3l,<<,10(%a6)&,%a7 + mac.w %a5l,%d3l,<<,-(%a1),%d1 + mac.w %a5l,%d3l,<<,-(%a1),%a3 + mac.w %a5l,%d3l,<<,-(%a1),%d2 + mac.w %a5l,%d3l,<<,-(%a1),%a7 + mac.w %a5l,%d3l,<<,-(%a1)&,%d1 + mac.w %a5l,%d3l,<<,-(%a1)&,%a3 + mac.w %a5l,%d3l,<<,-(%a1)&,%d2 + mac.w %a5l,%d3l,<<,-(%a1)&,%a7 + mac.w %a5l,%d3l,>>,(%a3),%d1 + mac.w %a5l,%d3l,>>,(%a3),%a3 + mac.w %a5l,%d3l,>>,(%a3),%d2 + mac.w %a5l,%d3l,>>,(%a3),%a7 + mac.w %a5l,%d3l,>>,(%a3)&,%d1 + mac.w %a5l,%d3l,>>,(%a3)&,%a3 + mac.w %a5l,%d3l,>>,(%a3)&,%d2 + mac.w %a5l,%d3l,>>,(%a3)&,%a7 + mac.w %a5l,%d3l,>>,(%a2)+,%d1 + mac.w %a5l,%d3l,>>,(%a2)+,%a3 + mac.w %a5l,%d3l,>>,(%a2)+,%d2 + mac.w %a5l,%d3l,>>,(%a2)+,%a7 + mac.w %a5l,%d3l,>>,(%a2)+&,%d1 + mac.w %a5l,%d3l,>>,(%a2)+&,%a3 + mac.w %a5l,%d3l,>>,(%a2)+&,%d2 + mac.w %a5l,%d3l,>>,(%a2)+&,%a7 + mac.w %a5l,%d3l,>>,10(%a6),%d1 + mac.w %a5l,%d3l,>>,10(%a6),%a3 + mac.w %a5l,%d3l,>>,10(%a6),%d2 + mac.w %a5l,%d3l,>>,10(%a6),%a7 + mac.w %a5l,%d3l,>>,10(%a6)&,%d1 + mac.w %a5l,%d3l,>>,10(%a6)&,%a3 + mac.w %a5l,%d3l,>>,10(%a6)&,%d2 + mac.w %a5l,%d3l,>>,10(%a6)&,%a7 + mac.w %a5l,%d3l,>>,-(%a1),%d1 + mac.w %a5l,%d3l,>>,-(%a1),%a3 + mac.w %a5l,%d3l,>>,-(%a1),%d2 + mac.w %a5l,%d3l,>>,-(%a1),%a7 + mac.w %a5l,%d3l,>>,-(%a1)&,%d1 + mac.w %a5l,%d3l,>>,-(%a1)&,%a3 + mac.w %a5l,%d3l,>>,-(%a1)&,%d2 + mac.w %a5l,%d3l,>>,-(%a1)&,%a7 + mac.w %a5l,%d3l,#1,(%a3),%d1 + mac.w %a5l,%d3l,#1,(%a3),%a3 + mac.w %a5l,%d3l,#1,(%a3),%d2 + mac.w %a5l,%d3l,#1,(%a3),%a7 + mac.w %a5l,%d3l,#1,(%a3)&,%d1 + mac.w %a5l,%d3l,#1,(%a3)&,%a3 + mac.w %a5l,%d3l,#1,(%a3)&,%d2 + mac.w %a5l,%d3l,#1,(%a3)&,%a7 + mac.w %a5l,%d3l,#1,(%a2)+,%d1 + mac.w %a5l,%d3l,#1,(%a2)+,%a3 + mac.w %a5l,%d3l,#1,(%a2)+,%d2 + mac.w %a5l,%d3l,#1,(%a2)+,%a7 + mac.w %a5l,%d3l,#1,(%a2)+&,%d1 + mac.w %a5l,%d3l,#1,(%a2)+&,%a3 + mac.w %a5l,%d3l,#1,(%a2)+&,%d2 + mac.w %a5l,%d3l,#1,(%a2)+&,%a7 + mac.w %a5l,%d3l,#1,10(%a6),%d1 + mac.w %a5l,%d3l,#1,10(%a6),%a3 + mac.w %a5l,%d3l,#1,10(%a6),%d2 + mac.w %a5l,%d3l,#1,10(%a6),%a7 + mac.w %a5l,%d3l,#1,10(%a6)&,%d1 + mac.w %a5l,%d3l,#1,10(%a6)&,%a3 + mac.w %a5l,%d3l,#1,10(%a6)&,%d2 + mac.w %a5l,%d3l,#1,10(%a6)&,%a7 + mac.w %a5l,%d3l,#1,-(%a1),%d1 + mac.w %a5l,%d3l,#1,-(%a1),%a3 + mac.w %a5l,%d3l,#1,-(%a1),%d2 + mac.w %a5l,%d3l,#1,-(%a1),%a7 + mac.w %a5l,%d3l,#1,-(%a1)&,%d1 + mac.w %a5l,%d3l,#1,-(%a1)&,%a3 + mac.w %a5l,%d3l,#1,-(%a1)&,%d2 + mac.w %a5l,%d3l,#1,-(%a1)&,%a7 + mac.w %a5l,%d3l,#-1,(%a3),%d1 + mac.w %a5l,%d3l,#-1,(%a3),%a3 + mac.w %a5l,%d3l,#-1,(%a3),%d2 + mac.w %a5l,%d3l,#-1,(%a3),%a7 + mac.w %a5l,%d3l,#-1,(%a3)&,%d1 + mac.w %a5l,%d3l,#-1,(%a3)&,%a3 + mac.w %a5l,%d3l,#-1,(%a3)&,%d2 + mac.w %a5l,%d3l,#-1,(%a3)&,%a7 + mac.w %a5l,%d3l,#-1,(%a2)+,%d1 + mac.w %a5l,%d3l,#-1,(%a2)+,%a3 + mac.w %a5l,%d3l,#-1,(%a2)+,%d2 + mac.w %a5l,%d3l,#-1,(%a2)+,%a7 + mac.w %a5l,%d3l,#-1,(%a2)+&,%d1 + mac.w %a5l,%d3l,#-1,(%a2)+&,%a3 + mac.w %a5l,%d3l,#-1,(%a2)+&,%d2 + mac.w %a5l,%d3l,#-1,(%a2)+&,%a7 + mac.w %a5l,%d3l,#-1,10(%a6),%d1 + mac.w %a5l,%d3l,#-1,10(%a6),%a3 + mac.w %a5l,%d3l,#-1,10(%a6),%d2 + mac.w %a5l,%d3l,#-1,10(%a6),%a7 + mac.w %a5l,%d3l,#-1,10(%a6)&,%d1 + mac.w %a5l,%d3l,#-1,10(%a6)&,%a3 + mac.w %a5l,%d3l,#-1,10(%a6)&,%d2 + mac.w %a5l,%d3l,#-1,10(%a6)&,%a7 + mac.w %a5l,%d3l,#-1,-(%a1),%d1 + mac.w %a5l,%d3l,#-1,-(%a1),%a3 + mac.w %a5l,%d3l,#-1,-(%a1),%d2 + mac.w %a5l,%d3l,#-1,-(%a1),%a7 + mac.w %a5l,%d3l,#-1,-(%a1)&,%d1 + mac.w %a5l,%d3l,#-1,-(%a1)&,%a3 + mac.w %a5l,%d3l,#-1,-(%a1)&,%d2 + mac.w %a5l,%d3l,#-1,-(%a1)&,%a7 + mac.w %a5l,%a7u,(%a3),%d1 + mac.w %a5l,%a7u,(%a3),%a3 + mac.w %a5l,%a7u,(%a3),%d2 + mac.w %a5l,%a7u,(%a3),%a7 + mac.w %a5l,%a7u,(%a3)&,%d1 + mac.w %a5l,%a7u,(%a3)&,%a3 + mac.w %a5l,%a7u,(%a3)&,%d2 + mac.w %a5l,%a7u,(%a3)&,%a7 + mac.w %a5l,%a7u,(%a2)+,%d1 + mac.w %a5l,%a7u,(%a2)+,%a3 + mac.w %a5l,%a7u,(%a2)+,%d2 + mac.w %a5l,%a7u,(%a2)+,%a7 + mac.w %a5l,%a7u,(%a2)+&,%d1 + mac.w %a5l,%a7u,(%a2)+&,%a3 + mac.w %a5l,%a7u,(%a2)+&,%d2 + mac.w %a5l,%a7u,(%a2)+&,%a7 + mac.w %a5l,%a7u,10(%a6),%d1 + mac.w %a5l,%a7u,10(%a6),%a3 + mac.w %a5l,%a7u,10(%a6),%d2 + mac.w %a5l,%a7u,10(%a6),%a7 + mac.w %a5l,%a7u,10(%a6)&,%d1 + mac.w %a5l,%a7u,10(%a6)&,%a3 + mac.w %a5l,%a7u,10(%a6)&,%d2 + mac.w %a5l,%a7u,10(%a6)&,%a7 + mac.w %a5l,%a7u,-(%a1),%d1 + mac.w %a5l,%a7u,-(%a1),%a3 + mac.w %a5l,%a7u,-(%a1),%d2 + mac.w %a5l,%a7u,-(%a1),%a7 + mac.w %a5l,%a7u,-(%a1)&,%d1 + mac.w %a5l,%a7u,-(%a1)&,%a3 + mac.w %a5l,%a7u,-(%a1)&,%d2 + mac.w %a5l,%a7u,-(%a1)&,%a7 + mac.w %a5l,%a7u,<<,(%a3),%d1 + mac.w %a5l,%a7u,<<,(%a3),%a3 + mac.w %a5l,%a7u,<<,(%a3),%d2 + mac.w %a5l,%a7u,<<,(%a3),%a7 + mac.w %a5l,%a7u,<<,(%a3)&,%d1 + mac.w %a5l,%a7u,<<,(%a3)&,%a3 + mac.w %a5l,%a7u,<<,(%a3)&,%d2 + mac.w %a5l,%a7u,<<,(%a3)&,%a7 + mac.w %a5l,%a7u,<<,(%a2)+,%d1 + mac.w %a5l,%a7u,<<,(%a2)+,%a3 + mac.w %a5l,%a7u,<<,(%a2)+,%d2 + mac.w %a5l,%a7u,<<,(%a2)+,%a7 + mac.w %a5l,%a7u,<<,(%a2)+&,%d1 + mac.w %a5l,%a7u,<<,(%a2)+&,%a3 + mac.w %a5l,%a7u,<<,(%a2)+&,%d2 + mac.w %a5l,%a7u,<<,(%a2)+&,%a7 + mac.w %a5l,%a7u,<<,10(%a6),%d1 + mac.w %a5l,%a7u,<<,10(%a6),%a3 + mac.w %a5l,%a7u,<<,10(%a6),%d2 + mac.w %a5l,%a7u,<<,10(%a6),%a7 + mac.w %a5l,%a7u,<<,10(%a6)&,%d1 + mac.w %a5l,%a7u,<<,10(%a6)&,%a3 + mac.w %a5l,%a7u,<<,10(%a6)&,%d2 + mac.w %a5l,%a7u,<<,10(%a6)&,%a7 + mac.w %a5l,%a7u,<<,-(%a1),%d1 + mac.w %a5l,%a7u,<<,-(%a1),%a3 + mac.w %a5l,%a7u,<<,-(%a1),%d2 + mac.w %a5l,%a7u,<<,-(%a1),%a7 + mac.w %a5l,%a7u,<<,-(%a1)&,%d1 + mac.w %a5l,%a7u,<<,-(%a1)&,%a3 + mac.w %a5l,%a7u,<<,-(%a1)&,%d2 + mac.w %a5l,%a7u,<<,-(%a1)&,%a7 + mac.w %a5l,%a7u,>>,(%a3),%d1 + mac.w %a5l,%a7u,>>,(%a3),%a3 + mac.w %a5l,%a7u,>>,(%a3),%d2 + mac.w %a5l,%a7u,>>,(%a3),%a7 + mac.w %a5l,%a7u,>>,(%a3)&,%d1 + mac.w %a5l,%a7u,>>,(%a3)&,%a3 + mac.w %a5l,%a7u,>>,(%a3)&,%d2 + mac.w %a5l,%a7u,>>,(%a3)&,%a7 + mac.w %a5l,%a7u,>>,(%a2)+,%d1 + mac.w %a5l,%a7u,>>,(%a2)+,%a3 + mac.w %a5l,%a7u,>>,(%a2)+,%d2 + mac.w %a5l,%a7u,>>,(%a2)+,%a7 + mac.w %a5l,%a7u,>>,(%a2)+&,%d1 + mac.w %a5l,%a7u,>>,(%a2)+&,%a3 + mac.w %a5l,%a7u,>>,(%a2)+&,%d2 + mac.w %a5l,%a7u,>>,(%a2)+&,%a7 + mac.w %a5l,%a7u,>>,10(%a6),%d1 + mac.w %a5l,%a7u,>>,10(%a6),%a3 + mac.w %a5l,%a7u,>>,10(%a6),%d2 + mac.w %a5l,%a7u,>>,10(%a6),%a7 + mac.w %a5l,%a7u,>>,10(%a6)&,%d1 + mac.w %a5l,%a7u,>>,10(%a6)&,%a3 + mac.w %a5l,%a7u,>>,10(%a6)&,%d2 + mac.w %a5l,%a7u,>>,10(%a6)&,%a7 + mac.w %a5l,%a7u,>>,-(%a1),%d1 + mac.w %a5l,%a7u,>>,-(%a1),%a3 + mac.w %a5l,%a7u,>>,-(%a1),%d2 + mac.w %a5l,%a7u,>>,-(%a1),%a7 + mac.w %a5l,%a7u,>>,-(%a1)&,%d1 + mac.w %a5l,%a7u,>>,-(%a1)&,%a3 + mac.w %a5l,%a7u,>>,-(%a1)&,%d2 + mac.w %a5l,%a7u,>>,-(%a1)&,%a7 + mac.w %a5l,%a7u,#1,(%a3),%d1 + mac.w %a5l,%a7u,#1,(%a3),%a3 + mac.w %a5l,%a7u,#1,(%a3),%d2 + mac.w %a5l,%a7u,#1,(%a3),%a7 + mac.w %a5l,%a7u,#1,(%a3)&,%d1 + mac.w %a5l,%a7u,#1,(%a3)&,%a3 + mac.w %a5l,%a7u,#1,(%a3)&,%d2 + mac.w %a5l,%a7u,#1,(%a3)&,%a7 + mac.w %a5l,%a7u,#1,(%a2)+,%d1 + mac.w %a5l,%a7u,#1,(%a2)+,%a3 + mac.w %a5l,%a7u,#1,(%a2)+,%d2 + mac.w %a5l,%a7u,#1,(%a2)+,%a7 + mac.w %a5l,%a7u,#1,(%a2)+&,%d1 + mac.w %a5l,%a7u,#1,(%a2)+&,%a3 + mac.w %a5l,%a7u,#1,(%a2)+&,%d2 + mac.w %a5l,%a7u,#1,(%a2)+&,%a7 + mac.w %a5l,%a7u,#1,10(%a6),%d1 + mac.w %a5l,%a7u,#1,10(%a6),%a3 + mac.w %a5l,%a7u,#1,10(%a6),%d2 + mac.w %a5l,%a7u,#1,10(%a6),%a7 + mac.w %a5l,%a7u,#1,10(%a6)&,%d1 + mac.w %a5l,%a7u,#1,10(%a6)&,%a3 + mac.w %a5l,%a7u,#1,10(%a6)&,%d2 + mac.w %a5l,%a7u,#1,10(%a6)&,%a7 + mac.w %a5l,%a7u,#1,-(%a1),%d1 + mac.w %a5l,%a7u,#1,-(%a1),%a3 + mac.w %a5l,%a7u,#1,-(%a1),%d2 + mac.w %a5l,%a7u,#1,-(%a1),%a7 + mac.w %a5l,%a7u,#1,-(%a1)&,%d1 + mac.w %a5l,%a7u,#1,-(%a1)&,%a3 + mac.w %a5l,%a7u,#1,-(%a1)&,%d2 + mac.w %a5l,%a7u,#1,-(%a1)&,%a7 + mac.w %a5l,%a7u,#-1,(%a3),%d1 + mac.w %a5l,%a7u,#-1,(%a3),%a3 + mac.w %a5l,%a7u,#-1,(%a3),%d2 + mac.w %a5l,%a7u,#-1,(%a3),%a7 + mac.w %a5l,%a7u,#-1,(%a3)&,%d1 + mac.w %a5l,%a7u,#-1,(%a3)&,%a3 + mac.w %a5l,%a7u,#-1,(%a3)&,%d2 + mac.w %a5l,%a7u,#-1,(%a3)&,%a7 + mac.w %a5l,%a7u,#-1,(%a2)+,%d1 + mac.w %a5l,%a7u,#-1,(%a2)+,%a3 + mac.w %a5l,%a7u,#-1,(%a2)+,%d2 + mac.w %a5l,%a7u,#-1,(%a2)+,%a7 + mac.w %a5l,%a7u,#-1,(%a2)+&,%d1 + mac.w %a5l,%a7u,#-1,(%a2)+&,%a3 + mac.w %a5l,%a7u,#-1,(%a2)+&,%d2 + mac.w %a5l,%a7u,#-1,(%a2)+&,%a7 + mac.w %a5l,%a7u,#-1,10(%a6),%d1 + mac.w %a5l,%a7u,#-1,10(%a6),%a3 + mac.w %a5l,%a7u,#-1,10(%a6),%d2 + mac.w %a5l,%a7u,#-1,10(%a6),%a7 + mac.w %a5l,%a7u,#-1,10(%a6)&,%d1 + mac.w %a5l,%a7u,#-1,10(%a6)&,%a3 + mac.w %a5l,%a7u,#-1,10(%a6)&,%d2 + mac.w %a5l,%a7u,#-1,10(%a6)&,%a7 + mac.w %a5l,%a7u,#-1,-(%a1),%d1 + mac.w %a5l,%a7u,#-1,-(%a1),%a3 + mac.w %a5l,%a7u,#-1,-(%a1),%d2 + mac.w %a5l,%a7u,#-1,-(%a1),%a7 + mac.w %a5l,%a7u,#-1,-(%a1)&,%d1 + mac.w %a5l,%a7u,#-1,-(%a1)&,%a3 + mac.w %a5l,%a7u,#-1,-(%a1)&,%d2 + mac.w %a5l,%a7u,#-1,-(%a1)&,%a7 + mac.w %a5l,%d1l,(%a3),%d1 + mac.w %a5l,%d1l,(%a3),%a3 + mac.w %a5l,%d1l,(%a3),%d2 + mac.w %a5l,%d1l,(%a3),%a7 + mac.w %a5l,%d1l,(%a3)&,%d1 + mac.w %a5l,%d1l,(%a3)&,%a3 + mac.w %a5l,%d1l,(%a3)&,%d2 + mac.w %a5l,%d1l,(%a3)&,%a7 + mac.w %a5l,%d1l,(%a2)+,%d1 + mac.w %a5l,%d1l,(%a2)+,%a3 + mac.w %a5l,%d1l,(%a2)+,%d2 + mac.w %a5l,%d1l,(%a2)+,%a7 + mac.w %a5l,%d1l,(%a2)+&,%d1 + mac.w %a5l,%d1l,(%a2)+&,%a3 + mac.w %a5l,%d1l,(%a2)+&,%d2 + mac.w %a5l,%d1l,(%a2)+&,%a7 + mac.w %a5l,%d1l,10(%a6),%d1 + mac.w %a5l,%d1l,10(%a6),%a3 + mac.w %a5l,%d1l,10(%a6),%d2 + mac.w %a5l,%d1l,10(%a6),%a7 + mac.w %a5l,%d1l,10(%a6)&,%d1 + mac.w %a5l,%d1l,10(%a6)&,%a3 + mac.w %a5l,%d1l,10(%a6)&,%d2 + mac.w %a5l,%d1l,10(%a6)&,%a7 + mac.w %a5l,%d1l,-(%a1),%d1 + mac.w %a5l,%d1l,-(%a1),%a3 + mac.w %a5l,%d1l,-(%a1),%d2 + mac.w %a5l,%d1l,-(%a1),%a7 + mac.w %a5l,%d1l,-(%a1)&,%d1 + mac.w %a5l,%d1l,-(%a1)&,%a3 + mac.w %a5l,%d1l,-(%a1)&,%d2 + mac.w %a5l,%d1l,-(%a1)&,%a7 + mac.w %a5l,%d1l,<<,(%a3),%d1 + mac.w %a5l,%d1l,<<,(%a3),%a3 + mac.w %a5l,%d1l,<<,(%a3),%d2 + mac.w %a5l,%d1l,<<,(%a3),%a7 + mac.w %a5l,%d1l,<<,(%a3)&,%d1 + mac.w %a5l,%d1l,<<,(%a3)&,%a3 + mac.w %a5l,%d1l,<<,(%a3)&,%d2 + mac.w %a5l,%d1l,<<,(%a3)&,%a7 + mac.w %a5l,%d1l,<<,(%a2)+,%d1 + mac.w %a5l,%d1l,<<,(%a2)+,%a3 + mac.w %a5l,%d1l,<<,(%a2)+,%d2 + mac.w %a5l,%d1l,<<,(%a2)+,%a7 + mac.w %a5l,%d1l,<<,(%a2)+&,%d1 + mac.w %a5l,%d1l,<<,(%a2)+&,%a3 + mac.w %a5l,%d1l,<<,(%a2)+&,%d2 + mac.w %a5l,%d1l,<<,(%a2)+&,%a7 + mac.w %a5l,%d1l,<<,10(%a6),%d1 + mac.w %a5l,%d1l,<<,10(%a6),%a3 + mac.w %a5l,%d1l,<<,10(%a6),%d2 + mac.w %a5l,%d1l,<<,10(%a6),%a7 + mac.w %a5l,%d1l,<<,10(%a6)&,%d1 + mac.w %a5l,%d1l,<<,10(%a6)&,%a3 + mac.w %a5l,%d1l,<<,10(%a6)&,%d2 + mac.w %a5l,%d1l,<<,10(%a6)&,%a7 + mac.w %a5l,%d1l,<<,-(%a1),%d1 + mac.w %a5l,%d1l,<<,-(%a1),%a3 + mac.w %a5l,%d1l,<<,-(%a1),%d2 + mac.w %a5l,%d1l,<<,-(%a1),%a7 + mac.w %a5l,%d1l,<<,-(%a1)&,%d1 + mac.w %a5l,%d1l,<<,-(%a1)&,%a3 + mac.w %a5l,%d1l,<<,-(%a1)&,%d2 + mac.w %a5l,%d1l,<<,-(%a1)&,%a7 + mac.w %a5l,%d1l,>>,(%a3),%d1 + mac.w %a5l,%d1l,>>,(%a3),%a3 + mac.w %a5l,%d1l,>>,(%a3),%d2 + mac.w %a5l,%d1l,>>,(%a3),%a7 + mac.w %a5l,%d1l,>>,(%a3)&,%d1 + mac.w %a5l,%d1l,>>,(%a3)&,%a3 + mac.w %a5l,%d1l,>>,(%a3)&,%d2 + mac.w %a5l,%d1l,>>,(%a3)&,%a7 + mac.w %a5l,%d1l,>>,(%a2)+,%d1 + mac.w %a5l,%d1l,>>,(%a2)+,%a3 + mac.w %a5l,%d1l,>>,(%a2)+,%d2 + mac.w %a5l,%d1l,>>,(%a2)+,%a7 + mac.w %a5l,%d1l,>>,(%a2)+&,%d1 + mac.w %a5l,%d1l,>>,(%a2)+&,%a3 + mac.w %a5l,%d1l,>>,(%a2)+&,%d2 + mac.w %a5l,%d1l,>>,(%a2)+&,%a7 + mac.w %a5l,%d1l,>>,10(%a6),%d1 + mac.w %a5l,%d1l,>>,10(%a6),%a3 + mac.w %a5l,%d1l,>>,10(%a6),%d2 + mac.w %a5l,%d1l,>>,10(%a6),%a7 + mac.w %a5l,%d1l,>>,10(%a6)&,%d1 + mac.w %a5l,%d1l,>>,10(%a6)&,%a3 + mac.w %a5l,%d1l,>>,10(%a6)&,%d2 + mac.w %a5l,%d1l,>>,10(%a6)&,%a7 + mac.w %a5l,%d1l,>>,-(%a1),%d1 + mac.w %a5l,%d1l,>>,-(%a1),%a3 + mac.w %a5l,%d1l,>>,-(%a1),%d2 + mac.w %a5l,%d1l,>>,-(%a1),%a7 + mac.w %a5l,%d1l,>>,-(%a1)&,%d1 + mac.w %a5l,%d1l,>>,-(%a1)&,%a3 + mac.w %a5l,%d1l,>>,-(%a1)&,%d2 + mac.w %a5l,%d1l,>>,-(%a1)&,%a7 + mac.w %a5l,%d1l,#1,(%a3),%d1 + mac.w %a5l,%d1l,#1,(%a3),%a3 + mac.w %a5l,%d1l,#1,(%a3),%d2 + mac.w %a5l,%d1l,#1,(%a3),%a7 + mac.w %a5l,%d1l,#1,(%a3)&,%d1 + mac.w %a5l,%d1l,#1,(%a3)&,%a3 + mac.w %a5l,%d1l,#1,(%a3)&,%d2 + mac.w %a5l,%d1l,#1,(%a3)&,%a7 + mac.w %a5l,%d1l,#1,(%a2)+,%d1 + mac.w %a5l,%d1l,#1,(%a2)+,%a3 + mac.w %a5l,%d1l,#1,(%a2)+,%d2 + mac.w %a5l,%d1l,#1,(%a2)+,%a7 + mac.w %a5l,%d1l,#1,(%a2)+&,%d1 + mac.w %a5l,%d1l,#1,(%a2)+&,%a3 + mac.w %a5l,%d1l,#1,(%a2)+&,%d2 + mac.w %a5l,%d1l,#1,(%a2)+&,%a7 + mac.w %a5l,%d1l,#1,10(%a6),%d1 + mac.w %a5l,%d1l,#1,10(%a6),%a3 + mac.w %a5l,%d1l,#1,10(%a6),%d2 + mac.w %a5l,%d1l,#1,10(%a6),%a7 + mac.w %a5l,%d1l,#1,10(%a6)&,%d1 + mac.w %a5l,%d1l,#1,10(%a6)&,%a3 + mac.w %a5l,%d1l,#1,10(%a6)&,%d2 + mac.w %a5l,%d1l,#1,10(%a6)&,%a7 + mac.w %a5l,%d1l,#1,-(%a1),%d1 + mac.w %a5l,%d1l,#1,-(%a1),%a3 + mac.w %a5l,%d1l,#1,-(%a1),%d2 + mac.w %a5l,%d1l,#1,-(%a1),%a7 + mac.w %a5l,%d1l,#1,-(%a1)&,%d1 + mac.w %a5l,%d1l,#1,-(%a1)&,%a3 + mac.w %a5l,%d1l,#1,-(%a1)&,%d2 + mac.w %a5l,%d1l,#1,-(%a1)&,%a7 + mac.w %a5l,%d1l,#-1,(%a3),%d1 + mac.w %a5l,%d1l,#-1,(%a3),%a3 + mac.w %a5l,%d1l,#-1,(%a3),%d2 + mac.w %a5l,%d1l,#-1,(%a3),%a7 + mac.w %a5l,%d1l,#-1,(%a3)&,%d1 + mac.w %a5l,%d1l,#-1,(%a3)&,%a3 + mac.w %a5l,%d1l,#-1,(%a3)&,%d2 + mac.w %a5l,%d1l,#-1,(%a3)&,%a7 + mac.w %a5l,%d1l,#-1,(%a2)+,%d1 + mac.w %a5l,%d1l,#-1,(%a2)+,%a3 + mac.w %a5l,%d1l,#-1,(%a2)+,%d2 + mac.w %a5l,%d1l,#-1,(%a2)+,%a7 + mac.w %a5l,%d1l,#-1,(%a2)+&,%d1 + mac.w %a5l,%d1l,#-1,(%a2)+&,%a3 + mac.w %a5l,%d1l,#-1,(%a2)+&,%d2 + mac.w %a5l,%d1l,#-1,(%a2)+&,%a7 + mac.w %a5l,%d1l,#-1,10(%a6),%d1 + mac.w %a5l,%d1l,#-1,10(%a6),%a3 + mac.w %a5l,%d1l,#-1,10(%a6),%d2 + mac.w %a5l,%d1l,#-1,10(%a6),%a7 + mac.w %a5l,%d1l,#-1,10(%a6)&,%d1 + mac.w %a5l,%d1l,#-1,10(%a6)&,%a3 + mac.w %a5l,%d1l,#-1,10(%a6)&,%d2 + mac.w %a5l,%d1l,#-1,10(%a6)&,%a7 + mac.w %a5l,%d1l,#-1,-(%a1),%d1 + mac.w %a5l,%d1l,#-1,-(%a1),%a3 + mac.w %a5l,%d1l,#-1,-(%a1),%d2 + mac.w %a5l,%d1l,#-1,-(%a1),%a7 + mac.w %a5l,%d1l,#-1,-(%a1)&,%d1 + mac.w %a5l,%d1l,#-1,-(%a1)&,%a3 + mac.w %a5l,%d1l,#-1,-(%a1)&,%d2 + mac.w %a5l,%d1l,#-1,-(%a1)&,%a7 + mac.w %d6u,%a2u,(%a3),%d1 + mac.w %d6u,%a2u,(%a3),%a3 + mac.w %d6u,%a2u,(%a3),%d2 + mac.w %d6u,%a2u,(%a3),%a7 + mac.w %d6u,%a2u,(%a3)&,%d1 + mac.w %d6u,%a2u,(%a3)&,%a3 + mac.w %d6u,%a2u,(%a3)&,%d2 + mac.w %d6u,%a2u,(%a3)&,%a7 + mac.w %d6u,%a2u,(%a2)+,%d1 + mac.w %d6u,%a2u,(%a2)+,%a3 + mac.w %d6u,%a2u,(%a2)+,%d2 + mac.w %d6u,%a2u,(%a2)+,%a7 + mac.w %d6u,%a2u,(%a2)+&,%d1 + mac.w %d6u,%a2u,(%a2)+&,%a3 + mac.w %d6u,%a2u,(%a2)+&,%d2 + mac.w %d6u,%a2u,(%a2)+&,%a7 + mac.w %d6u,%a2u,10(%a6),%d1 + mac.w %d6u,%a2u,10(%a6),%a3 + mac.w %d6u,%a2u,10(%a6),%d2 + mac.w %d6u,%a2u,10(%a6),%a7 + mac.w %d6u,%a2u,10(%a6)&,%d1 + mac.w %d6u,%a2u,10(%a6)&,%a3 + mac.w %d6u,%a2u,10(%a6)&,%d2 + mac.w %d6u,%a2u,10(%a6)&,%a7 + mac.w %d6u,%a2u,-(%a1),%d1 + mac.w %d6u,%a2u,-(%a1),%a3 + mac.w %d6u,%a2u,-(%a1),%d2 + mac.w %d6u,%a2u,-(%a1),%a7 + mac.w %d6u,%a2u,-(%a1)&,%d1 + mac.w %d6u,%a2u,-(%a1)&,%a3 + mac.w %d6u,%a2u,-(%a1)&,%d2 + mac.w %d6u,%a2u,-(%a1)&,%a7 + mac.w %d6u,%a2u,<<,(%a3),%d1 + mac.w %d6u,%a2u,<<,(%a3),%a3 + mac.w %d6u,%a2u,<<,(%a3),%d2 + mac.w %d6u,%a2u,<<,(%a3),%a7 + mac.w %d6u,%a2u,<<,(%a3)&,%d1 + mac.w %d6u,%a2u,<<,(%a3)&,%a3 + mac.w %d6u,%a2u,<<,(%a3)&,%d2 + mac.w %d6u,%a2u,<<,(%a3)&,%a7 + mac.w %d6u,%a2u,<<,(%a2)+,%d1 + mac.w %d6u,%a2u,<<,(%a2)+,%a3 + mac.w %d6u,%a2u,<<,(%a2)+,%d2 + mac.w %d6u,%a2u,<<,(%a2)+,%a7 + mac.w %d6u,%a2u,<<,(%a2)+&,%d1 + mac.w %d6u,%a2u,<<,(%a2)+&,%a3 + mac.w %d6u,%a2u,<<,(%a2)+&,%d2 + mac.w %d6u,%a2u,<<,(%a2)+&,%a7 + mac.w %d6u,%a2u,<<,10(%a6),%d1 + mac.w %d6u,%a2u,<<,10(%a6),%a3 + mac.w %d6u,%a2u,<<,10(%a6),%d2 + mac.w %d6u,%a2u,<<,10(%a6),%a7 + mac.w %d6u,%a2u,<<,10(%a6)&,%d1 + mac.w %d6u,%a2u,<<,10(%a6)&,%a3 + mac.w %d6u,%a2u,<<,10(%a6)&,%d2 + mac.w %d6u,%a2u,<<,10(%a6)&,%a7 + mac.w %d6u,%a2u,<<,-(%a1),%d1 + mac.w %d6u,%a2u,<<,-(%a1),%a3 + mac.w %d6u,%a2u,<<,-(%a1),%d2 + mac.w %d6u,%a2u,<<,-(%a1),%a7 + mac.w %d6u,%a2u,<<,-(%a1)&,%d1 + mac.w %d6u,%a2u,<<,-(%a1)&,%a3 + mac.w %d6u,%a2u,<<,-(%a1)&,%d2 + mac.w %d6u,%a2u,<<,-(%a1)&,%a7 + mac.w %d6u,%a2u,>>,(%a3),%d1 + mac.w %d6u,%a2u,>>,(%a3),%a3 + mac.w %d6u,%a2u,>>,(%a3),%d2 + mac.w %d6u,%a2u,>>,(%a3),%a7 + mac.w %d6u,%a2u,>>,(%a3)&,%d1 + mac.w %d6u,%a2u,>>,(%a3)&,%a3 + mac.w %d6u,%a2u,>>,(%a3)&,%d2 + mac.w %d6u,%a2u,>>,(%a3)&,%a7 + mac.w %d6u,%a2u,>>,(%a2)+,%d1 + mac.w %d6u,%a2u,>>,(%a2)+,%a3 + mac.w %d6u,%a2u,>>,(%a2)+,%d2 + mac.w %d6u,%a2u,>>,(%a2)+,%a7 + mac.w %d6u,%a2u,>>,(%a2)+&,%d1 + mac.w %d6u,%a2u,>>,(%a2)+&,%a3 + mac.w %d6u,%a2u,>>,(%a2)+&,%d2 + mac.w %d6u,%a2u,>>,(%a2)+&,%a7 + mac.w %d6u,%a2u,>>,10(%a6),%d1 + mac.w %d6u,%a2u,>>,10(%a6),%a3 + mac.w %d6u,%a2u,>>,10(%a6),%d2 + mac.w %d6u,%a2u,>>,10(%a6),%a7 + mac.w %d6u,%a2u,>>,10(%a6)&,%d1 + mac.w %d6u,%a2u,>>,10(%a6)&,%a3 + mac.w %d6u,%a2u,>>,10(%a6)&,%d2 + mac.w %d6u,%a2u,>>,10(%a6)&,%a7 + mac.w %d6u,%a2u,>>,-(%a1),%d1 + mac.w %d6u,%a2u,>>,-(%a1),%a3 + mac.w %d6u,%a2u,>>,-(%a1),%d2 + mac.w %d6u,%a2u,>>,-(%a1),%a7 + mac.w %d6u,%a2u,>>,-(%a1)&,%d1 + mac.w %d6u,%a2u,>>,-(%a1)&,%a3 + mac.w %d6u,%a2u,>>,-(%a1)&,%d2 + mac.w %d6u,%a2u,>>,-(%a1)&,%a7 + mac.w %d6u,%a2u,#1,(%a3),%d1 + mac.w %d6u,%a2u,#1,(%a3),%a3 + mac.w %d6u,%a2u,#1,(%a3),%d2 + mac.w %d6u,%a2u,#1,(%a3),%a7 + mac.w %d6u,%a2u,#1,(%a3)&,%d1 + mac.w %d6u,%a2u,#1,(%a3)&,%a3 + mac.w %d6u,%a2u,#1,(%a3)&,%d2 + mac.w %d6u,%a2u,#1,(%a3)&,%a7 + mac.w %d6u,%a2u,#1,(%a2)+,%d1 + mac.w %d6u,%a2u,#1,(%a2)+,%a3 + mac.w %d6u,%a2u,#1,(%a2)+,%d2 + mac.w %d6u,%a2u,#1,(%a2)+,%a7 + mac.w %d6u,%a2u,#1,(%a2)+&,%d1 + mac.w %d6u,%a2u,#1,(%a2)+&,%a3 + mac.w %d6u,%a2u,#1,(%a2)+&,%d2 + mac.w %d6u,%a2u,#1,(%a2)+&,%a7 + mac.w %d6u,%a2u,#1,10(%a6),%d1 + mac.w %d6u,%a2u,#1,10(%a6),%a3 + mac.w %d6u,%a2u,#1,10(%a6),%d2 + mac.w %d6u,%a2u,#1,10(%a6),%a7 + mac.w %d6u,%a2u,#1,10(%a6)&,%d1 + mac.w %d6u,%a2u,#1,10(%a6)&,%a3 + mac.w %d6u,%a2u,#1,10(%a6)&,%d2 + mac.w %d6u,%a2u,#1,10(%a6)&,%a7 + mac.w %d6u,%a2u,#1,-(%a1),%d1 + mac.w %d6u,%a2u,#1,-(%a1),%a3 + mac.w %d6u,%a2u,#1,-(%a1),%d2 + mac.w %d6u,%a2u,#1,-(%a1),%a7 + mac.w %d6u,%a2u,#1,-(%a1)&,%d1 + mac.w %d6u,%a2u,#1,-(%a1)&,%a3 + mac.w %d6u,%a2u,#1,-(%a1)&,%d2 + mac.w %d6u,%a2u,#1,-(%a1)&,%a7 + mac.w %d6u,%a2u,#-1,(%a3),%d1 + mac.w %d6u,%a2u,#-1,(%a3),%a3 + mac.w %d6u,%a2u,#-1,(%a3),%d2 + mac.w %d6u,%a2u,#-1,(%a3),%a7 + mac.w %d6u,%a2u,#-1,(%a3)&,%d1 + mac.w %d6u,%a2u,#-1,(%a3)&,%a3 + mac.w %d6u,%a2u,#-1,(%a3)&,%d2 + mac.w %d6u,%a2u,#-1,(%a3)&,%a7 + mac.w %d6u,%a2u,#-1,(%a2)+,%d1 + mac.w %d6u,%a2u,#-1,(%a2)+,%a3 + mac.w %d6u,%a2u,#-1,(%a2)+,%d2 + mac.w %d6u,%a2u,#-1,(%a2)+,%a7 + mac.w %d6u,%a2u,#-1,(%a2)+&,%d1 + mac.w %d6u,%a2u,#-1,(%a2)+&,%a3 + mac.w %d6u,%a2u,#-1,(%a2)+&,%d2 + mac.w %d6u,%a2u,#-1,(%a2)+&,%a7 + mac.w %d6u,%a2u,#-1,10(%a6),%d1 + mac.w %d6u,%a2u,#-1,10(%a6),%a3 + mac.w %d6u,%a2u,#-1,10(%a6),%d2 + mac.w %d6u,%a2u,#-1,10(%a6),%a7 + mac.w %d6u,%a2u,#-1,10(%a6)&,%d1 + mac.w %d6u,%a2u,#-1,10(%a6)&,%a3 + mac.w %d6u,%a2u,#-1,10(%a6)&,%d2 + mac.w %d6u,%a2u,#-1,10(%a6)&,%a7 + mac.w %d6u,%a2u,#-1,-(%a1),%d1 + mac.w %d6u,%a2u,#-1,-(%a1),%a3 + mac.w %d6u,%a2u,#-1,-(%a1),%d2 + mac.w %d6u,%a2u,#-1,-(%a1),%a7 + mac.w %d6u,%a2u,#-1,-(%a1)&,%d1 + mac.w %d6u,%a2u,#-1,-(%a1)&,%a3 + mac.w %d6u,%a2u,#-1,-(%a1)&,%d2 + mac.w %d6u,%a2u,#-1,-(%a1)&,%a7 + mac.w %d6u,%d3l,(%a3),%d1 + mac.w %d6u,%d3l,(%a3),%a3 + mac.w %d6u,%d3l,(%a3),%d2 + mac.w %d6u,%d3l,(%a3),%a7 + mac.w %d6u,%d3l,(%a3)&,%d1 + mac.w %d6u,%d3l,(%a3)&,%a3 + mac.w %d6u,%d3l,(%a3)&,%d2 + mac.w %d6u,%d3l,(%a3)&,%a7 + mac.w %d6u,%d3l,(%a2)+,%d1 + mac.w %d6u,%d3l,(%a2)+,%a3 + mac.w %d6u,%d3l,(%a2)+,%d2 + mac.w %d6u,%d3l,(%a2)+,%a7 + mac.w %d6u,%d3l,(%a2)+&,%d1 + mac.w %d6u,%d3l,(%a2)+&,%a3 + mac.w %d6u,%d3l,(%a2)+&,%d2 + mac.w %d6u,%d3l,(%a2)+&,%a7 + mac.w %d6u,%d3l,10(%a6),%d1 + mac.w %d6u,%d3l,10(%a6),%a3 + mac.w %d6u,%d3l,10(%a6),%d2 + mac.w %d6u,%d3l,10(%a6),%a7 + mac.w %d6u,%d3l,10(%a6)&,%d1 + mac.w %d6u,%d3l,10(%a6)&,%a3 + mac.w %d6u,%d3l,10(%a6)&,%d2 + mac.w %d6u,%d3l,10(%a6)&,%a7 + mac.w %d6u,%d3l,-(%a1),%d1 + mac.w %d6u,%d3l,-(%a1),%a3 + mac.w %d6u,%d3l,-(%a1),%d2 + mac.w %d6u,%d3l,-(%a1),%a7 + mac.w %d6u,%d3l,-(%a1)&,%d1 + mac.w %d6u,%d3l,-(%a1)&,%a3 + mac.w %d6u,%d3l,-(%a1)&,%d2 + mac.w %d6u,%d3l,-(%a1)&,%a7 + mac.w %d6u,%d3l,<<,(%a3),%d1 + mac.w %d6u,%d3l,<<,(%a3),%a3 + mac.w %d6u,%d3l,<<,(%a3),%d2 + mac.w %d6u,%d3l,<<,(%a3),%a7 + mac.w %d6u,%d3l,<<,(%a3)&,%d1 + mac.w %d6u,%d3l,<<,(%a3)&,%a3 + mac.w %d6u,%d3l,<<,(%a3)&,%d2 + mac.w %d6u,%d3l,<<,(%a3)&,%a7 + mac.w %d6u,%d3l,<<,(%a2)+,%d1 + mac.w %d6u,%d3l,<<,(%a2)+,%a3 + mac.w %d6u,%d3l,<<,(%a2)+,%d2 + mac.w %d6u,%d3l,<<,(%a2)+,%a7 + mac.w %d6u,%d3l,<<,(%a2)+&,%d1 + mac.w %d6u,%d3l,<<,(%a2)+&,%a3 + mac.w %d6u,%d3l,<<,(%a2)+&,%d2 + mac.w %d6u,%d3l,<<,(%a2)+&,%a7 + mac.w %d6u,%d3l,<<,10(%a6),%d1 + mac.w %d6u,%d3l,<<,10(%a6),%a3 + mac.w %d6u,%d3l,<<,10(%a6),%d2 + mac.w %d6u,%d3l,<<,10(%a6),%a7 + mac.w %d6u,%d3l,<<,10(%a6)&,%d1 + mac.w %d6u,%d3l,<<,10(%a6)&,%a3 + mac.w %d6u,%d3l,<<,10(%a6)&,%d2 + mac.w %d6u,%d3l,<<,10(%a6)&,%a7 + mac.w %d6u,%d3l,<<,-(%a1),%d1 + mac.w %d6u,%d3l,<<,-(%a1),%a3 + mac.w %d6u,%d3l,<<,-(%a1),%d2 + mac.w %d6u,%d3l,<<,-(%a1),%a7 + mac.w %d6u,%d3l,<<,-(%a1)&,%d1 + mac.w %d6u,%d3l,<<,-(%a1)&,%a3 + mac.w %d6u,%d3l,<<,-(%a1)&,%d2 + mac.w %d6u,%d3l,<<,-(%a1)&,%a7 + mac.w %d6u,%d3l,>>,(%a3),%d1 + mac.w %d6u,%d3l,>>,(%a3),%a3 + mac.w %d6u,%d3l,>>,(%a3),%d2 + mac.w %d6u,%d3l,>>,(%a3),%a7 + mac.w %d6u,%d3l,>>,(%a3)&,%d1 + mac.w %d6u,%d3l,>>,(%a3)&,%a3 + mac.w %d6u,%d3l,>>,(%a3)&,%d2 + mac.w %d6u,%d3l,>>,(%a3)&,%a7 + mac.w %d6u,%d3l,>>,(%a2)+,%d1 + mac.w %d6u,%d3l,>>,(%a2)+,%a3 + mac.w %d6u,%d3l,>>,(%a2)+,%d2 + mac.w %d6u,%d3l,>>,(%a2)+,%a7 + mac.w %d6u,%d3l,>>,(%a2)+&,%d1 + mac.w %d6u,%d3l,>>,(%a2)+&,%a3 + mac.w %d6u,%d3l,>>,(%a2)+&,%d2 + mac.w %d6u,%d3l,>>,(%a2)+&,%a7 + mac.w %d6u,%d3l,>>,10(%a6),%d1 + mac.w %d6u,%d3l,>>,10(%a6),%a3 + mac.w %d6u,%d3l,>>,10(%a6),%d2 + mac.w %d6u,%d3l,>>,10(%a6),%a7 + mac.w %d6u,%d3l,>>,10(%a6)&,%d1 + mac.w %d6u,%d3l,>>,10(%a6)&,%a3 + mac.w %d6u,%d3l,>>,10(%a6)&,%d2 + mac.w %d6u,%d3l,>>,10(%a6)&,%a7 + mac.w %d6u,%d3l,>>,-(%a1),%d1 + mac.w %d6u,%d3l,>>,-(%a1),%a3 + mac.w %d6u,%d3l,>>,-(%a1),%d2 + mac.w %d6u,%d3l,>>,-(%a1),%a7 + mac.w %d6u,%d3l,>>,-(%a1)&,%d1 + mac.w %d6u,%d3l,>>,-(%a1)&,%a3 + mac.w %d6u,%d3l,>>,-(%a1)&,%d2 + mac.w %d6u,%d3l,>>,-(%a1)&,%a7 + mac.w %d6u,%d3l,#1,(%a3),%d1 + mac.w %d6u,%d3l,#1,(%a3),%a3 + mac.w %d6u,%d3l,#1,(%a3),%d2 + mac.w %d6u,%d3l,#1,(%a3),%a7 + mac.w %d6u,%d3l,#1,(%a3)&,%d1 + mac.w %d6u,%d3l,#1,(%a3)&,%a3 + mac.w %d6u,%d3l,#1,(%a3)&,%d2 + mac.w %d6u,%d3l,#1,(%a3)&,%a7 + mac.w %d6u,%d3l,#1,(%a2)+,%d1 + mac.w %d6u,%d3l,#1,(%a2)+,%a3 + mac.w %d6u,%d3l,#1,(%a2)+,%d2 + mac.w %d6u,%d3l,#1,(%a2)+,%a7 + mac.w %d6u,%d3l,#1,(%a2)+&,%d1 + mac.w %d6u,%d3l,#1,(%a2)+&,%a3 + mac.w %d6u,%d3l,#1,(%a2)+&,%d2 + mac.w %d6u,%d3l,#1,(%a2)+&,%a7 + mac.w %d6u,%d3l,#1,10(%a6),%d1 + mac.w %d6u,%d3l,#1,10(%a6),%a3 + mac.w %d6u,%d3l,#1,10(%a6),%d2 + mac.w %d6u,%d3l,#1,10(%a6),%a7 + mac.w %d6u,%d3l,#1,10(%a6)&,%d1 + mac.w %d6u,%d3l,#1,10(%a6)&,%a3 + mac.w %d6u,%d3l,#1,10(%a6)&,%d2 + mac.w %d6u,%d3l,#1,10(%a6)&,%a7 + mac.w %d6u,%d3l,#1,-(%a1),%d1 + mac.w %d6u,%d3l,#1,-(%a1),%a3 + mac.w %d6u,%d3l,#1,-(%a1),%d2 + mac.w %d6u,%d3l,#1,-(%a1),%a7 + mac.w %d6u,%d3l,#1,-(%a1)&,%d1 + mac.w %d6u,%d3l,#1,-(%a1)&,%a3 + mac.w %d6u,%d3l,#1,-(%a1)&,%d2 + mac.w %d6u,%d3l,#1,-(%a1)&,%a7 + mac.w %d6u,%d3l,#-1,(%a3),%d1 + mac.w %d6u,%d3l,#-1,(%a3),%a3 + mac.w %d6u,%d3l,#-1,(%a3),%d2 + mac.w %d6u,%d3l,#-1,(%a3),%a7 + mac.w %d6u,%d3l,#-1,(%a3)&,%d1 + mac.w %d6u,%d3l,#-1,(%a3)&,%a3 + mac.w %d6u,%d3l,#-1,(%a3)&,%d2 + mac.w %d6u,%d3l,#-1,(%a3)&,%a7 + mac.w %d6u,%d3l,#-1,(%a2)+,%d1 + mac.w %d6u,%d3l,#-1,(%a2)+,%a3 + mac.w %d6u,%d3l,#-1,(%a2)+,%d2 + mac.w %d6u,%d3l,#-1,(%a2)+,%a7 + mac.w %d6u,%d3l,#-1,(%a2)+&,%d1 + mac.w %d6u,%d3l,#-1,(%a2)+&,%a3 + mac.w %d6u,%d3l,#-1,(%a2)+&,%d2 + mac.w %d6u,%d3l,#-1,(%a2)+&,%a7 + mac.w %d6u,%d3l,#-1,10(%a6),%d1 + mac.w %d6u,%d3l,#-1,10(%a6),%a3 + mac.w %d6u,%d3l,#-1,10(%a6),%d2 + mac.w %d6u,%d3l,#-1,10(%a6),%a7 + mac.w %d6u,%d3l,#-1,10(%a6)&,%d1 + mac.w %d6u,%d3l,#-1,10(%a6)&,%a3 + mac.w %d6u,%d3l,#-1,10(%a6)&,%d2 + mac.w %d6u,%d3l,#-1,10(%a6)&,%a7 + mac.w %d6u,%d3l,#-1,-(%a1),%d1 + mac.w %d6u,%d3l,#-1,-(%a1),%a3 + mac.w %d6u,%d3l,#-1,-(%a1),%d2 + mac.w %d6u,%d3l,#-1,-(%a1),%a7 + mac.w %d6u,%d3l,#-1,-(%a1)&,%d1 + mac.w %d6u,%d3l,#-1,-(%a1)&,%a3 + mac.w %d6u,%d3l,#-1,-(%a1)&,%d2 + mac.w %d6u,%d3l,#-1,-(%a1)&,%a7 + mac.w %d6u,%a7u,(%a3),%d1 + mac.w %d6u,%a7u,(%a3),%a3 + mac.w %d6u,%a7u,(%a3),%d2 + mac.w %d6u,%a7u,(%a3),%a7 + mac.w %d6u,%a7u,(%a3)&,%d1 + mac.w %d6u,%a7u,(%a3)&,%a3 + mac.w %d6u,%a7u,(%a3)&,%d2 + mac.w %d6u,%a7u,(%a3)&,%a7 + mac.w %d6u,%a7u,(%a2)+,%d1 + mac.w %d6u,%a7u,(%a2)+,%a3 + mac.w %d6u,%a7u,(%a2)+,%d2 + mac.w %d6u,%a7u,(%a2)+,%a7 + mac.w %d6u,%a7u,(%a2)+&,%d1 + mac.w %d6u,%a7u,(%a2)+&,%a3 + mac.w %d6u,%a7u,(%a2)+&,%d2 + mac.w %d6u,%a7u,(%a2)+&,%a7 + mac.w %d6u,%a7u,10(%a6),%d1 + mac.w %d6u,%a7u,10(%a6),%a3 + mac.w %d6u,%a7u,10(%a6),%d2 + mac.w %d6u,%a7u,10(%a6),%a7 + mac.w %d6u,%a7u,10(%a6)&,%d1 + mac.w %d6u,%a7u,10(%a6)&,%a3 + mac.w %d6u,%a7u,10(%a6)&,%d2 + mac.w %d6u,%a7u,10(%a6)&,%a7 + mac.w %d6u,%a7u,-(%a1),%d1 + mac.w %d6u,%a7u,-(%a1),%a3 + mac.w %d6u,%a7u,-(%a1),%d2 + mac.w %d6u,%a7u,-(%a1),%a7 + mac.w %d6u,%a7u,-(%a1)&,%d1 + mac.w %d6u,%a7u,-(%a1)&,%a3 + mac.w %d6u,%a7u,-(%a1)&,%d2 + mac.w %d6u,%a7u,-(%a1)&,%a7 + mac.w %d6u,%a7u,<<,(%a3),%d1 + mac.w %d6u,%a7u,<<,(%a3),%a3 + mac.w %d6u,%a7u,<<,(%a3),%d2 + mac.w %d6u,%a7u,<<,(%a3),%a7 + mac.w %d6u,%a7u,<<,(%a3)&,%d1 + mac.w %d6u,%a7u,<<,(%a3)&,%a3 + mac.w %d6u,%a7u,<<,(%a3)&,%d2 + mac.w %d6u,%a7u,<<,(%a3)&,%a7 + mac.w %d6u,%a7u,<<,(%a2)+,%d1 + mac.w %d6u,%a7u,<<,(%a2)+,%a3 + mac.w %d6u,%a7u,<<,(%a2)+,%d2 + mac.w %d6u,%a7u,<<,(%a2)+,%a7 + mac.w %d6u,%a7u,<<,(%a2)+&,%d1 + mac.w %d6u,%a7u,<<,(%a2)+&,%a3 + mac.w %d6u,%a7u,<<,(%a2)+&,%d2 + mac.w %d6u,%a7u,<<,(%a2)+&,%a7 + mac.w %d6u,%a7u,<<,10(%a6),%d1 + mac.w %d6u,%a7u,<<,10(%a6),%a3 + mac.w %d6u,%a7u,<<,10(%a6),%d2 + mac.w %d6u,%a7u,<<,10(%a6),%a7 + mac.w %d6u,%a7u,<<,10(%a6)&,%d1 + mac.w %d6u,%a7u,<<,10(%a6)&,%a3 + mac.w %d6u,%a7u,<<,10(%a6)&,%d2 + mac.w %d6u,%a7u,<<,10(%a6)&,%a7 + mac.w %d6u,%a7u,<<,-(%a1),%d1 + mac.w %d6u,%a7u,<<,-(%a1),%a3 + mac.w %d6u,%a7u,<<,-(%a1),%d2 + mac.w %d6u,%a7u,<<,-(%a1),%a7 + mac.w %d6u,%a7u,<<,-(%a1)&,%d1 + mac.w %d6u,%a7u,<<,-(%a1)&,%a3 + mac.w %d6u,%a7u,<<,-(%a1)&,%d2 + mac.w %d6u,%a7u,<<,-(%a1)&,%a7 + mac.w %d6u,%a7u,>>,(%a3),%d1 + mac.w %d6u,%a7u,>>,(%a3),%a3 + mac.w %d6u,%a7u,>>,(%a3),%d2 + mac.w %d6u,%a7u,>>,(%a3),%a7 + mac.w %d6u,%a7u,>>,(%a3)&,%d1 + mac.w %d6u,%a7u,>>,(%a3)&,%a3 + mac.w %d6u,%a7u,>>,(%a3)&,%d2 + mac.w %d6u,%a7u,>>,(%a3)&,%a7 + mac.w %d6u,%a7u,>>,(%a2)+,%d1 + mac.w %d6u,%a7u,>>,(%a2)+,%a3 + mac.w %d6u,%a7u,>>,(%a2)+,%d2 + mac.w %d6u,%a7u,>>,(%a2)+,%a7 + mac.w %d6u,%a7u,>>,(%a2)+&,%d1 + mac.w %d6u,%a7u,>>,(%a2)+&,%a3 + mac.w %d6u,%a7u,>>,(%a2)+&,%d2 + mac.w %d6u,%a7u,>>,(%a2)+&,%a7 + mac.w %d6u,%a7u,>>,10(%a6),%d1 + mac.w %d6u,%a7u,>>,10(%a6),%a3 + mac.w %d6u,%a7u,>>,10(%a6),%d2 + mac.w %d6u,%a7u,>>,10(%a6),%a7 + mac.w %d6u,%a7u,>>,10(%a6)&,%d1 + mac.w %d6u,%a7u,>>,10(%a6)&,%a3 + mac.w %d6u,%a7u,>>,10(%a6)&,%d2 + mac.w %d6u,%a7u,>>,10(%a6)&,%a7 + mac.w %d6u,%a7u,>>,-(%a1),%d1 + mac.w %d6u,%a7u,>>,-(%a1),%a3 + mac.w %d6u,%a7u,>>,-(%a1),%d2 + mac.w %d6u,%a7u,>>,-(%a1),%a7 + mac.w %d6u,%a7u,>>,-(%a1)&,%d1 + mac.w %d6u,%a7u,>>,-(%a1)&,%a3 + mac.w %d6u,%a7u,>>,-(%a1)&,%d2 + mac.w %d6u,%a7u,>>,-(%a1)&,%a7 + mac.w %d6u,%a7u,#1,(%a3),%d1 + mac.w %d6u,%a7u,#1,(%a3),%a3 + mac.w %d6u,%a7u,#1,(%a3),%d2 + mac.w %d6u,%a7u,#1,(%a3),%a7 + mac.w %d6u,%a7u,#1,(%a3)&,%d1 + mac.w %d6u,%a7u,#1,(%a3)&,%a3 + mac.w %d6u,%a7u,#1,(%a3)&,%d2 + mac.w %d6u,%a7u,#1,(%a3)&,%a7 + mac.w %d6u,%a7u,#1,(%a2)+,%d1 + mac.w %d6u,%a7u,#1,(%a2)+,%a3 + mac.w %d6u,%a7u,#1,(%a2)+,%d2 + mac.w %d6u,%a7u,#1,(%a2)+,%a7 + mac.w %d6u,%a7u,#1,(%a2)+&,%d1 + mac.w %d6u,%a7u,#1,(%a2)+&,%a3 + mac.w %d6u,%a7u,#1,(%a2)+&,%d2 + mac.w %d6u,%a7u,#1,(%a2)+&,%a7 + mac.w %d6u,%a7u,#1,10(%a6),%d1 + mac.w %d6u,%a7u,#1,10(%a6),%a3 + mac.w %d6u,%a7u,#1,10(%a6),%d2 + mac.w %d6u,%a7u,#1,10(%a6),%a7 + mac.w %d6u,%a7u,#1,10(%a6)&,%d1 + mac.w %d6u,%a7u,#1,10(%a6)&,%a3 + mac.w %d6u,%a7u,#1,10(%a6)&,%d2 + mac.w %d6u,%a7u,#1,10(%a6)&,%a7 + mac.w %d6u,%a7u,#1,-(%a1),%d1 + mac.w %d6u,%a7u,#1,-(%a1),%a3 + mac.w %d6u,%a7u,#1,-(%a1),%d2 + mac.w %d6u,%a7u,#1,-(%a1),%a7 + mac.w %d6u,%a7u,#1,-(%a1)&,%d1 + mac.w %d6u,%a7u,#1,-(%a1)&,%a3 + mac.w %d6u,%a7u,#1,-(%a1)&,%d2 + mac.w %d6u,%a7u,#1,-(%a1)&,%a7 + mac.w %d6u,%a7u,#-1,(%a3),%d1 + mac.w %d6u,%a7u,#-1,(%a3),%a3 + mac.w %d6u,%a7u,#-1,(%a3),%d2 + mac.w %d6u,%a7u,#-1,(%a3),%a7 + mac.w %d6u,%a7u,#-1,(%a3)&,%d1 + mac.w %d6u,%a7u,#-1,(%a3)&,%a3 + mac.w %d6u,%a7u,#-1,(%a3)&,%d2 + mac.w %d6u,%a7u,#-1,(%a3)&,%a7 + mac.w %d6u,%a7u,#-1,(%a2)+,%d1 + mac.w %d6u,%a7u,#-1,(%a2)+,%a3 + mac.w %d6u,%a7u,#-1,(%a2)+,%d2 + mac.w %d6u,%a7u,#-1,(%a2)+,%a7 + mac.w %d6u,%a7u,#-1,(%a2)+&,%d1 + mac.w %d6u,%a7u,#-1,(%a2)+&,%a3 + mac.w %d6u,%a7u,#-1,(%a2)+&,%d2 + mac.w %d6u,%a7u,#-1,(%a2)+&,%a7 + mac.w %d6u,%a7u,#-1,10(%a6),%d1 + mac.w %d6u,%a7u,#-1,10(%a6),%a3 + mac.w %d6u,%a7u,#-1,10(%a6),%d2 + mac.w %d6u,%a7u,#-1,10(%a6),%a7 + mac.w %d6u,%a7u,#-1,10(%a6)&,%d1 + mac.w %d6u,%a7u,#-1,10(%a6)&,%a3 + mac.w %d6u,%a7u,#-1,10(%a6)&,%d2 + mac.w %d6u,%a7u,#-1,10(%a6)&,%a7 + mac.w %d6u,%a7u,#-1,-(%a1),%d1 + mac.w %d6u,%a7u,#-1,-(%a1),%a3 + mac.w %d6u,%a7u,#-1,-(%a1),%d2 + mac.w %d6u,%a7u,#-1,-(%a1),%a7 + mac.w %d6u,%a7u,#-1,-(%a1)&,%d1 + mac.w %d6u,%a7u,#-1,-(%a1)&,%a3 + mac.w %d6u,%a7u,#-1,-(%a1)&,%d2 + mac.w %d6u,%a7u,#-1,-(%a1)&,%a7 + mac.w %d6u,%d1l,(%a3),%d1 + mac.w %d6u,%d1l,(%a3),%a3 + mac.w %d6u,%d1l,(%a3),%d2 + mac.w %d6u,%d1l,(%a3),%a7 + mac.w %d6u,%d1l,(%a3)&,%d1 + mac.w %d6u,%d1l,(%a3)&,%a3 + mac.w %d6u,%d1l,(%a3)&,%d2 + mac.w %d6u,%d1l,(%a3)&,%a7 + mac.w %d6u,%d1l,(%a2)+,%d1 + mac.w %d6u,%d1l,(%a2)+,%a3 + mac.w %d6u,%d1l,(%a2)+,%d2 + mac.w %d6u,%d1l,(%a2)+,%a7 + mac.w %d6u,%d1l,(%a2)+&,%d1 + mac.w %d6u,%d1l,(%a2)+&,%a3 + mac.w %d6u,%d1l,(%a2)+&,%d2 + mac.w %d6u,%d1l,(%a2)+&,%a7 + mac.w %d6u,%d1l,10(%a6),%d1 + mac.w %d6u,%d1l,10(%a6),%a3 + mac.w %d6u,%d1l,10(%a6),%d2 + mac.w %d6u,%d1l,10(%a6),%a7 + mac.w %d6u,%d1l,10(%a6)&,%d1 + mac.w %d6u,%d1l,10(%a6)&,%a3 + mac.w %d6u,%d1l,10(%a6)&,%d2 + mac.w %d6u,%d1l,10(%a6)&,%a7 + mac.w %d6u,%d1l,-(%a1),%d1 + mac.w %d6u,%d1l,-(%a1),%a3 + mac.w %d6u,%d1l,-(%a1),%d2 + mac.w %d6u,%d1l,-(%a1),%a7 + mac.w %d6u,%d1l,-(%a1)&,%d1 + mac.w %d6u,%d1l,-(%a1)&,%a3 + mac.w %d6u,%d1l,-(%a1)&,%d2 + mac.w %d6u,%d1l,-(%a1)&,%a7 + mac.w %d6u,%d1l,<<,(%a3),%d1 + mac.w %d6u,%d1l,<<,(%a3),%a3 + mac.w %d6u,%d1l,<<,(%a3),%d2 + mac.w %d6u,%d1l,<<,(%a3),%a7 + mac.w %d6u,%d1l,<<,(%a3)&,%d1 + mac.w %d6u,%d1l,<<,(%a3)&,%a3 + mac.w %d6u,%d1l,<<,(%a3)&,%d2 + mac.w %d6u,%d1l,<<,(%a3)&,%a7 + mac.w %d6u,%d1l,<<,(%a2)+,%d1 + mac.w %d6u,%d1l,<<,(%a2)+,%a3 + mac.w %d6u,%d1l,<<,(%a2)+,%d2 + mac.w %d6u,%d1l,<<,(%a2)+,%a7 + mac.w %d6u,%d1l,<<,(%a2)+&,%d1 + mac.w %d6u,%d1l,<<,(%a2)+&,%a3 + mac.w %d6u,%d1l,<<,(%a2)+&,%d2 + mac.w %d6u,%d1l,<<,(%a2)+&,%a7 + mac.w %d6u,%d1l,<<,10(%a6),%d1 + mac.w %d6u,%d1l,<<,10(%a6),%a3 + mac.w %d6u,%d1l,<<,10(%a6),%d2 + mac.w %d6u,%d1l,<<,10(%a6),%a7 + mac.w %d6u,%d1l,<<,10(%a6)&,%d1 + mac.w %d6u,%d1l,<<,10(%a6)&,%a3 + mac.w %d6u,%d1l,<<,10(%a6)&,%d2 + mac.w %d6u,%d1l,<<,10(%a6)&,%a7 + mac.w %d6u,%d1l,<<,-(%a1),%d1 + mac.w %d6u,%d1l,<<,-(%a1),%a3 + mac.w %d6u,%d1l,<<,-(%a1),%d2 + mac.w %d6u,%d1l,<<,-(%a1),%a7 + mac.w %d6u,%d1l,<<,-(%a1)&,%d1 + mac.w %d6u,%d1l,<<,-(%a1)&,%a3 + mac.w %d6u,%d1l,<<,-(%a1)&,%d2 + mac.w %d6u,%d1l,<<,-(%a1)&,%a7 + mac.w %d6u,%d1l,>>,(%a3),%d1 + mac.w %d6u,%d1l,>>,(%a3),%a3 + mac.w %d6u,%d1l,>>,(%a3),%d2 + mac.w %d6u,%d1l,>>,(%a3),%a7 + mac.w %d6u,%d1l,>>,(%a3)&,%d1 + mac.w %d6u,%d1l,>>,(%a3)&,%a3 + mac.w %d6u,%d1l,>>,(%a3)&,%d2 + mac.w %d6u,%d1l,>>,(%a3)&,%a7 + mac.w %d6u,%d1l,>>,(%a2)+,%d1 + mac.w %d6u,%d1l,>>,(%a2)+,%a3 + mac.w %d6u,%d1l,>>,(%a2)+,%d2 + mac.w %d6u,%d1l,>>,(%a2)+,%a7 + mac.w %d6u,%d1l,>>,(%a2)+&,%d1 + mac.w %d6u,%d1l,>>,(%a2)+&,%a3 + mac.w %d6u,%d1l,>>,(%a2)+&,%d2 + mac.w %d6u,%d1l,>>,(%a2)+&,%a7 + mac.w %d6u,%d1l,>>,10(%a6),%d1 + mac.w %d6u,%d1l,>>,10(%a6),%a3 + mac.w %d6u,%d1l,>>,10(%a6),%d2 + mac.w %d6u,%d1l,>>,10(%a6),%a7 + mac.w %d6u,%d1l,>>,10(%a6)&,%d1 + mac.w %d6u,%d1l,>>,10(%a6)&,%a3 + mac.w %d6u,%d1l,>>,10(%a6)&,%d2 + mac.w %d6u,%d1l,>>,10(%a6)&,%a7 + mac.w %d6u,%d1l,>>,-(%a1),%d1 + mac.w %d6u,%d1l,>>,-(%a1),%a3 + mac.w %d6u,%d1l,>>,-(%a1),%d2 + mac.w %d6u,%d1l,>>,-(%a1),%a7 + mac.w %d6u,%d1l,>>,-(%a1)&,%d1 + mac.w %d6u,%d1l,>>,-(%a1)&,%a3 + mac.w %d6u,%d1l,>>,-(%a1)&,%d2 + mac.w %d6u,%d1l,>>,-(%a1)&,%a7 + mac.w %d6u,%d1l,#1,(%a3),%d1 + mac.w %d6u,%d1l,#1,(%a3),%a3 + mac.w %d6u,%d1l,#1,(%a3),%d2 + mac.w %d6u,%d1l,#1,(%a3),%a7 + mac.w %d6u,%d1l,#1,(%a3)&,%d1 + mac.w %d6u,%d1l,#1,(%a3)&,%a3 + mac.w %d6u,%d1l,#1,(%a3)&,%d2 + mac.w %d6u,%d1l,#1,(%a3)&,%a7 + mac.w %d6u,%d1l,#1,(%a2)+,%d1 + mac.w %d6u,%d1l,#1,(%a2)+,%a3 + mac.w %d6u,%d1l,#1,(%a2)+,%d2 + mac.w %d6u,%d1l,#1,(%a2)+,%a7 + mac.w %d6u,%d1l,#1,(%a2)+&,%d1 + mac.w %d6u,%d1l,#1,(%a2)+&,%a3 + mac.w %d6u,%d1l,#1,(%a2)+&,%d2 + mac.w %d6u,%d1l,#1,(%a2)+&,%a7 + mac.w %d6u,%d1l,#1,10(%a6),%d1 + mac.w %d6u,%d1l,#1,10(%a6),%a3 + mac.w %d6u,%d1l,#1,10(%a6),%d2 + mac.w %d6u,%d1l,#1,10(%a6),%a7 + mac.w %d6u,%d1l,#1,10(%a6)&,%d1 + mac.w %d6u,%d1l,#1,10(%a6)&,%a3 + mac.w %d6u,%d1l,#1,10(%a6)&,%d2 + mac.w %d6u,%d1l,#1,10(%a6)&,%a7 + mac.w %d6u,%d1l,#1,-(%a1),%d1 + mac.w %d6u,%d1l,#1,-(%a1),%a3 + mac.w %d6u,%d1l,#1,-(%a1),%d2 + mac.w %d6u,%d1l,#1,-(%a1),%a7 + mac.w %d6u,%d1l,#1,-(%a1)&,%d1 + mac.w %d6u,%d1l,#1,-(%a1)&,%a3 + mac.w %d6u,%d1l,#1,-(%a1)&,%d2 + mac.w %d6u,%d1l,#1,-(%a1)&,%a7 + mac.w %d6u,%d1l,#-1,(%a3),%d1 + mac.w %d6u,%d1l,#-1,(%a3),%a3 + mac.w %d6u,%d1l,#-1,(%a3),%d2 + mac.w %d6u,%d1l,#-1,(%a3),%a7 + mac.w %d6u,%d1l,#-1,(%a3)&,%d1 + mac.w %d6u,%d1l,#-1,(%a3)&,%a3 + mac.w %d6u,%d1l,#-1,(%a3)&,%d2 + mac.w %d6u,%d1l,#-1,(%a3)&,%a7 + mac.w %d6u,%d1l,#-1,(%a2)+,%d1 + mac.w %d6u,%d1l,#-1,(%a2)+,%a3 + mac.w %d6u,%d1l,#-1,(%a2)+,%d2 + mac.w %d6u,%d1l,#-1,(%a2)+,%a7 + mac.w %d6u,%d1l,#-1,(%a2)+&,%d1 + mac.w %d6u,%d1l,#-1,(%a2)+&,%a3 + mac.w %d6u,%d1l,#-1,(%a2)+&,%d2 + mac.w %d6u,%d1l,#-1,(%a2)+&,%a7 + mac.w %d6u,%d1l,#-1,10(%a6),%d1 + mac.w %d6u,%d1l,#-1,10(%a6),%a3 + mac.w %d6u,%d1l,#-1,10(%a6),%d2 + mac.w %d6u,%d1l,#-1,10(%a6),%a7 + mac.w %d6u,%d1l,#-1,10(%a6)&,%d1 + mac.w %d6u,%d1l,#-1,10(%a6)&,%a3 + mac.w %d6u,%d1l,#-1,10(%a6)&,%d2 + mac.w %d6u,%d1l,#-1,10(%a6)&,%a7 + mac.w %d6u,%d1l,#-1,-(%a1),%d1 + mac.w %d6u,%d1l,#-1,-(%a1),%a3 + mac.w %d6u,%d1l,#-1,-(%a1),%d2 + mac.w %d6u,%d1l,#-1,-(%a1),%a7 + mac.w %d6u,%d1l,#-1,-(%a1)&,%d1 + mac.w %d6u,%d1l,#-1,-(%a1)&,%a3 + mac.w %d6u,%d1l,#-1,-(%a1)&,%d2 + mac.w %d6u,%d1l,#-1,-(%a1)&,%a7 + + mac.l %a1,%a3 + mac.l %a1,%a3,<< + mac.l %a1,%a3,>> + mac.l %a1,%a3,#1 + mac.l %a1,%a3,#-1 + mac.l %a1,%d4 + mac.l %a1,%d4,<< + mac.l %a1,%d4,>> + mac.l %a1,%d4,#1 + mac.l %a1,%d4,#-1 + mac.l %d6,%a3 + mac.l %d6,%a3,<< + mac.l %d6,%a3,>> + mac.l %d6,%a3,#1 + mac.l %d6,%a3,#-1 + mac.l %d6,%d4 + mac.l %d6,%d4,<< + mac.l %d6,%d4,>> + mac.l %d6,%d4,#1 + mac.l %d6,%d4,#-1 + + mac.l %a1,%a3,(%a3),%d1 + mac.l %a1,%a3,(%a3),%a3 + mac.l %a1,%a3,(%a3),%d2 + mac.l %a1,%a3,(%a3),%a7 + mac.l %a1,%a3,(%a3)&,%d1 + mac.l %a1,%a3,(%a3)&,%a3 + mac.l %a1,%a3,(%a3)&,%d2 + mac.l %a1,%a3,(%a3)&,%a7 + mac.l %a1,%a3,(%a2)+,%d1 + mac.l %a1,%a3,(%a2)+,%a3 + mac.l %a1,%a3,(%a2)+,%d2 + mac.l %a1,%a3,(%a2)+,%a7 + mac.l %a1,%a3,(%a2)+&,%d1 + mac.l %a1,%a3,(%a2)+&,%a3 + mac.l %a1,%a3,(%a2)+&,%d2 + mac.l %a1,%a3,(%a2)+&,%a7 + mac.l %a1,%a3,10(%a6),%d1 + mac.l %a1,%a3,10(%a6),%a3 + mac.l %a1,%a3,10(%a6),%d2 + mac.l %a1,%a3,10(%a6),%a7 + mac.l %a1,%a3,10(%a6)&,%d1 + mac.l %a1,%a3,10(%a6)&,%a3 + mac.l %a1,%a3,10(%a6)&,%d2 + mac.l %a1,%a3,10(%a6)&,%a7 + mac.l %a1,%a3,-(%a1),%d1 + mac.l %a1,%a3,-(%a1),%a3 + mac.l %a1,%a3,-(%a1),%d2 + mac.l %a1,%a3,-(%a1),%a7 + mac.l %a1,%a3,-(%a1)&,%d1 + mac.l %a1,%a3,-(%a1)&,%a3 + mac.l %a1,%a3,-(%a1)&,%d2 + mac.l %a1,%a3,-(%a1)&,%a7 + mac.l %a1,%a3,<<,(%a3),%d1 + mac.l %a1,%a3,<<,(%a3),%a3 + mac.l %a1,%a3,<<,(%a3),%d2 + mac.l %a1,%a3,<<,(%a3),%a7 + mac.l %a1,%a3,<<,(%a3)&,%d1 + mac.l %a1,%a3,<<,(%a3)&,%a3 + mac.l %a1,%a3,<<,(%a3)&,%d2 + mac.l %a1,%a3,<<,(%a3)&,%a7 + mac.l %a1,%a3,<<,(%a2)+,%d1 + mac.l %a1,%a3,<<,(%a2)+,%a3 + mac.l %a1,%a3,<<,(%a2)+,%d2 + mac.l %a1,%a3,<<,(%a2)+,%a7 + mac.l %a1,%a3,<<,(%a2)+&,%d1 + mac.l %a1,%a3,<<,(%a2)+&,%a3 + mac.l %a1,%a3,<<,(%a2)+&,%d2 + mac.l %a1,%a3,<<,(%a2)+&,%a7 + mac.l %a1,%a3,<<,10(%a6),%d1 + mac.l %a1,%a3,<<,10(%a6),%a3 + mac.l %a1,%a3,<<,10(%a6),%d2 + mac.l %a1,%a3,<<,10(%a6),%a7 + mac.l %a1,%a3,<<,10(%a6)&,%d1 + mac.l %a1,%a3,<<,10(%a6)&,%a3 + mac.l %a1,%a3,<<,10(%a6)&,%d2 + mac.l %a1,%a3,<<,10(%a6)&,%a7 + mac.l %a1,%a3,<<,-(%a1),%d1 + mac.l %a1,%a3,<<,-(%a1),%a3 + mac.l %a1,%a3,<<,-(%a1),%d2 + mac.l %a1,%a3,<<,-(%a1),%a7 + mac.l %a1,%a3,<<,-(%a1)&,%d1 + mac.l %a1,%a3,<<,-(%a1)&,%a3 + mac.l %a1,%a3,<<,-(%a1)&,%d2 + mac.l %a1,%a3,<<,-(%a1)&,%a7 + mac.l %a1,%a3,>>,(%a3),%d1 + mac.l %a1,%a3,>>,(%a3),%a3 + mac.l %a1,%a3,>>,(%a3),%d2 + mac.l %a1,%a3,>>,(%a3),%a7 + mac.l %a1,%a3,>>,(%a3)&,%d1 + mac.l %a1,%a3,>>,(%a3)&,%a3 + mac.l %a1,%a3,>>,(%a3)&,%d2 + mac.l %a1,%a3,>>,(%a3)&,%a7 + mac.l %a1,%a3,>>,(%a2)+,%d1 + mac.l %a1,%a3,>>,(%a2)+,%a3 + mac.l %a1,%a3,>>,(%a2)+,%d2 + mac.l %a1,%a3,>>,(%a2)+,%a7 + mac.l %a1,%a3,>>,(%a2)+&,%d1 + mac.l %a1,%a3,>>,(%a2)+&,%a3 + mac.l %a1,%a3,>>,(%a2)+&,%d2 + mac.l %a1,%a3,>>,(%a2)+&,%a7 + mac.l %a1,%a3,>>,10(%a6),%d1 + mac.l %a1,%a3,>>,10(%a6),%a3 + mac.l %a1,%a3,>>,10(%a6),%d2 + mac.l %a1,%a3,>>,10(%a6),%a7 + mac.l %a1,%a3,>>,10(%a6)&,%d1 + mac.l %a1,%a3,>>,10(%a6)&,%a3 + mac.l %a1,%a3,>>,10(%a6)&,%d2 + mac.l %a1,%a3,>>,10(%a6)&,%a7 + mac.l %a1,%a3,>>,-(%a1),%d1 + mac.l %a1,%a3,>>,-(%a1),%a3 + mac.l %a1,%a3,>>,-(%a1),%d2 + mac.l %a1,%a3,>>,-(%a1),%a7 + mac.l %a1,%a3,>>,-(%a1)&,%d1 + mac.l %a1,%a3,>>,-(%a1)&,%a3 + mac.l %a1,%a3,>>,-(%a1)&,%d2 + mac.l %a1,%a3,>>,-(%a1)&,%a7 + mac.l %a1,%a3,#1,(%a3),%d1 + mac.l %a1,%a3,#1,(%a3),%a3 + mac.l %a1,%a3,#1,(%a3),%d2 + mac.l %a1,%a3,#1,(%a3),%a7 + mac.l %a1,%a3,#1,(%a3)&,%d1 + mac.l %a1,%a3,#1,(%a3)&,%a3 + mac.l %a1,%a3,#1,(%a3)&,%d2 + mac.l %a1,%a3,#1,(%a3)&,%a7 + mac.l %a1,%a3,#1,(%a2)+,%d1 + mac.l %a1,%a3,#1,(%a2)+,%a3 + mac.l %a1,%a3,#1,(%a2)+,%d2 + mac.l %a1,%a3,#1,(%a2)+,%a7 + mac.l %a1,%a3,#1,(%a2)+&,%d1 + mac.l %a1,%a3,#1,(%a2)+&,%a3 + mac.l %a1,%a3,#1,(%a2)+&,%d2 + mac.l %a1,%a3,#1,(%a2)+&,%a7 + mac.l %a1,%a3,#1,10(%a6),%d1 + mac.l %a1,%a3,#1,10(%a6),%a3 + mac.l %a1,%a3,#1,10(%a6),%d2 + mac.l %a1,%a3,#1,10(%a6),%a7 + mac.l %a1,%a3,#1,10(%a6)&,%d1 + mac.l %a1,%a3,#1,10(%a6)&,%a3 + mac.l %a1,%a3,#1,10(%a6)&,%d2 + mac.l %a1,%a3,#1,10(%a6)&,%a7 + mac.l %a1,%a3,#1,-(%a1),%d1 + mac.l %a1,%a3,#1,-(%a1),%a3 + mac.l %a1,%a3,#1,-(%a1),%d2 + mac.l %a1,%a3,#1,-(%a1),%a7 + mac.l %a1,%a3,#1,-(%a1)&,%d1 + mac.l %a1,%a3,#1,-(%a1)&,%a3 + mac.l %a1,%a3,#1,-(%a1)&,%d2 + mac.l %a1,%a3,#1,-(%a1)&,%a7 + mac.l %a1,%a3,#-1,(%a3),%d1 + mac.l %a1,%a3,#-1,(%a3),%a3 + mac.l %a1,%a3,#-1,(%a3),%d2 + mac.l %a1,%a3,#-1,(%a3),%a7 + mac.l %a1,%a3,#-1,(%a3)&,%d1 + mac.l %a1,%a3,#-1,(%a3)&,%a3 + mac.l %a1,%a3,#-1,(%a3)&,%d2 + mac.l %a1,%a3,#-1,(%a3)&,%a7 + mac.l %a1,%a3,#-1,(%a2)+,%d1 + mac.l %a1,%a3,#-1,(%a2)+,%a3 + mac.l %a1,%a3,#-1,(%a2)+,%d2 + mac.l %a1,%a3,#-1,(%a2)+,%a7 + mac.l %a1,%a3,#-1,(%a2)+&,%d1 + mac.l %a1,%a3,#-1,(%a2)+&,%a3 + mac.l %a1,%a3,#-1,(%a2)+&,%d2 + mac.l %a1,%a3,#-1,(%a2)+&,%a7 + mac.l %a1,%a3,#-1,10(%a6),%d1 + mac.l %a1,%a3,#-1,10(%a6),%a3 + mac.l %a1,%a3,#-1,10(%a6),%d2 + mac.l %a1,%a3,#-1,10(%a6),%a7 + mac.l %a1,%a3,#-1,10(%a6)&,%d1 + mac.l %a1,%a3,#-1,10(%a6)&,%a3 + mac.l %a1,%a3,#-1,10(%a6)&,%d2 + mac.l %a1,%a3,#-1,10(%a6)&,%a7 + mac.l %a1,%a3,#-1,-(%a1),%d1 + mac.l %a1,%a3,#-1,-(%a1),%a3 + mac.l %a1,%a3,#-1,-(%a1),%d2 + mac.l %a1,%a3,#-1,-(%a1),%a7 + mac.l %a1,%a3,#-1,-(%a1)&,%d1 + mac.l %a1,%a3,#-1,-(%a1)&,%a3 + mac.l %a1,%a3,#-1,-(%a1)&,%d2 + mac.l %a1,%a3,#-1,-(%a1)&,%a7 + mac.l %a1,%d4,(%a3),%d1 + mac.l %a1,%d4,(%a3),%a3 + mac.l %a1,%d4,(%a3),%d2 + mac.l %a1,%d4,(%a3),%a7 + mac.l %a1,%d4,(%a3)&,%d1 + mac.l %a1,%d4,(%a3)&,%a3 + mac.l %a1,%d4,(%a3)&,%d2 + mac.l %a1,%d4,(%a3)&,%a7 + mac.l %a1,%d4,(%a2)+,%d1 + mac.l %a1,%d4,(%a2)+,%a3 + mac.l %a1,%d4,(%a2)+,%d2 + mac.l %a1,%d4,(%a2)+,%a7 + mac.l %a1,%d4,(%a2)+&,%d1 + mac.l %a1,%d4,(%a2)+&,%a3 + mac.l %a1,%d4,(%a2)+&,%d2 + mac.l %a1,%d4,(%a2)+&,%a7 + mac.l %a1,%d4,10(%a6),%d1 + mac.l %a1,%d4,10(%a6),%a3 + mac.l %a1,%d4,10(%a6),%d2 + mac.l %a1,%d4,10(%a6),%a7 + mac.l %a1,%d4,10(%a6)&,%d1 + mac.l %a1,%d4,10(%a6)&,%a3 + mac.l %a1,%d4,10(%a6)&,%d2 + mac.l %a1,%d4,10(%a6)&,%a7 + mac.l %a1,%d4,-(%a1),%d1 + mac.l %a1,%d4,-(%a1),%a3 + mac.l %a1,%d4,-(%a1),%d2 + mac.l %a1,%d4,-(%a1),%a7 + mac.l %a1,%d4,-(%a1)&,%d1 + mac.l %a1,%d4,-(%a1)&,%a3 + mac.l %a1,%d4,-(%a1)&,%d2 + mac.l %a1,%d4,-(%a1)&,%a7 + mac.l %a1,%d4,<<,(%a3),%d1 + mac.l %a1,%d4,<<,(%a3),%a3 + mac.l %a1,%d4,<<,(%a3),%d2 + mac.l %a1,%d4,<<,(%a3),%a7 + mac.l %a1,%d4,<<,(%a3)&,%d1 + mac.l %a1,%d4,<<,(%a3)&,%a3 + mac.l %a1,%d4,<<,(%a3)&,%d2 + mac.l %a1,%d4,<<,(%a3)&,%a7 + mac.l %a1,%d4,<<,(%a2)+,%d1 + mac.l %a1,%d4,<<,(%a2)+,%a3 + mac.l %a1,%d4,<<,(%a2)+,%d2 + mac.l %a1,%d4,<<,(%a2)+,%a7 + mac.l %a1,%d4,<<,(%a2)+&,%d1 + mac.l %a1,%d4,<<,(%a2)+&,%a3 + mac.l %a1,%d4,<<,(%a2)+&,%d2 + mac.l %a1,%d4,<<,(%a2)+&,%a7 + mac.l %a1,%d4,<<,10(%a6),%d1 + mac.l %a1,%d4,<<,10(%a6),%a3 + mac.l %a1,%d4,<<,10(%a6),%d2 + mac.l %a1,%d4,<<,10(%a6),%a7 + mac.l %a1,%d4,<<,10(%a6)&,%d1 + mac.l %a1,%d4,<<,10(%a6)&,%a3 + mac.l %a1,%d4,<<,10(%a6)&,%d2 + mac.l %a1,%d4,<<,10(%a6)&,%a7 + mac.l %a1,%d4,<<,-(%a1),%d1 + mac.l %a1,%d4,<<,-(%a1),%a3 + mac.l %a1,%d4,<<,-(%a1),%d2 + mac.l %a1,%d4,<<,-(%a1),%a7 + mac.l %a1,%d4,<<,-(%a1)&,%d1 + mac.l %a1,%d4,<<,-(%a1)&,%a3 + mac.l %a1,%d4,<<,-(%a1)&,%d2 + mac.l %a1,%d4,<<,-(%a1)&,%a7 + mac.l %a1,%d4,>>,(%a3),%d1 + mac.l %a1,%d4,>>,(%a3),%a3 + mac.l %a1,%d4,>>,(%a3),%d2 + mac.l %a1,%d4,>>,(%a3),%a7 + mac.l %a1,%d4,>>,(%a3)&,%d1 + mac.l %a1,%d4,>>,(%a3)&,%a3 + mac.l %a1,%d4,>>,(%a3)&,%d2 + mac.l %a1,%d4,>>,(%a3)&,%a7 + mac.l %a1,%d4,>>,(%a2)+,%d1 + mac.l %a1,%d4,>>,(%a2)+,%a3 + mac.l %a1,%d4,>>,(%a2)+,%d2 + mac.l %a1,%d4,>>,(%a2)+,%a7 + mac.l %a1,%d4,>>,(%a2)+&,%d1 + mac.l %a1,%d4,>>,(%a2)+&,%a3 + mac.l %a1,%d4,>>,(%a2)+&,%d2 + mac.l %a1,%d4,>>,(%a2)+&,%a7 + mac.l %a1,%d4,>>,10(%a6),%d1 + mac.l %a1,%d4,>>,10(%a6),%a3 + mac.l %a1,%d4,>>,10(%a6),%d2 + mac.l %a1,%d4,>>,10(%a6),%a7 + mac.l %a1,%d4,>>,10(%a6)&,%d1 + mac.l %a1,%d4,>>,10(%a6)&,%a3 + mac.l %a1,%d4,>>,10(%a6)&,%d2 + mac.l %a1,%d4,>>,10(%a6)&,%a7 + mac.l %a1,%d4,>>,-(%a1),%d1 + mac.l %a1,%d4,>>,-(%a1),%a3 + mac.l %a1,%d4,>>,-(%a1),%d2 + mac.l %a1,%d4,>>,-(%a1),%a7 + mac.l %a1,%d4,>>,-(%a1)&,%d1 + mac.l %a1,%d4,>>,-(%a1)&,%a3 + mac.l %a1,%d4,>>,-(%a1)&,%d2 + mac.l %a1,%d4,>>,-(%a1)&,%a7 + mac.l %a1,%d4,#1,(%a3),%d1 + mac.l %a1,%d4,#1,(%a3),%a3 + mac.l %a1,%d4,#1,(%a3),%d2 + mac.l %a1,%d4,#1,(%a3),%a7 + mac.l %a1,%d4,#1,(%a3)&,%d1 + mac.l %a1,%d4,#1,(%a3)&,%a3 + mac.l %a1,%d4,#1,(%a3)&,%d2 + mac.l %a1,%d4,#1,(%a3)&,%a7 + mac.l %a1,%d4,#1,(%a2)+,%d1 + mac.l %a1,%d4,#1,(%a2)+,%a3 + mac.l %a1,%d4,#1,(%a2)+,%d2 + mac.l %a1,%d4,#1,(%a2)+,%a7 + mac.l %a1,%d4,#1,(%a2)+&,%d1 + mac.l %a1,%d4,#1,(%a2)+&,%a3 + mac.l %a1,%d4,#1,(%a2)+&,%d2 + mac.l %a1,%d4,#1,(%a2)+&,%a7 + mac.l %a1,%d4,#1,10(%a6),%d1 + mac.l %a1,%d4,#1,10(%a6),%a3 + mac.l %a1,%d4,#1,10(%a6),%d2 + mac.l %a1,%d4,#1,10(%a6),%a7 + mac.l %a1,%d4,#1,10(%a6)&,%d1 + mac.l %a1,%d4,#1,10(%a6)&,%a3 + mac.l %a1,%d4,#1,10(%a6)&,%d2 + mac.l %a1,%d4,#1,10(%a6)&,%a7 + mac.l %a1,%d4,#1,-(%a1),%d1 + mac.l %a1,%d4,#1,-(%a1),%a3 + mac.l %a1,%d4,#1,-(%a1),%d2 + mac.l %a1,%d4,#1,-(%a1),%a7 + mac.l %a1,%d4,#1,-(%a1)&,%d1 + mac.l %a1,%d4,#1,-(%a1)&,%a3 + mac.l %a1,%d4,#1,-(%a1)&,%d2 + mac.l %a1,%d4,#1,-(%a1)&,%a7 + mac.l %a1,%d4,#-1,(%a3),%d1 + mac.l %a1,%d4,#-1,(%a3),%a3 + mac.l %a1,%d4,#-1,(%a3),%d2 + mac.l %a1,%d4,#-1,(%a3),%a7 + mac.l %a1,%d4,#-1,(%a3)&,%d1 + mac.l %a1,%d4,#-1,(%a3)&,%a3 + mac.l %a1,%d4,#-1,(%a3)&,%d2 + mac.l %a1,%d4,#-1,(%a3)&,%a7 + mac.l %a1,%d4,#-1,(%a2)+,%d1 + mac.l %a1,%d4,#-1,(%a2)+,%a3 + mac.l %a1,%d4,#-1,(%a2)+,%d2 + mac.l %a1,%d4,#-1,(%a2)+,%a7 + mac.l %a1,%d4,#-1,(%a2)+&,%d1 + mac.l %a1,%d4,#-1,(%a2)+&,%a3 + mac.l %a1,%d4,#-1,(%a2)+&,%d2 + mac.l %a1,%d4,#-1,(%a2)+&,%a7 + mac.l %a1,%d4,#-1,10(%a6),%d1 + mac.l %a1,%d4,#-1,10(%a6),%a3 + mac.l %a1,%d4,#-1,10(%a6),%d2 + mac.l %a1,%d4,#-1,10(%a6),%a7 + mac.l %a1,%d4,#-1,10(%a6)&,%d1 + mac.l %a1,%d4,#-1,10(%a6)&,%a3 + mac.l %a1,%d4,#-1,10(%a6)&,%d2 + mac.l %a1,%d4,#-1,10(%a6)&,%a7 + mac.l %a1,%d4,#-1,-(%a1),%d1 + mac.l %a1,%d4,#-1,-(%a1),%a3 + mac.l %a1,%d4,#-1,-(%a1),%d2 + mac.l %a1,%d4,#-1,-(%a1),%a7 + mac.l %a1,%d4,#-1,-(%a1)&,%d1 + mac.l %a1,%d4,#-1,-(%a1)&,%a3 + mac.l %a1,%d4,#-1,-(%a1)&,%d2 + mac.l %a1,%d4,#-1,-(%a1)&,%a7 + mac.l %d6,%a3,(%a3),%d1 + mac.l %d6,%a3,(%a3),%a3 + mac.l %d6,%a3,(%a3),%d2 + mac.l %d6,%a3,(%a3),%a7 + mac.l %d6,%a3,(%a3)&,%d1 + mac.l %d6,%a3,(%a3)&,%a3 + mac.l %d6,%a3,(%a3)&,%d2 + mac.l %d6,%a3,(%a3)&,%a7 + mac.l %d6,%a3,(%a2)+,%d1 + mac.l %d6,%a3,(%a2)+,%a3 + mac.l %d6,%a3,(%a2)+,%d2 + mac.l %d6,%a3,(%a2)+,%a7 + mac.l %d6,%a3,(%a2)+&,%d1 + mac.l %d6,%a3,(%a2)+&,%a3 + mac.l %d6,%a3,(%a2)+&,%d2 + mac.l %d6,%a3,(%a2)+&,%a7 + mac.l %d6,%a3,10(%a6),%d1 + mac.l %d6,%a3,10(%a6),%a3 + mac.l %d6,%a3,10(%a6),%d2 + mac.l %d6,%a3,10(%a6),%a7 + mac.l %d6,%a3,10(%a6)&,%d1 + mac.l %d6,%a3,10(%a6)&,%a3 + mac.l %d6,%a3,10(%a6)&,%d2 + mac.l %d6,%a3,10(%a6)&,%a7 + mac.l %d6,%a3,-(%a1),%d1 + mac.l %d6,%a3,-(%a1),%a3 + mac.l %d6,%a3,-(%a1),%d2 + mac.l %d6,%a3,-(%a1),%a7 + mac.l %d6,%a3,-(%a1)&,%d1 + mac.l %d6,%a3,-(%a1)&,%a3 + mac.l %d6,%a3,-(%a1)&,%d2 + mac.l %d6,%a3,-(%a1)&,%a7 + mac.l %d6,%a3,<<,(%a3),%d1 + mac.l %d6,%a3,<<,(%a3),%a3 + mac.l %d6,%a3,<<,(%a3),%d2 + mac.l %d6,%a3,<<,(%a3),%a7 + mac.l %d6,%a3,<<,(%a3)&,%d1 + mac.l %d6,%a3,<<,(%a3)&,%a3 + mac.l %d6,%a3,<<,(%a3)&,%d2 + mac.l %d6,%a3,<<,(%a3)&,%a7 + mac.l %d6,%a3,<<,(%a2)+,%d1 + mac.l %d6,%a3,<<,(%a2)+,%a3 + mac.l %d6,%a3,<<,(%a2)+,%d2 + mac.l %d6,%a3,<<,(%a2)+,%a7 + mac.l %d6,%a3,<<,(%a2)+&,%d1 + mac.l %d6,%a3,<<,(%a2)+&,%a3 + mac.l %d6,%a3,<<,(%a2)+&,%d2 + mac.l %d6,%a3,<<,(%a2)+&,%a7 + mac.l %d6,%a3,<<,10(%a6),%d1 + mac.l %d6,%a3,<<,10(%a6),%a3 + mac.l %d6,%a3,<<,10(%a6),%d2 + mac.l %d6,%a3,<<,10(%a6),%a7 + mac.l %d6,%a3,<<,10(%a6)&,%d1 + mac.l %d6,%a3,<<,10(%a6)&,%a3 + mac.l %d6,%a3,<<,10(%a6)&,%d2 + mac.l %d6,%a3,<<,10(%a6)&,%a7 + mac.l %d6,%a3,<<,-(%a1),%d1 + mac.l %d6,%a3,<<,-(%a1),%a3 + mac.l %d6,%a3,<<,-(%a1),%d2 + mac.l %d6,%a3,<<,-(%a1),%a7 + mac.l %d6,%a3,<<,-(%a1)&,%d1 + mac.l %d6,%a3,<<,-(%a1)&,%a3 + mac.l %d6,%a3,<<,-(%a1)&,%d2 + mac.l %d6,%a3,<<,-(%a1)&,%a7 + mac.l %d6,%a3,>>,(%a3),%d1 + mac.l %d6,%a3,>>,(%a3),%a3 + mac.l %d6,%a3,>>,(%a3),%d2 + mac.l %d6,%a3,>>,(%a3),%a7 + mac.l %d6,%a3,>>,(%a3)&,%d1 + mac.l %d6,%a3,>>,(%a3)&,%a3 + mac.l %d6,%a3,>>,(%a3)&,%d2 + mac.l %d6,%a3,>>,(%a3)&,%a7 + mac.l %d6,%a3,>>,(%a2)+,%d1 + mac.l %d6,%a3,>>,(%a2)+,%a3 + mac.l %d6,%a3,>>,(%a2)+,%d2 + mac.l %d6,%a3,>>,(%a2)+,%a7 + mac.l %d6,%a3,>>,(%a2)+&,%d1 + mac.l %d6,%a3,>>,(%a2)+&,%a3 + mac.l %d6,%a3,>>,(%a2)+&,%d2 + mac.l %d6,%a3,>>,(%a2)+&,%a7 + mac.l %d6,%a3,>>,10(%a6),%d1 + mac.l %d6,%a3,>>,10(%a6),%a3 + mac.l %d6,%a3,>>,10(%a6),%d2 + mac.l %d6,%a3,>>,10(%a6),%a7 + mac.l %d6,%a3,>>,10(%a6)&,%d1 + mac.l %d6,%a3,>>,10(%a6)&,%a3 + mac.l %d6,%a3,>>,10(%a6)&,%d2 + mac.l %d6,%a3,>>,10(%a6)&,%a7 + mac.l %d6,%a3,>>,-(%a1),%d1 + mac.l %d6,%a3,>>,-(%a1),%a3 + mac.l %d6,%a3,>>,-(%a1),%d2 + mac.l %d6,%a3,>>,-(%a1),%a7 + mac.l %d6,%a3,>>,-(%a1)&,%d1 + mac.l %d6,%a3,>>,-(%a1)&,%a3 + mac.l %d6,%a3,>>,-(%a1)&,%d2 + mac.l %d6,%a3,>>,-(%a1)&,%a7 + mac.l %d6,%a3,#1,(%a3),%d1 + mac.l %d6,%a3,#1,(%a3),%a3 + mac.l %d6,%a3,#1,(%a3),%d2 + mac.l %d6,%a3,#1,(%a3),%a7 + mac.l %d6,%a3,#1,(%a3)&,%d1 + mac.l %d6,%a3,#1,(%a3)&,%a3 + mac.l %d6,%a3,#1,(%a3)&,%d2 + mac.l %d6,%a3,#1,(%a3)&,%a7 + mac.l %d6,%a3,#1,(%a2)+,%d1 + mac.l %d6,%a3,#1,(%a2)+,%a3 + mac.l %d6,%a3,#1,(%a2)+,%d2 + mac.l %d6,%a3,#1,(%a2)+,%a7 + mac.l %d6,%a3,#1,(%a2)+&,%d1 + mac.l %d6,%a3,#1,(%a2)+&,%a3 + mac.l %d6,%a3,#1,(%a2)+&,%d2 + mac.l %d6,%a3,#1,(%a2)+&,%a7 + mac.l %d6,%a3,#1,10(%a6),%d1 + mac.l %d6,%a3,#1,10(%a6),%a3 + mac.l %d6,%a3,#1,10(%a6),%d2 + mac.l %d6,%a3,#1,10(%a6),%a7 + mac.l %d6,%a3,#1,10(%a6)&,%d1 + mac.l %d6,%a3,#1,10(%a6)&,%a3 + mac.l %d6,%a3,#1,10(%a6)&,%d2 + mac.l %d6,%a3,#1,10(%a6)&,%a7 + mac.l %d6,%a3,#1,-(%a1),%d1 + mac.l %d6,%a3,#1,-(%a1),%a3 + mac.l %d6,%a3,#1,-(%a1),%d2 + mac.l %d6,%a3,#1,-(%a1),%a7 + mac.l %d6,%a3,#1,-(%a1)&,%d1 + mac.l %d6,%a3,#1,-(%a1)&,%a3 + mac.l %d6,%a3,#1,-(%a1)&,%d2 + mac.l %d6,%a3,#1,-(%a1)&,%a7 + mac.l %d6,%a3,#-1,(%a3),%d1 + mac.l %d6,%a3,#-1,(%a3),%a3 + mac.l %d6,%a3,#-1,(%a3),%d2 + mac.l %d6,%a3,#-1,(%a3),%a7 + mac.l %d6,%a3,#-1,(%a3)&,%d1 + mac.l %d6,%a3,#-1,(%a3)&,%a3 + mac.l %d6,%a3,#-1,(%a3)&,%d2 + mac.l %d6,%a3,#-1,(%a3)&,%a7 + mac.l %d6,%a3,#-1,(%a2)+,%d1 + mac.l %d6,%a3,#-1,(%a2)+,%a3 + mac.l %d6,%a3,#-1,(%a2)+,%d2 + mac.l %d6,%a3,#-1,(%a2)+,%a7 + mac.l %d6,%a3,#-1,(%a2)+&,%d1 + mac.l %d6,%a3,#-1,(%a2)+&,%a3 + mac.l %d6,%a3,#-1,(%a2)+&,%d2 + mac.l %d6,%a3,#-1,(%a2)+&,%a7 + mac.l %d6,%a3,#-1,10(%a6),%d1 + mac.l %d6,%a3,#-1,10(%a6),%a3 + mac.l %d6,%a3,#-1,10(%a6),%d2 + mac.l %d6,%a3,#-1,10(%a6),%a7 + mac.l %d6,%a3,#-1,10(%a6)&,%d1 + mac.l %d6,%a3,#-1,10(%a6)&,%a3 + mac.l %d6,%a3,#-1,10(%a6)&,%d2 + mac.l %d6,%a3,#-1,10(%a6)&,%a7 + mac.l %d6,%a3,#-1,-(%a1),%d1 + mac.l %d6,%a3,#-1,-(%a1),%a3 + mac.l %d6,%a3,#-1,-(%a1),%d2 + mac.l %d6,%a3,#-1,-(%a1),%a7 + mac.l %d6,%a3,#-1,-(%a1)&,%d1 + mac.l %d6,%a3,#-1,-(%a1)&,%a3 + mac.l %d6,%a3,#-1,-(%a1)&,%d2 + mac.l %d6,%a3,#-1,-(%a1)&,%a7 + mac.l %d6,%d4,(%a3),%d1 + mac.l %d6,%d4,(%a3),%a3 + mac.l %d6,%d4,(%a3),%d2 + mac.l %d6,%d4,(%a3),%a7 + mac.l %d6,%d4,(%a3)&,%d1 + mac.l %d6,%d4,(%a3)&,%a3 + mac.l %d6,%d4,(%a3)&,%d2 + mac.l %d6,%d4,(%a3)&,%a7 + mac.l %d6,%d4,(%a2)+,%d1 + mac.l %d6,%d4,(%a2)+,%a3 + mac.l %d6,%d4,(%a2)+,%d2 + mac.l %d6,%d4,(%a2)+,%a7 + mac.l %d6,%d4,(%a2)+&,%d1 + mac.l %d6,%d4,(%a2)+&,%a3 + mac.l %d6,%d4,(%a2)+&,%d2 + mac.l %d6,%d4,(%a2)+&,%a7 + mac.l %d6,%d4,10(%a6),%d1 + mac.l %d6,%d4,10(%a6),%a3 + mac.l %d6,%d4,10(%a6),%d2 + mac.l %d6,%d4,10(%a6),%a7 + mac.l %d6,%d4,10(%a6)&,%d1 + mac.l %d6,%d4,10(%a6)&,%a3 + mac.l %d6,%d4,10(%a6)&,%d2 + mac.l %d6,%d4,10(%a6)&,%a7 + mac.l %d6,%d4,-(%a1),%d1 + mac.l %d6,%d4,-(%a1),%a3 + mac.l %d6,%d4,-(%a1),%d2 + mac.l %d6,%d4,-(%a1),%a7 + mac.l %d6,%d4,-(%a1)&,%d1 + mac.l %d6,%d4,-(%a1)&,%a3 + mac.l %d6,%d4,-(%a1)&,%d2 + mac.l %d6,%d4,-(%a1)&,%a7 + mac.l %d6,%d4,<<,(%a3),%d1 + mac.l %d6,%d4,<<,(%a3),%a3 + mac.l %d6,%d4,<<,(%a3),%d2 + mac.l %d6,%d4,<<,(%a3),%a7 + mac.l %d6,%d4,<<,(%a3)&,%d1 + mac.l %d6,%d4,<<,(%a3)&,%a3 + mac.l %d6,%d4,<<,(%a3)&,%d2 + mac.l %d6,%d4,<<,(%a3)&,%a7 + mac.l %d6,%d4,<<,(%a2)+,%d1 + mac.l %d6,%d4,<<,(%a2)+,%a3 + mac.l %d6,%d4,<<,(%a2)+,%d2 + mac.l %d6,%d4,<<,(%a2)+,%a7 + mac.l %d6,%d4,<<,(%a2)+&,%d1 + mac.l %d6,%d4,<<,(%a2)+&,%a3 + mac.l %d6,%d4,<<,(%a2)+&,%d2 + mac.l %d6,%d4,<<,(%a2)+&,%a7 + mac.l %d6,%d4,<<,10(%a6),%d1 + mac.l %d6,%d4,<<,10(%a6),%a3 + mac.l %d6,%d4,<<,10(%a6),%d2 + mac.l %d6,%d4,<<,10(%a6),%a7 + mac.l %d6,%d4,<<,10(%a6)&,%d1 + mac.l %d6,%d4,<<,10(%a6)&,%a3 + mac.l %d6,%d4,<<,10(%a6)&,%d2 + mac.l %d6,%d4,<<,10(%a6)&,%a7 + mac.l %d6,%d4,<<,-(%a1),%d1 + mac.l %d6,%d4,<<,-(%a1),%a3 + mac.l %d6,%d4,<<,-(%a1),%d2 + mac.l %d6,%d4,<<,-(%a1),%a7 + mac.l %d6,%d4,<<,-(%a1)&,%d1 + mac.l %d6,%d4,<<,-(%a1)&,%a3 + mac.l %d6,%d4,<<,-(%a1)&,%d2 + mac.l %d6,%d4,<<,-(%a1)&,%a7 + mac.l %d6,%d4,>>,(%a3),%d1 + mac.l %d6,%d4,>>,(%a3),%a3 + mac.l %d6,%d4,>>,(%a3),%d2 + mac.l %d6,%d4,>>,(%a3),%a7 + mac.l %d6,%d4,>>,(%a3)&,%d1 + mac.l %d6,%d4,>>,(%a3)&,%a3 + mac.l %d6,%d4,>>,(%a3)&,%d2 + mac.l %d6,%d4,>>,(%a3)&,%a7 + mac.l %d6,%d4,>>,(%a2)+,%d1 + mac.l %d6,%d4,>>,(%a2)+,%a3 + mac.l %d6,%d4,>>,(%a2)+,%d2 + mac.l %d6,%d4,>>,(%a2)+,%a7 + mac.l %d6,%d4,>>,(%a2)+&,%d1 + mac.l %d6,%d4,>>,(%a2)+&,%a3 + mac.l %d6,%d4,>>,(%a2)+&,%d2 + mac.l %d6,%d4,>>,(%a2)+&,%a7 + mac.l %d6,%d4,>>,10(%a6),%d1 + mac.l %d6,%d4,>>,10(%a6),%a3 + mac.l %d6,%d4,>>,10(%a6),%d2 + mac.l %d6,%d4,>>,10(%a6),%a7 + mac.l %d6,%d4,>>,10(%a6)&,%d1 + mac.l %d6,%d4,>>,10(%a6)&,%a3 + mac.l %d6,%d4,>>,10(%a6)&,%d2 + mac.l %d6,%d4,>>,10(%a6)&,%a7 + mac.l %d6,%d4,>>,-(%a1),%d1 + mac.l %d6,%d4,>>,-(%a1),%a3 + mac.l %d6,%d4,>>,-(%a1),%d2 + mac.l %d6,%d4,>>,-(%a1),%a7 + mac.l %d6,%d4,>>,-(%a1)&,%d1 + mac.l %d6,%d4,>>,-(%a1)&,%a3 + mac.l %d6,%d4,>>,-(%a1)&,%d2 + mac.l %d6,%d4,>>,-(%a1)&,%a7 + mac.l %d6,%d4,#1,(%a3),%d1 + mac.l %d6,%d4,#1,(%a3),%a3 + mac.l %d6,%d4,#1,(%a3),%d2 + mac.l %d6,%d4,#1,(%a3),%a7 + mac.l %d6,%d4,#1,(%a3)&,%d1 + mac.l %d6,%d4,#1,(%a3)&,%a3 + mac.l %d6,%d4,#1,(%a3)&,%d2 + mac.l %d6,%d4,#1,(%a3)&,%a7 + mac.l %d6,%d4,#1,(%a2)+,%d1 + mac.l %d6,%d4,#1,(%a2)+,%a3 + mac.l %d6,%d4,#1,(%a2)+,%d2 + mac.l %d6,%d4,#1,(%a2)+,%a7 + mac.l %d6,%d4,#1,(%a2)+&,%d1 + mac.l %d6,%d4,#1,(%a2)+&,%a3 + mac.l %d6,%d4,#1,(%a2)+&,%d2 + mac.l %d6,%d4,#1,(%a2)+&,%a7 + mac.l %d6,%d4,#1,10(%a6),%d1 + mac.l %d6,%d4,#1,10(%a6),%a3 + mac.l %d6,%d4,#1,10(%a6),%d2 + mac.l %d6,%d4,#1,10(%a6),%a7 + mac.l %d6,%d4,#1,10(%a6)&,%d1 + mac.l %d6,%d4,#1,10(%a6)&,%a3 + mac.l %d6,%d4,#1,10(%a6)&,%d2 + mac.l %d6,%d4,#1,10(%a6)&,%a7 + mac.l %d6,%d4,#1,-(%a1),%d1 + mac.l %d6,%d4,#1,-(%a1),%a3 + mac.l %d6,%d4,#1,-(%a1),%d2 + mac.l %d6,%d4,#1,-(%a1),%a7 + mac.l %d6,%d4,#1,-(%a1)&,%d1 + mac.l %d6,%d4,#1,-(%a1)&,%a3 + mac.l %d6,%d4,#1,-(%a1)&,%d2 + mac.l %d6,%d4,#1,-(%a1)&,%a7 + mac.l %d6,%d4,#-1,(%a3),%d1 + mac.l %d6,%d4,#-1,(%a3),%a3 + mac.l %d6,%d4,#-1,(%a3),%d2 + mac.l %d6,%d4,#-1,(%a3),%a7 + mac.l %d6,%d4,#-1,(%a3)&,%d1 + mac.l %d6,%d4,#-1,(%a3)&,%a3 + mac.l %d6,%d4,#-1,(%a3)&,%d2 + mac.l %d6,%d4,#-1,(%a3)&,%a7 + mac.l %d6,%d4,#-1,(%a2)+,%d1 + mac.l %d6,%d4,#-1,(%a2)+,%a3 + mac.l %d6,%d4,#-1,(%a2)+,%d2 + mac.l %d6,%d4,#-1,(%a2)+,%a7 + mac.l %d6,%d4,#-1,(%a2)+&,%d1 + mac.l %d6,%d4,#-1,(%a2)+&,%a3 + mac.l %d6,%d4,#-1,(%a2)+&,%d2 + mac.l %d6,%d4,#-1,(%a2)+&,%a7 + mac.l %d6,%d4,#-1,10(%a6),%d1 + mac.l %d6,%d4,#-1,10(%a6),%a3 + mac.l %d6,%d4,#-1,10(%a6),%d2 + mac.l %d6,%d4,#-1,10(%a6),%a7 + mac.l %d6,%d4,#-1,10(%a6)&,%d1 + mac.l %d6,%d4,#-1,10(%a6)&,%a3 + mac.l %d6,%d4,#-1,10(%a6)&,%d2 + mac.l %d6,%d4,#-1,10(%a6)&,%a7 + mac.l %d6,%d4,#-1,-(%a1),%d1 + mac.l %d6,%d4,#-1,-(%a1),%a3 + mac.l %d6,%d4,#-1,-(%a1),%d2 + mac.l %d6,%d4,#-1,-(%a1),%a7 + mac.l %d6,%d4,#-1,-(%a1)&,%d1 + mac.l %d6,%d4,#-1,-(%a1)&,%a3 + mac.l %d6,%d4,#-1,-(%a1)&,%d2 + mac.l %d6,%d4,#-1,-(%a1)&,%a7 diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/elempic.d binutils-2.15.91.0.1/gas/testsuite/gas/mips/elempic.d --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/elempic.d 2004-04-14 21:26:05.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/elempic.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,154 +0,0 @@ -#objdump: -rst -mmips:4000 -#name: MIPS empic -#as: -mabi=o64 -membedded-pic -mips3 -#source: empic.s -#stderr: empic.l - -# Check GNU-specific embedded relocs, for ELF. - -.*: +file format elf.*mips.* - -SYMBOL TABLE: -0+0000000 l d \.text 0+0000000 (|\.text) -0+0000000 l d \.data 0+0000000 (|\.data) -0+0000000 l d \.bss 0+0000000 (|\.bss) -0+0000000 l d \.foo 0+0000000 (|\.foo) -0+0000000 l d \.reginfo 0+0000000 (|\.reginfo) -0+0000000 l d \.(mdebug|pdr) 0+0000000 (|\.mdebug|\.pdr) -0+0000004 l \.text 0+0000000 l2 -0+0000000 \*UND\* 0+0000000 g1 -0+0000000 \*UND\* 0+0000000 g2 -0+0000100 l \.foo 0+0000000 l1 -0+0000034 l \.text 0+0000000 l3 -0+0000098 l \.text 0+0000000 l5 -0+0000004 l \.foo 0+0000000 l4 - - -RELOCATION RECORDS FOR \[\.text\]: -OFFSET [ ]+ TYPE VALUE -0+0000004 R_MIPS_GNU_REL16_S2 g1 -0+000000c R_MIPS_GNU_REL16_S2 g2 -0+0000014 R_MIPS_GNU_REL16_S2 g2 -0+000001c R_MIPS_GNU_REL16_S2 \.foo -0+0000024 R_MIPS_GNU_REL16_S2 \.text -0+000002c R_MIPS_GNU_REL16_S2 \.foo -0+0000034 R_MIPS_GNU_REL16_S2 \.text -0+000003c R_MIPS_GNU_REL_HI16 g1 -0+0000040 R_MIPS_GNU_REL_LO16 g1 -0+0000044 R_MIPS_GNU_REL_HI16 \.foo -0+0000048 R_MIPS_GNU_REL_LO16 \.foo -0+0000050 R_MIPS_32 g1 -0+0000054 R_MIPS_32 \.foo -0+0000058 R_MIPS_32 \.text -0+000005c R_MIPS_PC32 g1 -0+0000060 R_MIPS_PC32 \.foo -0+0000068 R_MIPS_64 g1 -0+0000070 R_MIPS_64 \.foo -0+0000078 R_MIPS_64 \.text -0+0000080 R_MIPS_PC64 g1 -0+0000088 R_MIPS_PC64 \.foo -0+0000098 R_MIPS_GNU_REL16_S2 \.text -0+000009c R_MIPS_GNU_REL16_S2 \.text -0+00000a0 R_MIPS_GNU_REL_HI16 \.text -0+00000a4 R_MIPS_GNU_REL_LO16 \.text -0+00000a8 R_MIPS_GNU_REL_HI16 \.text -0+00000ac R_MIPS_GNU_REL_LO16 \.text -0+00000b0 R_MIPS_32 \.text -0+00000b8 R_MIPS_64 \.text -0+00000cc R_MIPS_GNU_REL16_S2 \.text -0+00000d0 R_MIPS_GNU_REL16_S2 \.text -0+00000d4 R_MIPS_GNU_REL_HI16 \.text -0+00000d8 R_MIPS_GNU_REL_LO16 \.text -0+00000dc R_MIPS_GNU_REL_HI16 \.text -0+00000e0 R_MIPS_GNU_REL_LO16 \.text -0+00000e4 R_MIPS_32 \.text -0+00000f0 R_MIPS_64 \.text - - -RELOCATION RECORDS FOR \[\.foo\]: -OFFSET [ ]+ TYPE VALUE -0+0000004 R_MIPS_GNU_REL_HI16 g1 -0+0000008 R_MIPS_GNU_REL_LO16 g1 -0+000000c R_MIPS_GNU_REL_HI16 \.foo -0+0000010 R_MIPS_GNU_REL_LO16 \.foo -0+0000014 R_MIPS_GNU_REL_HI16 \.text -0+0000018 R_MIPS_GNU_REL_LO16 \.text -0+000001c R_MIPS_GNU_REL_HI16 g1 -0+0000020 R_MIPS_GNU_REL_LO16 g1 -0+0000024 R_MIPS_GNU_REL_HI16 g1 -0+0000028 R_MIPS_GNU_REL_LO16 g1 -0+000002c R_MIPS_GNU_REL_HI16 \.foo -0+0000030 R_MIPS_GNU_REL_LO16 \.foo -0+0000034 R_MIPS_GNU_REL_HI16 \.text -0+0000038 R_MIPS_GNU_REL_LO16 \.text -0+000003c R_MIPS_32 g1 -0+0000040 R_MIPS_32 \.foo -0+0000044 R_MIPS_32 \.text -0+0000048 R_MIPS_PC32 g1 -0+0000050 R_MIPS_PC32 \.text -0+0000058 R_MIPS_64 g1 -0+0000060 R_MIPS_64 \.foo -0+0000068 R_MIPS_64 \.text -0+0000070 R_MIPS_PC64 g1 -0+0000080 R_MIPS_PC64 \.text -0+0000088 R_MIPS_GNU_REL_HI16 g1 -0+000008c R_MIPS_GNU_REL_LO16 g1 -0+0000090 R_MIPS_GNU_REL_HI16 \.foo -0+0000094 R_MIPS_GNU_REL_LO16 \.foo -0+0000098 R_MIPS_GNU_REL_HI16 \.text -0+000009c R_MIPS_GNU_REL_LO16 \.text -0+00000a0 R_MIPS_GNU_REL_HI16 g1 -0+00000a4 R_MIPS_GNU_REL_LO16 g1 -0+00000a8 R_MIPS_GNU_REL_HI16 \.foo -0+00000ac R_MIPS_GNU_REL_LO16 \.foo -0+00000b0 R_MIPS_GNU_REL_HI16 \.text -0+00000b4 R_MIPS_GNU_REL_LO16 \.text -0+00000b8 R_MIPS_32 g1 -0+00000bc R_MIPS_32 \.foo -0+00000c0 R_MIPS_32 \.text -0+00000c4 R_MIPS_PC32 g1 -0+00000cc R_MIPS_PC32 \.text -0+00000d0 R_MIPS_64 g1 -0+00000d8 R_MIPS_64 \.foo -0+00000e0 R_MIPS_64 \.text -0+00000e8 R_MIPS_PC64 g1 -0+00000f8 R_MIPS_PC64 \.text - -Contents of section \.text: - 0000 00000000 ffff1104 00000000 ffff0010 .* - 0010 00000000 ffff0010 00000000 3f001104 .* - 0020 00000000 00001104 00000000 41000010 .* - 0030 00000000 00000010 00000000 0000033c .* - 0040 0c0063[26]4 0000033c 140163[26]4 d0ff03[26]4 .* - 0050 00000000 00010000 04000000 28000000 .* - 0060 2c010000 d0ffffff 00000000 00000000 .* - 0070 00010000 00000000 04000000 00000000 .* - 0080 4c000000 00000000 54010000 00000000 .* - 0090 d0ffffff ffffffff 32000010 33000010 .* - 00a0 0000033c d80063[26]4 0000033c e80063[26]4 .* - 00b0 cc000000 34000000 cc000000 00000000 .* - 00c0 34000000 00000000 00000000 32000010 .* - 00d0 33000010 0000033c 0c0163[26]4 0000033c .* - 00e0 1c0163[26]4 cc000000 34000000 00000000 .* - 00f0 cc000000 00000000 34000000 00000000 .* -Contents of section \.reginfo: - 0000 08000080 00000000 00000000 00000000 .* - 0010 00000000 00000000 .* -Contents of section \.foo: - 0000 00000000 0000033c 040063[26]4 0000033c .* - 0010 0c0163[26]4 0000033c 180063[26]4 0000033c .* - 0020 1c0063[26]4 0000033c 240063[26]4 0000033c .* - 0030 2c0163[26]4 0000033c 380063[26]4 00000000 .* - 0040 00010000 04000000 44000000 fc000000 .* - 0050 50000000 00000000 00000000 00000000 .* - 0060 00010000 00000000 04000000 00000000 .* - 0070 6c000000 00000000 fc000000 00000000 .* - 0080 80000000 00000000 0000033c 8c0063[26]4 .* - 0090 0000033c 940163[26]4 0000033c a00063[26]4 .* - 00a0 0000033c a40063[26]4 0000033c ac0163[26]4 .* - 00b0 0000033c b80063[26]4 04000000 04010000 .* - 00c0 08000000 c4000000 00010000 d0000000 .* - 00d0 04000000 00000000 04010000 00000000 .* - 00e0 08000000 00000000 e8000000 00000000 .* - 00f0 00010000 00000000 fc000000 00000000 .* - 0100 00000000 00000000 00000000 00000000 .* diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/empic.d binutils-2.15.91.0.1/gas/testsuite/gas/mips/empic.d --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/empic.d 2004-04-14 21:26:05.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/empic.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,154 +0,0 @@ -#objdump: -rst -mmips:4000 -#name: MIPS empic -#as: -mabi=o64 -membedded-pic -mips3 -#stderr: empic.l - -# Check GNU-specific embedded relocs, for ELF. - -.*: +file format elf.*mips.* - -SYMBOL TABLE: -0+0000000 l d \.text 0+0000000 (|\.text) -0+0000000 l d \.data 0+0000000 (|\.data) -0+0000000 l d \.bss 0+0000000 (|\.bss) -0+0000000 l d \.foo 0+0000000 (|\.foo) -0+0000000 l d \.reginfo 0+0000000 (|\.reginfo) -0+0000000 l d \.(mdebug|pdr) 0+0000000 (|\.mdebug|\.pdr) -0+0000004 l \.text 0+0000000 l2 -0+0000000 \*UND\* 0+0000000 g1 -0+0000000 \*UND\* 0+0000000 g2 -0+0000100 l \.foo 0+0000000 l1 -0+0000034 l \.text 0+0000000 l3 -0+0000098 l \.text 0+0000000 l5 -0+0000004 l \.foo 0+0000000 l4 - - -RELOCATION RECORDS FOR \[\.text\]: -OFFSET [ ]+ TYPE VALUE -0+0000004 R_MIPS_GNU_REL16_S2 g1 -0+000000c R_MIPS_GNU_REL16_S2 g2 -0+0000014 R_MIPS_GNU_REL16_S2 g2 -0+000001c R_MIPS_GNU_REL16_S2 \.foo -0+0000024 R_MIPS_GNU_REL16_S2 \.text -0+000002c R_MIPS_GNU_REL16_S2 \.foo -0+0000034 R_MIPS_GNU_REL16_S2 \.text -0+000003c R_MIPS_GNU_REL_HI16 g1 -0+0000040 R_MIPS_GNU_REL_LO16 g1 -0+0000044 R_MIPS_GNU_REL_HI16 \.foo -0+0000048 R_MIPS_GNU_REL_LO16 \.foo -0+0000050 R_MIPS_32 g1 -0+0000054 R_MIPS_32 \.foo -0+0000058 R_MIPS_32 \.text -0+000005c R_MIPS_PC32 g1 -0+0000060 R_MIPS_PC32 \.foo -0+0000068 R_MIPS_64 g1 -0+0000070 R_MIPS_64 \.foo -0+0000078 R_MIPS_64 \.text -0+0000080 R_MIPS_PC64 g1 -0+0000088 R_MIPS_PC64 \.foo -0+0000098 R_MIPS_GNU_REL16_S2 \.text -0+000009c R_MIPS_GNU_REL16_S2 \.text -0+00000a0 R_MIPS_GNU_REL_HI16 \.text -0+00000a4 R_MIPS_GNU_REL_LO16 \.text -0+00000a8 R_MIPS_GNU_REL_HI16 \.text -0+00000ac R_MIPS_GNU_REL_LO16 \.text -0+00000b0 R_MIPS_32 \.text -0+00000b8 R_MIPS_64 \.text -0+00000cc R_MIPS_GNU_REL16_S2 \.text -0+00000d0 R_MIPS_GNU_REL16_S2 \.text -0+00000d4 R_MIPS_GNU_REL_HI16 \.text -0+00000d8 R_MIPS_GNU_REL_LO16 \.text -0+00000dc R_MIPS_GNU_REL_HI16 \.text -0+00000e0 R_MIPS_GNU_REL_LO16 \.text -0+00000e4 R_MIPS_32 \.text -0+00000f0 R_MIPS_64 \.text - - -RELOCATION RECORDS FOR \[\.foo\]: -OFFSET [ ]+ TYPE VALUE -0+0000004 R_MIPS_GNU_REL_HI16 g1 -0+0000008 R_MIPS_GNU_REL_LO16 g1 -0+000000c R_MIPS_GNU_REL_HI16 \.foo -0+0000010 R_MIPS_GNU_REL_LO16 \.foo -0+0000014 R_MIPS_GNU_REL_HI16 \.text -0+0000018 R_MIPS_GNU_REL_LO16 \.text -0+000001c R_MIPS_GNU_REL_HI16 g1 -0+0000020 R_MIPS_GNU_REL_LO16 g1 -0+0000024 R_MIPS_GNU_REL_HI16 g1 -0+0000028 R_MIPS_GNU_REL_LO16 g1 -0+000002c R_MIPS_GNU_REL_HI16 \.foo -0+0000030 R_MIPS_GNU_REL_LO16 \.foo -0+0000034 R_MIPS_GNU_REL_HI16 \.text -0+0000038 R_MIPS_GNU_REL_LO16 \.text -0+000003c R_MIPS_32 g1 -0+0000040 R_MIPS_32 \.foo -0+0000044 R_MIPS_32 \.text -0+0000048 R_MIPS_PC32 g1 -0+0000050 R_MIPS_PC32 \.text -0+0000058 R_MIPS_64 g1 -0+0000060 R_MIPS_64 \.foo -0+0000068 R_MIPS_64 \.text -0+0000070 R_MIPS_PC64 g1 -0+0000080 R_MIPS_PC64 \.text -0+0000088 R_MIPS_GNU_REL_HI16 g1 -0+000008c R_MIPS_GNU_REL_LO16 g1 -0+0000090 R_MIPS_GNU_REL_HI16 \.foo -0+0000094 R_MIPS_GNU_REL_LO16 \.foo -0+0000098 R_MIPS_GNU_REL_HI16 \.text -0+000009c R_MIPS_GNU_REL_LO16 \.text -0+00000a0 R_MIPS_GNU_REL_HI16 g1 -0+00000a4 R_MIPS_GNU_REL_LO16 g1 -0+00000a8 R_MIPS_GNU_REL_HI16 \.foo -0+00000ac R_MIPS_GNU_REL_LO16 \.foo -0+00000b0 R_MIPS_GNU_REL_HI16 \.text -0+00000b4 R_MIPS_GNU_REL_LO16 \.text -0+00000b8 R_MIPS_32 g1 -0+00000bc R_MIPS_32 \.foo -0+00000c0 R_MIPS_32 \.text -0+00000c4 R_MIPS_PC32 g1 -0+00000cc R_MIPS_PC32 \.text -0+00000d0 R_MIPS_64 g1 -0+00000d8 R_MIPS_64 \.foo -0+00000e0 R_MIPS_64 \.text -0+00000e8 R_MIPS_PC64 g1 -0+00000f8 R_MIPS_PC64 \.text - -Contents of section \.text: - 0000 00000000 0411ffff 00000000 1000ffff .* - 0010 00000000 1000ffff 00000000 0411003f .* - 0020 00000000 04110000 00000000 10000041 .* - 0030 00000000 10000000 00000000 3c030000 .* - 0040 [26]463000c 3c030000 [26]4630114 [26]403ffd0 .* - 0050 00000000 00000100 00000004 00000028 .* - 0060 0000012c ffffffd0 00000000 00000000 .* - 0070 00000000 00000100 00000000 00000004 .* - 0080 00000000 0000004c 00000000 00000154 .* - 0090 ffffffff ffffffd0 10000032 10000033 .* - 00a0 3c030000 [26]46300d8 3c030000 [26]46300e8 .* - 00b0 000000cc 00000034 00000000 000000cc .* - 00c0 00000000 00000034 00000000 10000032 .* - 00d0 10000033 3c030000 [26]463010c 3c030000 .* - 00e0 [26]463011c 000000cc 00000034 00000000 .* - 00f0 00000000 000000cc 00000000 00000034 .* -Contents of section \.reginfo: - 0000 80000008 00000000 00000000 00000000 .* - 0010 00000000 00000000 .* -Contents of section \.foo: - 0000 00000000 3c030000 [26]4630004 3c030000 .* - 0010 [26]463010c 3c030000 [26]4630018 3c030000 .* - 0020 [26]463001c 3c030000 [26]4630024 3c030000 .* - 0030 [26]463012c 3c030000 [26]4630038 00000000 .* - 0040 00000100 00000004 00000044 000000fc .* - 0050 00000050 00000000 00000000 00000000 .* - 0060 00000000 00000100 00000000 00000004 .* - 0070 00000000 0000006c 00000000 000000fc .* - 0080 00000000 00000080 3c030000 [26]463008c .* - 0090 3c030000 [26]4630194 3c030000 [26]46300a0 .* - 00a0 3c030000 [26]46300a4 3c030000 [26]46301ac .* - 00b0 3c030000 [26]46300b8 00000004 00000104 .* - 00c0 00000008 000000c4 00000100 000000d0 .* - 00d0 00000000 00000004 00000000 00000104 .* - 00e0 00000000 00000008 00000000 000000e8 .* - 00f0 00000000 00000100 00000000 000000fc .* - 0100 00000000 00000000 00000000 00000000 .* - diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/empic.l binutils-2.15.91.0.1/gas/testsuite/gas/mips/empic.l --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/empic.l 2002-04-22 19:56:51.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/empic.l 1969-12-31 16:00:00.000000000 -0800 @@ -1,3 +0,0 @@ -.*: Assembler messages: -.*:42: Warning: Macro instruction expanded into multiple instructions in a branch delay slot -.*:56: Warning: Macro instruction expanded into multiple instructions in a branch delay slot diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/empic.s binutils-2.15.91.0.1/gas/testsuite/gas/mips/empic.s --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/empic.s 2001-11-16 14:05:52.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/empic.s 1969-12-31 16:00:00.000000000 -0800 @@ -1,119 +0,0 @@ -# Check GNU-specific embedded relocs, for ELF. - - .text - .set noreorder - nop -l2: jal g1 # R_MIPS_GNU_REL16_S2 g1 -1 - nop - b g2 # R_MIPS_GNU_REL16_S2 g2 -1 - nop - b g2 # R_MIPS_GNU_REL16_S2 g2 -1 - nop - jal l1 # R_MIPS_GNU_REL16_S2 .foo 3F - nop - jal l2 # R_MIPS_GNU_REL16_S2 .text 0 or -9 - nop - b l1+8 # R_MIPS_GNU_REL16_S2 .foo 41 - nop -l3: - b l2 # R_MIPS_GNU_REL16_S2 .text 0 or -D - nop - la $3,g1-l3 # R_MIPS_GNU_REL_HI16 g1 0 - # R_MIPS_GNU_REL_LO16 g1 C - la $3,l1-l3 # R_MIPS_GNU_REL_HI16 .foo 0 - # R_MIPS_GNU_REL_LO16 .foo 114 - la $3,l2-l3 # -30 - .word g1 # R_MIPS_32 g1 0 - .word l1 # R_MIPS_32 .foo 100 - .word l2 # R_MIPS_32 .text 4 - .word g1-l3 # R_MIPS_PC32 g1 28 - .word l1-l3 # R_MIPS_PC32 .foo 12C - .word l2-l3 # -30 - .align 3 - .dword g1 # R_MIPS_64 g1 0 - .dword l1 # R_MIPS_64 .foo 100 - .dword l2 # R_MIPS_64 .text 4 - .dword g1-l3 # R_MIPS_PC64 g1 4C - .dword l1-l3 # R_MIPS_PC64 .foo 154 - .dword l2-l3 # -30 -l5: - b 2f # R_MIPS_GNU_REL16_S2 .text 32 - b 2f+4 # R_MIPS_GNU_REL16_S2 .text 33 - la $3,2f-l5 # R_MIPS_GNU_REL_HI16 .text 0 - # R_MIPS_GNU_REL_LO16 .text D8 - la $3,2f+8-l5 # R_MIPS_GNU_REL_HI16 .text 0 - # R_MIPS_GNU_REL_LO16 .text E8 - - - .word 2f # R_MIPS_32 .text CC - .word 2f-l5 # R_MIPS_PC32 .text EC or 34 - .dword 2f # R_MIPS_64 .text CC - .dword 2f-l5 # R_MIPS_PC64 .text F8 or 34 - nop -2: # at address 0xCC. - b 2b # R_MIPS_GNU_REL16_S2 .text 32 - b 2b+4 # R_MIPS_GNU_REL16_S2 .text 33 - la $3,2b-l5 # R_MIPS_GNU_REL_HI16 .text 0 - # R_MIPS_GNU_REL_LO16 .text 10C - la $3,2b+8-l5 # R_MIPS_GNU_REL_HI16 .text 0 - # R_MIPS_GNU_REL_LO16 .text 11C - .word 2b # R_MIPS_32 .text CC - .word 2b-l5 # R_MIPS_PC32 .text 11C or 34 - nop - .dword 2b # R_MIPS_64 .text CC - .dword 2b-l5 # R_MIPS_PC64 .text 98 or 34 - -# align section end to 16-byte boundary for easier testing on multiple targets - .p2align 4 - - .section ".foo","ax",@progbits - nop -l4: - la $3,g1-l4 - la $3,l1-l4 - la $3,l2-l4 - la $3,g1-l4 - - dla $3,g1-l4 - dla $3,l1-l4 - dla $3,l2-l4 - - .word g1 - .word l1 - .word l2 - .word g1-l4 - .word l1-l4 - .word l2-l4 - .dword g1 - .dword l1 - .dword l2 - .dword g1-l4 - .dword l1-l4 - .dword l2-l4 - - la $3,g1-l4+4 - la $3,l1-l4+4 - la $3,l2-l4+4 - - dla $3,g1-l4+4 - dla $3,l1-l4+4 - dla $3,l2-l4+4 - - .word g1+4 - .word l1+4 - .word l2+4 - .word g1-l4+4 - .word l1-l4+4 - .word l2-l4+4 - .dword g1+4 - .dword l1+4 - .dword l2+4 - .dword g1-l4+4 - .dword l1-l4+4 - .dword l2-l4+4 -l1: - - nop - -# align section end to 16-byte boundary for easier testing on multiple targets - .p2align 4 diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/empic2.d binutils-2.15.91.0.1/gas/testsuite/gas/mips/empic2.d --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/empic2.d 2003-05-15 13:42:25.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/empic2.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,279 +0,0 @@ -#objdump: --prefix-addresses -dr --show-raw-insn -mmips:4000 -#name: MIPS empic2 -#as: -mabi=o64 -membedded-pic -mips3 - -# Check assembly of and relocs for -membedded-pic la, lw, ld, sw, sd macros. - -.*: +file format elf.*mips.* - -Disassembly of section .text: -0+000000 <[^>]*> 00000000 nop - ... - ... -0+01000c <[^>]*> 3c020000 lui v0,0x0 -[ ]*1000c: R_MIPS_GNU_REL_HI16 .text -0+010010 <[^>]*> 0044102d daddu v0,v0,a0 -0+010014 <[^>]*> 6442000c daddiu v0,v0,12 -[ ]*10014: R_MIPS_GNU_REL_LO16 .text -0+010018 <[^>]*> 3c020000 lui v0,0x0 -[ ]*10018: R_MIPS_GNU_REL_HI16 .text -0+01001c <[^>]*> 0044102d daddu v0,v0,a0 -0+010020 <[^>]*> 64420018 daddiu v0,v0,24 -[ ]*10020: R_MIPS_GNU_REL_LO16 .text -0+010024 <[^>]*> 3c020001 lui v0,0x1 -[ ]*10024: R_MIPS_GNU_REL_HI16 .text -0+010028 <[^>]*> 0044102d daddu v0,v0,a0 -0+01002c <[^>]*> 64428028 daddiu v0,v0,-32728 -[ ]*1002c: R_MIPS_GNU_REL_LO16 .text -0+010030 <[^>]*> 3c020001 lui v0,0x1 -[ ]*10030: R_MIPS_GNU_REL_HI16 .text -0+010034 <[^>]*> 0044102d daddu v0,v0,a0 -0+010038 <[^>]*> 64428034 daddiu v0,v0,-32716 -[ ]*10038: R_MIPS_GNU_REL_LO16 .text -0+01003c <[^>]*> 3c020001 lui v0,0x1 -[ ]*1003c: R_MIPS_GNU_REL_HI16 .text -0+010040 <[^>]*> 0044102d daddu v0,v0,a0 -0+010044 <[^>]*> 644202ac daddiu v0,v0,684 -[ ]*10044: R_MIPS_GNU_REL_LO16 .text -0+010048 <[^>]*> 3c020001 lui v0,0x1 -[ ]*10048: R_MIPS_GNU_REL_HI16 .text -0+01004c <[^>]*> 0044102d daddu v0,v0,a0 -0+010050 <[^>]*> 644202b8 daddiu v0,v0,696 -[ ]*10050: R_MIPS_GNU_REL_LO16 .text -0+010054 <[^>]*> 3c020000 lui v0,0x0 -[ ]*10054: R_MIPS_GNU_REL_HI16 e -0+010058 <[^>]*> 0044102d daddu v0,v0,a0 -0+01005c <[^>]*> 64420050 daddiu v0,v0,80 -[ ]*1005c: R_MIPS_GNU_REL_LO16 e -0+010060 <[^>]*> 3c020000 lui v0,0x0 -[ ]*10060: R_MIPS_GNU_REL_HI16 .text -0+010064 <[^>]*> 0044102d daddu v0,v0,a0 -0+010068 <[^>]*> 64420060 daddiu v0,v0,96 -[ ]*10068: R_MIPS_GNU_REL_LO16 .text -0+01006c <[^>]*> 3c020000 lui v0,0x0 -[ ]*1006c: R_MIPS_GNU_REL_HI16 .text -0+010070 <[^>]*> 0044102d daddu v0,v0,a0 -0+010074 <[^>]*> 6442006c daddiu v0,v0,108 -[ ]*10074: R_MIPS_GNU_REL_LO16 .text -0+010078 <[^>]*> 3c020001 lui v0,0x1 -[ ]*10078: R_MIPS_GNU_REL_HI16 .text -0+01007c <[^>]*> 0044102d daddu v0,v0,a0 -0+010080 <[^>]*> 6442807c daddiu v0,v0,-32644 -[ ]*10080: R_MIPS_GNU_REL_LO16 .text -0+010084 <[^>]*> 3c020001 lui v0,0x1 -[ ]*10084: R_MIPS_GNU_REL_HI16 .text -0+010088 <[^>]*> 0044102d daddu v0,v0,a0 -0+01008c <[^>]*> 64428088 daddiu v0,v0,-32632 -[ ]*1008c: R_MIPS_GNU_REL_LO16 .text -0+010090 <[^>]*> 3c020001 lui v0,0x1 -[ ]*10090: R_MIPS_GNU_REL_HI16 .text -0+010094 <[^>]*> 0044102d daddu v0,v0,a0 -0+010098 <[^>]*> 64420300 daddiu v0,v0,768 -[ ]*10098: R_MIPS_GNU_REL_LO16 .text -0+01009c <[^>]*> 3c020001 lui v0,0x1 -[ ]*1009c: R_MIPS_GNU_REL_HI16 .text -0+0100a0 <[^>]*> 0044102d daddu v0,v0,a0 -0+0100a4 <[^>]*> 6442030c daddiu v0,v0,780 -[ ]*100a4: R_MIPS_GNU_REL_LO16 .text -0+0100a8 <[^>]*> 3c020000 lui v0,0x0 -[ ]*100a8: R_MIPS_GNU_REL_HI16 e -0+0100ac <[^>]*> 0044102d daddu v0,v0,a0 -0+0100b0 <[^>]*> 644200a4 daddiu v0,v0,164 -[ ]*100b0: R_MIPS_GNU_REL_LO16 e -0+0100b4 <[^>]*> 3c020000 lui v0,0x0 -[ ]*100b4: R_MIPS_GNU_REL_HI16 .text -0+0100b8 <[^>]*> 644200b0 daddiu v0,v0,176 -[ ]*100b8: R_MIPS_GNU_REL_LO16 .text -0+0100bc <[^>]*> 3c020000 lui v0,0x0 -[ ]*100bc: R_MIPS_GNU_REL_HI16 .text -0+0100c0 <[^>]*> 644200b8 daddiu v0,v0,184 -[ ]*100c0: R_MIPS_GNU_REL_LO16 .text -0+0100c4 <[^>]*> 3c020001 lui v0,0x1 -[ ]*100c4: R_MIPS_GNU_REL_HI16 .text -0+0100c8 <[^>]*> 644280c4 daddiu v0,v0,-32572 -[ ]*100c8: R_MIPS_GNU_REL_LO16 .text -0+0100cc <[^>]*> 3c020001 lui v0,0x1 -[ ]*100cc: R_MIPS_GNU_REL_HI16 .text -0+0100d0 <[^>]*> 644280cc daddiu v0,v0,-32564 -[ ]*100d0: R_MIPS_GNU_REL_LO16 .text -0+0100d4 <[^>]*> 3c020001 lui v0,0x1 -[ ]*100d4: R_MIPS_GNU_REL_HI16 .text -0+0100d8 <[^>]*> 64420340 daddiu v0,v0,832 -[ ]*100d8: R_MIPS_GNU_REL_LO16 .text -0+0100dc <[^>]*> 3c020001 lui v0,0x1 -[ ]*100dc: R_MIPS_GNU_REL_HI16 .text -0+0100e0 <[^>]*> 64420348 daddiu v0,v0,840 -[ ]*100e0: R_MIPS_GNU_REL_LO16 .text -0+0100e4 <[^>]*> 3c020000 lui v0,0x0 -[ ]*100e4: R_MIPS_GNU_REL_HI16 e -0+0100e8 <[^>]*> 644200dc daddiu v0,v0,220 -[ ]*100e8: R_MIPS_GNU_REL_LO16 e -0+0100ec <[^>]*> 3c020000 lui v0,0x0 -[ ]*100ec: R_MIPS_GNU_REL_HI16 .text -0+0100f0 <[^>]*> 644200e8 daddiu v0,v0,232 -[ ]*100f0: R_MIPS_GNU_REL_LO16 .text -0+0100f4 <[^>]*> 3c020000 lui v0,0x0 -[ ]*100f4: R_MIPS_GNU_REL_HI16 .text -0+0100f8 <[^>]*> 644200f0 daddiu v0,v0,240 -[ ]*100f8: R_MIPS_GNU_REL_LO16 .text -0+0100fc <[^>]*> 3c020001 lui v0,0x1 -[ ]*100fc: R_MIPS_GNU_REL_HI16 .text -0+010100 <[^>]*> 644280fc daddiu v0,v0,-32516 -[ ]*10100: R_MIPS_GNU_REL_LO16 .text -0+010104 <[^>]*> 3c020001 lui v0,0x1 -[ ]*10104: R_MIPS_GNU_REL_HI16 .text -0+010108 <[^>]*> 64428104 daddiu v0,v0,-32508 -[ ]*10108: R_MIPS_GNU_REL_LO16 .text -0+01010c <[^>]*> 3c020001 lui v0,0x1 -[ ]*1010c: R_MIPS_GNU_REL_HI16 .text -0+010110 <[^>]*> 64420378 daddiu v0,v0,888 -[ ]*10110: R_MIPS_GNU_REL_LO16 .text -0+010114 <[^>]*> 3c020001 lui v0,0x1 -[ ]*10114: R_MIPS_GNU_REL_HI16 .text -0+010118 <[^>]*> 64420380 daddiu v0,v0,896 -[ ]*10118: R_MIPS_GNU_REL_LO16 .text -0+01011c <[^>]*> 3c020000 lui v0,0x0 -[ ]*1011c: R_MIPS_GNU_REL_HI16 e -0+010120 <[^>]*> 64420114 daddiu v0,v0,276 -[ ]*10120: R_MIPS_GNU_REL_LO16 e -0+010124 <[^>]*> 3c020000 lui v0,0x0 -[ ]*10124: R_MIPS_GNU_REL_HI16 .text -0+010128 <[^>]*> 0044102d daddu v0,v0,a0 -0+01012c <[^>]*> 8c420124 lw v0,292\(v0\) -[ ]*1012c: R_MIPS_GNU_REL_LO16 .text -0+010130 <[^>]*> 3c020000 lui v0,0x0 -[ ]*10130: R_MIPS_GNU_REL_HI16 .text -0+010134 <[^>]*> 0044102d daddu v0,v0,a0 -0+010138 <[^>]*> 8c420130 lw v0,304\(v0\) -[ ]*10138: R_MIPS_GNU_REL_LO16 .text -0+01013c <[^>]*> 3c020001 lui v0,0x1 -[ ]*1013c: R_MIPS_GNU_REL_HI16 .text -0+010140 <[^>]*> 0044102d daddu v0,v0,a0 -0+010144 <[^>]*> 8c428140 lw v0,-32448\(v0\) -[ ]*10144: R_MIPS_GNU_REL_LO16 .text -0+010148 <[^>]*> 3c020001 lui v0,0x1 -[ ]*10148: R_MIPS_GNU_REL_HI16 .text -0+01014c <[^>]*> 0044102d daddu v0,v0,a0 -0+010150 <[^>]*> 8c42814c lw v0,-32436\(v0\) -[ ]*10150: R_MIPS_GNU_REL_LO16 .text -0+010154 <[^>]*> 3c020001 lui v0,0x1 -[ ]*10154: R_MIPS_GNU_REL_HI16 .text -0+010158 <[^>]*> 0044102d daddu v0,v0,a0 -0+01015c <[^>]*> 8c4203c4 lw v0,964\(v0\) -[ ]*1015c: R_MIPS_GNU_REL_LO16 .text -0+010160 <[^>]*> 3c020001 lui v0,0x1 -[ ]*10160: R_MIPS_GNU_REL_HI16 .text -0+010164 <[^>]*> 0044102d daddu v0,v0,a0 -0+010168 <[^>]*> 8c4203d0 lw v0,976\(v0\) -[ ]*10168: R_MIPS_GNU_REL_LO16 .text -0+01016c <[^>]*> 3c020000 lui v0,0x0 -[ ]*1016c: R_MIPS_GNU_REL_HI16 e -0+010170 <[^>]*> 0044102d daddu v0,v0,a0 -0+010174 <[^>]*> 8c420168 lw v0,360\(v0\) -[ ]*10174: R_MIPS_GNU_REL_LO16 e -0+010178 <[^>]*> 3c020000 lui v0,0x0 -[ ]*10178: R_MIPS_GNU_REL_HI16 .text -0+01017c <[^>]*> 0044102d daddu v0,v0,a0 -0+010180 <[^>]*> dc420178 ld v0,376\(v0\) -[ ]*10180: R_MIPS_GNU_REL_LO16 .text -0+010184 <[^>]*> 3c020000 lui v0,0x0 -[ ]*10184: R_MIPS_GNU_REL_HI16 .text -0+010188 <[^>]*> 0044102d daddu v0,v0,a0 -0+01018c <[^>]*> dc420184 ld v0,388\(v0\) -[ ]*1018c: R_MIPS_GNU_REL_LO16 .text -0+010190 <[^>]*> 3c020001 lui v0,0x1 -[ ]*10190: R_MIPS_GNU_REL_HI16 .text -0+010194 <[^>]*> 0044102d daddu v0,v0,a0 -0+010198 <[^>]*> dc428194 ld v0,-32364\(v0\) -[ ]*10198: R_MIPS_GNU_REL_LO16 .text -0+01019c <[^>]*> 3c020001 lui v0,0x1 -[ ]*1019c: R_MIPS_GNU_REL_HI16 .text -0+0101a0 <[^>]*> 0044102d daddu v0,v0,a0 -0+0101a4 <[^>]*> dc4281a0 ld v0,-32352\(v0\) -[ ]*101a4: R_MIPS_GNU_REL_LO16 .text -0+0101a8 <[^>]*> 3c020001 lui v0,0x1 -[ ]*101a8: R_MIPS_GNU_REL_HI16 .text -0+0101ac <[^>]*> 0044102d daddu v0,v0,a0 -0+0101b0 <[^>]*> dc420418 ld v0,1048\(v0\) -[ ]*101b0: R_MIPS_GNU_REL_LO16 .text -0+0101b4 <[^>]*> 3c020001 lui v0,0x1 -[ ]*101b4: R_MIPS_GNU_REL_HI16 .text -0+0101b8 <[^>]*> 0044102d daddu v0,v0,a0 -0+0101bc <[^>]*> dc420424 ld v0,1060\(v0\) -[ ]*101bc: R_MIPS_GNU_REL_LO16 .text -0+0101c0 <[^>]*> 3c020000 lui v0,0x0 -[ ]*101c0: R_MIPS_GNU_REL_HI16 e -0+0101c4 <[^>]*> 0044102d daddu v0,v0,a0 -0+0101c8 <[^>]*> dc4201bc ld v0,444\(v0\) -[ ]*101c8: R_MIPS_GNU_REL_LO16 e -0+0101cc <[^>]*> 3c010000 lui at,0x0 -[ ]*101cc: R_MIPS_GNU_REL_HI16 .text -0+0101d0 <[^>]*> 0024082d daddu at,at,a0 -0+0101d4 <[^>]*> ac2201cc sw v0,460\(at\) -[ ]*101d4: R_MIPS_GNU_REL_LO16 .text -0+0101d8 <[^>]*> 3c010000 lui at,0x0 -[ ]*101d8: R_MIPS_GNU_REL_HI16 .text -0+0101dc <[^>]*> 0024082d daddu at,at,a0 -0+0101e0 <[^>]*> ac2201d8 sw v0,472\(at\) -[ ]*101e0: R_MIPS_GNU_REL_LO16 .text -0+0101e4 <[^>]*> 3c010001 lui at,0x1 -[ ]*101e4: R_MIPS_GNU_REL_HI16 .text -0+0101e8 <[^>]*> 0024082d daddu at,at,a0 -0+0101ec <[^>]*> ac2281e8 sw v0,-32280\(at\) -[ ]*101ec: R_MIPS_GNU_REL_LO16 .text -0+0101f0 <[^>]*> 3c010001 lui at,0x1 -[ ]*101f0: R_MIPS_GNU_REL_HI16 .text -0+0101f4 <[^>]*> 0024082d daddu at,at,a0 -0+0101f8 <[^>]*> ac2281f4 sw v0,-32268\(at\) -[ ]*101f8: R_MIPS_GNU_REL_LO16 .text -0+0101fc <[^>]*> 3c010001 lui at,0x1 -[ ]*101fc: R_MIPS_GNU_REL_HI16 .text -0+010200 <[^>]*> 0024082d daddu at,at,a0 -0+010204 <[^>]*> ac22046c sw v0,1132\(at\) -[ ]*10204: R_MIPS_GNU_REL_LO16 .text -0+010208 <[^>]*> 3c010001 lui at,0x1 -[ ]*10208: R_MIPS_GNU_REL_HI16 .text -0+01020c <[^>]*> 0024082d daddu at,at,a0 -0+010210 <[^>]*> ac220478 sw v0,1144\(at\) -[ ]*10210: R_MIPS_GNU_REL_LO16 .text -0+010214 <[^>]*> 3c010000 lui at,0x0 -[ ]*10214: R_MIPS_GNU_REL_HI16 e -0+010218 <[^>]*> 0024082d daddu at,at,a0 -0+01021c <[^>]*> ac220210 sw v0,528\(at\) -[ ]*1021c: R_MIPS_GNU_REL_LO16 e -0+010220 <[^>]*> 3c010000 lui at,0x0 -[ ]*10220: R_MIPS_GNU_REL_HI16 .text -0+010224 <[^>]*> 0024082d daddu at,at,a0 -0+010228 <[^>]*> fc220220 sd v0,544\(at\) -[ ]*10228: R_MIPS_GNU_REL_LO16 .text -0+01022c <[^>]*> 3c010000 lui at,0x0 -[ ]*1022c: R_MIPS_GNU_REL_HI16 .text -0+010230 <[^>]*> 0024082d daddu at,at,a0 -0+010234 <[^>]*> fc22022c sd v0,556\(at\) -[ ]*10234: R_MIPS_GNU_REL_LO16 .text -0+010238 <[^>]*> 3c010001 lui at,0x1 -[ ]*10238: R_MIPS_GNU_REL_HI16 .text -0+01023c <[^>]*> 0024082d daddu at,at,a0 -0+010240 <[^>]*> fc22823c sd v0,-32196\(at\) -[ ]*10240: R_MIPS_GNU_REL_LO16 .text -0+010244 <[^>]*> 3c010001 lui at,0x1 -[ ]*10244: R_MIPS_GNU_REL_HI16 .text -0+010248 <[^>]*> 0024082d daddu at,at,a0 -0+01024c <[^>]*> fc228248 sd v0,-32184\(at\) -[ ]*1024c: R_MIPS_GNU_REL_LO16 .text -0+010250 <[^>]*> 3c010001 lui at,0x1 -[ ]*10250: R_MIPS_GNU_REL_HI16 .text -0+010254 <[^>]*> 0024082d daddu at,at,a0 -0+010258 <[^>]*> fc2204c0 sd v0,1216\(at\) -[ ]*10258: R_MIPS_GNU_REL_LO16 .text -0+01025c <[^>]*> 3c010001 lui at,0x1 -[ ]*1025c: R_MIPS_GNU_REL_HI16 .text -0+010260 <[^>]*> 0024082d daddu at,at,a0 -0+010264 <[^>]*> fc2204cc sd v0,1228\(at\) -[ ]*10264: R_MIPS_GNU_REL_LO16 .text -0+010268 <[^>]*> 3c010000 lui at,0x0 -[ ]*10268: R_MIPS_GNU_REL_HI16 e -0+01026c <[^>]*> 0024082d daddu at,at,a0 -0+010270 <[^>]*> fc220264 sd v0,612\(at\) -[ ]*10270: R_MIPS_GNU_REL_LO16 e - ... diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/empic2.s binutils-2.15.91.0.1/gas/testsuite/gas/mips/empic2.s --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/empic2.s 2002-03-07 11:52:38.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/empic2.s 1969-12-31 16:00:00.000000000 -0800 @@ -1,100 +0,0 @@ -# Check assembly of and relocs for -membedded-pic la, lw, ld, sw, sd macros. - - .text - .set noreorder - -start: - nop - - .globl g1 - .ent g1 -i1: # 0x00004 -g1: - .space 0x8000 - nop - .end g1 - - .globl g2 - .ent g2 -i2: # 0x08008 -g2: - .space 0x8000 - nop - .end g2 - - .globl g3 - .ent g3 -i3: # 0x1000c -g3: - - la $2, (i1 - i3)($4) - la $2, (g1 - i3)($4) - la $2, (i2 - i3)($4) - la $2, (g2 - i3)($4) - la $2, (if - i3)($4) - la $2, (gf - i3)($4) - la $2, (e - i3)($4) - la $2, (i1 - g3)($4) - la $2, (g1 - g3)($4) - la $2, (i2 - g3)($4) - la $2, (g2 - g3)($4) - la $2, (if - g3)($4) - la $2, (gf - g3)($4) - la $2, (e - g3)($4) - - la $2, (i1 - i3) - la $2, (g1 - i3) - la $2, (i2 - i3) - la $2, (g2 - i3) - la $2, (if - i3) - la $2, (gf - i3) - la $2, (e - i3) - la $2, (i1 - g3) - la $2, (g1 - g3) - la $2, (i2 - g3) - la $2, (g2 - g3) - la $2, (if - g3) - la $2, (gf - g3) - la $2, (e - g3) - - lw $2, (i1 - i3)($4) - lw $2, (g1 - i3)($4) - lw $2, (i2 - i3)($4) - lw $2, (g2 - i3)($4) - lw $2, (if - i3)($4) - lw $2, (gf - i3)($4) - lw $2, (e - i3)($4) - ld $2, (i1 - g3)($4) - ld $2, (g1 - g3)($4) - ld $2, (i2 - g3)($4) - ld $2, (g2 - g3)($4) - ld $2, (if - g3)($4) - ld $2, (gf - g3)($4) - ld $2, (e - g3)($4) - - sw $2, (i1 - i3)($4) - sw $2, (g1 - i3)($4) - sw $2, (i2 - i3)($4) - sw $2, (g2 - i3)($4) - sw $2, (if - i3)($4) - sw $2, (gf - i3)($4) - sw $2, (e - i3)($4) - sd $2, (i1 - g3)($4) - sd $2, (g1 - g3)($4) - sd $2, (i2 - g3)($4) - sd $2, (g2 - g3)($4) - sd $2, (if - g3)($4) - sd $2, (gf - g3)($4) - sd $2, (e - g3)($4) - - .end g3 - - .globl gf - .ent gf -if: -gf: - nop - .end gf - -# Force at least 8 (non-delay-slot) zero bytes, to make 'objdump' print ... - .space 8 diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/empic3_e.d binutils-2.15.91.0.1/gas/testsuite/gas/mips/empic3_e.d --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/empic3_e.d 2003-05-15 13:42:25.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/empic3_e.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,47 +0,0 @@ -#objdump: --prefix-addresses -dr --show-raw-insn -mmips:4000 -#name: MIPS empic3 (external) -#as: -mabi=o64 -membedded-pic -mips3 - -# Check PC-relative HI/LO relocs relocs for -membedded-pic when HI and -# LO are split over a 32K boundary. - -.*: +file format elf.*mips.* - -Disassembly of section .text: - ... - ... -0000fffc <[^>]*> 3c020001 lui v0,0x1 -[ ]*fffc: R_MIPS_GNU_REL_HI16 ext -00010000 <[^>]*> 64428000 daddiu v0,v0,-32768 -[ ]*10000: R_MIPS_GNU_REL_LO16 ext - ... -00017ffc <[^>]*> 3c020001 lui v0,0x1 -[ ]*17ffc: R_MIPS_GNU_REL_HI16 ext -00018000 <[^>]*> 64420000 daddiu v0,v0,0 -[ ]*18000: R_MIPS_GNU_REL_LO16 ext - ... -0001fffc <[^>]*> 3c020002 lui v0,0x2 -[ ]*1fffc: R_MIPS_GNU_REL_HI16 ext -00020000 <[^>]*> 0043102d daddu v0,v0,v1 -00020004 <[^>]*> 64428004 daddiu v0,v0,-32764 -[ ]*20004: R_MIPS_GNU_REL_LO16 ext - ... -00027ffc <[^>]*> 3c020002 lui v0,0x2 -[ ]*27ffc: R_MIPS_GNU_REL_HI16 ext -00028000 <[^>]*> 0043102d daddu v0,v0,v1 -00028004 <[^>]*> 64420004 daddiu v0,v0,4 -[ ]*28004: R_MIPS_GNU_REL_LO16 ext - ... -0002fff8 <[^>]*> 3c020003 lui v0,0x3 -[ ]*2fff8: R_MIPS_GNU_REL_HI16 ext -0002fffc <[^>]*> 0043102d daddu v0,v0,v1 -00030000 <[^>]*> 64428000 daddiu v0,v0,-32768 -[ ]*30000: R_MIPS_GNU_REL_LO16 ext - ... -00037ff8 <[^>]*> 3c020003 lui v0,0x3 -[ ]*37ff8: R_MIPS_GNU_REL_HI16 ext -00037ffc <[^>]*> 0043102d daddu v0,v0,v1 -00038000 <[^>]*> 64420000 daddiu v0,v0,0 -[ ]*38000: R_MIPS_GNU_REL_LO16 ext - ... - ... diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/empic3_e.s binutils-2.15.91.0.1/gas/testsuite/gas/mips/empic3_e.s --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/empic3_e.s 2004-01-14 13:07:47.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/empic3_e.s 1969-12-31 16:00:00.000000000 -0800 @@ -1,46 +0,0 @@ -# Check PC-relative HI/LO relocs for -membedded-pic when HI and LO are -# split over a 32K boundary. - - .text - .set noreorder - - SYM_TO_TEST = ext - - .globl ext - - .org 0x00000 - .globl g1 -g1: -l1: - - .org 0x08000 - .globl fn - .ent fn -fn: - .org (0x10000 - 4) - la $2, SYM_TO_TEST - fn # expands to 2 instructions - - .org (0x18000 - 4) - la $2, SYM_TO_TEST - fn # expands to 2 instructions - - .org (0x20000 - 4) - la $2, (SYM_TO_TEST - fn)($3) # expands to 3 instructions - - .org (0x28000 - 4) - la $2, (SYM_TO_TEST - fn)($3) # expands to 3 instructions - - .org (0x30000 - 8) - la $2, (SYM_TO_TEST - fn)($3) # expands to 3 instructions - - .org (0x38000 - 8) - la $2, (SYM_TO_TEST - fn)($3) # expands to 3 instructions - - .end fn - - .org 0x40000 - .globl g2 -g2: -l2: - -# Force at least 8 (non-delay-slot) zero bytes, to make 'objdump' print ... - .space 8 diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/empic3_g1.d binutils-2.15.91.0.1/gas/testsuite/gas/mips/empic3_g1.d --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/empic3_g1.d 2003-05-15 13:42:25.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/empic3_g1.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,47 +0,0 @@ -#objdump: --prefix-addresses -dr --show-raw-insn -mmips:4000 -#name: MIPS empic3 (global, negative) -#as: -mabi=o64 -membedded-pic -mips3 - -# Check PC-relative HI/LO relocs relocs for -membedded-pic when HI and -# LO are split over a 32K boundary. - -.*: +file format elf.*mips.* - -Disassembly of section .text: - ... - ... -0000fffc <[^>]*> 3c020001 lui v0,0x1 -[ ]*fffc: R_MIPS_GNU_REL_HI16 .text -00010000 <[^>]*> 64428000 daddiu v0,v0,-32768 -[ ]*10000: R_MIPS_GNU_REL_LO16 .text - ... -00017ffc <[^>]*> 3c020001 lui v0,0x1 -[ ]*17ffc: R_MIPS_GNU_REL_HI16 .text -00018000 <[^>]*> 64420000 daddiu v0,v0,0 -[ ]*18000: R_MIPS_GNU_REL_LO16 .text - ... -0001fffc <[^>]*> 3c020002 lui v0,0x2 -[ ]*1fffc: R_MIPS_GNU_REL_HI16 .text -00020000 <[^>]*> 0043102d daddu v0,v0,v1 -00020004 <[^>]*> 64428004 daddiu v0,v0,-32764 -[ ]*20004: R_MIPS_GNU_REL_LO16 .text - ... -00027ffc <[^>]*> 3c020002 lui v0,0x2 -[ ]*27ffc: R_MIPS_GNU_REL_HI16 .text -00028000 <[^>]*> 0043102d daddu v0,v0,v1 -00028004 <[^>]*> 64420004 daddiu v0,v0,4 -[ ]*28004: R_MIPS_GNU_REL_LO16 .text - ... -0002fff8 <[^>]*> 3c020003 lui v0,0x3 -[ ]*2fff8: R_MIPS_GNU_REL_HI16 .text -0002fffc <[^>]*> 0043102d daddu v0,v0,v1 -00030000 <[^>]*> 64428000 daddiu v0,v0,-32768 -[ ]*30000: R_MIPS_GNU_REL_LO16 .text - ... -00037ff8 <[^>]*> 3c020003 lui v0,0x3 -[ ]*37ff8: R_MIPS_GNU_REL_HI16 .text -00037ffc <[^>]*> 0043102d daddu v0,v0,v1 -00038000 <[^>]*> 64420000 daddiu v0,v0,0 -[ ]*38000: R_MIPS_GNU_REL_LO16 .text - ... - ... diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/empic3_g1.s binutils-2.15.91.0.1/gas/testsuite/gas/mips/empic3_g1.s --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/empic3_g1.s 2002-02-03 11:22:32.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/empic3_g1.s 1969-12-31 16:00:00.000000000 -0800 @@ -1,46 +0,0 @@ -# Check PC-relative HI/LO relocs relocs for -membedded-pic when HI and -# LO are split over a 32K boundary. - - .text - .set noreorder - - SYM_TO_TEST = g1 - - .globl ext - - .org 0x00000 - .globl g1 -g1: -l1: - - .org 0x08000 - .globl fn - .ent fn -fn: - .org (0x10000 - 4) - la $2, SYM_TO_TEST - fn # expands to 2 instructions - - .org (0x18000 - 4) - la $2, SYM_TO_TEST - fn # expands to 2 instructions - - .org (0x20000 - 4) - la $2, (SYM_TO_TEST - fn)($3) # expands to 3 instructions - - .org (0x28000 - 4) - la $2, (SYM_TO_TEST - fn)($3) # expands to 3 instructions - - .org (0x30000 - 8) - la $2, (SYM_TO_TEST - fn)($3) # expands to 3 instructions - - .org (0x38000 - 8) - la $2, (SYM_TO_TEST - fn)($3) # expands to 3 instructions - - .end fn - - .org 0x40000 - .globl g2 -g2: -l2: - -# Force at least 8 (non-delay-slot) zero bytes, to make 'objdump' print ... - .space 8 diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/empic3_g2.d binutils-2.15.91.0.1/gas/testsuite/gas/mips/empic3_g2.d --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/empic3_g2.d 2003-05-15 13:42:25.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/empic3_g2.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,47 +0,0 @@ -#objdump: --prefix-addresses -dr --show-raw-insn -mmips:4000 -#name: MIPS empic3 (global, positive) -#as: -mabi=o64 -membedded-pic -mips3 - -# Check PC-relative HI/LO relocs relocs for -membedded-pic when HI and -# LO are split over a 32K boundary. - -.*: +file format elf.*mips.* - -Disassembly of section .text: - ... - ... -0000fffc <[^>]*> 3c020005 lui v0,0x5 -[ ]*fffc: R_MIPS_GNU_REL_HI16 .text -00010000 <[^>]*> 64428000 daddiu v0,v0,-32768 -[ ]*10000: R_MIPS_GNU_REL_LO16 .text - ... -00017ffc <[^>]*> 3c020005 lui v0,0x5 -[ ]*17ffc: R_MIPS_GNU_REL_HI16 .text -00018000 <[^>]*> 64420000 daddiu v0,v0,0 -[ ]*18000: R_MIPS_GNU_REL_LO16 .text - ... -0001fffc <[^>]*> 3c020006 lui v0,0x6 -[ ]*1fffc: R_MIPS_GNU_REL_HI16 .text -00020000 <[^>]*> 0043102d daddu v0,v0,v1 -00020004 <[^>]*> 64428004 daddiu v0,v0,-32764 -[ ]*20004: R_MIPS_GNU_REL_LO16 .text - ... -00027ffc <[^>]*> 3c020006 lui v0,0x6 -[ ]*27ffc: R_MIPS_GNU_REL_HI16 .text -00028000 <[^>]*> 0043102d daddu v0,v0,v1 -00028004 <[^>]*> 64420004 daddiu v0,v0,4 -[ ]*28004: R_MIPS_GNU_REL_LO16 .text - ... -0002fff8 <[^>]*> 3c020007 lui v0,0x7 -[ ]*2fff8: R_MIPS_GNU_REL_HI16 .text -0002fffc <[^>]*> 0043102d daddu v0,v0,v1 -00030000 <[^>]*> 64428000 daddiu v0,v0,-32768 -[ ]*30000: R_MIPS_GNU_REL_LO16 .text - ... -00037ff8 <[^>]*> 3c020007 lui v0,0x7 -[ ]*37ff8: R_MIPS_GNU_REL_HI16 .text -00037ffc <[^>]*> 0043102d daddu v0,v0,v1 -00038000 <[^>]*> 64420000 daddiu v0,v0,0 -[ ]*38000: R_MIPS_GNU_REL_LO16 .text - ... - ... diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/empic3_g2.s binutils-2.15.91.0.1/gas/testsuite/gas/mips/empic3_g2.s --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/empic3_g2.s 2002-02-03 11:22:32.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/empic3_g2.s 1969-12-31 16:00:00.000000000 -0800 @@ -1,46 +0,0 @@ -# Check PC-relative HI/LO relocs relocs for -membedded-pic when HI and -# LO are split over a 32K boundary. - - .text - .set noreorder - - SYM_TO_TEST = g2 - - .globl ext - - .org 0x00000 - .globl g1 -g1: -l1: - - .org 0x08000 - .globl fn - .ent fn -fn: - .org (0x10000 - 4) - la $2, SYM_TO_TEST - fn # expands to 2 instructions - - .org (0x18000 - 4) - la $2, SYM_TO_TEST - fn # expands to 2 instructions - - .org (0x20000 - 4) - la $2, (SYM_TO_TEST - fn)($3) # expands to 3 instructions - - .org (0x28000 - 4) - la $2, (SYM_TO_TEST - fn)($3) # expands to 3 instructions - - .org (0x30000 - 8) - la $2, (SYM_TO_TEST - fn)($3) # expands to 3 instructions - - .org (0x38000 - 8) - la $2, (SYM_TO_TEST - fn)($3) # expands to 3 instructions - - .end fn - - .org 0x40000 - .globl g2 -g2: -l2: - -# Force at least 8 (non-delay-slot) zero bytes, to make 'objdump' print ... - .space 8 diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/jal-empic-elf-2.d binutils-2.15.91.0.1/gas/testsuite/gas/mips/jal-empic-elf-2.d --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/jal-empic-elf-2.d 2003-05-15 13:42:25.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/jal-empic-elf-2.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,48 +0,0 @@ -#objdump: -dr --prefix-addresses --show-raw-insn -#name: MIPS jal-empic-elf-2 -#as: -32 -membedded-pic - -# Test the jal macro harder with -membedded-pic. - -.*: +file format .*mips.* - -Disassembly of section .text: - \.\.\. - \.\.\. -0+0018 <[^>]*> 04110002 bal 0+0024 -[ ]*18: R_MIPS_GNU_REL16_S2 .text -0+001c <[^>]*> 00000000 nop -0+0020 <[^>]*> 04110002 bal 0+002c -[ ]*20: R_MIPS_GNU_REL16_S2 .text -0+0024 <[^>]*> 00000000 nop -0+0028 <[^>]*> 0411ffff bal 0+0028 -[ ]*28: R_MIPS_GNU_REL16_S2 e1 -0+002c <[^>]*> 00000000 nop -0+0030 <[^>]*> 10000002 b 0+003c -[ ]*30: R_MIPS_GNU_REL16_S2 .text -0+0034 <[^>]*> 00000000 nop -0+0038 <[^>]*> 10000002 b 0+0044 -[ ]*38: R_MIPS_GNU_REL16_S2 .text -0+003c <[^>]*> 00000000 nop -0+0040 <[^>]*> 1000ffff b 0+0040 -[ ]*40: R_MIPS_GNU_REL16_S2 e1 -0+0044 <[^>]*> 00000000 nop -0+0048 <[^>]*> 0411ffff bal 0+0048 -[ ]*48: R_MIPS_GNU_REL16_S2 .text -0+004c <[^>]*> 00000000 nop -0+0050 <[^>]*> 0411ffff bal 0+0050 -[ ]*50: R_MIPS_GNU_REL16_S2 .text -0+0054 <[^>]*> 00000000 nop -0+0058 <[^>]*> 0411fffc bal 0+004c -[ ]*58: R_MIPS_GNU_REL16_S2 e1 -0+005c <[^>]*> 00000000 nop -0+0060 <[^>]*> 04110005 bal 0+0078 -[ ]*60: R_MIPS_GNU_REL16_S2 .text -0+0064 <[^>]*> 00000000 nop -0+0068 <[^>]*> 04110005 bal 0+0080 -[ ]*68: R_MIPS_GNU_REL16_S2 .text -0+006c <[^>]*> 00000000 nop -0+0070 <[^>]*> 04110002 bal 0+007c -[ ]*70: R_MIPS_GNU_REL16_S2 e1 -0+0074 <[^>]*> 00000000 nop - \.\.\. diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/jal-empic-elf-2.s binutils-2.15.91.0.1/gas/testsuite/gas/mips/jal-empic-elf-2.s --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/jal-empic-elf-2.s 2002-03-07 11:52:38.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/jal-empic-elf-2.s 1969-12-31 16:00:00.000000000 -0800 @@ -1,28 +0,0 @@ -# Source file used to test the jal macro even harder - # some space so offets won't be 0. - .space 0xc - - .globl g1 .text -g1: -l1: - # some more space, so offset from label won't be 0. - .space 0xc - - jal g1 # 0x18 - jal l1 # 0x20 - jal e1 # 0x28 - - j g1 # 0x30 - j l1 # 0x38 - j e1 # 0x40 - - jal g1 - 0xc # 0x48 - jal l1 - 0xc # 0x50 - jal e1 - 0xc # 0x58 - - jal g1 + 0xc # 0x60 - jal l1 + 0xc # 0x68 - jal e1 + 0xc # 0x70 - -# Force at least 8 (non-delay-slot) zero bytes, to make 'objdump' print ... - .space 8 diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/jal-empic-elf-3.d binutils-2.15.91.0.1/gas/testsuite/gas/mips/jal-empic-elf-3.d --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/jal-empic-elf-3.d 2003-05-15 13:42:25.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/jal-empic-elf-3.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,24 +0,0 @@ -#objdump: -dr --prefix-addresses --show-raw-insn -#name: MIPS jal-empic-elf-3 -#as: -32 -membedded-pic - -# Test the jal macro harder with -membedded-pic. - -.*: +file format .*mips.* - -Disassembly of section .text: - \.\.\. - \.\.\. -0+0018 <[^>]*> 0411fffa bal 0+0004 -[ ]*18: R_MIPS_GNU_REL16_S2 .text -0+001c <[^>]*> 00000000 nop -0+0020 <[^>]*> 0411fff8 bal 0+0004 -[ ]*20: R_MIPS_GNU_REL16_S2 .text -0+0024 <[^>]*> 00000000 nop -0+0028 <[^>]*> 0411fff6 bal 0+0004 -[ ]*28: R_MIPS_GNU_REL16_S2 e1 -0+002c <[^>]*> 00000000 nop -0+0030 <[^>]*> 0411fff4 bal 0+0004 -[ ]*30: R_MIPS_GNU_REL16_S2 e2 -0+0034 <[^>]*> 00000000 nop - \.\.\. diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/jal-empic-elf-3.s binutils-2.15.91.0.1/gas/testsuite/gas/mips/jal-empic-elf-3.s --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/jal-empic-elf-3.s 2002-03-07 11:52:38.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/jal-empic-elf-3.s 1969-12-31 16:00:00.000000000 -0800 @@ -1,20 +0,0 @@ -# Source file used to test the jal macro even harder - # some space so offets won't be 0. - .space 0xc - - .globl g1 .text - .globl e2 .text -g1: -l1: - # some more space, so offset from label won't be 0. - .space 0xc - - # Hit the case where 'value == 0' in the BFD_RELOC_16_PCREL_S2 - # handling in tc-mips.c:md_apply_fix3(). - jal g1 - 0x20 # 0x18 - jal l1 - 0x28 # 0x20 - jal e1 - 0x24 # 0x28 - jal e2 - 0x2c # 0x30 - -# Force at least 8 (non-delay-slot) zero bytes, to make 'objdump' print ... - .space 8 diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/jal-empic-elf.d binutils-2.15.91.0.1/gas/testsuite/gas/mips/jal-empic-elf.d --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/jal-empic-elf.d 2003-05-15 13:42:25.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/jal-empic-elf.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,26 +0,0 @@ -#objdump: -dr --prefix-addresses --show-raw-insn -#name: MIPS jal-empic-elf -#as: -32 -membedded-pic -#source: jal.s - -# Test the jal macro with -membedded-pic. - -.*: +file format .*mips.* - -Disassembly of section .text: -0+0000 <[^>]*> 0320f809 jalr t9 -0+0004 <[^>]*> 00000000 nop -0+0008 <[^>]*> 03202009 jalr a0,t9 -0+000c <[^>]*> 00000000 nop -0+0010 <[^>]*> 0411ffff bal 0+0010 -[ ]*10: R_MIPS_GNU_REL16_S2 .text -0+0014 <[^>]*> 00000000 nop -0+0018 <[^>]*> 0411ffff bal 0+0018 -[ ]*18: R_MIPS_GNU_REL16_S2 external_text_label -0+001c <[^>]*> 00000000 nop -0+0020 <[^>]*> 1000ffff b 0+0020 -[ ]*20: R_MIPS_GNU_REL16_S2 .text -0+0024 <[^>]*> 00000000 nop -0+0028 <[^>]*> 1000ffff b 0+0028 -[ ]*28: R_MIPS_GNU_REL16_S2 external_text_label -0+002c <[^>]*> 00000000 nop diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/jal-empic.d binutils-2.15.91.0.1/gas/testsuite/gas/mips/jal-empic.d --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/jal-empic.d 2001-05-21 10:37:00.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/jal-empic.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,26 +0,0 @@ -#objdump: -dr --prefix-addresses -mmips:3000 -#name: MIPS jal-empic -#as: -mips1 -membedded-pic -#source: jal.s - -# Test the jal macro with -membedded-pic. - -.*: +file format .*mips.* - -Disassembly of section .text: -0+0000 <[^>]*> jalr t9 -0+0004 <[^>]*> nop -0+0008 <[^>]*> jalr a0,t9 -0+000c <[^>]*> nop -0+0010 <[^>]*> bal 0+0000 -[ ]*10: PCREL16 .text -0+0014 <[^>]*> nop -0+0018 <[^>]*> bal 0+0018 -[ ]*18: PCREL16 external_text_label -0+001c <[^>]*> nop -0+0020 <[^>]*> b 0+0000 -[ ]*20: PCREL16 .text -0+0024 <[^>]*> nop -0+0028 <[^>]*> b 0+0028 -[ ]*28: PCREL16 external_text_label -0+002c <[^>]*> nop diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/la-empic.d binutils-2.15.91.0.1/gas/testsuite/gas/mips/la-empic.d --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/la-empic.d 2003-05-15 13:42:25.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/la-empic.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,105 +0,0 @@ -#objdump: -dr --prefix-addresses -mmips:3000 -#name: MIPS la-empic -#as: -32 -mips1 -membedded-pic - -# Test the la macro with -membedded-pic. - -.*: +file format .*mips.* - -Disassembly of section .text: -0+0000 <[^>]*> li a0,0 -0+0004 <[^>]*> li a0,1 -0+0008 <[^>]*> li a0,0x8000 -0+000c <[^>]*> li a0,-32768 -0+0010 <[^>]*> lui a0,0x1 -0+0014 <[^>]*> lui a0,0x1 -0+0018 <[^>]*> ori a0,a0,0xa5a5 -0+001c <[^>]*> li a0,0 -0+0020 <[^>]*> addu a0,a0,a1 -0+0024 <[^>]*> li a0,1 -0+0028 <[^>]*> addu a0,a0,a1 -0+002c <[^>]*> li a0,0x8000 -0+0030 <[^>]*> addu a0,a0,a1 -0+0034 <[^>]*> li a0,-32768 -0+0038 <[^>]*> addu a0,a0,a1 -0+003c <[^>]*> lui a0,0x1 -0+0040 <[^>]*> addu a0,a0,a1 -0+0044 <[^>]*> lui a0,0x1 -0+0048 <[^>]*> ori a0,a0,0xa5a5 -0+004c <[^>]*> addu a0,a0,a1 -0+0050 <[^>]*> addiu a0,gp,-16384 -[ ]*50: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.* -0+0054 <[^>]*> addiu a0,gp,0 -[ ]*54: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label -0+0058 <[^>]*> addiu a0,gp,0 -[ ]*58: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label -0+005c <[^>]*> addiu a0,gp,0 -[ ]*5c: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common -0+0060 <[^>]*> addiu a0,gp,0 -[ ]*60: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common -0+0064 <[^>]*> addiu a0,gp,-16384 -[ ]*64: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+0068 <[^>]*> addiu a0,gp,-15384 -[ ]*68: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+006c <[^>]*> addiu a0,gp,-16383 -[ ]*6c: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.* -0+0070 <[^>]*> addiu a0,gp,1 -[ ]*70: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label -0+0074 <[^>]*> addiu a0,gp,1 -[ ]*74: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label -0+0078 <[^>]*> addiu a0,gp,1 -[ ]*78: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common -0+007c <[^>]*> addiu a0,gp,1 -[ ]*7c: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common -0+0080 <[^>]*> addiu a0,gp,-16383 -[ ]*80: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+0084 <[^>]*> addiu a0,gp,-15383 -[ ]*84: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+0088 <[^>]*> addiu a0,gp,-16384 -[ ]*88: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.* -0+008c <[^>]*> addu a0,a0,a1 -0+0090 <[^>]*> addiu a0,gp,0 -[ ]*90: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label -0+0094 <[^>]*> addu a0,a0,a1 -0+0098 <[^>]*> addiu a0,gp,0 -[ ]*98: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label -0+009c <[^>]*> addu a0,a0,a1 -0+00a0 <[^>]*> addiu a0,gp,0 -[ ]*a0: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common -0+00a4 <[^>]*> addu a0,a0,a1 -0+00a8 <[^>]*> addiu a0,gp,0 -[ ]*a8: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common -0+00ac <[^>]*> addu a0,a0,a1 -0+00b0 <[^>]*> addiu a0,gp,-16384 -[ ]*b0: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+00b4 <[^>]*> addu a0,a0,a1 -0+00b8 <[^>]*> addiu a0,gp,-15384 -[ ]*b8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+00bc <[^>]*> addu a0,a0,a1 -0+00c0 <[^>]*> addiu a0,gp,-16383 -[ ]*c0: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.* -0+00c4 <[^>]*> addu a0,a0,a1 -0+00c8 <[^>]*> addiu a0,gp,1 -[ ]*c8: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label -0+00cc <[^>]*> addu a0,a0,a1 -0+00d0 <[^>]*> addiu a0,gp,1 -[ ]*d0: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label -0+00d4 <[^>]*> addu a0,a0,a1 -0+00d8 <[^>]*> addiu a0,gp,1 -[ ]*d8: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common -0+00dc <[^>]*> addu a0,a0,a1 -0+00e0 <[^>]*> addiu a0,gp,1 -[ ]*e0: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common -0+00e4 <[^>]*> addu a0,a0,a1 -0+00e8 <[^>]*> addiu a0,gp,-16383 -[ ]*e8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+00ec <[^>]*> addu a0,a0,a1 -0+00f0 <[^>]*> addiu a0,gp,-15383 -[ ]*f0: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+00f4 <[^>]*> addu a0,a0,a1 -0+00f8 <[^>]*> lui a0,0x0 -[ ]*f8: RELHI external_text_label -0+00fc <[^>]*> addiu a0,a0,252 -[ ]*fc: RELLO external_text_label -0+0100 <[^>]*> li a0,248 - ... diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/la-empic.s binutils-2.15.91.0.1/gas/testsuite/gas/mips/la-empic.s --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/la-empic.s 1999-06-03 11:02:03.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/la-empic.s 1969-12-31 16:00:00.000000000 -0800 @@ -1,57 +0,0 @@ -# Source file used to test the la macro with -membedded-pic - - .data -data_label: - .extern big_external_data_label,1000 - .extern small_external_data_label,1 - .comm big_external_common,1000 - .comm small_external_common,1 - .lcomm big_local_common,1000 - .lcomm small_local_common,1 - - .text -text_label: - la $4,0 - la $4,1 - la $4,0x8000 - la $4,-0x8000 - la $4,0x10000 - la $4,0x1a5a5 - la $4,0($5) - la $4,1($5) - la $4,0x8000($5) - la $4,-0x8000($5) - la $4,0x10000($5) - la $4,0x1a5a5($5) - la $4,data_label - la $4,big_external_data_label - la $4,small_external_data_label - la $4,big_external_common - la $4,small_external_common - la $4,big_local_common - la $4,small_local_common - la $4,data_label+1 - la $4,big_external_data_label+1 - la $4,small_external_data_label+1 - la $4,big_external_common+1 - la $4,small_external_common+1 - la $4,big_local_common+1 - la $4,small_local_common+1 - la $4,data_label($5) - la $4,big_external_data_label($5) - la $4,small_external_data_label($5) - la $4,big_external_common($5) - la $4,small_external_common($5) - la $4,big_local_common($5) - la $4,small_local_common($5) - la $4,data_label+1($5) - la $4,big_external_data_label+1($5) - la $4,small_external_data_label+1($5) - la $4,big_external_common+1($5) - la $4,small_external_common+1($5) - la $4,big_local_common+1($5) - la $4,small_local_common+1($5) - -second_text_label: - la $4,external_text_label - text_label - la $4,second_text_label - text_label diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/lb-empic.d binutils-2.15.91.0.1/gas/testsuite/gas/mips/lb-empic.d --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/lb-empic.d 2003-05-15 13:42:25.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/lb-empic.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,102 +0,0 @@ -#objdump: -dr --prefix-addresses -mmips:3000 -#name: MIPS lb-empic -#as: -32 -mips1 -membedded-pic -#source: lb-pic.s - -# Test the lb macro with -membedded-pic. - -.*: +file format .*mips.* - -Disassembly of section .text: -0+0000 <[^>]*> lb a0,0\(zero\) -0+0004 <[^>]*> lb a0,1\(zero\) -0+0008 <[^>]*> lui a0,0x1 -0+000c <[^>]*> lb a0,-32768\(a0\) -0+0010 <[^>]*> lb a0,-32768\(zero\) -0+0014 <[^>]*> lui a0,0x1 -0+0018 <[^>]*> lb a0,0\(a0\) -0+001c <[^>]*> lui a0,0x2 -0+0020 <[^>]*> lb a0,-23131\(a0\) -0+0024 <[^>]*> lb a0,0\(a1\) -0+0028 <[^>]*> lb a0,1\(a1\) -0+002c <[^>]*> lui a0,0x1 -0+0030 <[^>]*> addu a0,a0,a1 -0+0034 <[^>]*> lb a0,-32768\(a0\) -0+0038 <[^>]*> lb a0,-32768\(a1\) -0+003c <[^>]*> lui a0,0x1 -0+0040 <[^>]*> addu a0,a0,a1 -0+0044 <[^>]*> lb a0,0\(a0\) -0+0048 <[^>]*> lui a0,0x2 -0+004c <[^>]*> addu a0,a0,a1 -0+0050 <[^>]*> lb a0,-23131\(a0\) -0+0054 <[^>]*> lb a0,-16384\(gp\) -[ ]*54: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.* -0+0058 <[^>]*> lb a0,0\(gp\) -[ ]*58: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label -0+005c <[^>]*> lb a0,0\(gp\) -[ ]*5c: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label -0+0060 <[^>]*> lb a0,0\(gp\) -[ ]*60: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common -0+0064 <[^>]*> lb a0,0\(gp\) -[ ]*64: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common -0+0068 <[^>]*> lb a0,-16384\(gp\) -[ ]*68: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+006c <[^>]*> lb a0,-15384\(gp\) -[ ]*6c: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+0070 <[^>]*> lb a0,-16383\(gp\) -[ ]*70: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.* -0+0074 <[^>]*> lb a0,1\(gp\) -[ ]*74: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label -0+0078 <[^>]*> lb a0,1\(gp\) -[ ]*78: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label -0+007c <[^>]*> lb a0,1\(gp\) -[ ]*7c: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common -0+0080 <[^>]*> lb a0,1\(gp\) -[ ]*80: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common -0+0084 <[^>]*> lb a0,-16383\(gp\) -[ ]*84: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+0088 <[^>]*> lb a0,-15383\(gp\) -[ ]*88: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+008c <[^>]*> addu a0,a1,gp -0+0090 <[^>]*> lb a0,-16384\(a0\) -[ ]*90: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.* -0+0094 <[^>]*> addu a0,a1,gp -0+0098 <[^>]*> lb a0,0\(a0\) -[ ]*98: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label -0+009c <[^>]*> addu a0,a1,gp -0+00a0 <[^>]*> lb a0,0\(a0\) -[ ]*a0: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label -0+00a4 <[^>]*> addu a0,a1,gp -0+00a8 <[^>]*> lb a0,0\(a0\) -[ ]*a8: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common -0+00ac <[^>]*> addu a0,a1,gp -0+00b0 <[^>]*> lb a0,0\(a0\) -[ ]*b0: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common -0+00b4 <[^>]*> addu a0,a1,gp -0+00b8 <[^>]*> lb a0,-16384\(a0\) -[ ]*b8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+00bc <[^>]*> addu a0,a1,gp -0+00c0 <[^>]*> lb a0,-15384\(a0\) -[ ]*c0: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+00c4 <[^>]*> addu a0,a1,gp -0+00c8 <[^>]*> lb a0,-16383\(a0\) -[ ]*c8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.* -0+00cc <[^>]*> addu a0,a1,gp -0+00d0 <[^>]*> lb a0,1\(a0\) -[ ]*d0: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label -0+00d4 <[^>]*> addu a0,a1,gp -0+00d8 <[^>]*> lb a0,1\(a0\) -[ ]*d8: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label -0+00dc <[^>]*> addu a0,a1,gp -0+00e0 <[^>]*> lb a0,1\(a0\) -[ ]*e0: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common -0+00e4 <[^>]*> addu a0,a1,gp -0+00e8 <[^>]*> lb a0,1\(a0\) -[ ]*e8: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common -0+00ec <[^>]*> addu a0,a1,gp -0+00f0 <[^>]*> lb a0,-16383\(a0\) -[ ]*f0: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+00f4 <[^>]*> addu a0,a1,gp -0+00f8 <[^>]*> lb a0,-15383\(a0\) -[ ]*f8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+00fc <[^>]*> nop diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/lb-svr4pic-ilocks.d binutils-2.15.91.0.1/gas/testsuite/gas/mips/lb-svr4pic-ilocks.d --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/lb-svr4pic-ilocks.d 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/lb-svr4pic-ilocks.d 2004-05-27 11:26:04.414200006 -0700 @@ -0,0 +1,154 @@ +#objdump: -dr --prefix-addresses +#name: MIPS lb-svr4pic-ilocks +#as: -32 -KPIC +#source: lb-pic.s + +# Test the lb macro with -KPIC. + +.*: +file format .*mips.* + +Disassembly of section .text: +0+0000 <[^>]*> lb a0,0\(zero\) +0+0004 <[^>]*> lb a0,1\(zero\) +0+0008 <[^>]*> lui a0,0x1 +0+000c <[^>]*> lb a0,-32768\(a0\) +0+0010 <[^>]*> lb a0,-32768\(zero\) +0+0014 <[^>]*> lui a0,0x1 +0+0018 <[^>]*> lb a0,0\(a0\) +0+001c <[^>]*> lui a0,0x2 +0+0020 <[^>]*> lb a0,-23131\(a0\) +0+0024 <[^>]*> lb a0,0\(a1\) +0+0028 <[^>]*> lb a0,1\(a1\) +0+002c <[^>]*> lui a0,0x1 +0+0030 <[^>]*> addu a0,a0,a1 +0+0034 <[^>]*> lb a0,-32768\(a0\) +0+0038 <[^>]*> lb a0,-32768\(a1\) +0+003c <[^>]*> lui a0,0x1 +0+0040 <[^>]*> addu a0,a0,a1 +0+0044 <[^>]*> lb a0,0\(a0\) +0+0048 <[^>]*> lui a0,0x2 +0+004c <[^>]*> addu a0,a0,a1 +0+0050 <[^>]*> lb a0,-23131\(a0\) +0+0054 <[^>]*> lw a0,0\(gp\) +[ ]*54: R_MIPS_GOT16 .data +0+0058 <[^>]*> addiu a0,a0,0 +[ ]*58: R_MIPS_LO16 .data +0+005c <[^>]*> lb a0,0\(a0\) +0+0060 <[^>]*> lw a0,0\(gp\) +[ ]*60: R_MIPS_GOT16 big_external_data_label +0+0064 <[^>]*> lb a0,0\(a0\) +0+0068 <[^>]*> lw a0,0\(gp\) +[ ]*68: R_MIPS_GOT16 small_external_data_label +0+006c <[^>]*> lb a0,0\(a0\) +0+0070 <[^>]*> lw a0,0\(gp\) +[ ]*70: R_MIPS_GOT16 big_external_common +0+0074 <[^>]*> lb a0,0\(a0\) +0+0078 <[^>]*> lw a0,0\(gp\) +[ ]*78: R_MIPS_GOT16 small_external_common +0+007c <[^>]*> lb a0,0\(a0\) +0+0080 <[^>]*> lw a0,0\(gp\) +[ ]*80: R_MIPS_GOT16 .bss +0+0084 <[^>]*> addiu a0,a0,0 +[ ]*84: R_MIPS_LO16 .bss +0+0088 <[^>]*> lb a0,0\(a0\) +0+008c <[^>]*> lw a0,0\(gp\) +[ ]*8c: R_MIPS_GOT16 .bss +0+0090 <[^>]*> addiu a0,a0,1000 +[ ]*90: R_MIPS_LO16 .bss +0+0094 <[^>]*> lb a0,0\(a0\) +0+0098 <[^>]*> lw a0,0\(gp\) +[ ]*98: R_MIPS_GOT16 .data +0+009c <[^>]*> addiu a0,a0,0 +[ ]*9c: R_MIPS_LO16 .data +0+00a0 <[^>]*> lb a0,1\(a0\) +0+00a4 <[^>]*> lw a0,0\(gp\) +[ ]*a4: R_MIPS_GOT16 big_external_data_label +0+00a8 <[^>]*> lb a0,1\(a0\) +0+00ac <[^>]*> lw a0,0\(gp\) +[ ]*ac: R_MIPS_GOT16 small_external_data_label +0+00b0 <[^>]*> lb a0,1\(a0\) +0+00b4 <[^>]*> lw a0,0\(gp\) +[ ]*b4: R_MIPS_GOT16 big_external_common +0+00b8 <[^>]*> lb a0,1\(a0\) +0+00bc <[^>]*> lw a0,0\(gp\) +[ ]*bc: R_MIPS_GOT16 small_external_common +0+00c0 <[^>]*> lb a0,1\(a0\) +0+00c4 <[^>]*> lw a0,0\(gp\) +[ ]*c4: R_MIPS_GOT16 .bss +0+00c8 <[^>]*> addiu a0,a0,0 +[ ]*c8: R_MIPS_LO16 .bss +0+00cc <[^>]*> lb a0,1\(a0\) +0+00d0 <[^>]*> lw a0,0\(gp\) +[ ]*d0: R_MIPS_GOT16 .bss +0+00d4 <[^>]*> addiu a0,a0,1000 +[ ]*d4: R_MIPS_LO16 .bss +0+00d8 <[^>]*> lb a0,1\(a0\) +0+00dc <[^>]*> lw a0,0\(gp\) +[ ]*dc: R_MIPS_GOT16 .data +0+00e0 <[^>]*> addiu a0,a0,0 +[ ]*e0: R_MIPS_LO16 .data +0+00e4 <[^>]*> addu a0,a0,a1 +0+00e8 <[^>]*> lb a0,0\(a0\) +0+00ec <[^>]*> lw a0,0\(gp\) +[ ]*ec: R_MIPS_GOT16 big_external_data_label +0+00f0 <[^>]*> addu a0,a0,a1 +0+00f4 <[^>]*> lb a0,0\(a0\) +0+00f8 <[^>]*> lw a0,0\(gp\) +[ ]*f8: R_MIPS_GOT16 small_external_data_label +0+00fc <[^>]*> addu a0,a0,a1 +0+0100 <[^>]*> lb a0,0\(a0\) +0+0104 <[^>]*> lw a0,0\(gp\) +[ ]*104: R_MIPS_GOT16 big_external_common +0+0108 <[^>]*> addu a0,a0,a1 +0+010c <[^>]*> lb a0,0\(a0\) +0+0110 <[^>]*> lw a0,0\(gp\) +[ ]*110: R_MIPS_GOT16 small_external_common +0+0114 <[^>]*> addu a0,a0,a1 +0+0118 <[^>]*> lb a0,0\(a0\) +0+011c <[^>]*> lw a0,0\(gp\) +[ ]*11c: R_MIPS_GOT16 .bss +0+0120 <[^>]*> addiu a0,a0,0 +[ ]*120: R_MIPS_LO16 .bss +0+0124 <[^>]*> addu a0,a0,a1 +0+0128 <[^>]*> lb a0,0\(a0\) +0+012c <[^>]*> lw a0,0\(gp\) +[ ]*12c: R_MIPS_GOT16 .bss +0+0130 <[^>]*> addiu a0,a0,1000 +[ ]*130: R_MIPS_LO16 .bss +0+0134 <[^>]*> addu a0,a0,a1 +0+0138 <[^>]*> lb a0,0\(a0\) +0+013c <[^>]*> lw a0,0\(gp\) +[ ]*13c: R_MIPS_GOT16 .data +0+0140 <[^>]*> addiu a0,a0,0 +[ ]*140: R_MIPS_LO16 .data +0+0144 <[^>]*> addu a0,a0,a1 +0+0148 <[^>]*> lb a0,1\(a0\) +0+014c <[^>]*> lw a0,0\(gp\) +[ ]*14c: R_MIPS_GOT16 big_external_data_label +0+0150 <[^>]*> addu a0,a0,a1 +0+0154 <[^>]*> lb a0,1\(a0\) +0+0158 <[^>]*> lw a0,0\(gp\) +[ ]*158: R_MIPS_GOT16 small_external_data_label +0+015c <[^>]*> addu a0,a0,a1 +0+0160 <[^>]*> lb a0,1\(a0\) +0+0164 <[^>]*> lw a0,0\(gp\) +[ ]*164: R_MIPS_GOT16 big_external_common +0+0168 <[^>]*> addu a0,a0,a1 +0+016c <[^>]*> lb a0,1\(a0\) +0+0170 <[^>]*> lw a0,0\(gp\) +[ ]*170: R_MIPS_GOT16 small_external_common +0+0174 <[^>]*> addu a0,a0,a1 +0+0178 <[^>]*> lb a0,1\(a0\) +0+017c <[^>]*> lw a0,0\(gp\) +[ ]*17c: R_MIPS_GOT16 .bss +0+0180 <[^>]*> addiu a0,a0,0 +[ ]*180: R_MIPS_LO16 .bss +0+0184 <[^>]*> addu a0,a0,a1 +0+0188 <[^>]*> lb a0,1\(a0\) +0+018c <[^>]*> lw a0,0\(gp\) +[ ]*18c: R_MIPS_GOT16 .bss +0+0190 <[^>]*> addiu a0,a0,1000 +[ ]*190: R_MIPS_LO16 .bss +0+0194 <[^>]*> addu a0,a0,a1 +0+0198 <[^>]*> lb a0,1\(a0\) +0+019c <[^>]*> nop diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/lb-xgot-ilocks.d binutils-2.15.91.0.1/gas/testsuite/gas/mips/lb-xgot-ilocks.d --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/lb-xgot-ilocks.d 2003-05-15 13:42:25.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/lb-xgot-ilocks.d 2004-05-27 11:26:04.415199876 -0700 @@ -31,184 +31,172 @@ Disassembly of section \.text: 0+0050 <.*> lb a0,-23131\(a0\) 0+0054 <.*> lw a0,0\(gp\) 54: R_MIPS_GOT16 \.data -0+0058 <.*> nop -0+005c <.*> addiu a0,a0,0 - 5c: R_MIPS_LO16 \.data -0+0060 <.*> lb a0,0\(a0\) -0+0064 <.*> lui a0,0x0 - 64: R_MIPS_GOT_HI16 big_external_data_label -0+0068 <.*> addu a0,a0,gp -0+006c <.*> lw a0,0\(a0\) - 6c: R_MIPS_GOT_LO16 big_external_data_label -0+0070 <.*> lb a0,0\(a0\) -0+0074 <.*> lui a0,0x0 - 74: R_MIPS_GOT_HI16 small_external_data_label -0+0078 <.*> addu a0,a0,gp -0+007c <.*> lw a0,0\(a0\) - 7c: R_MIPS_GOT_LO16 small_external_data_label -0+0080 <.*> lb a0,0\(a0\) -0+0084 <.*> lui a0,0x0 - 84: R_MIPS_GOT_HI16 big_external_common -0+0088 <.*> addu a0,a0,gp -0+008c <.*> lw a0,0\(a0\) - 8c: R_MIPS_GOT_LO16 big_external_common -0+0090 <.*> lb a0,0\(a0\) -0+0094 <.*> lui a0,0x0 - 94: R_MIPS_GOT_HI16 small_external_common -0+0098 <.*> addu a0,a0,gp -0+009c <.*> lw a0,0\(a0\) - 9c: R_MIPS_GOT_LO16 small_external_common -0+00a0 <.*> lb a0,0\(a0\) -0+00a4 <.*> lw a0,0\(gp\) - a4: R_MIPS_GOT16 \.bss -0+00a8 <.*> nop -0+00ac <.*> addiu a0,a0,0 - ac: R_MIPS_LO16 \.bss -0+00b0 <.*> lb a0,0\(a0\) -0+00b4 <.*> lw a0,0\(gp\) - b4: R_MIPS_GOT16 \.bss -0+00b8 <.*> nop -0+00bc <.*> addiu a0,a0,1000 - bc: R_MIPS_LO16 \.bss -0+00c0 <.*> lb a0,0\(a0\) -0+00c4 <.*> lw a0,0\(gp\) - c4: R_MIPS_GOT16 \.data -0+00c8 <.*> nop -0+00cc <.*> addiu a0,a0,0 - cc: R_MIPS_LO16 \.data +0+0058 <.*> addiu a0,a0,0 + 58: R_MIPS_LO16 \.data +0+005c <.*> lb a0,0\(a0\) +0+0060 <.*> lui a0,0x0 + 60: R_MIPS_GOT_HI16 big_external_data_label +0+0064 <.*> addu a0,a0,gp +0+0068 <.*> lw a0,0\(a0\) + 68: R_MIPS_GOT_LO16 big_external_data_label +0+006c <.*> lb a0,0\(a0\) +0+0070 <.*> lui a0,0x0 + 70: R_MIPS_GOT_HI16 small_external_data_label +0+0074 <.*> addu a0,a0,gp +0+0078 <.*> lw a0,0\(a0\) + 78: R_MIPS_GOT_LO16 small_external_data_label +0+007c <.*> lb a0,0\(a0\) +0+0080 <.*> lui a0,0x0 + 80: R_MIPS_GOT_HI16 big_external_common +0+0084 <.*> addu a0,a0,gp +0+0088 <.*> lw a0,0\(a0\) + 88: R_MIPS_GOT_LO16 big_external_common +0+008c <.*> lb a0,0\(a0\) +0+0090 <.*> lui a0,0x0 + 90: R_MIPS_GOT_HI16 small_external_common +0+0094 <.*> addu a0,a0,gp +0+0098 <.*> lw a0,0\(a0\) + 98: R_MIPS_GOT_LO16 small_external_common +0+009c <.*> lb a0,0\(a0\) +0+00a0 <.*> lw a0,0\(gp\) + a0: R_MIPS_GOT16 \.bss +0+00a4 <.*> addiu a0,a0,0 + a4: R_MIPS_LO16 \.bss +0+00a8 <.*> lb a0,0\(a0\) +0+00ac <.*> lw a0,0\(gp\) + ac: R_MIPS_GOT16 \.bss +0+00b0 <.*> addiu a0,a0,1000 + b0: R_MIPS_LO16 \.bss +0+00b4 <.*> lb a0,0\(a0\) +0+00b8 <.*> lw a0,0\(gp\) + b8: R_MIPS_GOT16 \.data +0+00bc <.*> addiu a0,a0,0 + bc: R_MIPS_LO16 \.data +0+00c0 <.*> lb a0,1\(a0\) +0+00c4 <.*> lui a0,0x0 + c4: R_MIPS_GOT_HI16 big_external_data_label +0+00c8 <.*> addu a0,a0,gp +0+00cc <.*> lw a0,0\(a0\) + cc: R_MIPS_GOT_LO16 big_external_data_label 0+00d0 <.*> lb a0,1\(a0\) 0+00d4 <.*> lui a0,0x0 - d4: R_MIPS_GOT_HI16 big_external_data_label + d4: R_MIPS_GOT_HI16 small_external_data_label 0+00d8 <.*> addu a0,a0,gp 0+00dc <.*> lw a0,0\(a0\) - dc: R_MIPS_GOT_LO16 big_external_data_label + dc: R_MIPS_GOT_LO16 small_external_data_label 0+00e0 <.*> lb a0,1\(a0\) 0+00e4 <.*> lui a0,0x0 - e4: R_MIPS_GOT_HI16 small_external_data_label + e4: R_MIPS_GOT_HI16 big_external_common 0+00e8 <.*> addu a0,a0,gp 0+00ec <.*> lw a0,0\(a0\) - ec: R_MIPS_GOT_LO16 small_external_data_label + ec: R_MIPS_GOT_LO16 big_external_common 0+00f0 <.*> lb a0,1\(a0\) 0+00f4 <.*> lui a0,0x0 - f4: R_MIPS_GOT_HI16 big_external_common + f4: R_MIPS_GOT_HI16 small_external_common 0+00f8 <.*> addu a0,a0,gp 0+00fc <.*> lw a0,0\(a0\) - fc: R_MIPS_GOT_LO16 big_external_common + fc: R_MIPS_GOT_LO16 small_external_common 0+0100 <.*> lb a0,1\(a0\) -0+0104 <.*> lui a0,0x0 - 104: R_MIPS_GOT_HI16 small_external_common -0+0108 <.*> addu a0,a0,gp -0+010c <.*> lw a0,0\(a0\) - 10c: R_MIPS_GOT_LO16 small_external_common -0+0110 <.*> lb a0,1\(a0\) -0+0114 <.*> lw a0,0\(gp\) - 114: R_MIPS_GOT16 \.bss -0+0118 <.*> nop -0+011c <.*> addiu a0,a0,0 - 11c: R_MIPS_LO16 \.bss -0+0120 <.*> lb a0,1\(a0\) -0+0124 <.*> lw a0,0\(gp\) - 124: R_MIPS_GOT16 \.bss -0+0128 <.*> nop -0+012c <.*> addiu a0,a0,1000 - 12c: R_MIPS_LO16 \.bss -0+0130 <.*> lb a0,1\(a0\) -0+0134 <.*> lw a0,0\(gp\) - 134: R_MIPS_GOT16 \.data -0+0138 <.*> nop -0+013c <.*> addiu a0,a0,0 - 13c: R_MIPS_LO16 \.data -0+0140 <.*> addu a0,a0,a1 -0+0144 <.*> lb a0,0\(a0\) -0+0148 <.*> lui a0,0x0 - 148: R_MIPS_GOT_HI16 big_external_data_label -0+014c <.*> addu a0,a0,gp -0+0150 <.*> lw a0,0\(a0\) - 150: R_MIPS_GOT_LO16 big_external_data_label -0+0154 <.*> addu a0,a0,a1 -0+0158 <.*> lb a0,0\(a0\) -0+015c <.*> lui a0,0x0 - 15c: R_MIPS_GOT_HI16 small_external_data_label -0+0160 <.*> addu a0,a0,gp -0+0164 <.*> lw a0,0\(a0\) - 164: R_MIPS_GOT_LO16 small_external_data_label -0+0168 <.*> addu a0,a0,a1 -0+016c <.*> lb a0,0\(a0\) -0+0170 <.*> lui a0,0x0 - 170: R_MIPS_GOT_HI16 big_external_common -0+0174 <.*> addu a0,a0,gp -0+0178 <.*> lw a0,0\(a0\) - 178: R_MIPS_GOT_LO16 big_external_common -0+017c <.*> addu a0,a0,a1 -0+0180 <.*> lb a0,0\(a0\) -0+0184 <.*> lui a0,0x0 - 184: R_MIPS_GOT_HI16 small_external_common -0+0188 <.*> addu a0,a0,gp -0+018c <.*> lw a0,0\(a0\) - 18c: R_MIPS_GOT_LO16 small_external_common -0+0190 <.*> addu a0,a0,a1 -0+0194 <.*> lb a0,0\(a0\) -0+0198 <.*> lw a0,0\(gp\) - 198: R_MIPS_GOT16 \.bss -0+019c <.*> nop +0+0104 <.*> lw a0,0\(gp\) + 104: R_MIPS_GOT16 \.bss +0+0108 <.*> addiu a0,a0,0 + 108: R_MIPS_LO16 \.bss +0+010c <.*> lb a0,1\(a0\) +0+0110 <.*> lw a0,0\(gp\) + 110: R_MIPS_GOT16 \.bss +0+0114 <.*> addiu a0,a0,1000 + 114: R_MIPS_LO16 \.bss +0+0118 <.*> lb a0,1\(a0\) +0+011c <.*> lw a0,0\(gp\) + 11c: R_MIPS_GOT16 \.data +0+0120 <.*> addiu a0,a0,0 + 120: R_MIPS_LO16 \.data +0+0124 <.*> addu a0,a0,a1 +0+0128 <.*> lb a0,0\(a0\) +0+012c <.*> lui a0,0x0 + 12c: R_MIPS_GOT_HI16 big_external_data_label +0+0130 <.*> addu a0,a0,gp +0+0134 <.*> lw a0,0\(a0\) + 134: R_MIPS_GOT_LO16 big_external_data_label +0+0138 <.*> addu a0,a0,a1 +0+013c <.*> lb a0,0\(a0\) +0+0140 <.*> lui a0,0x0 + 140: R_MIPS_GOT_HI16 small_external_data_label +0+0144 <.*> addu a0,a0,gp +0+0148 <.*> lw a0,0\(a0\) + 148: R_MIPS_GOT_LO16 small_external_data_label +0+014c <.*> addu a0,a0,a1 +0+0150 <.*> lb a0,0\(a0\) +0+0154 <.*> lui a0,0x0 + 154: R_MIPS_GOT_HI16 big_external_common +0+0158 <.*> addu a0,a0,gp +0+015c <.*> lw a0,0\(a0\) + 15c: R_MIPS_GOT_LO16 big_external_common +0+0160 <.*> addu a0,a0,a1 +0+0164 <.*> lb a0,0\(a0\) +0+0168 <.*> lui a0,0x0 + 168: R_MIPS_GOT_HI16 small_external_common +0+016c <.*> addu a0,a0,gp +0+0170 <.*> lw a0,0\(a0\) + 170: R_MIPS_GOT_LO16 small_external_common +0+0174 <.*> addu a0,a0,a1 +0+0178 <.*> lb a0,0\(a0\) +0+017c <.*> lw a0,0\(gp\) + 17c: R_MIPS_GOT16 \.bss +0+0180 <.*> addiu a0,a0,0 + 180: R_MIPS_LO16 \.bss +0+0184 <.*> addu a0,a0,a1 +0+0188 <.*> lb a0,0\(a0\) +0+018c <.*> lw a0,0\(gp\) + 18c: R_MIPS_GOT16 \.bss +0+0190 <.*> addiu a0,a0,1000 + 190: R_MIPS_LO16 \.bss +0+0194 <.*> addu a0,a0,a1 +0+0198 <.*> lb a0,0\(a0\) +0+019c <.*> lw a0,0\(gp\) + 19c: R_MIPS_GOT16 \.data 0+01a0 <.*> addiu a0,a0,0 - 1a0: R_MIPS_LO16 \.bss + 1a0: R_MIPS_LO16 \.data 0+01a4 <.*> addu a0,a0,a1 -0+01a8 <.*> lb a0,0\(a0\) -0+01ac <.*> lw a0,0\(gp\) - 1ac: R_MIPS_GOT16 \.bss -0+01b0 <.*> nop -0+01b4 <.*> addiu a0,a0,1000 - 1b4: R_MIPS_LO16 \.bss +0+01a8 <.*> lb a0,1\(a0\) +0+01ac <.*> lui a0,0x0 + 1ac: R_MIPS_GOT_HI16 big_external_data_label +0+01b0 <.*> addu a0,a0,gp +0+01b4 <.*> lw a0,0\(a0\) + 1b4: R_MIPS_GOT_LO16 big_external_data_label 0+01b8 <.*> addu a0,a0,a1 -0+01bc <.*> lb a0,0\(a0\) -0+01c0 <.*> lw a0,0\(gp\) - 1c0: R_MIPS_GOT16 \.data -0+01c4 <.*> nop -0+01c8 <.*> addiu a0,a0,0 - 1c8: R_MIPS_LO16 \.data +0+01bc <.*> lb a0,1\(a0\) +0+01c0 <.*> lui a0,0x0 + 1c0: R_MIPS_GOT_HI16 small_external_data_label +0+01c4 <.*> addu a0,a0,gp +0+01c8 <.*> lw a0,0\(a0\) + 1c8: R_MIPS_GOT_LO16 small_external_data_label 0+01cc <.*> addu a0,a0,a1 0+01d0 <.*> lb a0,1\(a0\) 0+01d4 <.*> lui a0,0x0 - 1d4: R_MIPS_GOT_HI16 big_external_data_label + 1d4: R_MIPS_GOT_HI16 big_external_common 0+01d8 <.*> addu a0,a0,gp 0+01dc <.*> lw a0,0\(a0\) - 1dc: R_MIPS_GOT_LO16 big_external_data_label + 1dc: R_MIPS_GOT_LO16 big_external_common 0+01e0 <.*> addu a0,a0,a1 0+01e4 <.*> lb a0,1\(a0\) 0+01e8 <.*> lui a0,0x0 - 1e8: R_MIPS_GOT_HI16 small_external_data_label + 1e8: R_MIPS_GOT_HI16 small_external_common 0+01ec <.*> addu a0,a0,gp 0+01f0 <.*> lw a0,0\(a0\) - 1f0: R_MIPS_GOT_LO16 small_external_data_label + 1f0: R_MIPS_GOT_LO16 small_external_common 0+01f4 <.*> addu a0,a0,a1 0+01f8 <.*> lb a0,1\(a0\) -0+01fc <.*> lui a0,0x0 - 1fc: R_MIPS_GOT_HI16 big_external_common -0+0200 <.*> addu a0,a0,gp -0+0204 <.*> lw a0,0\(a0\) - 204: R_MIPS_GOT_LO16 big_external_common -0+0208 <.*> addu a0,a0,a1 -0+020c <.*> lb a0,1\(a0\) -0+0210 <.*> lui a0,0x0 - 210: R_MIPS_GOT_HI16 small_external_common -0+0214 <.*> addu a0,a0,gp -0+0218 <.*> lw a0,0\(a0\) - 218: R_MIPS_GOT_LO16 small_external_common -0+021c <.*> addu a0,a0,a1 -0+0220 <.*> lb a0,1\(a0\) -0+0224 <.*> lw a0,0\(gp\) - 224: R_MIPS_GOT16 \.bss -0+0228 <.*> nop -0+022c <.*> addiu a0,a0,0 - 22c: R_MIPS_LO16 \.bss -0+0230 <.*> addu a0,a0,a1 -0+0234 <.*> lb a0,1\(a0\) -0+0238 <.*> lw a0,0\(gp\) - 238: R_MIPS_GOT16 \.bss -0+023c <.*> nop -0+0240 <.*> addiu a0,a0,1000 - 240: R_MIPS_LO16 \.bss -0+0244 <.*> addu a0,a0,a1 -0+0248 <.*> lb a0,1\(a0\) -0+024c <.*> nop +0+01fc <.*> lw a0,0\(gp\) + 1fc: R_MIPS_GOT16 \.bss +0+0200 <.*> addiu a0,a0,0 + 200: R_MIPS_LO16 \.bss +0+0204 <.*> addu a0,a0,a1 +0+0208 <.*> lb a0,1\(a0\) +0+020c <.*> lw a0,0\(gp\) + 20c: R_MIPS_GOT16 \.bss +0+0210 <.*> addiu a0,a0,1000 + 210: R_MIPS_LO16 \.bss +0+0214 <.*> addu a0,a0,a1 +0+0218 <.*> lb a0,1\(a0\) +0+021c <.*> nop diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/ld-empic.d binutils-2.15.91.0.1/gas/testsuite/gas/mips/ld-empic.d --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/ld-empic.d 2003-05-15 13:42:25.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/ld-empic.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,186 +0,0 @@ -#objdump: -dr --prefix-addresses -mmips:3000 -#name: MIPS ld-empic -#as: -32 -mips1 -membedded-pic --defsym EMPIC=1 -#source: ld-pic.s - -# Test the ld macro with -membedded-pic. - -.*: +file format .*mips.* - -Disassembly of section .text: -0+0000 <[^>]*> lw a0,0\(zero\) -0+0004 <[^>]*> lw a1,4\(zero\) -0+0008 <[^>]*> lw a0,1\(zero\) -0+000c <[^>]*> lw a1,5\(zero\) -0+0010 <[^>]*> lui at,0x1 -0+0014 <[^>]*> lw a0,-32768\(at\) -0+0018 <[^>]*> lw a1,-32764\(at\) -0+001c <[^>]*> lw a0,-32768\(zero\) -0+0020 <[^>]*> lw a1,-32764\(zero\) -0+0024 <[^>]*> lui at,0x1 -0+0028 <[^>]*> lw a0,0\(at\) -0+002c <[^>]*> lw a1,4\(at\) -0+0030 <[^>]*> lui at,0x2 -0+0034 <[^>]*> lw a0,-23131\(at\) -0+0038 <[^>]*> lw a1,-23127\(at\) -0+003c <[^>]*> nop -0+0040 <[^>]*> lw a0,0\(a1\) -0+0044 <[^>]*> lw a1,4\(a1\) -0+0048 <[^>]*> nop -0+004c <[^>]*> lw a0,1\(a1\) -0+0050 <[^>]*> lw a1,5\(a1\) -0+0054 <[^>]*> lui at,0x1 -0+0058 <[^>]*> addu at,a1,at -0+005c <[^>]*> lw a0,-32768\(at\) -0+0060 <[^>]*> lw a1,-32764\(at\) -0+0064 <[^>]*> nop -0+0068 <[^>]*> lw a0,-32768\(a1\) -0+006c <[^>]*> lw a1,-32764\(a1\) -0+0070 <[^>]*> lui at,0x1 -0+0074 <[^>]*> addu at,a1,at -0+0078 <[^>]*> lw a0,0\(at\) -0+007c <[^>]*> lw a1,4\(at\) -0+0080 <[^>]*> lui at,0x2 -0+0084 <[^>]*> addu at,a1,at -0+0088 <[^>]*> lw a0,-23131\(at\) -0+008c <[^>]*> lw a1,-23127\(at\) -0+0090 <[^>]*> lw a0,-16384\(gp\) -[ ]*90: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.* -0+0094 <[^>]*> lw a1,-16380\(gp\) -[ ]*94: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.* -0+0098 <[^>]*> lw a0,0\(gp\) -[ ]*98: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label -0+009c <[^>]*> lw a1,4\(gp\) -[ ]*9c: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label -0+00a0 <[^>]*> lw a0,0\(gp\) -[ ]*a0: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label -0+00a4 <[^>]*> lw a1,4\(gp\) -[ ]*a4: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label -0+00a8 <[^>]*> lw a0,0\(gp\) -[ ]*a8: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common -0+00ac <[^>]*> lw a1,4\(gp\) -[ ]*ac: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common -0+00b0 <[^>]*> lw a0,0\(gp\) -[ ]*b0: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common -0+00b4 <[^>]*> lw a1,4\(gp\) -[ ]*b4: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common -0+00b8 <[^>]*> lw a0,-16384\(gp\) -[ ]*b8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+00bc <[^>]*> lw a1,-16380\(gp\) -[ ]*bc: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+00c0 <[^>]*> lw a0,-15384\(gp\) -[ ]*c0: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+00c4 <[^>]*> lw a1,-15380\(gp\) -[ ]*c4: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+00c8 <[^>]*> lw a0,-16383\(gp\) -[ ]*c8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.* -0+00cc <[^>]*> lw a1,-16379\(gp\) -[ ]*cc: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.* -0+00d0 <[^>]*> lw a0,1\(gp\) -[ ]*d0: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label -0+00d4 <[^>]*> lw a1,5\(gp\) -[ ]*d4: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label -0+00d8 <[^>]*> lw a0,1\(gp\) -[ ]*d8: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label -0+00dc <[^>]*> lw a1,5\(gp\) -[ ]*dc: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label -0+00e0 <[^>]*> lw a0,1\(gp\) -[ ]*e0: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common -0+00e4 <[^>]*> lw a1,5\(gp\) -[ ]*e4: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common -0+00e8 <[^>]*> lw a0,1\(gp\) -[ ]*e8: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common -0+00ec <[^>]*> lw a1,5\(gp\) -[ ]*ec: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common -0+00f0 <[^>]*> lw a0,-16383\(gp\) -[ ]*f0: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+00f4 <[^>]*> lw a1,-16379\(gp\) -[ ]*f4: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+00f8 <[^>]*> lw a0,-15383\(gp\) -[ ]*f8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+00fc <[^>]*> lw a1,-15379\(gp\) -[ ]*fc: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+0100 <[^>]*> nop -0+0104 <[^>]*> addu at,a1,gp -0+0108 <[^>]*> lw a0,-16384\(at\) -[ ]*108: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.* -0+010c <[^>]*> lw a1,-16380\(at\) -[ ]*10c: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.* -0+0110 <[^>]*> nop -0+0114 <[^>]*> addu at,a1,gp -0+0118 <[^>]*> lw a0,0\(at\) -[ ]*118: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label -0+011c <[^>]*> lw a1,4\(at\) -[ ]*11c: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label -0+0120 <[^>]*> nop -0+0124 <[^>]*> addu at,a1,gp -0+0128 <[^>]*> lw a0,0\(at\) -[ ]*128: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label -0+012c <[^>]*> lw a1,4\(at\) -[ ]*12c: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label -0+0130 <[^>]*> nop -0+0134 <[^>]*> addu at,a1,gp -0+0138 <[^>]*> lw a0,0\(at\) -[ ]*138: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common -0+013c <[^>]*> lw a1,4\(at\) -[ ]*13c: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common -0+0140 <[^>]*> nop -0+0144 <[^>]*> addu at,a1,gp -0+0148 <[^>]*> lw a0,0\(at\) -[ ]*148: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common -0+014c <[^>]*> lw a1,4\(at\) -[ ]*14c: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common -0+0150 <[^>]*> nop -0+0154 <[^>]*> addu at,a1,gp -0+0158 <[^>]*> lw a0,-16384\(at\) -[ ]*158: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+015c <[^>]*> lw a1,-16380\(at\) -[ ]*15c: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+0160 <[^>]*> nop -0+0164 <[^>]*> addu at,a1,gp -0+0168 <[^>]*> lw a0,-15384\(at\) -[ ]*168: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+016c <[^>]*> lw a1,-15380\(at\) -[ ]*16c: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+0170 <[^>]*> nop -0+0174 <[^>]*> addu at,a1,gp -0+0178 <[^>]*> lw a0,-16383\(at\) -[ ]*178: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.* -0+017c <[^>]*> lw a1,-16379\(at\) -[ ]*17c: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.* -0+0180 <[^>]*> nop -0+0184 <[^>]*> addu at,a1,gp -0+0188 <[^>]*> lw a0,1\(at\) -[ ]*188: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label -0+018c <[^>]*> lw a1,5\(at\) -[ ]*18c: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label -0+0190 <[^>]*> nop -0+0194 <[^>]*> addu at,a1,gp -0+0198 <[^>]*> lw a0,1\(at\) -[ ]*198: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label -0+019c <[^>]*> lw a1,5\(at\) -[ ]*19c: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label -0+01a0 <[^>]*> nop -0+01a4 <[^>]*> addu at,a1,gp -0+01a8 <[^>]*> lw a0,1\(at\) -[ ]*1a8: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common -0+01ac <[^>]*> lw a1,5\(at\) -[ ]*1ac: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common -0+01b0 <[^>]*> nop -0+01b4 <[^>]*> addu at,a1,gp -0+01b8 <[^>]*> lw a0,1\(at\) -[ ]*1b8: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common -0+01bc <[^>]*> lw a1,5\(at\) -[ ]*1bc: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common -0+01c0 <[^>]*> nop -0+01c4 <[^>]*> addu at,a1,gp -0+01c8 <[^>]*> lw a0,-16383\(at\) -[ ]*1c8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+01cc <[^>]*> lw a1,-16379\(at\) -[ ]*1cc: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+01d0 <[^>]*> nop -0+01d4 <[^>]*> addu at,a1,gp -0+01d8 <[^>]*> lw a0,-15383\(at\) -[ ]*1d8: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+01dc <[^>]*> lw a1,-15379\(at\) -[ ]*1dc: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/ld-pic.s binutils-2.15.91.0.1/gas/testsuite/gas/mips/ld-pic.s --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/ld-pic.s 1999-06-03 11:02:03.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/ld-pic.s 2004-05-27 11:26:04.423198842 -0700 @@ -54,7 +54,5 @@ data_label: ld $4,small_local_common+1($5) # Round to a 16 byte boundary, for ease in testing multiple targets. - .ifndef EMPIC nop nop - .endif diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/lif-empic.d binutils-2.15.91.0.1/gas/testsuite/gas/mips/lif-empic.d --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/lif-empic.d 2003-05-15 13:42:25.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/lif-empic.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,24 +0,0 @@ -#objdump: -dr --prefix-addresses -mmips:3000 -#name: MIPS lifloat-empic -#as: -32 -mips1 -membedded-pic --defsym EMPIC=1 -#source: lifloat.s - -# Test the li.d and li.s macros with -membedded-pic. - -.*: +file format .*mips.* - -Disassembly of section .text: -0+0000 <[^>]*> addiu at,gp,-16384 -[ ]*0: [A-Z0-9_]*GPREL[A-Z0-9_]* .rdata.* -0+0004 <[^>]*> lw a0,0\(at\) -0+0008 <[^>]*> lw a1,4\(at\) -0+000c <[^>]*> lwc1 \$f[45],-16368\(gp\) -[ ]*c: [A-Z0-9_]*LITERAL[A-Z0-9_]* .lit8.* -0+0010 <[^>]*> lwc1 \$f[45],-16364\(gp\) -[ ]*10: [A-Z0-9_]*LITERAL[A-Z0-9_]* .lit8.* -0+0014 <[^>]*> lui a0,0x3f8f -0+0018 <[^>]*> ori a0,a0,0xcd36 -0+001c <[^>]*> lui at,0x3f8f -0+0020 <[^>]*> ori at,at,0xcd36 -0+0024 <[^>]*> mtc1 at,\$f4 - ... diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/lifloat.s binutils-2.15.91.0.1/gas/testsuite/gas/mips/lifloat.s --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/lifloat.s 1999-06-03 11:02:03.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/lifloat.s 2004-05-27 11:26:04.429198066 -0700 @@ -18,7 +18,3 @@ foo: nop nop .endif - .ifdef EMPIC - nop - nop - .endif diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/mips-abi32-pic.d binutils-2.15.91.0.1/gas/testsuite/gas/mips/mips-abi32-pic.d --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/mips-abi32-pic.d 2001-08-10 14:08:01.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/mips-abi32-pic.d 2004-05-27 11:26:04.439196773 -0700 @@ -15,103 +15,85 @@ Disassembly of section .text: 14: 3c041234 lui a0,0x1234 18: 34845678 ori a0,a0,0x5678 1c: 8f840000 lw a0,0\(gp\) - 20: 00000000 nop - 24: 24840000 addiu a0,a0,0 - 28: 8f840000 lw a0,0\(gp\) - 2c: 00000000 nop - 30: 24840000 addiu a0,a0,0 - 34: 8f840000 lw a0,0\(gp\) + 20: 24840000 addiu a0,a0,0 + 24: 8f840000 lw a0,0\(gp\) + 28: 24840000 addiu a0,a0,0 + 2c: 8f840000 lw a0,0\(gp\) + 30: 2484015c addiu a0,a0,348 + 34: 10000049 b 15c <[^>]*> 38: 00000000 nop - 3c: 248401a4 addiu a0,a0,420 - 40: 10000058 b 1a4 <[^>]*> - 44: 00000000 nop - 48: 8f990000 lw t9,0\(gp\) - 4c: 00000000 nop - 50: 273901a4 addiu t9,t9,420 - 54: 0320f809 jalr t9 - 58: 00000000 nop - 5c: 8fbc0008 lw gp,8\(sp\) - 60: 8f840000 lw a0,0\(gp\) - 64: 00000000 nop - 68: 24840000 addiu a0,a0,0 - 6c: 8c840000 lw a0,0\(a0\) - 70: 8f840000 lw a0,0\(gp\) - 74: 00000000 nop - 78: 24840000 addiu a0,a0,0 - 7c: 8c840000 lw a0,0\(a0\) - 80: 8f840000 lw a0,0\(gp\) - 84: 00000000 nop - 88: 248401a4 addiu a0,a0,420 - 8c: 8c840000 lw a0,0\(a0\) - 90: 8f810000 lw at,0\(gp\) - 94: 00000000 nop - 98: 8c240000 lw a0,0\(at\) - 9c: 8c250004 lw a1,4\(at\) - a0: 8f810000 lw at,0\(gp\) - a4: 00000000 nop - a8: 8c240000 lw a0,0\(at\) - ac: 8c250004 lw a1,4\(at\) + 3c: 8f990000 lw t9,0\(gp\) + 40: 2739015c addiu t9,t9,348 + 44: 0320f809 jalr t9 + 48: 00000000 nop + 4c: 8fbc0008 lw gp,8\(sp\) + 50: 8f840000 lw a0,0\(gp\) + 54: 24840000 addiu a0,a0,0 + 58: 8c840000 lw a0,0\(a0\) + 5c: 8f840000 lw a0,0\(gp\) + 60: 24840000 addiu a0,a0,0 + 64: 8c840000 lw a0,0\(a0\) + 68: 8f840000 lw a0,0\(gp\) + 6c: 2484015c addiu a0,a0,348 + 70: 8c840000 lw a0,0\(a0\) + 74: 8f810000 lw at,0\(gp\) + 78: 8c240000 lw a0,0\(at\) + 7c: 8c250004 lw a1,4\(at\) + 80: 8f810000 lw at,0\(gp\) + 84: 8c240000 lw a0,0\(at\) + 88: 8c250004 lw a1,4\(at\) + 8c: 8f810000 lw at,0\(gp\) + 90: 8c24015c lw a0,348\(at\) + 94: 8c250160 lw a1,352\(at\) + 98: 8f810000 lw at,0\(gp\) + 9c: 24210000 addiu at,at,0 + a0: ac240000 sw a0,0\(at\) + a4: 8f810000 lw at,0\(gp\) + a8: 24210000 addiu at,at,0 + ac: ac240000 sw a0,0\(at\) b0: 8f810000 lw at,0\(gp\) - b4: 00000000 nop - b8: 8c2401a4 lw a0,420\(at\) - bc: 8c2501a8 lw a1,424\(at\) - c0: 8f810000 lw at,0\(gp\) - c4: 00000000 nop - c8: 24210000 addiu at,at,0 - cc: ac240000 sw a0,0\(at\) - d0: 8f810000 lw at,0\(gp\) - d4: 00000000 nop - d8: 24210000 addiu at,at,0 - dc: ac240000 sw a0,0\(at\) + b4: ac240000 sw a0,0\(at\) + b8: ac250004 sw a1,4\(at\) + bc: 8f810000 lw at,0\(gp\) + c0: ac240000 sw a0,0\(at\) + c4: ac250004 sw a1,4\(at\) + c8: 8f810000 lw at,0\(gp\) + cc: 24210000 addiu at,at,0 + d0: 80240000 lb a0,0\(at\) + d4: 90210001 lbu at,1\(at\) + d8: 00042200 sll a0,a0,0x8 + dc: 00812025 or a0,a0,at e0: 8f810000 lw at,0\(gp\) - e4: 00000000 nop - e8: ac240000 sw a0,0\(at\) - ec: ac250004 sw a1,4\(at\) - f0: 8f810000 lw at,0\(gp\) - f4: 00000000 nop - f8: ac240000 sw a0,0\(at\) - fc: ac250004 sw a1,4\(at\) + e4: 24210000 addiu at,at,0 + e8: a0240001 sb a0,1\(at\) + ec: 00042202 srl a0,a0,0x8 + f0: a0240000 sb a0,0\(at\) + f4: 90210001 lbu at,1\(at\) + f8: 00042200 sll a0,a0,0x8 + fc: 00812025 or a0,a0,at 100: 8f810000 lw at,0\(gp\) - 104: 00000000 nop - 108: 24210000 addiu at,at,0 - 10c: 80240000 lb a0,0\(at\) - 110: 90210001 lbu at,1\(at\) - 114: 00042200 sll a0,a0,0x8 - 118: 00812025 or a0,a0,at - 11c: 8f810000 lw at,0\(gp\) - 120: 00000000 nop - 124: 24210000 addiu at,at,0 - 128: a0240001 sb a0,1\(at\) - 12c: 00042202 srl a0,a0,0x8 - 130: a0240000 sb a0,0\(at\) - 134: 90210001 lbu at,1\(at\) - 138: 00042200 sll a0,a0,0x8 - 13c: 00812025 or a0,a0,at + 104: 24210000 addiu at,at,0 + 108: 88240000 lwl a0,0\(at\) + 10c: 98240003 lwr a0,3\(at\) + 110: 8f810000 lw at,0\(gp\) + 114: 24210000 addiu at,at,0 + 118: a8240000 swl a0,0\(at\) + 11c: b8240003 swr a0,3\(at\) + 120: 3c043ff0 lui a0,0x3ff0 + 124: 00002821 move a1,zero + 128: 8f810000 lw at,0\(gp\) + 12c: 8c240000 lw a0,0\(at\) + 130: 8c250004 lw a1,4\(at\) + 134: 3c013ff0 lui at,0x3ff0 + 138: 44810800 mtc1 at,\$f1 + 13c: 44800000 mtc1 zero,\$f0 140: 8f810000 lw at,0\(gp\) - 144: 00000000 nop - 148: 24210000 addiu at,at,0 - 14c: 88240000 lwl a0,0\(at\) - 150: 98240003 lwr a0,3\(at\) - 154: 8f810000 lw at,0\(gp\) - 158: 00000000 nop - 15c: 24210000 addiu at,at,0 - 160: a8240000 swl a0,0\(at\) - 164: b8240003 swr a0,3\(at\) - 168: 3c043ff0 lui a0,0x3ff0 - 16c: 00002821 move a1,zero - 170: 8f810000 lw at,0\(gp\) - 174: 8c240000 lw a0,0\(at\) - 178: 8c250004 lw a1,4\(at\) - 17c: 3c013ff0 lui at,0x3ff0 - 180: 44810800 mtc1 at,\$f1 - 184: 44800000 mtc1 zero,\$f0 - 188: 8f810000 lw at,0\(gp\) - 18c: d4200008 ldc1 \$f0,8\(at\) - 190: 24a40064 addiu a0,a1,100 - 194: 2c840001 sltiu a0,a0,1 - 198: 24a40064 addiu a0,a1,100 - 19c: 0004202b sltu a0,zero,a0 - 1a0: 00a02021 move a0,a1 + 144: d4200008 ldc1 \$f0,8\(at\) + 148: 24a40064 addiu a0,a1,100 + 14c: 2c840001 sltiu a0,a0,1 + 150: 24a40064 addiu a0,a1,100 + 154: 0004202b sltu a0,zero,a0 + 158: 00a02021 move a0,a1 -0+01a4 <[^>]*>: +0+015c <[^>]*>: ... diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/mips-abi32-pic2.d binutils-2.15.91.0.1/gas/testsuite/gas/mips/mips-abi32-pic2.d --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/mips-abi32-pic2.d 2002-09-27 08:33:09.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/mips-abi32-pic2.d 2004-05-27 11:26:04.449195480 -0700 @@ -13,62 +13,59 @@ Disassembly of section \.text: 0+00c <[^>]*> afbc0008 sw gp,8\(sp\) 0+010 <[^>]*> 8f990000 lw t9,0\(gp\) 10: R_MIPS_GOT16 \.text -0+014 <[^>]*> 00000000 nop -0+018 <[^>]*> 273900d8 addiu t9,t9,216 - 18: R_MIPS_LO16 \.text -0+01c <[^>]*> 0320f809 jalr t9 -0+020 <[^>]*> 00000000 nop -0+024 <[^>]*> 8fbc0008 lw gp,8\(sp\) -0+028 <[^>]*> 00000000 nop -0+02c <[^>]*> 0320f809 jalr t9 -0+030 <[^>]*> 00000000 nop -0+034 <[^>]*> 8fbc0008 lw gp,8\(sp\) -0+038 <[^>]*> 3c1c0000 lui gp,0x0 - 38: R_MIPS_HI16 _gp_disp -0+03c <[^>]*> 279c0000 addiu gp,gp,0 - 3c: R_MIPS_LO16 _gp_disp -0+040 <[^>]*> 0399e021 addu gp,gp,t9 -0+044 <[^>]*> 3c010001 lui at,0x1 -0+048 <[^>]*> 003d0821 addu at,at,sp -0+04c <[^>]*> ac3c8000 sw gp,-32768\(at\) -0+050 <[^>]*> 8f990000 lw t9,0\(gp\) - 50: R_MIPS_GOT16 \.text -0+054 <[^>]*> 00000000 nop -0+058 <[^>]*> 273900d8 addiu t9,t9,216 - 58: R_MIPS_LO16 \.text -0+05c <[^>]*> 0320f809 jalr t9 -0+060 <[^>]*> 00000000 nop -0+064 <[^>]*> 3c010001 lui at,0x1 -0+068 <[^>]*> 003d0821 addu at,at,sp -0+06c <[^>]*> 8c3c8000 lw gp,-32768\(at\) +0+014 <[^>]*> 273900cc addiu t9,t9,204 + 14: R_MIPS_LO16 \.text +0+018 <[^>]*> 0320f809 jalr t9 +0+01c <[^>]*> 00000000 nop +0+020 <[^>]*> 8fbc0008 lw gp,8\(sp\) +0+024 <[^>]*> 00000000 nop +0+028 <[^>]*> 0320f809 jalr t9 +0+02c <[^>]*> 00000000 nop +0+030 <[^>]*> 8fbc0008 lw gp,8\(sp\) +0+034 <[^>]*> 3c1c0000 lui gp,0x0 + 34: R_MIPS_HI16 _gp_disp +0+038 <[^>]*> 279c0000 addiu gp,gp,0 + 38: R_MIPS_LO16 _gp_disp +0+03c <[^>]*> 0399e021 addu gp,gp,t9 +0+040 <[^>]*> 3c010001 lui at,0x1 +0+044 <[^>]*> 003d0821 addu at,at,sp +0+048 <[^>]*> ac3c8000 sw gp,-32768\(at\) +0+04c <[^>]*> 8f990000 lw t9,0\(gp\) + 4c: R_MIPS_GOT16 \.text +0+050 <[^>]*> 273900cc addiu t9,t9,204 + 50: R_MIPS_LO16 \.text +0+054 <[^>]*> 0320f809 jalr t9 +0+058 <[^>]*> 00000000 nop +0+05c <[^>]*> 3c010001 lui at,0x1 +0+060 <[^>]*> 003d0821 addu at,at,sp +0+064 <[^>]*> 8c3c8000 lw gp,-32768\(at\) +0+068 <[^>]*> 00000000 nop +0+06c <[^>]*> 0320f809 jalr t9 0+070 <[^>]*> 00000000 nop -0+074 <[^>]*> 0320f809 jalr t9 -0+078 <[^>]*> 00000000 nop -0+07c <[^>]*> 3c010001 lui at,0x1 -0+080 <[^>]*> 003d0821 addu at,at,sp -0+084 <[^>]*> 8c3c8000 lw gp,-32768\(at\) -0+088 <[^>]*> 3c1c0000 lui gp,0x0 - 88: R_MIPS_HI16 _gp_disp -0+08c <[^>]*> 279c0000 addiu gp,gp,0 - 8c: R_MIPS_LO16 _gp_disp -0+090 <[^>]*> 0399e021 addu gp,gp,t9 -0+094 <[^>]*> 3c010001 lui at,0x1 -0+098 <[^>]*> 003d0821 addu at,at,sp -0+09c <[^>]*> ac3c0000 sw gp,0\(at\) -0+0a0 <[^>]*> 8f990000 lw t9,0\(gp\) - a0: R_MIPS_GOT16 \.text +0+074 <[^>]*> 3c010001 lui at,0x1 +0+078 <[^>]*> 003d0821 addu at,at,sp +0+07c <[^>]*> 8c3c8000 lw gp,-32768\(at\) +0+080 <[^>]*> 3c1c0000 lui gp,0x0 + 80: R_MIPS_HI16 _gp_disp +0+084 <[^>]*> 279c0000 addiu gp,gp,0 + 84: R_MIPS_LO16 _gp_disp +0+088 <[^>]*> 0399e021 addu gp,gp,t9 +0+08c <[^>]*> 3c010001 lui at,0x1 +0+090 <[^>]*> 003d0821 addu at,at,sp +0+094 <[^>]*> ac3c0000 sw gp,0\(at\) +0+098 <[^>]*> 8f990000 lw t9,0\(gp\) + 98: R_MIPS_GOT16 \.text +0+09c <[^>]*> 273900cc addiu t9,t9,204 + 9c: R_MIPS_LO16 \.text +0+0a0 <[^>]*> 0320f809 jalr t9 0+0a4 <[^>]*> 00000000 nop -0+0a8 <[^>]*> 273900d8 addiu t9,t9,216 - a8: R_MIPS_LO16 \.text -0+0ac <[^>]*> 0320f809 jalr t9 -0+0b0 <[^>]*> 00000000 nop -0+0b4 <[^>]*> 3c010001 lui at,0x1 -0+0b8 <[^>]*> 003d0821 addu at,at,sp -0+0bc <[^>]*> 8c3c0000 lw gp,0\(at\) -0+0c0 <[^>]*> 00000000 nop -0+0c4 <[^>]*> 0320f809 jalr t9 -0+0c8 <[^>]*> 00000000 nop -0+0cc <[^>]*> 3c010001 lui at,0x1 -0+0d0 <[^>]*> 003d0821 addu at,at,sp -0+0d4 <[^>]*> 8c3c0000 lw gp,0\(at\) +0+0a8 <[^>]*> 3c010001 lui at,0x1 +0+0ac <[^>]*> 003d0821 addu at,at,sp +0+0b0 <[^>]*> 8c3c0000 lw gp,0\(at\) +0+0b4 <[^>]*> 00000000 nop +0+0b8 <[^>]*> 0320f809 jalr t9 +0+0bc <[^>]*> 00000000 nop +0+0c0 <[^>]*> 3c010001 lui at,0x1 +0+0c4 <[^>]*> 003d0821 addu at,at,sp +0+0c8 <[^>]*> 8c3c0000 lw gp,0\(at\) \.\.\. diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/mips-gp32-fp32-pic.d binutils-2.15.91.0.1/gas/testsuite/gas/mips/mips-gp32-fp32-pic.d --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/mips-gp32-fp32-pic.d 2003-05-15 13:42:25.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/mips-gp32-fp32-pic.d 2004-05-27 11:26:04.455194704 -0700 @@ -15,103 +15,85 @@ Disassembly of section .text: 14: 3c041234 lui a0,0x1234 18: 34845678 ori a0,a0,0x5678 1c: 8f840000 lw a0,0\(gp\) - 20: 00000000 nop - 24: 24840000 addiu a0,a0,0 - 28: 8f840000 lw a0,0\(gp\) - 2c: 00000000 nop - 30: 24840000 addiu a0,a0,0 - 34: 8f840000 lw a0,0\(gp\) + 20: 24840000 addiu a0,a0,0 + 24: 8f840000 lw a0,0\(gp\) + 28: 24840000 addiu a0,a0,0 + 2c: 8f840000 lw a0,0\(gp\) + 30: 2484015c addiu a0,a0,348 + 34: 10000049 b 15c <[^>]*> 38: 00000000 nop - 3c: 248401a4 addiu a0,a0,420 - 40: 10000058 b 1a4 <[^>]*> - 44: 00000000 nop - 48: 8f990000 lw t9,0\(gp\) - 4c: 00000000 nop - 50: 273901a4 addiu t9,t9,420 - 54: 0320f809 jalr t9 - 58: 00000000 nop - 5c: 8fbc0008 lw gp,8\(sp\) - 60: 8f840000 lw a0,0\(gp\) - 64: 00000000 nop - 68: 24840000 addiu a0,a0,0 - 6c: 8c840000 lw a0,0\(a0\) - 70: 8f840000 lw a0,0\(gp\) - 74: 00000000 nop - 78: 24840000 addiu a0,a0,0 - 7c: 8c840000 lw a0,0\(a0\) - 80: 8f840000 lw a0,0\(gp\) - 84: 00000000 nop - 88: 248401a4 addiu a0,a0,420 - 8c: 8c840000 lw a0,0\(a0\) - 90: 8f810000 lw at,0\(gp\) - 94: 00000000 nop - 98: 8c240000 lw a0,0\(at\) - 9c: 8c250004 lw a1,4\(at\) - a0: 8f810000 lw at,0\(gp\) - a4: 00000000 nop - a8: 8c240000 lw a0,0\(at\) - ac: 8c250004 lw a1,4\(at\) + 3c: 8f990000 lw t9,0\(gp\) + 40: 2739015c addiu t9,t9,348 + 44: 0320f809 jalr t9 + 48: 00000000 nop + 4c: 8fbc0008 lw gp,8\(sp\) + 50: 8f840000 lw a0,0\(gp\) + 54: 24840000 addiu a0,a0,0 + 58: 8c840000 lw a0,0\(a0\) + 5c: 8f840000 lw a0,0\(gp\) + 60: 24840000 addiu a0,a0,0 + 64: 8c840000 lw a0,0\(a0\) + 68: 8f840000 lw a0,0\(gp\) + 6c: 2484015c addiu a0,a0,348 + 70: 8c840000 lw a0,0\(a0\) + 74: 8f810000 lw at,0\(gp\) + 78: 8c240000 lw a0,0\(at\) + 7c: 8c250004 lw a1,4\(at\) + 80: 8f810000 lw at,0\(gp\) + 84: 8c240000 lw a0,0\(at\) + 88: 8c250004 lw a1,4\(at\) + 8c: 8f810000 lw at,0\(gp\) + 90: 8c24015c lw a0,348\(at\) + 94: 8c250160 lw a1,352\(at\) + 98: 8f810000 lw at,0\(gp\) + 9c: 24210000 addiu at,at,0 + a0: ac240000 sw a0,0\(at\) + a4: 8f810000 lw at,0\(gp\) + a8: 24210000 addiu at,at,0 + ac: ac240000 sw a0,0\(at\) b0: 8f810000 lw at,0\(gp\) - b4: 00000000 nop - b8: 8c2401a4 lw a0,420\(at\) - bc: 8c2501a8 lw a1,424\(at\) - c0: 8f810000 lw at,0\(gp\) - c4: 00000000 nop - c8: 24210000 addiu at,at,0 - cc: ac240000 sw a0,0\(at\) - d0: 8f810000 lw at,0\(gp\) - d4: 00000000 nop - d8: 24210000 addiu at,at,0 - dc: ac240000 sw a0,0\(at\) + b4: ac240000 sw a0,0\(at\) + b8: ac250004 sw a1,4\(at\) + bc: 8f810000 lw at,0\(gp\) + c0: ac240000 sw a0,0\(at\) + c4: ac250004 sw a1,4\(at\) + c8: 8f810000 lw at,0\(gp\) + cc: 24210000 addiu at,at,0 + d0: 80240000 lb a0,0\(at\) + d4: 90210001 lbu at,1\(at\) + d8: 00042200 sll a0,a0,0x8 + dc: 00812025 or a0,a0,at e0: 8f810000 lw at,0\(gp\) - e4: 00000000 nop - e8: ac240000 sw a0,0\(at\) - ec: ac250004 sw a1,4\(at\) - f0: 8f810000 lw at,0\(gp\) - f4: 00000000 nop - f8: ac240000 sw a0,0\(at\) - fc: ac250004 sw a1,4\(at\) + e4: 24210000 addiu at,at,0 + e8: a0240001 sb a0,1\(at\) + ec: 00042202 srl a0,a0,0x8 + f0: a0240000 sb a0,0\(at\) + f4: 90210001 lbu at,1\(at\) + f8: 00042200 sll a0,a0,0x8 + fc: 00812025 or a0,a0,at 100: 8f810000 lw at,0\(gp\) - 104: 00000000 nop - 108: 24210000 addiu at,at,0 - 10c: 80240000 lb a0,0\(at\) - 110: 90210001 lbu at,1\(at\) - 114: 00042200 sll a0,a0,0x8 - 118: 00812025 or a0,a0,at - 11c: 8f810000 lw at,0\(gp\) - 120: 00000000 nop - 124: 24210000 addiu at,at,0 - 128: a0240001 sb a0,1\(at\) - 12c: 00042202 srl a0,a0,0x8 - 130: a0240000 sb a0,0\(at\) - 134: 90210001 lbu at,1\(at\) - 138: 00042200 sll a0,a0,0x8 - 13c: 00812025 or a0,a0,at + 104: 24210000 addiu at,at,0 + 108: 88240000 lwl a0,0\(at\) + 10c: 98240003 lwr a0,3\(at\) + 110: 8f810000 lw at,0\(gp\) + 114: 24210000 addiu at,at,0 + 118: a8240000 swl a0,0\(at\) + 11c: b8240003 swr a0,3\(at\) + 120: 3c043ff0 lui a0,0x3ff0 + 124: 00002821 move a1,zero + 128: 8f810000 lw at,0\(gp\) + 12c: 8c240000 lw a0,0\(at\) + 130: 8c250004 lw a1,4\(at\) + 134: 3c013ff0 lui at,0x3ff0 + 138: 44810800 mtc1 at,\$f1 + 13c: 44800000 mtc1 zero,\$f0 140: 8f810000 lw at,0\(gp\) - 144: 00000000 nop - 148: 24210000 addiu at,at,0 - 14c: 88240000 lwl a0,0\(at\) - 150: 98240003 lwr a0,3\(at\) - 154: 8f810000 lw at,0\(gp\) - 158: 00000000 nop - 15c: 24210000 addiu at,at,0 - 160: a8240000 swl a0,0\(at\) - 164: b8240003 swr a0,3\(at\) - 168: 3c043ff0 lui a0,0x3ff0 - 16c: 00002821 move a1,zero - 170: 8f810000 lw at,0\(gp\) - 174: 8c240000 lw a0,0\(at\) - 178: 8c250004 lw a1,4\(at\) - 17c: 3c013ff0 lui at,0x3ff0 - 180: 44810800 mtc1 at,\$f1 - 184: 44800000 mtc1 zero,\$f0 - 188: 8f810000 lw at,0\(gp\) - 18c: d4200008 ldc1 \$f0,8\(at\) - 190: 24a40064 addiu a0,a1,100 - 194: 2c840001 sltiu a0,a0,1 - 198: 24a40064 addiu a0,a1,100 - 19c: 0004202b sltu a0,zero,a0 - 1a0: 00a02021 move a0,a1 + 144: d4200008 ldc1 \$f0,8\(at\) + 148: 24a40064 addiu a0,a1,100 + 14c: 2c840001 sltiu a0,a0,1 + 150: 24a40064 addiu a0,a1,100 + 154: 0004202b sltu a0,zero,a0 + 158: 00a02021 move a0,a1 -0+01a4 <[^>]*>: +0+015c <[^>]*>: ... diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/mips-gp32-fp64-pic.d binutils-2.15.91.0.1/gas/testsuite/gas/mips/mips-gp32-fp64-pic.d --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/mips-gp32-fp64-pic.d 2003-05-15 13:42:25.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/mips-gp32-fp64-pic.d 2004-05-27 11:26:04.456194575 -0700 @@ -15,103 +15,85 @@ Disassembly of section .text: 14: 3c041234 lui a0,0x1234 18: 34845678 ori a0,a0,0x5678 1c: 8f840000 lw a0,0\(gp\) - 20: 00000000 nop - 24: 24840000 addiu a0,a0,0 - 28: 8f840000 lw a0,0\(gp\) - 2c: 00000000 nop - 30: 24840000 addiu a0,a0,0 - 34: 8f840000 lw a0,0\(gp\) + 20: 24840000 addiu a0,a0,0 + 24: 8f840000 lw a0,0\(gp\) + 28: 24840000 addiu a0,a0,0 + 2c: 8f840000 lw a0,0\(gp\) + 30: 2484015c addiu a0,a0,348 + 34: 10000049 b 15c <[^>]*> 38: 00000000 nop - 3c: 248401a4 addiu a0,a0,420 - 40: 10000058 b 1a4 <[^>]*> - 44: 00000000 nop - 48: 8f990000 lw t9,0\(gp\) - 4c: 00000000 nop - 50: 273901a4 addiu t9,t9,420 - 54: 0320f809 jalr t9 - 58: 00000000 nop - 5c: 8fbc0008 lw gp,8\(sp\) - 60: 8f840000 lw a0,0\(gp\) - 64: 00000000 nop - 68: 24840000 addiu a0,a0,0 - 6c: 8c840000 lw a0,0\(a0\) - 70: 8f840000 lw a0,0\(gp\) - 74: 00000000 nop - 78: 24840000 addiu a0,a0,0 - 7c: 8c840000 lw a0,0\(a0\) - 80: 8f840000 lw a0,0\(gp\) - 84: 00000000 nop - 88: 248401a4 addiu a0,a0,420 - 8c: 8c840000 lw a0,0\(a0\) - 90: 8f810000 lw at,0\(gp\) - 94: 00000000 nop - 98: 8c240000 lw a0,0\(at\) - 9c: 8c250004 lw a1,4\(at\) - a0: 8f810000 lw at,0\(gp\) - a4: 00000000 nop - a8: 8c240000 lw a0,0\(at\) - ac: 8c250004 lw a1,4\(at\) + 3c: 8f990000 lw t9,0\(gp\) + 40: 2739015c addiu t9,t9,348 + 44: 0320f809 jalr t9 + 48: 00000000 nop + 4c: 8fbc0008 lw gp,8\(sp\) + 50: 8f840000 lw a0,0\(gp\) + 54: 24840000 addiu a0,a0,0 + 58: 8c840000 lw a0,0\(a0\) + 5c: 8f840000 lw a0,0\(gp\) + 60: 24840000 addiu a0,a0,0 + 64: 8c840000 lw a0,0\(a0\) + 68: 8f840000 lw a0,0\(gp\) + 6c: 2484015c addiu a0,a0,348 + 70: 8c840000 lw a0,0\(a0\) + 74: 8f810000 lw at,0\(gp\) + 78: 8c240000 lw a0,0\(at\) + 7c: 8c250004 lw a1,4\(at\) + 80: 8f810000 lw at,0\(gp\) + 84: 8c240000 lw a0,0\(at\) + 88: 8c250004 lw a1,4\(at\) + 8c: 8f810000 lw at,0\(gp\) + 90: 8c24015c lw a0,348\(at\) + 94: 8c250160 lw a1,352\(at\) + 98: 8f810000 lw at,0\(gp\) + 9c: 24210000 addiu at,at,0 + a0: ac240000 sw a0,0\(at\) + a4: 8f810000 lw at,0\(gp\) + a8: 24210000 addiu at,at,0 + ac: ac240000 sw a0,0\(at\) b0: 8f810000 lw at,0\(gp\) - b4: 00000000 nop - b8: 8c2401a4 lw a0,420\(at\) - bc: 8c2501a8 lw a1,424\(at\) - c0: 8f810000 lw at,0\(gp\) - c4: 00000000 nop - c8: 24210000 addiu at,at,0 - cc: ac240000 sw a0,0\(at\) - d0: 8f810000 lw at,0\(gp\) - d4: 00000000 nop - d8: 24210000 addiu at,at,0 - dc: ac240000 sw a0,0\(at\) + b4: ac240000 sw a0,0\(at\) + b8: ac250004 sw a1,4\(at\) + bc: 8f810000 lw at,0\(gp\) + c0: ac240000 sw a0,0\(at\) + c4: ac250004 sw a1,4\(at\) + c8: 8f810000 lw at,0\(gp\) + cc: 24210000 addiu at,at,0 + d0: 80240000 lb a0,0\(at\) + d4: 90210001 lbu at,1\(at\) + d8: 00042200 sll a0,a0,0x8 + dc: 00812025 or a0,a0,at e0: 8f810000 lw at,0\(gp\) - e4: 00000000 nop - e8: ac240000 sw a0,0\(at\) - ec: ac250004 sw a1,4\(at\) - f0: 8f810000 lw at,0\(gp\) - f4: 00000000 nop - f8: ac240000 sw a0,0\(at\) - fc: ac250004 sw a1,4\(at\) + e4: 24210000 addiu at,at,0 + e8: a0240001 sb a0,1\(at\) + ec: 00042202 srl a0,a0,0x8 + f0: a0240000 sb a0,0\(at\) + f4: 90210001 lbu at,1\(at\) + f8: 00042200 sll a0,a0,0x8 + fc: 00812025 or a0,a0,at 100: 8f810000 lw at,0\(gp\) - 104: 00000000 nop - 108: 24210000 addiu at,at,0 - 10c: 80240000 lb a0,0\(at\) - 110: 90210001 lbu at,1\(at\) - 114: 00042200 sll a0,a0,0x8 - 118: 00812025 or a0,a0,at - 11c: 8f810000 lw at,0\(gp\) - 120: 00000000 nop - 124: 24210000 addiu at,at,0 - 128: a0240001 sb a0,1\(at\) - 12c: 00042202 srl a0,a0,0x8 - 130: a0240000 sb a0,0\(at\) - 134: 90210001 lbu at,1\(at\) - 138: 00042200 sll a0,a0,0x8 - 13c: 00812025 or a0,a0,at - 140: 8f810000 lw at,0\(gp\) - 144: 00000000 nop - 148: 24210000 addiu at,at,0 - 14c: 88240000 lwl a0,0\(at\) - 150: 98240003 lwr a0,3\(at\) - 154: 8f810000 lw at,0\(gp\) - 158: 00000000 nop - 15c: 24210000 addiu at,at,0 - 160: a8240000 swl a0,0\(at\) - 164: b8240003 swr a0,3\(at\) - 168: 3c043ff0 lui a0,0x3ff0 - 16c: 00002821 move a1,zero - 170: 8f810000 lw at,0\(gp\) - 174: 8c240000 lw a0,0\(at\) - 178: 8c250004 lw a1,4\(at\) - 17c: 8f810000 lw at,0\(gp\) - 180: d4200008 ldc1 \$f0,8\(at\) - 184: 8f810000 lw at,0\(gp\) - 188: d4200010 ldc1 \$f0,16\(at\) - 18c: 24a40064 addiu a0,a1,100 - 190: 2c840001 sltiu a0,a0,1 - 194: 24a40064 addiu a0,a1,100 - 198: 0004202b sltu a0,zero,a0 - 19c: 00a02021 move a0,a1 - 1a0: 46231040 add.d \$f1,\$f2,\$f3 + 104: 24210000 addiu at,at,0 + 108: 88240000 lwl a0,0\(at\) + 10c: 98240003 lwr a0,3\(at\) + 110: 8f810000 lw at,0\(gp\) + 114: 24210000 addiu at,at,0 + 118: a8240000 swl a0,0\(at\) + 11c: b8240003 swr a0,3\(at\) + 120: 3c043ff0 lui a0,0x3ff0 + 124: 00002821 move a1,zero + 128: 8f810000 lw at,0\(gp\) + 12c: 8c240000 lw a0,0\(at\) + 130: 8c250004 lw a1,4\(at\) + 134: 8f810000 lw at,0\(gp\) + 138: d4200008 ldc1 \$f0,8\(at\) + 13c: 8f810000 lw at,0\(gp\) + 140: d4200010 ldc1 \$f0,16\(at\) + 144: 24a40064 addiu a0,a1,100 + 148: 2c840001 sltiu a0,a0,1 + 14c: 24a40064 addiu a0,a1,100 + 150: 0004202b sltu a0,zero,a0 + 154: 00a02021 move a0,a1 + 158: 46231040 add.d \$f1,\$f2,\$f3 -0+01a4 <[^>]*>: +0+015c <[^>]*>: ... diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/mips-gp64-fp32-pic.d binutils-2.15.91.0.1/gas/testsuite/gas/mips/mips-gp64-fp32-pic.d --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/mips-gp64-fp32-pic.d 2003-05-15 13:42:25.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/mips-gp64-fp32-pic.d 2004-05-27 11:26:04.460194058 -0700 @@ -15,138 +15,116 @@ Disassembly of section .text: 14: 3c041234 lui a0,0x1234 18: 34845678 ori a0,a0,0x5678 1c: 8f840000 lw a0,0\(gp\) - 20: 00000000 nop - 24: 24840000 addiu a0,a0,0 - 28: 8f840000 lw a0,0\(gp\) - 2c: 00000000 nop - 30: 24840000 addiu a0,a0,0 - 34: 8f840000 lw a0,0\(gp\) + 20: 24840000 addiu a0,a0,0 + 24: 8f840000 lw a0,0\(gp\) + 28: 24840000 addiu a0,a0,0 + 2c: 8f840000 lw a0,0\(gp\) + 30: 248401d8 addiu a0,a0,472 + 34: 10000068 b 1d8 <[^>]*> 38: 00000000 nop - 3c: 24840230 addiu a0,a0,560 - 40: 1000007b b 230 <[^>]*> - 44: 00000000 nop - 48: 8f990000 lw t9,0\(gp\) - 4c: 00000000 nop - 50: 27390230 addiu t9,t9,560 - 54: 0320f809 jalr t9 - 58: 00000000 nop - 5c: 8fbc0008 lw gp,8\(sp\) - 60: 8f840000 lw a0,0\(gp\) - 64: 00000000 nop - 68: 24840000 addiu a0,a0,0 - 6c: 8c840000 lw a0,0\(a0\) - 70: 8f840000 lw a0,0\(gp\) - 74: 00000000 nop + 3c: 8f990000 lw t9,0\(gp\) + 40: 273901d8 addiu t9,t9,472 + 44: 0320f809 jalr t9 + 48: 00000000 nop + 4c: 8fbc0008 lw gp,8\(sp\) + 50: 8f840000 lw a0,0\(gp\) + 54: 24840000 addiu a0,a0,0 + 58: 8c840000 lw a0,0\(a0\) + 5c: 8f840000 lw a0,0\(gp\) + 60: 24840000 addiu a0,a0,0 + 64: 8c840000 lw a0,0\(a0\) + 68: 8f840000 lw a0,0\(gp\) + 6c: 248401d8 addiu a0,a0,472 + 70: 8c840000 lw a0,0\(a0\) + 74: 8f840000 lw a0,0\(gp\) 78: 24840000 addiu a0,a0,0 - 7c: 8c840000 lw a0,0\(a0\) + 7c: dc840000 ld a0,0\(a0\) 80: 8f840000 lw a0,0\(gp\) - 84: 00000000 nop - 88: 24840230 addiu a0,a0,560 - 8c: 8c840000 lw a0,0\(a0\) - 90: 8f840000 lw a0,0\(gp\) - 94: 00000000 nop - 98: 24840000 addiu a0,a0,0 - 9c: dc840000 ld a0,0\(a0\) - a0: 8f840000 lw a0,0\(gp\) - a4: 00000000 nop - a8: 24840000 addiu a0,a0,0 - ac: dc840000 ld a0,0\(a0\) - b0: 8f840000 lw a0,0\(gp\) - b4: 00000000 nop - b8: 24840230 addiu a0,a0,560 - bc: dc840000 ld a0,0\(a0\) - c0: 8f810000 lw at,0\(gp\) - c4: 00000000 nop - c8: 24210000 addiu at,at,0 - cc: ac240000 sw a0,0\(at\) - d0: 8f810000 lw at,0\(gp\) - d4: 00000000 nop - d8: 24210000 addiu at,at,0 - dc: ac240000 sw a0,0\(at\) + 84: 24840000 addiu a0,a0,0 + 88: dc840000 ld a0,0\(a0\) + 8c: 8f840000 lw a0,0\(gp\) + 90: 248401d8 addiu a0,a0,472 + 94: dc840000 ld a0,0\(a0\) + 98: 8f810000 lw at,0\(gp\) + 9c: 24210000 addiu at,at,0 + a0: ac240000 sw a0,0\(at\) + a4: 8f810000 lw at,0\(gp\) + a8: 24210000 addiu at,at,0 + ac: ac240000 sw a0,0\(at\) + b0: 8f810000 lw at,0\(gp\) + b4: 24210000 addiu at,at,0 + b8: fc240000 sd a0,0\(at\) + bc: 8f810000 lw at,0\(gp\) + c0: 24210000 addiu at,at,0 + c4: fc240000 sd a0,0\(at\) + c8: 8f810000 lw at,0\(gp\) + cc: 24210000 addiu at,at,0 + d0: 80240000 lb a0,0\(at\) + d4: 90210001 lbu at,1\(at\) + d8: 00042200 sll a0,a0,0x8 + dc: 00812025 or a0,a0,at e0: 8f810000 lw at,0\(gp\) - e4: 00000000 nop - e8: 24210000 addiu at,at,0 - ec: fc240000 sd a0,0\(at\) - f0: 8f810000 lw at,0\(gp\) - f4: 00000000 nop - f8: 24210000 addiu at,at,0 - fc: fc240000 sd a0,0\(at\) + e4: 24210000 addiu at,at,0 + e8: a0240001 sb a0,1\(at\) + ec: 00042202 srl a0,a0,0x8 + f0: a0240000 sb a0,0\(at\) + f4: 90210001 lbu at,1\(at\) + f8: 00042200 sll a0,a0,0x8 + fc: 00812025 or a0,a0,at 100: 8f810000 lw at,0\(gp\) - 104: 00000000 nop - 108: 24210000 addiu at,at,0 - 10c: 80240000 lb a0,0\(at\) - 110: 90210001 lbu at,1\(at\) - 114: 00042200 sll a0,a0,0x8 - 118: 00812025 or a0,a0,at - 11c: 8f810000 lw at,0\(gp\) - 120: 00000000 nop - 124: 24210000 addiu at,at,0 - 128: a0240001 sb a0,1\(at\) - 12c: 00042202 srl a0,a0,0x8 - 130: a0240000 sb a0,0\(at\) - 134: 90210001 lbu at,1\(at\) - 138: 00042200 sll a0,a0,0x8 - 13c: 00812025 or a0,a0,at - 140: 8f810000 lw at,0\(gp\) - 144: 00000000 nop - 148: 24210000 addiu at,at,0 - 14c: 88240000 lwl a0,0\(at\) - 150: 98240003 lwr a0,3\(at\) - 154: 8f810000 lw at,0\(gp\) - 158: 00000000 nop - 15c: 24210000 addiu at,at,0 - 160: a8240000 swl a0,0\(at\) - 164: b8240003 swr a0,3\(at\) - 168: 3404ffc0 li a0,0xffc0 - 16c: 000423bc dsll32 a0,a0,0xe - 170: 8f810000 lw at,0\(gp\) - 174: dc240000 ld a0,0\(at\) - 178: 3c013ff0 lui at,0x3ff0 - 17c: 44810800 mtc1 at,\$f1 - 180: 44800000 mtc1 zero,\$f0 - 184: 8f810000 lw at,0\(gp\) - 188: d4200008 ldc1 \$f0,8\(at\) - 18c: 64a40064 daddiu a0,a1,100 - 190: 2c840001 sltiu a0,a0,1 - 194: 64a40064 daddiu a0,a1,100 - 198: 0004202b sltu a0,zero,a0 - 19c: 00a0202d move a0,a1 - 1a0: 8f840000 lw a0,0\(gp\) - 1a4: 00000000 nop - 1a8: 24840000 addiu a0,a0,0 - 1ac: 8f840000 lw a0,0\(gp\) - 1b0: 00000000 nop - 1b4: 24840000 addiu a0,a0,0 - 1b8: 8f810000 lw at,0\(gp\) - 1bc: 00000000 nop - 1c0: 24210000 addiu at,at,0 - 1c4: 68240000 ldl a0,0\(at\) - 1c8: 6c240007 ldr a0,7\(at\) - 1cc: 8f810000 lw at,0\(gp\) - 1d0: 00000000 nop - 1d4: 24210000 addiu at,at,0 - 1d8: b0240000 sdl a0,0\(at\) - 1dc: b4240007 sdr a0,7\(at\) - 1e0: 34018000 li at,0x8000 - 1e4: 00010c38 dsll at,at,0x10 - 1e8: 0081082a slt at,a0,at - 1ec: 10200010 beqz at,230 <[^>]*> - 1f0: 00000000 nop - 1f4: 34018000 li at,0x8000 - 1f8: 00010c78 dsll at,at,0x11 - 1fc: 0081082b sltu at,a0,at - 200: 1020000b beqz at,230 <[^>]*> - 204: 00000000 nop - 208: 34018000 li at,0x8000 - 20c: 00010c38 dsll at,at,0x10 - 210: 0081082a slt at,a0,at - 214: 14200006 bnez at,230 <[^>]*> - 218: 00000000 nop - 21c: 34018000 li at,0x8000 - 220: 00010c78 dsll at,at,0x11 - 224: 0081082b sltu at,a0,at - 228: 14200001 bnez at,230 <[^>]*> - 22c: 00000000 nop + 104: 24210000 addiu at,at,0 + 108: 88240000 lwl a0,0\(at\) + 10c: 98240003 lwr a0,3\(at\) + 110: 8f810000 lw at,0\(gp\) + 114: 24210000 addiu at,at,0 + 118: a8240000 swl a0,0\(at\) + 11c: b8240003 swr a0,3\(at\) + 120: 3404ffc0 li a0,0xffc0 + 124: 000423bc dsll32 a0,a0,0xe + 128: 8f810000 lw at,0\(gp\) + 12c: dc240000 ld a0,0\(at\) + 130: 3c013ff0 lui at,0x3ff0 + 134: 44810800 mtc1 at,\$f1 + 138: 44800000 mtc1 zero,\$f0 + 13c: 8f810000 lw at,0\(gp\) + 140: d4200008 ldc1 \$f0,8\(at\) + 144: 64a40064 daddiu a0,a1,100 + 148: 2c840001 sltiu a0,a0,1 + 14c: 64a40064 daddiu a0,a1,100 + 150: 0004202b sltu a0,zero,a0 + 154: 00a0202d move a0,a1 + 158: 8f840000 lw a0,0\(gp\) + 15c: 24840000 addiu a0,a0,0 + 160: 8f840000 lw a0,0\(gp\) + 164: 24840000 addiu a0,a0,0 + 168: 8f810000 lw at,0\(gp\) + 16c: 24210000 addiu at,at,0 + 170: 68240000 ldl a0,0\(at\) + 174: 6c240007 ldr a0,7\(at\) + 178: 8f810000 lw at,0\(gp\) + 17c: 24210000 addiu at,at,0 + 180: b0240000 sdl a0,0\(at\) + 184: b4240007 sdr a0,7\(at\) + 188: 34018000 li at,0x8000 + 18c: 00010c38 dsll at,at,0x10 + 190: 0081082a slt at,a0,at + 194: 10200010 beqz at,1d8 <[^>]*> + 198: 00000000 nop + 19c: 34018000 li at,0x8000 + 1a0: 00010c78 dsll at,at,0x11 + 1a4: 0081082b sltu at,a0,at + 1a8: 1020000b beqz at,1d8 <[^>]*> + 1ac: 00000000 nop + 1b0: 34018000 li at,0x8000 + 1b4: 00010c38 dsll at,at,0x10 + 1b8: 0081082a slt at,a0,at + 1bc: 14200006 bnez at,1d8 <[^>]*> + 1c0: 00000000 nop + 1c4: 34018000 li at,0x8000 + 1c8: 00010c78 dsll at,at,0x11 + 1cc: 0081082b sltu at,a0,at + 1d0: 14200001 bnez at,1d8 <[^>]*> + 1d4: 00000000 nop -0+0230 <[^>]*>: +0+01d8 <[^>]*>: ... diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/mips-gp64-fp64-pic.d binutils-2.15.91.0.1/gas/testsuite/gas/mips/mips-gp64-fp64-pic.d --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/mips-gp64-fp64-pic.d 2003-05-15 13:42:25.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/mips-gp64-fp64-pic.d 2004-05-27 11:26:04.461193929 -0700 @@ -15,139 +15,117 @@ Disassembly of section .text: 14: 3c041234 lui a0,0x1234 18: 34845678 ori a0,a0,0x5678 1c: 8f840000 lw a0,0\(gp\) - 20: 00000000 nop - 24: 24840000 addiu a0,a0,0 - 28: 8f840000 lw a0,0\(gp\) - 2c: 00000000 nop - 30: 24840000 addiu a0,a0,0 - 34: 8f840000 lw a0,0\(gp\) + 20: 24840000 addiu a0,a0,0 + 24: 8f840000 lw a0,0\(gp\) + 28: 24840000 addiu a0,a0,0 + 2c: 8f840000 lw a0,0\(gp\) + 30: 248401dc addiu a0,a0,476 + 34: 10000069 b 1dc <[^>]*> 38: 00000000 nop - 3c: 24840234 addiu a0,a0,564 - 40: 1000007c b 234 <[^>]*> - 44: 00000000 nop - 48: 8f990000 lw t9,0\(gp\) - 4c: 00000000 nop - 50: 27390234 addiu t9,t9,564 - 54: 0320f809 jalr t9 - 58: 00000000 nop - 5c: 8fbc0008 lw gp,8\(sp\) - 60: 8f840000 lw a0,0\(gp\) - 64: 00000000 nop - 68: 24840000 addiu a0,a0,0 - 6c: 8c840000 lw a0,0\(a0\) - 70: 8f840000 lw a0,0\(gp\) - 74: 00000000 nop + 3c: 8f990000 lw t9,0\(gp\) + 40: 273901dc addiu t9,t9,476 + 44: 0320f809 jalr t9 + 48: 00000000 nop + 4c: 8fbc0008 lw gp,8\(sp\) + 50: 8f840000 lw a0,0\(gp\) + 54: 24840000 addiu a0,a0,0 + 58: 8c840000 lw a0,0\(a0\) + 5c: 8f840000 lw a0,0\(gp\) + 60: 24840000 addiu a0,a0,0 + 64: 8c840000 lw a0,0\(a0\) + 68: 8f840000 lw a0,0\(gp\) + 6c: 248401dc addiu a0,a0,476 + 70: 8c840000 lw a0,0\(a0\) + 74: 8f840000 lw a0,0\(gp\) 78: 24840000 addiu a0,a0,0 - 7c: 8c840000 lw a0,0\(a0\) + 7c: dc840000 ld a0,0\(a0\) 80: 8f840000 lw a0,0\(gp\) - 84: 00000000 nop - 88: 24840234 addiu a0,a0,564 - 8c: 8c840000 lw a0,0\(a0\) - 90: 8f840000 lw a0,0\(gp\) - 94: 00000000 nop - 98: 24840000 addiu a0,a0,0 - 9c: dc840000 ld a0,0\(a0\) - a0: 8f840000 lw a0,0\(gp\) - a4: 00000000 nop - a8: 24840000 addiu a0,a0,0 - ac: dc840000 ld a0,0\(a0\) - b0: 8f840000 lw a0,0\(gp\) - b4: 00000000 nop - b8: 24840234 addiu a0,a0,564 - bc: dc840000 ld a0,0\(a0\) - c0: 8f810000 lw at,0\(gp\) - c4: 00000000 nop - c8: 24210000 addiu at,at,0 - cc: ac240000 sw a0,0\(at\) - d0: 8f810000 lw at,0\(gp\) - d4: 00000000 nop - d8: 24210000 addiu at,at,0 - dc: ac240000 sw a0,0\(at\) + 84: 24840000 addiu a0,a0,0 + 88: dc840000 ld a0,0\(a0\) + 8c: 8f840000 lw a0,0\(gp\) + 90: 248401dc addiu a0,a0,476 + 94: dc840000 ld a0,0\(a0\) + 98: 8f810000 lw at,0\(gp\) + 9c: 24210000 addiu at,at,0 + a0: ac240000 sw a0,0\(at\) + a4: 8f810000 lw at,0\(gp\) + a8: 24210000 addiu at,at,0 + ac: ac240000 sw a0,0\(at\) + b0: 8f810000 lw at,0\(gp\) + b4: 24210000 addiu at,at,0 + b8: fc240000 sd a0,0\(at\) + bc: 8f810000 lw at,0\(gp\) + c0: 24210000 addiu at,at,0 + c4: fc240000 sd a0,0\(at\) + c8: 8f810000 lw at,0\(gp\) + cc: 24210000 addiu at,at,0 + d0: 80240000 lb a0,0\(at\) + d4: 90210001 lbu at,1\(at\) + d8: 00042200 sll a0,a0,0x8 + dc: 00812025 or a0,a0,at e0: 8f810000 lw at,0\(gp\) - e4: 00000000 nop - e8: 24210000 addiu at,at,0 - ec: fc240000 sd a0,0\(at\) - f0: 8f810000 lw at,0\(gp\) - f4: 00000000 nop - f8: 24210000 addiu at,at,0 - fc: fc240000 sd a0,0\(at\) + e4: 24210000 addiu at,at,0 + e8: a0240001 sb a0,1\(at\) + ec: 00042202 srl a0,a0,0x8 + f0: a0240000 sb a0,0\(at\) + f4: 90210001 lbu at,1\(at\) + f8: 00042200 sll a0,a0,0x8 + fc: 00812025 or a0,a0,at 100: 8f810000 lw at,0\(gp\) - 104: 00000000 nop - 108: 24210000 addiu at,at,0 - 10c: 80240000 lb a0,0\(at\) - 110: 90210001 lbu at,1\(at\) - 114: 00042200 sll a0,a0,0x8 - 118: 00812025 or a0,a0,at - 11c: 8f810000 lw at,0\(gp\) - 120: 00000000 nop - 124: 24210000 addiu at,at,0 - 128: a0240001 sb a0,1\(at\) - 12c: 00042202 srl a0,a0,0x8 - 130: a0240000 sb a0,0\(at\) - 134: 90210001 lbu at,1\(at\) - 138: 00042200 sll a0,a0,0x8 - 13c: 00812025 or a0,a0,at - 140: 8f810000 lw at,0\(gp\) - 144: 00000000 nop - 148: 24210000 addiu at,at,0 - 14c: 88240000 lwl a0,0\(at\) - 150: 98240003 lwr a0,3\(at\) - 154: 8f810000 lw at,0\(gp\) - 158: 00000000 nop - 15c: 24210000 addiu at,at,0 - 160: a8240000 swl a0,0\(at\) - 164: b8240003 swr a0,3\(at\) - 168: 3404ffc0 li a0,0xffc0 - 16c: 000423bc dsll32 a0,a0,0xe - 170: 8f810000 lw at,0\(gp\) - 174: dc240000 ld a0,0\(at\) - 178: 3401ffc0 li at,0xffc0 - 17c: 00010bbc dsll32 at,at,0xe - 180: 44a10000 dmtc1 at,\$f0 - 184: 8f810000 lw at,0\(gp\) - 188: d4200008 ldc1 \$f0,8\(at\) - 18c: 64a40064 daddiu a0,a1,100 - 190: 2c840001 sltiu a0,a0,1 - 194: 64a40064 daddiu a0,a1,100 - 198: 0004202b sltu a0,zero,a0 - 19c: 00a0202d move a0,a1 - 1a0: 8f840000 lw a0,0\(gp\) - 1a4: 00000000 nop - 1a8: 24840000 addiu a0,a0,0 - 1ac: 8f840000 lw a0,0\(gp\) - 1b0: 00000000 nop - 1b4: 24840000 addiu a0,a0,0 - 1b8: 8f810000 lw at,0\(gp\) - 1bc: 00000000 nop - 1c0: 24210000 addiu at,at,0 - 1c4: 68240000 ldl a0,0\(at\) - 1c8: 6c240007 ldr a0,7\(at\) - 1cc: 8f810000 lw at,0\(gp\) - 1d0: 00000000 nop - 1d4: 24210000 addiu at,at,0 - 1d8: b0240000 sdl a0,0\(at\) - 1dc: b4240007 sdr a0,7\(at\) - 1e0: 34018000 li at,0x8000 - 1e4: 00010c38 dsll at,at,0x10 - 1e8: 0081082a slt at,a0,at - 1ec: 10200011 beqz at,234 <[^>]*> - 1f0: 00000000 nop - 1f4: 34018000 li at,0x8000 - 1f8: 00010c78 dsll at,at,0x11 - 1fc: 0081082b sltu at,a0,at - 200: 1020000c beqz at,234 <[^>]*> - 204: 00000000 nop - 208: 34018000 li at,0x8000 - 20c: 00010c38 dsll at,at,0x10 - 210: 0081082a slt at,a0,at - 214: 14200007 bnez at,234 <[^>]*> - 218: 00000000 nop - 21c: 34018000 li at,0x8000 - 220: 00010c78 dsll at,at,0x11 - 224: 0081082b sltu at,a0,at - 228: 14200002 bnez at,234 <[^>]*> - 22c: 00000000 nop - 230: 46231040 add.d \$f1,\$f2,\$f3 + 104: 24210000 addiu at,at,0 + 108: 88240000 lwl a0,0\(at\) + 10c: 98240003 lwr a0,3\(at\) + 110: 8f810000 lw at,0\(gp\) + 114: 24210000 addiu at,at,0 + 118: a8240000 swl a0,0\(at\) + 11c: b8240003 swr a0,3\(at\) + 120: 3404ffc0 li a0,0xffc0 + 124: 000423bc dsll32 a0,a0,0xe + 128: 8f810000 lw at,0\(gp\) + 12c: dc240000 ld a0,0\(at\) + 130: 3401ffc0 li at,0xffc0 + 134: 00010bbc dsll32 at,at,0xe + 138: 44a10000 dmtc1 at,\$f0 + 13c: 8f810000 lw at,0\(gp\) + 140: d4200008 ldc1 \$f0,8\(at\) + 144: 64a40064 daddiu a0,a1,100 + 148: 2c840001 sltiu a0,a0,1 + 14c: 64a40064 daddiu a0,a1,100 + 150: 0004202b sltu a0,zero,a0 + 154: 00a0202d move a0,a1 + 158: 8f840000 lw a0,0\(gp\) + 15c: 24840000 addiu a0,a0,0 + 160: 8f840000 lw a0,0\(gp\) + 164: 24840000 addiu a0,a0,0 + 168: 8f810000 lw at,0\(gp\) + 16c: 24210000 addiu at,at,0 + 170: 68240000 ldl a0,0\(at\) + 174: 6c240007 ldr a0,7\(at\) + 178: 8f810000 lw at,0\(gp\) + 17c: 24210000 addiu at,at,0 + 180: b0240000 sdl a0,0\(at\) + 184: b4240007 sdr a0,7\(at\) + 188: 34018000 li at,0x8000 + 18c: 00010c38 dsll at,at,0x10 + 190: 0081082a slt at,a0,at + 194: 10200011 beqz at,1dc <[^>]*> + 198: 00000000 nop + 19c: 34018000 li at,0x8000 + 1a0: 00010c78 dsll at,at,0x11 + 1a4: 0081082b sltu at,a0,at + 1a8: 1020000c beqz at,1dc <[^>]*> + 1ac: 00000000 nop + 1b0: 34018000 li at,0x8000 + 1b4: 00010c38 dsll at,at,0x10 + 1b8: 0081082a slt at,a0,at + 1bc: 14200007 bnez at,1dc <[^>]*> + 1c0: 00000000 nop + 1c4: 34018000 li at,0x8000 + 1c8: 00010c78 dsll at,at,0x11 + 1cc: 0081082b sltu at,a0,at + 1d0: 14200002 bnez at,1dc <[^>]*> + 1d4: 00000000 nop + 1d8: 46231040 add.d \$f1,\$f2,\$f3 -0+0234 <[^>]*>: +0+01dc <[^>]*>: ... diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/mips.exp binutils-2.15.91.0.1/gas/testsuite/gas/mips/mips.exp --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/mips.exp 2004-03-03 12:24:34.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/mips.exp 2004-05-27 11:26:04.485190825 -0700 @@ -254,7 +254,7 @@ proc mips_arch_list_matching {args} { # properties actually are. if { [string compare $arch default] == 0 && [string length [mips_arch_properties default]] == 0} { - continue; + continue } if { [mips_arch_matches $arch $args] } { lappend l $arch @@ -445,24 +445,11 @@ if { [istarget mips*-*-*] } then { } if $elf { run_dump_test "jal-svr4pic" } if $elf { run_dump_test "jal-xgot" } - # LOSE: As of 2002-02-08, the jal-empic test fails for target mips-ecoff. - # It appears that it broke between 2000-03-11 00:00UTC and - # 2000-03-12 00:00 UTC. - if $ecoff { run_dump_test "jal-empic" } - if $elf { - run_dump_test_arches "jal-empic-elf" [mips_arch_list_matching mips1] - run_dump_test_arches "jal-empic-elf-2" [mips_arch_list_matching mips1] - run_dump_test_arches "jal-empic-elf-3" [mips_arch_list_matching mips1] - } run_list_test_arches "jal-range" "-32" [mips_arch_list_matching mips1] if $has_newabi { run_dump_test "jal-newabi" } if !$aout { run_dump_test "la" } if $elf { run_dump_test "la-svr4pic" } if $elf { run_dump_test "la-xgot" } - # LOSE: As of 2002-02-08, the la-empic test fails for target mips-ecoff. - # Not sure when it first cropped up, but may be related to addition of - # "la" -> "addiu" pattern in MIPS opcode table long ago. - if $ecoff { run_dump_test "la-empic" } if $elf { run_dump_test "lca-svr4pic" } if $elf { run_dump_test "lca-xgot" } if !$aout { @@ -471,7 +458,8 @@ if { [istarget mips*-*-*] } then { run_dump_test_arches "lb" [mips_arch_list_matching !mips2] } if $elf { - run_dump_test_arches "lb-svr4pic" [mips_arch_list_matching mips1] + run_dump_test_arches "lb-svr4pic" [mips_arch_list_matching !gpr_ilocks] + run_dump_test_arches "lb-svr4pic-ilocks" [mips_arch_list_matching gpr_ilocks] } if $elf { # Both versions specify the cpu, so we can run both regardless of @@ -479,7 +467,6 @@ if { [istarget mips*-*-*] } then { run_dump_test "lb-xgot" run_dump_test "lb-xgot-ilocks" } - if $ecoff { run_dump_test "lb-empic" } if !$aout { if !$gpr_ilocks { run_dump_test "ld" @@ -493,15 +480,10 @@ if { [istarget mips*-*-*] } then { } if $elf { run_dump_test "ld-svr4pic" } if $elf { run_dump_test "ld-xgot" } - if $ecoff { run_dump_test "ld-empic" } run_dump_test_arches "li" [mips_arch_list_matching mips1] if !$aout { run_dump_test "lifloat" } if $elf { run_dump_test "lif-svr4pic" } if $elf { run_dump_test "lif-xgot" } - # LOSE: As of 2002-02-08, the lif-empic test fails for target mips-ecoff. - # It appears that it broke between 2000-03-11 00:00UTC and - # 2000-03-12 00:00 UTC. - if $ecoff { run_dump_test "lif-empic" } run_dump_test_arches "mips4" [mips_arch_list_matching mips4] run_dump_test_arches "mips5" [mips_arch_list_matching mips5] if $ilocks { @@ -523,7 +505,6 @@ if { [istarget mips*-*-*] } then { run_dump_test_arches "ulh2-el" [mips_arch_list_matching mips1] if $elf { run_dump_test "ulh-svr4pic" } if $elf { run_dump_test "ulh-xgot" } - if $ecoff { run_dump_test "ulh-empic" } if !$aout { run_dump_test "ulw" run_dump_test "uld" @@ -556,7 +537,7 @@ if { [istarget mips*-*-*] } then { run_dump_test "mips4100" run_dump_test "vr4111" run_dump_test "vr4120" - run_dump_test "vr4122" + run_dump_test "vr4120-2" run_dump_test "vr5400" run_dump_test "vr5500" run_dump_test "rm7000" @@ -680,11 +661,6 @@ if { [istarget mips*-*-*] } then { } run_dump_test "elf-rel19" - run_dump_test "${tmips}${el}empic" - run_dump_test "empic2" - run_dump_test "empic3_e" - run_dump_test "empic3_g1" - run_dump_test "empic3_g2" if { !$no_mips16 } { run_dump_test "${tmips}mips${el}16-e" run_dump_test "${tmips}mips${el}16-f" diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/relax-swap1-mips2.d binutils-2.15.91.0.1/gas/testsuite/gas/mips/relax-swap1-mips2.d --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/relax-swap1-mips2.d 2004-03-03 12:24:34.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/relax-swap1-mips2.d 2004-05-27 11:26:04.488190437 -0700 @@ -11,7 +11,7 @@ Disassembly of section \.text: 0+0004 <[^>]*> move v0,a0 0+0008 <[^>]*> lw at,2\(gp\) [ ]*8: R_MIPS_GOT16 \.text -0+000c <[^>]*> addiu at,at,876 +0+000c <[^>]*> addiu at,at,868 [ ]*c: R_MIPS_LO16 \.text 0+0010 <[^>]*> jr at 0+0014 <[^>]*> move v0,a0 @@ -19,7 +19,7 @@ Disassembly of section \.text: 0+001c <[^>]*> lw v0,0\(a0\) 0+0020 <[^>]*> lw at,2\(gp\) [ ]*20: R_MIPS_GOT16 \.text -0+0024 <[^>]*> addiu at,at,876 +0+0024 <[^>]*> addiu at,at,868 [ ]*24: R_MIPS_LO16 \.text 0+0028 <[^>]*> jr at 0+002c <[^>]*> lw v0,0\(a0\) @@ -27,7 +27,7 @@ Disassembly of section \.text: 0+0034 <[^>]*> sw v0,0\(a0\) 0+0038 <[^>]*> lw at,2\(gp\) [ ]*38: R_MIPS_GOT16 \.text -0+003c <[^>]*> addiu at,at,876 +0+003c <[^>]*> addiu at,at,868 [ ]*3c: R_MIPS_LO16 \.text 0+0040 <[^>]*> jr at 0+0044 <[^>]*> sw v0,0\(a0\) @@ -39,7 +39,7 @@ Disassembly of section \.text: 0+005c <[^>]*> nop 0+0060 <[^>]*> lw at,2\(gp\) [ ]*60: R_MIPS_GOT16 \.text -0+0064 <[^>]*> addiu at,at,876 +0+0064 <[^>]*> addiu at,at,868 [ ]*64: R_MIPS_LO16 \.text 0+0068 <[^>]*> jr at 0+006c <[^>]*> nop @@ -49,7 +49,7 @@ Disassembly of section \.text: 0+007c <[^>]*> nop 0+0080 <[^>]*> lw at,2\(gp\) [ ]*80: R_MIPS_GOT16 \.text -0+0084 <[^>]*> addiu at,at,876 +0+0084 <[^>]*> addiu at,at,868 [ ]*84: R_MIPS_LO16 \.text 0+0088 <[^>]*> jr at 0+008c <[^>]*> move v0,a0 @@ -61,7 +61,7 @@ Disassembly of section \.text: 0+00a4 <[^>]*> nop 0+00a8 <[^>]*> lw at,2\(gp\) [ ]*a8: R_MIPS_GOT16 \.text -0+00ac <[^>]*> addiu at,at,876 +0+00ac <[^>]*> addiu at,at,868 [ ]*ac: R_MIPS_LO16 \.text 0+00b0 <[^>]*> jr at 0+00b4 <[^>]*> nop @@ -71,7 +71,7 @@ Disassembly of section \.text: 0+00c4 <[^>]*> nop 0+00c8 <[^>]*> lw at,2\(gp\) [ ]*c8: R_MIPS_GOT16 \.text -0+00cc <[^>]*> addiu at,at,876 +0+00cc <[^>]*> addiu at,at,868 [ ]*cc: R_MIPS_LO16 \.text 0+00d0 <[^>]*> jr at 0+00d4 <[^>]*> addiu v0,a0,1 @@ -83,7 +83,7 @@ Disassembly of section \.text: 0+00ec <[^>]*> nop 0+00f0 <[^>]*> lw at,2\(gp\) [ ]*f0: R_MIPS_GOT16 \.text -0+00f4 <[^>]*> addiu at,at,876 +0+00f4 <[^>]*> addiu at,at,868 [ ]*f4: R_MIPS_LO16 \.text 0+00f8 <[^>]*> jr at 0+00fc <[^>]*> nop @@ -93,7 +93,7 @@ Disassembly of section \.text: 0+010c <[^>]*> nop 0+0110 <[^>]*> lw at,2\(gp\) [ ]*110: R_MIPS_GOT16 \.text -0+0114 <[^>]*> addiu at,at,876 +0+0114 <[^>]*> addiu at,at,868 [ ]*114: R_MIPS_LO16 \.text 0+0118 <[^>]*> jr at 0+011c <[^>]*> lw v0,0\(a0\) @@ -103,7 +103,7 @@ Disassembly of section \.text: 0+012c <[^>]*> nop 0+0130 <[^>]*> lw at,2\(gp\) [ ]*130: R_MIPS_GOT16 \.text -0+0134 <[^>]*> addiu at,at,876 +0+0134 <[^>]*> addiu at,at,868 [ ]*134: R_MIPS_LO16 \.text 0+0138 <[^>]*> jr at 0+013c <[^>]*> sw v0,0\(a0\) @@ -113,7 +113,7 @@ Disassembly of section \.text: 0+014c <[^>]*> nop 0+0150 <[^>]*> lw at,2\(gp\) [ ]*150: R_MIPS_GOT16 \.text -0+0154 <[^>]*> addiu at,at,876 +0+0154 <[^>]*> addiu at,at,868 [ ]*154: R_MIPS_LO16 \.text 0+0158 <[^>]*> jr at 0+015c <[^>]*> sw v0,0\(a0\) @@ -127,7 +127,7 @@ Disassembly of section \.text: 0+017c <[^>]*> nop 0+0180 <[^>]*> lw at,2\(gp\) [ ]*180: R_MIPS_GOT16 \.text -0+0184 <[^>]*> addiu at,at,876 +0+0184 <[^>]*> addiu at,at,868 [ ]*184: R_MIPS_LO16 \.text 0+0188 <[^>]*> jr at 0+018c <[^>]*> nop @@ -139,7 +139,7 @@ Disassembly of section \.text: 0+01a4 <[^>]*> nop 0+01a8 <[^>]*> lw at,2\(gp\) [ ]*1a8: R_MIPS_GOT16 \.text -0+01ac <[^>]*> addiu at,at,876 +0+01ac <[^>]*> addiu at,at,868 [ ]*1ac: R_MIPS_LO16 \.text 0+01b0 <[^>]*> jr at 0+01b4 <[^>]*> move a2,a3 @@ -151,7 +151,7 @@ Disassembly of section \.text: 0+01cc <[^>]*> nop 0+01d0 <[^>]*> lw at,2\(gp\) [ ]*1d0: R_MIPS_GOT16 \.text -0+01d4 <[^>]*> addiu at,at,876 +0+01d4 <[^>]*> addiu at,at,868 [ ]*1d4: R_MIPS_LO16 \.text 0+01d8 <[^>]*> jr at 0+01dc <[^>]*> nop @@ -161,7 +161,7 @@ Disassembly of section \.text: 0+01ec <[^>]*> move v0,a0 0+01f0 <[^>]*> lw at,2\(gp\) [ ]*1f0: R_MIPS_GOT16 \.text -0+01f4 <[^>]*> addiu at,at,876 +0+01f4 <[^>]*> addiu at,at,868 [ ]*1f4: R_MIPS_LO16 \.text 0+01f8 <[^>]*> jr at 0+01fc <[^>]*> nop @@ -171,7 +171,7 @@ Disassembly of section \.text: 0+020c <[^>]*> move v0,a0 0+0210 <[^>]*> lw at,2\(gp\) [ ]*210: R_MIPS_GOT16 \.text -0+0214 <[^>]*> addiu at,at,876 +0+0214 <[^>]*> addiu at,at,868 [ ]*214: R_MIPS_LO16 \.text 0+0218 <[^>]*> jr at 0+021c <[^>]*> nop @@ -183,98 +183,96 @@ Disassembly of section \.text: 0+0234 <[^>]*> move v0,a0 0+0238 <[^>]*> lw at,2\(gp\) [ ]*238: R_MIPS_GOT16 \.text -0+023c <[^>]*> addiu at,at,876 +0+023c <[^>]*> addiu at,at,868 [ ]*23c: R_MIPS_LO16 \.text 0+0240 <[^>]*> jr at 0+0244 <[^>]*> nop 0+0248 <[^>]*> lw at,0\(gp\) [ ]*248: R_MIPS_GOT16 \.text -0+024c <[^>]*> nop -0+0250 <[^>]*> addiu at,at,600 -[ ]*250: R_MIPS_LO16 \.text -0+0254 <[^>]*> sw v0,0\(at\) -0+0258 <[^>]*> b 00000000 -0+025c <[^>]*> nop -0+0260 <[^>]*> lw at,0\(gp\) -[ ]*260: R_MIPS_GOT16 \.text -0+0264 <[^>]*> nop -0+0268 <[^>]*> addiu at,at,624 -[ ]*268: R_MIPS_LO16 \.text -0+026c <[^>]*> sw v0,0\(at\) -0+0270 <[^>]*> lw at,2\(gp\) -[ ]*270: R_MIPS_GOT16 \.text -0+0274 <[^>]*> addiu at,at,876 -[ ]*274: R_MIPS_LO16 \.text -0+0278 <[^>]*> jr at -0+027c <[^>]*> nop -0+0280 <[^>]*> b 00000000 -0+0284 <[^>]*> lwc1 \$f0,0\(a0\) -0+0288 <[^>]*> lw at,2\(gp\) -[ ]*288: R_MIPS_GOT16 \.text -0+028c <[^>]*> addiu at,at,876 -[ ]*28c: R_MIPS_LO16 \.text -0+0290 <[^>]*> jr at -0+0294 <[^>]*> lwc1 \$f0,0\(a0\) -0+0298 <[^>]*> cfc1 v0,\$31 -0+029c <[^>]*> b 00000000 -0+02a0 <[^>]*> nop -0+02a4 <[^>]*> cfc1 v0,\$31 -0+02a8 <[^>]*> lw at,2\(gp\) -[ ]*2a8: R_MIPS_GOT16 \.text -0+02ac <[^>]*> addiu at,at,876 -[ ]*2ac: R_MIPS_LO16 \.text -0+02b0 <[^>]*> jr at -0+02b4 <[^>]*> nop -0+02b8 <[^>]*> ctc1 v0,\$31 -0+02bc <[^>]*> b 00000000 -0+02c0 <[^>]*> nop -0+02c4 <[^>]*> ctc1 v0,\$31 -0+02c8 <[^>]*> lw at,2\(gp\) -[ ]*2c8: R_MIPS_GOT16 \.text -0+02cc <[^>]*> addiu at,at,876 -[ ]*2cc: R_MIPS_LO16 \.text -0+02d0 <[^>]*> jr at -0+02d4 <[^>]*> nop -0+02d8 <[^>]*> mtc1 v0,\$f31 -0+02dc <[^>]*> b 00000000 -0+02e0 <[^>]*> nop -0+02e4 <[^>]*> mtc1 v0,\$f31 -0+02e8 <[^>]*> lw at,2\(gp\) -[ ]*2e8: R_MIPS_GOT16 \.text -0+02ec <[^>]*> addiu at,at,876 -[ ]*2ec: R_MIPS_LO16 \.text -0+02f0 <[^>]*> jr at -0+02f4 <[^>]*> nop -0+02f8 <[^>]*> mfhi v0 -0+02fc <[^>]*> b 00000000 -0+0300 <[^>]*> nop -0+0304 <[^>]*> mfhi v0 -0+0308 <[^>]*> lw at,2\(gp\) -[ ]*308: R_MIPS_GOT16 \.text -0+030c <[^>]*> addiu at,at,876 -[ ]*30c: R_MIPS_LO16 \.text -0+0310 <[^>]*> jr at -0+0314 <[^>]*> nop -0+0318 <[^>]*> move v0,a0 -0+031c <[^>]*> jr v0 -0+0320 <[^>]*> nop -0+0324 <[^>]*> jr a0 -0+0328 <[^>]*> move v0,a0 -0+032c <[^>]*> move v0,a0 -0+0330 <[^>]*> jalr v0 -0+0334 <[^>]*> nop -0+0338 <[^>]*> jalr a0 -0+033c <[^>]*> move v0,a0 -0+0340 <[^>]*> move v0,ra -0+0344 <[^>]*> jalr v1 -0+0348 <[^>]*> nop -0+034c <[^>]*> move ra,a0 -0+0350 <[^>]*> jalr a1 -0+0354 <[^>]*> nop -0+0358 <[^>]*> jalr v0,v1 -0+035c <[^>]*> move ra,a0 -0+0360 <[^>]*> move v0,ra -0+0364 <[^>]*> jalr v0,v1 -0+0368 <[^>]*> nop +0+024c <[^>]*> addiu at,at,596 +[ ]*24c: R_MIPS_LO16 \.text +0+0250 <[^>]*> sw v0,0\(at\) +0+0254 <[^>]*> b 00000000 +0+0258 <[^>]*> nop +0+025c <[^>]*> lw at,0\(gp\) +[ ]*25c: R_MIPS_GOT16 \.text +0+0260 <[^>]*> addiu at,at,616 +[ ]*260: R_MIPS_LO16 \.text +0+0264 <[^>]*> sw v0,0\(at\) +0+0268 <[^>]*> lw at,2\(gp\) +[ ]*268: R_MIPS_GOT16 \.text +0+026c <[^>]*> addiu at,at,868 +[ ]*26c: R_MIPS_LO16 \.text +0+0270 <[^>]*> jr at +0+0274 <[^>]*> nop +0+0278 <[^>]*> b 00000000 +0+027c <[^>]*> lwc1 \$f0,0\(a0\) +0+0280 <[^>]*> lw at,2\(gp\) +[ ]*280: R_MIPS_GOT16 \.text +0+0284 <[^>]*> addiu at,at,868 +[ ]*284: R_MIPS_LO16 \.text +0+0288 <[^>]*> jr at +0+028c <[^>]*> lwc1 \$f0,0\(a0\) +0+0290 <[^>]*> cfc1 v0,\$31 +0+0294 <[^>]*> b 00000000 +0+0298 <[^>]*> nop +0+029c <[^>]*> cfc1 v0,\$31 +0+02a0 <[^>]*> lw at,2\(gp\) +[ ]*2a0: R_MIPS_GOT16 \.text +0+02a4 <[^>]*> addiu at,at,868 +[ ]*2a4: R_MIPS_LO16 \.text +0+02a8 <[^>]*> jr at +0+02ac <[^>]*> nop +0+02b0 <[^>]*> ctc1 v0,\$31 +0+02b4 <[^>]*> b 00000000 +0+02b8 <[^>]*> nop +0+02bc <[^>]*> ctc1 v0,\$31 +0+02c0 <[^>]*> lw at,2\(gp\) +[ ]*2c0: R_MIPS_GOT16 \.text +0+02c4 <[^>]*> addiu at,at,868 +[ ]*2c4: R_MIPS_LO16 \.text +0+02c8 <[^>]*> jr at +0+02cc <[^>]*> nop +0+02d0 <[^>]*> mtc1 v0,\$f31 +0+02d4 <[^>]*> b 00000000 +0+02d8 <[^>]*> nop +0+02dc <[^>]*> mtc1 v0,\$f31 +0+02e0 <[^>]*> lw at,2\(gp\) +[ ]*2e0: R_MIPS_GOT16 \.text +0+02e4 <[^>]*> addiu at,at,868 +[ ]*2e4: R_MIPS_LO16 \.text +0+02e8 <[^>]*> jr at +0+02ec <[^>]*> nop +0+02f0 <[^>]*> mfhi v0 +0+02f4 <[^>]*> b 00000000 +0+02f8 <[^>]*> nop +0+02fc <[^>]*> mfhi v0 +0+0300 <[^>]*> lw at,2\(gp\) +[ ]*300: R_MIPS_GOT16 \.text +0+0304 <[^>]*> addiu at,at,868 +[ ]*304: R_MIPS_LO16 \.text +0+0308 <[^>]*> jr at +0+030c <[^>]*> nop +0+0310 <[^>]*> move v0,a0 +0+0314 <[^>]*> jr v0 +0+0318 <[^>]*> nop +0+031c <[^>]*> jr a0 +0+0320 <[^>]*> move v0,a0 +0+0324 <[^>]*> move v0,a0 +0+0328 <[^>]*> jalr v0 +0+032c <[^>]*> nop +0+0330 <[^>]*> jalr a0 +0+0334 <[^>]*> move v0,a0 +0+0338 <[^>]*> move v0,ra +0+033c <[^>]*> jalr v1 +0+0340 <[^>]*> nop +0+0344 <[^>]*> move ra,a0 +0+0348 <[^>]*> jalr a1 +0+034c <[^>]*> nop +0+0350 <[^>]*> jalr v0,v1 +0+0354 <[^>]*> move ra,a0 +0+0358 <[^>]*> move v0,ra +0+035c <[^>]*> jalr v0,v1 +0+0360 <[^>]*> nop \.\.\. \.\.\. diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/telempic.d binutils-2.15.91.0.1/gas/testsuite/gas/mips/telempic.d --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/telempic.d 2004-01-14 13:07:48.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/telempic.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,155 +0,0 @@ -#objdump: -rst -mmips:4000 -#name: MIPS empic -#as: -mabi=o64 -membedded-pic -mips3 -#source: empic.s -#stderr: empic.l - -# Check GNU-specific embedded relocs, for ELF. - -.*: +file format elf.*mips.* - -SYMBOL TABLE: -0+0000000 l d \.text 0+0000000 -0+0000000 l d \.data 0+0000000 -0+0000000 l d \.bss 0+0000000 -0+0000004 l \.text 0+0000000 l2 -0+0000100 l \.foo 0+0000000 l1 -0+0000034 l \.text 0+0000000 l3 -0+0000098 l \.text 0+0000000 l5 -0+0000000 l d \.foo 0+0000000 -0+0000004 l \.foo 0+0000000 l4 -0+0000000 l d \.reginfo 0+0000000 -0+0000000 l d \.(mdebug|pdr) 0+0000000 -0+0000000 \*UND\* 0+0000000 g1 -0+0000000 \*UND\* 0+0000000 g2 - - -RELOCATION RECORDS FOR \[\.text\]: -OFFSET [ ]+ TYPE VALUE -0+0000004 R_MIPS_GNU_REL16_S2 g1 -0+000000c R_MIPS_GNU_REL16_S2 g2 -0+0000014 R_MIPS_GNU_REL16_S2 g2 -0+000001c R_MIPS_GNU_REL16_S2 \.foo -0+0000024 R_MIPS_GNU_REL16_S2 \.text -0+000002c R_MIPS_GNU_REL16_S2 \.foo -0+0000034 R_MIPS_GNU_REL16_S2 \.text -0+000003c R_MIPS_GNU_REL_HI16 g1 -0+0000040 R_MIPS_GNU_REL_LO16 g1 -0+0000044 R_MIPS_GNU_REL_HI16 \.foo -0+0000048 R_MIPS_GNU_REL_LO16 \.foo -0+0000050 R_MIPS_32 g1 -0+0000054 R_MIPS_32 \.foo -0+0000058 R_MIPS_32 \.text -0+000005c R_MIPS_PC32 g1 -0+0000060 R_MIPS_PC32 \.foo -0+0000068 R_MIPS_64 g1 -0+0000070 R_MIPS_64 \.foo -0+0000078 R_MIPS_64 \.text -0+0000080 R_MIPS_PC64 g1 -0+0000088 R_MIPS_PC64 \.foo -0+0000098 R_MIPS_GNU_REL16_S2 \.text -0+000009c R_MIPS_GNU_REL16_S2 \.text -0+00000a0 R_MIPS_GNU_REL_HI16 \.text -0+00000a4 R_MIPS_GNU_REL_LO16 \.text -0+00000a8 R_MIPS_GNU_REL_HI16 \.text -0+00000ac R_MIPS_GNU_REL_LO16 \.text -0+00000b0 R_MIPS_32 \.text -0+00000b8 R_MIPS_64 \.text -0+00000cc R_MIPS_GNU_REL16_S2 \.text -0+00000d0 R_MIPS_GNU_REL16_S2 \.text -0+00000d4 R_MIPS_GNU_REL_HI16 \.text -0+00000d8 R_MIPS_GNU_REL_LO16 \.text -0+00000dc R_MIPS_GNU_REL_HI16 \.text -0+00000e0 R_MIPS_GNU_REL_LO16 \.text -0+00000e4 R_MIPS_32 \.text -0+00000f0 R_MIPS_64 \.text - - -RELOCATION RECORDS FOR \[\.foo\]: -OFFSET [ ]+ TYPE VALUE -0+0000004 R_MIPS_GNU_REL_HI16 g1 -0+0000008 R_MIPS_GNU_REL_LO16 g1 -0+000000c R_MIPS_GNU_REL_HI16 \.foo -0+0000010 R_MIPS_GNU_REL_LO16 \.foo -0+0000014 R_MIPS_GNU_REL_HI16 \.text -0+0000018 R_MIPS_GNU_REL_LO16 \.text -0+000001c R_MIPS_GNU_REL_HI16 g1 -0+0000020 R_MIPS_GNU_REL_LO16 g1 -0+0000024 R_MIPS_GNU_REL_HI16 g1 -0+0000028 R_MIPS_GNU_REL_LO16 g1 -0+000002c R_MIPS_GNU_REL_HI16 \.foo -0+0000030 R_MIPS_GNU_REL_LO16 \.foo -0+0000034 R_MIPS_GNU_REL_HI16 \.text -0+0000038 R_MIPS_GNU_REL_LO16 \.text -0+000003c R_MIPS_32 g1 -0+0000040 R_MIPS_32 \.foo -0+0000044 R_MIPS_32 \.text -0+0000048 R_MIPS_PC32 g1 -0+0000050 R_MIPS_PC32 \.text -0+0000058 R_MIPS_64 g1 -0+0000060 R_MIPS_64 \.foo -0+0000068 R_MIPS_64 \.text -0+0000070 R_MIPS_PC64 g1 -0+0000080 R_MIPS_PC64 \.text -0+0000088 R_MIPS_GNU_REL_HI16 g1 -0+000008c R_MIPS_GNU_REL_LO16 g1 -0+0000090 R_MIPS_GNU_REL_HI16 \.foo -0+0000094 R_MIPS_GNU_REL_LO16 \.foo -0+0000098 R_MIPS_GNU_REL_HI16 \.text -0+000009c R_MIPS_GNU_REL_LO16 \.text -0+00000a0 R_MIPS_GNU_REL_HI16 g1 -0+00000a4 R_MIPS_GNU_REL_LO16 g1 -0+00000a8 R_MIPS_GNU_REL_HI16 \.foo -0+00000ac R_MIPS_GNU_REL_LO16 \.foo -0+00000b0 R_MIPS_GNU_REL_HI16 \.text -0+00000b4 R_MIPS_GNU_REL_LO16 \.text -0+00000b8 R_MIPS_32 g1 -0+00000bc R_MIPS_32 \.foo -0+00000c0 R_MIPS_32 \.text -0+00000c4 R_MIPS_PC32 g1 -0+00000cc R_MIPS_PC32 \.text -0+00000d0 R_MIPS_64 g1 -0+00000d8 R_MIPS_64 \.foo -0+00000e0 R_MIPS_64 \.text -0+00000e8 R_MIPS_PC64 g1 -0+00000f8 R_MIPS_PC64 \.text - -Contents of section \.text: - 0000 00000000 ffff1104 00000000 ffff0010 .* - 0010 00000000 ffff0010 00000000 3f001104 .* - 0020 00000000 00001104 00000000 41000010 .* - 0030 00000000 00000010 00000000 0000033c .* - 0040 0c0063[26]4 0000033c 140163[26]4 d0ff03[26]4 .* - 0050 00000000 00010000 04000000 28000000 .* - 0060 2c010000 d0ffffff 00000000 00000000 .* - 0070 00010000 00000000 04000000 00000000 .* - 0080 4c000000 00000000 54010000 00000000 .* - 0090 d0ffffff ffffffff 32000010 33000010 .* - 00a0 0000033c d80063[26]4 0000033c e80063[26]4 .* - 00b0 cc000000 34000000 cc000000 00000000 .* - 00c0 34000000 00000000 00000000 32000010 .* - 00d0 33000010 0000033c 0c0163[26]4 0000033c .* - 00e0 1c0163[26]4 cc000000 34000000 00000000 .* - 00f0 cc000000 00000000 34000000 00000000 .* -Contents of section \.reginfo: - 0000 08000080 00000000 00000000 00000000 .* - 0010 00000000 00000000 .* -Contents of section \.foo: - 0000 00000000 0000033c 040063[26]4 0000033c .* - 0010 0c0163[26]4 0000033c 180063[26]4 0000033c .* - 0020 1c0063[26]4 0000033c 240063[26]4 0000033c .* - 0030 2c0163[26]4 0000033c 380063[26]4 00000000 .* - 0040 00010000 04000000 44000000 fc000000 .* - 0050 50000000 00000000 00000000 00000000 .* - 0060 00010000 00000000 04000000 00000000 .* - 0070 6c000000 00000000 fc000000 00000000 .* - 0080 80000000 00000000 0000033c 8c0063[26]4 .* - 0090 0000033c 940163[26]4 0000033c a00063[26]4 .* - 00a0 0000033c a40063[26]4 0000033c ac0163[26]4 .* - 00b0 0000033c b80063[26]4 04000000 04010000 .* - 00c0 08000000 c4000000 00010000 d0000000 .* - 00d0 04000000 00000000 04010000 00000000 .* - 00e0 08000000 00000000 e8000000 00000000 .* - 00f0 00010000 00000000 fc000000 00000000 .* - 0100 00000000 00000000 00000000 00000000 .* - diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/tempic.d binutils-2.15.91.0.1/gas/testsuite/gas/mips/tempic.d --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/tempic.d 2004-01-14 13:07:48.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/tempic.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,155 +0,0 @@ -#objdump: -rst -mmips:4000 -#name: MIPS empic -#as: -mabi=o64 -membedded-pic -mips3 -#source: empic.s -#stderr: empic.l - -# Check GNU-specific embedded relocs, for ELF. - -.*: +file format elf.*mips.* - -SYMBOL TABLE: -0+0000000 l d \.text 0+0000000 -0+0000000 l d \.data 0+0000000 -0+0000000 l d \.bss 0+0000000 -0+0000004 l \.text 0+0000000 l2 -0+0000100 l \.foo 0+0000000 l1 -0+0000034 l \.text 0+0000000 l3 -0+0000098 l \.text 0+0000000 l5 -0+0000000 l d \.foo 0+0000000 -0+0000004 l \.foo 0+0000000 l4 -0+0000000 l d \.reginfo 0+0000000 -0+0000000 l d \.(mdebug|pdr) 0+0000000 -0+0000000 \*UND\* 0+0000000 g1 -0+0000000 \*UND\* 0+0000000 g2 - - -RELOCATION RECORDS FOR \[\.text\]: -OFFSET [ ]+ TYPE VALUE -0+0000004 R_MIPS_GNU_REL16_S2 g1 -0+000000c R_MIPS_GNU_REL16_S2 g2 -0+0000014 R_MIPS_GNU_REL16_S2 g2 -0+000001c R_MIPS_GNU_REL16_S2 \.foo -0+0000024 R_MIPS_GNU_REL16_S2 \.text -0+000002c R_MIPS_GNU_REL16_S2 \.foo -0+0000034 R_MIPS_GNU_REL16_S2 \.text -0+000003c R_MIPS_GNU_REL_HI16 g1 -0+0000040 R_MIPS_GNU_REL_LO16 g1 -0+0000044 R_MIPS_GNU_REL_HI16 \.foo -0+0000048 R_MIPS_GNU_REL_LO16 \.foo -0+0000050 R_MIPS_32 g1 -0+0000054 R_MIPS_32 \.foo -0+0000058 R_MIPS_32 \.text -0+000005c R_MIPS_PC32 g1 -0+0000060 R_MIPS_PC32 \.foo -0+0000068 R_MIPS_64 g1 -0+0000070 R_MIPS_64 \.foo -0+0000078 R_MIPS_64 \.text -0+0000080 R_MIPS_PC64 g1 -0+0000088 R_MIPS_PC64 \.foo -0+0000098 R_MIPS_GNU_REL16_S2 \.text -0+000009c R_MIPS_GNU_REL16_S2 \.text -0+00000a0 R_MIPS_GNU_REL_HI16 \.text -0+00000a4 R_MIPS_GNU_REL_LO16 \.text -0+00000a8 R_MIPS_GNU_REL_HI16 \.text -0+00000ac R_MIPS_GNU_REL_LO16 \.text -0+00000b0 R_MIPS_32 \.text -0+00000b8 R_MIPS_64 \.text -0+00000cc R_MIPS_GNU_REL16_S2 \.text -0+00000d0 R_MIPS_GNU_REL16_S2 \.text -0+00000d4 R_MIPS_GNU_REL_HI16 \.text -0+00000d8 R_MIPS_GNU_REL_LO16 \.text -0+00000dc R_MIPS_GNU_REL_HI16 \.text -0+00000e0 R_MIPS_GNU_REL_LO16 \.text -0+00000e4 R_MIPS_32 \.text -0+00000f0 R_MIPS_64 \.text - - -RELOCATION RECORDS FOR \[\.foo\]: -OFFSET [ ]+ TYPE VALUE -0+0000004 R_MIPS_GNU_REL_HI16 g1 -0+0000008 R_MIPS_GNU_REL_LO16 g1 -0+000000c R_MIPS_GNU_REL_HI16 \.foo -0+0000010 R_MIPS_GNU_REL_LO16 \.foo -0+0000014 R_MIPS_GNU_REL_HI16 \.text -0+0000018 R_MIPS_GNU_REL_LO16 \.text -0+000001c R_MIPS_GNU_REL_HI16 g1 -0+0000020 R_MIPS_GNU_REL_LO16 g1 -0+0000024 R_MIPS_GNU_REL_HI16 g1 -0+0000028 R_MIPS_GNU_REL_LO16 g1 -0+000002c R_MIPS_GNU_REL_HI16 \.foo -0+0000030 R_MIPS_GNU_REL_LO16 \.foo -0+0000034 R_MIPS_GNU_REL_HI16 \.text -0+0000038 R_MIPS_GNU_REL_LO16 \.text -0+000003c R_MIPS_32 g1 -0+0000040 R_MIPS_32 \.foo -0+0000044 R_MIPS_32 \.text -0+0000048 R_MIPS_PC32 g1 -0+0000050 R_MIPS_PC32 \.text -0+0000058 R_MIPS_64 g1 -0+0000060 R_MIPS_64 \.foo -0+0000068 R_MIPS_64 \.text -0+0000070 R_MIPS_PC64 g1 -0+0000080 R_MIPS_PC64 \.text -0+0000088 R_MIPS_GNU_REL_HI16 g1 -0+000008c R_MIPS_GNU_REL_LO16 g1 -0+0000090 R_MIPS_GNU_REL_HI16 \.foo -0+0000094 R_MIPS_GNU_REL_LO16 \.foo -0+0000098 R_MIPS_GNU_REL_HI16 \.text -0+000009c R_MIPS_GNU_REL_LO16 \.text -0+00000a0 R_MIPS_GNU_REL_HI16 g1 -0+00000a4 R_MIPS_GNU_REL_LO16 g1 -0+00000a8 R_MIPS_GNU_REL_HI16 \.foo -0+00000ac R_MIPS_GNU_REL_LO16 \.foo -0+00000b0 R_MIPS_GNU_REL_HI16 \.text -0+00000b4 R_MIPS_GNU_REL_LO16 \.text -0+00000b8 R_MIPS_32 g1 -0+00000bc R_MIPS_32 \.foo -0+00000c0 R_MIPS_32 \.text -0+00000c4 R_MIPS_PC32 g1 -0+00000cc R_MIPS_PC32 \.text -0+00000d0 R_MIPS_64 g1 -0+00000d8 R_MIPS_64 \.foo -0+00000e0 R_MIPS_64 \.text -0+00000e8 R_MIPS_PC64 g1 -0+00000f8 R_MIPS_PC64 \.text - -Contents of section \.text: - 0000 00000000 0411ffff 00000000 1000ffff .* - 0010 00000000 1000ffff 00000000 0411003f .* - 0020 00000000 04110000 00000000 10000041 .* - 0030 00000000 10000000 00000000 3c030000 .* - 0040 [26]463000c 3c030000 [26]4630114 [26]403ffd0 .* - 0050 00000000 00000100 00000004 00000028 .* - 0060 0000012c ffffffd0 00000000 00000000 .* - 0070 00000000 00000100 00000000 00000004 .* - 0080 00000000 0000004c 00000000 00000154 .* - 0090 ffffffff ffffffd0 10000032 10000033 .* - 00a0 3c030000 [26]46300d8 3c030000 [26]46300e8 .* - 00b0 000000cc 00000034 00000000 000000cc .* - 00c0 00000000 00000034 00000000 10000032 .* - 00d0 10000033 3c030000 [26]463010c 3c030000 .* - 00e0 [26]463011c 000000cc 00000034 00000000 .* - 00f0 00000000 000000cc 00000000 00000034 .* -Contents of section \.reginfo: - 0000 80000008 00000000 00000000 00000000 .* - 0010 00000000 00000000 .* -Contents of section \.foo: - 0000 00000000 3c030000 [26]4630004 3c030000 .* - 0010 [26]463010c 3c030000 [26]4630018 3c030000 .* - 0020 [26]463001c 3c030000 [26]4630024 3c030000 .* - 0030 [26]463012c 3c030000 [26]4630038 00000000 .* - 0040 00000100 00000004 00000044 000000fc .* - 0050 00000050 00000000 00000000 00000000 .* - 0060 00000000 00000100 00000000 00000004 .* - 0070 00000000 0000006c 00000000 000000fc .* - 0080 00000000 00000080 3c030000 [26]463008c .* - 0090 3c030000 [26]4630194 3c030000 [26]46300a0 .* - 00a0 3c030000 [26]46300a4 3c030000 [26]46301ac .* - 00b0 3c030000 [26]46300b8 00000004 00000104 .* - 00c0 00000008 000000c4 00000100 000000d0 .* - 00d0 00000000 00000004 00000000 00000104 .* - 00e0 00000000 00000008 00000000 000000e8 .* - 00f0 00000000 00000100 00000000 000000fc .* - 0100 00000000 00000000 00000000 00000000 .* - diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/ulh-empic.d binutils-2.15.91.0.1/gas/testsuite/gas/mips/ulh-empic.d --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/ulh-empic.d 2003-05-15 13:42:25.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/ulh-empic.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,91 +0,0 @@ -#objdump: -dr --prefix-addresses -mmips:3000 -#name: MIPS ulh-empic -#as: -32 -mips1 -membedded-pic -#source: ulh-pic.s - -# Test the ulh macro with -membedded-pic. - -.*: +file format .*mips.* - -Disassembly of section .text: -0+0000 <[^>]*> addiu at,gp,-16384 -[ ]*0: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.* -0+0004 <[^>]*> lb a0,[01]\(at\) -0+0008 <[^>]*> lbu at,[01]\(at\) -0+000c <[^>]*> sll a0,a0,0x8 -0+0010 <[^>]*> or a0,a0,at -0+0014 <[^>]*> addiu at,gp,0 -[ ]*14: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label -0+0018 <[^>]*> lbu a0,[01]\(at\) -0+001c <[^>]*> lbu at,[01]\(at\) -0+0020 <[^>]*> sll a0,a0,0x8 -0+0024 <[^>]*> or a0,a0,at -0+0028 <[^>]*> addiu at,gp,0 -[ ]*28: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label -0+002c <[^>]*> lwl a0,[03]\(at\) -0+0030 <[^>]*> lwr a0,[03]\(at\) -0+0034 <[^>]*> addiu at,gp,0 -[ ]*34: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common -0+0038 <[^>]*> sb a0,[01]\(at\) -0+003c <[^>]*> srl a0,a0,0x8 -0+0040 <[^>]*> sb a0,[01]\(at\) -0+0044 <[^>]*> lbu at,[01]\(at\) -0+0048 <[^>]*> sll a0,a0,0x8 -0+004c <[^>]*> or a0,a0,at -0+0050 <[^>]*> addiu at,gp,0 -[ ]*50: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common -0+0054 <[^>]*> swl a0,[03]\(at\) -0+0058 <[^>]*> swr a0,[03]\(at\) -0+005c <[^>]*> addiu at,gp,-16384 -[ ]*5c: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+0060 <[^>]*> lb a0,[01]\(at\) -0+0064 <[^>]*> lbu at,[01]\(at\) -0+0068 <[^>]*> sll a0,a0,0x8 -0+006c <[^>]*> or a0,a0,at -0+0070 <[^>]*> addiu at,gp,-15384 -[ ]*70: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+0074 <[^>]*> lbu a0,[01]\(at\) -0+0078 <[^>]*> lbu at,[01]\(at\) -0+007c <[^>]*> sll a0,a0,0x8 -0+0080 <[^>]*> or a0,a0,at -0+0084 <[^>]*> addiu at,gp,-16383 -[ ]*84: [A-Z0-9_]*GPREL[A-Z0-9_]* .sdata.* -0+0088 <[^>]*> lwl a0,[03]\(at\) -0+008c <[^>]*> lwr a0,[03]\(at\) -0+0090 <[^>]*> addiu at,gp,1 -[ ]*90: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_data_label -0+0094 <[^>]*> sb a0,[01]\(at\) -0+0098 <[^>]*> srl a0,a0,0x8 -0+009c <[^>]*> sb a0,[01]\(at\) -0+00a0 <[^>]*> lbu at,[01]\(at\) -0+00a4 <[^>]*> sll a0,a0,0x8 -0+00a8 <[^>]*> or a0,a0,at -0+00ac <[^>]*> addiu at,gp,1 -[ ]*ac: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_data_label -0+00b0 <[^>]*> swl a0,[03]\(at\) -0+00b4 <[^>]*> swr a0,[03]\(at\) -0+00b8 <[^>]*> addiu at,gp,1 -[ ]*b8: [A-Z0-9_]*GPREL[A-Z0-9_]* big_external_common -0+00bc <[^>]*> lb a0,[01]\(at\) -0+00c0 <[^>]*> lbu at,[01]\(at\) -0+00c4 <[^>]*> sll a0,a0,0x8 -0+00c8 <[^>]*> or a0,a0,at -0+00cc <[^>]*> addiu at,gp,1 -[ ]*cc: [A-Z0-9_]*GPREL[A-Z0-9_]* small_external_common -0+00d0 <[^>]*> lbu a0,[01]\(at\) -0+00d4 <[^>]*> lbu at,[01]\(at\) -0+00d8 <[^>]*> sll a0,a0,0x8 -0+00dc <[^>]*> or a0,a0,at -0+00e0 <[^>]*> addiu at,gp,-16383 -[ ]*e0: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+00e4 <[^>]*> lwl a0,[03]\(at\) -0+00e8 <[^>]*> lwr a0,[03]\(at\) -0+00ec <[^>]*> addiu at,gp,-15383 -[ ]*ec: [A-Z0-9_]*GPREL[A-Z0-9_]* .sbss.* -0+00f0 <[^>]*> sb a0,[01]\(at\) -0+00f4 <[^>]*> srl a0,a0,0x8 -0+00f8 <[^>]*> sb a0,[01]\(at\) -0+00fc <[^>]*> lbu at,[01]\(at\) -0+0100 <[^>]*> sll a0,a0,0x8 -0+0104 <[^>]*> or a0,a0,at - ... diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/vr4120-2.d binutils-2.15.91.0.1/gas/testsuite/gas/mips/vr4120-2.d --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/vr4120-2.d 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/vr4120-2.d 2004-05-27 11:26:04.503188498 -0700 @@ -0,0 +1,172 @@ +#objdump: -dz --prefix-addresses -m mips:4120 +#as: -32 -march=vr4120 -mfix-vr4120 +#name: MIPS vr4120 workarounds + +.*: +file format .*mips.* + +Disassembly of section .text: +.* <[^>]*> macc a0,a1,a2 +.* <[^>]*> nop +.* <[^>]*> div zero,a3,t0 +.* <[^>]*> or a0,a0,a1 +.* <[^>]*> dmacc a0,a1,a2 +.* <[^>]*> nop +.* <[^>]*> div zero,a3,t0 +.* <[^>]*> or a0,a0,a1 +.* <[^>]*> macc a0,a1,a2 +.* <[^>]*> nop +.* <[^>]*> divu zero,a3,t0 +.* <[^>]*> or a0,a0,a1 +.* <[^>]*> dmacc a0,a1,a2 +.* <[^>]*> nop +.* <[^>]*> divu zero,a3,t0 +.* <[^>]*> or a0,a0,a1 +.* <[^>]*> macc a0,a1,a2 +.* <[^>]*> nop +.* <[^>]*> ddiv zero,a3,t0 +.* <[^>]*> or a0,a0,a1 +.* <[^>]*> dmacc a0,a1,a2 +.* <[^>]*> nop +.* <[^>]*> ddiv zero,a3,t0 +.* <[^>]*> or a0,a0,a1 +.* <[^>]*> macc a0,a1,a2 +.* <[^>]*> nop +.* <[^>]*> ddivu zero,a3,t0 +.* <[^>]*> or a0,a0,a1 +.* <[^>]*> dmacc a0,a1,a2 +.* <[^>]*> nop +.* <[^>]*> ddivu zero,a3,t0 +.* <[^>]*> or a0,a0,a1 +.* <[^>]*> dmult a0,a1 +.* <[^>]*> nop +.* <[^>]*> dmult a2,a3 +.* <[^>]*> or a0,a0,a1 +.* <[^>]*> dmultu a0,a1 +.* <[^>]*> nop +.* <[^>]*> dmultu a2,a3 +.* <[^>]*> or a0,a0,a1 +.* <[^>]*> dmacc a0,a1,a2 +.* <[^>]*> nop +.* <[^>]*> dmacc a2,a3,t0 +.* <[^>]*> or a0,a0,a1 +.* <[^>]*> dmult a0,a1 +.* <[^>]*> nop +.* <[^>]*> dmacc a2,a3,t0 +.* <[^>]*> or a0,a0,a1 +.* <[^>]*> macc a0,a1,a2 +.* <[^>]*> nop +.* <[^>]*> mtlo a3 +.* <[^>]*> dmacc a0,a1,a2 +.* <[^>]*> nop +.* <[^>]*> mtlo a3 +.* <[^>]*> macc a0,a1,a2 +.* <[^>]*> nop +.* <[^>]*> mthi a3 +.* <[^>]*> dmacc a0,a1,a2 +.* <[^>]*> nop +.* <[^>]*> mthi a3 +# +# vr4181a_md1: +# +.* <[^>]*> macc a0,a1,a2 +.* <[^>]*> nop +.* <[^>]*> mult a0,a1 +.* <[^>]*> or a0,a0,a1 +# +.* <[^>]*> macc a0,a1,a2 +.* <[^>]*> nop +.* <[^>]*> multu a0,a1 +.* <[^>]*> or a0,a0,a1 +# +.* <[^>]*> macc a0,a1,a2 +.* <[^>]*> nop +.* <[^>]*> dmult a0,a1 +.* <[^>]*> or a0,a0,a1 +# +.* <[^>]*> macc a0,a1,a2 +.* <[^>]*> nop +.* <[^>]*> dmultu a0,a1 +.* <[^>]*> or a0,a0,a1 +# +.* <[^>]*> dmacc a0,a1,a2 +.* <[^>]*> nop +.* <[^>]*> mult a0,a1 +.* <[^>]*> or a0,a0,a1 +# +.* <[^>]*> dmacc a0,a1,a2 +.* <[^>]*> nop +.* <[^>]*> multu a0,a1 +.* <[^>]*> or a0,a0,a1 +# +.* <[^>]*> dmacc a0,a1,a2 +.* <[^>]*> nop +.* <[^>]*> dmult a0,a1 +.* <[^>]*> or a0,a0,a1 +# +.* <[^>]*> dmacc a0,a1,a2 +.* <[^>]*> nop +.* <[^>]*> dmultu a0,a1 +.* <[^>]*> or a0,a0,a1 +# +# vr4181a_md4: +# +.* <[^>]*> dmult a0,a1 +.* <[^>]*> nop +.* <[^>]*> macc a0,a1,a2 +.* <[^>]*> or a0,a0,a1 +# +.* <[^>]*> dmultu a0,a1 +.* <[^>]*> nop +.* <[^>]*> macc a0,a1,a2 +.* <[^>]*> or a0,a0,a1 +# +.* <[^>]*> div zero,a0,a1 +.* <[^>]*> nop +.* <[^>]*> macc a0,a1,a2 +.* <[^>]*> or a0,a0,a1 +# +.* <[^>]*> divu zero,a0,a1 +.* <[^>]*> nop +.* <[^>]*> macc a0,a1,a2 +.* <[^>]*> or a0,a0,a1 +# +.* <[^>]*> ddiv zero,a0,a1 +.* <[^>]*> nop +.* <[^>]*> macc a0,a1,a2 +.* <[^>]*> or a0,a0,a1 +# +.* <[^>]*> ddivu zero,a0,a1 +.* <[^>]*> nop +.* <[^>]*> macc a0,a1,a2 +.* <[^>]*> or a0,a0,a1 +# +.* <[^>]*> dmult a0,a1 +.* <[^>]*> nop +.* <[^>]*> dmacc a0,a1,a2 +.* <[^>]*> or a0,a0,a1 +# +.* <[^>]*> dmultu a0,a1 +.* <[^>]*> nop +.* <[^>]*> dmacc a0,a1,a2 +.* <[^>]*> or a0,a0,a1 +# +.* <[^>]*> div zero,a0,a1 +.* <[^>]*> nop +.* <[^>]*> dmacc a0,a1,a2 +.* <[^>]*> or a0,a0,a1 +# +.* <[^>]*> divu zero,a0,a1 +.* <[^>]*> nop +.* <[^>]*> dmacc a0,a1,a2 +.* <[^>]*> or a0,a0,a1 +# +.* <[^>]*> ddiv zero,a0,a1 +.* <[^>]*> nop +.* <[^>]*> dmacc a0,a1,a2 +.* <[^>]*> or a0,a0,a1 +# +.* <[^>]*> ddivu zero,a0,a1 +.* <[^>]*> nop +.* <[^>]*> dmacc a0,a1,a2 +.* <[^>]*> or a0,a0,a1 +#... diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/vr4120-2.s binutils-2.15.91.0.1/gas/testsuite/gas/mips/vr4120-2.s --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/vr4120-2.s 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/vr4120-2.s 2004-05-27 11:26:04.503188498 -0700 @@ -0,0 +1,147 @@ +# Test workarounds selected by -mfix-vr4120. +# Note that we only work around bugs gcc may generate. + +r21: + macc $4,$5,$6 + div $0,$7,$8 + or $4,$5 + + dmacc $4,$5,$6 + div $0,$7,$8 + or $4,$5 + + macc $4,$5,$6 + divu $0,$7,$8 + or $4,$5 + + dmacc $4,$5,$6 + divu $0,$7,$8 + or $4,$5 + + macc $4,$5,$6 + ddiv $0,$7,$8 + or $4,$5 + + dmacc $4,$5,$6 + ddiv $0,$7,$8 + or $4,$5 + + macc $4,$5,$6 + ddivu $0,$7,$8 + or $4,$5 + + dmacc $4,$5,$6 + ddivu $0,$7,$8 + or $4,$5 + +r23: + dmult $4,$5 + dmult $6,$7 + or $4,$5 + + dmultu $4,$5 + dmultu $6,$7 + or $4,$5 + + dmacc $4,$5,$6 + dmacc $6,$7,$8 + or $4,$5 + + dmult $4,$5 + dmacc $6,$7,$8 + or $4,$5 + +r24: + macc $4,$5,$6 + mtlo $7 + + dmacc $4,$5,$6 + mtlo $7 + + macc $4,$5,$6 + mthi $7 + + dmacc $4,$5,$6 + mthi $7 + +vr4181a_md1: + macc $4,$5,$6 + mult $4,$5 + or $4,$5 + + macc $4,$5,$6 + multu $4,$5 + or $4,$5 + + macc $4,$5,$6 + dmult $4,$5 + or $4,$5 + + macc $4,$5,$6 + dmultu $4,$5 + or $4,$5 + + dmacc $4,$5,$6 + mult $4,$5 + or $4,$5 + + dmacc $4,$5,$6 + multu $4,$5 + or $4,$5 + + dmacc $4,$5,$6 + dmult $4,$5 + or $4,$5 + + dmacc $4,$5,$6 + dmultu $4,$5 + or $4,$5 + +vr4181a_md4: + dmult $4,$5 + macc $4,$5,$6 + or $4,$5 + + dmultu $4,$5 + macc $4,$5,$6 + or $4,$5 + + div $0,$4,$5 + macc $4,$5,$6 + or $4,$5 + + divu $0,$4,$5 + macc $4,$5,$6 + or $4,$5 + + ddiv $0,$4,$5 + macc $4,$5,$6 + or $4,$5 + + ddivu $0,$4,$5 + macc $4,$5,$6 + or $4,$5 + + dmult $4,$5 + dmacc $4,$5,$6 + or $4,$5 + + dmultu $4,$5 + dmacc $4,$5,$6 + or $4,$5 + + div $0,$4,$5 + dmacc $4,$5,$6 + or $4,$5 + + divu $0,$4,$5 + dmacc $4,$5,$6 + or $4,$5 + + ddiv $0,$4,$5 + dmacc $4,$5,$6 + or $4,$5 + + ddivu $0,$4,$5 + dmacc $4,$5,$6 + or $4,$5 diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/vr4122.d binutils-2.15.91.0.1/gas/testsuite/gas/mips/vr4122.d --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/vr4122.d 2004-04-14 21:26:05.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/vr4122.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,68 +0,0 @@ -#objdump: -dz --prefix-addresses -m mips:4120 -#as: -32 -march=vr4120 -mfix-vr4120 -#name: MIPS vr4120 workarounds - -.*: +file format .*mips.* - -Disassembly of section .text: -0+0000 <[^>]*> macc a0,a1,a2 -0+0004 <[^>]*> nop -0+0008 <[^>]*> div zero,a3,t0 -0+000c <[^>]*> or a0,a0,a1 -0+0010 <[^>]*> dmacc a0,a1,a2 -0+0014 <[^>]*> nop -0+0018 <[^>]*> div zero,a3,t0 -0+001c <[^>]*> or a0,a0,a1 -0+0020 <[^>]*> macc a0,a1,a2 -0+0024 <[^>]*> nop -0+0028 <[^>]*> divu zero,a3,t0 -0+002c <[^>]*> or a0,a0,a1 -0+0030 <[^>]*> dmacc a0,a1,a2 -0+0034 <[^>]*> nop -0+0038 <[^>]*> divu zero,a3,t0 -0+003c <[^>]*> or a0,a0,a1 -0+0040 <[^>]*> macc a0,a1,a2 -0+0044 <[^>]*> nop -0+0048 <[^>]*> ddiv zero,a3,t0 -0+004c <[^>]*> or a0,a0,a1 -0+0050 <[^>]*> dmacc a0,a1,a2 -0+0054 <[^>]*> nop -0+0058 <[^>]*> ddiv zero,a3,t0 -0+005c <[^>]*> or a0,a0,a1 -0+0060 <[^>]*> macc a0,a1,a2 -0+0064 <[^>]*> nop -0+0068 <[^>]*> ddivu zero,a3,t0 -0+006c <[^>]*> or a0,a0,a1 -0+0070 <[^>]*> dmacc a0,a1,a2 -0+0074 <[^>]*> nop -0+0078 <[^>]*> ddivu zero,a3,t0 -0+007c <[^>]*> or a0,a0,a1 -0+0080 <[^>]*> dmult a0,a1 -0+0084 <[^>]*> nop -0+0088 <[^>]*> dmult a2,a3 -0+008c <[^>]*> or a0,a0,a1 -0+0090 <[^>]*> dmultu a0,a1 -0+0094 <[^>]*> nop -0+0098 <[^>]*> dmultu a2,a3 -0+009c <[^>]*> or a0,a0,a1 -0+00a0 <[^>]*> dmacc a0,a1,a2 -0+00a4 <[^>]*> nop -0+00a8 <[^>]*> dmacc a2,a3,t0 -0+00ac <[^>]*> or a0,a0,a1 -0+00b0 <[^>]*> dmult a0,a1 -0+00b4 <[^>]*> nop -0+00b8 <[^>]*> dmacc a2,a3,t0 -0+00bc <[^>]*> or a0,a0,a1 -0+00c0 <[^>]*> macc a0,a1,a2 -0+00c4 <[^>]*> nop -0+00c8 <[^>]*> mtlo a3 -0+00cc <[^>]*> dmacc a0,a1,a2 -0+00d0 <[^>]*> nop -0+00d4 <[^>]*> mtlo a3 -0+00d8 <[^>]*> macc a0,a1,a2 -0+00dc <[^>]*> nop -0+00e0 <[^>]*> mthi a3 -0+00e4 <[^>]*> dmacc a0,a1,a2 -0+00e8 <[^>]*> nop -0+00ec <[^>]*> mthi a3 -#... diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/mips/vr4122.s binutils-2.15.91.0.1/gas/testsuite/gas/mips/vr4122.s --- binutils-2.15.90.0.3/gas/testsuite/gas/mips/vr4122.s 2004-04-14 21:26:05.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/mips/vr4122.s 1969-12-31 16:00:00.000000000 -0800 @@ -1,65 +0,0 @@ -# Test workarounds selected by -mfix-vr4120. -# Note that we only work around bugs gcc may generate. - -r21: - macc $4,$5,$6 - div $0,$7,$8 - or $4,$5 - - dmacc $4,$5,$6 - div $0,$7,$8 - or $4,$5 - - macc $4,$5,$6 - divu $0,$7,$8 - or $4,$5 - - dmacc $4,$5,$6 - divu $0,$7,$8 - or $4,$5 - - macc $4,$5,$6 - ddiv $0,$7,$8 - or $4,$5 - - dmacc $4,$5,$6 - ddiv $0,$7,$8 - or $4,$5 - - macc $4,$5,$6 - ddivu $0,$7,$8 - or $4,$5 - - dmacc $4,$5,$6 - ddivu $0,$7,$8 - or $4,$5 - -r23: - dmult $4,$5 - dmult $6,$7 - or $4,$5 - - dmultu $4,$5 - dmultu $6,$7 - or $4,$5 - - dmacc $4,$5,$6 - dmacc $6,$7,$8 - or $4,$5 - - dmult $4,$5 - dmacc $6,$7,$8 - or $4,$5 - -r24: - macc $4,$5,$6 - mtlo $7 - - dmacc $4,$5,$6 - mtlo $7 - - macc $4,$5,$6 - mthi $7 - - dmacc $4,$5,$6 - mthi $7 diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/ppc/power4.d binutils-2.15.91.0.1/gas/testsuite/gas/ppc/power4.d --- binutils-2.15.90.0.3/gas/testsuite/gas/ppc/power4.d 2004-04-12 12:56:35.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/ppc/power4.d 2004-05-27 11:26:04.529185136 -0700 @@ -10,7 +10,7 @@ start address 0x0+ Sections: Idx Name +Size +VMA +LMA +File off +Algn - +0 \.text +0+b8 +0+ +0+ +.* + +0 \.text +0+c4 +0+ +0+ +.* +CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE +1 \.data +0+10 +0+ +0+ +.* +CONTENTS, ALLOC, LOAD, DATA @@ -99,3 +99,6 @@ Disassembly of section \.text: +ac: 7c 72 00 26 mfcr r3,32 +b0: 7c 74 00 26 mfcr r3,64 +b4: 7c 78 00 26 mfcr r3,128 + +b8: 7c 01 17 ec dcbz r1,r2 + +bc: 7c 23 27 ec dcbzl r3,r4 + +c0: 7c 05 37 ec dcbz r5,r6 diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/ppc/power4.s binutils-2.15.91.0.1/gas/testsuite/gas/ppc/power4.s --- binutils-2.15.90.0.3/gas/testsuite/gas/ppc/power4.s 2004-01-14 13:07:49.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/ppc/power4.s 2004-05-27 11:26:04.544183197 -0700 @@ -68,6 +68,10 @@ dsym1: mfcr 3,0x40 mfcr 3,0x80 + dcbz 1, 2 + dcbzl 3, 4 + dcbz 5, 6 + .section ".data" usym0: .llong 0xcafebabe usym1: diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/sh/pcrel2.d binutils-2.15.91.0.1/gas/testsuite/gas/sh/pcrel2.d --- binutils-2.15.90.0.3/gas/testsuite/gas/sh/pcrel2.d 2002-10-07 23:08:00.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/sh/pcrel2.d 2004-05-27 11:26:04.559181257 -0700 @@ -8,8 +8,8 @@ Disassembly of section \.text: 00000000 : 0: 8b 01 bf 6 - 2: d0 02 mov\.l c ,r0 ! 0x6 - 4: 90 02 mov\.w c ,r0 ! 0x0 + 2: d0 02 mov\.l c ,r0 ! 0x6 .* + 4: 90 02 mov\.w c ,r0 ! 0x0 .* 00000006 : 6: af fe bra 6 diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/sh/tlsd.d binutils-2.15.91.0.1/gas/testsuite/gas/sh/tlsd.d --- binutils-2.15.90.0.3/gas/testsuite/gas/sh/tlsd.d 2002-10-12 09:02:23.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/sh/tlsd.d 2004-05-27 11:26:04.561180999 -0700 @@ -11,12 +11,12 @@ Disassembly of section .text: 2: 2f e6 [ ]*mov\.l r14,@-r15 4: 4f 22 [ ]*sts\.l pr,@-r15 6: c7 14 [ ]*mova 58 ,r0 - 8: dc 13 [ ]*mov\.l 58 ,r12[ ]+! 0x0 + 8: dc 13 [ ]*mov\.l 58 ,r12[ ]+! 0x0 .* a: 3c 0c [ ]*add r0,r12 c: 6e f3 [ ]*mov r15,r14 - e: d4 04 [ ]*mov\.l 20 ,r4[ ]+! 0x0 + e: d4 04 [ ]*mov\.l 20 ,r4[ ]+! 0x0 .* 10: c7 04 [ ]*mova 24 ,r0 - 12: d1 04 [ ]*mov\.l 24 ,r1[ ]+! 0x0 + 12: d1 04 [ ]*mov\.l 24 ,r1[ ]+! 0x0 .* 14: 31 0c [ ]*add r0,r1 16: 41 0b [ ]*jsr @r1 18: 34 cc [ ]*add r12,r4 @@ -26,9 +26,9 @@ Disassembly of section .text: \.\.\. [ ]+20: R_SH_TLS_GD_32 foo [ ]+24: R_SH_PLT32 __tls_get_addr - 28: d4 03 [ ]*mov\.l 38 ,r4[ ]+! 0x0 + 28: d4 03 [ ]*mov\.l 38 ,r4[ ]+! 0x0 .* 2a: c7 04 [ ]*mova 3c ,r0 - 2c: d1 03 [ ]*mov\.l 3c ,r1[ ]+! 0x0 + 2c: d1 03 [ ]*mov\.l 3c ,r1[ ]+! 0x0 .* 2e: 31 0c [ ]*add r0,r1 30: 41 0b [ ]*jsr @r1 32: 34 cc [ ]*add r12,r4 @@ -38,10 +38,10 @@ Disassembly of section .text: [ ]+38: R_SH_TLS_LD_32 bar [ ]+3c: R_SH_PLT32 __tls_get_addr 40: e2 01 [ ]*mov #1,r2 - 42: d1 06 [ ]*mov\.l 5c ,r1[ ]+! 0x0 + 42: d1 06 [ ]*mov\.l 5c ,r1[ ]+! 0x0 .* 44: 30 1c [ ]*add r1,r0 46: 20 22 [ ]*mov\.l r2,@r0 - 48: d1 05 [ ]*mov\.l 60 ,r1[ ]+! 0x0 + 48: d1 05 [ ]*mov\.l 60 ,r1[ ]+! 0x0 .* 4a: 30 1c [ ]*add r1,r0 4c: 6f e3 [ ]*mov r14,r15 4e: 4f 26 [ ]*lds\.l @r15\+,pr diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/sh/tlsnopic.d binutils-2.15.91.0.1/gas/testsuite/gas/sh/tlsnopic.d --- binutils-2.15.90.0.3/gas/testsuite/gas/sh/tlsnopic.d 2002-10-12 09:02:23.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/sh/tlsnopic.d 2004-05-27 11:26:04.562180869 -0700 @@ -10,7 +10,7 @@ Disassembly of section .text: 0: 2f e6 [ ]*mov\.l r14,@-r15 2: 6e f3 [ ]*mov r15,r14 4: 01 12 [ ]*stc gbr,r1 - 6: d0 02 [ ]*mov\.l 10 ,r0[ ]+! 0x0 + 6: d0 02 [ ]*mov\.l 10 ,r0[ ]+! 0x0 .* 8: 30 1c [ ]*add r1,r0 a: 6f e3 [ ]*mov r14,r15 c: 00 0b [ ]*rts diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/sh/tlspic.d binutils-2.15.91.0.1/gas/testsuite/gas/sh/tlspic.d --- binutils-2.15.90.0.3/gas/testsuite/gas/sh/tlspic.d 2002-10-12 09:02:23.000000000 -0700 +++ binutils-2.15.91.0.1/gas/testsuite/gas/sh/tlspic.d 2004-05-27 11:26:04.562180869 -0700 @@ -11,9 +11,9 @@ Disassembly of section .text: 2: 2f e6 [ ]*mov\.l r14,@-r15 4: 6e f3 [ ]*mov r15,r14 6: c7 08 [ ]*mova 28 ,r0 - 8: dc 07 [ ]*mov\.l 28 ,r12[ ]+! 0x0 + 8: dc 07 [ ]*mov\.l 28 ,r12[ ]+! 0x0 .* a: 3c 0c [ ]*add r0,r12 - c: d0 02 [ ]*mov\.l 18 ,r0[ ]+! 0x0 + c: d0 02 [ ]*mov\.l 18 ,r0[ ]+! 0x0 .* e: 01 12 [ ]*stc gbr,r1 10: 00 ce [ ]*mov\.l @\(r0,r12\),r0 12: a0 03 [ ]*bra 1c diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/sparc/sparc.exp binutils-2.15.91.0.1/gas/testsuite/gas/sparc/sparc.exp --- binutils-2.15.90.0.3/gas/testsuite/gas/sparc/sparc.exp 2003-01-21 10:21:33.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/sparc/sparc.exp 2004-05-27 11:26:04.572179576 -0700 @@ -13,7 +13,7 @@ proc gas_64_check { } { global srcdir catch "exec $srcdir/lib/run $NM $NMFLAGS --help" nm_help - return [regexp "elf64\[_-\]sparc" $nm_help]; + return [regexp "elf64\[_-\]sparc" $nm_help] } proc sparc_elf_setup { } { diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/symver/symver0.d binutils-2.15.91.0.1/gas/testsuite/gas/symver/symver0.d --- binutils-2.15.90.0.3/gas/testsuite/gas/symver/symver0.d 2000-11-16 15:35:33.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/symver/symver0.d 2004-05-27 11:26:04.581178413 -0700 @@ -1,6 +1,10 @@ #nm: -n #name: symver symver0 +# +# The #... and #pass are there to match extra symbols inserted by +# some toolchains, eg arm-elf toolchain will add $d. [ ]+U foo@version1 +#... 0+0000000 D foo1 0+00000.. d L_foo1 diff -uprN binutils-2.15.90.0.3/gas/testsuite/gas/symver/symver1.d binutils-2.15.91.0.1/gas/testsuite/gas/symver/symver1.d --- binutils-2.15.90.0.3/gas/testsuite/gas/symver/symver1.d 2000-11-16 15:35:33.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/gas/symver/symver1.d 2004-05-27 11:26:04.586177766 -0700 @@ -1,7 +1,11 @@ #nm: -n #name: symver symver1 +# +# The #... and #pass are there to match extra symbols inserted by +# some toolchains, eg arm-elf toolchain will add $d. [ ]+U foo@version1 +#... 0+0000000 D foo1@@version1 0+00000.. d L_foo1 0+00000.. D foo2 diff -uprN binutils-2.15.90.0.3/gas/testsuite/lib/gas-defs.exp binutils-2.15.91.0.1/gas/testsuite/lib/gas-defs.exp --- binutils-2.15.90.0.3/gas/testsuite/lib/gas-defs.exp 2004-01-14 13:07:51.000000000 -0800 +++ binutils-2.15.91.0.1/gas/testsuite/lib/gas-defs.exp 2004-05-27 11:26:04.603175568 -0700 @@ -45,7 +45,7 @@ proc gas_run { prog as_opts redir } { catch "exec $srcdir/lib/run $AS $ASFLAGS $as_opts $srcdir/$subdir/$prog $redir" comp_output set comp_output [prune_warnings $comp_output] verbose "output was $comp_output" - return [list $comp_output ""]; + return [list $comp_output ""] } proc all_ones { args } { @@ -197,6 +197,7 @@ proc is_elf_format {} { && ![istarget *-*-irix5*] \ && ![istarget *-*-irix6*] \ && ![istarget *-*-netbsd*] \ + && ![istarget *-*-openbsd*] \ && ![istarget *-*-solaris2*] } { return 0 } @@ -217,6 +218,18 @@ proc is_elf_format {} { || [istarget ns32k-*-netbsd*]) } { return 0 } + + if { [istarget arm-*-openbsd*] \ + || [istarget i386-*-openbsd\[0-2\].*] \ + || [istarget i386-*-openbsd3.\[0-3\]] \ + || [istarget m68*-*-openbsd*] \ + || [istarget ns32k-*-openbsd*] \ + || [istarget sparc-*-openbsd\[0-2\].*] \ + || [istarget sparc-*-openbsd3.\[0-1\]] \ + || [istarget vax-*-openbsd*] } { + return 0 + } + return 1 } diff -uprN binutils-2.15.90.0.3/gprof/ChangeLog binutils-2.15.91.0.1/gprof/ChangeLog --- binutils-2.15.90.0.3/gprof/ChangeLog 2004-04-12 12:56:35.000000000 -0700 +++ binutils-2.15.91.0.1/gprof/ChangeLog 2004-05-27 11:26:04.604175439 -0700 @@ -1,3 +1,48 @@ +2004-05-26 Andrew Cagney + + * corefile.c (core_create_line_syms): Per ISO C '90, move + vma_high's declaration to the function's start. + +2004-05-26 Ben Elliston + + * gprof.c (main): Clean up some more. + + * alpha.c, basic_blocks.c, basic_blocks.h, bb_exit_func.c, + call_graph.c, call_graph.h, cg_arcs.c, cg_arcs.h, cg_dfn.c, + cg_dfn.h, cg_print.c, cg_print.h, corefile.c, corefile.h, + gmon_io.c, gmon_io.h, gprof.c, gprof.h, hertz.h, hist.c, hist.h, + i386.c, mips.c, search_list.c, search_list.h, source.c, source.h, + sparc.c, sym_ids.c, sym_ids.h, symtab.c, symtab.h, tahoe.c, + utils.c, utils.h, vax.c, gen-c-prog.awk: Convert K&R C to ANSI C. + +2004-05-26 Ben Elliston + + * corefile.c (core_init): Use a separate local variable, + core_sym_bytes, to make the units from bfd_get_symtab_upper_bound + more obvious. + (core_create_function_syms): Discard cbfd argument. Eliminate + `offset' variable and calculate VMA directly. Update all users. + * corefile.h (core_create_function_syms): Update prototype. + (core_create_line_syms): Likewise. + * gprof.c (main): Remove #ifdef PROF_SUPPORT_IMPLEMENTED code. + Tidy. + +2004-05-17 Ben Elliston + + * gprof.texi (Output Options): Correct last patch to use @itemx, not + @item, for options with long option alternatives. + +2004-05-17 Ben Elliston + + * gprof.texi (Introduction): Update synopsis. + (Output Options): Document -r and -R. + (Analysis Options): Document -t, --table-length. + (Miscellaneous Options): Document -h, --help. + +2004-05-13 Nick Clifton + + * po/fr.po: Updated French translation. + 2004-03-19 Alan Modra * po/sv.po: Updated. diff -uprN binutils-2.15.90.0.3/gprof/alpha.c binutils-2.15.91.0.1/gprof/alpha.c --- binutils-2.15.90.0.3/gprof/alpha.c 2002-08-01 17:49:32.000000000 -0700 +++ binutils-2.15.91.0.1/gprof/alpha.c 2004-05-27 11:26:04.612174404 -0700 @@ -78,7 +78,7 @@ alpha_Instruction; static Sym indirect_child; -void alpha_find_call PARAMS ((Sym *, bfd_vma, bfd_vma)); +void alpha_find_call (Sym *, bfd_vma, bfd_vma); /* * On the Alpha we can only detect PC relative calls, which are @@ -88,10 +88,7 @@ void alpha_find_call PARAMS ((Sym *, bfd * potentially call integer division routines, for example.) */ void -alpha_find_call (parent, p_lowpc, p_highpc) - Sym *parent; - bfd_vma p_lowpc; - bfd_vma p_highpc; +alpha_find_call (Sym *parent, bfd_vma p_lowpc, bfd_vma p_highpc) { bfd_vma pc, dest_pc; unsigned int insn; diff -uprN binutils-2.15.90.0.3/gprof/basic_blocks.c binutils-2.15.91.0.1/gprof/basic_blocks.c --- binutils-2.15.90.0.3/gprof/basic_blocks.c 2002-12-16 12:22:53.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/basic_blocks.c 2004-05-27 11:26:04.613174275 -0700 @@ -32,10 +32,10 @@ #include "symtab.h" #include "sym_ids.h" -static int cmp_bb PARAMS ((const PTR, const PTR)); -static int cmp_ncalls PARAMS ((const PTR, const PTR)); -static void fskip_string PARAMS ((FILE *)); -static void annotate_with_count PARAMS ((char *, unsigned int, int, PTR)); +static int cmp_bb (const PTR, const PTR); +static int cmp_ncalls (const PTR, const PTR); +static void fskip_string (FILE *); +static void annotate_with_count (char *, unsigned int, int, PTR); /* Default option values: */ bfd_boolean bb_annotate_all_lines = FALSE; @@ -52,9 +52,7 @@ static long num_lines_executed; number, and address (in that order). */ static int -cmp_bb (lp, rp) - const PTR lp; - const PTR rp; +cmp_bb (const PTR lp, const PTR rp) { int r; const Sym *left = *(const Sym **) lp; @@ -83,9 +81,7 @@ cmp_bb (lp, rp) /* Helper for sorting. Order basic blocks in decreasing number of calls, ties are broken in increasing order of line numbers. */ static int -cmp_ncalls (lp, rp) - const PTR lp; - const PTR rp; +cmp_ncalls (const PTR lp, const PTR rp) { const Sym *left = *(const Sym **) lp; const Sym *right = *(const Sym **) rp; @@ -105,8 +101,7 @@ cmp_ncalls (lp, rp) /* Skip over variable length string. */ static void -fskip_string (fp) - FILE *fp; +fskip_string (FILE *fp) { int ch; @@ -121,9 +116,7 @@ fskip_string (fp) of file IFP and is provided for formatting error-messages only. */ void -bb_read_rec (ifp, filename) - FILE *ifp; - const char *filename; +bb_read_rec (FILE *ifp, const char *filename) { int nblocks, b; bfd_vma addr, ncalls; @@ -211,9 +204,7 @@ bb_read_rec (ifp, filename) is the name of OFP and is provided for producing error-messages only. */ void -bb_write_blocks (ofp, filename) - FILE *ofp; - const char *filename; +bb_write_blocks (FILE *ofp, const char *filename) { unsigned int nblocks = 0; Sym *sym; @@ -323,11 +314,7 @@ print_exec_counts () that starts the basic-block. */ static void -annotate_with_count (buf, width, line_num, arg) - char *buf; - unsigned int width; - int line_num; - PTR arg; +annotate_with_count (char *buf, unsigned int width, int line_num, PTR arg) { Source_File *sf = arg; Sym *b; diff -uprN binutils-2.15.90.0.3/gprof/basic_blocks.h binutils-2.15.91.0.1/gprof/basic_blocks.h --- binutils-2.15.90.0.3/gprof/basic_blocks.h 2002-12-16 12:22:53.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/basic_blocks.h 2004-05-27 11:26:04.614174146 -0700 @@ -25,9 +25,9 @@ extern bfd_boolean bb_annotate_all_lines extern int bb_table_length; /* Length of most-used bb table. */ extern unsigned long bb_min_calls; /* Minimum execution count. */ -extern void bb_read_rec PARAMS ((FILE *, const char *)); -extern void bb_write_blocks PARAMS ((FILE *, const char *)); -extern void bb_create_syms PARAMS ((void)); -extern void print_annotated_source PARAMS ((void)); -extern void print_exec_counts PARAMS ((void)); +extern void bb_read_rec (FILE *, const char *); +extern void bb_write_blocks (FILE *, const char *); +extern void bb_create_syms (void); +extern void print_annotated_source (void); +extern void print_exec_counts (void); #endif /* basic_blocks_h */ diff -uprN binutils-2.15.90.0.3/gprof/bb_exit_func.c binutils-2.15.91.0.1/gprof/bb_exit_func.c --- binutils-2.15.90.0.3/gprof/bb_exit_func.c 2001-03-15 14:56:25.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/bb_exit_func.c 2004-05-27 11:26:04.614174146 -0700 @@ -44,7 +44,7 @@ struct bb *__bb_head = (struct bb *) 0; void -__bb_exit_func (void) +__bb_exit_func () { const int version = GMON_VERSION; struct gmon_hdr ghdr; diff -uprN binutils-2.15.90.0.3/gprof/call_graph.c binutils-2.15.91.0.1/gprof/call_graph.c --- binutils-2.15.90.0.3/gprof/call_graph.c 2002-02-03 11:22:32.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/call_graph.c 2004-05-27 11:26:04.615174016 -0700 @@ -31,10 +31,7 @@ #include "sym_ids.h" void -cg_tally (from_pc, self_pc, count) - bfd_vma from_pc; - bfd_vma self_pc; - unsigned long count; +cg_tally (bfd_vma from_pc, bfd_vma self_pc, unsigned long count) { Sym *parent; Sym *child; @@ -80,9 +77,7 @@ cg_tally (from_pc, self_pc, count) for formatting error-messages only. */ void -cg_read_rec (ifp, filename) - FILE *ifp; - const char *filename; +cg_read_rec (FILE *ifp, const char *filename) { bfd_vma from_pc, self_pc; unsigned int count; @@ -109,9 +104,7 @@ cg_read_rec (ifp, filename) only. */ void -cg_write_arcs (ofp, filename) - FILE *ofp; - const char *filename; +cg_write_arcs (FILE *ofp, const char *filename) { Arc *arc; Sym *sym; diff -uprN binutils-2.15.90.0.3/gprof/call_graph.h binutils-2.15.91.0.1/gprof/call_graph.h --- binutils-2.15.90.0.3/gprof/call_graph.h 2002-02-03 11:22:32.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/call_graph.h 2004-05-27 11:26:04.616173887 -0700 @@ -21,8 +21,8 @@ Foundation, Inc., 59 Temple Place - Suit #ifndef call_graph_h #define call_graph_h -extern void cg_tally PARAMS ((bfd_vma, bfd_vma, unsigned long)); -extern void cg_read_rec PARAMS ((FILE *, const char *)); -extern void cg_write_arcs PARAMS ((FILE *, const char *)); +extern void cg_tally (bfd_vma, bfd_vma, unsigned long); +extern void cg_read_rec (FILE *, const char *); +extern void cg_write_arcs (FILE *, const char *); #endif /* call_graph_h */ diff -uprN binutils-2.15.90.0.3/gprof/cg_arcs.c binutils-2.15.91.0.1/gprof/cg_arcs.c --- binutils-2.15.90.0.3/gprof/cg_arcs.c 2002-12-16 12:22:53.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/cg_arcs.c 2004-05-27 11:26:04.617173758 -0700 @@ -38,13 +38,13 @@ #include "utils.h" #include "sym_ids.h" -static int cmp_topo PARAMS ((const PTR, const PTR)); -static void propagate_time PARAMS ((Sym *)); -static void cycle_time PARAMS ((void)); -static void cycle_link PARAMS ((void)); -static void inherit_flags PARAMS ((Sym *)); -static void propagate_flags PARAMS ((Sym **)); -static int cmp_total PARAMS ((const PTR, const PTR)); +static int cmp_topo (const PTR, const PTR); +static void propagate_time (Sym *); +static void cycle_time (void); +static void cycle_link (void); +static void inherit_flags (Sym *); +static void propagate_flags (Sym **); +static int cmp_total (const PTR, const PTR); Sym *cycle_header; unsigned int num_cycles; @@ -56,9 +56,7 @@ unsigned int numarcs; * range covered by CHILD. */ Arc * -arc_lookup (parent, child) - Sym *parent; - Sym *child; +arc_lookup (Sym *parent, Sym *child) { Arc *arc; @@ -87,10 +85,7 @@ arc_lookup (parent, child) * Add (or just increment) an arc: */ void -arc_add (parent, child, count) - Sym *parent; - Sym *child; - unsigned long count; +arc_add (Sym *parent, Sym *child, unsigned long count) { static unsigned int maxarcs = 0; Arc *arc, **newarcs; @@ -156,9 +151,7 @@ arc_add (parent, child, count) static int -cmp_topo (lp, rp) - const PTR lp; - const PTR rp; +cmp_topo (const PTR lp, const PTR rp) { const Sym *left = *(const Sym **) lp; const Sym *right = *(const Sym **) rp; @@ -168,8 +161,7 @@ cmp_topo (lp, rp) static void -propagate_time (parent) - Sym *parent; +propagate_time (Sym *parent) { Arc *arc; Sym *child; @@ -365,8 +357,7 @@ cycle_link () * fractions from parents. */ static void -inherit_flags (child) - Sym *child; +inherit_flags (Sym *child) { Sym *head, *parent, *member; Arc *arc; @@ -444,8 +435,7 @@ inherit_flags (child) * and while we're here, sum time for functions. */ static void -propagate_flags (symbols) - Sym **symbols; +propagate_flags (Sym **symbols) { int index; Sym *old_head, *child; @@ -545,9 +535,7 @@ propagate_flags (symbols) * first. All else being equal, compare by names. */ static int -cmp_total (lp, rp) - const PTR lp; - const PTR rp; +cmp_total (const PTR lp, const PTR rp) { const Sym *left = *(const Sym **) lp; const Sym *right = *(const Sym **) rp; diff -uprN binutils-2.15.90.0.3/gprof/cg_arcs.h binutils-2.15.91.0.1/gprof/cg_arcs.h --- binutils-2.15.90.0.3/gprof/cg_arcs.h 2002-02-03 11:22:32.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/cg_arcs.h 2004-05-27 11:26:04.617173758 -0700 @@ -24,9 +24,9 @@ Arc; extern unsigned int num_cycles; /* number of cycles discovered */ extern Sym *cycle_header; /* cycle headers */ -extern void arc_add PARAMS ((Sym * parent, Sym * child, unsigned long count)); -extern Arc *arc_lookup PARAMS ((Sym * parent, Sym * child)); -extern Sym **cg_assemble PARAMS ((void)); +extern void arc_add (Sym * parent, Sym * child, unsigned long count); +extern Arc *arc_lookup (Sym * parent, Sym * child); +extern Sym **cg_assemble (void); extern Arc **arcs; extern unsigned int numarcs; diff -uprN binutils-2.15.90.0.3/gprof/cg_dfn.c binutils-2.15.91.0.1/gprof/cg_dfn.c --- binutils-2.15.90.0.3/gprof/cg_dfn.c 2002-12-16 12:22:53.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/cg_dfn.c 2004-05-27 11:26:04.618173628 -0700 @@ -44,11 +44,11 @@ typedef struct } DFN_Stack; -static bfd_boolean is_numbered PARAMS ((Sym *)); -static bfd_boolean is_busy PARAMS ((Sym *)); -static void find_cycle PARAMS ((Sym *)); -static void pre_visit PARAMS ((Sym *)); -static void post_visit PARAMS ((Sym *)); +static bfd_boolean is_numbered (Sym *); +static bfd_boolean is_busy (Sym *); +static void find_cycle (Sym *); +static void pre_visit (Sym *); +static void post_visit (Sym *); DFN_Stack *dfn_stack = NULL; int dfn_maxdepth = 0; @@ -60,8 +60,7 @@ int dfn_counter = DFN_NAN; * Is CHILD already numbered? */ static bfd_boolean -is_numbered (child) - Sym *child; +is_numbered (Sym *child) { return child->cg.top_order != DFN_NAN && child->cg.top_order != DFN_BUSY; } @@ -71,8 +70,7 @@ is_numbered (child) * Is CHILD already busy? */ static bfd_boolean -is_busy (child) - Sym *child; +is_busy (Sym *child) { if (child->cg.top_order == DFN_NAN) { @@ -89,8 +87,7 @@ is_busy (child) * depth-first number). */ static void -find_cycle (child) - Sym *child; +find_cycle (Sym *child) { Sym *head = 0; Sym *tail; @@ -213,8 +210,7 @@ find_cycle (child) * the stack and mark it busy. */ static void -pre_visit (parent) - Sym *parent; +pre_visit (Sym *parent) { ++dfn_depth; @@ -238,8 +234,7 @@ pre_visit (parent) * and number functions if PARENT is head of a cycle. */ static void -post_visit (parent) - Sym *parent; +post_visit (Sym *parent) { Sym *member; @@ -273,8 +268,7 @@ post_visit (parent) * Given this PARENT, depth first number its children. */ void -cg_dfn (parent) - Sym *parent; +cg_dfn (Sym *parent) { Arc *arc; diff -uprN binutils-2.15.90.0.3/gprof/cg_dfn.h binutils-2.15.91.0.1/gprof/cg_dfn.h --- binutils-2.15.90.0.3/gprof/cg_dfn.h 1999-06-03 11:02:05.000000000 -0700 +++ binutils-2.15.91.0.1/gprof/cg_dfn.h 2004-05-27 11:26:04.619173499 -0700 @@ -12,6 +12,6 @@ * Depth-first numbering of a call-graph. */ -extern void cg_dfn PARAMS ((Sym * root)); +extern void cg_dfn (Sym * root); #endif /* cg_dfn_h */ diff -uprN binutils-2.15.90.0.3/gprof/cg_print.c binutils-2.15.91.0.1/gprof/cg_print.c --- binutils-2.15.90.0.3/gprof/cg_print.c 2002-12-16 12:22:53.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/cg_print.c 2004-05-27 11:26:04.621173241 -0700 @@ -35,26 +35,26 @@ #define EQUALTO 0 #define GREATERTHAN 1 -static void print_header PARAMS ((void)); -static void print_cycle PARAMS ((Sym *)); -static int cmp_member PARAMS ((Sym *, Sym *)); -static void sort_members PARAMS ((Sym *)); -static void print_members PARAMS ((Sym *)); -static int cmp_arc PARAMS ((Arc *, Arc *)); -static void sort_parents PARAMS ((Sym *)); -static void print_parents PARAMS ((Sym *)); -static void sort_children PARAMS ((Sym *)); -static void print_children PARAMS ((Sym *)); -static void print_line PARAMS ((Sym *)); -static int cmp_name PARAMS ((const PTR, const PTR)); -static int cmp_arc_count PARAMS ((const PTR, const PTR)); -static int cmp_fun_nuses PARAMS ((const PTR, const PTR)); +static void print_header (void); +static void print_cycle (Sym *); +static int cmp_member (Sym *, Sym *); +static void sort_members (Sym *); +static void print_members (Sym *); +static int cmp_arc (Arc *, Arc *); +static void sort_parents (Sym *); +static void print_parents (Sym *); +static void sort_children (Sym *); +static void print_children (Sym *); +static void print_line (Sym *); +static int cmp_name (const PTR, const PTR); +static int cmp_arc_count (const PTR, const PTR); +static int cmp_fun_nuses (const PTR, const PTR); static void order_and_dump_functions_by_arcs - PARAMS ((Arc **, unsigned long, int, Arc **, unsigned long *)); + (Arc **, unsigned long, int, Arc **, unsigned long *); /* Declarations of automatically generated functions to output blurbs. */ -extern void bsd_callg_blurb PARAMS ((FILE * fp)); -extern void fsf_callg_blurb PARAMS ((FILE * fp)); +extern void bsd_callg_blurb (FILE * fp); +extern void fsf_callg_blurb (FILE * fp); double print_time = 0.0; @@ -109,8 +109,7 @@ print_header () /* Print a cycle header. */ static void -print_cycle (cyc) - Sym *cyc; +print_cycle (Sym *cyc) { char buf[BUFSIZ]; @@ -133,9 +132,7 @@ print_cycle (cyc) CG.PROP.SELF+CG.PROP.CHILD, secondary key is NCALLS+CG.SELF_CALLS. */ static int -cmp_member (left, right) - Sym *left; - Sym *right; +cmp_member (Sym *left, Sym *right) { double left_time = left->cg.prop.self + left->cg.prop.child; double right_time = right->cg.prop.self + right->cg.prop.child; @@ -160,8 +157,7 @@ cmp_member (left, right) /* Sort members of a cycle. */ static void -sort_members (cyc) - Sym *cyc; +sort_members (Sym *cyc) { Sym *todo, *doing, *prev; @@ -188,8 +184,7 @@ sort_members (cyc) /* Print the members of a cycle. */ static void -print_members (cyc) - Sym *cyc; +print_members (Sym *cyc) { Sym *member; @@ -223,9 +218,7 @@ print_members (cyc) arc count as minor key. */ static int -cmp_arc (left, right) - Arc *left; - Arc *right; +cmp_arc (Arc *left, Arc *right) { Sym *left_parent = left->parent; Sym *left_child = left->child; @@ -311,8 +304,7 @@ cmp_arc (left, right) static void -sort_parents (child) - Sym * child; +sort_parents (Sym * child) { Arc *arc, *detached, sorted, *prev; @@ -345,8 +337,7 @@ sort_parents (child) static void -print_parents (child) - Sym *child; +print_parents (Sym *child) { Sym *parent; Arc *arc; @@ -400,8 +391,7 @@ print_parents (child) static void -sort_children (parent) - Sym *parent; +sort_children (Sym *parent) { Arc *arc, *detached, sorted, *prev; @@ -434,8 +424,7 @@ sort_children (parent) static void -print_children (parent) - Sym *parent; +print_children (Sym *parent) { Sym *child; Arc *arc; @@ -474,8 +463,7 @@ print_children (parent) static void -print_line (np) - Sym *np; +print_line (Sym *np) { char buf[BUFSIZ]; @@ -508,8 +496,7 @@ print_line (np) /* Print dynamic call graph. */ void -cg_print (timesortsym) - Sym ** timesortsym; +cg_print (Sym ** timesortsym) { unsigned int index; Sym *parent; @@ -560,9 +547,7 @@ cg_print (timesortsym) static int -cmp_name (left, right) - const PTR left; - const PTR right; +cmp_name (const PTR left, const PTR right) { const Sym **npp1 = (const Sym **) left; const Sym **npp2 = (const Sym **) right; @@ -686,9 +671,7 @@ cg_print_index () We want to sort in descending order. */ static int -cmp_arc_count (left, right) - const PTR left; - const PTR right; +cmp_arc_count (const PTR left, const PTR right) { const Arc **npp1 = (const Arc **) left; const Arc **npp2 = (const Arc **) right; @@ -705,9 +688,7 @@ cmp_arc_count (left, right) We want to sort in descending order. */ static int -cmp_fun_nuses (left, right) - const PTR left; - const PTR right; +cmp_fun_nuses (const PTR left, const PTR right) { const Sym **npp1 = (const Sym **) left; const Sym **npp2 = (const Sym **) right; diff -uprN binutils-2.15.90.0.3/gprof/cg_print.h binutils-2.15.91.0.1/gprof/cg_print.h --- binutils-2.15.90.0.3/gprof/cg_print.h 2002-02-03 11:22:32.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/cg_print.h 2004-05-27 11:26:04.621173241 -0700 @@ -23,9 +23,9 @@ Foundation, Inc., 59 Temple Place - Suit extern double print_time; /* Total of time being printed. */ -extern void cg_print PARAMS ((Sym **)); -extern void cg_print_index PARAMS ((void)); -extern void cg_print_file_ordering PARAMS ((void)); -extern void cg_print_function_ordering PARAMS ((void)); +extern void cg_print (Sym **); +extern void cg_print_index (void); +extern void cg_print_file_ordering (void); +extern void cg_print_function_ordering (void); #endif /* cg_print_h */ diff -uprN binutils-2.15.90.0.3/gprof/corefile.c binutils-2.15.91.0.1/gprof/corefile.c --- binutils-2.15.90.0.3/gprof/corefile.c 2004-01-14 13:07:51.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/corefile.c 2004-05-27 11:26:04.635171430 -0700 @@ -39,21 +39,20 @@ int offset_to_code; struct function_map *symbol_map; unsigned int symbol_map_count; -static void read_function_mappings PARAMS ((const char *)); -static int core_sym_class PARAMS ((asymbol *)); +static void read_function_mappings (const char *); +static int core_sym_class (asymbol *); static bfd_boolean get_src_info - PARAMS ((bfd_vma, const char **, const char **, int *)); + (bfd_vma, const char **, const char **, int *); -extern void i386_find_call PARAMS ((Sym *, bfd_vma, bfd_vma)); -extern void alpha_find_call PARAMS ((Sym *, bfd_vma, bfd_vma)); -extern void vax_find_call PARAMS ((Sym *, bfd_vma, bfd_vma)); -extern void tahoe_find_call PARAMS ((Sym *, bfd_vma, bfd_vma)); -extern void sparc_find_call PARAMS ((Sym *, bfd_vma, bfd_vma)); -extern void mips_find_call PARAMS ((Sym *, bfd_vma, bfd_vma)); +extern void i386_find_call (Sym *, bfd_vma, bfd_vma); +extern void alpha_find_call (Sym *, bfd_vma, bfd_vma); +extern void vax_find_call (Sym *, bfd_vma, bfd_vma); +extern void tahoe_find_call (Sym *, bfd_vma, bfd_vma); +extern void sparc_find_call (Sym *, bfd_vma, bfd_vma); +extern void mips_find_call (Sym *, bfd_vma, bfd_vma); static void -read_function_mappings (filename) - const char *filename; +read_function_mappings (const char *filename) { FILE *file = fopen (filename, "r"); char dummy[1024]; @@ -139,9 +138,9 @@ read_function_mappings (filename) void -core_init (aout_name) - const char *aout_name; +core_init (const char *aout_name) { + int core_sym_bytes; core_bfd = bfd_openr (aout_name, 0); if (!core_bfd) @@ -172,15 +171,15 @@ core_init (aout_name) /* Read core's symbol table. */ /* This will probably give us more than we need, but that's ok. */ - core_num_syms = bfd_get_symtab_upper_bound (core_bfd); - if (core_num_syms < 0) + core_sym_bytes = bfd_get_symtab_upper_bound (core_bfd); + if (core_sym_bytes < 0) { fprintf (stderr, "%s: %s: %s\n", whoami, aout_name, bfd_errmsg (bfd_get_error ())); done (1); } - core_syms = (asymbol **) xmalloc (core_num_syms); + core_syms = (asymbol **) xmalloc (core_sym_bytes); core_num_syms = bfd_canonicalize_symtab (core_bfd, core_syms); if (core_num_syms < 0) @@ -215,8 +214,7 @@ core_init (aout_name) /* Read in the text space of an a.out file. */ void -core_get_text_space (cbfd) - bfd *cbfd; +core_get_text_space (bfd *cbfd) { core_text_space = (PTR) malloc ((unsigned int) core_text_sect->_raw_size); @@ -241,10 +239,7 @@ core_get_text_space (cbfd) void -find_call (parent, p_lowpc, p_highpc) - Sym *parent; - bfd_vma p_lowpc; - bfd_vma p_highpc; +find_call (Sym *parent, bfd_vma p_lowpc, bfd_vma p_highpc) { switch (bfd_get_arch (core_bfd)) { @@ -287,8 +282,7 @@ find_call (parent, p_lowpc, p_highpc) 't' -> symbol is a local (static) name. */ static int -core_sym_class (sym) - asymbol *sym; +core_sym_class (asymbol *sym) { symbol_info syminfo; const char *name; @@ -371,11 +365,7 @@ core_sym_class (sym) /* Get whatever source info we can get regarding address ADDR. */ static bfd_boolean -get_src_info (addr, filename, name, line_num) - bfd_vma addr; - const char **filename; - const char **name; - int *line_num; +get_src_info (bfd_vma addr, const char **filename, const char **name, int *line_num) { const char *fname = 0, *func_name = 0; int l = 0; @@ -405,8 +395,7 @@ get_src_info (addr, filename, name, line One symbol per function is entered. */ void -core_create_function_syms (cbfd) - bfd *cbfd ATTRIBUTE_UNUSED; +core_create_function_syms () { bfd_vma min_vma = ~(bfd_vma) 0; bfd_vma max_vma = 0; @@ -592,24 +581,23 @@ core_create_function_syms (cbfd) One symbol per line of source code is entered. */ void -core_create_line_syms (cbfd) - bfd *cbfd; +core_create_line_syms () { char *prev_name, *prev_filename; unsigned int prev_name_len, prev_filename_len; bfd_vma vma, min_vma = ~(bfd_vma) 0, max_vma = 0; - bfd_vma offset; Sym *prev, dummy, *sentinel, *sym; const char *filename; int prev_line_num; Sym_Table ltab; + bfd_vma vma_high; /* Create symbols for functions as usual. This is necessary in cases where parts of a program were not compiled with -g. For those parts we still want to get info at the function level. */ - core_create_function_syms (cbfd); + core_create_function_syms (); - /* Pass 1 - counter number of symbols. */ + /* Pass 1: count the number of symbols. */ /* To find all line information, walk through all possible text-space addresses (one by one!) and get the debugging @@ -617,7 +605,7 @@ core_create_line_syms (cbfd) it is time to create a new symbol. Of course, this is rather slow and it would be better if - bfd would provide an iterator for enumerating all line infos. */ + BFD would provide an iterator for enumerating all line infos. */ prev_name_len = PATH_MAX; prev_filename_len = PATH_MAX; prev_name = xmalloc (prev_name_len); @@ -625,12 +613,11 @@ core_create_line_syms (cbfd) ltab.len = 0; prev_line_num = 0; - for (offset = 0; offset < core_text_sect->_raw_size; offset += min_insn_size) + vma_high = core_text_sect->vma + core_text_sect->_raw_size; + for (vma = core_text_sect->vma; vma < vma_high; vma += min_insn_size) { unsigned int len; - vma = core_text_sect->vma + offset; - if (!get_src_info (vma, &filename, &dummy.name, &dummy.line_num) || (prev_line_num == dummy.line_num && prev_name != NULL @@ -693,12 +680,11 @@ core_create_line_syms (cbfd) lot cleaner now. */ prev = 0; - for (offset = 0; offset < core_text_sect->_raw_size; offset += min_insn_size) + for (vma = core_text_sect->vma; vma < vma_high; vma += min_insn_size) { sym_init (ltab.limit); - if (!get_src_info (core_text_sect->vma + offset, &filename, - <ab.limit->name, <ab.limit->line_num) + if (!get_src_info (vma, &filename, <ab.limit->name, <ab.limit->line_num) || (prev && prev->line_num == ltab.limit->line_num && strcmp (prev->name, ltab.limit->name) == 0 && strcmp (prev->file->name, filename) == 0)) @@ -708,7 +694,7 @@ core_create_line_syms (cbfd) ltab.limit->name = xstrdup (ltab.limit->name); ltab.limit->file = source_file_lookup_path (filename); - ltab.limit->addr = core_text_sect->vma + offset; + ltab.limit->addr = vma; /* Set is_static based on the enclosing function, using either: 1) the previous symbol, if it's from the same function, or diff -uprN binutils-2.15.90.0.3/gprof/corefile.h binutils-2.15.91.0.1/gprof/corefile.h --- binutils-2.15.90.0.3/gprof/corefile.h 2002-02-03 11:22:32.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/corefile.h 2004-05-27 11:26:04.636171301 -0700 @@ -39,9 +39,9 @@ extern int min_insn_size; /* Size of sma extern int offset_to_code; /* Offset (in bytes) of code from entry address of routine. */ -extern void core_init PARAMS ((const char *)); -extern void core_get_text_space PARAMS ((bfd *)); -extern void core_create_function_syms PARAMS ((bfd *)); -extern void core_create_line_syms PARAMS ((bfd *)); +extern void core_init (const char *); +extern void core_get_text_space (bfd *); +extern void core_create_function_syms (void); +extern void core_create_line_syms (void); #endif /* corefile_h */ diff -uprN binutils-2.15.90.0.3/gprof/gen-c-prog.awk binutils-2.15.91.0.1/gprof/gen-c-prog.awk --- binutils-2.15.90.0.3/gprof/gen-c-prog.awk 2002-03-07 11:52:39.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/gen-c-prog.awk 2004-05-27 11:26:04.636171301 -0700 @@ -13,7 +13,7 @@ NR == 1 { print "}" curfun = FUNCTION print "" - print "void ", FUNCTION, "PARAMS ((FILE *));" + print "void ", FUNCTION, "(FILE *);" print "void"; printf "%s (file)\n", FUNCTION print " FILE *file;"; diff -uprN binutils-2.15.90.0.3/gprof/gmon_io.c binutils-2.15.91.0.1/gprof/gmon_io.c --- binutils-2.15.90.0.3/gprof/gmon_io.c 2003-05-05 14:46:48.000000000 -0700 +++ binutils-2.15.91.0.1/gprof/gmon_io.c 2004-05-27 11:26:04.647169879 -0700 @@ -44,17 +44,17 @@ enum gmon_ptr_signedness { ptr_unsigned }; -static enum gmon_ptr_size gmon_get_ptr_size PARAMS ((void)); -static enum gmon_ptr_signedness gmon_get_ptr_signedness PARAMS ((void)); +static enum gmon_ptr_size gmon_get_ptr_size (void); +static enum gmon_ptr_signedness gmon_get_ptr_signedness (void); #ifdef BFD_HOST_U_64_BIT -static int gmon_io_read_64 PARAMS ((FILE *, BFD_HOST_U_64_BIT *)); -static int gmon_io_write_64 PARAMS ((FILE *, BFD_HOST_U_64_BIT)); +static int gmon_io_read_64 (FILE *, BFD_HOST_U_64_BIT *); +static int gmon_io_write_64 (FILE *, BFD_HOST_U_64_BIT); #endif static int gmon_read_raw_arc - PARAMS ((FILE *, bfd_vma *, bfd_vma *, unsigned long *)); + (FILE *, bfd_vma *, bfd_vma *, unsigned long *); static int gmon_write_raw_arc - PARAMS ((FILE *, bfd_vma, bfd_vma, unsigned long)); + (FILE *, bfd_vma, bfd_vma, unsigned long); int gmon_input = 0; int gmon_file_version = 0; /* 0 == old (non-versioned) file format. */ @@ -98,9 +98,7 @@ gmon_get_ptr_signedness () } int -gmon_io_read_32 (ifp, valp) - FILE *ifp; - unsigned int *valp; +gmon_io_read_32 (FILE *ifp, unsigned int *valp) { char buf[4]; @@ -112,9 +110,7 @@ gmon_io_read_32 (ifp, valp) #ifdef BFD_HOST_U_64_BIT static int -gmon_io_read_64 (ifp, valp) - FILE *ifp; - BFD_HOST_U_64_BIT *valp; +gmon_io_read_64 (FILE *ifp, BFD_HOST_U_64_BIT *valp) { char buf[8]; @@ -126,9 +122,7 @@ gmon_io_read_64 (ifp, valp) #endif int -gmon_io_read_vma (ifp, valp) - FILE *ifp; - bfd_vma *valp; +gmon_io_read_vma (FILE *ifp, bfd_vma *valp) { unsigned int val32; #ifdef BFD_HOST_U_64_BIT @@ -163,10 +157,7 @@ gmon_io_read_vma (ifp, valp) } int -gmon_io_read (ifp, buf, n) - FILE *ifp; - char *buf; - size_t n; +gmon_io_read (FILE *ifp, char *buf, size_t n) { if (fread (buf, 1, n, ifp) != n) return 1; @@ -174,9 +165,7 @@ gmon_io_read (ifp, buf, n) } int -gmon_io_write_32 (ofp, val) - FILE *ofp; - unsigned int val; +gmon_io_write_32 (FILE *ofp, unsigned int val) { char buf[4]; @@ -188,9 +177,7 @@ gmon_io_write_32 (ofp, val) #ifdef BFD_HOST_U_64_BIT static int -gmon_io_write_64 (ofp, val) - FILE *ofp; - BFD_HOST_U_64_BIT val; +gmon_io_write_64 (FILE *ofp, BFD_HOST_U_64_BIT val) { char buf[8]; @@ -202,9 +189,7 @@ gmon_io_write_64 (ofp, val) #endif int -gmon_io_write_vma (ofp, val) - FILE *ofp; - bfd_vma val; +gmon_io_write_vma (FILE *ofp, bfd_vma val) { switch (gmon_get_ptr_size ()) @@ -225,9 +210,7 @@ gmon_io_write_vma (ofp, val) } int -gmon_io_write_8 (ofp, val) - FILE *ofp; - unsigned int val; +gmon_io_write_8 (FILE *ofp, unsigned int val) { char buf[1]; @@ -238,10 +221,7 @@ gmon_io_write_8 (ofp, val) } int -gmon_io_write (ofp, buf, n) - FILE *ofp; - char *buf; - size_t n; +gmon_io_write (FILE *ofp, char *buf, size_t n) { if (fwrite (buf, 1, n, ofp) != n) return 1; @@ -249,11 +229,7 @@ gmon_io_write (ofp, buf, n) } static int -gmon_read_raw_arc (ifp, fpc, spc, cnt) - FILE *ifp; - bfd_vma *fpc; - bfd_vma *spc; - unsigned long *cnt; +gmon_read_raw_arc (FILE *ifp, bfd_vma *fpc, bfd_vma *spc, unsigned long *cnt) { #ifdef BFD_HOST_U_64_BIT BFD_HOST_U_64_BIT cnt64; @@ -284,11 +260,7 @@ gmon_read_raw_arc (ifp, fpc, spc, cnt) } static int -gmon_write_raw_arc (ofp, fpc, spc, cnt) - FILE *ofp; - bfd_vma fpc; - bfd_vma spc; - unsigned long cnt; +gmon_write_raw_arc (FILE *ofp, bfd_vma fpc, bfd_vma spc, unsigned long cnt) { if (gmon_io_write_vma (ofp, fpc) @@ -313,8 +285,7 @@ gmon_write_raw_arc (ofp, fpc, spc, cnt) } void -gmon_out_read (filename) - const char *filename; +gmon_out_read (const char *filename) { FILE *ifp; struct gmon_hdr ghdr; @@ -619,8 +590,7 @@ gmon_out_read (filename) void -gmon_out_write (filename) - const char *filename; +gmon_out_write (const char *filename) { FILE *ofp; struct gmon_hdr ghdr; diff -uprN binutils-2.15.90.0.3/gprof/gmon_io.h binutils-2.15.91.0.1/gprof/gmon_io.h --- binutils-2.15.90.0.3/gprof/gmon_io.h 2002-02-03 11:22:32.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/gmon_io.h 2004-05-27 11:26:04.648169750 -0700 @@ -46,15 +46,15 @@ Foundation, Inc., 59 Temple Place - Suit extern int gmon_input; /* What input did we see? */ extern int gmon_file_version; /* File version are we dealing with. */ -extern int gmon_io_read_vma PARAMS ((FILE *ifp, bfd_vma *valp)); -extern int gmon_io_read_32 PARAMS ((FILE *ifp, unsigned int *valp)); -extern int gmon_io_read PARAMS ((FILE *ifp, char *buf, size_t n)); -extern int gmon_io_write_vma PARAMS ((FILE *ifp, bfd_vma val)); -extern int gmon_io_write_32 PARAMS ((FILE *ifp, unsigned int val)); -extern int gmon_io_write_8 PARAMS ((FILE *ifp, unsigned int val)); -extern int gmon_io_write PARAMS ((FILE *ifp, char *buf, size_t n)); +extern int gmon_io_read_vma (FILE *ifp, bfd_vma *valp); +extern int gmon_io_read_32 (FILE *ifp, unsigned int *valp); +extern int gmon_io_read (FILE *ifp, char *buf, size_t n); +extern int gmon_io_write_vma (FILE *ifp, bfd_vma val); +extern int gmon_io_write_32 (FILE *ifp, unsigned int val); +extern int gmon_io_write_8 (FILE *ifp, unsigned int val); +extern int gmon_io_write (FILE *ifp, char *buf, size_t n); -extern void gmon_out_read PARAMS ((const char *)); -extern void gmon_out_write PARAMS ((const char *)); +extern void gmon_out_read (const char *); +extern void gmon_out_write (const char *); #endif /* gmon_io_h */ diff -uprN binutils-2.15.90.0.3/gprof/gprof.c binutils-2.15.91.0.1/gprof/gprof.c --- binutils-2.15.90.0.3/gprof/gprof.c 2002-12-16 12:22:53.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/gprof.c 2004-05-27 11:26:04.650169491 -0700 @@ -44,8 +44,7 @@ #include "demangle.h" #include "getopt.h" -static void usage PARAMS ((FILE *, int)) ATTRIBUTE_NORETURN; -int main PARAMS ((int, char **)); +static void usage (FILE *, int) ATTRIBUTE_NORETURN; const char *whoami; const char *function_mapping_file; @@ -158,9 +157,7 @@ static struct option long_options[] = static void -usage (stream, status) - FILE *stream; - int status; +usage (FILE *stream, int status) { fprintf (stream, _("\ Usage: %s [-[abcDhilLsTvwxyz]] [-[ACeEfFJnNOpPqQZ][name]] [-I dirs]\n\ @@ -185,9 +182,7 @@ Usage: %s [-[abcDhilLsTvwxyz]] [-[ACeEfF int -main (argc, argv) - int argc; - char **argv; +main (int argc, char **argv) { char **sp, *str; Sym **cg = 0; @@ -479,31 +474,23 @@ This program is free software. This pro done (1); } - /* --sum implies --line, otherwise we'd lose b-b counts in gmon.sum */ + /* --sum implies --line, otherwise we'd lose basic block counts in + gmon.sum */ if (output_style & STYLE_SUMMARY_FILE) - { - line_granularity = 1; - } + line_granularity = 1; /* append value of GPROF_PATH to source search list if set: */ str = (char *) getenv ("GPROF_PATH"); if (str) - { - search_list_append (&src_search_list, str); - } + search_list_append (&src_search_list, str); if (optind < argc) - { - a_out_name = argv[optind++]; - } + a_out_name = argv[optind++]; + if (optind < argc) - { - gmon_name = argv[optind++]; - } + gmon_name = argv[optind++]; - /* - * Turn off default functions: - */ + /* Turn off default functions. */ for (sp = &default_excluded_list[0]; *sp; sp++) { sym_id_add (*sp, EXCL_TIME); @@ -516,102 +503,59 @@ This program is free software. This pro * functions off the flat profile: */ if (line_granularity) - { - for (sp = &default_excluded_list[0]; *sp; sp++) - { - sym_id_add (*sp, EXCL_FLAT); - } - } + for (sp = &default_excluded_list[0]; *sp; sp++) + sym_id_add (*sp, EXCL_FLAT); - /* - * Read symbol table from core file: - */ + /* Read symbol table from core file. */ core_init (a_out_name); - /* - * If we should ignore direct function calls, we need to load - * to core's text-space: - */ + /* If we should ignore direct function calls, we need to load to + core's text-space. */ if (ignore_direct_calls) - { - core_get_text_space (core_bfd); - } + core_get_text_space (core_bfd); - /* - * Create symbols from core image: - */ + /* Create symbols from core image. */ if (line_granularity) - { - core_create_line_syms (core_bfd); - } + core_create_line_syms (); else - { - core_create_function_syms (core_bfd); - } + core_create_function_syms (); - /* - * Translate sym specs into syms: - */ + /* Translate sym specs into syms. */ sym_id_parse (); if (file_format == FF_PROF) { -#ifdef PROF_SUPPORT_IMPLEMENTED - /* - * Get information about mon.out file(s): - */ - do - { - mon_out_read (gmon_name); - if (optind < argc) - { - gmon_name = argv[optind]; - } - } - while (optind++ < argc); -#else fprintf (stderr, _("%s: sorry, file format `prof' is not yet supported\n"), whoami); done (1); -#endif } else { - /* - * Get information about gmon.out file(s): - */ + /* Get information about gmon.out file(s). */ do { gmon_out_read (gmon_name); if (optind < argc) - { - gmon_name = argv[optind]; - } + gmon_name = argv[optind]; } while (optind++ < argc); } - /* - * If user did not specify output style, try to guess something - * reasonable: - */ + /* If user did not specify output style, try to guess something + reasonable. */ if (output_style == 0) { if (gmon_input & (INPUT_HISTOGRAM | INPUT_CALL_GRAPH)) - { - output_style = STYLE_FLAT_PROFILE | STYLE_CALL_GRAPH; - } + output_style = STYLE_FLAT_PROFILE | STYLE_CALL_GRAPH; else - { - output_style = STYLE_EXEC_COUNTS; - } + output_style = STYLE_EXEC_COUNTS; + output_style &= ~user_specified; } - /* - * Dump a gmon.sum file if requested (before any other processing!): - */ + /* Dump a gmon.sum file if requested (before any other + processing!) */ if (output_style & STYLE_SUMMARY_FILE) { gmon_out_write (GMONSUM); @@ -627,8 +571,7 @@ This program is free software. This pro cg = cg_assemble (); } - /* do some simple sanity checks: */ - + /* Do some simple sanity checks. */ if ((output_style & STYLE_FLAT_PROFILE) && !(gmon_input & INPUT_HISTOGRAM)) { @@ -643,50 +586,46 @@ This program is free software. This pro done (1); } - /* output whatever user whishes to see: */ - + /* Output whatever user whishes to see. */ if (cg && (output_style & STYLE_CALL_GRAPH) && bsd_style_output) { - cg_print (cg); /* print the dynamic profile */ + /* Print the dynamic profile. */ + cg_print (cg); } if (output_style & STYLE_FLAT_PROFILE) { - hist_print (); /* print the flat profile */ + /* Print the flat profile. */ + hist_print (); } if (cg && (output_style & STYLE_CALL_GRAPH)) { if (!bsd_style_output) { - cg_print (cg); /* print the dynamic profile */ + /* Print the dynamic profile. */ + cg_print (cg); } cg_print_index (); } if (output_style & STYLE_EXEC_COUNTS) - { - print_exec_counts (); - } - + print_exec_counts (); + if (output_style & STYLE_ANNOTATED_SOURCE) - { - print_annotated_source (); - } + print_annotated_source (); + if (output_style & STYLE_FUNCTION_ORDER) - { - cg_print_function_ordering (); - } + cg_print_function_ordering (); + if (output_style & STYLE_FILE_ORDER) - { - cg_print_file_ordering (); - } + cg_print_file_ordering (); + return 0; } void -done (status) - int status; +done (int status) { exit (status); } diff -uprN binutils-2.15.90.0.3/gprof/gprof.h binutils-2.15.91.0.1/gprof/gprof.h --- binutils-2.15.90.0.3/gprof/gprof.h 2002-12-16 12:22:53.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/gprof.h 2004-05-27 11:26:04.651169362 -0700 @@ -134,6 +134,6 @@ extern File_Format file_format; /* requ extern bfd_boolean first_output; /* no output so far? */ -extern void done PARAMS ((int status)) ATTRIBUTE_NORETURN; +extern void done (int status) ATTRIBUTE_NORETURN; #endif /* gprof_h */ diff -uprN binutils-2.15.90.0.3/gprof/gprof.texi binutils-2.15.91.0.1/gprof/gprof.texi --- binutils-2.15.90.0.3/gprof/gprof.texi 2004-01-14 13:07:51.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/gprof.texi 2004-05-27 11:26:04.674166388 -0700 @@ -105,9 +105,9 @@ section entitled "GNU Free Documentation @smallexample @c man begin SYNOPSIS -gprof [ -[abcDhilLsTvwxyz] ] [ -[ACeEfFJnNOpPqQZ][@var{name}] ] +gprof [ -[abcDhilLrsTvwxyz] ] [ -[ACeEfFJnNOpPqQZ][@var{name}] ] [ -I @var{dirs} ] [ -d[@var{num}] ] [ -k @var{from/to} ] - [ -m @var{min-count} ] [ -t @var{table-length} ] + [ -m @var{min-count} ] [ -R @var{map_file} ] [ -t @var{table-length} ] [ --[no-]annotated-source[=@var{name}] ] [ --[no-]exec-counts[=@var{name}] ] [ --[no-]flat-profile[=@var{name}] ] [ --[no-]graph[=@var{name}] ] @@ -546,6 +546,12 @@ call graph. If @var{symspec} is specified, @code{gprof} prints a call graph, but excludes matching symbols. +@item -t +@itemx --table-length=@var{num} +The @samp{-t} option causes the @var{num} most active source lines in +each source file to be listed when source annotation is enabled. The +default is 10. + @item -y @itemx --separate-files This option affects annotated source output only. @@ -565,7 +571,8 @@ The @samp{-Z} option causes @code{gprof} print a tally of functions and the number of times each was called. If @var{symspec} is specified, print tally, but exclude matching symbols. -@item --function-ordering +@item -r +@itemx --function-ordering The @samp{--function-ordering} option causes @code{gprof} to print a suggested function ordering for the program based on profiling data. This option suggests an ordering which may improve paging, tlb and @@ -576,7 +583,8 @@ The exact details of how to force the li in a particular order is system dependent and out of the scope of this manual. -@item --file-ordering @var{map_file} +@item -R @var{map_file} +@itemx --file-ordering @var{map_file} The @samp{--file-ordering} option causes @code{gprof} to print a suggested .o link line ordering for the program based on profiling data. This option suggests an ordering which may improve paging, tlb and @@ -726,6 +734,10 @@ The @samp{-d @var{num}} option specifies If @var{num} is not specified, enable all debugging. @xref{Debugging}. +@item -h +@itemx --help +The @samp{-h} option prints command line usage. + @item -O@var{name} @itemx --file-format=@var{name} Selects the format of the profile data files. Recognized formats are diff -uprN binutils-2.15.90.0.3/gprof/hertz.h binutils-2.15.91.0.1/gprof/hertz.h --- binutils-2.15.90.0.3/gprof/hertz.h 2002-02-03 11:22:32.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/hertz.h 2004-05-27 11:26:04.675166258 -0700 @@ -8,6 +8,6 @@ * we return HZ_WRONG, an impossible sampling frequency. */ -extern int hertz PARAMS ((void)); +extern int hertz (void); #endif /* hertz_h */ diff -uprN binutils-2.15.90.0.3/gprof/hist.c binutils-2.15.91.0.1/gprof/hist.c --- binutils-2.15.90.0.3/gprof/hist.c 2002-12-16 12:22:53.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/hist.c 2004-05-27 11:26:04.676166129 -0700 @@ -33,13 +33,13 @@ #define UNITS_TO_CODE (offset_to_code / sizeof(UNIT)) -static void scale_and_align_entries PARAMS ((void)); -static void print_header PARAMS ((int)); -static void print_line PARAMS ((Sym *, double)); -static int cmp_time PARAMS ((const PTR, const PTR)); +static void scale_and_align_entries (void); +static void print_header (int); +static void print_line (Sym *, double); +static int cmp_time (const PTR, const PTR); /* Declarations of automatically generated functions to output blurbs. */ -extern void flat_blurb PARAMS ((FILE * fp)); +extern void flat_blurb (FILE * fp); bfd_vma s_lowpc; /* Lowest address in .text. */ bfd_vma s_highpc = 0; /* Highest address in .text. */ @@ -80,9 +80,7 @@ SItab[] = is provided for formatting error messages only. */ void -hist_read_rec (ifp, filename) - FILE * ifp; - const char *filename; +hist_read_rec (FILE * ifp, const char *filename) { bfd_vma n_lowpc, n_highpc; int i, ncnt, profrate; @@ -157,9 +155,7 @@ hist_read_rec (ifp, filename) of OFP and is provided for formatting error-messages only. */ void -hist_write_hist (ofp, filename) - FILE * ofp; - const char *filename; +hist_write_hist (FILE * ofp, const char *filename) { UNIT count; int i; @@ -351,8 +347,7 @@ hist_assign_samples () /* Print header for flag histogram profile. */ static void -print_header (prefix) - int prefix; +print_header (int prefix) { char unit[64]; @@ -391,9 +386,7 @@ print_header (prefix) static void -print_line (sym, scale) - Sym *sym; - double scale; +print_line (Sym *sym, double scale) { if (ignore_zeros && sym->ncalls == 0 && sym->hist.time == 0) return; @@ -430,9 +423,7 @@ print_line (sym, scale) lexicographic order of the function names. */ static int -cmp_time (lp, rp) - const PTR lp; - const PTR rp; +cmp_time (const PTR lp, const PTR rp) { const Sym *left = *(const Sym **) lp; const Sym *right = *(const Sym **) rp; diff -uprN binutils-2.15.90.0.3/gprof/hist.h binutils-2.15.91.0.1/gprof/hist.h --- binutils-2.15.90.0.3/gprof/hist.h 2002-02-03 11:22:32.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/hist.h 2004-05-27 11:26:04.676166129 -0700 @@ -32,9 +32,9 @@ extern int *hist_sample; /* Code histogr extern double hist_scale; -extern void hist_read_rec PARAMS ((FILE *, const char *)); -extern void hist_write_hist PARAMS ((FILE *, const char *)); -extern void hist_assign_samples PARAMS ((void)); -extern void hist_print PARAMS ((void)); +extern void hist_read_rec (FILE *, const char *); +extern void hist_write_hist (FILE *, const char *); +extern void hist_assign_samples (void); +extern void hist_print (void); #endif /* hist_h */ diff -uprN binutils-2.15.90.0.3/gprof/i386.c binutils-2.15.91.0.1/gprof/i386.c --- binutils-2.15.90.0.3/gprof/i386.c 2002-08-01 17:49:32.000000000 -0700 +++ binutils-2.15.91.0.1/gprof/i386.c 2004-05-27 11:26:04.687164707 -0700 @@ -34,12 +34,11 @@ #include "corefile.h" #include "hist.h" -static int i386_iscall PARAMS ((unsigned char *)); -void i386_find_call PARAMS ((Sym *, bfd_vma, bfd_vma)); +static int i386_iscall (unsigned char *); +void i386_find_call (Sym *, bfd_vma, bfd_vma); static int -i386_iscall (ip) - unsigned char *ip; +i386_iscall (unsigned char *ip) { if (*ip == 0xe8) return 1; @@ -48,10 +47,7 @@ i386_iscall (ip) void -i386_find_call (parent, p_lowpc, p_highpc) - Sym *parent; - bfd_vma p_lowpc; - bfd_vma p_highpc; +i386_find_call (Sym *parent, bfd_vma p_lowpc, bfd_vma p_highpc) { unsigned char *instructp; Sym *child; diff -uprN binutils-2.15.90.0.3/gprof/mips.c binutils-2.15.91.0.1/gprof/mips.c --- binutils-2.15.90.0.3/gprof/mips.c 2002-12-16 12:22:53.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/mips.c 2004-05-27 11:26:04.695163672 -0700 @@ -36,13 +36,10 @@ static Sym indirect_child; -void mips_find_call PARAMS ((Sym *, bfd_vma, bfd_vma)); +void mips_find_call (Sym *, bfd_vma, bfd_vma); void -mips_find_call (parent, p_lowpc, p_highpc) - Sym *parent; - bfd_vma p_lowpc; - bfd_vma p_highpc; +mips_find_call (Sym *parent, bfd_vma p_lowpc, bfd_vma p_highpc) { bfd_vma pc, dest_pc; unsigned int op; diff -uprN binutils-2.15.90.0.3/gprof/po/fr.po binutils-2.15.91.0.1/gprof/po/fr.po --- binutils-2.15.90.0.3/gprof/po/fr.po 2004-01-14 13:07:51.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/po/fr.po 2004-05-27 11:26:04.732158888 -0700 @@ -1,17 +1,18 @@ # Messages français pour gprof. -# Copyright © 1996 Free Software Foundation, Inc. +# Copyright © 2004 Free Software Foundation, Inc. # Michel Robitaille , traducteur depuis/since 1996. # msgid "" msgstr "" "Project-Id-Version: gprof 2.14rel030712\n" "POT-Creation-Date: 2003-07-11 13:58+0930\n" -"PO-Revision-Date: 2003-07-24 08:00-0500\n" +"PO-Revision-Date: 2004-05-10 08:00-0500\n" "Last-Translator: Michel Robitaille \n" "Language-Team: French \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-1\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" #: alpha.c:103 mips.c:57 msgid "" diff -uprN binutils-2.15.90.0.3/gprof/search_list.c binutils-2.15.91.0.1/gprof/search_list.c --- binutils-2.15.90.0.3/gprof/search_list.c 2002-02-03 11:22:32.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/search_list.c 2004-05-27 11:26:04.696163543 -0700 @@ -25,9 +25,7 @@ void -search_list_append (list, paths) - Search_List *list; - const char *paths; +search_list_append (Search_List *list, const char *paths) { Search_List_Elem *new_el; const char *beg, *colon; diff -uprN binutils-2.15.90.0.3/gprof/search_list.h binutils-2.15.91.0.1/gprof/search_list.h --- binutils-2.15.90.0.3/gprof/search_list.h 2001-03-15 14:56:33.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/search_list.h 2004-05-27 11:26:04.702162767 -0700 @@ -43,6 +43,6 @@ typedef struct } Search_List; -extern void search_list_append PARAMS ((Search_List *, const char *)); +extern void search_list_append (Search_List *, const char *); #endif /* search_list_h */ diff -uprN binutils-2.15.90.0.3/gprof/source.c binutils-2.15.91.0.1/gprof/source.c --- binutils-2.15.90.0.3/gprof/source.c 2002-12-16 12:22:53.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/source.c 2004-05-27 11:26:04.702162767 -0700 @@ -35,8 +35,7 @@ Source_File *first_src_file = 0; Source_File * -source_file_lookup_path (path) - const char *path; +source_file_lookup_path (const char *path) { Source_File *sf; @@ -63,8 +62,7 @@ source_file_lookup_path (path) Source_File * -source_file_lookup_name (filename) - const char *filename; +source_file_lookup_name (const char *filename) { const char *fname; Source_File *sf; @@ -91,11 +89,9 @@ source_file_lookup_name (filename) FILE * -annotate_source (sf, max_width, annote, arg) - Source_File *sf; - unsigned int max_width; - void (*annote) PARAMS ((char *, unsigned int, int, void *)); - void *arg; +annotate_source (Source_File *sf, unsigned int max_width, + void (*annote) (char *, unsigned int, int, void *), + void *arg) { static bfd_boolean first_file = TRUE; int i, line_num, nread; diff -uprN binutils-2.15.90.0.3/gprof/source.h binutils-2.15.91.0.1/gprof/source.h --- binutils-2.15.90.0.3/gprof/source.h 2002-12-16 12:22:53.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/source.h 2004-05-27 11:26:04.703162638 -0700 @@ -44,8 +44,8 @@ extern Search_List src_search_list; extern Source_File *first_src_file; /* Returns pointer to source file descriptor for PATH/FILENAME. */ -extern Source_File *source_file_lookup_path PARAMS ((const char *)); -extern Source_File *source_file_lookup_name PARAMS ((const char *)); +extern Source_File *source_file_lookup_path (const char *); +extern Source_File *source_file_lookup_name (const char *); /* Read source file SF output annotated source. The annotation is at MAX_WIDTH characters wide and for each source-line an annotation is @@ -56,7 +56,7 @@ extern Source_File *source_file_lookup_n that summary statistics can be printed. If the returned file is not stdout, it should be closed when done with it. */ extern FILE *annotate_source - PARAMS ((Source_File *sf, unsigned int max_width, + (Source_File *sf, unsigned int max_width, void (*annote) (char *, unsigned int, int, PTR arg), - PTR arg)); + PTR arg); #endif /* source_h */ diff -uprN binutils-2.15.90.0.3/gprof/sparc.c binutils-2.15.91.0.1/gprof/sparc.c --- binutils-2.15.90.0.3/gprof/sparc.c 2002-08-01 17:49:32.000000000 -0700 +++ binutils-2.15.91.0.1/gprof/sparc.c 2004-05-27 11:26:04.703162638 -0700 @@ -39,13 +39,10 @@ */ #define CALL (0xc0000000) -void sparc_find_call PARAMS ((Sym *, bfd_vma, bfd_vma)); +void sparc_find_call (Sym *, bfd_vma, bfd_vma); void -sparc_find_call (parent, p_lowpc, p_highpc) - Sym *parent; - bfd_vma p_lowpc; - bfd_vma p_highpc; +sparc_find_call (Sym *parent, bfd_vma p_lowpc, bfd_vma p_highpc) { bfd_vma pc, dest_pc; unsigned int insn; diff -uprN binutils-2.15.90.0.3/gprof/sym_ids.c binutils-2.15.91.0.1/gprof/sym_ids.c --- binutils-2.15.90.0.3/gprof/sym_ids.c 2002-12-16 12:22:53.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/sym_ids.c 2004-05-27 11:26:04.712161474 -0700 @@ -47,13 +47,13 @@ struct sym_id *id_list; static void parse_spec - PARAMS ((char *, Sym *)); + (char *, Sym *); static void parse_id - PARAMS ((struct sym_id *)); + (struct sym_id *); static bfd_boolean match - PARAMS ((Sym *, Sym *)); + (Sym *, Sym *); static void extend_match - PARAMS ((struct match *, Sym *, Sym_Table *, bfd_boolean)); + (struct match *, Sym *, Sym_Table *, bfd_boolean); Sym_Table syms[NUM_TABLES]; @@ -84,9 +84,7 @@ static Source_File non_existent_file = void -sym_id_add (spec, which_table) - const char *spec; - Table_Id which_table; +sym_id_add (const char *spec, Table_Id which_table) { struct sym_id *id; int len = strlen (spec); @@ -114,9 +112,7 @@ sym_id_add (spec, which_table) FILENAME not containing a dot can be specified by FILENAME. */ static void -parse_spec (spec, sym) - char *spec; - Sym *sym; +parse_spec (char *spec, Sym *sym) { char *colon; @@ -171,8 +167,7 @@ parse_spec (spec, sym) by parse_spec(). */ static void -parse_id (id) - struct sym_id *id; +parse_id (struct sym_id *id) { char *slash; @@ -221,9 +216,7 @@ parse_id (id) /* Return TRUE iff PATTERN matches SYM. */ static bfd_boolean -match (pattern, sym) - Sym *pattern; - Sym *sym; +match (Sym *pattern, Sym *sym) { return (pattern->file ? pattern->file == sym->file : TRUE) && (pattern->line_num ? pattern->line_num == sym->line_num : TRUE) @@ -235,11 +228,7 @@ match (pattern, sym) static void -extend_match (m, sym, tab, second_pass) - struct match *m; - Sym *sym; - Sym_Table *tab; - bfd_boolean second_pass; +extend_match (struct match *m, Sym *sym, Sym_Table *tab, bfd_boolean second_pass) { if (m->prev_match != sym - 1) { @@ -373,10 +362,7 @@ sym_id_parse () very big (the user has to type them!), so a linear search is probably tolerable. */ bfd_boolean -sym_id_arc_is_present (sym_tab, from, to) - Sym_Table *sym_tab; - Sym *from; - Sym *to; +sym_id_arc_is_present (Sym_Table *sym_tab, Sym *from, Sym *to) { Sym *sym; diff -uprN binutils-2.15.90.0.3/gprof/sym_ids.h binutils-2.15.91.0.1/gprof/sym_ids.h --- binutils-2.15.90.0.3/gprof/sym_ids.h 2002-12-16 12:22:53.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/sym_ids.h 2004-05-27 11:26:04.712161474 -0700 @@ -35,8 +35,8 @@ Table_Id; extern Sym_Table syms[NUM_TABLES]; -extern void sym_id_add PARAMS ((const char *, Table_Id)); -extern void sym_id_parse PARAMS ((void)); -extern bfd_boolean sym_id_arc_is_present PARAMS ((Sym_Table *, Sym *, Sym *)); +extern void sym_id_add (const char *, Table_Id); +extern void sym_id_parse (void); +extern bfd_boolean sym_id_arc_is_present (Sym_Table *, Sym *, Sym *); #endif /* sym_ids_h */ diff -uprN binutils-2.15.90.0.3/gprof/symtab.c binutils-2.15.91.0.1/gprof/symtab.c --- binutils-2.15.90.0.3/gprof/symtab.c 2002-02-03 11:22:32.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/symtab.c 2004-05-27 11:26:04.713161345 -0700 @@ -26,7 +26,7 @@ #include "cg_arcs.h" #include "corefile.h" -static int cmp_addr PARAMS ((const PTR, const PTR)); +static int cmp_addr (const PTR, const PTR); Sym_Table symtab; @@ -34,8 +34,7 @@ Sym_Table symtab; /* Initialize a symbol (so it's empty). */ void -sym_init (sym) - Sym *sym; +sym_init (Sym *sym) { memset (sym, 0, sizeof (*sym)); @@ -59,9 +58,7 @@ sym_init (sym) the global symbol survives. */ static int -cmp_addr (lp, rp) - const PTR lp; - const PTR rp; +cmp_addr (const PTR lp, const PTR rp) { const Sym *left = (const Sym *) lp; const Sym *right = (const Sym *) rp; @@ -79,8 +76,7 @@ cmp_addr (lp, rp) void -symtab_finalize (tab) - Sym_Table *tab; +symtab_finalize (Sym_Table *tab) { Sym *src, *dst; bfd_vma prev_addr; @@ -177,9 +173,7 @@ symtab_finalize (tab) #ifdef DEBUG Sym * -dbg_sym_lookup (sym_tab, address) - Sym_Table *sym_tab; - bfd_vma address; +dbg_sym_lookup (Sym_Table *sym_tab, bfd_vma address) { long low, mid, high; Sym *sym; @@ -218,9 +212,7 @@ dbg_sym_lookup (sym_tab, address) /* Look up an address in the symbol-table that is sorted by address. If address does not hit any symbol, 0 is returned. */ Sym * -sym_lookup (sym_tab, address) - Sym_Table *sym_tab; - bfd_vma address; +sym_lookup (Sym_Table *sym_tab, bfd_vma address) { long low, high; long mid = -1; diff -uprN binutils-2.15.90.0.3/gprof/symtab.h binutils-2.15.91.0.1/gprof/symtab.h --- binutils-2.15.90.0.3/gprof/symtab.h 2002-12-16 12:22:53.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/symtab.h 2004-05-27 11:26:04.721160311 -0700 @@ -111,12 +111,12 @@ Sym_Table; extern Sym_Table symtab; /* The symbol table. */ -extern void sym_init PARAMS ((Sym *)); -extern void symtab_finalize PARAMS ((Sym_Table *)); +extern void sym_init (Sym *); +extern void symtab_finalize (Sym_Table *); #ifdef DEBUG -extern Sym *dbg_sym_lookup PARAMS ((Sym_Table *, bfd_vma)); +extern Sym *dbg_sym_lookup (Sym_Table *, bfd_vma); #endif -extern Sym *sym_lookup PARAMS ((Sym_Table *, bfd_vma)); -extern void find_call PARAMS ((Sym *, bfd_vma, bfd_vma)); +extern Sym *sym_lookup (Sym_Table *, bfd_vma); +extern void find_call (Sym *, bfd_vma, bfd_vma); #endif /* symtab_h */ diff -uprN binutils-2.15.90.0.3/gprof/tahoe.c binutils-2.15.91.0.1/gprof/tahoe.c --- binutils-2.15.90.0.3/gprof/tahoe.c 2002-12-16 12:22:53.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/tahoe.c 2004-05-27 11:26:04.722160181 -0700 @@ -58,15 +58,14 @@ typedef enum tahoe_opermodes tahoe_opera */ static Sym indirectchild; -static tahoe_operandenum tahoe_operandmode PARAMS ((unsigned char *)); -static char *tahoe_operandname PARAMS ((tahoe_operandenum)); -static long tahoe_operandlength PARAMS ((unsigned char *)); -static bfd_signed_vma tahoe_offset PARAMS ((unsigned char *)); -void tahoe_find_call PARAMS ((Sym *, bfd_vma, bfd_vma)); +static tahoe_operandenum tahoe_operandmode (unsigned char *); +static char *tahoe_operandname (tahoe_operandenum); +static long tahoe_operandlength (unsigned char *); +static bfd_signed_vma tahoe_offset (unsigned char *); +void tahoe_find_call (Sym *, bfd_vma, bfd_vma); static tahoe_operandenum -tahoe_operandmode (modep) - unsigned char *modep; +tahoe_operandmode (unsigned char *modep) { long usesreg = *modep & 0xf; @@ -107,8 +106,7 @@ tahoe_operandmode (modep) } static char * -tahoe_operandname (mode) - tahoe_operandenum mode; +tahoe_operandname (tahoe_operandenum mode) { switch (mode) @@ -161,8 +159,8 @@ tahoe_operandname (mode) } static long -tahoe_operandlength (modep) - unsigned char *modep; +tahoe_operandlength (unsigned char *modep +) { switch (tahoe_operandmode (modep)) @@ -199,8 +197,7 @@ tahoe_operandlength (modep) } static bfd_signed_vma -tahoe_offset (modep) - unsigned char *modep; +tahoe_offset (unsigned char *modep) { tahoe_operandenum mode = tahoe_operandmode (modep); @@ -220,10 +217,7 @@ tahoe_offset (modep) } void -tahoe_find_call (parent, p_lowpc, p_highpc) - Sym *parent; - bfd_vma p_lowpc; - bfd_vma p_highpc; +tahoe_find_call (Sym *parent, bfd_vma p_lowpc, bfd_vma p_highpc) { unsigned char *instructp; long length; diff -uprN binutils-2.15.90.0.3/gprof/utils.c binutils-2.15.91.0.1/gprof/utils.c --- binutils-2.15.90.0.3/gprof/utils.c 2002-08-01 17:49:32.000000000 -0700 +++ binutils-2.15.91.0.1/gprof/utils.c 2004-05-27 11:26:04.722160181 -0700 @@ -39,8 +39,7 @@ * Print name of symbol. Return number of characters printed. */ int -print_name_only (self) - Sym *self; +print_name_only (Sym *self) { const char *name = self->name; const char *filename; @@ -99,8 +98,7 @@ print_name_only (self) void -print_name (self) - Sym *self; +print_name (Sym *self) { print_name_only (self); diff -uprN binutils-2.15.90.0.3/gprof/utils.h binutils-2.15.91.0.1/gprof/utils.h --- binutils-2.15.90.0.3/gprof/utils.h 1999-10-10 12:23:06.000000000 -0700 +++ binutils-2.15.91.0.1/gprof/utils.h 2004-05-27 11:26:04.726159664 -0700 @@ -1,7 +1,7 @@ #ifndef utils_h #define utils_h -extern int print_name_only PARAMS ((Sym * self)); -extern void print_name PARAMS ((Sym * self)); +extern int print_name_only (Sym * self); +extern void print_name (Sym * self); #endif /* utils_h */ diff -uprN binutils-2.15.90.0.3/gprof/vax.c binutils-2.15.91.0.1/gprof/vax.c --- binutils-2.15.90.0.3/gprof/vax.c 2002-12-16 12:22:53.000000000 -0800 +++ binutils-2.15.91.0.1/gprof/vax.c 2004-05-27 11:26:04.726159664 -0700 @@ -68,15 +68,14 @@ struct modebyte */ static Sym indirectchild; -static operandenum vax_operandmode PARAMS ((unsigned char *)); -static char *vax_operandname PARAMS ((operandenum)); -static long vax_operandlength PARAMS ((unsigned char *)); -static bfd_signed_vma vax_offset PARAMS ((unsigned char *)); -void vax_find_call PARAMS ((Sym *, bfd_vma, bfd_vma)); +static operandenum vax_operandmode (unsigned char *); +static char *vax_operandname (operandenum); +static long vax_operandlength (unsigned char *); +static bfd_signed_vma vax_offset (unsigned char *); +void vax_find_call (Sym *, bfd_vma, bfd_vma); static operandenum -vax_operandmode (modep) - unsigned char *modep; +vax_operandmode (unsigned char *modep) { int usesreg = *modep & 0xf; @@ -117,8 +116,7 @@ vax_operandmode (modep) } static char * -vax_operandname (mode) - operandenum mode; +vax_operandname (operandenum mode) { switch (mode) @@ -171,8 +169,7 @@ vax_operandname (mode) } static long -vax_operandlength (modep) - unsigned char *modep; +vax_operandlength (unsigned char *modep) { switch (vax_operandmode (modep)) @@ -209,8 +206,7 @@ vax_operandlength (modep) } static bfd_signed_vma -vax_offset (modep) - unsigned char *modep; +vax_offset (unsigned char *modep) { operandenum mode = vax_operandmode (modep); @@ -231,10 +227,7 @@ vax_offset (modep) void -vax_find_call (parent, p_lowpc, p_highpc) - Sym *parent; - bfd_vma p_lowpc; - bfd_vma p_highpc; +vax_find_call (Sym *parent, bfd_vma p_lowpc, bfd_vma p_highpc) { unsigned char *instructp; long length; diff -uprN binutils-2.15.90.0.3/include/ChangeLog binutils-2.15.91.0.1/include/ChangeLog --- binutils-2.15.90.0.3/include/ChangeLog 2004-04-14 21:26:05.000000000 -0700 +++ binutils-2.15.91.0.1/include/ChangeLog 2004-05-27 11:26:04.758155527 -0700 @@ -1,3 +1,19 @@ +2004-05-11 Jakub Jelinek + + * bfdlink.h (struct bfd_link_info): Add relro, relro_start and + relro_end fields. + * elf/common.h (PT_GNU_EH_FRAME, PT_GNU_STACK): Add comments. + (PT_GNU_RELRO): Define. + +2004-05-04 Andreas Jaeger + + * demangle.h: Do not use C++ reserved keyword typename as + parameter for cplus_demangle_fill_builtin_type. + +2004-04-22 Richard Henderson + + * hashtab.h (struct htab): Add size_prime_index. + 2004-04-13 Jeff Law * hashtab.h (htab_remove_elt_with_hash): Prototype new function. diff -uprN binutils-2.15.90.0.3/include/bfdlink.h binutils-2.15.91.0.1/include/bfdlink.h --- binutils-2.15.90.0.3/include/bfdlink.h 2004-04-12 12:56:35.000000000 -0700 +++ binutils-2.15.91.0.1/include/bfdlink.h 2004-05-27 11:26:04.767154363 -0700 @@ -302,6 +302,9 @@ struct bfd_link_info flags. */ unsigned int noexecstack: 1; + /* TRUE if PT_GNU_RELRO segment should be created. */ + unsigned int relro: 1; + /* What to do with unresolved symbols in an object file. When producing executables the default is GENERATE_ERROR. When producing shared libraries the default is IGNORE. The @@ -391,6 +394,9 @@ struct bfd_link_info /* May be used to set DT_FLAGS_1 for ELF. */ bfd_vma flags_1; + + /* Start and end of RELRO region. */ + bfd_vma relro_start, relro_end; }; /* This structures holds a set of callback functions. These are diff -uprN binutils-2.15.90.0.3/include/coff/ChangeLog binutils-2.15.91.0.1/include/coff/ChangeLog --- binutils-2.15.90.0.3/include/coff/ChangeLog 2004-01-14 13:07:51.000000000 -0800 +++ binutils-2.15.91.0.1/include/coff/ChangeLog 2004-05-27 11:26:04.796150613 -0700 @@ -1,3 +1,13 @@ +2004-04-23 Chris Demetriou + + * mips.h (MIPS_R_RELHI, MIPS_R_RELLO, MIPS_R_SWITCH): Remove + (MIPS_R_PCREL16): Update comment. + * ecoff.h (struct ecoff_value_adjust): Remove structure. + (struct ecoff_debug_info): Remove 'adjust' member. + +2004-04-20 DJ Delorie + + * internal.h (R_SECREL32): Add. For older changes see ChangeLog-9103 diff -uprN binutils-2.15.90.0.3/include/coff/ecoff.h binutils-2.15.91.0.1/include/coff/ecoff.h --- binutils-2.15.90.0.3/include/coff/ecoff.h 2004-01-14 13:07:51.000000000 -0800 +++ binutils-2.15.91.0.1/include/coff/ecoff.h 2004-05-27 11:26:04.799150225 -0700 @@ -322,34 +322,6 @@ struct ecoff_debug_info this changes in the future. This is a pointer to an array, not a single structure. */ FDR *fdr; - - /* When relaxing MIPS embedded PIC code, we may need to adjust - symbol values when they are output. This is a linked list of - structures indicating how values should be adjusted. There is no - requirement that the entries be in any order, or that they not - overlap. This field is normally NULL, in which case no - adjustments need to be made. */ - struct ecoff_value_adjust *adjust; -}; - -/* This structure describes how to adjust symbol values when - outputting MIPS embedded PIC code. These adjustments only apply to - the internal symbols, as the external symbol values will come from - the hash table and have already been adjusted. */ - -struct ecoff_value_adjust -{ - /* Next entry on adjustment list. */ - struct ecoff_value_adjust *next; - /* Starting VMA of adjustment. This is the VMA in the ECOFF file, - not the offset from the start of the section. Thus it should - indicate a particular section. */ - bfd_vma start; - /* Ending VMA of adjustment. */ - bfd_vma end; - /* Adjustment. This should be added to the value of the symbol, or - FDR. This is zero for the last entry in the array. */ - long adjust; }; /* These structures are used by the ECOFF find_nearest_line function. */ diff -uprN binutils-2.15.90.0.3/include/coff/internal.h binutils-2.15.91.0.1/include/coff/internal.h --- binutils-2.15.90.0.3/include/coff/internal.h 2004-01-14 13:07:51.000000000 -0800 +++ binutils-2.15.91.0.1/include/coff/internal.h 2004-05-27 11:26:04.800150096 -0700 @@ -607,6 +607,7 @@ struct internal_reloc #define R_REL24 5 #define R_DIR32 6 #define R_IMAGEBASE 7 +#define R_SECREL32 11 #define R_RELBYTE 15 #define R_RELWORD 16 #define R_RELLONG 17 diff -uprN binutils-2.15.90.0.3/include/coff/mips.h binutils-2.15.91.0.1/include/coff/mips.h --- binutils-2.15.90.0.3/include/coff/mips.h 2001-03-15 14:53:03.000000000 -0800 +++ binutils-2.15.91.0.1/include/coff/mips.h 2004-05-27 11:26:04.801149967 -0700 @@ -105,34 +105,10 @@ struct external_reloc #define MIPS_R_GPREL 6 #define MIPS_R_LITERAL 7 -/* These reloc types are a Cygnus extension used when generating - position independent code for embedded systems. The numbers are - taken from Irix 4, but at least for internal relocs Irix 5 does not - give them the same meaning. For an internal reloc the symbol index - of RELHI and RELLO is modified as described below for - MIPS_R_SWITCH. */ +/* FIXME: This relocation is used (internally only) to represent branches + when assembling. It should never appear in output files, and + be removed. (It used to be used for embedded-PIC support.) */ #define MIPS_R_PCREL16 12 -#define MIPS_R_RELHI 13 -#define MIPS_R_RELLO 14 - -/* This reloc type is a Cygnus extension used when generating position - independent code for embedded systems. It is used for an entry in - a switch table, which looks like this: - .word $L3-$LS12 - The object file will contain the correct difference, and does not - require adjustment. However, when the linker is relaxing PC - relative calls, it is possible for $L3 to move farther away. This - reloc always appears in the .text section, and is always against - the .text section. However, the symbol index is not - RELOC_SECTION_TEXT. It is, instead, the distance between this - switch table entry and $LS12. Thus, the original value of $L12 is - vaddr - symndx - and the original value of $L3 is - vaddr - symndx + addend - where addend is the value in the object file. Knowing this, the - linker can know whether the addend in the object file must be - adjusted. */ -#define MIPS_R_SWITCH 22 /********************** STABS **********************/ diff -uprN binutils-2.15.90.0.3/include/demangle.h binutils-2.15.91.0.1/include/demangle.h --- binutils-2.15.90.0.3/include/demangle.h 2004-01-14 13:07:51.000000000 -0800 +++ binutils-2.15.91.0.1/include/demangle.h 2004-05-27 11:26:04.781152553 -0700 @@ -474,7 +474,7 @@ cplus_demangle_fill_name PARAMS ((struct extern int cplus_demangle_fill_builtin_type PARAMS ((struct demangle_component *fill, - const char *typename)); + const char *type_name)); /* Fill in a DEMANGLE_COMPONENT_OPERATOR, using the name of the operator and the number of arguments which it takes (the latter is diff -uprN binutils-2.15.90.0.3/include/elf/ChangeLog binutils-2.15.91.0.1/include/elf/ChangeLog --- binutils-2.15.90.0.3/include/elf/ChangeLog 2004-04-12 12:56:35.000000000 -0700 +++ binutils-2.15.91.0.1/include/elf/ChangeLog 2004-05-27 11:26:04.811148674 -0700 @@ -1,3 +1,9 @@ +2004-04-24 Chris Demetriou + + * mips.h (R_MIPS_PC32, R_MIPS_PC64, R_MIPS_GNU_REL_LO16) + (R_MIPS_GNU_REL_HI16): Remove. + (R_MIPS_GNU_REL16_S2): Update comment. + 2004-30-30 Galit Heller Tomer Levi diff -uprN binutils-2.15.90.0.3/include/elf/common.h binutils-2.15.91.0.1/include/elf/common.h --- binutils-2.15.90.0.3/include/elf/common.h 2004-04-12 12:56:35.000000000 -0700 +++ binutils-2.15.91.0.1/include/elf/common.h 2004-05-27 11:26:04.813148415 -0700 @@ -288,8 +288,9 @@ #define PT_LOPROC 0x70000000 /* Processor-specific */ #define PT_HIPROC 0x7FFFFFFF /* Processor-specific */ -#define PT_GNU_EH_FRAME (PT_LOOS + 0x474e550) -#define PT_GNU_STACK (PT_LOOS + 0x474e551) +#define PT_GNU_EH_FRAME (PT_LOOS + 0x474e550) /* Frame unwind information */ +#define PT_GNU_STACK (PT_LOOS + 0x474e551) /* Stack flags */ +#define PT_GNU_RELRO (PT_LOOS + 0x474e552) /* Read-only after relocation */ /* Program segment permissions, in program header p_flags field. */ diff -uprN binutils-2.15.90.0.3/include/elf/mips.h binutils-2.15.91.0.1/include/elf/mips.h --- binutils-2.15.90.0.3/include/elf/mips.h 2004-01-14 13:07:51.000000000 -0800 +++ binutils-2.15.91.0.1/include/elf/mips.h 2004-05-27 11:26:04.825146863 -0700 @@ -76,12 +76,8 @@ START_RELOC_NUMBERS (elf_mips_reloc_type /* These relocs are used for the mips16. */ RELOC_NUMBER (R_MIPS16_26, 100) RELOC_NUMBER (R_MIPS16_GPREL, 101) - /* These are GNU extensions to handle embedded-pic. */ - RELOC_NUMBER (R_MIPS_PC32, 248) - RELOC_NUMBER (R_MIPS_PC64, 249) + /* FIXME: this relocation is used internally by gas. */ RELOC_NUMBER (R_MIPS_GNU_REL16_S2, 250) - RELOC_NUMBER (R_MIPS_GNU_REL_LO16, 251) - RELOC_NUMBER (R_MIPS_GNU_REL_HI16, 252) /* These are GNU extensions to enable C++ vtable garbage collection. */ RELOC_NUMBER (R_MIPS_GNU_VTINHERIT, 253) RELOC_NUMBER (R_MIPS_GNU_VTENTRY, 254) diff -uprN binutils-2.15.90.0.3/include/hashtab.h binutils-2.15.91.0.1/include/hashtab.h --- binutils-2.15.90.0.3/include/hashtab.h 2004-04-14 21:26:05.000000000 -0700 +++ binutils-2.15.91.0.1/include/hashtab.h 2004-05-27 11:26:04.782152423 -0700 @@ -1,5 +1,5 @@ /* An expandable hash tables datatype. - Copyright (C) 1999, 2000, 2002, 2003 Free Software Foundation, Inc. + Copyright (C) 1999, 2000, 2002, 2003, 2004 Free Software Foundation, Inc. Contributed by Vladimir Makarov (vmakarov@cygnus.com). This program is free software; you can redistribute it and/or modify @@ -101,13 +101,13 @@ struct htab GTY(()) /* Table itself. */ PTR * GTY ((use_param, length ("%h.size"))) entries; - /* Current size (in entries) of the hash table */ + /* Current size (in entries) of the hash table. */ size_t size; - /* Current number of elements including also deleted elements */ + /* Current number of elements including also deleted elements. */ size_t n_elements; - /* Current number of deleted elements in the table */ + /* Current number of deleted elements in the table. */ size_t n_deleted; /* The following member is used for debugging. Its value is number @@ -126,6 +126,10 @@ struct htab GTY(()) PTR GTY((skip)) alloc_arg; htab_alloc_with_arg alloc_with_arg_f; htab_free_with_arg free_with_arg_f; + + /* Current size (in entries) of the hash table, as an index into the + table of primes. */ + unsigned int size_prime_index; }; typedef struct htab *htab_t; diff -uprN binutils-2.15.90.0.3/include/opcode/ChangeLog binutils-2.15.91.0.1/include/opcode/ChangeLog --- binutils-2.15.90.0.3/include/opcode/ChangeLog 2004-04-12 12:56:35.000000000 -0700 +++ binutils-2.15.91.0.1/include/opcode/ChangeLog 2004-05-27 11:26:04.826146734 -0700 @@ -1,3 +1,19 @@ +2004-05-24 Peter Barada + + * m68k.h: Add 'size' to m68k_opcode. + +2004-05-05 Peter Barada + + * m68k.h: Switch from ColdFire chip name to core variant. + +2004-04-22 Peter Barada + + * m68k.h: Add mcfmac/mcfemac definitions. Update operand + descriptions for new EMAC cases. + Remove ColdFire macmw/macml/msacmw/msacmw hacks and properly + handle Motorola MAC syntax. + Allow disassembly of ColdFire V4e object files. + 2004-03-16 Alan Modra * ppc.h (PPC_OPERAND_GPR_0): Define. Bump other operand defines. diff -uprN binutils-2.15.90.0.3/include/opcode/m68k.h binutils-2.15.91.0.1/include/opcode/m68k.h --- binutils-2.15.90.0.3/include/opcode/m68k.h 2004-01-14 13:07:52.000000000 -0800 +++ binutils-2.15.91.0.1/include/opcode/m68k.h 2004-05-27 11:26:04.834145700 -0700 @@ -1,6 +1,6 @@ /* Opcode table header for m680[01234]0/m6888[12]/m68851. Copyright 1989, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1999, 2001, - 2003 Free Software Foundation, Inc. + 2003, 2004 Free Software Foundation, Inc. This file is part of GDB, GAS, and the GNU binutils. @@ -35,13 +35,27 @@ #define m68881 0x040 #define m68882 m68881 /* Synonym for -m68881. otherwise unused. */ #define m68851 0x080 -#define cpu32 0x100 /* e.g., 68332 */ -#define mcf5200 0x200 -#define mcf5206e 0x400 -#define mcf5307 0x800 -#define mcf5407 0x1000 -#define mcfv4e 0x2000 -#define mcf528x 0x4000 +#define cpu32 0x100 /* e.g., 68332 */ + +#define mcfmac 0x200 /* ColdFire MAC. */ +#define mcfemac 0x400 /* ColdFire EMAC. */ +#define cfloat 0x800 /* ColdFire FPU. */ +#define mcfhwdiv 0x1000 /* ColdFire hardware divide. */ + +#define mcfisa_a 0x2000 /* ColdFire ISA_A. */ +#define mcfisa_aa 0x4000 /* ColdFire ISA_A+. */ +#define mcfisa_b 0x8000 /* ColdFire ISA_B. */ +#define mcfusp 0x10000 /* ColdFire USP instructions. */ + +#define mcf5200 0x20000 +#define mcf5206e 0x40000 +#define mcf521x 0x80000 +#define mcf5249 0x100000 +#define mcf528x 0x200000 +#define mcf5307 0x400000 +#define mcf5407 0x800000 +#define mcf5470 0x1000000 +#define mcf5480 0x2000000 /* Handy aliases. */ #define m68040up (m68040 | m68060) @@ -49,13 +63,7 @@ #define m68020up (m68020 | m68030up) #define m68010up (m68010 | cpu32 | m68020up) #define m68000up (m68000 | m68010up) -#define mcf (mcf5200 | mcf5206e | mcf528x | mcf5307 | mcf5407 | mcfv4e) -#define mcf5206eup (mcf5206e | mcf528x | mcf5307 | mcf5407 | mcfv4e) -#define mcf5307up (mcf5307 | mcf5407 | mcfv4e) -#define mcfv4up (mcf5407 | mcfv4e) -#define mcfv4eup (mcfv4e) -#define cfloat (mcfv4e) #define mfloat (m68881 | m68882 | m68040 | m68060) #define mmmu (m68851 | m68030 | m68040 | m68060) @@ -65,6 +73,9 @@ struct m68k_opcode { /* The opcode name. */ const char *name; + /* The pseudo-size of the instruction(in bytes). Used to determine + number of bytes necessary to disassemble the instruction. */ + unsigned int size; /* The opcode itself. */ unsigned long opcode; /* The mask used by the disassembler. */ @@ -99,7 +110,7 @@ struct m68k_opcode_alias operand; the second, the place it is stored. */ /* Kinds of operands: - Characters used: AaBbCcDdEFfGHIJkLlMmnOopQqRrSsTtU VvWwXxYyZz0123|*~%;@!&$?/<>#^+- + Characters used: AaBbCcDdEeFfGgHIiJkLlMmnOopQqRrSsTtU VvWwXxYyZz01234|*~%;@!&$?/<>#^+- D data register only. Stored as 3 bits. A address register only. Stored as 3 bits. @@ -133,9 +144,12 @@ struct m68k_opcode_alias C the CCR. No need to store it; this is just for filtering validity. S the SR. No need to store, just as with CCR. U the USP. No need to store, just as with CCR. - E the ACC. No need to store, just as with CCR. - G the MACSR. No need to store, just as with CCR. + E the MAC ACC. No need to store, just as with CCR. + e the EMAC ACC[0123]. + G the MAC/EMAC MACSR. No need to store, just as with CCR. + g the EMAC ACCEXT{01,23}. H the MASK. No need to store, just as with CCR. + i the MAC/EMAC scale factor. I Coprocessor ID. Not printed if 1. The Coprocessor ID is always extracted from the 'd' field of word one, which means that an extended @@ -230,7 +244,9 @@ struct m68k_opcode_alias w (modes 2-5,7.2) y (modes 2,5) z (modes 2,5,7.2) - x mov3q immediate operand. */ + x mov3q immediate operand. + 4 (modes 2,3,4,5) + */ /* For the 68851: */ /* I didn't use much imagination in choosing the @@ -283,7 +299,7 @@ struct m68k_opcode_alias */ /* Places to put an operand, for non-general operands: - Characters used: BbCcDdghijkLlMmNnostWw123456789 + Characters used: BbCcDdFfGgHhIijkLlMmNnostWw123456789/ s source, low bits of first word. d dest, shifted 9 in first word @@ -348,6 +364,13 @@ struct m68k_opcode_alias F double precision float, low bit of 1st word, immediate uses 8 bytes x extended precision float, low bit of 1st word, immediate uses 12 bytes p packed float, low bit of 1st word, immediate uses 12 bytes + G EMAC accumulator, load (bit 4 2nd word, !bit8 first word) + H EMAC accumulator, non load (bit 4 2nd word, bit 8 first word) + F EMAC ACCx + f EMAC ACCy + I MAC/EMAC scale factor + / Like 's', but set 2nd word, bit 5 if trailing_ampersand set + ] first word, bit 10 */ extern const struct m68k_opcode m68k_opcodes[]; diff -uprN binutils-2.15.90.0.3/ld/ChangeLog binutils-2.15.91.0.1/ld/ChangeLog --- binutils-2.15.90.0.3/ld/ChangeLog 2004-04-12 12:56:35.000000000 -0700 +++ binutils-2.15.91.0.1/ld/ChangeLog 2004-05-27 11:26:04.835145570 -0700 @@ -1,3 +1,278 @@ +2004-05-26 H.J. Lu + + * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Clear + SEC_EXCLUDE on non-SEC_DEBUGGING sections for relocatable link. + * ldlang.c (lang_add_section): Likewise. + +2004-05-26 Alan Modra + + * ldlang.c (lang_add_section): Set SEC_EXCLUDE for SEC_GROUP + sections when doing a final link. Clear SEC_EXCLUDE when doing + a relocable link, except for SEC_DEBUGGING sections. + * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Use the + same condition here to drop SEC_EXCLUDE orphan sections. + +2004-05-25 Alan Modra + + * ldlang.c (lang_process): Call bfd_merge_sections later, and + only when not a relocatable link. + (print_input_section): Handle SEC_EXCLUDE sections. + (size_input_section): Don't update dot on SEC_EXCLUDE sections. + (lang_do_assignments_1): Likewise. + * ldwrite.c (build_link_order): Ignore SEC_EXCLUDE input sections. + * emultempl/armelf.em (arm_elf_set_bfd_for_interworking): Likewise. + * emultempl/hppaelf.em (build_section_lists): Likewise. + * emultempl/ppc64elf.em (build_toc_list): Likewise. + (build_section_lists): Likewise. + +2004-05-23 Andreas Schwab + + * ld.texinfo (Options): Fix typo in last change. + +2004-05-21 Andy Chittenden + + * ld.h (ld_config_type): Add new field: hash_table_size. + * ldmain.c: Initialise the new field to zero. If it is non-zero + after parsing the linker's command line call + bfd_hash_set_default_size. + * lexsup.c (option_values): Add OPTION_HASH_SIZE. + (ld_options): Add hash-size. + (parse_args): Parse --hash-size option. Allow + --reduce-memory-overheads to set the default hash table size as + well. + * ld.texinfo: Document the new switch. Also mention that + --reduce-memory-overheads can affect the hash table size. + * NEWS: Mention the new feature. + +2004-05-19 J"orn Rennecke + + * NEWS: Mention new linker map file generation and the + --reduce-memory-overheads option. + * ld.texinfo: Document --reduce-memory-overheads option. + * ld.h (map_symbol_def): New struct. + (struct user_section_struct, section_userdata_type): Rename to: + (struct lean_user_section_struct, lean_section_userdata_type). + (struct fat_user_section_struct, fat_section_userdata_type): New. + (SECTION_USERDATA_SIZE): Define. + (args_type): New member reduce_memory_overheads. + * ldlang.c (map_obstack): New static variable. + (init_map_userdata, print_all_symbols, sort_def_symbol): New functions. + (lang_map): Unless command_line.reduce_memory_overheads is set, + initialize lists of defined symbols for each section. + (print_input_section): Unless command_line.reduce_memory_overheads + is set, use print_all_symbols. + (init_os): Use lean_section_userdata_type / SECTION_USERDATA_SIZE. + * ldmain.c (main): Initialize command_line.reduce_memory_overheads. + * lexsup.c (enum option_values): Add OPTION_REDUCE_MEMORY_OVERHEADS. + (ld_options): Add entry for --reduce-memory-overheads. + (parse_args): Handle OPTION_REDUCE_MEMORY_OVERHEADS. + +2004-05-19 Jakub Jelinek + + * ldgram.y (sect_constraint): New. + (ONLY_IF_RO, ONLY_IF_RW): New tokens. + (section): Add sect_constraint. Pass additional argument + to lang_enter_output_section_statement. + * mri.c (mri_draw_tree): Pass additional argument to + lang_enter_output_section_statement. + * emultempl/pe.em (place_orphan): Likewise. + (output_prev_sec_find): Disregard output section statements with + constraint == -1. + * emultempl/mmo.em (output_prev_sec_find): Likewise. + (mmo_place_orphan): Pass additional argument to + lang_enter_output_section_statement. + * emultempl/elf32.em (output_prev_sec_find): Disregard output section + statements with constraint == -1. + (place_orphan): Pass additional argument to + lang_enter_output_section_statement. + * ldlang.c (lang_enter_overlay_section): Likewise. + (lang_output_section_find_1): New. + (lang_output_section_find): Use it. + (lang_output_section_statement_lookup_1): New. + (lang_output_section_statement_lookup): Use it. + (check_section_callback, check_input_sections): New. + (map_input_to_output_sections): Check if all input sections + are readonly if ONLY_IF_RO or ONLY_IF_RW was seen. + (strip_excluded_output_sections): Disregard output section statements + with constraint == -1. + (lang_record_phdrs): Likewise. + (lang_enter_output_section_statement): Add constraint argument. + Use lang_output_section_statement_lookup_1. + * ldlang.h (lang_output_section_statement_type): Add constraint + and all_input_readonly fields. + (lang_enter_output_section_statement): Adjust prototype. + * ldlex.l (ONLY_IF_RO, ONLY_IF_RW): New tokens. + * scripttempl/elf.sc (.eh_frame, .gcc_except_table): Move into text + segment if all input sections are readonly. + +2004-05-19 Adam Nemet + + * scripttempl/i386lynx.sc: Remove file. + +2004-05-17 Bob Wilson + + * ld.texinfo (Output Section Address): Correct subsection name. + +2004-05-17 Adam Nemet + + * configure.tgt (powerpc-*-lynxos* case): New case. + * configure.host (i[3-7]86-*-lynxos* case): Remove case. + * emulparams/ppclynx.sh: New file. + * emulparams/i386lynx.sh (SCRIPT_NAME): Update to LynxOS 4.0. + * Makefile.am (ALL_EMULATIONS): Add eppclynx.o + (ei386lynx.c): Update rule to LynxOS 4.0 ELF. + (eppclynx.c): New rule. + * Makefile.in: Regenerate. + +2004-05-13 Joel Sherrill + + * configure.tgt (or32-*-rtems*): Switch to elf and + support versioned targets. + +2004-05-13 Nick Clifton + + * po/fr.po: Updated French translation. + +2004-05-11 Jakub Jelinek + + * genscripts.sh: Generate -z combreloc -z now -z relro scripts + for binaries, -shared and -pie. + * emulparams/elf_i386.sh (SEPARATE_GOTPLT): Set. + * emulparams/elf_x86_64.sh (SEPARATE_GOTPLT): Set. + * emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Rename to... + (OTHER_RELRO_SECTIONS): ... this. + * ldlex.l (DATA_SEGMENT_RELRO_END): Add. + * emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Handle + -z relro and -z norelro. + (gld${EMULATION_NAME}_list_options): Add it to usage. + (gld${EMULATION_NAME}_get_script): Return -z combreloc -z now + -z relro scripts when appropriate. + * scripttempl/elf.sc: Unset SEPARATE_GOTPLT if RELRO_NOW is set. + Create separate .got.plt section if SEPARATE_GOTPLT. + Move sections which are only written during relocation handling + to the beginning of RW segment. If NO_SMALL_DATA, move .got + before .data. Add DATA_SEGMENT_RELRO_END directive. + Include OTHER_RELRO_SECTIONS. + * ldgram.y (DATA_SEGMENT_RELRO_END): Add. + * ldexp.c (exp_print_token): Handle DATA_SEGMENT_RELRO_END. + (fold_unary): Likewise. + (fold_binary): Handle -z relro. + * ldexp.h (struct exp_data_seg): Add exp_dataseg_relro_seen and + exp_dataseg_relro_adjust phases. Add relro_end field. + * ldmain.c (main): Initialize link_info.relro to FALSE. + * ldlang.c (lang_size_sections): Handle -z relro. + +2004-05-08 Marek Michalkiewicz + + * scripttempl/avr.sc: Do not set LMA for "eeprom" section. + +2004-05-07 J"orn Rennecke + + * ldlang.c (print_padding_statement): Cast size_t to bfd_vma + before printing it with %W. + +2004-05-07 Brian Ford + DJ Delorie + + * emultempl/pe.em (real_flags): New static. + (OPTION_LARGE_ADDRESS_AWARE): New define. + (gld${EMULATION_NAME}_add_options): Add --large-address-aware option. + (gld_${EMULATION_NAME}_list_options): Likewise. + (gld${EMULATION_NAME}_handle_option): Likewise. + (gld_${EMULATION_NAME}_after_open): Pass real_flags to PE private data. + * ld.texinfo: Document it. + * NEWS: Mention it. + +2004-05-07 Brian Ford + + * NEWS: Mention DWARF 2 support for i386pe. + +2004-05-05 Alexandre Oliva + + * emulparams/elf32frvfd.sh (OUTPUT_FORMAT): Switch to new + elf32-frvfdpic. + +2004-04-30 Alan Modra + + * ldlang.c (unique_section_p): Pass section parm, return true on + group sections. + (output_section_callback): Adjust. + * ldlang.h (unique_section_p): Update prototype. + * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Adjust. + +2004-04-30 Eric Botcazou + + * ld.texinfo (--gc-sections): Remove restriction for + dynamic linking. + +2004-04-29 Brian Ford + + * scripttempl/pe.sc: Handle .debug* and .gnu.linkonce.wi.* sections + for DWARF 2/3. Update stab section's syntax. + +2004-04-29 Alan Modra + + * pe-dll.c: Revert changes accidentally committed 2004-03-08. + (fill_edata): Correct pointer arithmetic. + +2004-04-21 Chris Demetriou + + * ld.texinfo: Remove MIPS --embedded-relocs documentation. + * emulparams/elf32bmip.sh (EXTRA_EM_FILE): Remove definition. + * emulparams/mipsidt.sh (TEMPLATE_NAME): Use generic.em. + (EXTRA_EM_FILE): Use mipsecoff.em + * emulparams/mipsidtl.sh (TEMPLATE_NAME): Use generic.em. + (EXTRA_EM_FILE): Use mipsecoff.em + * emultempl/mipsecoff.em: Restructure to be included as an + extra emulation file. + (check_sections, gld${EMULATION_NAME}_after_open) + (gld${EMULATION_NAME}_after_allocation) + (gld${EMULATION_NAME}_get_script) + (ld_${EMULATION_NAME}_emulation): Remove + (gld${EMULATION_NAME}_before_parse): Rename to... + (mipsecoff_before_parse): This. + (LDEMUL_BEFORE_PARSE): Define. + * emultempl/mipself.em: Remove file. + * scripttempl/mips.sc (.rel.sdata): Do not include in output. + (__runtime_reloc_start, __runtime_reloc_stop): Stop providing + these symbols. + * Makefile.am: Remove dependencies on emultempl/mipself.em. + * Makefile.in: Regenerate. + +2004-04-21 Anil Paranjpe + + * ld.texinfo (synthesizing on H8/300): Information about linker + relaxation support for bit manipulation instructions and system + control instructions is added. + +2004-04-21 Hans-Peter Nilsson + + * NEWS: Mention change in DEFINED semantics. + +2004-04-21 Eric Botcazou + + * scripttempl/elf.sc (.text): Add KEEP for .text.*personality*. + (.data): Add KEEP for .gnu.linkonce.d.*personality*. + (.gcc_except_table): Add KEEP for self and accept .gcc_except_table.*. + +2004-04-21 Ben Elliston + + * ld.texinfo (Simple Example): Add missing punctuation. + +2004-04-20 Chris Demetriou + + * NEWS: Note that MIPS --embedded-relocs option is deprecated. + +2004-04-19 Jakub Jelinek + + * ldlang.c (lang_do_assignments_1): Handle .tbss output section + specially. + +2004-04-18 Danny Smith + + * scriptempl/pe.sc: Put numbered .ctors.* after .ctors + with default priority. Likewise for dtors. + 2004-04-11 Thiemo Seufer * configure.host: Remove mips*-dec-bsd* target. diff -uprN binutils-2.15.90.0.3/ld/ChangeLog-0203 binutils-2.15.91.0.1/ld/ChangeLog-0203 --- binutils-2.15.90.0.3/ld/ChangeLog-0203 2004-01-14 13:07:52.000000000 -0800 +++ binutils-2.15.91.0.1/ld/ChangeLog-0203 2004-05-27 11:26:04.858142597 -0700 @@ -1541,7 +1541,7 @@ * Makefile.in: Regenerate. -2002-01-14 Charles Wilson +2003-01-14 Charles Wilson * ld.texinfo (node WIN32): Some clarifications and formatting fixups. @@ -1635,6 +1635,1941 @@ and ldver.texi. * Makefile.in: Regenerated. +2002-12-24 Dmitry Diky + + * Makefile.am: Add msp430 target. + * configure.tgt: Likewise. + * Makefile.in: Regenerate. + * emulparams/msp430x???.sh: New files. Linker script parameters + for various msp430 configurations. + * gen-doc.texi: Enable msp430 documenation. + * ld.texinfo: Document msp430 sections. + * scripttempl/elf32msp430.sc: New file. Linker script for msp430. + * scripttempl/elf32msp430_3.sc: New file. Linker script for msp430. + +2002-12-30 Ralf Habacker + Charles Wilson + + * config.in (HAVE_REALPATH): New entry. + (HAVE_SYS_STAT_H, HAVE_SYS_TYPES_H): Removed: obsolete. + +2002-12-30 Ralf Habacker + + * ld.texinfo: New win32 topics: 'symbol aliasing' and 'export dll + symbols'. + +2002-12-23 Alan Modra + + * ldmain.c (main): Init "strip_discarded". + * lexsup.c (OPTION_STRIP_DISCARDED): Define. + (OPTION_NO_STRIP_DISCARDED): Define. + (ld_options): Add "strip-discarded" and "no-strip-discarded". + (parse_args): Handle them. + +2002-12-23 Nick Clifton + + * ld.h (struct args_type): Add new field + 'accept_unknown_input_architecture'. + * ldmain.c (main): Initialise 'accept_unknown_input_architecture' + to false. + * ldlang.c (lang_check): Pass accept_unknown_input_architecture to + bfd_arch_get_compatible. + * ldfile.c (ldfile_try_open_bfd): Likewise. + * lexsup.c (ld_options): Add new command line switch + --accept-unknown-input-architecture and its inverse. + (parse_args): Handle --accept-unknown-input-architecture. + * ld.texinfo: Document new linker option. + * NEWS: Mention new linker option. + +2002-12-20 Alan Modra + + * ldmain.c (main): Re-order link_info initialization. Init all + fields. + +2002-12-19 Charles Wilson + + * ld.texinfo: Clarify and extend the documentation + in the Machine Dependent, WIN32 section. + +2002-12-18 Ralf Habacker + + * ld.texinfo: Add win32 machine depending section. + * gen-doc.texi: Enable win32 machine depending section. + + * configure.host: Add win32 library search path. + +2002-12-17 Ralf Habacker + + * emultempl/pe.em (pe_find_data_imports): Don't search for data + import when auto-import is disabled. + +2002-12-17 Danny Smith + + * emultempl/pe.em (..._recognized_file): Use LD_PATHMAX+1 to + account for trailing '\0'. + +2002-12-17 Nick Clifton + + * emultempl/pe.em (longopts): Duplicate entry for --compact-implib + so that it is not confused with -c. + +2002-12-13 Ralf Habacker + Charles Wilson + + * configure.in: Add check for realpath function. + * configure: Regenerate. + * config.in: Regenerate. + * aclocal.m4: Regenerate. + * deffile.h: Add .data field to def_file_import + structure. + * pe-dll.c (pe_proces_import_defs): Use .data field of + def_file_import structure to initialize flag_data field of + def_file_export structure. + (pe_implied_import_dll): New variables exp_funcbase and + [data|bss]_[start|end]. Use DLL's internal name to set dll_name, + not filename (which may be a symlink). Scan the sections and + initialize [data|bss]_[start|end]. When scanning the export + table, skip _nm_ symbols, and mark any symbols whose rva indicates + that it is in the .bss or .data sections as data. + * sysdep.h: Include limits.h and sys/param.h, and define + LD_PATHMAX as appropriate. Also define REALPATH as realpath if it + exists, NULL otherwise. + * emultempl/pe.em (gld_${EMULATION_NAME}_after_open): Call + pe_process_import_defs before pe_find_data_imports, so that + auto-import will check the virtual implib as well as "real" + implibs. + (gld_${EMULATION_NAME}_recognized_file): Use REALPATH to follow + symlinks to their target; check that the target's extension is + .dll before calling pe_implied_import_dll(), not the filename + itself (which may be a symlink). + +2002-12-10 Alan Modra + + * emultempl/elf32.em (struct orphan_save): Add os_tail field. + (gld${EMULATION_NAME}_place_orphan): Re-order output_section_statement + list too. + +2002-12-08 Alan Modra + + * ldlang.h: Formatting. + +2002-12-07 Alan Modra + + * ldlang.c (init_os): Ensure sections mentioned in load_base + are initialized. + +2002-12-05 Alan Modra + + * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Set + load_base for orphans that follow a section with load_base set. + +2002-12-01 H.J. Lu + + * ld.texinfo: Remove the extra `;' in sample version script. + +2002-11-30 Alan Modra + + * configure.host: Correct dynamic-linker for powerpc64 hosts. + + * Makefile.am (eelf32ppcwindiss.c): Correct dependencies. + * Makefile.in: Regenerate. + + * ld.h, ldcref.c, ldctor.c, ldctor.h, ldemul.c, ldemul.h, ldexp.c, + ldexp.h, ldfile.c, ldfile.h, ldgram.y, ldlang.c, ldlang.h, ldmain.c, + ldmain.h, ldmisc.c, ldwrite.c, lexsup.c, mri.c, pe-dll.c, pe-dll.h, + emulparams/elf32b4300.sh, emultempl/aix.em, emultempl/armcoff.em, + emultempl/armelf.em, emultempl/armelf_oabi.em, emultempl/beos.em, + emultempl/elf32.em, emultempl/generic.em, emultempl/gld960.em, + emultempl/gld960c.em, emultempl/hppaelf.em, emultempl/linux.em, + emultempl/lnk960.em, emultempl/m68kcoff.em, emultempl/mipsecoff.em, + emultempl/mmix-elfnmmo.em, emultempl/mmixelf.em, emultempl/mmo.em, + emultempl/needrelax.em, emultempl/pe.em, emultempl/ppc64elf.em, + emultempl/sh64elf.em, emultempl/sunos.em, emultempl/ticoff.em: Replace + boolean with bfd_boolean, true with TRUE, false with FALSE. Simplify + comparisons of bfd_boolean vars with TRUE/FALSE. Formatting. + +2002-11-27 David O'Brien + + * configure.host: Fix generic FreeBSD configuration entry. + +2002-11-27 H.J. Lu + + * ld.texinfo: Add the missing `;' to sample version scripts. + +2002-11-20 Alan Modra + + * emulparams/elf64ppc.sh (SEGMENT_SIZE): Don't define. + +2002-11-14 Egor Duda + + * ldmain.c (main): Make runtime relocs disabled by default. Remove + assignment which has no effect. + * pe-dll.h (pe_create_import_fixup): Change prototype. + * pe-dll.c (make_runtime_pseudo_reloc): New function. + (pe_create_runtime_relocator_reference): Ditto. + (pe_create_import_fixup): Handle relocations with non-zero addends. + * emultempl/pe.em: Add options --enable-runtime-pseudo-reloc and + --disable-runtime-pseudo-reloc. + (make_import_fixup): Handle relocations with non-zero addends. Create + an external reference to _pei386_runtime_relocator symbol if at least + one pseudo reloc was created. + * ld.texinfo: Document --enable-runtime-pseudo-reloc and + --disable-runtime-pseudo-reloc options. + +2002-11-12 Earl Chew + + * ldlang.c (lang_add_section): Discard debugging sections that have + been marked SEC_EXCLUDE. + +2002-11-12 Nick Clifton + + * configure.in (ALL_LINGUAS): Add da. + * configure: Regenerate. + * po/da.po: New Danish translation. + +2002-11-12 Alan Modra + + * emultempl/ppc64elf.em (ppc_before_allocation): New function. + (LDEMUL_BEFORE_ALLOCATION): Define. + (gld${EMULATION_NAME}_finish): Run discard_info for relocatable + linking. + * emultemp/hppaelf.em ((gld${EMULATION_NAME}_finish): Likewise. + +2002-11-11 Christopher Faylor + + * configure.tgt (LIB_PATH): Default to searching w32api directory under + cygwin. + +2002-11-11 Charles Wilson + + * pe-dll.c (autofilter_liblist): add libmingwex and libgcj to the list + of restricted auto-export libs. + +2002-11-11 Charles Wilson + + * pe-dll.c (autofilter_liblist): Generalize library names to catch more + creative library naming instances like, e.g., libstdc++-2.a. + +2002-11-06 Alexandre Oliva + + * emulparams/elf32btsmipn32.sh (TEXT_DYNAMIC): Define. + * emulparams/elf64btsmip.sh (TEXT_DYNAMIC): Likewise. + +2002-11-07 Danny Smith + + * deffilep.y (def_lex): Handle '@' as first character of an ID. + * pe-dll.c (auto-export): Filter on "_imp_" prefix, not "_imp__". + (make_one): Don't prefix decorated fastcall symbols with '_'. + (pe_process_import_defs): Likewise. + * emultempl/pe.em (pe_fixup_stdcalls): Don't fixup fastcall + symbols to cdecl names or vise-versa. + +2002-10-13 Eric Kohl + + * pe-dll.c (process_def_file): Handle fastcall symbols when + generating undecorated aliases. Don't prefix decorated fastcall + symbols with '_'. + (fill_exported_offsets): Don't prefix decorated fastcall symbols + with '_'. + +2002-10-29 Daniel Jacobowitz + + * emultempl/aix.em: Use include <> for generated headers. + * emultempl/beos.em: Likewise. + * emultempl/elf32.em: Likewise. + * emultempl/pe.em: Likewise. + * ldctor.c: Likewise. + * ldexp.c: Likewise. + * ldfile.c: Likewise. + * ldlang.c: Likewise. + * ldlex.c: Likewise. + * ldlex.l: Likewise. + * ldmain.c: Likewise. + * ldmisc.c: Likewise. + * ldwrite.c: Likewise. + * lexsup.c: Likewise. + * mri.c: Likewise. + * pe-dll.c: Likewise. + +2002-10-23 Jakub Jelinek + + * emultempl/elf32.em (place_orphan): Don't put non-allocated .rel* + sections into .rel{,a}.dyn. + +2002-10-23 Nick Clifton + + * lexsup.c (OPTION_NO_OMAGIC): Define. + (ld_options): Add "no-omagic" option. + (parse_args): Parse --no-omagic. + * ld.texinfo: Document --no-omagic. + * NEWS: Mention new option. + +2002-10-21 Danny Smith + + * scripttempl/pe.sc (__RUNTIME_PSEUDO_RELOC_LIST__, + __RUNTIME_PSEUDO_RELOC_LIST_END__): Add only when relocating. + +2002-10-22 Alexandre Oliva + + * emulparams/elf32bmipn32-defs.sh: Set ELFSIZE according to + emulation name. Set LIB_PATH only for native tools, and + search the ABI-specific versions of NATIVE_LIB_DIRS before the + .../lib variants, not instead of them. Mostly copied from... + * emulparams/elf32ppc.sh: ... here. Fixed typo. + * emulparams/elf64bmip-defs.sh: Backed out. + * emulparams/elf64bmip.sh: Import elf32bmipn32-defs.sh again. + * emulparams/elf64btsmip.sh: Likewise. + (DATA_ADDR, NONPAGED_TEXT_START_ADDR, SHLIB_TEXT_START_ADDR, + TEXT_DYNAMIC): Removed. + +2002-10-17 Alexandre Oliva + + * emulparams/elf32bmipn32-defs.sh (LIB_PATH): Set to /usr/lib32. + (GENERATE_SHLIB_SCRIPT): Set to yes. + (EXECUTABLE_SYMBOLS, WRITABLE_RODATA): Moved to... + * emulparams/elf32bmipn32.sh: here. + (GENERATE_SHLIB_SCRIPT): Deleted as redundant. + * emulparams/elf32btsmipn32.sh: Delete redundant unsets. + * emulparams/elf64bmip-defs.sh: New file. Extend + elf32bmipn32-defs.sh by overiding ELFSIZE and LIB_PATH. + * emulparams/elf64bmip.sh: Bring in definitions from + elf64bmip-defs.sh. + (ELFSIZE, GENERATE_SHLIB_SCRIPT, LIB_PATH): Delete redundant + settings. + (WRITABLE_RODATA): Moved from elf32bmipn32-defs.sh. + * emulparams/elf64btsmip.sh: Bring in definitions from + elf64bmip-defs.sh. + (ELFSIZE, GENERATE_SHLIB_SCRIPT): Delete, redundant. + (EXECUTABLE_SYMBOLS, WRITABLE_RODATA): Delete redundant unsets. + +2002-10-16 Jakub Jelinek + + * configure.tgt (s390x-*-linux*): Add elf_s390 emulation. + (s390-*-linux*): Add elf64_s390 emulation if want64. + * emulparams/elf64_sparc.sh (LIB_PATH): Update to match 2002-05-22 + genscript.sh changes. + * emulparams/elf_x86_64.sh (LIB_PATH): Likewise. + * emulparams/elf64_s390.sh (LIB_PATH): Set up native 64 bit dirs. + +2002-10-15 Alan Modra + + * ldlang.c (load_symbols): Revert last change. + +2002-10-14 Alan Modra + + * ldlang.c (load_symbols): Don't call bfd_link_add_symbols when + just_syms_flag. + (lang_reasonable_defaults): Don't compare against false. + (size_input_section): Likewise. + (lang_size_sections_1): Likewise. + (lang_do_assignments): Likewise. + (lang_add_output): Likewise. + + * Makefile.am: Run "make dep-am". + * Makefile.in: Regenerate. + * ldver.c: #include "bfdver.h". + +2002-10-13 Stephane Carrez + + * scripttempl/elfm68hc11.sc: Use KEEP for .vectors, .installN, + .finiN section. + * scripttempl/elfm68hc12.sc: Likewise. + +2002-10-11 Alan Modra + + * pe-dll.c (make_import_fixup_mark): Avoid type-punned pointer. + + * ldgram.y (memory_spec): Provide empty action. + (section ): Likewise. + +2002-10-10 Jakub Jelinek + + * ldfile.c (ldfile_try_open_bfd): When searching skip linker scripts if + they have OUTPUT_FORMAT not matching actual output format. + * ldlang.c (lang_get_output_target): New function. + (open_output): Use it. + * ldlang.h (lang_get_output_target): New prototype. + +2002-10-10 Alan Modra + + * emultempl/elf32.em (output_rel_find): Prefer .rel script sections + when orphan is .rel, .rela when orphan is .rela. + (gld${EMULATION_NAME}_place_orphan): Handle combreloc .rel* case + first. Remove outsecname var. + +2002-10-09 Richard Shann + Stephen Clarke + + * Makefile.am: Add eshelf32_linux.o and + eshlelf32_linux.o, new emulations for sh64 Linux. + * Makefile.in: Regenerate. + * configure.tgt: Add sh64eb-*-linux* and sh64-*-linux* emulations. + * emulparams/shelf32_linux.sh: New file. + * emulparams/shlelf32_linux.sh: New file. + +2002-10-08 H.J. Lu + + * ldlang.c (lang_file_exist): Removed. + (new_afile): Revert the last change. + * ldlang.h (lang_file_exist): Removed. + * lexsup.c (parse_args): Revert the last change. + +2002-10-07 Ralf Habacker + + * pe-dll.cc (autofilter_symbolprefixlist): Don't re-export + auto-import symbols. + (make_one): Create _nm_ for data only. + +2002-10-05 Elias Athanasopoulos + + * ldlang.c (lang_file_exist): New function. + (new_afile): Abort if the filename to be added matches the linker + output filename. + * ldlang.h: Add prototype for lang_file_exist. + * lexsup.c (parse_args): Abort if the output filename matches + one of the input filenames. + +2002-10-02 Alan Modra + + * emulparams/elf64ppc.sh (MAXPAGESIZE): Set to 0x10000. + +2002-09-30 Alan Modra + + * scripttempl/elfd30v.sc: Order reloc sections placing .plt last. + * scripttempl/elfm68hc11.sc: Likewise. + * scripttempl/elfm68hc12.sc: Likewise. + + * emultempl/elf32.em (output_rel_find): Always place orphan loadable + reloc sections just before .rel.plt/.rela.plt. + (gld${EMULATION_NAME}_place_orphan <.rel>): Remove combreloc code. + Only put loadable reloc sections in hold_rel. + +2002-09-29 H.J. Lu + + * emulparams/elf32ppc.sh (OTHER_GOT_RELOC_SECTIONS): New. + +2002-09-25 Daniel Jacobowitz + + From "Anita Kulkarni" + * scripttempl/sh.sc: Handle .eh_frame* and .gcc_exc* + sections. + +2002-09-25 Alan Modra + + * genscripts.sh (SEGMENT_SIZE): Use MAXPAGESIZE before + TARGET_PAGE_SIZE. + * scripttempl/elf.sc (DATA_SEGMENT_ALIGN): Incorporate + SEGMENT_SIZE alignment. + * emulparams/elf64ppc.sh (DATA_ADDR): Delete. + (SEGMENT_SIZE): Define. + + * ldexp.c (fold_unary): New. Split out from exp_fold_tree. + (fold_binary): Correct abs - non-abs case. + (fold_trinary): New. Split out from exp_fold_tree. + +2002-09-24 Alan Modra + + * emulparams/elf64ppc.sh (DATA_ADDR): Define. + * emulparams/elf64_aix.sh (DATA_ADDR): Don't use a fixed address + for start of .data, instead align up to 256M boundary. + * scripttempl/aix.sc: Likewise. + +2002-09-22 Mark Elbrecht + + * scripttempl/i386go32.sc: Handle bss unique sections. + +2002-09-21 Alan Modra + + * ldmisc.c (vfinfo <%C,%D,%G>): Always output bfd, section and offset. + +2002-09-17 Stan Cox + + * emulparams/elf32bmipn32-defs.sh: New file. + * emulparams/elf32bmipn32.sh: Use elf32bmipn32-defs.sh. + * emulparams/elf32btsmipn32.sh: Likewise. + * emulparams/elf64bmip.sh: Likewise. + * emulparams/elf64btsmip.sh: Likewise. + +2002-09-16 Bruno Haible + + * emulparams/elf_i386_fbsd.sh: Set OUTPUT_FORMAT to + elf32-i386-freebsd. + * emulparams/elf64alpha_fbsd.sh: Set OUTPUT_FORMAT to + elf64-alpha-freebsd. + +2002-09-11 Nick Clifton + + * NEWS: New TI port supports both C4x and C3x series of DSPs. + + * po/tr.po: Updated Turkish translation. + +2002-09-06 Jeffrey A Law (law@redhat.com) + + * configure.tgt (h8300-*-hms*, h8500-*-hms*): Restore. + +2002-09-02 Nick Clifton + + * scripttempl/v850.sc: Add EXTERN references to __ctbpm __gp and + __ep. + * emulparams/v850.sh (TEMPLATE_NAME): Define. + +2002-08-30 Nick Clifton + + * scripttempl/elfd10v.sc (MEMORY): Remove UNIFIED, it is not + used. Change INSN to start at 0x01000000 and extend for + 256K (ignoring holes). Start the STACK on a word aligned + boundary. + (.rodata): Start it at the READONLY_START_ADDR. + +2002-08-30 Alan Modra + + * emulparams/elf32ppc.sh (ARCH): Set to "powerpc:common". + +2002-08-28 Svein E. Seldal + + * Makefile.am: Add etic4xcoff.o in ALL_EMULATIONS list and + added makefile targets for this file. + * Makefile.in: Regenerate. + * configure.tgt: Added tic4x-coff and c4x-coff emulations. + * NEWS: Mention new port. + +2002-08-28 Michael Hayes + + * emulparams/tic3xcoff.sh: New file. + * emulparams/tic4xcoff.sh: New file. + * scripttempl/tic3xcoff.sc: New file. + * scripttempl/tic4xcoff.sc: New file. + +2002-08-28 Alan Modra + + * emultempl/aix.em (gld${EMULATION_NAME}_parse_args): Replace strtoll, + strtoul and strtoull with bfd_scan_vma. + (gld${EMULATION_NAME}_read_file): Likewise. + +2002-08-28 Alan Modra + + * configure.tgt: Remove h8[35]00-*-hms*. Add h8500-*-rtems*. + +2002-08-27 Egor Duda + + * scripttempl/pe.sc: Handle .rdata_runtime_pseudo_reloc sections. + Add symbols for application to access them. + +2002-08-27 Nick Clifton + + * emultempl/armelf.em: Revert this patch, it is not needed. + + 2002-08-22 Adam Nemet + +2002-08-20 Dan Kegel + + * configure.in: added --with-lib-path argument to ld's configure + to set LIB_PATH. + * NEWS: Document new switch. + * README: Mention new switch. + * configure: Regenerate. + * Makefile.in: Regenerate. + + Based on this patch: + 2001-04-25 Christopher Faylor + + * Makefile.in (LIB_PATH): Make configurable. + (GENSCRIPTS): Set LIB_PATH in environment. + * configure.in: Substitute LIB_PATH. + +2002-08-22 Adam Nemet + + * emultempl/armelf.em: Include elf-bfd.h and elf/arm.h. + (arm_elf_finish): Set the last bit of DT_INIT and DT_FINI + depending on the type of the function. + (arm_elf_convert_thumb_symbol_to_address): New function. + +2002-08-22 Graeme Peterson + + * Makefile.am: Add esh{l}elf_nto.o files. + * Makefile.in: Regenerate. + * configure.tgt: Add support for sh-**-nto* targets. + * emulparams/shelf_nto.sh: New file. + * emulparams/shlelf_nto.sh: New file. + +2002-08-21 John David Anglin + + * ldlang.c (offsetof): Define if not defined. + +2002-08-14 H.J. Lu + + * configure.tgt: Always enable 64bit emulations for 32bit + Linux/mips. + +2002-08-13 Alan Modra + + * emulparams/elf32_dlx.sh (TARGET_PAGE_SIZE): Set to 1. + (MAXPAGESIZE): Set to 1. + + * ld.h (ALIGN_N): Delete. + * ldexp.h (align_n): Declare. + * ldexp.c (align_n): New function. + (fold_binary): Use align_n instead of ALIGN_N. + (exp_fold_tree): Likewise. + * ldlang.c (lang_size_sections_1): Likewise. + (lang_one_common): Likewise. + * ld.texinfo (ALIGN): Remove power of 2 restriction. + +2002-07-31 Graeme Peterson + + * configure.tgt: Add support for powerpc{le}-*-nto* targets. + * Makefile.am: Add eelf32{l}ppcnto.o files. + * Makefile.in: Regenerate. + * emulparams/elf32lppcnto.sh: New file. + * emulparams/elf32ppcnto.sh: New file. + +2002-08-07 H.J. Lu + + * ld.texinfo: Document --no-undefined-version. + + * ldlang.c (lang_new_vers_pattern): Set the `symver' and + `script.' fields to 0. + + * ldmain.c (main): Initialize the allow_undefined_version to + true. + + * lexsup.c (OPTION_NO_UNDEFINED_VERSION): New. + (ld_options): Add --no-undefined-version. + (parse_args): Support OPTION_NO_UNDEFINED_VERSION. + +2002-08-07 Nick Clifton + + * emultempl/armelf.em (arm_elf_before_allocation): Only search for + an interworking bfd if there are input bfds. (107501) + +2002-08-06 Alan Modra + + * emultempl/aix.em (gld*_before_parse): Set default arch. Reverts + 2002-05-10 change. + +2002-08-01 Nick Clifton + + * emulparams/armelf.sh: Revert previous delta. + * scripttempl/elf.sc: Revert previous delta. + +2002-07-31 H.J. Lu + + * configure.tgt (powerpc*-*-linux*): Enable elf64ppc for + --enable-64-bit-bfd. + +2002-07-31 H.J. Lu + + * configure.tgt: Enable x86-64 emulation for Linux/i386 if + 64bit BFD is selected. + +2002-07-31 H.J. Lu + + * configure.tgt: Enable 64bit emulations for 32bit Linux/mips + if 64bit BFD is selected. + +2002-07-31 Ian Dall + + * emultempl/netbsd.em (LDEMUL_BEFORE_PARSE): New file to custom set + link_info.common_skip_ar_aymbols. + * emulparams/ns32knbsd.sh (EXTRA_EM_FILE): Refer to extra file. + + * ldmain.c (main): Initialize new field + link_info.common_skip_ar_aymbols. + +2002-07-31 Adam Nemet + + * emulparams/armelf.sh (OTHER_PLT_SECTIONS): New variable. Set it + to .plt.thumb. + * scripttempl/elf.sc: Comment it. Use the same way as ${PLT} is + used. + +2002-07-31 Nick Clifton + + * NEWS: Retroactively add entry for Lars Brinkhoff's contribution + of the PDP-11 and 2.11BSD a.out support. + +2002-07-31 Thiemo Seufer + + * Makefile.am (eelf32btsmipn32.o, eelf32ltsmipn32.o): New emulations + for n32 ABI support. + * Makefile.in: Regenerate. + * configure.tgt (mips64*el-*-linux-gnu*,mips64*-*-linux-gnu*): Add + n32 ABI emulations for these 64 bit targets. + * emulparams/elf32bmipn32.sh: Expand comment. + * emulparams/elf32btsmipn32.sh: New file, for traditional big endian + n32 ABI. + * emulparams/elf32ltsmipn32.sh: Likewise for little endian. + +2002-07-30 Graeme Peterson + + * configure.tgt: Add support for arm-*-nto target. + * Makefile.am: Add earmnto.o file. + * Makefile.in: Regenerate. + * NEWS: Mention port of ARM support to QNX. + * emulparams/armnto.sh: New file. + +2002-07-30 Jakub Jelinek + + * ldlang.c (lang_add_section): Don't turn .tbss into normal sections + for relocatable link. + (lang_size_sections_1): Don't make .tbss zero size for relocatable + link. + +2002-07-26 Bernd Schmidt + + * emulparams/elf32frv.sh (OTHER_RELOCATING_SECTIONS): Delete. + (STACK_ADDR): New. + +2002-07-25 Nick Clifton + + * po/sv.po: Updated Swedish translation. + * po/es.po: Updated Spanish translation. + * po/fr.po: Updated French translation. + +2002-07-24 Nick Clifton + + * po/sv.po: Updated Swedish translation. + * po/es.po: Updated Spanish translation. + +2002-07-23 Nick Clifton + + * po/fr.po: Updated French translation. + +2002-07-20 Alan Modra + + * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Don't + bomb on /DISCARD/ input section. + * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Likewise. + * emultempl/mmo.em (mmo_place_orphan): Likewise. + +2002-07-19 Hans-Peter Nilsson + + * emultempl/mmo.em (mmo_place_orphan): Handle case of no .text + output section. + +2002-07-16 Denis Chertykov + Nick Clifton + Frank Ch. Eigler + John Healy + + * configure.tgt: Add support for ip2k-elf. + * Makefile.am: Add support for ip2k-elf. + * Makefile.in: Regenerate. + * emulparams/elf32ip2k.sh: New file. + * scripttempl/ip2k.sc: New file + * NEWS: Mention support for new port. + +2002-07-16 Nick Clifton + + * NEWS: Add 'Changes in 2.13'. + +2002-07-14 H.J. Lu + + * ld.texinfo: Document a .symver takes precedence over a + version script. + +2002-07-12 Alan Modra + + * emulparams/elf64ppc.sh (ARCH): Set to powerpc:common64. + (COMMONPAGESIZE): Define. + +2002-07-09 Alan Modra + + * emulparams/hppanbsd.sh: Remark that hppaobsd.sh references this file. + +2002-07-09 Federico G. Schwindt + + * configure.tgt: Add support for alpha-*-openbsd*, hppa-*-openbsd*, + powerpc-*-openbsd* and sparc64-*-openbsd*. + * Makefile.am (ALL_EMULATIONS): Add ehppaobsd.o. + * Makefile.in: Regenerate. + * emulparams/hppaobsd.sh: New file. + +2002-07-05 Alan Modra + + * ldlang.c (print_wild_statement): Fix output formatting. + +2002-07-04 Alan Modra + + * ldlang.c: (strip_excluded_output_sections): New function. + (lang_process): Call it. + (lang_size_sections_1): Revert 2002-06-10 change. + +2002-07-03 Alan Modra + + * Makefile.am (check-DEJAGNU): Revert 2002-06-25 change. + Run "make dep-am". + * Makefile.in: Regenerate. + +2002-07-02 Alan Modra + + * ldfile.c (ldfile_try_open_bfd): Formatting. + + * ldmisc.c (demangle): Move so that it doesn't intrude between + vfinfo comment and body. Add comment. + +2002-07-01 John David Anglin + + * emulparams/vax.sh (OUTPUT_FORMAT): Use a.out-vax-bsd format. + +2002-07-01 Alan Modra + + * ldlang.h (entry_sym): Make it a struct bfd_sym_chain. + * ldlang.c (entry_sym): Likewise. + (ldlang_undef_chain_list_type): Likewise. + (lang_finish): Adjust references to entry_symbol. + (lang_add_entry): Likewise. + (lang_gc_sections): Use link_info.gc_sym_list. + (lang_process): Set link_info.gc_sym_list. + * ldlex.l: Include bfdlink.h. + * ldmain.c (main): Init link_info.gc_sym_list. + * emultempl/aix.em: Adjust references to entry_symbol. + * emultempl/armcoff.em: Likewise. + * emultempl/armelf.em: Likewise. + * emultempl/pe.em: Likewise. + * emultempl/ppc64elf.em (ppc_after_open): New function. + (LDEMUL_AFTER_OPEN): Define. + * emulparams/elf64ppc.sh: KEEP .opd sections. + +2002-06-29 Stephane Carrez + + * emulparams/m68hc12elfb.sh (EEPROM_MEMORY): Define. + * emulparams/m68hc11elfb.sh (EEPROM_MEMORY): Define. + * emulparams/m68hc11elf.sh (EEPROM_SIZE): Define. + (EEPROM_START_ADDR): Define. + (EEPROM_MEMORY): Define. + * emulparams/m68hc12elf.sh: Likewise. + * scripttempl/elfm68hc11.sc: Handle .eeprom section; handle .softregs + section to put soft registers in .page0. + * scripttempl/elfm68hc12.sc: Likewise but put soft registers in bss. + +2002-06-26 John David Anglin + + * emulparams/hppa64linux.sh (OTHER_GOT_RELOC_SECTIONS): Add rela.opd + section. Add ${RELOCATING-0}. + +2002-06-26 J"orn Rennecke + + * emulparams/shelf.sh (STACK_ADDR): Don't define. + (OTHER_SECTIONS): Define. + * emulparams/shelf_nbsd.sh ((STACK_ADDR): Don't undef. + (OTHER_SECTIONS): Undef. + +2002-06-26 Alan Modra + + * ldmisc.c (demangle): Restore dots stripped from sym name. + +2002-06-25 H.J. Lu + + * Makefile.am (check-DEJAGNU): Set LC_ALL=C and export it. + * Makefile.in: Regenerated. + +2002-06-20 Nick Clifton + + * ld.texinfo (Bug Reporting): Update text to suggest a limit on + the size of attached object files, to allow make the object files + available via FTP or HTTP and to mention that the mail will be + sent to a mailing list. + +2002-06-20 Nathanael Nerode + + * configure.host (romp): Drop support. + +2002-06-18 Chris Demetriou + + * emultempl/mipself.em (mips_elf${ELFSIZE}_check_sections): Check + section flags for SEC_DATA, rather than for SEC_CODE being unset. + +2002-06-18 Chris Demetriou + + * emultempl/mipself.em (mips_elf${ELFSIZE}_check_sections): Fix + format specifier used to print BFD name. + +2002-06-18 Dave Brolley + + From Catherine Moore, Michael Meissner, Jim Blandy: + * emulparams/elf32frv.sh: New file. + * configure.tgt: Support frv-*-*. + * Makefile.am (ALL_EMULATIONS): Add eelf32frv.o. + (eelf32frv.c): New target. + +2002-06-17 Tom Rix + + * emultempl/elf32.em: gld*_get_script: Check for + GENERATE_COMBRELOC_SCRIPT. + * scripttempl/elfd10v.sc : Fix STACK and INSN. + * emulparams/d10velf.sh : Fix TEXT_START_ADDR. + +2002-06-13 J"orn Rennecke + + * configure.tgt: Add support for sh[1234]*le*-*-elf, sh[1234]*-*-elf. + +2002-06-12 H.J. Lu + + * emultempl/elf32.em (gld${EMULATION_NAME}_try_needed): Return + false if xvec doesn't match. + +2002-06-10 Richard Sandiford + + * ldlang.c (lang_size_sections_1): Skip removed output sections. + +2002-06-08 Alan Modra + + * ldexp.c: Replace CONST with const. + * ldfile.c: Likewise. + * ldfile.h: Likewise. + * ldlex.l: Likewise. + * mri.c: Likewise. + * pe-dll.h: Likewise. + +2002-06-07 Alan Modra + + * emultempl/ppc64elf.em (new_vers_pattern): Warning fix. + +2002-06-07 Charles Wilson + + * ldmain.c (main): initialize link_info.pei386_auto_import + to -1 == implicit enable. + * emultempl/pe.em (gld_${EMULATION_NAME}_before_parse): + initialize link_info.pei386_auto_import to -1 == implicit + enable. + (gld_${EMULATION_NAME}_parse_args): When processing + --enable-auto-import and --disable-auto-import options, use + '1' and '0' instead of 'true' and 'false'. + (pe_find_data_imports): Only issue message about auto-import + when the feature is implicitly enabled. Downgrade message to + informational instead of warning. + +2002-06-07 Alan Modra + + * scripttempl/elf.sc (.tbss): Fix mismatched parentheses/braces. + +2002-06-06 John David Anglin + + * configure.host (hppa*64*-*-hpux11*): Define NATIVE_LIB_DIRS, + HOSTING_CRT0 and HOSTING_LIBS. + +2002-06-05 J"orn Rennecke + + * configure.tgt (shle*-*-elf*, sh64le-*-elf*): New configurations. + +2002-06-05 Jason Thorpe + + * emulparams/ns32knbsd.sh (EXECUTABLE_SYMBOLS): Set _DYNAMIC to 0. + (NONPAGED_TEXT_START_ADDR): Set to 0x1000. + +2002-06-05 Alan Modra + + * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Place + SEC_EXCLUDE sections when doing a relocatable link. + +2002-06-04 Jason Thorpe + + * 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. + +2002-06-04 Alan Modra + + * ldlang.c (section_already_linked): Call bfd_discard_group. Typo fix. + +2002-06-02 Marek Michalkiewicz + + * scripttempl/avr.sc: Changes to support current GCC and avr-libc, + C++ constructors/destructors, loosely based on the m68hc11 port. + +2002-05-31 Alan Modra + + * Makefile.in: Regenerate. + * aclocal.m4: Regenerate. + * config.in: Regenerate. + * configure: Regenerate. + +2002-05-31 Graeme Peterson + + * Makefile.am (ALL_EMULATIONS): Add ei386nto.o. + (ei386nto.c): Add rule. + * Makefile.in: Regenerate. + * configure.tgt: Add i[3456]86-*-nto-qnx*. + * emulparams/i386nto.sh: New file. + +2002-05-29 Jason Thorpe + + * NEWS: Add entry for VAX ELF support. + +2002-05-29 Matt Thomas + Jason Thorpe + + * Makefile.am (ALL_EMULATIONS): Add eelf32vax.o and evaxnbsd.o. + (eelf32vax.c) + (evaxnbsd.c): New rules. + * Makefile.in: Regenerate. + * configure.tgt (vax-*-netbsdelf*) + (vax-*-netbsdaout*) + (vax-*-netbsd*): New targets. + * emulparams/elf32vax.sh: New file. + * emulparams/vaxnbsd.sh: New file. + +2002-05-29 Adam Nemet + + * emultempl/armelf.em (arm_elf_after_open): Don't determine + bfd_for_interwork, instead add glue sections to each input bfd. + (bfd_for_interwork): New global. + (arm_elf_set_bfd_for_interworking): New function. + (arm_elf_before_allocation): Use it. + +2002-05-28 Kuang Hwa Lin + + * Makefile.am: Add DLX make target. + * configure.tgt: Add DLX configuration. + * Makefile.in: Regenerate. + * emulparams/elf32_dlx.sh: New file + * scripttempl/dlx.sc: New file + +2002-05-27 Per Lundberg + + * Makefile.am (eelf_i386_chaos): Use elf_chaos.sc script. + * Makefile.in: Regenerate. + * emulparams/elf_chaos.sh: Use elf_chaos script. + * scripttempl/elf_chaos.sc: New file. + +2002-05-27 Richard Sandiford + + * ldlang.c (lang_size_sections_1): Move check for conflicting load + addresses and regions from here... + (lang_get_regions): ...to this new function. + (lang_leave_output_section_statement): Use lang_get_regions. + (lang_leave_overlay): Likewise. + * mri.c (mri_draw_tree): Pass null as last argument to + lang_leave_output_section_statement. + * emultempl/elf32.em (gld*_place_orphan): Likewise. + * emultempl/mmo.em (mmo_place_orphan): Likewise. + * emultempl/pe.em (gld*_place_orphan): Likewise. + +2002-05-26 Jason Thorpe + + * configure.tgt: Use ns32k-*-netbsd* instead of ns32k-pc532-netbsd*. + +2002-05-25 Kazu Hirata + + * ldemul.c: Fix formatting. + * ldfile.c: Likewise. + * pe-dll.c: Likewise. + * pe-dll.h: Likewise. + +2002-05-25 Alan Modra + + * ldlang.c (lang_process): Formatting, grammar. + + * ldlex.l: Use #include "" instead of <> for local header files. + +2002-05-24 TAMURA Kent + + * configure.tgt: Add a target for i386-netbsdpe. + +2002-05-23 Jakub Jelinek + + * scripttempl/elf.sc: Add .rel{,a}.t{bss,data}, .tdata and .tbss. + * ldlang.c (lang_add_section): Set SEC_THREAD_LOCAL for + output section if necessary. Handle .tbss. + (lang_size_sections): Clear _raw_size for .tbss section + (it allocates space in PT_TLS segment only). + * ldwrite.c (build_link_order): Build link order for .tbss too. + +2002-05-23 Alan Modra + + * configure.in: Correct spelling of AC_PREREQ. + +2002-05-21 Danny Smith + + * pe-dll.c (autofilter_liblist): Add more system libs excluded by + default. + (autofilter_objlist): Add crtbegin.o, crtend.o. + +2002-05-21 Danny Smith + + * emultempl/pe.em (OPTION_EXCLUDE_LIBS): Add new define. + (longopts): Add new option --exclude-libs. + (gld_${EMULATION_NAME}_list_options): Give quick help about it. + (gld_${EMULATION_NAME}_parse_args): Use it. + * pe-dll.h (pe_dll_add_excludes): Add second param to prototype. + * pe-dll.c (exclude_list_struct): Add field type to distinguish symbols + from whole archives. + (pe_dll_add_excludes): Set excludes->type. + (auto_export): Add new variable libname and set to archive basename if + abfd. Use it when filtering default and user-specified libarary + excludes. Let string "ALL" mean all libs when filtering user-specified + libs. + * ld.texinfo: Document --exclude-libs. + +2002-05-22 Alan Modra + + * ldemul.c (ldemul_new_vers_pattern): New function. + * ldemul.h (ldemul_new_vers_pattern): Declare. + (struct ld_emulation_xfer_struct): Add new_vers_pattern. + * ldlang.c (lang_new_vers_pattern): Call ldemul_new_vers_pattern. + * emultempl/ppc64elf.em (dotsyms): New static var. + (gld${EMULATION_NAME}_new_vers_pattern): New function. + (LDEMUL_NEW_VERS_PATTERN): Define. + (PARSE_AND_LIST_PROLOGUE): Add OPTION_DOTSYMS, OPTION_NO_DOTSYMS. + (PARSE_AND_LIST_LONGOPTS): Likewise. + (PARSE_AND_LIST_ARGS_CASES): Handle them. + * emultempl/aix.em (ld_${EMULATION_NAME}_emulation): Update + initialiser. + * emultempl/armcoff.em: Likewise. + * emultempl/armelf_oabi.em: Likewise. + * emultempl/beos.em: Likewise. + * emultempl/elf32.em: Likewise. + * emultempl/generic.em: Likewise. + * emultempl/gld960.em: Likewise. + * emultempl/gld960c.em: Likewise. + * emultempl/linux.em: Likewise. + * emultempl/lnk960.em: Likewise. + * emultempl/m68kcoff.em: Likewise. + * emultempl/mipsecoff.em: Likewise. + * emultempl/pe.em: Likewise. + * emultempl/sunos.em: Likewise. + * emultempl/ticoff.em: Likewise. + * emultempl/vanilla.em: Likewise. + +2002-05-22 Alan Modra + + * genscripts.sh (LIB_PATH): For native targets, concatenate $libdir + and $NATIVE_LIB_DIRS. Add $tool_lib before other libs. + (LIB_SEARCH_DIRS): No need to use "tr". + (COMPILE_IN): Only set for native targets. + * configure.host (NATIVE_LIB_DIRS): Specify all native search dirs + here, rather than adding lib:/usr/lib:/usr/local/lib in genscripts.sh. + * configure.tgt (powerpc*): Set tdir_*. + (powerpcle*): Correct targ_extra_emuls. + * emulparams/elf32ppc.sh (LIB_PATH): Set up native 64 bit dirs. + * emulparams/elf64ppc.sh (LIB_PATH): Likewise. + +2002-05-22 Alan Modra + + * emultempl/pe.em (set_pe_subsystem): Don't set "cmdline" when + calling lang_add_entry. + +2002-05-21 H.J. Lu (hjl@gnu.org) + + * emultempl/elf32.em (gld${EMULATION_NAME}_parse_args): Handle + "-z muldefs". + (gld${EMULATION_NAME}_list_options): Add "-z muldefs". + + * ld.texinfo: Updated for --allow-multiple-definition and + "-z muldefs". + + * ldmain.c (main): Initialize the allow_multiple_definition + field to false. + + * lexsup.c (OPTION_ALLOW_MULTIPLE_DEFINITION): New. + (ld_options): Add --allow-multiple-definition. + (parse_args): Support OPTION_ALLOW_MULTIPLE_DEFINITION. + +2002-05-21 Jason Thorpe + + * Makefile.am (ALL_EMULATIONS): Add earmelfb_nbsd.o. + (earmelfb_nbsd.c): New rule. + * Makefile.in: Regenerate. + * configure.tgt (armeb-*-netbsdelf*): New target. + (arm-*-netbsdelf*): Add armelfb_nbsd to targ_extra_emuls. + (arm-*-netbsd*): Likewise. + * emulparams/armelfb_nbsd.sh: New file. + +2002-05-18 Tom Rix + + * emultempl/aix.em (gld*_parse_args): Add -bnortl and -bnortllib + support. + +2002-05-17 Marek Michalkiewicz + + * Makefile.am: Add new emulations avr1, avr2, avr3, avr4, avr5. + * Makefile.in: Regenerate. + * configure.tgt (avr-*-*): Add avr[1-5] to targ_extra_emuls. + +2002-05-16 Marek Michalkiewicz + + * emulparams/avr1.sh: New file. + * emulparams/avr2.sh: New file. + * emulparams/avr3.sh: New file. + * emulparams/avr4.sh: New file. + * emulparams/avr5.sh: New file. + * scripttempl/avr.sc: New file. + +2002-05-15 Alan Modra + + * ldlang.c (section_already_linked): Call bfd_link_just_syms. + (lang_place_orphans): Abort if just_syms_flag. + +2002-05-10 Tom Rix + + * emultempl/aix.em: (gld*_set_output_arch): New function. Use + architecture and machine information in the output bfd. + (gld*_before_parse): Remove old arch and machine code. + (choose_target): Rename to gld*_choose_target. + (rtld): Change type to int. + * ldfile.c (ldfile_try_open_bfd): Disable compatiblity check for + objects in XCOFF archives. + * ldfile.h: Update copyright date. + +2002-05-10 Jakub Jelinek + + * ldmain.c (main): Enable -z combreloc by default. + +2002-05-07 Federico G. Schwindt + + * Makefile.am: Honour DESTDIR. + * Makefile.in: Regenerate. + +2002-05-07 Richard Sandiford + + * ldlang.h (lang_output_section_statement_type): Add update_dot_tree. + (lang_enter_overlay): Remove the last two parameters. + (lang_leave_overlay): Take them here instead. + * ldgram.y (memspec_at_opt): Set $$ to null if no region is given. + (section): Pass LMA and crossref flag to lang_leave_overlay rather + than lang_enter_overlay. + * ldlang.c (lang_memory_region_lookup): Return null for null names. + (lang_output_section_statement_lookup): Initialize update_dot_tree. + (lang_size_sections_1): Evaluate it. + (lang_leave_output_section_statement): Rework LMA lookup. + (overlay_lma, overlay_nocrossrefs): Remove. + (lang_enter_overlay): Remove LMA and crossref arguments. + (lang_enter_overlay_section): Don't set the LMA here. + (lang_leave_overlay): Take LMA and crossref arguments. Move the '.' + assignment to the last section's update_dot_tree. Unconditionally + use the load and run-time regions specified in the OVERLAY statement. + Likewise the first section's LMA. Only set the other sections' LMAs + when no load region is given. + +2002-05-06 Nick Clifton + + * po/sv.po: New translation. + +2002-05-04 Alan Modra + + * emultempl/hppaelf.em (build_section_lists): New function. + (gld${EMULATION_NAME}_finish): Call elf32_hppa_setup_section_lists + and build_section_lists. + +2002-05-03 Kazu Hirata + + * ld.h: Fix formatting. + * ldexp.c: Likewise. + * ldfile.c: Likewise. + * ldlang.c: Likewise. + * ldmain.c: Likewise. + * lexsup.c: Likewise. + * pe-dll.c: Likewise. + +2002-05-02 Alan Modra + + * emultempl/ppc64elf.em (gld${EMULATION_NAME}_after_allocation): + Adjust for ppc64_elf_set_toc change. #include libbfd.h. + (build_section_lists): Do output_section tests here. + +2002-04-30 Tom Rix + + * emultempl/aix.em : (gld*_parse_arge): Formatting changes. + +2002-05-01 Alan Modra + + Long branch stubs, multiple stub sections. + * emultempl/ppc64elf.em: Include ldctor.h. + (stub_file): New var. + (group_size): New var. + (ppc_create_output_section_statements): New function. + (struct hook_stub_info): New. + (hook_in_stub): New function. + (ppc_add_stub_section): New function. + (ppc_layout_sections_again): New function. + (build_section_lists): New function. + (gld${EMULATION_NAME}_finish): Rewrite. + (real_func): New var. + (ppc_for_each_input_file_wrapper): New function. + (ppc_lang_for_each_input_file): New function. + (lang_for_each_input_file): Define. + (PARSE_AND_LIST_PROLOGUE): Define. + (PARSE_AND_LIST_LONGOPTS): Define. + (PARSE_AND_LIST_OPTIONS): Define. + (PARSE_AND_LIST_ARGS_CASES): Define. + (LDEMUL_CREATE_OUTPUT_SECTION_STATEMENTS): Define. + +2002-04-30 Tom Rix + + * emultempl/aix.em (gld*_parse_arge, gld*_before_allocation): Add + -blibpath, -bnolibpath support. + +2002-04-30 Mark Mitchell + + * Makefile.am (ALL_EMULATIONS): Add elf32ppcwindiss.o. + (eelf32ppcwindiss.c): New target. + * Makefile.in: Regenerated. + * configure.tgt: Add support for powerpc-*-windiss. + * emulparams/elf32ppcwindiss.sh: New file. + +2002-04-30 Richard Sandiford + + * ldlang.c (print_assignment): Update print_dot for assignments to ".". + * ldexp.c (exp_print_token): Add "infix_p" argument. + (exp_print_tree): Update accordingly. + +2002-04-28 Alan Modra + + * Makefile.am (mpw): New maintainer mode rule to make mpw-*.c files. + * Makefile.in: Regenerate. + * mpw-elfmips.c: Delete. + * mpw-eppcmac.c: Delete. + * mpw-esh.c: Delete. + * mpw-idtmips.c: Delete. + +2002-04-17 J"orn Rennecke + + * emulparams/shelf32.sh (MACHINE): Now sh5. + +2002-04-17 Thiemo Seufer + + * ldgram.y: Fix syntax warning. + +2002-04-11 Nick Clifton + + * emultempl/armelf.em (PARSE_AND_LIST_SHORTOPTS): Add 'n' in order + to prevent "-n" from being taken as an abbreviation for + "--no-pipeline-knowledge". + +2002-04-08 Alan Modra + + * ldlang.c (lang_size_sections_1): Don't complain about + SEC_NEVER_LOAD sections having no memory region specified. + + * ld.texinfo (Format Commands ): Typo fix. + +2002-04-07 matthew green + + * configure.host (*-*-netbsd*): Add support for NetBSD/ELF. + +2002-04-04 Alan Modra + + * dep-in.sed: Cope with absolute paths. + * Makefile.am (dep.sed): Subst TOPDIR and BFDDIR. + Run "make dep-am". + * Makefile.in: Regenerate. + +2002-04-04 Thiemo Seufer + + * emulparams/elf64btsmip.sh: n64 replaces .reginfo with .MIPS.options. + +2002-04-03 Jakub Jelinek + + * ldexp.c (fold_binary) [DATA_SEGMENT_ALIGN]: If common page size + is smaller than maximum, round dot up to common page boundary. + +2002-03-28 Alan Modra + + * configure.host: Set up for generic hosts first, then tweak as + necessary in more specific targets. + (HOSTING_LIBS): Include libgcc_eh.a if found. + +2002-03-23 Andreas Jaeger + + * emulparams/elf_x86_64.sh (COMMONPAGESIZE): Set it. + +2002-03-21 Alan Modra + + * Makefile.am: Run "make dep-am". + * Makefile.in: Regenerate. + +2002-03-21 Albert Chin-A-Young + + * genscripts.sh (LIB_SEARCH_DIRS): Quote path. + +2002-03-20 Alan Modra + + * ldlang.c (ldlang_add_undef): If the output bfd has been opened, + add the symbol to the linker hash table immediately. + (lang_place_undefineds): Split symbol creation out.. + (insert_undefined): ..to here. + +2002-03-18 David O'Brien + + * emultempl/elf32.em: Use lbasename vs. basename to fix problem where + the contents of the buffer returned from basename function will are + getting overwritten while still being used. + +2002-03-18 Jan Hubicka + Andreas Jaeger + Andreas Schwab + + * configure.tgt (x86_64-*-linux-gnu*): Configure i386 as native. + * elf_x86_64.sh (ARCH): Set to i386:x86-64 + set libraries to default to lib64 paths. + +2002-03-18 Tom Rix + + * Makefile.am : Add eaix5ppc and eaix5rs6, AIX 5 support. + * configure.tgt : Same. + * emulparms/aix5ppc.sh : New file. For eaix5ppc. + * emulparms/aix5rs6.sh : New file. For eaix5rs6. + * emulparms/aixppc.sh : OUPUT_FORMAT_32BIT and OUTPUT_FORMAT_64BIT + emulation parameters for better -b32, -b64 support. + * emulparms/aixrs6.sh : Same. + * emulparms/ppcmacos.sh : Same. + * emultempl/aix.em (choose_target) : Use new emulation parameters + OUTPUT_FORMAT_32BIT and OUTPUT_FORMAT_64BIT. + * Makefile.in : Regenerate. + +2002-03-18 Nick Clifton + + * po/fr.po: Updated version. + +2002-03-18 Alan Modra + + * ldmain.c (main): Move .text readonly flag fudges from here.. + * ldlang.c (lang_process): ..to here. + +2002-03-14 Alan Modra + + * ldlang.c (lang_check): Remove the word size check added in last + change. Treat emitrelocations case as for relocatable links. + +2002-03-13 Nick Clifton + + * po/fr.po: Updated version. + +2002-03-13 Alan Modra + + * ldlang.c (lang_check): Do relocatable link checks first, so that + warn_mismatch can't override. Check compatible and word size too. + +2002-03-07 Daniel Jacobowitz + + * ld.texinfo: Wrap @menu in @ifnottex, not @ifinfo. + +2002-03-05 Jakub Jelinek + + * scripttempl/elf.sc: Only use DATA_SEGMENT_END() together with + DATA_SEGMENT_ALIGN. + +2002-03-04 H.J. Lu + + * scripttempl/elf.sc: Put .preinit_array, .init_array and + .fini_array in the data segment. + +2002-03-04 Alan Modra + + * scripttempl/elf.sc: Correct syntax errors in 2002-03-01 commit. + +2002-03-01 David Mosberger + + * scripttempl/elf.sc (SECTIONS): Add entries for .preinit_array, + .init_array, and .fini_array. + +2002-02-20 Andreas Schwab + + * emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Don't fold + .IA64_unwind* in a relocatable link. + +2002-02-20 Nick Clifton + + * NEWS: Mark 2.12 branch. + +2002-02-19 Martin Schwidefsky + + * emulparams/elf64_s390.sh (ARCH): Change to "s390:64-bit". + * emulparams/elf_s390.sh (ARCH): Change to "s390:31-bit". + +2002-02-18 Tom Rix + + * emultempl/aix.em (gld*_parse_args): Add -brtl support. + (gld*_before_allocation): Same. + (gld*_create_output_section_statements): Generate + __rtinit if run time linking. Add librtl.a to the link. + (gld*_read_file): Clean. + +2002-02-18 Alan Modra + + * emulparams/elf64ppc.sh (OTHER_TEXT_SECTIONS): Define. + +2002-02-18 David O'Brien + + * Makefile.am: Add new files earmelf_fbsd, eelf32ppc_fbsd, + eelf_i386_fbsd, eelf64_ia64_fbsd, eelf_x86_64_fbsd, eelf64_sparc_fbsd, + and eelf64alpha_fbsd. + * Makefile.in: Regenerate. + * configure.tgt(sparc64-*-freebsd, ia64-*-freebsd, i[3456]86-*-freebsd, + x86_64-*-freebsd, arm-*-freebsd, alpha*-*-freebsd, powerpc-*-freebsd): + use a FreeBSD-specific emulation rather than the psABI one. + * emulparams/elf_fbsd.sh (ELF_INTERPRETER_NAME): Set appropriate value + for all FreeBSD ELF systems. + * emulparams/armelf_fbsd.sh: Bridge elf_fbsd.sh and the "native" psABI + emulation. + * emulparams/elf32ppc_fbsd.sh: Likewise. + * emulparams/elf64_ia64_fbsd.sh: Likewise. + * emulparams/elf64_sparc_fbsd.sh: Likewise. + * emulparams/elf64alpha_fbsd.sh: Likewise. + * emulparams/elf_i386_fbsd.sh: Likewise. + * emulparams/elf_x86_64_fbsd.sh: Likewise. + +2002-02-18 Nick Clifton + + * po/tr.po: Updated version. + +2002-02-18 Alan Modra + + * ld.texinfo (Output Section Fill): Fix amateur texinfo. + (FILL): Likewise. + +2002-02-17 Hans-Peter Nilsson + + * emultempl/mmo.em (mmo_after_open): Don't call + _bfd_mmix_check_all_relocs when producing ELF output. + +2002-02-15 Richard Henderson + + * emulparams/elf64alpha.sh (NOP): Adjust for big-endian + definition. Emit a unop+nop pair. + +2002-02-15 Hans-Peter Nilsson + + * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Also check + for presence of .MMIX.reg_contents.linker_allocated before early + exit. + + * NEWS: Mention support for MMIX. + +2002-02-15 Alan Modra + + Support arbitrary length fill patterns. + * ld.texinfo (Output Section Fill): Describe fill expressions. + (FILL): Refer to the above. + * ldexp.h (etree_value_type): Add "str" field. + (union etree_union): Add "str" to "value" struct. + (exp_bigintop): Declare. + (exp_get_fill): Declare. + * ldexp.c: Include "safe-ctype.h". + (exp_intop): Set value.str to NULL. + (exp_bigintop): New function. + (new_rel): Pass in "str", and set new.str from it. + (new_rel_from_section): Set new.str to NULL. + (fold_name): Adjust calls to new_rel. + (exp_fold_tree): Likewise. + (exp_get_fill): New function. + * ldgram.y (struct big_int bigint, fill_type *fill): New. + (INT): Returns a "bigint". Adjust all code handling INTs. + (fill_opt): Returns a "fill". + (fill_exp): Split out of fill_opt, use for FILL. + * ldlang.h (struct _fill_type): New. + (fill_type): Move typedef to ldexp.h. + (lang_output_section_statement_type): "fill" is now a pointer. + (lang_fill_statement_type): Likewise. + (lang_padding_statement_type): Likewise. + (lang_add_fill): Now takes a "fill_type *" param. + (lang_leave_output_section_statement): Likewise. + (lang_do_assignments): Likewise. + (lang_size_sections): Likewise. + (lang_leave_overlay_section): Likewise. + (lang_leave_overlay): Likewise. + * ldlang.c: Include ldgram.h after ldexp.h. + (lang_output_section_statement_lookup): Adjust for fill_type change. + (print_fill_statement): Likewise. + (print_padding_statement): Likewise. + (insert_pad): Now takes a "fill_type *" arg. + (size_input_section): Likewise. + (lang_size_sections_1): Likewise. + (lang_size_sections): Likewise. + (lang_do_assignments): Likewise. + (lang_add_fill): Likewise. + (lang_leave_output_section_statement): Likewise. + (lang_leave_overlay_section): Likewise. + (lang_leave_overlay): Likewise. + Adjust all callers of the above function. + * ldlex.l: Include ldgram.h after ldexp.h. Allow hex numbers + starting with "0X" as well as "0x". Return bigint.str for hex + numbers starting with "0x" or "0X", zero bigint.str otherwise. + Always use base 16 for numbers starting with "$". + * ldmain.c: Include ldgram.h after ldexp.h. + * ldwrite.c (build_link_order): Use bfd_data_link_order in place + of bfd_fill_link_order. + * pe-dll.c: Adjust lang_do_assignments calls. + * emultempl/elf32.em: Likewise. + * emultempl/hppaelf.em: Likewise. + * emultempl/ppc64elf.em: Likewise. + * emultempl/beos.em: Include ldgram.h after ldexp.h, adjust + lang_add_assignment call. + * emultempl/pe.em: Likewise. + +2002-02-14 Phil Edwards + + * ld.texinfo (VERSION scripts): Symbol names are globbing patterns. + * ldgram.y (lang_new_vers_regex): Rename to lang_new_vers_pattern; + the pattern in question is not a regexp. + * ldlang.c: Likewise. + * ldlang.h: Likewise. + * ldlex.l (V_IDENTIFIER): Allow '[', ']', '-', '!', and '^' also. + +2002-02-12 Jakub Jelinek + + * ldlex.l (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): New tokens. + * ldgram.y (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): New tokens. + (exp): Add DATA_SEGMENT_ALIGN (exp, exp) and DATA_SEGMENT_END (exp). + * ldexp.c (exp_data_seg): New variable. + (exp_print_token): Handle DATA_SEGMENT_ALIGN and DATA_SEGMENT_END. + (fold_binary): Handle DATA_SEGMENT_ALIGN. + (exp_fold_tree): Handle DATA_SEGMENT_END. + Pass allocation_done when recursing instead of hardcoding + lang_allocating_phase_enum. + * ldexp.h (exp_data_seg): New. + * ldlang.c (lang_size_sections_1): Renamed from lang_size_sections. + (lang_size_sections): New. + * ld.texinfo (DATA_SEGMENT_ALIGN, DATA_SEGMENT_END): Document. + * scripttempl/elf.sc: Use DATA_SEGMENT_ALIGN and DATA_SEGMENT_END + if COMMONPAGESIZE is defined. + * emulparams/elf_i386.sh (COMMONPAGESIZE): Set to 4K. + * emulparams/elf32_sparc.sh (COMMONPAGESIZE): Set to 8K. + * emulparams/elf64_sparc.sh (COMMONPAGESIZE): Set to 8K. + * emulparams/elf64alpha.sh (COMMONPAGESIZE): Set to 8K. + * emulparams/elf64_ia64.sh (COMMONPAGESIZE): Set to 16K for shared + libraries only. + +2002-02-11 Alan Modra + + * Makefile.in: Regenerate. + +2002-02-10 Daniel Jacobowitz + + * lexsup.c: Remove strtoul declaration. + +2002-02-10 Daniel Jacobowitz + + * ldmain.c: Add prototype for main (). + * lexsup.c: Guard declaration of strtoul with HAVE_STDLIB_H. + * emultempl/lnk960.em (lnk960_choose_target): Function should + take two arguments. + +2002-02-10 Alan Modra + + * ldlang.c (entry_section): New initialised variable. + (lang_finish): Use it. + * ldlang.h (entry_section): Declare. + * emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Set + entry_section to ".opd". + +2002-02-09 Chris Demetriou + + * ld.texinfo (Options): Add back in -nostdlib documentation, + which had been inadvertently removed. + +2002-02-09 Hans-Peter Nilsson + + * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Adjust + register section vma to a sane value after emitting error. Make + fatal conditions cause program exit when emitting message. + +2002-02-08 Ivan Guzvinec + + * configure.tgt: Add or32-*-rtems target. + +2002-02-08 Alexandre Oliva + + Contribute sh64-elf. + 2002-01-24 Alexandre Oliva + * emulparams/shelf32.sh (STACK_ADDR): Define as formerly defined + in OTHER_RELOCATABLE_SECTIONS. + 2002-01-18 Alexandre Oliva + * emulparams/shelf32.sh (STACK_ADDR): Define. + (OTHER_RELOCATABLE_SECTIONS): Renamed to... + (OTHER_SECTIONS): this. Removed stack settings. + * emulparams/shelf64.sh (OTHER_RELOCATABLE_SECTIONS): Do not set. + (OTHER_SECTIONS): Reset after sourcing shelf32.sh. + 2001-03-12 DJ Delorie + * emultempl/sh64elf.em (sh64_elf_$_before_allocation): Disable + relaxing if any shmedia or mixed sections are found. + 2001-03-07 DJ Delorie + * emultempl/sh64elf.em (sh64_elf_before_allocation): Pass f to + einfo. Gracefully decline to output to non-elf formats. + 2001-03-06 Hans-Peter Nilsson + * emulparams/shelf64.sh (OTHER_RELOCATING_SECTIONS) <.stack>: + Default to _end aligned to next multiple of 0x40000, plus 0x40000. + * emulparams/shelf32.sh: Ditto. + 2001-01-14 Hans-Peter Nilsson + * emulparams/shelf32.sh (OTHER_RELOCATING_SECTIONS): Tweak + comment. + 2001-01-10 Ben Elliston + * emulparams/shelf32.sh (OTHER_RELOCATING_SECTIONS): Avoid + non-portable shell constructs. From Hans-Peter Nilsson. + 2001-01-09 Hans-Peter Nilsson + * emulparams/shelf64.sh (EXTRA_EM_FILE): Define empty. + * Makefile.am (eshelf64.c, eshlelf64.c, eshlelf32.c): Adjust + dependencies to the shell script include chain. + * Makefile.in: Regenerate. + 2001-01-06 Hans-Peter Nilsson + * emultempl/sh64elf.em: Update and tweak comments. + (sh64_elf_${EMULATION_NAME}_after_allocation): Always allocate and + make a .cranges section SEC_IN_MEMORY. + 2000-12-30 Hans-Peter Nilsson + * emultempl/sh64elf.em + (sh64_elf_${EMULATION_NAME}_before_allocation): Don't stop when + .cranges section found to be necessary; continue and set stored + section contents flags for sections with non-mixed contents. + Use a struct sh64_section_data container and sh64_elf_section_data + to store contents-type flags. + Remove unused update of "isec". + (sh64_elf_${EMULATION_NAME}_after_allocation): Only process + sections marked SHF_SH5_ISA32_MIXED. Use sh64_elf_section_data to + access contents-type flags. Assert that the associated container + is initialized. Use that container, not elf_gp_size, to hold size + of linker-generated cranges contents. + 2000-12-18 Hans-Peter Nilsson + * emultempl/sh64elf.em + (sh64_elf_${EMULATION_NAME}_before_allocation): Exit early if + there's already a .cranges section. When section flag difference + is found, don't NULL-check cranges a second time. Tweak comments. + (sh64_elf_${EMULATION_NAME}_after_allocation): Use size after + merging, not max size, as size of ld-generated .cranges contents. + Don't set ELF section flags in output section. When checking for + needed .cranges descriptors, don't use a variable; compare + incoming ELF section flags directly to SHF_SH5_ISA32_MIXED. Tweak + comments. + 2000-12-18 Hans-Peter Nilsson + * emultempl/sh64elf.em: New file. + * Makefile.am (eshelf32.c, eshlelf32.c): Adjust dependencies. + * Makefile.in: Regenerate. + * emulparams/shelf32.sh (OUTPUT_FORMAT): Only set if not set. + (OTHER_RELOCATING_SECTIONS): Ditto. + (EXTRA_EM_FILE): New, set to sh64elf if not set. + * emulparams/shlelf32.sh: Stub out all settings except + OUTPUT_FORMAT. Source shelf32.sh. + * emulparams/shelf64.sh: Similar, but also keep ELF_SIZE and + OTHER_RELOCATING_SECTIONS. + (OTHER_RELOCATING_SECTIONS): Remove .cranges. + * emulparams/shlelf64.sh: Stub out all settings except + OUTPUT_FORMAT. Source shelf64.sh. + 2000-12-15 Hans-Peter Nilsson + * emulparams/shelf64.sh (OTHER_RELOCATING_SECTIONS): Include + .cranges section. + (DATA_START_SYMBOLS): Define, provide ___data. + (OTHER_READONLY_SYMBOLS): Define, provide ___rodata and align to 8 + for consecutive .data section. + (OTHER_GOT_SECTIONS): Define, align to 8 for consecutive .bss + section after .data section. + * emulparams/shlelf64.sh: Ditto. + * emulparams/shelf32.sh: Ditto. + (ALIGNMENT): Define to 8. + * emulparams/shelf32.sh: Ditto. + 2000-12-12 Hans-Peter Nilsson + * configure.tgt (sh64-*-elf*): Assign targ_extra_libpath to get + built-in linker scripts. + 2000-11-30 Hans-Peter Nilsson + * emulparams/shlelf64.sh: New. + * emulparams/shelf64.sh: New. + * configure.tgt (sh64-*-elf*): Add shelf64 and shlelf64 to + targ_extra_emuls. + * Makefile.am: Add support for shlelf64 and shelf64. + * Makefile.in: Regenerate. + 2000-11-29 Hans-Peter Nilsson + * configure.tgt (sh64-*-elf*): Add shelf as default. + Add shlelf to targ_extra_emuls. + 2000-11-24 Hans-Peter Nilsson + * emulparams/shelf32.sh: New file. + * emulparams/shlelf32.sh: New file. + * Makefile.am: Add support for shlelf32 and shelf32. + * configure.tgt: Map sh64-*-elf* to shlelf32 and shelf32. + * Makefile.in: Regenerate. + +2002-02-05 Hans-Peter Nilsson + + * ldlang.c (lang_reset_memory_regions): Rename from + reset_memory_regions. Change all callers. Make public. + * ldlang.h (lang_reset_memory_regions): Prototype. + * emultempl/elf32.em (gld${EMULATION_NAME}_finish): Call + lang_reset_memory_regions before lang_size_sections. + * emultempl/hppaelf.em (hppaelf_layout_sections_again): Likewise. + * emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Likewise. + +2002-02-04 Hans-Peter Nilsson + + * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Use signed + arithmetic when checking for too many global registers. + +2002-02-02 Jason Thorpe + + * Makefile.am (ALL_EMULATIONS): Add ehppanbsd.o. + (ehppanbsd.c): New rule. + * Makefile.in: Regenerate. + * configure.tgt (hppa*-*-netbsd*): New target. + * emulparams/hppalinux.sh: Add comment to check other files + that source this file it is modified, and list which + files that do. + * emulparams/hppanbsd.sh: New file. + +2002-02-01 Geoffrey Keating + + * scripttempl/xstormy16.sc: Don't allocate extra space for the + stack. + +2002-02-01 Hans-Peter Nilsson + + Support on-demand global register allocation from + R_MMIX_BASE_PLUS_OFFSET relocs. + * emultempl/mmix-elfnmmo.em (mmix_after_allocation): Rename from + mmix_set_reg_section_vma. Call + _bfd_mmix_finalize_linker_allocated_gregs. + (mmix_before_allocation): New function. + (LDEMUL_AFTER_ALLOCATION): Set to mmix_after_allocation. + (LDEMUL_BEFORE_ALLOCATION): Define to mmix_before_allocation. + * scripttempl/mmo.sc (.text): Mark .init, .fini as KEEP. + (.MMIX.reg_contents): Add .MMIX.reg_contents.linker_allocated + before .MMIX.reg_contents. + * emultempl/mmo.em (gldmmo_before_allocation): Define to default. + (mmo_after_open): New function. + (LDEMUL_AFTER_OPEN): Define to mmo_after_open. + * emulparams/elf64mmix.sh (OTHER_SECTIONS): Tweak formatting. Add + .MMIX.reg_contents.linker_allocated before .MMIX.reg_contents. + +2002-01-31 Ivan Guzvinec + + * emulparams/or32.sh: New file. + * emulparams/or32elf.sh: New file. + * scripttempl/or32.sc: New file. + * configure.tgt : Add support for or32. + * configure: Regenerate + * Makefile.am: Add support for or32. + * Makefile.in: Regenerate. + * NEWS: Mention support for or32. + * po/ld.pot: Regenerate. + +2002-01-29 Chris Demetriou + Mitch Lichtenberg + + * emulparams/elf32bmip.sh (EXTRA_EM_FILE): Define to be mipself. + * emultempl/mipself.em: New file to handle MIPS ELF embedded + reloc creation (ld --embedded-relocs). + +2002-01-27 Daniel Jacobowitz + + * configure: Regenerated. + +2002-01-26 Hans-Peter Nilsson + + * Makefile.am (install): Depend on install-info. + * Makefile.in: Regenerate. + +2002-01-26 Christian Rose + + * ldmain.c (main): Use full sentences to ease translation. + +2002-01-26 Nick Clifton + + * po/fr.po: Updated version. + +2002-01-25 Nick Clifton + + * po/es.po: Updated version. + +2002-01-25 Andreas Jaeger + + * ldlex.l (yy_input): Correct error check. + +2002-01-25 Alan Modra + + * ldmisc.c (demangle): Put back dots when string not demangled. + +2002-01-22 Richard Henderson + + * emulparams/elf64alpha.sh (NOP): Use unop. + +2002-01-21 Andreas Jaeger + + * ldlex.l: Use fread instead of read. + +2002-01-21 Jason Thorpe + + * configure.tgt (ia64-*-netbsd*): New target. + +2002-01-21 H.J. Lu + + * emulparams/elf32btsmip.sh (SHLIB_TEXT_START_ADDR): Change to + 0. + * emulparams/elf64btsmip.sh (SHLIB_TEXT_START_ADDR): Likewise. + +2002-01-18 Andreas Jaeger + + * ldver.c (ldversion): Update year. + +2002-01-17 Nick Clifton + + * po/ld.pot: Regenerate. + +2002-01-16 Alan Modra + + * Makefile.am (eelf64ppc.c, eelf64lppc.c): Depend on ppc64elf.em. + * Makefile.in: Regenerate. + * emulparams/elf64ppc.sh (EXTRA_EM_FILE): Define. + * emultempl/ppc64elf.em: New file. + +2002-01-15 DJ Delorie + + * scripttempl/pe.sc: Add support for constructor priorities. + +2002-01-07 Marek Michalkiewicz + + * emulparams/avr1200.sh (DATA_START): Define as 0x60. + * emulparams/avr23xx.sh: Likewise. + * emulparams/avr4433.sh: Likewise. + * emulparams/avr44x4.sh: Likewise. + * emulparams/avr85xx.sh: Likewise. + * emulparams/avrmega103.sh: Likewise. + * emulparams/avrmega161.sh: Likewise. + * emulparams/avrmega603.sh: Likewise. + * scripttempl/elf32avr.sc: Use DATA_START instead of 0x60. + +2002-01-08 Alexandre Oliva + + * ldlang.c (walk_wild_section): Exclude object file if enclosing + archive is excluded. + +2002-01-07 Jason Thorpe + + * Makefile.am (ALL_EMULATIONS): Add eshelf_nbsd.o and eshlelf_nbsd.o. + (eshelf_nbsd.c): New rule. + (eshlelf_nbsd.c): New rule. + * Makefile.in: Regenerate. + * configure.tgt (sh*le-*-netbsdelf*): New target. + (sh*-*-netbsdelf*): New target. + * emulparams/shelf.sh: Document that shelf_nbsd.sh sources this file. + * emulparams/shelf_nbsd.sh: New emulation. + * emulparams/shlelf_nbsd.sh: New emulation. + +2002-01-07 Nick Clifton + + * po/es.po: New file: Spanish translation. + * configure.in (ALL_LINGUAS): Add es. + * configure: Regenerate. + +2002-01-06 John Marshall + + * ld.texinfo: Note that --emit-relocs is currently only + implemented for ELF. + +2002-01-05 Alan Modra + + * emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Make use + of bfd_section_list_remove and bfd_section_list_insert macros. + * emultempl/pe.em (gld_${EMULATION_NAME}_place_orphan): Likewise. + * emultempl/mmo.em (mmo_place_orphan): Likewise. + +2002-01-04 Jason Thorpe + + * configure.tgt (x86_64-*-netbsd*): New target. + For older changes see ChangeLog-0001 Local Variables: diff -uprN binutils-2.15.90.0.3/ld/Makefile.am binutils-2.15.91.0.1/ld/Makefile.am --- binutils-2.15.90.0.3/ld/Makefile.am 2004-04-12 12:56:35.000000000 -0700 +++ binutils-2.15.91.0.1/ld/Makefile.am 2004-05-27 11:26:04.877140140 -0700 @@ -315,6 +315,7 @@ ALL_EMULATIONS = \ eppcmacos.o \ eppcnw.o \ eppcpe.o \ + eppclynx.o \ eriscix.o \ esa29200.o \ esh.o \ @@ -627,7 +628,7 @@ eelf32_i960.c: $(srcdir)/emulparams/elf3 $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf32_i960 "$(tdir_elf32_i960)" eelf32b4300.c: $(srcdir)/emulparams/elf32b4300.sh \ - $(srcdir)/emulparams/elf32bmip.sh $(srcdir)/emultempl/mipself.em \ + $(srcdir)/emulparams/elf32bmip.sh \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf32b4300 "$(tdir_elf32b4300)" eelf32cr16c.c: $(srcdir)/emulparams/elf32cr16c.sh \ @@ -635,7 +636,6 @@ eelf32cr16c.c: $(srcdir)/emulparams/elf3 $(srcdir)/scripttempl/elf32cr16c.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf32cr16c "$(tdir_elf32cr16c)" eelf32bmip.c: $(srcdir)/emulparams/elf32bmip.sh \ - $(srcdir)/emultempl/mipself.em \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf32bmip "$(tdir_elf32bmip)" eelf32bsmip.c: $(srcdir)/emulparams/elf32bsmip.sh \ @@ -643,30 +643,27 @@ eelf32bsmip.c: $(srcdir)/emulparams/elf3 $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf32bsmip "$(tdir_elf32bsmip)" eelf32btsmip.c: $(srcdir)/emulparams/elf32btsmip.sh \ - $(srcdir)/emulparams/elf32bmip.sh $(srcdir)/emultempl/mipself.em \ + $(srcdir)/emulparams/elf32bmip.sh \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf32btsmip "$(tdir_elf32btsmip)" eelf32btsmipn32.c: $(srcdir)/emulparams/elf32btsmipn32.sh \ - $(srcdir)/emulparams/elf32bmip.sh $(srcdir)/emultempl/mipself.em \ + $(srcdir)/emulparams/elf32bmip.sh \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf32btsmipn32 "$(tdir_elf32btsmipn32)" eelf32ltsmip.c: $(srcdir)/emulparams/elf32ltsmip.sh \ $(srcdir)/emulparams/elf32btsmip.sh $(srcdir)/emulparams/elf32bmip.sh \ - $(srcdir)/emultempl/mipself.em \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf32ltsmip "$(tdir_elf32ltsmip)" eelf32ltsmipn32.c: $(srcdir)/emulparams/elf32ltsmipn32.sh \ $(srcdir)/emulparams/elf32btsmip.sh $(srcdir)/emulparams/elf32bmip.sh \ - $(srcdir)/emultempl/mipself.em \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf32ltsmipn32 "$(tdir_elf32ltsmipn32)" eelf32ebmip.c: $(srcdir)/emulparams/elf32ebmip.sh \ - $(srcdir)/emulparams/elf32bmip.sh $(srcdir)/emultempl/mipself.em \ + $(srcdir)/emulparams/elf32bmip.sh \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf32ebmip "$(tdir_elf32ebmip)" eelf32elmip.c: $(srcdir)/emulparams/elf32elmip.sh \ $(srcdir)/emulparams/elf32lmip.sh $(srcdir)/emulparams/elf32bmip.sh \ - $(srcdir)/emultempl/mipself.em \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf32elmip "$(tdir_elf32elmip)" eelf32bmipn32.c: $(srcdir)/emulparams/elf32bmipn32.sh \ @@ -675,11 +672,10 @@ eelf32bmipn32.c: $(srcdir)/emulparams/el ${GENSCRIPTS} elf32bmipn32 "$(tdir_elf32bmipn32)" eelf32l4300.c: $(srcdir)/emulparams/elf32l4300.sh \ $(srcdir)/emulparams/elf32b4300.sh $(srcdir)/emulparams/elf32bmip.sh \ - $(srcdir)/emultempl/mipself.em \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf32l4300 "$(tdir_elf32l4300)" eelf32lmip.c: $(srcdir)/emulparams/elf32lmip.sh \ - $(srcdir)/emulparams/elf32bmip.sh $(srcdir)/emultempl/mipself.em \ + $(srcdir)/emulparams/elf32bmip.sh \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf32lmip "$(tdir_elf32lmip)" eelf32mipswindiss.c: $(srcdir)/emulparams/elf32mipswindiss.sh \ @@ -707,7 +703,6 @@ eelf32ppcwindiss.c: $(srcdir)/emulparams ${GENSCRIPTS} elf32ppcwindiss "$(tdir_elf32ppcwindiss)" eelf32lsmip.c: $(srcdir)/emulparams/elf32lsmip.sh \ $(srcdir)/emulparams/elf32lmip.sh $(srcdir)/emulparams/elf32bmip.sh \ - $(srcdir)/emultempl/mipself.em \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf32lsmip "$(tdir_elf32lsmip)" eelf32openrisc.c: $(srcdir)/emulparams/elf32openrisc.sh \ @@ -946,7 +941,7 @@ ei386linux.c: $(srcdir)/emulparams/i386l $(srcdir)/emultempl/linux.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS} ${GENSCRIPTS} i386linux "$(tdir_i386linux)" ei386lynx.c: $(srcdir)/emulparams/i386lynx.sh \ - $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/i386lynx.sc ${GEN_DEPENDS} + $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} i386lynx "$(tdir_i386lynx)" ei386mach.c: $(srcdir)/emulparams/i386mach.sh \ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS} @@ -1280,6 +1275,9 @@ eppcnw.c: $(srcdir)/emulparams/ppcnw.sh eppcpe.c: $(srcdir)/emulparams/ppcpe.sh \ $(srcdir)/emultempl/pe.em $(srcdir)/scripttempl/ppcpe.sc ${GEN_DEPENDS} ${GENSCRIPTS} ppcpe "$(tdir_ppcpe)" +eppclynx.c: $(srcdir)/emulparams/ppclynx.sh \ + $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} + ${GENSCRIPTS} ppclynx "$(tdir_ppclynx)" eriscix.c: $(srcdir)/emulparams/riscix.sh \ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS} ${GENSCRIPTS} riscix "$(tdir_riscix)" diff -uprN binutils-2.15.90.0.3/ld/Makefile.in binutils-2.15.91.0.1/ld/Makefile.in --- binutils-2.15.90.0.3/ld/Makefile.in 2004-04-12 12:56:35.000000000 -0700 +++ binutils-2.15.91.0.1/ld/Makefile.in 2004-05-27 11:26:04.882139493 -0700 @@ -429,6 +429,7 @@ ALL_EMULATIONS = \ eppcmacos.o \ eppcnw.o \ eppcpe.o \ + eppclynx.o \ eriscix.o \ esa29200.o \ esh.o \ @@ -1353,7 +1354,7 @@ eelf32_i960.c: $(srcdir)/emulparams/elf3 $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf32_i960 "$(tdir_elf32_i960)" eelf32b4300.c: $(srcdir)/emulparams/elf32b4300.sh \ - $(srcdir)/emulparams/elf32bmip.sh $(srcdir)/emultempl/mipself.em \ + $(srcdir)/emulparams/elf32bmip.sh \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf32b4300 "$(tdir_elf32b4300)" eelf32cr16c.c: $(srcdir)/emulparams/elf32cr16c.sh \ @@ -1361,7 +1362,6 @@ eelf32cr16c.c: $(srcdir)/emulparams/elf3 $(srcdir)/scripttempl/elf32cr16c.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf32cr16c "$(tdir_elf32cr16c)" eelf32bmip.c: $(srcdir)/emulparams/elf32bmip.sh \ - $(srcdir)/emultempl/mipself.em \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf32bmip "$(tdir_elf32bmip)" eelf32bsmip.c: $(srcdir)/emulparams/elf32bsmip.sh \ @@ -1369,30 +1369,27 @@ eelf32bsmip.c: $(srcdir)/emulparams/elf3 $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf32bsmip "$(tdir_elf32bsmip)" eelf32btsmip.c: $(srcdir)/emulparams/elf32btsmip.sh \ - $(srcdir)/emulparams/elf32bmip.sh $(srcdir)/emultempl/mipself.em \ + $(srcdir)/emulparams/elf32bmip.sh \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf32btsmip "$(tdir_elf32btsmip)" eelf32btsmipn32.c: $(srcdir)/emulparams/elf32btsmipn32.sh \ - $(srcdir)/emulparams/elf32bmip.sh $(srcdir)/emultempl/mipself.em \ + $(srcdir)/emulparams/elf32bmip.sh \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf32btsmipn32 "$(tdir_elf32btsmipn32)" eelf32ltsmip.c: $(srcdir)/emulparams/elf32ltsmip.sh \ $(srcdir)/emulparams/elf32btsmip.sh $(srcdir)/emulparams/elf32bmip.sh \ - $(srcdir)/emultempl/mipself.em \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf32ltsmip "$(tdir_elf32ltsmip)" eelf32ltsmipn32.c: $(srcdir)/emulparams/elf32ltsmipn32.sh \ $(srcdir)/emulparams/elf32btsmip.sh $(srcdir)/emulparams/elf32bmip.sh \ - $(srcdir)/emultempl/mipself.em \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf32ltsmipn32 "$(tdir_elf32ltsmipn32)" eelf32ebmip.c: $(srcdir)/emulparams/elf32ebmip.sh \ - $(srcdir)/emulparams/elf32bmip.sh $(srcdir)/emultempl/mipself.em \ + $(srcdir)/emulparams/elf32bmip.sh \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf32ebmip "$(tdir_elf32ebmip)" eelf32elmip.c: $(srcdir)/emulparams/elf32elmip.sh \ $(srcdir)/emulparams/elf32lmip.sh $(srcdir)/emulparams/elf32bmip.sh \ - $(srcdir)/emultempl/mipself.em \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf32elmip "$(tdir_elf32elmip)" eelf32bmipn32.c: $(srcdir)/emulparams/elf32bmipn32.sh \ @@ -1401,11 +1398,10 @@ eelf32bmipn32.c: $(srcdir)/emulparams/el ${GENSCRIPTS} elf32bmipn32 "$(tdir_elf32bmipn32)" eelf32l4300.c: $(srcdir)/emulparams/elf32l4300.sh \ $(srcdir)/emulparams/elf32b4300.sh $(srcdir)/emulparams/elf32bmip.sh \ - $(srcdir)/emultempl/mipself.em \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf32l4300 "$(tdir_elf32l4300)" eelf32lmip.c: $(srcdir)/emulparams/elf32lmip.sh \ - $(srcdir)/emulparams/elf32bmip.sh $(srcdir)/emultempl/mipself.em \ + $(srcdir)/emulparams/elf32bmip.sh \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf32lmip "$(tdir_elf32lmip)" eelf32mipswindiss.c: $(srcdir)/emulparams/elf32mipswindiss.sh \ @@ -1433,7 +1429,6 @@ eelf32ppcwindiss.c: $(srcdir)/emulparams ${GENSCRIPTS} elf32ppcwindiss "$(tdir_elf32ppcwindiss)" eelf32lsmip.c: $(srcdir)/emulparams/elf32lsmip.sh \ $(srcdir)/emulparams/elf32lmip.sh $(srcdir)/emulparams/elf32bmip.sh \ - $(srcdir)/emultempl/mipself.em \ $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} elf32lsmip "$(tdir_elf32lsmip)" eelf32openrisc.c: $(srcdir)/emulparams/elf32openrisc.sh \ @@ -1672,7 +1667,7 @@ ei386linux.c: $(srcdir)/emulparams/i386l $(srcdir)/emultempl/linux.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS} ${GENSCRIPTS} i386linux "$(tdir_i386linux)" ei386lynx.c: $(srcdir)/emulparams/i386lynx.sh \ - $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/i386lynx.sc ${GEN_DEPENDS} + $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} ${GENSCRIPTS} i386lynx "$(tdir_i386lynx)" ei386mach.c: $(srcdir)/emulparams/i386mach.sh \ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS} @@ -2006,6 +2001,9 @@ eppcnw.c: $(srcdir)/emulparams/ppcnw.sh eppcpe.c: $(srcdir)/emulparams/ppcpe.sh \ $(srcdir)/emultempl/pe.em $(srcdir)/scripttempl/ppcpe.sc ${GEN_DEPENDS} ${GENSCRIPTS} ppcpe "$(tdir_ppcpe)" +eppclynx.c: $(srcdir)/emulparams/ppclynx.sh \ + $(srcdir)/emultempl/elf32.em $(srcdir)/scripttempl/elf.sc ${GEN_DEPENDS} + ${GENSCRIPTS} ppclynx "$(tdir_ppclynx)" eriscix.c: $(srcdir)/emulparams/riscix.sh \ $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/aout.sc ${GEN_DEPENDS} ${GENSCRIPTS} riscix "$(tdir_riscix)" diff -uprN binutils-2.15.90.0.3/ld/NEWS binutils-2.15.91.0.1/ld/NEWS --- binutils-2.15.90.0.3/ld/NEWS 2004-04-12 12:56:35.000000000 -0700 +++ binutils-2.15.91.0.1/ld/NEWS 2004-05-27 11:26:04.883139364 -0700 @@ -1,5 +1,30 @@ -*- text -*- +* A new linker command line switch has been added which allows the hash table + size to be set to a suitable prime value near to its argument. This switch + is --hash-size=. Also if the switch --reduce-memory-overheads is + used, and --hash-size has not been used, then the default value will be set + to 1021. + +* Linker map files are now generated with an O(N) algorithm for finding symbols + that are defined in each section. This uses about 40% more memory for + symbols than the old O(N^2) algorithm. You can use the new + --reduce-memory-overheads option to select the old algorithm; this option + might also be used in the future to select similar tradeoffs. + +Changes in 2.15: + +* New PE --large-address-aware option to indicate executables support virtual + addresses greater than 2 gigabytes. + +* DWARF 2 support for i386pe added. + +* The linker script operator DEFINED() will now yield 1 only for a symbol that + is defined before the statement where DEFINED is used. + +* The MIPS --embedded-relocs (used to embed relocations into binaries for + Embedded-PIC code) is deprecated and will be removed in a future release. + * cr16c support added by NSC. * m32r Linux (ELF) support added by Renesas. diff -uprN binutils-2.15.90.0.3/ld/configure.host binutils-2.15.91.0.1/ld/configure.host --- binutils-2.15.90.0.3/ld/configure.host 2004-04-12 12:56:35.000000000 -0700 +++ binutils-2.15.91.0.1/ld/configure.host 2004-05-27 11:26:04.896137683 -0700 @@ -132,11 +132,6 @@ i[3-7]86-*-sco* | i[3-7]86-*-isc*) HOSTING_LIBS="$HOSTING_LIBS"' `if [ -f ../gcc/crtend.o ]; then echo ../gcc/crtend.o; else ${CC} -print-file-name=crtend.o; fi` /lib/crtn.o' ;; -i[3-7]86-*-lynxos*) - HOSTING_CRT0=/lib/init1.o - HOSTING_LIBS="$HOSTING_LIBS"' -lm /lib/initn.o' - ;; - i[3-7]86-pc-interix*) HOSTING_CRT0='$$INTERIX_ROOT/usr/lib/crt0.o' HOSTING_LIBS='-L $$X/local_bin -L $$INTERIX_ROOT/usr/lib '"$HOSTING_LIBS"' -lcpsx -lc -lcpsx $$INTERIX_ROOT/usr/lib/psxdll.a $$INTERIX_ROOT/usr/lib/psxdll2.a' @@ -173,11 +168,6 @@ m68*-*-linux-gnu*) HOSTING_CRT0=`echo "$HOSTING_CRT0" | sed -e "s,\\\`egrep.*\"\\\`,/lib/ld.so.1,"` ;; -m68*-*-lynxos*) - HOSTING_CRT0=/lib/init1.o - HOSTING_LIBS="$HOSTING_LIBS"' -lm /lib/initn.o' - ;; - m68*-motorola-sysv) HOSTING_CRT0='`if [ -f ../gcc/crt0.o ]; then echo ../gcc/crt0.o; elif [ -f \`${CC} -print-file-name=\`crt0.o ]; then echo \`${CC} -print-file-name=\`crt0.o; else echo /lib/crt0.o; fi`' HOSTING_LIBS=`echo "$HOSTING_LIBS" | sed -e "s,-lc,-lc881,"` diff -uprN binutils-2.15.90.0.3/ld/configure.tgt binutils-2.15.91.0.1/ld/configure.tgt --- binutils-2.15.90.0.3/ld/configure.tgt 2004-04-12 12:56:35.000000000 -0700 +++ binutils-2.15.91.0.1/ld/configure.tgt 2004-05-27 11:26:04.897137554 -0700 @@ -473,7 +473,7 @@ ns32k-*-netbsd* | ns32k-pc532-lites*) ta openrisc-*-*) targ_emul=elf32openrisc ;; or32-*-coff) targ_emul=or32 ;; or32-*-elf) targ_emul=or32elf ;; -or32-*-rtems) targ_emul=or32 ;; +or32-*-rtems*) targ_emul=or32elf ;; pdp11-*-*) targ_emul=pdp11 ;; pjl*-*-*) targ_emul=pjlelf ; targ_extra_emuls="elf_i386" ;; pj*-*-*) targ_emul=pjelf ;; @@ -534,6 +534,7 @@ powerpc-*-aix5*) targ_emul=aix5ppc ;; powerpc-*-aix*) targ_emul=aixppc ;; powerpc-*-beos*) targ_emul=aixppc ;; powerpc-*-windiss*) targ_emul=elf32ppcwindiss ;; +powerpc-*-lynxos*) targ_emul=ppclynx ;; rs6000-*-aix5*) targ_emul=aix5rs6 ;; rs6000-*-aix*) targ_emul=aixrs6 ;; tic30-*-*aout*) targ_emul=tic30aout ;; diff -uprN binutils-2.15.90.0.3/ld/emulparams/elf32bmip.sh binutils-2.15.91.0.1/ld/emulparams/elf32bmip.sh --- binutils-2.15.90.0.3/ld/emulparams/elf32bmip.sh 2004-03-03 12:24:34.000000000 -0800 +++ binutils-2.15.91.0.1/ld/emulparams/elf32bmip.sh 2004-05-27 11:26:05.066115702 -0700 @@ -33,5 +33,4 @@ OTHER_SECTIONS=' ARCH=mips MACHINE= TEMPLATE_NAME=elf32 -EXTRA_EM_FILE=mipself GENERATE_SHLIB_SCRIPT=yes diff -uprN binutils-2.15.90.0.3/ld/emulparams/elf32frvfd.sh binutils-2.15.91.0.1/ld/emulparams/elf32frvfd.sh --- binutils-2.15.90.0.3/ld/emulparams/elf32frvfd.sh 2004-04-12 12:56:36.000000000 -0700 +++ binutils-2.15.91.0.1/ld/emulparams/elf32frvfd.sh 2004-05-27 11:26:05.083113504 -0700 @@ -1,5 +1,6 @@ . ${srcdir}/emulparams/elf32frv.sh unset STACK_ADDR +OUTPUT_FORMAT="elf32-frvfdpic" MAXPAGESIZE=0x4000 TEMPLATE_NAME=elf32 GENERATE_SHLIB_SCRIPT=yes diff -uprN binutils-2.15.90.0.3/ld/emulparams/elf32ppc.sh binutils-2.15.91.0.1/ld/emulparams/elf32ppc.sh --- binutils-2.15.90.0.3/ld/emulparams/elf32ppc.sh 2004-03-03 12:24:34.000000000 -0800 +++ binutils-2.15.91.0.1/ld/emulparams/elf32ppc.sh 2004-05-27 11:26:05.084113375 -0700 @@ -15,7 +15,7 @@ MACHINE= BSS_PLT= EXECUTABLE_SYMBOLS='PROVIDE (__stack = 0); PROVIDE (___stack = 0);' OTHER_BSS_END_SYMBOLS='__end = .;' -OTHER_READWRITE_SECTIONS=" +OTHER_RELRO_SECTIONS=" .fixup ${RELOCATING-0} : { *(.fixup) } .got1 ${RELOCATING-0} : { *(.got1) } .got2 ${RELOCATING-0} : { *(.got2) } diff -uprN binutils-2.15.90.0.3/ld/emulparams/elf64_s390.sh binutils-2.15.91.0.1/ld/emulparams/elf64_s390.sh --- binutils-2.15.90.0.3/ld/emulparams/elf64_s390.sh 2004-01-14 13:07:52.000000000 -0800 +++ binutils-2.15.91.0.1/ld/emulparams/elf64_s390.sh 2004-05-27 11:26:05.103110918 -0700 @@ -3,6 +3,7 @@ ELFSIZE=64 OUTPUT_FORMAT="elf64-s390" TEXT_START_ADDR=0x80000000 MAXPAGESIZE=0x1000 +COMMONPAGESIZE=0x1000 NONPAGED_TEXT_START_ADDR=0x80000000 ARCH="s390:64-bit" MACHINE= diff -uprN binutils-2.15.90.0.3/ld/emulparams/elf_i386.sh binutils-2.15.91.0.1/ld/emulparams/elf_i386.sh --- binutils-2.15.90.0.3/ld/emulparams/elf_i386.sh 2004-01-14 13:07:52.000000000 -0800 +++ binutils-2.15.91.0.1/ld/emulparams/elf_i386.sh 2004-05-27 11:26:05.110110013 -0700 @@ -11,3 +11,4 @@ TEMPLATE_NAME=elf32 GENERATE_SHLIB_SCRIPT=yes GENERATE_PIE_SCRIPT=yes NO_SMALL_DATA=yes +SEPARATE_GOTPLT=12 diff -uprN binutils-2.15.90.0.3/ld/emulparams/elf_s390.sh binutils-2.15.91.0.1/ld/emulparams/elf_s390.sh --- binutils-2.15.90.0.3/ld/emulparams/elf_s390.sh 2004-01-14 13:07:52.000000000 -0800 +++ binutils-2.15.91.0.1/ld/emulparams/elf_s390.sh 2004-05-27 11:26:05.112109755 -0700 @@ -2,6 +2,7 @@ SCRIPT_NAME=elf OUTPUT_FORMAT="elf32-s390" TEXT_START_ADDR=0x00400000 MAXPAGESIZE=0x1000 +COMMONPAGESIZE=0x1000 NONPAGED_TEXT_START_ADDR=0x00400000 ARCH="s390:31-bit" MACHINE= diff -uprN binutils-2.15.90.0.3/ld/emulparams/elf_x86_64.sh binutils-2.15.91.0.1/ld/emulparams/elf_x86_64.sh --- binutils-2.15.90.0.3/ld/emulparams/elf_x86_64.sh 2004-01-14 13:07:52.000000000 -0800 +++ binutils-2.15.91.0.1/ld/emulparams/elf_x86_64.sh 2004-05-27 11:26:05.112109755 -0700 @@ -12,6 +12,7 @@ TEMPLATE_NAME=elf32 GENERATE_SHLIB_SCRIPT=yes GENERATE_PIE_SCRIPT=yes NO_SMALL_DATA=yes +SEPARATE_GOTPLT=24 if [ "x${host}" = "x${target}" ]; then case " $EMULATION_LIBPATH " in diff -uprN binutils-2.15.90.0.3/ld/emulparams/i386lynx.sh binutils-2.15.91.0.1/ld/emulparams/i386lynx.sh --- binutils-2.15.90.0.3/ld/emulparams/i386lynx.sh 1999-06-03 11:02:10.000000000 -0700 +++ binutils-2.15.91.0.1/ld/emulparams/i386lynx.sh 2004-05-27 11:26:05.118108979 -0700 @@ -1,9 +1,17 @@ -SCRIPT_NAME=i386lynx -OUTPUT_FORMAT="coff-i386-lynx" -# This is what LynxOS /lib/init1.o wants. +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-i386" ENTRY=_main -# following are dubious -TARGET_PAGE_SIZE=0x1000 -TEXT_START_ADDR=0 +TEXT_BASE=0x0 +DYN_TEXT_BASE=0x00400000 +TEXT_START_ADDR="(DEFINED(_DYNAMIC) ? ${DYN_TEXT_BASE} : ${TEXT_BASE})" +MAXPAGESIZE=0x1000 NONPAGED_TEXT_START_ADDR=0x1000 ARCH=i386 +MACHINE= +NOP=0x9090 +TEMPLATE_NAME=elf32 +GENERATE_SHLIB_SCRIPT=yes +ELF_INTERPRETER_NAME=\"/usr/lib/ld.so.1\" + +# Leave room of SIZEOF_HEADERS before text. +EMBEDDED= diff -uprN binutils-2.15.90.0.3/ld/emulparams/mipsidt.sh binutils-2.15.91.0.1/ld/emulparams/mipsidt.sh --- binutils-2.15.90.0.3/ld/emulparams/mipsidt.sh 1999-06-03 11:02:10.000000000 -0700 +++ binutils-2.15.91.0.1/ld/emulparams/mipsidt.sh 2004-05-27 11:26:05.122108462 -0700 @@ -7,5 +7,6 @@ ARCH=mips ENTRY=start TEXT_START_ADDR=0xa0012000 DATA_ADDR=. -TEMPLATE_NAME=mipsecoff +TEMPLATE_NAME=generic +EXTRA_EM_FILE=mipsecoff EMBEDDED=yes diff -uprN binutils-2.15.90.0.3/ld/emulparams/mipsidtl.sh binutils-2.15.91.0.1/ld/emulparams/mipsidtl.sh --- binutils-2.15.90.0.3/ld/emulparams/mipsidtl.sh 1999-06-03 11:02:10.000000000 -0700 +++ binutils-2.15.91.0.1/ld/emulparams/mipsidtl.sh 2004-05-27 11:26:05.122108462 -0700 @@ -7,5 +7,6 @@ ARCH=mips ENTRY=start TEXT_START_ADDR=0xa0012000 DATA_ADDR=. -TEMPLATE_NAME=mipsecoff +TEMPLATE_NAME=generic +EXTRA_EM_FILE=mipsecoff EMBEDDED=yes diff -uprN binutils-2.15.90.0.3/ld/emulparams/ppclynx.sh binutils-2.15.91.0.1/ld/emulparams/ppclynx.sh --- binutils-2.15.90.0.3/ld/emulparams/ppclynx.sh 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/ld/emulparams/ppclynx.sh 2004-05-27 11:26:05.123108332 -0700 @@ -0,0 +1,20 @@ +SCRIPT_NAME=elf +OUTPUT_FORMAT="elf32-powerpc" +TEXT_BASE=0x00002000 +DYN_TEXT_BASE=0x00400000 +TEXT_START_ADDR="(DEFINED(_DYNAMIC) ? ${DYN_TEXT_BASE} : ${TEXT_BASE})" +MAXPAGESIZE=0x10000 +NONPAGED_TEXT_START_ADDR=0x1000 +ARCH=powerpc +MACHINE= +TEMPLATE_NAME=elf32 +GENERATE_SHLIB_SCRIPT=yes +ELF_INTERPRETER_NAME=\"/usr/lib/ld.so.1\" + +# Leave room of SIZEOF_HEADERS before text. +EMBEDDED= +# PLT on PowerPC is generated at run-time. +BSS_PLT= +OTHER_READWRITE_SECTIONS=" + .got1 ${RELOCATING-0} : { *(.got1) } + .got2 ${RELOCATING-0} : { *(.got2) }" diff -uprN binutils-2.15.90.0.3/ld/emultempl/armelf.em binutils-2.15.91.0.1/ld/emultempl/armelf.em --- binutils-2.15.90.0.3/ld/emultempl/armelf.em 2004-04-12 12:56:36.000000000 -0700 +++ binutils-2.15.91.0.1/ld/emultempl/armelf.em 2004-05-27 11:26:05.123108332 -0700 @@ -67,7 +67,8 @@ static void arm_elf_set_bfd_for_interworking (lang_statement_union_type *statement) { if (statement->header.type == lang_input_section_enum - && !statement->input_section.ifile->just_syms_flag) + && !statement->input_section.ifile->just_syms_flag + && (statement->input_section.section->flags & SEC_EXCLUDE) == 0) { asection *i = statement->input_section.section; asection *output_section = i->output_section; diff -uprN binutils-2.15.90.0.3/ld/emultempl/elf32.em binutils-2.15.91.0.1/ld/emultempl/elf32.em --- binutils-2.15.90.0.3/ld/emultempl/elf32.em 2004-04-12 12:56:36.000000000 -0700 +++ binutils-2.15.91.0.1/ld/emultempl/elf32.em 2004-05-27 11:26:05.126107944 -0700 @@ -1032,7 +1032,8 @@ output_rel_find (asection *sec, int isdy for (u = lang_output_section_statement.head; u; u = lookup->next) { lookup = &u->output_section_statement; - if (strncmp (".rel", lookup->name, 4) == 0) + if (lookup->constraint != -1 + && strncmp (".rel", lookup->name, 4) == 0) { int lookrela = lookup->name[4] == 'a'; @@ -1142,7 +1143,7 @@ gld${EMULATION_NAME}_place_orphan (lang_ isdyn = 1; } - if (isdyn || (!config.unique_orphan_sections && !unique_section_p (secname))) + if (isdyn || (!config.unique_orphan_sections && !unique_section_p (s))) { /* Look through the script to see where to place this section. */ os = lang_output_section_find (secname); @@ -1181,7 +1182,10 @@ gld${EMULATION_NAME}_place_orphan (lang_ #define HAVE_SECTION(hold, name) \ (hold.os != NULL || (hold.os = lang_output_section_find (name)) != NULL) - if ((s->flags & SEC_EXCLUDE) != 0 && !link_info.relocatable) + if (link_info.relocatable && (s->flags & SEC_DEBUGGING) == 0) + s->flags &= ~SEC_EXCLUDE; + + if ((s->flags & SEC_EXCLUDE) != 0) { if (s->output_section == NULL) s->output_section = bfd_abs_section_ptr; @@ -1279,7 +1283,7 @@ gld${EMULATION_NAME}_place_orphan (lang_ os = lang_enter_output_section_statement (secname, address, 0, (etree_type *) NULL, (etree_type *) NULL, - load_base); + load_base, 0); lang_add_section (&os->children, s, os, file); @@ -1458,6 +1462,10 @@ sed $sc ldscripts/${EMULATION_NAME}.xn fi if test -n "$GENERATE_PIE_SCRIPT" ; then if test -n "$GENERATE_COMBRELOC_SCRIPT" ; then +echo ' ; else if (link_info.pie && link_info.combreloc' >> e${EMULATION_NAME}.c +echo ' && link_info.relro' >> e${EMULATION_NAME}.c +echo ' && (link_info.flags & DT_BIND_NOW)) return' >> e${EMULATION_NAME}.c +sed $sc ldscripts/${EMULATION_NAME}.xdw >> e${EMULATION_NAME}.c echo ' ; else if (link_info.pie && link_info.combreloc) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xdc >> e${EMULATION_NAME}.c fi @@ -1466,6 +1474,10 @@ sed $sc ldscripts/${EMULATION_NAME}.xd fi if test -n "$GENERATE_SHLIB_SCRIPT" ; then if test -n "$GENERATE_COMBRELOC_SCRIPT" ; then +echo ' ; else if (link_info.shared && link_info.combreloc' >> e${EMULATION_NAME}.c +echo ' && link_info.relro' >> e${EMULATION_NAME}.c +echo ' && (link_info.flags & DT_BIND_NOW)) return' >> e${EMULATION_NAME}.c +sed $sc ldscripts/${EMULATION_NAME}.xsw >> e${EMULATION_NAME}.c echo ' ; else if (link_info.shared && link_info.combreloc) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xsc >> e${EMULATION_NAME}.c fi @@ -1473,6 +1485,9 @@ echo ' ; else if (link_info.shared) ret sed $sc ldscripts/${EMULATION_NAME}.xs >> e${EMULATION_NAME}.c fi if test -n "$GENERATE_COMBRELOC_SCRIPT" ; then +echo ' ; else if (link_info.combreloc && link_info.relro' >> e${EMULATION_NAME}.c +echo ' && (link_info.flags & DT_BIND_NOW)) return' >> e${EMULATION_NAME}.c +sed $sc ldscripts/${EMULATION_NAME}.xw >> e${EMULATION_NAME}.c echo ' ; else if (link_info.combreloc) return' >> e${EMULATION_NAME}.c sed $sc ldscripts/${EMULATION_NAME}.xc >> e${EMULATION_NAME}.c fi @@ -1504,6 +1519,9 @@ fi if test -n "$GENERATE_PIE_SCRIPT" ; then if test -n "$GENERATE_COMBRELOC_SCRIPT" ; then cat >>e${EMULATION_NAME}.c <>e${EMULATION_NAME}.c <>e${EMULATION_NAME}.c <>e${EMULATION_NAME}.c <>e${EMULATION_NAME}.c <header.type == lang_input_section_enum && !statement->input_section.ifile->just_syms_flag + && (statement->input_section.section->flags & SEC_EXCLUDE) == 0 && statement->input_section.section->output_section != NULL && statement->input_section.section->output_section->owner == output_bfd) { diff -uprN binutils-2.15.90.0.3/ld/emultempl/mipsecoff.em binutils-2.15.91.0.1/ld/emultempl/mipsecoff.em --- binutils-2.15.90.0.3/ld/emultempl/mipsecoff.em 2004-01-14 13:07:53.000000000 -0800 +++ binutils-2.15.91.0.1/ld/emultempl/mipsecoff.em 2004-05-27 11:26:05.143105746 -0700 @@ -1,51 +1,30 @@ # This shell script emits a C file. -*- C -*- -# It does some substitutions. +# Copyright 1994, 1995, 1997, 2000, 2002, 2003, 2004 +# Free Software Foundation, Inc. +# +# This file is part of GLD, the Gnu Linker. +# +# This program 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 of the License, or +# (at your option) any later version. +# +# This program 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 this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# + if [ -z "$MACHINE" ]; then OUTPUT_ARCH=${ARCH} else OUTPUT_ARCH=${ARCH}:${MACHINE} fi -cat >e${EMULATION_NAME}.c < based on generic.em. - -This file is part of GLD, the Gnu Linker. - -This program 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 of the License, or -(at your option) any later version. - -This program 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 this program; if not, write to the Free Software -Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -#define TARGET_IS_${EMULATION_NAME} - -#include "bfd.h" -#include "sysdep.h" -#include "bfdlink.h" - -#include "ld.h" -#include "ldmain.h" -#include "ldmisc.h" - -#include "ldexp.h" -#include "ldlang.h" -#include "ldfile.h" -#include "ldemul.h" - -static void check_sections (bfd *, asection *, void *); - +cat >>e${EMULATION_NAME}.c <link_next) - { - asection *datasec; - - /* As first-order business, make sure that each input BFD is ECOFF. It - better be, as we are directly calling an ECOFF backend function. */ - if (bfd_get_flavour (abfd) != bfd_target_ecoff_flavour) - einfo ("%F%B: all input objects must be ECOFF for --embedded-relocs\n"); - - datasec = bfd_get_section_by_name (abfd, ".sdata"); - - /* Note that we assume that the reloc_count field has already - been set up. We could call bfd_get_reloc_upper_bound, but - that returns the size of a memory buffer rather than a reloc - count. We do not want to call bfd_canonicalize_reloc, - because although it would always work it would force us to - read in the relocs into BFD canonical form, which would waste - a significant amount of time and memory. */ - if (datasec != NULL && datasec->reloc_count > 0) - { - asection *relsec; - - relsec = bfd_make_section (abfd, ".rel.sdata"); - if (relsec == NULL - || ! bfd_set_section_flags (abfd, relsec, - (SEC_ALLOC - | SEC_LOAD - | SEC_HAS_CONTENTS - | SEC_IN_MEMORY)) - || ! bfd_set_section_alignment (abfd, relsec, 2) - || ! bfd_set_section_size (abfd, relsec, - datasec->reloc_count * 4)) - einfo ("%F%B: can not create .rel.sdata section: %E\n"); - } - - /* Double check that all other data sections are empty, as is - required for embedded PIC code. */ - bfd_map_over_sections (abfd, check_sections, datasec); - } -} - -/* Check that of the data sections, only the .sdata section has - relocs. This is called via bfd_map_over_sections. */ - -static void -check_sections (bfd *abfd, asection *sec, void *sdatasec) -{ - if ((bfd_get_section_flags (abfd, sec) & SEC_CODE) == 0 - && sec != sdatasec - && sec->reloc_count != 0) - einfo ("%B%X: section %s has relocs; can not use --embedded-relocs\n", - abfd, bfd_get_section_name (abfd, sec)); -} - -/* This function is called after the section sizes and offsets have - been set. If we are generating embedded relocs, it calls a special - BFD backend routine to do the work. */ - -static void -gld${EMULATION_NAME}_after_allocation (void) -{ - bfd *abfd; - - if (! command_line.embedded_relocs - || link_info.relocatable) - return; - - for (abfd = link_info.input_bfds; abfd != NULL; abfd = abfd->link_next) - { - asection *datasec, *relsec; - char *errmsg; - - datasec = bfd_get_section_by_name (abfd, ".sdata"); - - if (datasec == NULL || datasec->reloc_count == 0) - continue; - - relsec = bfd_get_section_by_name (abfd, ".rel.sdata"); - ASSERT (relsec != NULL); - - if (! bfd_mips_ecoff_create_embedded_relocs (abfd, &link_info, - datasec, relsec, - &errmsg)) - { - if (errmsg == NULL) - einfo ("%B%X: can not create runtime reloc information: %E\n", - abfd); - else - einfo ("%X%B: can not create runtime reloc information: %s\n", - abfd, errmsg); - } - } -} - -static char * -gld${EMULATION_NAME}_get_script (int *isfile) EOF -if test -n "$COMPILE_IN" -then -# Scripts compiled in. - -# sed commands to quote an ld script as a C string. -sc="-f stringify.sed" - -cat >>e${EMULATION_NAME}.c <> e${EMULATION_NAME}.c -echo ' ; else if (link_info.relocatable) return' >> e${EMULATION_NAME}.c -sed $sc ldscripts/${EMULATION_NAME}.xr >> e${EMULATION_NAME}.c -echo ' ; else if (!config.text_read_only) return' >> e${EMULATION_NAME}.c -sed $sc ldscripts/${EMULATION_NAME}.xbn >> e${EMULATION_NAME}.c -echo ' ; else if (!config.magic_demand_paged) return' >> e${EMULATION_NAME}.c -sed $sc ldscripts/${EMULATION_NAME}.xn >> e${EMULATION_NAME}.c -echo ' ; else return' >> e${EMULATION_NAME}.c -sed $sc ldscripts/${EMULATION_NAME}.x >> e${EMULATION_NAME}.c -echo '; }' >> e${EMULATION_NAME}.c - -else -# Scripts read from the filesystem. - -cat >>e${EMULATION_NAME}.c <>e${EMULATION_NAME}.c < and -# Chris Demetriou based on m68kelf.em and mipsecoff.em. -# -# This file is part of GLD, the Gnu Linker. -# -# This program 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 of the License, or -# (at your option) any later version. -# -# This program 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 this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - - -# This file is sourced from elf32.em, and defines some extra routines for m68k -# embedded systems using ELF and for some other systems using m68k ELF. While -# it is sourced from elf32.em for all m68k ELF configurations, here we include -# only the features we want depending on the configuration. - -case ${target} in - mips*-*-elf) - echo "#define SUPPORT_EMBEDDED_RELOCS" >>e${EMULATION_NAME}.c - ;; -esac - -cat >>e${EMULATION_NAME}.c <link_next) - { - asection *datasec; - - /* As first-order business, make sure that each input BFD is - ELF. We need to call a special BFD backend function to - generate the embedded relocs, and we have that function - only for ELF */ - - if (bfd_get_flavour (abfd) != bfd_target_elf_flavour) - einfo ("%F%B: all input objects must be ELF for --embedded-relocs\n"); - - if (bfd_get_arch_size (abfd) != ${ELFSIZE}) - einfo ("%F%B: all input objects must be ${ELFSIZE}-bit ELF for --embedded-relocs\n"); - - datasec = bfd_get_section_by_name (abfd, ".sdata"); - - /* Note that we assume that the reloc_count field has already - been set up. We could call bfd_get_reloc_upper_bound, but - that returns the size of a memory buffer rather than a reloc - count. We do not want to call bfd_canonicalize_reloc, - because although it would always work it would force us to - read in the relocs into BFD canonical form, which would waste - a significant amount of time and memory. */ - - if (datasec != NULL && datasec->reloc_count > 0) - { - asection *relsec; - - relsec = bfd_make_section (abfd, ".rel.sdata"); - if (relsec == NULL - || ! bfd_set_section_flags (abfd, relsec, - (SEC_ALLOC - | SEC_LOAD - | SEC_HAS_CONTENTS - | SEC_IN_MEMORY)) - || ! bfd_set_section_alignment (abfd, relsec, - (${ELFSIZE} == 32) ? 2 : 3) - || ! bfd_set_section_size (abfd, relsec, - datasec->reloc_count - * ((${ELFSIZE} / 8) + 8))) - einfo ("%F%B: cannot create .rel.sdata section: %E\n"); - } - - /* Double check that all other data sections have no relocs, - as is required for embedded PIC code. */ - bfd_map_over_sections (abfd, mips_elf${ELFSIZE}_check_sections, - datasec); - } - } -#endif /* SUPPORT_EMBEDDED_RELOCS */ -} - -#ifdef SUPPORT_EMBEDDED_RELOCS -/* Check that of the data sections, only the .sdata section has - relocs. This is called via bfd_map_over_sections. */ - -static void -mips_elf${ELFSIZE}_check_sections (bfd *abfd, asection *sec, void *sdatasec) -{ - if ((bfd_get_section_flags (abfd, sec) & SEC_DATA) - && sec != sdatasec - && sec->reloc_count != 0) - einfo ("%B%X: section %s has relocs; cannot use --embedded-relocs\n", - abfd, bfd_get_section_name (abfd, sec)); -} -#endif /* SUPPORT_EMBEDDED_RELOCS */ - -/* This function is called after the section sizes and offsets have - been set. If we are generating embedded relocs, it calls a special - BFD backend routine to do the work. */ - -static void -mips_elf${ELFSIZE}_after_allocation (void) -{ - /* Call the standard elf routine. */ - after_allocation_default (); - -#ifdef SUPPORT_EMBEDDED_RELOCS - if (command_line.embedded_relocs && (! link_info.relocatable)) - { - bfd *abfd; - - for (abfd = link_info.input_bfds; abfd != NULL; abfd = abfd->link_next) - { - asection *datasec, *relsec; - char *errmsg; - - datasec = bfd_get_section_by_name (abfd, ".sdata"); - - if (datasec == NULL || datasec->reloc_count == 0) - continue; - - relsec = bfd_get_section_by_name (abfd, ".rel.sdata"); - ASSERT (relsec != NULL); - - if (! bfd_mips_elf${ELFSIZE}_create_embedded_relocs (abfd, - &link_info, - datasec, - relsec, - &errmsg)) - { - if (errmsg == NULL) - einfo ("%B%X: can not create runtime reloc information: %E\n", - abfd); - else - einfo ("%X%B: can not create runtime reloc information: %s\n", - abfd, errmsg); - } - } - } -#endif /* SUPPORT_EMBEDDED_RELOCS */ -} - -EOF - -# We have our own after_open and after_allocation functions, but they call -# the standard routines, so give them a different name. -LDEMUL_AFTER_OPEN=mips_elf${ELFSIZE}_after_open -LDEMUL_AFTER_ALLOCATION=mips_elf${ELFSIZE}_after_allocation diff -uprN binutils-2.15.90.0.3/ld/emultempl/mmo.em binutils-2.15.91.0.1/ld/emultempl/mmo.em --- binutils-2.15.90.0.3/ld/emultempl/mmo.em 2004-01-14 13:07:53.000000000 -0800 +++ binutils-2.15.91.0.1/ld/emultempl/mmo.em 2004-05-27 11:26:05.155104195 -0700 @@ -47,6 +47,8 @@ output_prev_sec_find (lang_output_sectio u = lookup->next) { lookup = &u->output_section_statement; + if (lookup->constraint == -1) + continue; if (lookup == os) break; if (lookup->bfd_section != NULL @@ -129,7 +131,7 @@ mmo_place_orphan (lang_input_statement_t NULL, 0, (etree_type *) NULL, (etree_type *) NULL, - (etree_type *) NULL); + (etree_type *) NULL, 0); lang_add_section (&os->children, s, os, file); diff -uprN binutils-2.15.90.0.3/ld/emultempl/pe.em binutils-2.15.91.0.1/ld/emultempl/pe.em --- binutils-2.15.90.0.3/ld/emultempl/pe.em 2004-03-03 12:24:34.000000000 -0800 +++ binutils-2.15.91.0.1/ld/emultempl/pe.em 2004-05-27 11:26:05.178101221 -0700 @@ -62,6 +62,11 @@ cat >>e${EMULATION_NAME}.c <>e${EMULATION_NAME}.c <pe_opthdr = pe; pe_data (output_bfd)->dll = init[DLLOFF].value; + pe_data (output_bfd)->real_flags |= real_flags; #ifdef DLL_SUPPORT if (pe_enable_stdcall_fixup) /* -1=warn or 1=disable */ @@ -1486,6 +1501,8 @@ output_prev_sec_find (lang_output_sectio u = lookup->next) { lookup = &u->output_section_statement; + if (lookup->constraint == -1) + continue; if (lookup == os) return s; @@ -1649,7 +1666,7 @@ gld_${EMULATION_NAME}_place_orphan (lang os = lang_enter_output_section_statement (outsecname, address, 0, (etree_type *) NULL, (etree_type *) NULL, - (etree_type *) NULL); + (etree_type *) NULL, 0); lang_add_section (&add_child, s, os, file); diff -uprN binutils-2.15.90.0.3/ld/emultempl/ppc64elf.em binutils-2.15.91.0.1/ld/emultempl/ppc64elf.em --- binutils-2.15.90.0.3/ld/emultempl/ppc64elf.em 2004-04-12 12:56:36.000000000 -0700 +++ binutils-2.15.91.0.1/ld/emultempl/ppc64elf.em 2004-05-27 11:26:05.179101091 -0700 @@ -288,6 +288,7 @@ build_toc_list (lang_statement_union_typ { if (statement->header.type == lang_input_section_enum && !statement->input_section.ifile->just_syms_flag + && (statement->input_section.section->flags & SEC_EXCLUDE) == 0 && statement->input_section.section->output_section == toc_section) ppc64_elf_next_toc_section (&link_info, statement->input_section.section); } @@ -298,6 +299,7 @@ build_section_lists (lang_statement_unio { if (statement->header.type == lang_input_section_enum && !statement->input_section.ifile->just_syms_flag + && (statement->input_section.section->flags & SEC_EXCLUDE) == 0 && statement->input_section.section->output_section != NULL && statement->input_section.section->output_section->owner == output_bfd) { diff -uprN binutils-2.15.90.0.3/ld/genscripts.sh binutils-2.15.91.0.1/ld/genscripts.sh --- binutils-2.15.90.0.3/ld/genscripts.sh 2004-03-03 12:24:34.000000000 -0800 +++ binutils-2.15.91.0.1/ld/genscripts.sh 2004-05-27 11:26:04.910135873 -0700 @@ -283,7 +283,16 @@ if test -n "$GENERATE_COMBRELOC_SCRIPT"; . ${srcdir}/scripttempl/${SCRIPT_NAME}.sc ) | sed -e '/^ *$/d;s/[ ]*$//' > ldscripts/${EMULATION_NAME}.xc rm -f ${COMBRELOC} + LD_FLAG=w + RELRO_NOW=" " + COMBRELOC=ldscripts/${EMULATION_NAME}.xw.tmp + ( echo "/* Script for -z combreloc -z now -z relro: combine and sort reloc sections */" + . ${CUSTOMIZER_SCRIPT} ${EMULATION_NAME} + . ${srcdir}/scripttempl/${SCRIPT_NAME}.sc + ) | sed -e '/^ *$/d;s/[ ]*$//' > ldscripts/${EMULATION_NAME}.xw + rm -f ${COMBRELOC} COMBRELOC= + unset RELRO_NOW fi if test -n "$GENERATE_SHLIB_SCRIPT"; then @@ -299,13 +308,22 @@ if test -n "$GENERATE_SHLIB_SCRIPT"; the if test -n "$GENERATE_COMBRELOC_SCRIPT"; then LD_FLAG=cshared DATA_ALIGNMENT=${DATA_ALIGNMENT_sc-${DATA_ALIGNMENT}} - COMBRELOC=ldscripts/${EMULATION_NAME}.xc.tmp + COMBRELOC=ldscripts/${EMULATION_NAME}.xsc.tmp ( echo "/* Script for --shared -z combreloc: shared library, combine & sort relocs */" . ${CUSTOMIZER_SCRIPT} ${EMULATION_NAME} . ${srcdir}/scripttempl/${SCRIPT_NAME}.sc ) | sed -e '/^ *$/d;s/[ ]*$//' > ldscripts/${EMULATION_NAME}.xsc rm -f ${COMBRELOC} + LD_FLAG=wshared + RELRO_NOW=" " + COMBRELOC=ldscripts/${EMULATION_NAME}.xsw.tmp + ( echo "/* Script for --shared -z combreloc -z now -z relro: shared library, combine & sort relocs */" + . ${CUSTOMIZER_SCRIPT} ${EMULATION_NAME} + . ${srcdir}/scripttempl/${SCRIPT_NAME}.sc + ) | sed -e '/^ *$/d;s/[ ]*$//' > ldscripts/${EMULATION_NAME}.xsw + rm -f ${COMBRELOC} COMBRELOC= + unset RELRO_NOW fi unset CREATE_SHLIB fi @@ -323,13 +341,22 @@ if test -n "$GENERATE_PIE_SCRIPT"; then if test -n "$GENERATE_COMBRELOC_SCRIPT"; then LD_FLAG=cpie DATA_ALIGNMENT=${DATA_ALIGNMENT_sc-${DATA_ALIGNMENT}} - COMBRELOC=ldscripts/${EMULATION_NAME}.xc.tmp + COMBRELOC=ldscripts/${EMULATION_NAME}.xdc.tmp ( echo "/* Script for -pie -z combreloc: position independent executable, combine & sort relocs */" . ${CUSTOMIZER_SCRIPT} ${EMULATION_NAME} . ${srcdir}/scripttempl/${SCRIPT_NAME}.sc ) | sed -e '/^ *$/d;s/[ ]*$//' > ldscripts/${EMULATION_NAME}.xdc rm -f ${COMBRELOC} + LD_FLAG=wpie + RELRO_NOW=" " + COMBRELOC=ldscripts/${EMULATION_NAME}.xdw.tmp + ( echo "/* Script for -pie -z combreloc -z now -z relro: position independent executable, combine & sort relocs */" + . ${CUSTOMIZER_SCRIPT} ${EMULATION_NAME} + . ${srcdir}/scripttempl/${SCRIPT_NAME}.sc + ) | sed -e '/^ *$/d;s/[ ]*$//' > ldscripts/${EMULATION_NAME}.xdw + rm -f ${COMBRELOC} COMBRELOC= + unset RELRO_NOW fi unset CREATE_PIE fi diff -uprN binutils-2.15.90.0.3/ld/ld.h binutils-2.15.91.0.1/ld/ld.h --- binutils-2.15.90.0.3/ld/ld.h 2004-01-14 13:07:52.000000000 -0800 +++ binutils-2.15.91.0.1/ld/ld.h 2004-05-27 11:26:04.928133546 -0700 @@ -1,5 +1,5 @@ /* ld.h -- general linker header file - Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2002 + Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2002, 2004 Free Software Foundation, Inc. This file is part of GLD, the Gnu Linker. @@ -78,11 +78,32 @@ struct wildcard_list { struct wildcard_spec spec; }; +struct map_symbol_def { + struct bfd_link_hash_entry *entry; + struct map_symbol_def *next; +}; + /* Extra information we hold on sections */ -typedef struct user_section_struct { - /* Pointer to the section where this data will go */ +typedef struct lean_user_section_struct { + /* For output sections: pointer to the section where this data will go. */ + struct lang_input_statement_struct *file; +} lean_section_userdata_type; + +/* The initial part of fat_user_section_struct has to be idential with + lean_user_section_struct. */ +typedef struct fat_user_section_struct { + /* For output sections: pointer to the section where this data will go. */ struct lang_input_statement_struct *file; -} section_userdata_type; + /* For input sections, when writing a map file: head / tail of a linked + list of hash table entries for symbols defined in this section. */ + struct map_symbol_def *map_symbol_def_head; + struct map_symbol_def **map_symbol_def_tail; +} fat_section_userdata_type; + +#define SECTION_USERDATA_SIZE \ + (command_line.reduce_memory_overheads \ + ? sizeof (lean_section_userdata_type) \ + : sizeof (fat_section_userdata_type)) #define get_userdata(x) ((x)->userdata) @@ -154,6 +175,10 @@ typedef struct { input files. */ bfd_boolean accept_unknown_input_arch; + /* If TRUE reduce memory overheads, at the expense of speed. + This will cause map file generation to use an O(N^2) algorithm. */ + bfd_boolean reduce_memory_overheads; + } args_type; extern args_type command_line; @@ -216,6 +241,9 @@ typedef struct { /* If set, only search library directories explicitly selected on the command line. */ bfd_boolean only_cmd_line_lib_dirs; + + /* The size of the hash table to use. */ + bfd_size_type hash_table_size; } ld_config_type; extern ld_config_type config; diff -uprN binutils-2.15.90.0.3/ld/ld.texinfo binutils-2.15.91.0.1/ld/ld.texinfo --- binutils-2.15.90.0.3/ld/ld.texinfo 2004-04-12 12:56:35.000000000 -0700 +++ binutils-2.15.91.0.1/ld/ld.texinfo 2004-05-27 11:26:04.936132511 -0700 @@ -1113,15 +1113,6 @@ generating dynamically linked ELF execut linker is normally correct; don't use this unless you know what you are doing. -@cindex MIPS embedded PIC code -@kindex --embedded-relocs -@item --embedded-relocs -This option is only meaningful when linking MIPS embedded PIC code, -generated by the -membedded-pic option to the @sc{gnu} compiler and -assembler. It causes the linker to create a table which may be used at -runtime to relocate any data which was statically initialized to pointer -values. See the code in testsuite/ld-empic for details. - @kindex --fatal-warnings @item --fatal-warnings @@ -1145,9 +1136,9 @@ it ends in a @code{.exe} suffix. @itemx --gc-sections Enable garbage collection of unused input sections. It is ignored on targets that do not support this option. This option is not compatible -with @samp{-r}, nor should it be used with dynamic linking. The default -behaviour (of not performing this garbage collection) can be restored by -specifying @samp{--no-gc-sections} on the command line. +with @samp{-r}. The default behaviour (of not performing this garbage +collection) can be restored by specifying @samp{--no-gc-sections} on +the command line. @cindex help @cindex usage @@ -1743,6 +1734,28 @@ If you specify @option{--disable-new-dta created. By default, the new dynamic tags are not created. Note that those options are only available for ELF systems. +@kindex --hash-size=@var{number} +Set the default size of the linker's hash tables to a prime number +close to @var{number}. Increasing this value can reduce the length of +time it takes the linker to perform its tasks, at the expense of +increasing the linker's memory requirements. Similarly reducing this +value can reduce the memory requirements at the expense of speed. + +@kindex --reduce-memory-overheads +@item --reduce-memory-overheads +This option reduces memory requirements at ld runtime, at the expense of +linking speed. This was introduced to to select the old O(n^2) algorithm +for link map file generation, rather than the new O(n) algorithm which uses +about 40% more memory for symbol storage. + +Another affect of the switch is to set the default hash table size to +1021, which again saves memory at the cost of lengthening the linker's +run time. This is not done however if the @option{--hash-size} switch +has been used. + +The @option{--reduce-memory-overheads} switch may be also be used to +enable other tradeoffs in future versions of the linker. + @end table @c man end @@ -1881,6 +1894,15 @@ If given, the stdcall suffixes (@@@var{n symbols before they are exported. [This option is specific to the i386 PE targeted port of the linker] +@kindex --large-address-aware +@item --large-address-aware +If given, the appropriate bit in the ``Charateristics'' field of the COFF +header is set to indicate that this executable supports virtual addresses +greater than 2 gigabytes. This should be used in conjuction with the /3GB +or /USERVA=@var{value} megabytes switch in the ``[operating systems]'' +section of the BOOT.INI. Otherwise, this bit has no effect. +[This option is specific to PE targeted ports of the linker] + @kindex --major-image-version @item --major-image-version @var{value} Sets the major number of the ``image version''. Defaults to 1. @@ -2365,7 +2387,7 @@ at address @samp{0x8000000}. After the output section, the value of the location counter will be @samp{0x8000000} plus the size of the @samp{.data} output section. The effect is that the linker will place the @samp{.bss} output section -immediately after the @samp{.data} output section in memory +immediately after the @samp{.data} output section in memory. The linker will ensure that each output section has the required alignment, by increasing the location counter if necessary. In this @@ -2834,7 +2856,7 @@ The output section name @samp{/DISCARD/} Discarding}. @node Output Section Address -@subsection Output Section Description +@subsection Output Section Address @cindex address, section @cindex section address The @var{address} is an expression for the VMA (the virtual memory @@ -4655,6 +4677,23 @@ page of memory, and changes them to use (That is: the linker turns @samp{mov.b @code{@@}@var{aa}:16} into @samp{mov.b @code{@@}@var{aa}:8} whenever the address @var{aa} is in the top page of memory). + +@item bit manipulation instructions +@command{ld} finds all bit manipulation instructions like @code{band, bclr, +biand, bild, bior, bist, bixor, bld, bnot, bor, bset, bst, btst, bxor} +which use 32 bit and 16 bit absolute address form, but refer to the top +page of memory, and changes them to use the 8 bit address form. +(That is: the linker turns @samp{bset #xx:3,@code{@@}@var{aa}:32} into +@samp{bset #xx:3,@code{@@}@var{aa}:8} whenever the address @var{aa} is in +the top page of memory). + +@item system control instructions +@command{ld} finds all @code{ldc.w, stc.w} instrcutions which use the +32 bit absolute address form, but refer to the top page of memory, and +changes them to use 16 bit address form. +(That is: the linker turns @samp{ldc.w @code{@@}@var{aa}:32,ccr} into +@samp{ldc.w @code{@@}@var{aa}:16,ccr} whenever the address @var{aa} is in +the top page of memory). @end table @ifclear GENERIC diff -uprN binutils-2.15.90.0.3/ld/ldexp.c binutils-2.15.91.0.1/ld/ldexp.c --- binutils-2.15.90.0.3/ld/ldexp.c 2004-03-03 12:24:34.000000000 -0800 +++ binutils-2.15.91.0.1/ld/ldexp.c 2004-05-27 11:26:04.962129149 -0700 @@ -101,6 +101,7 @@ exp_print_token (token_code_type code, i { MAX_K, "MAX_K" }, { REL, "relocatable" }, { DATA_SEGMENT_ALIGN, "DATA_SEGMENT_ALIGN" }, + { DATA_SEGMENT_RELRO_END, "DATA_SEGMENT_RELRO_END" }, { DATA_SEGMENT_END, "DATA_SEGMENT_END" } }; unsigned int idx; @@ -264,14 +265,36 @@ fold_unary (etree_type *tree, result.valid_p = FALSE; break; + case DATA_SEGMENT_RELRO_END: + if (allocation_done != lang_first_phase_enum + && (exp_data_seg.phase == exp_dataseg_align_seen + || exp_data_seg.phase == exp_dataseg_adjust + || exp_data_seg.phase == exp_dataseg_relro_adjust + || allocation_done != lang_allocating_phase_enum)) + { + if (exp_data_seg.phase == exp_dataseg_align_seen + || exp_data_seg.phase == exp_dataseg_relro_adjust) + exp_data_seg.relro_end + = result.value + current_section->bfd_section->vma; + if (exp_data_seg.phase == exp_dataseg_align_seen) + exp_data_seg.phase = exp_dataseg_relro_seen; + result.value = dot - current_section->bfd_section->vma; + } + else + result.valid_p = FALSE; + break; + case DATA_SEGMENT_END: if (allocation_done != lang_first_phase_enum && current_section == abs_output_section && (exp_data_seg.phase == exp_dataseg_align_seen + || exp_data_seg.phase == exp_dataseg_relro_seen || exp_data_seg.phase == exp_dataseg_adjust + || exp_data_seg.phase == exp_dataseg_relro_adjust || allocation_done != lang_allocating_phase_enum)) { - if (exp_data_seg.phase == exp_dataseg_align_seen) + if (exp_data_seg.phase == exp_dataseg_align_seen + || exp_data_seg.phase == exp_dataseg_relro_seen) { exp_data_seg.phase = exp_dataseg_end_seen; exp_data_seg.end = result.value; @@ -392,12 +415,23 @@ fold_binary (etree_type *tree, && current_section == abs_output_section && (exp_data_seg.phase == exp_dataseg_none || exp_data_seg.phase == exp_dataseg_adjust + || exp_data_seg.phase == exp_dataseg_relro_adjust || allocation_done != lang_allocating_phase_enum)) { bfd_vma maxpage = result.value; result.value = align_n (dot, maxpage); - if (exp_data_seg.phase != exp_dataseg_adjust) + if (exp_data_seg.phase == exp_dataseg_relro_adjust) + { + /* Attempt to align DATA_SEGMENT_RELRO_END at + a common page boundary. */ + bfd_vma relro; + + relro = exp_data_seg.relro_end - exp_data_seg.base; + result.value += -relro & (other.value - 1); + exp_data_seg.base = result.value; + } + else if (exp_data_seg.phase != exp_dataseg_adjust) { result.value += dot & (maxpage - 1); if (allocation_done == lang_allocating_phase_enum) @@ -405,6 +439,7 @@ fold_binary (etree_type *tree, exp_data_seg.phase = exp_dataseg_align_seen; exp_data_seg.base = result.value; exp_data_seg.pagesize = other.value; + exp_data_seg.relro_end = 0; } } else if (other.value < maxpage) diff -uprN binutils-2.15.90.0.3/ld/ldexp.h binutils-2.15.91.0.1/ld/ldexp.h --- binutils-2.15.90.0.3/ld/ldexp.h 2004-01-14 13:07:52.000000000 -0800 +++ binutils-2.15.91.0.1/ld/ldexp.h 2004-05-27 11:26:04.978127081 -0700 @@ -95,10 +95,12 @@ extern struct exp_data_seg { enum { exp_dataseg_none, exp_dataseg_align_seen, + exp_dataseg_relro_seen, exp_dataseg_end_seen, + exp_dataseg_relro_adjust, exp_dataseg_adjust } phase; - bfd_vma base, end, pagesize; + bfd_vma base, relro_end, end, pagesize; } exp_data_seg; typedef struct _fill_type fill_type; diff -uprN binutils-2.15.90.0.3/ld/ldgram.y binutils-2.15.91.0.1/ld/ldgram.y --- binutils-2.15.90.0.3/ld/ldgram.y 2004-03-03 12:24:34.000000000 -0800 +++ binutils-2.15.91.0.1/ld/ldgram.y 2004-05-27 11:26:04.991125400 -0700 @@ -128,7 +128,7 @@ static int error_index; %token END %left '(' %token ALIGN_K BLOCK BIND QUAD SQUAD LONG SHORT BYTE -%token SECTIONS PHDRS SORT DATA_SEGMENT_ALIGN DATA_SEGMENT_END +%token SECTIONS PHDRS SORT DATA_SEGMENT_ALIGN DATA_SEGMENT_RELRO_END DATA_SEGMENT_END %token '{' '}' %token SIZEOF_HEADERS OUTPUT_FORMAT FORCE_COMMON_ALLOCATION OUTPUT_ARCH %token INHIBIT_COMMON_ALLOCATION @@ -143,14 +143,14 @@ static int error_index; %token ORIGIN FILL %token LENGTH CREATE_OBJECT_SYMBOLS INPUT GROUP OUTPUT CONSTRUCTORS %token ALIGNMOD AT SUBALIGN PROVIDE -%type assign_op atype attributes_opt +%type assign_op atype attributes_opt sect_constraint %type filename %token CHIP LIST SECT ABSOLUTE LOAD NEWLINE ENDWORD ORDER NAMEWORD ASSERT_K %token FORMAT PUBLIC DEFSYMEND BASE ALIAS TRUNCATE REL %token INPUT_SCRIPT INPUT_MRI_SCRIPT INPUT_DEFSYM CASE EXTERN START %token VERS_TAG VERS_IDENTIFIER %token GLOBAL LOCAL VERSIONK INPUT_VERSION_SCRIPT -%token KEEP +%token KEEP ONLY_IF_RO ONLY_IF_RW %token EXCLUDE_FILE %type vers_defns %type vers_tag @@ -808,6 +808,8 @@ exp : { $$ = exp_binop(ALIGN_K,$3,$5); } | DATA_SEGMENT_ALIGN '(' exp ',' exp ')' { $$ = exp_binop (DATA_SEGMENT_ALIGN, $3, $5); } + | DATA_SEGMENT_RELRO_END '(' exp ')' + { $$ = exp_unop(DATA_SEGMENT_RELRO_END, $3); } | DATA_SEGMENT_END '(' exp ')' { $$ = exp_unop(DATA_SEGMENT_END, $3); } | BLOCK '(' exp ')' @@ -838,22 +840,29 @@ opt_subalign: | { $$ = 0; } ; +sect_constraint: + ONLY_IF_RO { $$ = ONLY_IF_RO; } + | ONLY_IF_RW { $$ = ONLY_IF_RW; } + | { $$ = 0; } + ; + section: NAME { ldlex_expression(); } opt_exp_with_type opt_at opt_subalign { ldlex_popstate (); ldlex_script (); } + sect_constraint '{' { lang_enter_output_section_statement($1, $3, sectype, - 0, $5, $4); + 0, $5, $4, $7); } statement_list_opt '}' { ldlex_popstate (); ldlex_expression (); } memspec_opt memspec_at_opt phdr_opt fill_opt { ldlex_popstate (); - lang_leave_output_section_statement ($15, $12, $14, $13); + lang_leave_output_section_statement ($16, $13, $15, $14); } opt_comma {} diff -uprN binutils-2.15.90.0.3/ld/ldlang.c binutils-2.15.91.0.1/ld/ldlang.c --- binutils-2.15.90.0.3/ld/ldlang.c 2004-04-12 12:56:36.000000000 -0700 +++ binutils-2.15.91.0.1/ld/ldlang.c 2004-05-27 11:26:04.998124495 -0700 @@ -47,6 +47,7 @@ /* Locals variables. */ static struct obstack stat_obstack; +static struct obstack map_obstack; #define obstack_chunk_alloc xmalloc #define obstack_chunk_free free @@ -65,6 +66,7 @@ static struct bfd_hash_table lang_define /* Forward declarations. */ static void exp_init_os (etree_type *); +static void init_map_userdata (bfd *, asection *, void *); static bfd_boolean wildcardp (const char *); static lang_input_statement_type *lookup_name (const char *); static bfd_boolean load_symbols (lang_input_statement_type *, @@ -72,6 +74,8 @@ static bfd_boolean load_symbols (lang_in static struct bfd_hash_entry *lang_definedness_newfunc (struct bfd_hash_entry *, struct bfd_hash_table *, const char *); static void insert_undefined (const char *); +static void print_all_symbols (asection *); +static bfd_boolean sort_def_symbol (struct bfd_link_hash_entry *, void *); static void print_statement (lang_statement_union_type *, lang_output_section_statement_type *); static void print_statement_list (lang_statement_union_type *, @@ -121,10 +125,17 @@ stat_alloc (size_t size) } bfd_boolean -unique_section_p (const char *secnam) +unique_section_p (const asection *sec) { struct unique_sections *unam; + const char *secnam; + if (link_info.relocatable + && sec->owner != NULL + && bfd_is_group_section (sec->owner, sec)) + return TRUE; + + secnam = sec->name; for (unam = unique_section_list; unam; unam = unam->next) if (wildcardp (unam->name) ? fnmatch (unam->name, secnam, 0) == 0 @@ -591,8 +602,8 @@ lang_memory_default (asection *section) return lang_memory_region_lookup (DEFAULT_MEMORY_REGION, FALSE); } -lang_output_section_statement_type * -lang_output_section_find (const char *const name) +static lang_output_section_statement_type * +lang_output_section_find_1 (const char *const name, int constraint) { lang_statement_union_type *u; lang_output_section_statement_type *lookup; @@ -600,18 +611,26 @@ lang_output_section_find (const char *co for (u = lang_output_section_statement.head; u != NULL; u = lookup->next) { lookup = &u->output_section_statement; - if (strcmp (name, lookup->name) == 0) + if (strcmp (name, lookup->name) == 0 + && lookup->constraint != -1 + && (constraint == 0 || constraint == lookup->constraint)) return lookup; } return NULL; } lang_output_section_statement_type * -lang_output_section_statement_lookup (const char *const name) +lang_output_section_find (const char *const name) +{ + return lang_output_section_find_1 (name, 0); +} + +static lang_output_section_statement_type * +lang_output_section_statement_lookup_1 (const char *const name, int constraint) { lang_output_section_statement_type *lookup; - lookup = lang_output_section_find (name); + lookup = lang_output_section_find_1 (name, constraint); if (lookup == NULL) { lookup = new_stat (lang_output_section_statement, stat_ptr); @@ -624,6 +643,7 @@ lang_output_section_statement_lookup (co lookup->next = NULL; lookup->bfd_section = NULL; lookup->processed = 0; + lookup->constraint = constraint; lookup->sectype = normal_section; lookup->addr_tree = NULL; lang_list_init (&lookup->children); @@ -643,6 +663,12 @@ lang_output_section_statement_lookup (co return lookup; } +lang_output_section_statement_type * +lang_output_section_statement_lookup (const char *const name) +{ + return lang_output_section_statement_lookup_1 (name, 0); +} + static void lang_map_flags (flagword flag) { @@ -666,6 +692,7 @@ void lang_map (void) { lang_memory_region_type *m; + bfd *p; minfo (_("\nMemory Configuration\n\n")); fprintf (config.map_file, "%-16s %-18s %-18s %s\n", @@ -711,15 +738,66 @@ lang_map (void) fprintf (config.map_file, _("\nLinker script and memory map\n\n")); + if (! command_line.reduce_memory_overheads) + { + obstack_begin (&map_obstack, 1000); + for (p = link_info.input_bfds; p != (bfd *) NULL; p = p->link_next) + bfd_map_over_sections (p, init_map_userdata, 0); + bfd_link_hash_traverse (link_info.hash, sort_def_symbol, 0); + } print_statements (); } +static void +init_map_userdata (abfd, sec, data) + bfd *abfd ATTRIBUTE_UNUSED; + asection *sec; + void *data ATTRIBUTE_UNUSED; +{ + fat_section_userdata_type *new_data + = ((fat_section_userdata_type *) (stat_alloc + (sizeof (fat_section_userdata_type)))); + + ASSERT (get_userdata (sec) == NULL); + get_userdata (sec) = new_data; + new_data->map_symbol_def_tail = &new_data->map_symbol_def_head; +} + +static bfd_boolean +sort_def_symbol (hash_entry, info) + struct bfd_link_hash_entry *hash_entry; + void *info ATTRIBUTE_UNUSED; +{ + if (hash_entry->type == bfd_link_hash_defined + || hash_entry->type == bfd_link_hash_defweak) + { + struct fat_user_section_struct *ud; + struct map_symbol_def *def; + + ud = get_userdata (hash_entry->u.def.section); + if (! ud) + { + /* ??? What do we have to do to initialize this beforehand? */ + /* The first time we get here is bfd_abs_section... */ + init_map_userdata (0, hash_entry->u.def.section, 0); + ud = get_userdata (hash_entry->u.def.section); + } + else if (!ud->map_symbol_def_tail) + ud->map_symbol_def_tail = &ud->map_symbol_def_head; + def = (struct map_symbol_def *) obstack_alloc (&map_obstack, sizeof *def); + def->entry = hash_entry; + *ud->map_symbol_def_tail = def; + ud->map_symbol_def_tail = &def->next; + } + return TRUE; +} + /* Initialize an output section. */ static void init_os (lang_output_section_statement_type *s) { - section_userdata_type *new; + lean_section_userdata_type *new; if (s->bfd_section != NULL) return; @@ -727,7 +805,7 @@ init_os (lang_output_section_statement_t if (strcmp (s->name, DISCARD_SECTION_NAME) == 0) einfo (_("%P%F: Illegal use of `%s' section\n"), DISCARD_SECTION_NAME); - new = stat_alloc (sizeof (section_userdata_type)); + new = stat_alloc (SECTION_USERDATA_SIZE); s->bfd_section = bfd_get_section_by_name (output_bfd, s->name); if (s->bfd_section == NULL) @@ -1016,14 +1094,20 @@ lang_add_section (lang_statement_list_ty flags = bfd_get_section_flags (section->owner, section); - discard = FALSE; + /* SEC_EXCLUDE is ignored when doing a relocatable link, except in + the special case of debug info. (See bfd/stabs.c) */ + if (link_info.relocatable && (flags & SEC_DEBUGGING) == 0) + { + flags &= ~SEC_EXCLUDE; - /* Discard sections marked with SEC_EXCLUDE if we are doing a final - link. Discard debugging sections marked with SEC_EXCLUDE on a - relocatable link too. */ - if ((flags & SEC_EXCLUDE) != 0 - && ((flags & SEC_DEBUGGING) != 0 || !link_info.relocatable)) - discard = TRUE; + /* Write the modified flag back, to simplify later linker + code. */ + if (section->owner != NULL) + bfd_set_section_flags (section->owner, section, flags); + } + + /* Discard sections marked with SEC_EXCLUDE. */ + discard = (flags & SEC_EXCLUDE) != 0; /* Discard input sections which are assigned to a section named DISCARD_SECTION_NAME. */ @@ -1262,7 +1346,7 @@ output_section_callback (lang_wild_state lang_statement_union_type *before; /* Exclude sections that match UNIQUE_SECTION_LIST. */ - if (unique_section_p (bfd_get_section_name (file->the_bfd, section))) + if (unique_section_p (section)) return; /* If the wild pattern was marked KEEP, the member sections @@ -1308,6 +1392,30 @@ output_section_callback (lang_wild_state } } +/* Check if all sections in a wild statement for a particular FILE + are readonly. */ + +static void +check_section_callback (lang_wild_statement_type *ptr ATTRIBUTE_UNUSED, + struct wildcard_list *sec ATTRIBUTE_UNUSED, + asection *section, + lang_input_statement_type *file ATTRIBUTE_UNUSED, + void *output) +{ + /* Exclude sections that match UNIQUE_SECTION_LIST. */ + if (unique_section_p (section)) + return; + + if (section->output_section == NULL) + { + flagword flags = bfd_get_section_flags (section->owner, section); + + if ((flags & SEC_READONLY) == 0) + ((lang_output_section_statement_type *) output)->all_input_readonly + = FALSE; + } +} + /* This is passed a file name which must have been seen already and added to the statement tree. We will see if it has been opened already and had its symbols read. If not then we'll read it. */ @@ -2061,6 +2169,40 @@ lang_place_undefineds (void) insert_undefined (ptr->name); } +/* Check for all readonly or some readwrite sections. */ + +static void +check_input_sections (lang_statement_union_type *s, + lang_output_section_statement_type *output_section_statement) +{ + for (; s != (lang_statement_union_type *) NULL; s = s->header.next) + { + switch (s->header.type) + { + case lang_wild_statement_enum: + walk_wild (&s->wild_statement, check_section_callback, + output_section_statement); + if (! output_section_statement->all_input_readonly) + return; + break; + case lang_constructors_statement_enum: + check_input_sections (constructor_list.head, + output_section_statement); + if (! output_section_statement->all_input_readonly) + return; + break; + case lang_group_statement_enum: + check_input_sections (s->group_statement.children.head, + output_section_statement); + if (! output_section_statement->all_input_readonly) + return; + break; + default: + break; + } + } +} + /* Open input files and attach to output sections. */ static void @@ -2081,6 +2223,23 @@ map_input_to_output_sections output_section_statement); break; case lang_output_section_statement_enum: + if (s->output_section_statement.constraint) + { + if (s->output_section_statement.constraint == -1) + break; + s->output_section_statement.all_input_readonly = TRUE; + check_input_sections (s->output_section_statement.children.head, + &s->output_section_statement); + if ((s->output_section_statement.all_input_readonly + && s->output_section_statement.constraint == ONLY_IF_RW) + || (!s->output_section_statement.all_input_readonly + && s->output_section_statement.constraint == ONLY_IF_RO)) + { + s->output_section_statement.constraint = -1; + break; + } + } + map_input_to_output_sections (s->output_section_statement.children.head, target, &s->output_section_statement); @@ -2155,6 +2314,8 @@ strip_excluded_output_sections (void) asection *s; os = &u->output_section_statement; + if (os->constraint == -1) + continue; s = os->bfd_section; if (s != NULL && (s->flags & SEC_EXCLUDE) != 0) { @@ -2268,7 +2429,7 @@ print_input_statement (lang_input_statem } /* Print all symbols defined in a particular section. This is called - via bfd_link_hash_traverse. */ + via bfd_link_hash_traverse, or by print_all_symbols. */ static bfd_boolean print_one_symbol (struct bfd_link_hash_entry *hash_entry, void *ptr) @@ -2294,6 +2455,18 @@ print_one_symbol (struct bfd_link_hash_e return TRUE; } +static void +print_all_symbols (sec) + asection *sec; +{ + struct fat_user_section_struct *ud = get_userdata (sec); + struct map_symbol_def *def; + + *ud->map_symbol_def_tail = 0; + for (def = ud->map_symbol_def_head; def; def = def->next) + print_one_symbol (def->entry, sec); +} + /* Print information about an input section to the map file. */ static void @@ -2305,51 +2478,59 @@ print_input_section (lang_input_section_ init_opb (); if (size != 0) { - print_space (); + int len; + bfd_vma addr; + print_space (); minfo ("%s", i->name); - if (i->output_section != NULL) + len = 1 + strlen (i->name); + if (len >= SECTION_NAME_MAP_LENGTH - 1) { - int len; + print_nl (); + len = 0; + } + while (len < SECTION_NAME_MAP_LENGTH) + { + print_space (); + ++len; + } - len = 1 + strlen (i->name); - if (len >= SECTION_NAME_MAP_LENGTH - 1) - { - print_nl (); - len = 0; - } - while (len < SECTION_NAME_MAP_LENGTH) - { - print_space (); - ++len; - } + if (i->output_section != NULL && (i->flags & SEC_EXCLUDE) == 0) + addr = i->output_section->vma + i->output_offset; + else + { + addr = print_dot; + size = 0; + } - minfo ("0x%V %W %B\n", - i->output_section->vma + i->output_offset, TO_ADDR (size), - i->owner); + minfo ("0x%V %W %B\n", addr, TO_ADDR (size), i->owner); - if (i->_cooked_size != 0 && i->_cooked_size != i->_raw_size) - { - len = SECTION_NAME_MAP_LENGTH + 3; + if (size != i->_raw_size) + { + len = SECTION_NAME_MAP_LENGTH + 3; #ifdef BFD64 - len += 16; + len += 16; #else - len += 8; + len += 8; #endif - while (len > 0) - { - print_space (); - --len; - } - - minfo (_("%W (size before relaxing)\n"), i->_raw_size); + while (len > 0) + { + print_space (); + --len; } - bfd_link_hash_traverse (link_info.hash, print_one_symbol, i); + minfo (_("%W (size before relaxing)\n"), i->_raw_size); + } - print_dot = (i->output_section->vma + i->output_offset - + TO_ADDR (size)); + if (i->output_section != NULL && (i->flags & SEC_EXCLUDE) == 0) + { + if (command_line.reduce_memory_overheads) + bfd_link_hash_traverse (link_info.hash, print_one_symbol, i); + else + print_all_symbols (i); + + print_dot = addr + TO_ADDR (size); } } } @@ -2483,7 +2664,7 @@ print_padding_statement (lang_padding_st addr = s->output_offset; if (s->output_section != NULL) addr += s->output_section->vma; - minfo ("0x%V %W ", addr, s->size); + minfo ("0x%V %W ", addr, (bfd_vma) s->size); if (s->fill->size != 0) { @@ -2722,7 +2903,7 @@ size_input_section (lang_statement_union lang_input_section_type *is = &((*this_ptr)->input_section); asection *i = is->section; - if (!is->ifile->just_syms_flag) + if (!is->ifile->just_syms_flag && (i->flags & SEC_EXCLUDE) == 0) { unsigned int alignment_needed; asection *o; @@ -3290,7 +3471,19 @@ lang_size_sections exp_data_seg.phase = exp_dataseg_none; result = lang_size_sections_1 (s, output_section_statement, prev, fill, dot, relax, check_regions); - if (exp_data_seg.phase == exp_dataseg_end_seen) + if (exp_data_seg.phase == exp_dataseg_end_seen + && link_info.relro && exp_data_seg.relro_end) + { + /* If DATA_SEGMENT_ALIGN DATA_SEGMENT_RELRO_END pair was seen, try + to put exp_data_seg.relro on a (common) page boundary. */ + + exp_data_seg.phase = exp_dataseg_relro_adjust; + result = lang_size_sections_1 (s, output_section_statement, prev, fill, + dot, relax, check_regions); + link_info.relro_start = exp_data_seg.base; + link_info.relro_end = exp_data_seg.relro_end; + } + else if (exp_data_seg.phase == exp_dataseg_end_seen) { /* If DATA_SEGMENT_ALIGN DATA_SEGMENT_END pair was seen, check whether a page could be saved in the data segment. */ @@ -3350,9 +3543,11 @@ lang_do_assignments_1 { dot = os->bfd_section->vma; lang_do_assignments_1 (os->children.head, os, os->fill, dot); - dot = (os->bfd_section->vma - + TO_ADDR (os->bfd_section->_raw_size)); - + /* .tbss sections effectively have zero size. */ + if ((os->bfd_section->flags & SEC_HAS_CONTENTS) != 0 + || (os->bfd_section->flags & SEC_THREAD_LOCAL) == 0 + || link_info.relocatable) + dot += TO_ADDR (os->bfd_section->_raw_size); } if (os->load_base) { @@ -3438,10 +3633,13 @@ lang_do_assignments_1 { asection *in = s->input_section.section; - if (in->_cooked_size != 0) - dot += TO_ADDR (in->_cooked_size); - else - dot += TO_ADDR (in->_raw_size); + if ((in->flags & SEC_EXCLUDE) == 0) + { + if (in->_cooked_size != 0) + dot += TO_ADDR (in->_cooked_size); + else + dot += TO_ADDR (in->_raw_size); + } } break; @@ -4008,13 +4206,15 @@ lang_enter_output_section_statement (con enum section_type sectype, etree_type *align, etree_type *subalign, - etree_type *ebase) + etree_type *ebase, + int constraint) { lang_output_section_statement_type *os; current_section = os = - lang_output_section_statement_lookup (output_section_statement_name); + lang_output_section_statement_lookup_1 (output_section_statement_name, + constraint); /* Add this statement to tree. */ #if 0 @@ -4198,12 +4398,6 @@ lang_process (void) if (command_line.gc_sections) lang_gc_sections (); - /* If there were any SEC_MERGE sections, finish their merging, so that - section sizes can be computed. This has to be done after GC of sections, - so that GCed sections are not merged, but before assigning output - sections, since removing whole input sections is hard then. */ - bfd_merge_sections (output_bfd, &link_info); - /* Size up the common data. */ lang_common (); @@ -4216,8 +4410,16 @@ lang_process (void) if (! link_info.relocatable) { + asection *found; + + /* Merge SEC_MERGE sections. This has to be done after GC of + sections, so that GCed sections are not merged, but before + assigning dynamic symbols, since removing whole input sections + is hard then. */ + bfd_merge_sections (output_bfd, &link_info); + /* Look for a text section and set the readonly attribute in it. */ - asection *found = bfd_get_section_by_name (output_bfd, ".text"); + found = bfd_get_section_by_name (output_bfd, ".text"); if (found != NULL) { @@ -4716,6 +4918,8 @@ lang_record_phdrs (void) lang_output_section_phdr_list *pl; os = &u->output_section_statement; + if (os->constraint == -1) + continue; pl = os->phdrs; if (pl != NULL) @@ -4775,7 +4979,8 @@ lang_record_phdrs (void) { lang_output_section_phdr_list *pl; - if (u->output_section_statement.bfd_section == NULL) + if (u->output_section_statement.constraint == -1 + || u->output_section_statement.bfd_section == NULL) continue; for (pl = u->output_section_statement.phdrs; @@ -4847,7 +5052,7 @@ lang_enter_overlay_section (const char * etree_type *size; lang_enter_output_section_statement (name, overlay_vma, normal_section, - 0, overlay_subalign, 0); + 0, overlay_subalign, 0, 0); /* If this is the first section, then base the VMA of future sections on this one. This will work correctly even if `.' is diff -uprN binutils-2.15.90.0.3/ld/ldlang.h binutils-2.15.91.0.1/ld/ldlang.h --- binutils-2.15.90.0.3/ld/ldlang.h 2004-04-12 12:56:36.000000000 -0700 +++ binutils-2.15.91.0.1/ld/ldlang.h 2004-05-27 11:26:04.999124365 -0700 @@ -146,6 +146,8 @@ typedef struct lang_output_section_state int subsection_alignment; /* Alignment of components. */ int section_alignment; /* Alignment of start of section. */ + int constraint; + bfd_boolean all_input_readonly; union etree_union *load_base; @@ -438,7 +440,7 @@ extern lang_output_section_statement_typ enum section_type sectype, etree_type *align, etree_type *subalign, - etree_type *); + etree_type *, int); extern void lang_final (void); extern void lang_process @@ -556,7 +558,7 @@ extern struct bfd_elf_version_deps *lang extern void lang_register_vers_node (const char *, struct bfd_elf_version_tree *, struct bfd_elf_version_deps *); bfd_boolean unique_section_p - (const char *); + (const asection *); extern void lang_add_unique (const char *); extern const char *lang_get_output_target diff -uprN binutils-2.15.90.0.3/ld/ldlex.l binutils-2.15.91.0.1/ld/ldlex.l --- binutils-2.15.90.0.3/ld/ldlex.l 2004-04-12 12:56:36.000000000 -0700 +++ binutils-2.15.91.0.1/ld/ldlex.l 2004-05-27 11:26:05.001124107 -0700 @@ -249,6 +249,7 @@ V_IDENTIFIER [*?.$_a-zA-Z\[\]\-\!\^\\]([ "LENGTH" { RTOKEN(LENGTH);} "ALIGN" { RTOKEN(ALIGN_K);} "DATA_SEGMENT_ALIGN" { RTOKEN(DATA_SEGMENT_ALIGN);} +"DATA_SEGMENT_RELRO_END" { RTOKEN(DATA_SEGMENT_RELRO_END);} "DATA_SEGMENT_END" { RTOKEN(DATA_SEGMENT_END);} "ADDR" { RTOKEN(ADDR);} "LOADADDR" { RTOKEN(LOADADDR);} @@ -294,6 +295,8 @@ V_IDENTIFIER [*?.$_a-zA-Z\[\]\-\!\^\\]([ "COPY" { RTOKEN(COPY);} "INFO" { RTOKEN(INFO);} "OVERLAY" { RTOKEN(OVERLAY);} +"ONLY_IF_RO" { RTOKEN(ONLY_IF_RO); } +"ONLY_IF_RW" { RTOKEN(ONLY_IF_RW); } "o" { RTOKEN(ORIGIN);} "org" { RTOKEN(ORIGIN);} "l" { RTOKEN( LENGTH);} diff -uprN binutils-2.15.90.0.3/ld/ldmain.c binutils-2.15.91.0.1/ld/ldmain.c --- binutils-2.15.90.0.3/ld/ldmain.c 2004-04-12 12:56:36.000000000 -0700 +++ binutils-2.15.91.0.1/ld/ldmain.c 2004-05-27 11:26:05.002123977 -0700 @@ -267,6 +267,7 @@ main (int argc, char **argv) config.has_shared = FALSE; config.split_by_reloc = (unsigned) -1; config.split_by_file = (bfd_size_type) -1; + config.hash_table_size = 0; command_line.force_common_definition = FALSE; command_line.inhibit_common_definition = FALSE; command_line.interpreter = NULL; @@ -274,6 +275,7 @@ main (int argc, char **argv) command_line.warn_mismatch = TRUE; command_line.check_section_addresses = TRUE; command_line.accept_unknown_input_arch = FALSE; + command_line.reduce_memory_overheads = FALSE; /* We initialize DEMANGLING based on the environment variable COLLECT_NO_DEMANGLE. The gcc collect2 program will demangle the @@ -303,6 +305,7 @@ main (int argc, char **argv) link_info.new_dtags = FALSE; link_info.combreloc = TRUE; link_info.eh_frame_hdr = FALSE; + link_info.relro = FALSE; link_info.strip_discarded = TRUE; link_info.strip = strip_none; link_info.discard = discard_sec_merge; @@ -342,6 +345,9 @@ main (int argc, char **argv) lang_has_input_file = FALSE; parse_args (argc, argv); + if (config.hash_table_size != 0) + bfd_hash_set_default_size (config.hash_table_size); + ldemul_set_symbols (); if (link_info.relocatable) diff -uprN binutils-2.15.90.0.3/ld/ldwrite.c binutils-2.15.91.0.1/ld/ldwrite.c --- binutils-2.15.90.0.3/ld/ldwrite.c 2004-01-14 13:07:52.000000000 -0800 +++ binutils-2.15.91.0.1/ld/ldwrite.c 2004-05-27 11:26:05.042118805 -0700 @@ -220,7 +220,8 @@ build_link_order (lang_statement_union_t case lang_input_section_enum: /* Create a new link_order in the output section with this attached */ - if (!statement->input_section.ifile->just_syms_flag) + if (!statement->input_section.ifile->just_syms_flag + && (statement->input_section.section->flags & SEC_EXCLUDE) == 0) { asection *i = statement->input_section.section; asection *output_section = i->output_section; diff -uprN binutils-2.15.90.0.3/ld/lexsup.c binutils-2.15.91.0.1/ld/lexsup.c --- binutils-2.15.90.0.3/ld/lexsup.c 2004-04-12 12:56:36.000000000 -0700 +++ binutils-2.15.91.0.1/ld/lexsup.c 2004-05-27 11:26:05.044118547 -0700 @@ -119,6 +119,7 @@ enum option_values OPTION_FORCE_EXE_SUFFIX, OPTION_GC_SECTIONS, OPTION_NO_GC_SECTIONS, + OPTION_HASH_SIZE, OPTION_CHECK_SECTIONS, OPTION_NO_CHECK_SECTIONS, OPTION_NO_UNDEFINED, @@ -143,7 +144,8 @@ enum option_values OPTION_PIE, OPTION_UNRESOLVED_SYMBOLS, OPTION_WARN_UNRESOLVED_SYMBOLS, - OPTION_ERROR_UNRESOLVED_SYMBOLS + OPTION_ERROR_UNRESOLVED_SYMBOLS, + OPTION_REDUCE_MEMORY_OVERHEADS }; /* The long options. This structure is used for both the option @@ -330,6 +332,8 @@ static const struct ld_option ld_options { {"no-gc-sections", no_argument, NULL, OPTION_NO_GC_SECTIONS}, '\0', NULL, N_("Don't remove unused sections (default)"), TWO_DASHES }, + { {"hash-size=", required_argument, NULL, OPTION_HASH_SIZE}, + '\0', NULL, N_("Set default hash table size close to "), TWO_DASHES }, { {"help", no_argument, NULL, OPTION_HELP}, '\0', NULL, N_("Print option help"), TWO_DASHES }, { {"init", required_argument, NULL, OPTION_INIT}, @@ -366,6 +370,8 @@ static const struct ld_option ld_options '\0', N_("TARGET"), N_("Specify target of output file"), EXACTLY_TWO_DASHES }, { {"qmagic", no_argument, NULL, OPTION_IGNORE}, '\0', NULL, N_("Ignored for Linux compatibility"), ONE_DASH }, + { {"reduce-memory-overheads", no_argument, NULL, OPTION_REDUCE_MEMORY_OVERHEADS}, + '\0', NULL, N_("Reduce memory overheads, possibly taking much longer"), TWO_DASHES }, { {"relax", no_argument, NULL, OPTION_RELAX}, '\0', NULL, N_("Relax branches on certain targets"), TWO_DASHES }, { {"retain-symbols-file", required_argument, NULL, @@ -448,7 +454,7 @@ static const struct ld_option ld_options { {"no-as-needed", no_argument, NULL, OPTION_NO_AS_NEEDED}, '\0', NULL, N_("Always set DT_NEEDED for following dynamic libs"), TWO_DASHES }, { {"wrap", required_argument, NULL, OPTION_WRAP}, - '\0', N_("SYMBOL"), N_("Use wrapper functions for SYMBOL"), TWO_DASHES } + '\0', N_("SYMBOL"), N_("Use wrapper functions for SYMBOL"), TWO_DASHES }, }; #define OPTION_COUNT ARRAY_SIZE (ld_options) @@ -1220,6 +1226,24 @@ parse_args (unsigned argc, char **argv) case OPTION_FINI: link_info.fini_function = optarg; break; + + case OPTION_REDUCE_MEMORY_OVERHEADS: + command_line.reduce_memory_overheads = TRUE; + if (config.hash_table_size == 0) + config.hash_table_size = 1021; + break; + + case OPTION_HASH_SIZE: + { + bfd_size_type new_size; + + new_size = strtoul (optarg, NULL, 0); + if (new_size) + config.hash_table_size = new_size; + else + einfo (_("%P%X: --hash-size needs a numeric argument\n")); + } + break; } } diff -uprN binutils-2.15.90.0.3/ld/mri.c binutils-2.15.91.0.1/ld/mri.c --- binutils-2.15.90.0.3/ld/mri.c 2004-01-14 13:07:52.000000000 -0800 +++ binutils-2.15.91.0.1/ld/mri.c 2004-05-27 11:26:05.046118288 -0700 @@ -220,7 +220,7 @@ mri_draw_tree (void) lang_enter_output_section_statement (p->name, base, p->ok_to_load ? 0 : noload_section, - align, subalign, NULL); + align, subalign, NULL, 0); base = 0; tmp = xmalloc (sizeof *tmp); tmp->next = NULL; diff -uprN binutils-2.15.90.0.3/ld/pe-dll.c binutils-2.15.91.0.1/ld/pe-dll.c --- binutils-2.15.90.0.3/ld/pe-dll.c 2004-04-12 12:56:36.000000000 -0700 +++ binutils-2.15.91.0.1/ld/pe-dll.c 2004-05-27 11:26:05.049117900 -0700 @@ -26,7 +26,6 @@ #include "libiberty.h" #include "safe-ctype.h" -#include #include #include "ld.h" @@ -918,9 +917,9 @@ fill_edata (bfd *abfd, struct bfd_link_i { int s, hint; unsigned char *edirectory; - uint32_t *eaddresses; - uint32_t *enameptrs; - unsigned short *eordinals; + unsigned char *eaddresses; + unsigned char *enameptrs; + unsigned char *eordinals; unsigned char *enamestr; time_t now; @@ -930,10 +929,10 @@ fill_edata (bfd *abfd, struct bfd_link_i /* Note use of array pointer math here. */ edirectory = edata_d; - eaddresses = (uint32_t *) (edata_d + 40); - enameptrs = eaddresses + export_table_size; - eordinals = (unsigned short *) (enameptrs + count_exported_byname); - enamestr = (char *) (eordinals + count_exported_byname); + eaddresses = edata_d + 40; + enameptrs = eaddresses + 4 * export_table_size; + eordinals = enameptrs + 4 * count_exported_byname; + enamestr = eordinals + 2 * count_exported_byname; #define ERVA(ptr) (((unsigned char *)(ptr) - edata_d) \ + edata_s->output_section->vma - image_base) @@ -976,18 +975,18 @@ fill_edata (bfd *abfd, struct bfd_link_i int ord = pe_def_file->exports[s].ordinal; bfd_put_32 (abfd, srva - image_base, - (void *) (eaddresses + ord - min_ordinal)); + eaddresses + 4 * (ord - min_ordinal)); if (!pe_def_file->exports[s].flag_noname) { char *ename = pe_def_file->exports[s].name; - bfd_put_32 (abfd, ERVA (enamestr), (void *) enameptrs); - enameptrs++; + bfd_put_32 (abfd, ERVA (enamestr), enameptrs); + enameptrs += 4; strcpy (enamestr, ename); enamestr += strlen (enamestr) + 1; - bfd_put_16 (abfd, ord - min_ordinal, (void *) eordinals); - eordinals++; + bfd_put_16 (abfd, ord - min_ordinal, eordinals); + eordinals += 2; pe_def_file->exports[s].hint = hint++; } } diff -uprN binutils-2.15.90.0.3/ld/po/fr.po binutils-2.15.91.0.1/ld/po/fr.po --- binutils-2.15.90.0.3/ld/po/fr.po 2004-01-14 13:07:53.000000000 -0800 +++ binutils-2.15.91.0.1/ld/po/fr.po 2004-05-27 11:26:05.199098506 -0700 @@ -1,144 +1,145 @@ # Messages français pour ld. -# Copyright © 1996 Free Software Foundation, Inc. +# Copyright © 2004 Free Software Foundation, Inc. # Michel Robitaille , traducteur depuis/since 1996. # msgid "" msgstr "" -"Project-Id-Version: ld 2.14rel030712\n" -"POT-Creation-Date: 2003-07-11 13:58+0930\n" -"PO-Revision-Date: 2003-07-23 08:00-0500\n" +"Project-Id-Version: ld 2.12.91\n" +"POT-Creation-Date: 2002-07-23 15:58-0400\n" +"PO-Revision-Date: 2004-05-10 08:00-0500\n" "Last-Translator: Michel Robitaille \n" "Language-Team: French \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-1\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: emultempl/armcoff.em:72 +#: emultempl/armcoff.em:71 msgid " --support-old-code Support interworking with old code\n" msgstr " --support-old-code supporter les veilles versions de code\n" -#: emultempl/armcoff.em:73 +#: emultempl/armcoff.em:72 msgid " --thumb-entry= Set the entry point to be Thumb symbol \n" msgstr " --thumb-entry= initialiser le point d'entrée de Thumb symbol à \n" -#: emultempl/armcoff.em:121 +#: emultempl/armcoff.em:141 #, c-format msgid "Errors encountered processing file %s" msgstr "Erreur rencontrées lors du traitement du fichier %s" -#: emultempl/armcoff.em:188 emultempl/pe.em:1396 +#: emultempl/armcoff.em:207 emultempl/pe.em:1422 msgid "%P: warning: '--thumb-entry %s' is overriding '-e %s'\n" msgstr "%P: AVERTISSEMENT: « --thumb-entry %s » écrase « -e %s »\n" -#: emultempl/armcoff.em:193 emultempl/pe.em:1401 +#: emultempl/armcoff.em:212 emultempl/pe.em:1427 msgid "%P: warning: connot find thumb start symbol %s\n" msgstr "%P: AVERTISSEMENT: ne peut repérer le symbole thumb de départ %s\n" -#: emultempl/pe.em:300 +#: emultempl/pe.em:317 msgid " --base_file Generate a base file for relocatable DLLs\n" msgstr " --base_file générer une fichier de base les les DLL relocalisables\n" -#: emultempl/pe.em:301 +#: emultempl/pe.em:318 msgid " --dll Set image base to the default for DLLs\n" msgstr " --dll initialise l'image de base au DLL par défaut\n" -#: emultempl/pe.em:302 +#: emultempl/pe.em:319 msgid " --file-alignment Set file alignment\n" msgstr " --file-alignment initialiser l'alignement du fichier\n" -#: emultempl/pe.em:303 +#: emultempl/pe.em:320 msgid " --heap Set initial size of the heap\n" msgstr " --heap initialiser la taille initiale du monceau\n" -#: emultempl/pe.em:304 +#: emultempl/pe.em:321 msgid " --image-base
Set start address of the executable\n" msgstr " --image-base initialiser l'adresse de début de l'exécutable\n" -#: emultempl/pe.em:305 +#: emultempl/pe.em:322 msgid " --major-image-version Set version number of the executable\n" msgstr " --major-image-version initialiser le numéro de version de l'exécutable\n" -#: emultempl/pe.em:306 +#: emultempl/pe.em:323 msgid " --major-os-version Set minimum required OS version\n" msgstr " --major-os-version initialiser le numéro minimum de version du système d'exploitation\n" -#: emultempl/pe.em:307 +#: emultempl/pe.em:324 msgid " --major-subsystem-version Set minimum required OS subsystem version\n" msgstr " --major-subsystem-version initialiser le numéro minimum de version du sous-système\n" -#: emultempl/pe.em:308 +#: emultempl/pe.em:325 msgid " --minor-image-version Set revision number of the executable\n" msgstr " --minor-image-version initialiser le numéro de révision de l'exécutable\n" -#: emultempl/pe.em:309 +#: emultempl/pe.em:326 msgid " --minor-os-version Set minimum required OS revision\n" msgstr " --minor-os-version initialiser le numéro minimum de version du système d'exploitation\n" -#: emultempl/pe.em:310 +#: emultempl/pe.em:327 msgid " --minor-subsystem-version Set minimum required OS subsystem revision\n" msgstr " --minor-subsystem-version initialiser le numéro minimum de version du sous-système\n" -#: emultempl/pe.em:311 +#: emultempl/pe.em:328 msgid " --section-alignment Set section alignment\n" msgstr " --section-alignment initialiser l'alignement de section\n" -#: emultempl/pe.em:312 +#: emultempl/pe.em:329 msgid " --stack Set size of the initial stack\n" msgstr " --stack initialiser la taille initiale de la pile\n" -#: emultempl/pe.em:313 +#: emultempl/pe.em:330 msgid " --subsystem [:] Set required OS subsystem [& version]\n" msgstr " --subsystem [:] initialiser le sous-système de l'OS requis [&version]\n" -#: emultempl/pe.em:314 +#: emultempl/pe.em:331 msgid " --support-old-code Support interworking with old code\n" msgstr " --support-old-code supporter l'inter-réseautage avec le vieux code\n" -#: emultempl/pe.em:315 +#: emultempl/pe.em:332 msgid " --thumb-entry= Set the entry point to be Thumb \n" msgstr " --thumb-entry= initialiser le point d'entrée de Thumb \n" -#: emultempl/pe.em:317 +#: emultempl/pe.em:334 msgid " --add-stdcall-alias Export symbols with and without @nn\n" msgstr " --add-stdcall-alias exporter les symboles avec et sans @nn\n" -#: emultempl/pe.em:318 +#: emultempl/pe.em:335 msgid " --disable-stdcall-fixup Don't link _sym to _sym@nn\n" msgstr " --disable-stdcall-fixup ne lier _sym à _sym@nn\n" -#: emultempl/pe.em:319 +#: emultempl/pe.em:336 msgid " --enable-stdcall-fixup Link _sym to _sym@nn without warnings\n" msgstr " --enable-stdcall-fixup lier _sym à _sym@nn sans avertissement\n" -#: emultempl/pe.em:320 +#: emultempl/pe.em:337 msgid " --exclude-symbols sym,sym,... Exclude symbols from automatic export\n" msgstr " --exclude-symbols sym,sym,... exclure les symboles de l'exportation automatique\n" -#: emultempl/pe.em:321 +#: emultempl/pe.em:338 msgid " --exclude-libs lib,lib,... Exclude libraries from automatic export\n" msgstr " --exclude-libs libs,lib,... exclure les librairies lors l'exportation automatique\n" -#: emultempl/pe.em:322 +#: emultempl/pe.em:339 msgid " --export-all-symbols Automatically export all globals to DLL\n" msgstr " --export-all-symbols exporter automatiquement tous les globaux au DLL\n" -#: emultempl/pe.em:323 +#: emultempl/pe.em:340 msgid " --kill-at Remove @nn from exported symbols\n" msgstr " --kill-at enlever les @nn des symboles exportés\n" -#: emultempl/pe.em:324 +#: emultempl/pe.em:341 msgid " --out-implib Generate import library\n" msgstr " --out-implib générer la librairie d'importation\n" -#: emultempl/pe.em:325 +#: emultempl/pe.em:342 msgid " --output-def Generate a .DEF file for the built DLL\n" msgstr " --output-def générer le fichier .DEF pour le DLL construit\n" -#: emultempl/pe.em:326 +#: emultempl/pe.em:343 msgid " --warn-duplicate-exports Warn about duplicate exports.\n" msgstr " --warn-duplicate-exports avertir lors de l'exportation avec duplication\n" -#: emultempl/pe.em:327 +#: emultempl/pe.em:344 msgid "" " --compat-implib Create backward compatible import libs;\n" " create __imp_ as well.\n" @@ -147,7 +148,7 @@ msgstr "" " compatibilité arrière; \n" " créer __imp_ aussi\n" -#: emultempl/pe.em:329 +#: emultempl/pe.em:346 msgid "" " --enable-auto-image-base Automatically choose image base for DLLs\n" " unless user specifies one\n" @@ -155,51 +156,33 @@ msgstr "" " --enable-auto-image-base automatiquement choisir l'image de base pour les DLL\n" " à moins que l'usager en ait spécifié une\n" -#: emultempl/pe.em:331 +#: emultempl/pe.em:348 msgid " --disable-auto-image-base Do not auto-choose image base. (default)\n" msgstr " --disable-auto-image-base ne pas choisir automatiquement l'image de base (par défaut)\n" -#: emultempl/pe.em:332 +#: emultempl/pe.em:349 msgid "" -" --dll-search-prefix= When linking dynamically to a dll without\n" -" an importlib, use .dll\n" +" --dll-search-prefix= When linking dynamically to a dll without an\n" +" importlib, use .dll \n" " in preference to lib.dll \n" msgstr "" -" --dll-search-prefix= lors de l'édition de liens dynamiques vers une DLL sans\n" +" --dll-search-prefix= lors de l'édtiion de lien dynamique vers un DLL sans\n" " importlib, utiliser .dll \n" " de préférence à lib.dll \n" -#: emultempl/pe.em:335 +#: emultempl/pe.em:352 msgid "" -" --enable-auto-import Do sophistcated linking of _sym to\n" +" --enable-auto-import Do sophistcated linking of _sym to \n" " __imp_sym for DATA references\n" msgstr "" " --enable-auto-import faire de l'édition de liens sophistiquée de _sym vers \n" " __imp_sym pour les références DATA\n" -#: emultempl/pe.em:337 +#: emultempl/pe.em:354 msgid " --disable-auto-import Do not auto-import DATA items from DLLs\n" msgstr " --disable-auto-image-base ne pas choisir des items DATA auto-importés à partir des DLLs\n" -#: emultempl/pe.em:338 -msgid "" -" --enable-runtime-pseudo-reloc Work around auto-import limitations by\n" -" adding pseudo-relocations resolved at\n" -" runtime.\n" -msgstr "" -" --dll-search-prefix= lors de l'édition de liens dynamiques vers une DLL sans\n" -" importlib, utiliser .dll \n" -" de préférence à lib.dll \n" - -#: emultempl/pe.em:341 -msgid "" -" --disable-runtime-pseudo-reloc Do not add runtime pseudo-relocations for\n" -" auto-imported DATA.\n" -msgstr "" -" --disable-runtime-pseudo-reloc ne pas ajouter la pseudo-relocalisation lors de l'exécution\n" -" les DONNÉES auto-importées.\n" - -#: emultempl/pe.em:343 +#: emultempl/pe.em:355 msgid "" " --enable-extra-pe-debug Enable verbose debug output when building\n" " or linking to DLLs (esp. auto-import)\n" @@ -208,82 +191,85 @@ msgstr "" " de mise au point lors de la construction ou du lien\n" " vers un DLLs (spécialement en auto-import)\n" -#: emultempl/pe.em:412 +#: emultempl/pe.em:424 msgid "%P: warning: bad version number in -subsystem option\n" msgstr "%P: AVERTISSEMENT: mauvais numéro de version dans l'option -subsystem\n" -#: emultempl/pe.em:448 +#: emultempl/pe.em:460 msgid "%P%F: invalid subsystem type %s\n" msgstr "%P%F: type de sous-système invalide %s\n" -#: emultempl/pe.em:460 +#: emultempl/pe.em:475 msgid "%P%F: invalid hex number for PE parameter '%s'\n" msgstr "%P%F: nombre hexadécimal invalide pour un paramètre PE « %s »\n" -#: emultempl/pe.em:477 +#: emultempl/pe.em:493 msgid "%P%F: strange hex info for PE parameter '%s'\n" msgstr "%P%F: info étrange en hexadécimal pour un paramètre PE « %s »\n" -#: emultempl/pe.em:494 +#: emultempl/pe.em:532 #, c-format msgid "%s: Can't open base file %s\n" msgstr "%s: ne peut ouvrir le fichier de base %s\n" -#: emultempl/pe.em:707 +#: emultempl/pe.em:738 msgid "%P: warning, file alignment > section alignment.\n" msgstr "%P: AVERTISSEMENT, alignement de fichier > alignement de section\n" -#: emultempl/pe.em:794 emultempl/pe.em:821 +#: emultempl/pe.em:822 emultempl/pe.em:848 #, c-format msgid "Warning: resolving %s by linking to %s\n" msgstr "AVERTISSEMENT: résolution de %s par un lien vers %s\n" -#: emultempl/pe.em:799 emultempl/pe.em:826 +#: emultempl/pe.em:827 emultempl/pe.em:853 msgid "Use --enable-stdcall-fixup to disable these warnings\n" msgstr "Utiliser --enable-stdcall-fixup pour inhiber les avertissements\n" -#: emultempl/pe.em:800 emultempl/pe.em:827 +#: emultempl/pe.em:828 emultempl/pe.em:854 msgid "Use --disable-stdcall-fixup to disable these fixups\n" msgstr "Utiliser --disable-stdcall-fixup pour inhiber les correctifs\n" -#: emultempl/pe.em:846 -#, c-format +#: emultempl/pe.em:879 msgid "%C: Cannot get section contents - auto-import exception\n" msgstr "%C: ne peut obtenir le contenu de section - exception auto-import\n" -#: emultempl/pe.em:883 +#: emultempl/pe.em:887 +msgid "%C: variable '%T' can't be auto-imported. Please read the documentation for ld's --enable-auto-import for details.\n" +msgstr "%C: variable « %T » ne peut être auto-importée. SVP lire la documentation de ld --enable-auto-import pour plus de détails.\n" + +#: emultempl/pe.em:916 #, c-format msgid "Info: resolving %s by linking to %s (auto-import)\n" msgstr "Info: résolution de %s par un lien vers %s (auto-importé)\n" -#: emultempl/pe.em:954 +#: emultempl/pe.em:997 msgid "%F%P: PE operations on non PE file.\n" msgstr "%F%P: operations PE sur des fichiers non PE.\n" -#: emultempl/pe.em:1188 +#: emultempl/pe.em:1226 #, c-format msgid "Errors encountered processing file %s\n" msgstr "Erreurs rencontrées lors du traitement du fichier %s\n" -#: emultempl/pe.em:1211 +#: emultempl/pe.em:1249 #, c-format msgid "Errors encountered processing file %s for interworking" msgstr "Erreurs rencontrées lors du traitement du fichier %s pour l'inter-réseautage" -#: emultempl/pe.em:1273 ldlang.c:1904 ldlang.c:4397 ldlang.c:4428 -#: ldmain.c:1122 +#: emultempl/pe.em:1305 ldlang.c:2065 ldlang.c:4608 ldlang.c:4641 +#: ldmain.c:1061 msgid "%P%F: bfd_link_hash_lookup failed: %E\n" msgstr "%P%F: bfd_link_hash_lookup en échec: %E\n" -#: ldcref.c:153 +#: ldcref.c:158 msgid "%X%P: bfd_hash_table_init of cref table failed: %E\n" msgstr "%X%P: bfd_hash_table_init de la tacle cref en échec: %E\n" -#: ldcref.c:159 +#: ldcref.c:164 msgid "%X%P: cref_hash_lookup failed: %E\n" msgstr "%X%P: cref_hash_lookup en échec: %E\n" -#: ldcref.c:225 +#: ldcref.c:235 msgid "" "\n" "Cross Reference Table\n" @@ -293,31 +279,31 @@ msgstr "" "Table de référence croisé\n" "\n" -#: ldcref.c:226 +#: ldcref.c:236 msgid "Symbol" msgstr "Symbole" -#: ldcref.c:234 +#: ldcref.c:244 msgid "File\n" msgstr "Fichier\n" -#: ldcref.c:238 +#: ldcref.c:248 msgid "No symbols\n" msgstr "Aucun symbol\n" -#: ldcref.c:384 +#: ldcref.c:400 msgid "%P: symbol `%T' missing from main hash table\n" msgstr "%P: symbole « %T » manquant dans la table de hachage principale\n" -#: ldcref.c:448 +#: ldcref.c:465 msgid "%B%F: could not read symbols; %E\n" msgstr "%B%F: ne peut lire les symboles; %E\n" -#: ldcref.c:452 ldmain.c:1187 ldmain.c:1191 +#: ldcref.c:469 ldmain.c:1127 ldmain.c:1131 msgid "%B%F: could not read symbols: %E\n" msgstr "%B%F: ne peut lire les symboles: %E\n" -#: ldcref.c:517 ldcref.c:524 ldmain.c:1234 ldmain.c:1241 +#: ldcref.c:537 ldcref.c:544 ldmain.c:1177 ldmain.c:1184 msgid "%B%F: could not read relocs: %E\n" msgstr "%B%F: ne peut lire les relocalisations: %E\n" @@ -325,27 +311,27 @@ msgstr "%B%F: ne peut lire les relocalis #. in OUTSECNAME. This reloc is from a section which is #. mapped into a section from which references to OUTSECNAME #. are prohibited. We must report an error. -#: ldcref.c:543 +#: ldcref.c:563 msgid "%X%C: prohibited cross reference from %s to `%T' in %s\n" msgstr "%X%C: référence croisée prohibé de %s vers « %T » dans %s\n" -#: ldctor.c:84 +#: ldctor.c:88 msgid "%P%X: Different relocs used in set %s\n" msgstr "%P%X: différentes relocalisations utilisées dans l'ensemble %s\n" -#: ldctor.c:102 +#: ldctor.c:106 msgid "%P%X: Different object file formats composing set %s\n" msgstr "%P%X: différents format de fichiers objet composant l'ensemble %s\n" -#: ldctor.c:281 ldctor.c:295 +#: ldctor.c:288 ldctor.c:302 msgid "%P%X: %s does not support reloc %s for set %s\n" msgstr "%P%X: %s ne supporter pas la relocalisation %s pour l'ensemble %s\n" -#: ldctor.c:316 +#: ldctor.c:323 msgid "%P%X: Unsupported size %d for set %s\n" msgstr "%P%X: taille non supportée %d pour l'ensemble %s\n" -#: ldctor.c:337 +#: ldctor.c:344 msgid "" "\n" "Set Symbol\n" @@ -355,150 +341,135 @@ msgstr "" "Ensemble Symbole\n" "\n" -#: ldemul.c:247 -#, c-format +#: ldemul.c:225 msgid "%S SYSLIB ignored\n" msgstr "%S SYSLIB ignoré\n" -#: ldemul.c:254 -#, c-format +#: ldemul.c:232 msgid "%S HLL ignored\n" msgstr "%S HLL ignoré\n" -#: ldemul.c:275 +#: ldemul.c:253 msgid "%P: unrecognised emulation mode: %s\n" msgstr "%P: mode d'émulation non reconnu: %s\n" -#: ldemul.c:276 +#: ldemul.c:254 msgid "Supported emulations: " msgstr "Émulations supportées: " -#: ldemul.c:320 +#: ldemul.c:298 msgid " no emulation specific options.\n" msgstr " aucune option spécifique d'émulation.\n" -#: ldexp.c:148 +#: ldexp.c:174 msgid "%F%P: %s uses undefined section %s\n" msgstr "%F%P: %s utilise une section indéfinie %s\n" -#: ldexp.c:150 +#: ldexp.c:176 msgid "%F%P: %s forward reference of section %s\n" msgstr "%F%P: %s référence avant de la section %s\n" -#: ldexp.c:355 -#, c-format +#: ldexp.c:304 msgid "%F%S %% by zero\n" msgstr "%F%S %% par zéro\n" -#: ldexp.c:362 -#, c-format +#: ldexp.c:311 msgid "%F%S / by zero\n" msgstr "%F%S / by zéro\n" -#: ldexp.c:533 -#, c-format +#: ldexp.c:463 msgid "%X%S: unresolvable symbol `%s' referenced in expression\n" msgstr "%X%S: symbole non résolu « %s » référencé dans l'expression\n" -#: ldexp.c:553 -#, c-format +#: ldexp.c:483 msgid "%F%S: undefined symbol `%s' referenced in expression\n" msgstr "%F%S: symbole non résolu « %s » référencé dans l'expression\n" -#: ldexp.c:677 -#, c-format +#: ldexp.c:685 msgid "%F%S can not PROVIDE assignment to location counter\n" msgstr "%F%S ne peut FOURNIR une assignation au compteur de localisation\n" -#: ldexp.c:687 -#, c-format +#: ldexp.c:695 msgid "%F%S invalid assignment to location counter\n" msgstr "%F%S affection invalide au compteur de localisation\n" -#: ldexp.c:691 -#, c-format +#: ldexp.c:699 msgid "%F%S assignment to location counter invalid outside of SECTION\n" msgstr "%F%S affection au compteur de localisation invalide en dehors de la SECTION\n" -#: ldexp.c:700 +#: ldexp.c:708 msgid "%F%S cannot move location counter backwards (from %V to %V)\n" msgstr "%F%S ne peut déplacer le compteur de localisation par en arrière (de %V vers %V)\n" -#: ldexp.c:727 +#: ldexp.c:735 msgid "%P%F:%s: hash creation failed\n" msgstr "%P%F:%s: création de la table de hachage en échec\n" -#: ldexp.c:1003 ldexp.c:1035 -#, c-format +#: ldexp.c:1037 ldexp.c:1071 msgid "%F%S nonconstant expression for %s\n" msgstr "%F%S expression d'une non constante: %s\n" -#: ldexp.c:1089 -#, c-format +#: ldexp.c:1126 msgid "%F%S non constant expression for %s\n" msgstr "%F%S expression de non constante: %s\n" -#: ldfile.c:144 +#: ldfile.c:105 #, c-format msgid "attempt to open %s failed\n" msgstr "échec de la tentative d'ouverture de %s\n" -#: ldfile.c:146 +#: ldfile.c:107 #, c-format msgid "attempt to open %s succeeded\n" msgstr "succès de la tentative d'ouverture de %s\n" -#: ldfile.c:152 +#: ldfile.c:113 msgid "%F%P: invalid BFD target `%s'\n" msgstr "%F%P: cible BFD invalide « %s »\n" -#: ldfile.c:258 ldfile.c:275 +#: ldfile.c:142 msgid "%P: skipping incompatible %s when searching for %s\n" msgstr "%P: escamotage incompatible %s lors de la recherche de %s\n" -#: ldfile.c:377 +#: ldfile.c:234 msgid "%F%P: cannot open %s for %s: %E\n" msgstr "%F%P: ne peut ouvrir %s pour %s: %E\n" -#: ldfile.c:380 +#: ldfile.c:237 msgid "%F%P: cannot open %s: %E\n" msgstr "%F%P: ne peut ouvrir %s: %E\n" -#: ldfile.c:410 -msgid "%F%P: cannot find %s inside %s\n" -msgstr "%F%P: ne peut trouver %s à l'intérieur de %s\n" - -#: ldfile.c:413 +#: ldfile.c:267 msgid "%F%P: cannot find %s\n" msgstr "%F%P: ne peut trouver %s\n" -#: ldfile.c:430 ldfile.c:446 +#: ldfile.c:286 ldfile.c:302 #, c-format msgid "cannot find script file %s\n" msgstr "ne peut repérer le fichier de scripts %s\n" -#: ldfile.c:432 ldfile.c:448 +#: ldfile.c:288 ldfile.c:304 #, c-format msgid "opened script file %s\n" msgstr "fichier de scripts ouvert %s\n" -#: ldfile.c:492 +#: ldfile.c:353 msgid "%P%F: cannot open linker script file %s: %E\n" msgstr "%P%F: ne peut ouvrir le fichier de scripts de l'éditeur de liens %s: %E\n" -#: ldfile.c:529 +#: ldfile.c:391 msgid "%P%F: unknown architecture: %s\n" msgstr "%P%F: architecture inconnue: %s\n" -#: ldfile.c:543 +#: ldfile.c:407 msgid "%P%F: target architecture respecified\n" msgstr "%P%F: architecture cible re-spécifiée\n" -#: ldfile.c:594 +#: ldfile.c:461 msgid "%P%F: cannot represent machine `%s'\n" msgstr "%P%F: ne peut représenter la machine « %s »\n" -#: ldlang.c:640 +#: ldlang.c:784 msgid "" "\n" "Memory Configuration\n" @@ -508,23 +479,23 @@ msgstr "" "Configuration mémoire\n" "\n" -#: ldlang.c:642 +#: ldlang.c:786 msgid "Name" msgstr "Nom" -#: ldlang.c:642 +#: ldlang.c:786 msgid "Origin" msgstr "Origine" -#: ldlang.c:642 +#: ldlang.c:786 msgid "Length" msgstr "Longueur" -#: ldlang.c:642 +#: ldlang.c:786 msgid "Attributes" msgstr "Attributs" -#: ldlang.c:682 +#: ldlang.c:828 msgid "" "\n" "Linker script and memory map\n" @@ -534,168 +505,163 @@ msgstr "" "Script de l'éditeurs de liens and table de projection mémoire\n" "\n" -#: ldlang.c:698 +#: ldlang.c:845 msgid "%P%F: Illegal use of `%s' section\n" msgstr "%P%F: utilisation illégale de la section « %s »\n" -#: ldlang.c:707 +#: ldlang.c:855 msgid "%P%F: output format %s cannot represent section called %s\n" msgstr "%P%F: format de sortie %s ne peut représenter la section %s\n" -#: ldlang.c:867 +#: ldlang.c:1016 msgid "%P: %B: warning: ignoring duplicate section `%s'\n" msgstr "%P: %B: AVERTISSEMENT: section dupliquée ignorée « %s »\n" -#: ldlang.c:870 +#: ldlang.c:1019 msgid "%P: %B: warning: ignoring duplicate `%s' section symbol `%s'\n" msgstr "%P: %B: AVERTISSEMENT: duplication ignorée « %s » dans la section symbole « %s »\n" -#: ldlang.c:884 +#: ldlang.c:1033 msgid "%P: %B: warning: duplicate section `%s' has different size\n" msgstr "%P: %B: AVERTISSEMENT: section dupliquée « %s » a un taille différente\n" -#: ldlang.c:936 +#: ldlang.c:1084 msgid "%P%F: Failed to create hash table\n" msgstr "%P%F: échec de création de la table de hachage\n" -#: ldlang.c:1351 +#: ldlang.c:1503 msgid "%B: file not recognized: %E\n" msgstr "%B: fichier non reconnue: %E\n" -#: ldlang.c:1352 +#: ldlang.c:1504 msgid "%B: matching formats:" msgstr "%B: formats concordants:" -#: ldlang.c:1359 +#: ldlang.c:1511 msgid "%F%B: file not recognized: %E\n" msgstr "%F%B: fichier non reconnu: %E\n" -#: ldlang.c:1418 +#: ldlang.c:1567 msgid "%F%B: member %B in archive is not an object\n" msgstr "%F%B: membre %B dans l'archive n'est pas un objet\n" -#: ldlang.c:1429 ldlang.c:1443 +#: ldlang.c:1578 ldlang.c:1592 msgid "%F%B: could not read symbols: %E\n" msgstr "%F%B: ne peut lire les symboles: %E\n" -#: ldlang.c:1698 +#: ldlang.c:1853 msgid "%P: warning: could not find any targets that match endianness requirement\n" msgstr "" "%P: AVERTISSEMENT: ne peut repérer les cibles qui concordent avec\n" "les types de système à octets de poids faible ou fort requis\n" -#: ldlang.c:1711 +#: ldlang.c:1866 msgid "%P%F: target %s not found\n" msgstr "%P%F: cible %s non trouvée\n" -#: ldlang.c:1713 +#: ldlang.c:1868 msgid "%P%F: cannot open output file %s: %E\n" msgstr "%P%F: ne peut ouvrir le fichier de sortie %s: %E\n" -#: ldlang.c:1723 +#: ldlang.c:1878 msgid "%P%F:%s: can not make object file: %E\n" msgstr "%P%F:%s: ne peut créer le fichier objet: %E\n" -#: ldlang.c:1727 +#: ldlang.c:1882 msgid "%P%F:%s: can not set architecture: %E\n" msgstr "%P%F:%s: ne peut initialiser l'architecture: %E\n" -#: ldlang.c:1731 +#: ldlang.c:1886 msgid "%P%F: can not create link hash table: %E\n" msgstr "%P%F: ne peut créer un lien vers la table de hachage: %E\n" -#: ldlang.c:2069 +#: ldlang.c:2235 msgid " load address 0x%V" msgstr " address de chargement 0x%V" -#: ldlang.c:2204 +#: ldlang.c:2375 msgid "%W (size before relaxing)\n" msgstr "%W (taille avant relaxe)\n" -#: ldlang.c:2288 +#: ldlang.c:2462 #, c-format msgid "Address of section %s set to " msgstr "Adresse de la section %s initialisé à " -#: ldlang.c:2443 +#: ldlang.c:2623 #, c-format msgid "Fail with %d\n" msgstr "Échec avec %d\n" -#: ldlang.c:2683 +#: ldlang.c:2868 msgid "%X%P: section %s [%V -> %V] overlaps section %s [%V -> %V]\n" msgstr "%X%P: section %s [%V -> %V] chevauche la section %s [%V -> %V]\n" -#: ldlang.c:2711 +#: ldlang.c:2897 msgid "%X%P: address 0x%v of %B section %s is not within region %s\n" msgstr "%X%P: l'adresse 0x%v de %B de la section %s n'est pas dans la région %s\n" -#: ldlang.c:2719 +#: ldlang.c:2905 msgid "%X%P: region %s is full (%B section %s)\n" msgstr "%X%P: région %s est pleine (%B section %s)\n" -#: ldlang.c:2770 +#: ldlang.c:2955 msgid "%P%X: Internal error on COFF shared library section %s\n" msgstr "%P%X: erreur interne dans la section partagée de la librairie de COFF %s\n" -#: ldlang.c:2826 -msgid "%P%F: error: no memory region specified for loadable section `%s'\n" -msgstr "%P%F: ERREUR: pas de région mémoire spécifiée pour la section chargeable « %s »\n" - -#: ldlang.c:2830 -msgid "%P: warning: no memory region specified for loadable section `%s'\n" -msgstr "%P: AVERTISSEMENT: pas de région mémoire spécifiée pour la section chargeable « %s »\n" +#: ldlang.c:2999 +msgid "%P: warning: no memory region specified for section `%s'\n" +msgstr "%P: AVERTISSEMENT: pas de région mémoire spécifiée pour la section « %s »\n" -#: ldlang.c:2846 +#: ldlang.c:3014 msgid "%P: warning: changing start of section %s by %u bytes\n" msgstr "%P: AVERTISSEMENT: modification du début de section %s de %u octets\n" -#: ldlang.c:2859 -#, c-format +#: ldlang.c:3028 msgid "%F%S: non constant address expression for section %s\n" msgstr "%F%S: adresse d'expression n'est pas une constante pour la section %s\n" -#: ldlang.c:3036 +#: ldlang.c:3203 msgid "%P%F: can't relax section: %E\n" msgstr "%P%F: ne peut relâcher la section: %E\n" -#: ldlang.c:3232 +#: ldlang.c:3398 msgid "%F%P: invalid data statement\n" msgstr "%F%P: déclaration invalide de données\n" -#: ldlang.c:3269 +#: ldlang.c:3435 msgid "%F%P: invalid reloc statement\n" msgstr "%F%P: déclaration invalide de relocalisation\n" -#: ldlang.c:3408 +#: ldlang.c:3574 msgid "%P%F:%s: can't set start address\n" msgstr "%P%F:%s: ne peut initialiser l'adresse de départ\n" -#: ldlang.c:3421 ldlang.c:3439 +#: ldlang.c:3587 ldlang.c:3605 msgid "%P%F: can't set start address\n" msgstr "%P%F: ne peut initialiser l'adresse de départ\n" -#: ldlang.c:3433 +#: ldlang.c:3599 msgid "%P: warning: cannot find entry symbol %s; defaulting to %V\n" msgstr "%P: AVERTISSEMENT: ne peut trouver le symbole d'entrée %s; utilise par défaut %V\n" -#: ldlang.c:3444 +#: ldlang.c:3610 msgid "%P: warning: cannot find entry symbol %s; not setting start address\n" msgstr "%P: AVERTISSEMENT: ne peut trouver le symbole d'entrée %s; pas d'initialisation de l'adresse de départ\n" -#: ldlang.c:3488 +#: ldlang.c:3660 msgid "%P%F: Relocatable linking with relocations from format %s (%B) to format %s (%B) is not supported\n" msgstr "%P%F: liaison relocalisable avec relocalisation à partir du format %s (%B) au format %s (%B) n'est pas supportée\n" -#: ldlang.c:3497 +#: ldlang.c:3669 msgid "%P: warning: %s architecture of input file `%B' is incompatible with %s output\n" msgstr "%P: AVERTISSEMENT: architecture %s du fichier d'entrée « %B » est incompatible avec la sortie %s\n" -#: ldlang.c:3518 +#: ldlang.c:3690 msgid "%E%X: failed to merge target specific data of file %B\n" msgstr "%E%X: échec de fusion des données spécifiques cibles du fichier %B\n" -#: ldlang.c:3604 +#: ldlang.c:3779 msgid "" "\n" "Allocating common symbols\n" @@ -703,7 +669,7 @@ msgstr "" "\n" "Allocation des symboles communs\n" -#: ldlang.c:3605 +#: ldlang.c:3780 msgid "" "Common symbol size file\n" "\n" @@ -714,158 +680,158 @@ msgstr "" #. This message happens when using the #. svr3.ifile linker script, so I have #. disabled it. -#: ldlang.c:3681 +#: ldlang.c:3858 msgid "%P: no [COMMON] command, defaulting to .bss\n" msgstr "%P: pas de commande [COMMUNE], utilisation par défaut de .bss\n" -#: ldlang.c:3737 +#: ldlang.c:3917 msgid "%P%F: invalid syntax in flags\n" msgstr "%P%F: syntaxe invalide dans les fanions\n" -#: ldlang.c:4325 +#: ldlang.c:4532 msgid "%P%Fmultiple STARTUP files\n" msgstr "%P%F fichiers multiples de DÉPART\n" -#: ldlang.c:4368 +#: ldlang.c:4575 msgid "%X%P:%S: section has both a load address and a load region\n" msgstr "%X%P:%S: section a à la fois une adresse de chargement et une région de chargement\n" -#: ldlang.c:4608 +#: ldlang.c:4825 msgid "%F%P: bfd_record_phdr failed: %E\n" msgstr "%F%P: bfd_record_phdr en échec: %E\n" -#: ldlang.c:4627 +#: ldlang.c:4844 msgid "%X%P: section `%s' assigned to non-existent phdr `%s'\n" msgstr "%X%P: section « %s » affectée à phdr inexistent « %s »\n" -#: ldlang.c:4919 +#: ldlang.c:5143 msgid "%X%P: unknown language `%s' in version information\n" msgstr "%X%P: langage inconnue « %s » dans l'information de la version\n" -#: ldlang.c:4969 +#: ldlang.c:5195 msgid "%X%P: anonymous version tag cannot be combined with other version tags\n" msgstr "%X%P: étiquette de version anonyme ne peut être combinée avec d'autres étiquettes de version\n" -#: ldlang.c:4977 +#: ldlang.c:5202 msgid "%X%P: duplicate version tag `%s'\n" msgstr "%X%P: duplication de l'étiquette de version « %s »\n" -#: ldlang.c:4990 ldlang.c:5003 +#: ldlang.c:5215 ldlang.c:5228 msgid "%X%P: duplicate expression `%s' in version information\n" msgstr "%X%P: duplication de l'expression « %s » dans l'information de version\n" -#: ldlang.c:5043 +#: ldlang.c:5270 msgid "%X%P: unable to find version dependency `%s'\n" msgstr "%X%P: incapable de repérer les dépendences de version « %s »\n" -#: ldlang.c:5065 +#: ldlang.c:5292 msgid "%X%P: unable to read .exports section contents\n" msgstr "%X%P: incapable de lire le contenu de la section .exports\n" -#: ldmain.c:247 +#: ldmain.c:198 msgid "%X%P: can't set BFD default target to `%s': %E\n" msgstr "%X%P: ne peut initialiser la cible par défaut BFD à « %s »: %E\n" -#: ldmain.c:349 +#: ldmain.c:290 msgid "%P%F: -r and --mpc860c0 may not be used together\n" msgstr "%P%F: -r et --mpc860c0 ne peuvent être utilisés ensemble\n" -#: ldmain.c:351 +#: ldmain.c:292 msgid "%P%F: --relax and -r may not be used together\n" msgstr "%P%F: --relax et -r ne peuvent être utilisés ensemble\n" -#: ldmain.c:353 +#: ldmain.c:294 msgid "%P%F: -r and -shared may not be used together\n" msgstr "%P%F: -r et -shared ne peuvent être utilisés ensemble\n" -#: ldmain.c:359 +#: ldmain.c:300 msgid "%P%F: -F may not be used without -shared\n" msgstr "%P%F: -F ne peut être utilisé sans -shared\n" -#: ldmain.c:361 +#: ldmain.c:302 msgid "%P%F: -f may not be used without -shared\n" msgstr "%P%F: -f ne peut être utilisé sans -shared\n" -#: ldmain.c:403 +#: ldmain.c:341 msgid "using external linker script:" msgstr "utilisation du script externe d'édition de liens:" -#: ldmain.c:405 +#: ldmain.c:343 msgid "using internal linker script:" msgstr "utilisation du script interne d'édition de liens:" -#: ldmain.c:439 +#: ldmain.c:377 msgid "%P%F: no input files\n" msgstr "%P%F: aucun fichier d'entrée\n" -#: ldmain.c:443 +#: ldmain.c:382 msgid "%P: mode %s\n" msgstr "%P: mode %s\n" -#: ldmain.c:459 +#: ldmain.c:399 msgid "%P%F: cannot open map file %s: %E\n" msgstr "%P%F: ne peut ouvrir le fichier de la table de projection %s: %E\n" -#: ldmain.c:489 +#: ldmain.c:432 msgid "%P: link errors found, deleting executable `%s'\n" msgstr "%P: erreurs de lien trouvés, destruction de l'exécutable « %s »\n" -#: ldmain.c:498 +#: ldmain.c:443 msgid "%F%B: final close failed: %E\n" msgstr "%F%B: fermeture finale en échec: %E\n" -#: ldmain.c:524 +#: ldmain.c:467 msgid "%X%P: unable to open for source of copy `%s'\n" msgstr "%X%P: incapable d'ouvrir la copie source de « %s »\n" -#: ldmain.c:527 +#: ldmain.c:469 msgid "%X%P: unable to open for destination of copy `%s'\n" msgstr "%X%P: incpapable d'ouvrir la copie destination de « %s »\n" -#: ldmain.c:534 +#: ldmain.c:475 msgid "%P: Error writing file `%s'\n" msgstr "%P: erreur lors de l'écriture du fichier « %s »\n" -#: ldmain.c:539 pe-dll.c:1443 +#: ldmain.c:481 pe-dll.c:1463 #, c-format msgid "%P: Error closing file `%s'\n" msgstr "%P: erreur lors de la fermeture du fichier « %s »\n" -#: ldmain.c:555 +#: ldmain.c:498 #, c-format msgid "%s: total time in link: %ld.%06ld\n" msgstr "%s: temps total d'édition de liens: %ld.%06ld\n" -#: ldmain.c:558 +#: ldmain.c:501 #, c-format msgid "%s: data size %ld\n" msgstr "%s: tailles des données %ld\n" -#: ldmain.c:596 +#: ldmain.c:542 msgid "%P%F: missing argument to -m\n" msgstr "%P%F: argument manquant pour -m\n" -#: ldmain.c:741 ldmain.c:759 ldmain.c:789 +#: ldmain.c:670 ldmain.c:691 ldmain.c:722 msgid "%P%F: bfd_hash_table_init failed: %E\n" msgstr "%P%F: bfd_hash_table_init en échec: %E\n" -#: ldmain.c:745 ldmain.c:763 +#: ldmain.c:675 ldmain.c:694 msgid "%P%F: bfd_hash_lookup failed: %E\n" msgstr "%P%F: bfd_hash_lookup en échec: %E\n" -#: ldmain.c:777 +#: ldmain.c:709 msgid "%X%P: error: duplicate retain-symbols-file\n" msgstr "%X%P: erreur: duplication dans retain-symbols-file\n" -#: ldmain.c:819 +#: ldmain.c:753 msgid "%P%F: bfd_hash_lookup for insertion failed: %E\n" msgstr "%P%F: bfd_hash_lookup en échec lors d'une insertion: %E\n" -#: ldmain.c:824 +#: ldmain.c:758 msgid "%P: `-retain-symbols-file' overrides `-s' and `-S'\n" msgstr "%P: « -retain-symbols-file » écrase les options « -s » et « -S »\n" -#: ldmain.c:899 +#: ldmain.c:834 msgid "" "Archive member included because of file (symbol)\n" "\n" @@ -873,155 +839,154 @@ msgstr "" "Membre de l'archive est inclu en raison du fichier (symbole)\n" "\n" -#: ldmain.c:969 +#: ldmain.c:905 msgid "%X%C: multiple definition of `%T'\n" msgstr "%X%C: définitions multiples de « %T »\n" -#: ldmain.c:972 +#: ldmain.c:908 msgid "%D: first defined here\n" msgstr "%D: défini pour la première fois ici\n" -#: ldmain.c:976 +#: ldmain.c:912 msgid "%P: Disabling relaxation: it will not work with multiple definitions\n" msgstr "%P: désactivation de la relâche: il ne pourra pas travailler avec des définitions multiples\n" -#: ldmain.c:1006 +#: ldmain.c:943 msgid "%B: warning: definition of `%T' overriding common\n" msgstr "%B: AVERTISSEMENT: définition de « %T » écrase le commun\n" -#: ldmain.c:1009 +#: ldmain.c:946 msgid "%B: warning: common is here\n" msgstr "%B: AVERTISSEMENT: le commun est ici\n" -#: ldmain.c:1016 +#: ldmain.c:953 msgid "%B: warning: common of `%T' overridden by definition\n" msgstr "%B: AVERTISSEMENT: le commun de « %T » écrasé par définition\n" -#: ldmain.c:1019 +#: ldmain.c:956 msgid "%B: warning: defined here\n" msgstr "%B: AVERTISSEMENT: défini ici\n" -#: ldmain.c:1026 +#: ldmain.c:963 msgid "%B: warning: common of `%T' overridden by larger common\n" msgstr "%B: AVERTISSEMENT: le commun de « %T » écrasé par un commun de plus grande taille\n" -#: ldmain.c:1029 +#: ldmain.c:966 msgid "%B: warning: larger common is here\n" msgstr "%B: AVERTISSEMENT: le commun de plus grande taille est ici\n" -#: ldmain.c:1033 +#: ldmain.c:970 msgid "%B: warning: common of `%T' overriding smaller common\n" msgstr "%B: AVERTISSEMENT: le commun de « %T » écrasé par un commun de plus petite taille\n" -#: ldmain.c:1036 +#: ldmain.c:973 msgid "%B: warning: smaller common is here\n" msgstr "%B: AVERTISSEMENT: le commun de plus petite taille est ici\n" -#: ldmain.c:1040 +#: ldmain.c:977 msgid "%B: warning: multiple common of `%T'\n" msgstr "%B: AVERTISSEMENT: communs multiples de « %T »\n" -#: ldmain.c:1042 +#: ldmain.c:979 msgid "%B: warning: previous common is here\n" msgstr "%B: AVERTISSEMENT: commun précédent est ici\n" -#: ldmain.c:1062 ldmain.c:1100 +#: ldmain.c:1000 ldmain.c:1039 msgid "%P: warning: global constructor %s used\n" msgstr "%P: AVERTISSEMENT: constructeur global %s est utilisé\n" -#: ldmain.c:1110 +#: ldmain.c:1049 msgid "%P%F: BFD backend error: BFD_RELOC_CTOR unsupported\n" msgstr "%P%F: BFD erreur de terminaison arrière (backend): BFD_RELOC_CTOR non supporté\n" -#: ldmain.c:1287 ldmisc.c:533 +#: ldmain.c:1233 msgid "%F%P: bfd_hash_table_init failed: %E\n" msgstr "%F%P: bfd_hash_table_init en échec: %E\n" -#: ldmain.c:1294 ldmisc.c:540 +#: ldmain.c:1240 msgid "%F%P: bfd_hash_lookup failed: %E\n" msgstr "%F%P: bfd_hash_lookup en échec: %E\n" -#: ldmain.c:1314 +#: ldmain.c:1260 msgid "%C: undefined reference to `%T'\n" msgstr "%C: référence indéfinie vers « %T »\n" -#: ldmain.c:1320 +#: ldmain.c:1266 msgid "%D: more undefined references to `%T' follow\n" msgstr "%D: encore plus de références indéfinies suivent vers « %T »\n" -#: ldmain.c:1327 +#: ldmain.c:1273 msgid "%B: undefined reference to `%T'\n" msgstr "%B: référence indéfinie vers « %T »\n" -#: ldmain.c:1333 +#: ldmain.c:1279 msgid "%B: more undefined references to `%T' follow\n" msgstr "%B: encore plus de références indéfinies suivent vers « %T »\n" -#: ldmain.c:1364 ldmain.c:1392 ldmain.c:1410 +#: ldmain.c:1299 ldmain.c:1320 ldmain.c:1339 msgid "%P%X: generated" msgstr "%P%X: généré" -#: ldmain.c:1371 -msgid " additional relocation overflows omitted from the output\n" -msgstr " relocalisation additionnel crée un débordement omis sur la sortie\n" - -#: ldmain.c:1375 +#: ldmain.c:1302 msgid " relocation truncated to fit: %s %T" msgstr " relocalisation tronquée pour concorder avec la taille: %s %T" -#: ldmain.c:1395 +#: ldmain.c:1323 #, c-format msgid "dangerous relocation: %s\n" msgstr "relocalisation dangereuse: %s\n" -#: ldmain.c:1413 +#: ldmain.c:1342 msgid " reloc refers to symbol `%T' which is not being output\n" msgstr " relocalisation réfère au symbole « %T » qui n'a pas été sorti\n" -#: ldmisc.c:147 +#: ldmisc.c:157 msgid "no symbol" msgstr "aucun symbole" -#: ldmisc.c:211 +#: ldmisc.c:221 #, c-format msgid "built in linker script:%u" msgstr "construit dans le script d'édition de liens:%u" -#: ldmisc.c:260 ldmisc.c:264 +#: ldmisc.c:271 ldmisc.c:275 msgid "%B%F: could not read symbols\n" msgstr "%B%F: ne peut lire les symboles\n" -#: ldmisc.c:291 -msgid ": In function `%T':\n" -msgstr ": dans la fonction « %T »:\n" +#. We use abfd->filename in this initial line, +#. in case filename is a .h file or something +#. similarly unhelpful. +#: ldmisc.c:311 +msgid "%B: In function `%T':\n" +msgstr "%B: dans la fonction « %T »:\n" -#: ldmisc.c:438 +#: ldmisc.c:463 msgid "%F%P: internal error %s %d\n" msgstr "%F%P: erreur interne %s %d\n" -#: ldmisc.c:484 +#: ldmisc.c:513 msgid "%P: internal error: aborting at %s line %d in %s\n" msgstr "%P: erreur interne: arrêt immédiat %s, ligne %d dans %s\n" -#: ldmisc.c:487 +#: ldmisc.c:516 msgid "%P: internal error: aborting at %s line %d\n" msgstr "%P: erreur interne: arrêt immédiat à %s ligne %d\n" -#: ldmisc.c:489 +#: ldmisc.c:518 msgid "%P%F: please report this bug\n" msgstr "%P%F: rapporter cette anomalie\n" #. Output for noisy == 2 is intended to follow the GNU standards. -#: ldver.c:39 +#: ldver.c:38 #, c-format msgid "GNU ld version %s\n" msgstr "GNU ld version %s\n" -#: ldver.c:43 +#: ldver.c:42 msgid "Copyright 2002 Free Software Foundation, Inc.\n" msgstr "Copyright 2002 Free Software Foundation, Inc.\n" -#: ldver.c:44 +#: ldver.c:43 msgid "" "This program is free software; you may redistribute it under the terms of\n" "the GNU General Public License. This program has absolutely no warranty.\n" @@ -1030,398 +995,370 @@ msgstr "" "reproduction. AUCUNE garantie n'est donnée; tant pour des raisons\n" "COMMERCIALES que pour RÉPONDRE À UN BESOIN PARTICULIER.\n" -#: ldver.c:53 +#: ldver.c:52 msgid " Supported emulations:\n" msgstr " Émulations supportées:\n" -#: ldwrite.c:54 ldwrite.c:190 +#: ldwrite.c:59 ldwrite.c:195 msgid "%P%F: bfd_new_link_order failed\n" msgstr "%P%F: bfd_new_link_order en échec\n" -#: ldwrite.c:310 +#: ldwrite.c:325 msgid "%F%P: clone section failed: %E\n" msgstr "%F%P: section clone en échec: %E\n" -#: ldwrite.c:348 +#: ldwrite.c:364 #, c-format msgid "%8x something else\n" msgstr "%8x quelque chose d'autre\n" -#: ldwrite.c:525 +#: ldwrite.c:547 msgid "%F%P: final link failed: %E\n" msgstr "%F%P: édition de lien finale en échec: %E\n" -#: lexsup.c:179 lexsup.c:284 +#: lexsup.c:172 lexsup.c:267 msgid "KEYWORD" msgstr "MOT CLÉ" -#: lexsup.c:179 +#: lexsup.c:172 msgid "Shared library control for HP/UX compatibility" msgstr "Librairie partagée de contrôle pour compatibilité HP/UX" -#: lexsup.c:182 +#: lexsup.c:175 msgid "ARCH" msgstr "ARCH" -#: lexsup.c:182 +#: lexsup.c:175 msgid "Set architecture" msgstr "Initilisé l'architecture" -#: lexsup.c:184 lexsup.c:357 +#: lexsup.c:177 lexsup.c:336 msgid "TARGET" msgstr "CIBLE" -#: lexsup.c:184 +#: lexsup.c:177 msgid "Specify target for following input files" msgstr "Spécifier la cible pour les règles suivantes pour les fichiers d'entrée" -#: lexsup.c:186 lexsup.c:229 lexsup.c:241 lexsup.c:254 lexsup.c:329 -#: lexsup.c:364 lexsup.c:408 +#: lexsup.c:179 lexsup.c:220 lexsup.c:232 lexsup.c:241 lexsup.c:312 +#: lexsup.c:343 lexsup.c:383 msgid "FILE" msgstr "FICHIER" -#: lexsup.c:186 +#: lexsup.c:179 msgid "Read MRI format linker script" msgstr "Lecture du format MRI du script de l'éditeur de liens" -#: lexsup.c:188 +#: lexsup.c:181 msgid "Force common symbols to be defined" msgstr "Forcer les symboles communs à être définis" -#: lexsup.c:192 lexsup.c:398 lexsup.c:400 lexsup.c:402 +#: lexsup.c:185 lexsup.c:373 lexsup.c:375 lexsup.c:377 msgid "ADDRESS" msgstr "ADRESSE" -#: lexsup.c:192 +#: lexsup.c:185 msgid "Set start address" msgstr "Initialiser l'adresse de début" -#: lexsup.c:194 +#: lexsup.c:187 msgid "Export all dynamic symbols" msgstr "Exportation de tous les symboles dynamiques" -#: lexsup.c:196 +#: lexsup.c:189 msgid "Link big-endian objects" msgstr "Lier les objets pour les systèmes à octet de poids fort (big endian)" -#: lexsup.c:198 +#: lexsup.c:191 msgid "Link little-endian objects" msgstr "Lier les objets pour les systèmes à octets de poids faible (little endian)" -#: lexsup.c:200 lexsup.c:203 +#: lexsup.c:193 lexsup.c:196 msgid "SHLIB" msgstr "LIBRAIRIE COMMMUNE (SHLIB)" -#: lexsup.c:200 +#: lexsup.c:193 msgid "Auxiliary filter for shared object symbol table" msgstr "Filtre auxiliaire de la table de symboles de l'objet partagé" -#: lexsup.c:203 +#: lexsup.c:196 msgid "Filter for shared object symbol table" msgstr "Filtre de la table de symboles de l'objet partagé" -#: lexsup.c:205 +#: lexsup.c:198 msgid "Ignored" msgstr "Ignoré" -#: lexsup.c:207 +#: lexsup.c:200 msgid "SIZE" msgstr "TAILLE" -#: lexsup.c:207 +#: lexsup.c:200 msgid "Small data size (if no size, same as --shared)" msgstr "Petite taille des données (si aucune taille spécifié, identique à --shared)" -#: lexsup.c:210 +#: lexsup.c:203 msgid "FILENAME" msgstr "NOM DE FICHIER" -#: lexsup.c:210 +#: lexsup.c:203 msgid "Set internal name of shared library" msgstr "Initialisé le nom interne de la librairie partagée" -#: lexsup.c:212 +#: lexsup.c:205 msgid "PROGRAM" msgstr "PROGRAMME" -#: lexsup.c:212 +#: lexsup.c:205 msgid "Set PROGRAM as the dynamic linker to use" msgstr "Utiliser le PROGRAM comme éditeur de liens dynamique" -#: lexsup.c:214 +#: lexsup.c:207 msgid "LIBNAME" msgstr "NOM de LIBRAIRIE" -#: lexsup.c:214 +#: lexsup.c:207 msgid "Search for library LIBNAME" msgstr "Recherche de la librairie LIBNAME" -#: lexsup.c:216 +#: lexsup.c:209 msgid "DIRECTORY" msgstr "RÉPERTOIRE" -#: lexsup.c:216 +#: lexsup.c:209 msgid "Add DIRECTORY to library search path" msgstr "Ajout du RÉPERTOIRE au chemin de recherche de librairie" -#: lexsup.c:218 +#: lexsup.c:211 msgid "EMULATION" msgstr "ÉMULATION" -#: lexsup.c:218 +#: lexsup.c:211 msgid "Set emulation" msgstr "Initialisation de l'émuilation" -#: lexsup.c:220 +#: lexsup.c:213 msgid "Print map file on standard output" msgstr "Afficher le fichier de projection sur la sortie standard" -#: lexsup.c:222 +#: lexsup.c:215 msgid "Do not page align data" msgstr "Ne pas paginer l'alignement des données" -#: lexsup.c:224 +#: lexsup.c:217 msgid "Do not page align data, do not make text readonly" msgstr "Ne pas paginer l'alignement des donnnées, ne pas faire de texte en lecture seulement" -#: lexsup.c:227 -msgid "Page align data, make text readonly" -msgstr "Alignement de page des données, rendre le texte en mode lecture seulement" - -#: lexsup.c:229 +#: lexsup.c:220 msgid "Set output file name" msgstr "Initialisé le nom du fichier de sortie" -#: lexsup.c:231 +#: lexsup.c:222 msgid "Optimize output file" msgstr "Optimisé le fichier de sortie" -#: lexsup.c:233 +#: lexsup.c:224 msgid "Ignored for SVR4 compatibility" msgstr "Ignoré pour la compatibilité avec SVR4" -#: lexsup.c:237 -msgid "Generate relocatable output" -msgstr "Générer la sortie des relocalisables " +#: lexsup.c:228 +msgid "Generate relocateable output" +msgstr "Généré la sortie des relocalisables " -#: lexsup.c:241 +#: lexsup.c:232 msgid "Just link symbols (if directory, same as --rpath)" msgstr "Juste lier les symboles (si répertoire, identique à --rpath)" -#: lexsup.c:244 +#: lexsup.c:235 msgid "Strip all symbols" msgstr "Élaguer tous les symboles" -#: lexsup.c:246 +#: lexsup.c:237 msgid "Strip debugging symbols" msgstr "Élaguer tous les symboles de débug" -#: lexsup.c:248 -msgid "Strip symbols in discarded sections" -msgstr "Éliminer les symboles dans les sections éliminées" - -#: lexsup.c:250 -msgid "Do not strip symbols in discarded sections" -msgstr "Ne pas éliminer les symboles dans les sections éliminées" - -#: lexsup.c:252 +#: lexsup.c:239 msgid "Trace file opens" msgstr "Ouverture des fichiers de trace" -#: lexsup.c:254 +#: lexsup.c:241 msgid "Read linker script" msgstr "Lecture du script de l'éditeur de lien" -#: lexsup.c:256 lexsup.c:272 lexsup.c:315 lexsup.c:327 lexsup.c:392 -#: lexsup.c:411 lexsup.c:431 +#: lexsup.c:243 lexsup.c:259 lexsup.c:298 lexsup.c:310 lexsup.c:367 +#: lexsup.c:386 lexsup.c:406 msgid "SYMBOL" msgstr "SYMBOLE" -#: lexsup.c:256 +#: lexsup.c:243 msgid "Start with undefined reference to SYMBOL" msgstr "Débuter avec une référence indéfinie au SYMBOLE" -#: lexsup.c:258 +#: lexsup.c:245 msgid "[=SECTION]" msgstr "[=SECTION]" -#: lexsup.c:258 +#: lexsup.c:245 msgid "Don't merge input [SECTION | orphan] sections" msgstr "Ne pas fusionner les sections d'entrée [SECTION | orpheline]" -#: lexsup.c:260 +#: lexsup.c:247 msgid "Build global constructor/destructor tables" msgstr "Bâtir les tables de constructeurs/destructeurs globaux" -#: lexsup.c:262 +#: lexsup.c:249 msgid "Print version information" msgstr "Afficher les informations de version" -#: lexsup.c:264 +#: lexsup.c:251 msgid "Print version and emulation information" msgstr "Afficher les information de version et d'émulation" -#: lexsup.c:266 +#: lexsup.c:253 msgid "Discard all local symbols" msgstr "Ignorer tous les symboles locaux" -#: lexsup.c:268 +#: lexsup.c:255 msgid "Discard temporary local symbols (default)" msgstr "Ignorer tous les symboles locaux temporaires (par défaut)" -#: lexsup.c:270 +#: lexsup.c:257 msgid "Don't discard any local symbols" msgstr "Ne pas ignorer tous les symboles locaux" -#: lexsup.c:272 +#: lexsup.c:259 msgid "Trace mentions of SYMBOL" msgstr "Tracer les mentions de SYMBOLE" -#: lexsup.c:274 lexsup.c:366 lexsup.c:368 +#: lexsup.c:261 lexsup.c:345 lexsup.c:347 msgid "PATH" msgstr "CHEMIN" -#: lexsup.c:274 +#: lexsup.c:261 msgid "Default search path for Solaris compatibility" msgstr "Chemin par défaut de recherche pour la compatibilité Solaris" -#: lexsup.c:276 +#: lexsup.c:263 msgid "Start a group" msgstr "Débuter un groupe" -#: lexsup.c:278 +#: lexsup.c:265 msgid "End a group" msgstr "Terminer un groupe" -#: lexsup.c:280 -msgid "Accept input files whose architecture cannot be determined" -msgstr "Accepter les fichiers d'entrée dont l'architecture ne peut être déterminé" - -#: lexsup.c:282 -msgid "Reject input files whose architecture is unknown" -msgstr "Rejeter les fichiers d'entrée dont l'architecture est inconnue" - -#: lexsup.c:284 +#: lexsup.c:267 msgid "Ignored for SunOS compatibility" msgstr "Ignoré pour la compatibilité avec SunOS" -#: lexsup.c:286 +#: lexsup.c:269 msgid "Link against shared libraries" msgstr "Établir des liens vis à vis des librairies partagées" -#: lexsup.c:292 +#: lexsup.c:275 msgid "Do not link against shared libraries" msgstr "Ne pas établir de liens vis à vis des librairies partagées" -#: lexsup.c:300 +#: lexsup.c:283 msgid "Bind global references locally" msgstr "Lier les référence locales globales" -#: lexsup.c:302 +#: lexsup.c:285 msgid "Check section addresses for overlaps (default)" msgstr "Vérifier les adresses de section pour le chevauchement (par défaut)" -#: lexsup.c:304 +#: lexsup.c:287 msgid "Do not check section addresses for overlaps" msgstr "Ne pas vérifier les adresses des sections pour le chevauchement" -#: lexsup.c:307 +#: lexsup.c:290 msgid "Output cross reference table" msgstr "Produire la table des références croisées" -#: lexsup.c:309 +#: lexsup.c:292 msgid "SYMBOL=EXPRESSION" msgstr "SYMBOLE=EXPRESSION" -#: lexsup.c:309 +#: lexsup.c:292 msgid "Define a symbol" msgstr "Définir un symbole" -#: lexsup.c:311 +#: lexsup.c:294 msgid "[=STYLE]" msgstr "[=STYLE]" -#: lexsup.c:311 +#: lexsup.c:294 msgid "Demangle symbol names [using STYLE]" msgstr "Recouvrir les noms des symboles encodés par mutilisation [utilisant le STYLE]" -#: lexsup.c:313 +#: lexsup.c:296 msgid "Generate embedded relocs" msgstr "Générer des relocalisations imbriqués" -#: lexsup.c:315 +#: lexsup.c:298 msgid "Call SYMBOL at unload-time" msgstr "Appeler le SYMBOLE au moment du déchargement" -#: lexsup.c:317 +#: lexsup.c:300 msgid "Force generation of file with .exe suffix" msgstr "Force la génération de fichier avec le suffixe .exe" -#: lexsup.c:319 +#: lexsup.c:302 msgid "Remove unused sections (on some targets)" msgstr "Enlever les sections inutilisées (sur quelques cibles)" -#: lexsup.c:322 +#: lexsup.c:305 msgid "Don't remove unused sections (default)" msgstr "Ne pas enlever les sections inutilisées (par défaut)" -#: lexsup.c:325 +#: lexsup.c:308 msgid "Print option help" msgstr "Afficher l'aide-mémoire" -#: lexsup.c:327 +#: lexsup.c:310 msgid "Call SYMBOL at load-time" msgstr "Appeler le SYMBOLE au moment du chargement" -#: lexsup.c:329 +#: lexsup.c:312 msgid "Write a map file" msgstr "Écrire un fichier de projection" -#: lexsup.c:331 +#: lexsup.c:314 msgid "Do not define Common storage" msgstr "Ne pas définir le stockage commun" -#: lexsup.c:333 +#: lexsup.c:316 msgid "Do not demangle symbol names" msgstr "Ne pas recouvrir les noms des symboles encodés par mutilisation" -#: lexsup.c:335 +#: lexsup.c:318 msgid "Use less memory and more disk I/O" msgstr "Utiliser moins de mémoire et plus d'espace disque" -#: lexsup.c:337 +#: lexsup.c:320 msgid "Allow no undefined symbols" msgstr "Ne pas permettre de symboles indéfinis" -#: lexsup.c:339 -msgid "Allow undefined symbols in shared objects (the default)" -msgstr "Permettre les symboles indéfinis dans les objets partagés (par défaut)" - -#: lexsup.c:341 -msgid "Do not allow undefined symbols in shared objects" -msgstr "Ne pas permettre les symboles indéfinis dans les objets partagés" +#: lexsup.c:322 +msgid "Allow undefined symbols in shared objects" +msgstr "Permettre les symboles indéfinis dans les objets partagés" -#: lexsup.c:343 +#: lexsup.c:324 msgid "Allow multiple definitions" msgstr "Autoriser des définitions multiples" -#: lexsup.c:345 -msgid "Disallow undefined version" -msgstr "Ne pas permettre de version indéfinie" - -#: lexsup.c:347 +#: lexsup.c:326 msgid "Don't warn about mismatched input files" msgstr "Ne pas avertir à propos des non-concordances dans les fichiers d'entrée" -#: lexsup.c:349 +#: lexsup.c:328 msgid "Turn off --whole-archive" msgstr "Désactiver --whole-archive" -#: lexsup.c:351 +#: lexsup.c:330 msgid "Create an output file even if errors occur" msgstr "Créer un fichier de sortie même si des erreurs surviennent" -#: lexsup.c:355 +#: lexsup.c:334 msgid "" "Only use library directories specified on\n" "\t\t\t\tthe command line" @@ -1429,111 +1366,107 @@ msgstr "" "Utiliser seuelement les répertoires de librairies spécifiés sur\n" "la ligne de commande" -#: lexsup.c:357 +#: lexsup.c:336 msgid "Specify target of output file" msgstr "Spécifier un fichier cible de sortie" -#: lexsup.c:359 +#: lexsup.c:338 msgid "Ignored for Linux compatibility" msgstr "Ignoré pour la compatibilité avec Linux" -#: lexsup.c:361 +#: lexsup.c:340 msgid "Relax branches on certain targets" msgstr "Relâcher les branches de certaines cibles" -#: lexsup.c:364 +#: lexsup.c:343 msgid "Keep only symbols listed in FILE" msgstr "Conserver uniquement les symboles listés dans le FICHIER" -#: lexsup.c:366 +#: lexsup.c:345 msgid "Set runtime shared library search path" msgstr "Initialisé le chemin de recherche des librairies partagées pour l'exécution" -#: lexsup.c:368 +#: lexsup.c:347 msgid "Set link time shared library search path" msgstr "Initialisé le chemin de recherche des librairies partagées pour l'édition de liens" -#: lexsup.c:370 +#: lexsup.c:349 msgid "Create a shared library" msgstr "Créer une librairie partagée" -#: lexsup.c:374 -msgid "Create a position independent executable" -msgstr "Créer un exécutable à position indépendante" - -#: lexsup.c:378 +#: lexsup.c:353 msgid "Sort common symbols by size" msgstr "Trier les symboles communs par taille" -#: lexsup.c:382 +#: lexsup.c:357 msgid "COUNT" msgstr "DÉCOMPTE" -#: lexsup.c:382 +#: lexsup.c:357 msgid "How many tags to reserve in .dynamic section" msgstr "Combien d'étiquettes réservées dans la section .dynamic" -#: lexsup.c:384 +#: lexsup.c:359 msgid "[=SIZE]" msgstr "[=TAILLE]" -#: lexsup.c:384 +#: lexsup.c:359 msgid "Split output sections every SIZE octets" msgstr "Découper à la sortie les sections à chaque NOMBRE d'octets" -#: lexsup.c:386 +#: lexsup.c:361 msgid "[=COUNT]" msgstr "[=DÉCOMPTE]" -#: lexsup.c:386 +#: lexsup.c:361 msgid "Split output sections every COUNT relocs" msgstr "Découper à la sortie les sections à chaque NOMBRE de relocalisations" -#: lexsup.c:388 +#: lexsup.c:363 msgid "Print memory usage statistics" msgstr "Afficher les statistiques de l'utilisation de la mémoire" -#: lexsup.c:390 +#: lexsup.c:365 msgid "Display target specific options" msgstr "Afficher les options spécifiques cibles" -#: lexsup.c:392 +#: lexsup.c:367 msgid "Do task level linking" msgstr "Composer des liens au niveau de l'exécution de la tache" -#: lexsup.c:394 +#: lexsup.c:369 msgid "Use same format as native linker" msgstr "Utiliser le même format que l'éditeur de lien natif" -#: lexsup.c:396 +#: lexsup.c:371 msgid "SECTION=ADDRESS" msgstr "SECTION=ADRESSE" -#: lexsup.c:396 +#: lexsup.c:371 msgid "Set address of named section" msgstr "Initialisé l'adresse de la section nommé" -#: lexsup.c:398 +#: lexsup.c:373 msgid "Set address of .bss section" msgstr "Initialisé l'adresse de la section .bss" -#: lexsup.c:400 +#: lexsup.c:375 msgid "Set address of .data section" msgstr "Initialisé l'adresse de la section .data" -#: lexsup.c:402 +#: lexsup.c:377 msgid "Set address of .text section" msgstr "Initialisé l'adresse de la section .text" -#: lexsup.c:404 +#: lexsup.c:379 msgid "Output lots of information during link" msgstr "Afficher des tas d'information durant l'édition de lien" -#: lexsup.c:408 +#: lexsup.c:383 msgid "Read version information script" msgstr "Lire le script des informations de version" -#: lexsup.c:411 +#: lexsup.c:386 msgid "" "Take export symbols list from .exports, using\n" "\t\t\t\tSYMBOL as the version." @@ -1541,43 +1474,43 @@ msgstr "" "Prendre la liste des symboles exportés de .exports, en utilisant\n" "\t\t\t\tSYMBOLE comme version." -#: lexsup.c:414 +#: lexsup.c:389 msgid "Warn about duplicate common symbols" msgstr "AVERTIR au sujet des symboles communs dupliqués" -#: lexsup.c:416 +#: lexsup.c:391 msgid "Warn if global constructors/destructors are seen" msgstr "AVERTIR si des constructeurs/destructeurs globaux sont détectés" -#: lexsup.c:419 +#: lexsup.c:394 msgid "Warn if the multiple GP values are used" msgstr "AVERTIR si des valeurs GP multiples sont utilisées" -#: lexsup.c:421 +#: lexsup.c:396 msgid "Warn only once per undefined symbol" msgstr "AVERTIR seulement une fois pour chaque symbole indéfini" -#: lexsup.c:423 +#: lexsup.c:398 msgid "Warn if start of section changes due to alignment" msgstr "AVERTIR si le début de la section est modifié en raison de l'alignement" -#: lexsup.c:426 +#: lexsup.c:401 msgid "Treat warnings as errors" msgstr "Traiter les avertissements comme des erreurs" -#: lexsup.c:429 +#: lexsup.c:404 msgid "Include all objects from following archives" msgstr "Inclure tous les objets des archives suivantes" -#: lexsup.c:431 +#: lexsup.c:406 msgid "Use wrapper functions for SYMBOL" msgstr "Utiliser les fonctions d'emballage pour SYMBOLE" -#: lexsup.c:433 +#: lexsup.c:408 msgid "[=WORDS]" msgstr "[=MOTS]" -#: lexsup.c:433 +#: lexsup.c:408 msgid "" "Modify problematic branches in last WORDS (1-10,\n" "\t\t\t\tdefault 5) words of a page" @@ -1585,27 +1518,27 @@ msgstr "" "Modifier les branches problématiques dans les derniers MOTS (1-10,\n" "\t\t\t\tpar défaut 5 derniers) mots de la page" -#: lexsup.c:602 +#: lexsup.c:574 msgid "%P: unrecognized option '%s'\n" msgstr "%P: option « %s » non reocnnue\n" -#: lexsup.c:604 +#: lexsup.c:576 msgid "%P%F: use the --help option for usage information\n" msgstr "%P%F: utiliser --help pour afficher l'aide-mémoire\n" -#: lexsup.c:622 +#: lexsup.c:595 msgid "%P%F: unrecognized -a option `%s'\n" msgstr "%P%F: -a option non reocnnue « %s »\n" -#: lexsup.c:635 +#: lexsup.c:608 msgid "%P%F: unrecognized -assert option `%s'\n" msgstr "%P%F: -assert option non reconnue « %s »\n" -#: lexsup.c:678 +#: lexsup.c:651 msgid "%F%P: unknown demangling style `%s'" msgstr "%F%P: style inconnu de recouvrement du transcodage par mutilisation « %s »" -#: lexsup.c:737 +#: lexsup.c:711 msgid "%P%F: invalid number `%s'\n" msgstr "%P%F: nombre invalide « %s »\n" @@ -1617,136 +1550,128 @@ msgstr "%P%F: nombre invalide « %s »\n" #. an error message here. We cannot just make this a warning, #. increment optind, and continue because getopt is too confused #. and will seg-fault the next time around. -#: lexsup.c:849 +#: lexsup.c:812 msgid "%P%F: bad -rpath option\n" msgstr "%P%F: option -rpath non reconnue\n" -#: lexsup.c:953 +#: lexsup.c:910 msgid "%P%F: -shared not supported\n" msgstr "%P%F: -shared non supporté\n" -#: lexsup.c:962 -msgid "%P%F: -pie not supported\n" -msgstr "%P%F: -pie non supporté\n" - -#: lexsup.c:994 +#: lexsup.c:942 msgid "%P%F: invalid argument to option \"--section-start\"\n" msgstr "%P%F: argument invalide pour l'option \"--section-start\"\n" -#: lexsup.c:1000 +#: lexsup.c:948 msgid "%P%F: missing argument(s) to option \"--section-start\"\n" msgstr "%P%F: argument(s) manquant(s) pour l'option \"--section-start\"\n" -#: lexsup.c:1158 +#: lexsup.c:1097 msgid "%P%F: may not nest groups (--help for usage)\n" msgstr "%P%F: ne peut imbriquer les groupes (--help pour l'usage)\n" -#: lexsup.c:1165 +#: lexsup.c:1104 msgid "%P%F: group ended before it began (--help for usage)\n" msgstr "%P%F: fin du groupe avant son début (--help pour l'usage)\n" -#: lexsup.c:1179 +#: lexsup.c:1118 msgid "%P%F: invalid argument to option \"mpc860c0\"\n" msgstr "%P%F: argument invalide pour l'option « mpc860c0 »\n" -#: lexsup.c:1234 +#: lexsup.c:1173 msgid "%P%F: invalid hex number `%s'\n" msgstr "%P%F: nombre hexadécimal invalide « %s »\n" -#: lexsup.c:1246 +#: lexsup.c:1185 #, c-format msgid "Usage: %s [options] file...\n" msgstr "Usage: %s [options] fichier...\n" -#: lexsup.c:1248 +#: lexsup.c:1187 msgid "Options:\n" msgstr "Options:\n" #. Note: Various tools (such as libtool) depend upon the #. format of the listings below - do not change them. -#: lexsup.c:1331 +#: lexsup.c:1270 #, c-format msgid "%s: supported targets:" msgstr "%s: cibles supportées:" -#: lexsup.c:1339 +#: lexsup.c:1278 #, c-format msgid "%s: supported emulations: " msgstr "%s: émulations supportées: " -#: lexsup.c:1344 +#: lexsup.c:1283 #, c-format msgid "%s: emulation specific options:\n" msgstr "%s: options spécifiques d'émulation:\n" -#: lexsup.c:1348 +#: lexsup.c:1287 #, c-format msgid "Report bugs to %s\n" msgstr "Rapporter toutes anomalies à %s\n" -#: mri.c:307 +#: mri.c:334 msgid "%P%F: unknown format type %s\n" msgstr "%P%F: type de format inconnu %s\n" -#: pe-dll.c:301 +#: pe-dll.c:321 #, c-format msgid "%XUnsupported PEI architecture: %s\n" msgstr "%XArchitecture PEI non supportée: %s\n" -#: pe-dll.c:650 +#: pe-dll.c:671 #, c-format msgid "%XError, duplicate EXPORT with ordinals: %s (%d vs %d)\n" msgstr "%XErreur, duplicattion EXPORT avec nombre ordinal: %s (%d vs %d)\n" -#: pe-dll.c:657 +#: pe-dll.c:678 #, c-format msgid "Warning, duplicate EXPORT: %s\n" msgstr "AVERTISSEMENT, duplication EXPORT: %s\n" -#: pe-dll.c:723 +#: pe-dll.c:742 #, c-format msgid "%XCannot export %s: symbol not defined\n" msgstr "%XNe peut exporter %s: symbole indéfini\n" -#: pe-dll.c:729 +#: pe-dll.c:748 #, c-format msgid "%XCannot export %s: symbol wrong type (%d vs %d)\n" msgstr "%XNe peut exporter %s: mauvais type de symbole (%d vs %d)\n" -#: pe-dll.c:736 +#: pe-dll.c:755 #, c-format msgid "%XCannot export %s: symbol not found\n" msgstr "%XNe peut exporter %s: symbole non repéré\n" -#: pe-dll.c:848 +#: pe-dll.c:870 #, c-format msgid "%XError, ordinal used twice: %d (%s vs %s)\n" msgstr "%XErreur, ordinal utilisé 2 fois: %d (%s vs %s)\n" -#: pe-dll.c:1165 +#: pe-dll.c:1181 #, c-format msgid "%XError: %d-bit reloc in dll\n" msgstr "%XErreur: %d-bit relocalisation dans dll\n" -#: pe-dll.c:1296 +#: pe-dll.c:1316 #, c-format msgid "%s: Can't open output def file %s\n" msgstr "%s: ne peut ouvrir le fichier def %s\n" -#: pe-dll.c:1439 +#: pe-dll.c:1459 msgid "; no contents available\n" msgstr "; aucun contenu disponible\n" -#: pe-dll.c:2203 -msgid "%C: variable '%T' can't be auto-imported. Please read the documentation for ld's --enable-auto-import for details.\n" -msgstr "%C: variable « %T » ne peut être auto-importée. SVP lire la documentation de ld --enable-auto-import pour plus de détails.\n" - -#: pe-dll.c:2233 +#: pe-dll.c:2128 #, c-format msgid "%XCan't open .lib file: %s\n" msgstr "%XNe peut ouvrir le fichier .lib: %s\n" -#: pe-dll.c:2238 +#: pe-dll.c:2133 #, c-format msgid "Creating library file: %s\n" msgstr "Création du fichier de librairie: %s\n" diff -uprN binutils-2.15.90.0.3/ld/scripttempl/avr.sc binutils-2.15.91.0.1/ld/scripttempl/avr.sc --- binutils-2.15.90.0.3/ld/scripttempl/avr.sc 2002-06-07 19:22:17.000000000 -0700 +++ binutils-2.15.91.0.1/ld/scripttempl/avr.sc 2004-05-27 11:26:05.206097600 -0700 @@ -145,7 +145,6 @@ SECTIONS } ${RELOCATING+ > data} .eeprom ${RELOCATING-0}: - ${RELOCATING+AT (ADDR (.text) + SIZEOF (.text) + SIZEOF (.data))} { *(.eeprom*) ${RELOCATING+ __eeprom_end = . ; } diff -uprN binutils-2.15.90.0.3/ld/scripttempl/elf.sc binutils-2.15.91.0.1/ld/scripttempl/elf.sc --- binutils-2.15.90.0.3/ld/scripttempl/elf.sc 2004-01-14 13:07:53.000000000 -0800 +++ binutils-2.15.91.0.1/ld/scripttempl/elf.sc 2004-05-27 11:26:05.218096049 -0700 @@ -10,6 +10,8 @@ # OTHER_TEXT_SECTIONS - these get put in .text when relocating # OTHER_READWRITE_SECTIONS - other than .data .bss .ctors .sdata ... # (e.g., .PARISC.global) +# OTHER_RELRO_SECTIONS - other than .data.rel.ro ... +# (e.g. PPC32 .fixup, .got[12]) # OTHER_BSS_SECTIONS - other than .bss .sbss ... # OTHER_SECTIONS - at the end # EXECUTABLE_SYMBOLS - symbols that must be defined for an @@ -37,6 +39,10 @@ # combination of .fini sections. # STACK_ADDR - start of a .stack section. # OTHER_END_SYMBOLS - symbols to place right at the end of the script. +# SEPARATE_GOTPLT - if set, .got.plt should be separate output section, +# so that .got can be in the RELRO area. It should be set to +# the number of bytes in the beginning of .got.plt which can be +# in the RELRO area as well. # # When adding sections, do note that the names of some sections are used # when specifying the start address of the next. @@ -74,17 +80,33 @@ test -z "${ALIGNMENT}" && ALIGNMENT="${E test "$LD_FLAG" = "N" && DATA_ADDR=. test -n "$CREATE_SHLIB$CREATE_PIE" && test -n "$SHLIB_DATA_ADDR" && COMMONPAGESIZE="" test -z "$CREATE_SHLIB$CREATE_PIE" && test -n "$DATA_ADDR" && COMMONPAGESIZE="" +test -n "$RELRO_NOW" && unset SEPARATE_GOTPLT DATA_SEGMENT_ALIGN="ALIGN(${SEGMENT_SIZE}) + (. & (${MAXPAGESIZE} - 1))" +DATA_SEGMENT_RELRO_END="" +DATA_SEGMENT_RELRO_GOTPLT_END="" DATA_SEGMENT_END="" if test -n "${COMMONPAGESIZE}"; then DATA_SEGMENT_ALIGN="ALIGN (${SEGMENT_SIZE}) - ((${MAXPAGESIZE} - .) & (${MAXPAGESIZE} - 1)); . = DATA_SEGMENT_ALIGN (${MAXPAGESIZE}, ${COMMONPAGESIZE})" DATA_SEGMENT_END=". = DATA_SEGMENT_END (.);" + if test -n "${SEPARATE_GOTPLT}"; then + DATA_SEGMENT_RELRO_GOTPLT_END=". = DATA_SEGMENT_RELRO_END (. + ${SEPARATE_GOTPLT});" + else + DATA_SEGMENT_RELRO_END=". = DATA_SEGMENT_RELRO_END (.);" + fi fi INTERP=".interp ${RELOCATING-0} : { *(.interp) }" PLT=".plt ${RELOCATING-0} : { *(.plt) }" -test -z "$GOT" && GOT=".got ${RELOCATING-0} : { *(.got.plt) *(.got) }" +if test -z "$GOT"; then + if test -z "$SEPARATE_GOTPLT"; then + GOT=".got ${RELOCATING-0} : { *(.got.plt) *(.got) }" + else + GOT=".got ${RELOCATING-0} : { *(.got) }" + GOTPLT=".got.plt ${RELOCATING-0} : { ${RELOCATING+${DATA_SEGMENT_RELRO_GOTPLT_END}} *(.got.plt) }" + fi +fi DYNAMIC=".dynamic ${RELOCATING-0} : { *(.dynamic) }" RODATA=".rodata ${RELOCATING-0} : { *(.rodata${RELOCATING+ .rodata.* .gnu.linkonce.r.*}) }" +DATARELRO=".data.rel.ro : { *(.data.rel.ro.local) *(.data.rel.ro*) }" STACKNOTE="/DISCARD/ : { *(.note.GNU-stack) }" if test -z "${NO_SMALL_DATA}"; then SBSS=".sbss ${RELOCATING-0} : @@ -115,7 +137,10 @@ if test -z "${NO_SMALL_DATA}"; then .rela.sdata2 ${RELOCATING-0} : { *(.rela.sdata2${RELOCATING+ .rela.sdata2.* .rela.gnu.linkonce.s2.*}) }" REL_SBSS2=".rel.sbss2 ${RELOCATING-0} : { *(.rel.sbss2${RELOCATING+ .rel.sbss2.* .rel.gnu.linkonce.sb2.*}) } .rela.sbss2 ${RELOCATING-0} : { *(.rela.sbss2${RELOCATING+ .rela.sbss2.* .rela.gnu.linkonce.sb2.*}) }" +else + NO_SMALL_DATA=" " fi +test -n "$SEPARATE_GOTPLT" && SEPARATE_GOTPLT=" " CTOR=".ctors ${CONSTRUCTING-0} : { ${CONSTRUCTING+${CTOR_START}} @@ -211,6 +236,8 @@ eval $COMBRELOCCAT < + + * ld-elf/frame.s: Replace @ with % so that the file can be + compiled by an ARM targeted GAS. + * ld-elf/table.s: Likewise. + * ld-elf/tbss.s: Likewise. Also replace .align with + .p2align (log2 ) to cope with the fact that the ARM .align + directive takes a power-of-two argument. + +2004-05-17 H.J. Lu + + * ld-elf/frame.exp: New file. Test read-only .eh_frame and + .gcc_except_table sections. + * ld-elf/frame.s: Likewise. + * ld-elf/table.s: Likewise. + * ld-elf/tbss.s: Likewise. + +2004-05-12 Kaz Kojima + + * ld-sh/tlsbin-2.d: Adjust for section reordering changes + and removal of unneeded STT_SECTION symbols from .dynsym. + * ld-sh/tlsbin-3.d: Likewise. + * ld-sh/tlspic-2.d: Likewise. + +2004-05-12 Ben Elliston + + * ld-sh/sh64/relax.exp: Remove stray semicolons. + * ld-sh/sh64/relfail.exp: Likewise. + * lib/ld-lib.exp: Likewise. + +2004-05-11 Jakub Jelinek + + * ld-i386/tlspic.rd: Adjust for section reordering changes + and removal of unneeded STT_SECTION symbols from .dynsym. + * ld-i386/tlspic.dd: Likewise. + * ld-i386/tlspic.sd: Likewise. + * ld-i386/tlsbin.rd: Likewise. + * ld-i386/tlsbinpic.s: Likewise. + * ld-i386/tlsbin.dd: Likewise. + * ld-i386/tlsbin.sd: Likewise. + * ld-i386/tlsnopic.rd: Likewise. + * ld-i386/tlsnopic1.s: Likewise. + * ld-i386/combreloc.d: Likewise. + * ld-i386/tlsnopic.dd: Likewise. + * ld-i386/tlsnopic.sd: Likewise. + * ld-x86-64/tlspic.rd: Likewise. + * ld-x86-64/tlspic.dd: Likewise. + * ld-x86-64/tlsbin.dd: Likewise. + * ld-x86-64/tlspic.sd: Likewise. + * ld-x86-64/tlsbin.sd: Likewise. + * ld-x86-64/tlspic.td: Likewise. + * ld-x86-64/tlsbin.td: Likewise. + * ld-x86-64/tlsbin.rd: Likewise. + * ld-s390/tlspic1.s: Likewise. + * ld-s390/tlsbinpic.s: Likewise. + * ld-s390/tlspic.rd: Likewise. + * ld-s390/tlsbin.rd: Likewise. + * ld-s390/tlspic.dd: Likewise. + * ld-s390/tlsbin.dd: Likewise. + * ld-s390/tlsbin.sd: Likewise. + * ld-s390/tlsbin.td: Likewise. + * ld-s390/tlspic.sd: Likewise. + * ld-s390/tlspic.td: Likewise. + * ld-s390/tlspic1_64.s: Likewise. + * ld-s390/tlsbinpic_64.s: Likewise. + * ld-s390/tlspic_64.rd: Likewise. + * ld-s390/tlsbin_64.rd: Likewise. + * ld-s390/tlspic_64.dd: Likewise. + * ld-s390/tlsbin_64.dd: Likewise. + * ld-s390/tlspic_64.sd: Likewise. + * ld-s390/tlspic_64.td: Likewise. + * ld-s390/tlsbin_64.td: Likewise. + * ld-s390/tlsbin_64.sd: Likewise. + * ld-powerpc/tlsexe32.r: Likewise. + * ld-powerpc/tlsso32.r: Likewise. + * ld-powerpc/tlsso32.d: Likewise. + * ld-powerpc/tlsso32.g: Likewise. + * ld-powerpc/tlsso32.t: Likewise. + * ld-powerpc/tlsexe.r: Likewise. + * ld-powerpc/tlsso.r: Likewise. + * ld-powerpc/tlsso.g: Likewise. + * ld-powerpc/tlsexetoc.r: Likewise. + * ld-powerpc/tlstocso.r: Likewise. + * ld-powerpc/tlstocso.g: Likewise. + * ld-ia64/tlspic.rd: Likewise. + * ld-ia64/tlspic.dd: Likewise. + * ld-ia64/tlspic.sd: Likewise. + * ld-ia64/tlspic.td: Likewise. + * ld-ia64/tlsbin.rd: Likewise. + * ld-ia64/tlsbin.sd: Likewise. + * ld-ia64/tlsbin.td: Likewise. + * ld-elfvsb/elfvsb.exp: XFAIL non-PIC load offset tests on s390x. + * ld-shared/shared.exp: Likewise. + +2004-05-10 John Paul Wallington + + * ld-mmix/bspec2.d: Update sh_info to decimal. + * ld-mmix/local1.d: Likewise. + * ld-mmix/local3.d: Likewise. + * ld-mmix/local5.d: Likewise. + * ld-mmix/local7.d: Likewise. + +2004-05-05 Alexandre Oliva + + * ld-frv/fdpic.exp: Restore $LDFLAGS at the end. + * ld-frv/fr450-link.d: Match fdpic as well. + +2004-05-05 Kaz Kojima + + * ld-sh/sh64/crange1.rd: Update sh_info to decimal. + * ld-sh/sh64/crange2.rd: Likewise. + * ld-sh/sh64/crange3.rd: Likewise. + * ld-sh/sh64/crange3-cmpct.rd: Likewise. + * ld-sh/sh64/crange3-media.rd: Likewise. + * ld-sh/sh64/crangerel1.rd: Likewise. + * ld-sh/sh64/crangerel2.rd: Likewise. + +2004-05-05 Alan Modra + + * ld-powerpc/tlsexe.r: Update sh_info to decimal. + * ld-powerpc/tlsexe32.r: Likewise. + * ld-powerpc/tlsexetoc.r: Likewise. + * ld-powerpc/tlsso.r: Likewise. + * ld-powerpc/tlsso32.r: Likewise. + * ld-powerpc/tlstocso.r: Likewise. + +2004-04-24 Chris Demetriou + + * ld-elf/merge.d: XFAIL on all MIPS targets. + +2004-04-24 Alan Modra + + * ld-powerpc/tlsexe32.d: Update. + * ld-powerpc/tlsso32.d: Update. + +2004-04-23 Chris Demetriou + + * ld-mips-elf/reloc-3-r.d: Remove, as part of MIPS -membedded-pic + removal. + * ld-mips-elf/reloc-3-srec.d: Likewise. + * ld-mips-elf/reloc-3.ld: Likewise. + * ld-mips-elf/reloc-3a.s: Likewise. + * ld-mips-elf/reloc-3b.s: Likewise. + * ld-mips-elf/mips-elf.exp: Don't run now-removed tests. + +2004-04-22 Kaz Kojima + + * ld-sh/tlsbin-1.d: Update + * ld-sh/tlspic-1.d: Update. + +2004-04-22 H.J. Lu + + * ld-i386/tlspic.dd: Updated. + +2004-04-21 Chris Demetriou + + * ld-empic/run.c: Removed as part of MIPS --embedded-relocs removal. + * ld-empic/empic.exp: Likewise. + * ld-empic/relax.t: Likewise. + * ld-empic/relax1.c: Likewise. + * ld-empic/relax2.c: Likewise. + * ld-empic/relax3.c: Likewise. + * ld-empic/relax4.c: Likewise. + * ld-empic/runtest1.c: Likewise. + * ld-empic/runtest2.c: Likewise. + * ld-empic/runtesti.s: Likewise. + * ld-mips-elf/empic1-ln.d: Likewise. + * ld-mips-elf/empic1-lp.d: Likewise. + * ld-mips-elf/empic1-mn.d: Likewise. + * ld-mips-elf/empic1-mp.d: Likewise. + * ld-mips-elf/empic1-ref.s: Likewise. + * ld-mips-elf/empic1-sn.d: Likewise. + * ld-mips-elf/empic1-sp.d: Likewise. + * ld-mips-elf/empic1-space.s: Likewise. + * ld-mips-elf/empic1-tgt.s: Likewise. + * ld-mips-elf/empic2-fwd-0.d: Likewise. + * ld-mips-elf/empic2-fwd-1.d: Likewise. + * ld-mips-elf/empic2-fwd-tgt.s: Likewise. + * ld-mips-elf/empic2-ref.s: Likewise. + * ld-mips-elf/empic2-rev-0.d: Likewise. + * ld-mips-elf/empic2-rev-1.d: Likewise. + * ld-mips-elf/empic2-rev-tgt.s: Likewise. + * ld-mips-elf/empic2-space.s: Likewise. + * ld-mips-elf/emrelocs-eb.d: Likewise. + * ld-mips-elf/emrelocs-el.d: Likewise. + * ld-mips-elf/emrelocs.ld: Likewise. + * ld-mips-elf/emrelocs1.s: Likewise. + * ld-mips-elf/emrelocs2.s: Likewise. + * ld-mips-elf/mips-elf.exp: Don't run now-removed tests. + +2004-04-20 H.J. Lu + + * ld-elfweak/elfweak.exp: Add an undefined weak size change + test. + + * ld-elfweak/size.dat: New file. + * ld-elfweak/size_bar.c: Likewise. + * ld-elfweak/size_foo.c: Likewise. + * ld-elfweak/size_main.c: Likewise. + +2004-04-14 Brian Ford + DJ Delorie + + * ld-pe/pe.exp: New, tests for i?86 PE. + * ld-pe/secrel1.s: New, test R_SECREL32 reloc. + * ld-pe/secrel2.s: Likewise. + * ld-pe/secrel.d: Likewise. + +2004-04-19 Jakub Jelinek + + * ld-elfvsb/elfvsb.exp: XFAIL some tests on sparc64. + * ld-shared/shared.exp: Likewise. + 2004-04-14 H.J. Lu * ld-scripts/assert.s: Add a newline. diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-elf/frame.exp binutils-2.15.91.0.1/ld/testsuite/ld-elf/frame.exp --- binutils-2.15.90.0.3/ld/testsuite/ld-elf/frame.exp 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-elf/frame.exp 2004-05-27 11:26:05.233094109 -0700 @@ -0,0 +1,55 @@ +# Expect script for common symbol tests +# Copyright 2004 Free Software Foundation, Inc. +# +# This file 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 of the License, or +# (at your option) any later version. +# +# This program 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 this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# +# Written by H.J. Lu (hongjiu.lu@intel.com) +# + +# Make sure that ld correctly handles frame sections in ELF. + +# This test can only be run on ELF platforms. +if ![is_elf_format] { + return +} + +set test1 "read-only .eh_frame section" +set test2 "read-only .gcc_except_table section" + +global as +global ld + +if { ![ld_assemble $as $srcdir/$subdir/tbss.s tmpdir/tbss.o ] + || ![ld_assemble $as $srcdir/$subdir/frame.s tmpdir/frame.o] } { + unresolved "$test1" + return +} + +if { [ld_simple_link $ld tmpdir/frame.so "--shared tmpdir/frame.o tmpdir/tbss.o"] } { + pass "$test1" +} else { + fail "$test1" +} + +if ![ld_assemble $as $srcdir/$subdir/table.s tmpdir/table.o ] { + unresolved "$test2" + return +} + +if { [ld_simple_link $ld tmpdir/table.so "--shared tmpdir/table.o tmpdir/tbss.o"] } { + pass "$test2" +} else { + fail "$test2" +} diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-elf/frame.s binutils-2.15.91.0.1/ld/testsuite/ld-elf/frame.s --- binutils-2.15.90.0.3/ld/testsuite/ld-elf/frame.s 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-elf/frame.s 2004-05-27 11:26:05.233094109 -0700 @@ -0,0 +1,2 @@ + .section .eh_frame,"a",%progbits + .4byte 0 diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-elf/merge.d binutils-2.15.91.0.1/ld/testsuite/ld-elf/merge.d --- binutils-2.15.90.0.3/ld/testsuite/ld-elf/merge.d 2003-05-15 13:42:26.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-elf/merge.d 2004-05-27 11:26:05.255091265 -0700 @@ -3,7 +3,7 @@ #objdump: -s #xfail: "arc-*-*" "avr-*-*" "cris-*-*" "dlx-*-*" "fr30-*-*" "frv-*-*" #xfail: "hppa*-*-*" "h8300-*-*" "i960-*-*" "ip2k-*-*" "m32r-*-*" "mcore-*-*" -#xfail: "mn10*-*-*" "mips64*-*-linux*" "openrisc-*-*" "pj-*-*" "sparc*-*-*" +#xfail: "mn10*-*-*" "mips*-*-*" "openrisc-*-*" "pj-*-*" "sparc*-*-*" #xfail: "xtensa-*-*" .*: file format .*elf.* diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-elf/table.s binutils-2.15.91.0.1/ld/testsuite/ld-elf/table.s --- binutils-2.15.90.0.3/ld/testsuite/ld-elf/table.s 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-elf/table.s 2004-05-27 11:26:05.255091265 -0700 @@ -0,0 +1 @@ + .section .gcc_except_table,"a",%progbits diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-elf/tbss.s binutils-2.15.91.0.1/ld/testsuite/ld-elf/tbss.s --- binutils-2.15.90.0.3/ld/testsuite/ld-elf/tbss.s 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-elf/tbss.s 2004-05-27 11:26:05.255091265 -0700 @@ -0,0 +1,15 @@ + .file "x.c" +.globl bss + .section .bss,"aw",%nobits + .p2align 12 + .type bss,%object + .size bss,4096 +bss: + .zero 4096 +.globl tbss + .section .tbss,"awT",%nobits + .p2align 12 + .type tbss,%object + .size tbss,4096 +tbss: + .zero 4096 diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-elfvsb/elfvsb.exp binutils-2.15.91.0.1/ld/testsuite/ld-elfvsb/elfvsb.exp --- binutils-2.15.90.0.3/ld/testsuite/ld-elfvsb/elfvsb.exp 2004-01-14 13:07:53.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-elfvsb/elfvsb.exp 2004-05-27 11:26:05.270089325 -0700 @@ -1,5 +1,5 @@ # Expect script for ld-visibility tests -# Copyright 2000, 2001, 2003 Free Software Foundation, Inc. +# Copyright 2000, 2001, 2003, 2004 Free Software Foundation, Inc. # # This file is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -261,6 +261,9 @@ proc visibility_run {visibility} { && ![ string match $visibility "hidden_undef_def" ] && ![ string match $visibility "protected_undef" ] } { setup_xfail "s390x-*-linux*" + if { [istarget sparc*-*-linux*] && [is_elf64 $tmpdir/mainnp.o] } { + setup_xfail "sparc*-*-linux*" + } } setup_xfail "x86_64-*-linux*" if { ![istarget hppa*64*-*-linux*] } { @@ -289,6 +292,10 @@ proc visibility_run {visibility} { || [ string match $visibility "protected_weak" ] || [ string match $visibility "normal" ] } { setup_xfail "powerpc-*-linux*" + setup_xfail "s390x-*-linux*" + if { [istarget sparc*-*-linux*] && [is_elf64 $tmpdir/mainnp.o] } { + setup_xfail "sparc*-*-linux*" + } } if { ![ string match $visibility "hidden_undef" ] && ![ string match $visibility "protected_undef" ] } { @@ -358,6 +365,9 @@ proc visibility_run {visibility} { && ![ string match $visibility "hidden_undef_def" ] && ![ string match $visibility "protected_undef" ] } { setup_xfail "s390x-*-linux*" + if { [istarget sparc*-*-linux*] && [is_elf64 $tmpdir/mainp.o] } { + setup_xfail "sparc*-*-linux*" + } } setup_xfail "x86_64-*-linux*" if { ![istarget hppa*64*-*-linux*] } { diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-elfweak/elfweak.exp binutils-2.15.91.0.1/ld/testsuite/ld-elfweak/elfweak.exp --- binutils-2.15.90.0.3/ld/testsuite/ld-elfweak/elfweak.exp 2003-05-23 07:18:54.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-elfweak/elfweak.exp 2004-05-27 11:26:05.283087644 -0700 @@ -287,7 +287,8 @@ proc build_lib {test libname objs dynsym return } - if {![objdump_dynsymstuff $objdump $tmpdir/$libname.so $srcdir/$subdir/$dynsymexp]} { + if {![string match "" $dynsymexp] \ + && ![objdump_dynsymstuff $objdump $tmpdir/$libname.so $srcdir/$subdir/$dynsymexp]} { fail $test return } @@ -465,3 +466,30 @@ build_exec "ELF weak data first DSO" foo build_exec "ELF weak data last DSO" foo "libfoo1a.so main1.o libbar1a.so" "-Wl,-rpath,." weakdata weakdata.dsym "" build_exec "ELF weak data first DSO common" foo "main1.o libbar1a.so libfoo1b.so" "-Wl,-rpath,." weakdata weakdata.dsym "" build_exec "ELF weak data last DSO common" foo "libfoo1b.so main1.o libbar1a.so" "-Wl,-rpath,." weakdata weakdata.dsym "" + +if ![ld_compile "$CC $CFLAGS $picflag" $srcdir/$subdir/size_foo.c $tmpdir/size_foo.o] { + unresolved "ELF weak (size)" + return +} + +if ![ld_compile "$CC $CFLAGS $picflag" $srcdir/$subdir/size_bar.c $tmpdir/size_bar.o] { + unresolved "ELF weak (size)" + return +} + +build_lib "ELF DSO small bar (size)" libsize_bar "size_bar.o" "" +build_lib "ELF DSO foo with small bar (size)" libsize_foo "size_foo.o libsize_bar.so" "" + +if ![ld_compile "$CC $CFLAGS $picflag -DSIZE_BIG" $srcdir/$subdir/size_bar.c $tmpdir/size_bar.o] { + unresolved "ELF weak (size)" + return +} + +build_lib "ELF DSO big bar (size)" libsize_bar "size_bar.o" "" + +if ![ld_compile "$CC $CFLAGS" $srcdir/$subdir/size_main.c $tmpdir/size_main.o] { + unresolved "ELF weak (size)" + return +} + +build_exec "ELF weak size" size_main "size_main.o libsize_foo.so libsize_bar.so" "-Wl,-rpath,." size "" "" diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-elfweak/size.dat binutils-2.15.91.0.1/ld/testsuite/ld-elfweak/size.dat --- binutils-2.15.90.0.3/ld/testsuite/ld-elfweak/size.dat 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-elfweak/size.dat 2004-05-27 11:26:05.284087515 -0700 @@ -0,0 +1,3 @@ +1 +2 +3 diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-elfweak/size_bar.c binutils-2.15.91.0.1/ld/testsuite/ld-elfweak/size_bar.c --- binutils-2.15.90.0.3/ld/testsuite/ld-elfweak/size_bar.c 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-elfweak/size_bar.c 2004-05-27 11:26:05.284087515 -0700 @@ -0,0 +1,11 @@ +#include + +void +bar () +{ +#ifdef SIZE_BIG + printf ("1\n"); + printf ("2\n"); + printf ("3\n"); +#endif +} diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-elfweak/size_foo.c binutils-2.15.91.0.1/ld/testsuite/ld-elfweak/size_foo.c --- binutils-2.15.90.0.3/ld/testsuite/ld-elfweak/size_foo.c 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-elfweak/size_foo.c 2004-05-27 11:26:05.285087386 -0700 @@ -0,0 +1,8 @@ +#pragma weak bar + +extern void bar (); + +foo () +{ + bar (); +} diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-elfweak/size_main.c binutils-2.15.91.0.1/ld/testsuite/ld-elfweak/size_main.c --- binutils-2.15.90.0.3/ld/testsuite/ld-elfweak/size_main.c 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-elfweak/size_main.c 2004-05-27 11:26:05.285087386 -0700 @@ -0,0 +1,8 @@ +extern void foo (); + +int +main () +{ + foo (); + return 0; +} diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-empic/empic.exp binutils-2.15.91.0.1/ld/testsuite/ld-empic/empic.exp --- binutils-2.15.90.0.3/ld/testsuite/ld-empic/empic.exp 2001-07-26 18:02:55.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-empic/empic.exp 1969-12-31 16:00:00.000000000 -0800 @@ -1,263 +0,0 @@ -# Expect script for ld-empic tests -# Copyright 1994, 1995, 1996 Free Software Foundation, Inc. -# -# This file 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 of the License, or -# (at your option) any later version. -# -# This program 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 this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# -# Written by Ian Lance Taylor (ian@cygnus.com) -# - -# Test the handling of MIPS embedded PIC code. This test essentially -# tests the compiler and assembler as well as the linker, since MIPS -# embedded PIC is a GNU enhancement to standard MIPS tools. - -# Embedded PIC is only supported for MIPS ECOFF targets. -if ![istarget mips*-*-ecoff*] { - return -} - -set testname relax - -if { [which $CC] == 0 } { - untested $testname - return -} - -# Test that relaxation works correctly. This testsuite was composed -# (by experimentation) to force the linker to relax twice--that is, -# the first relaxation pass will force another call to be out of -# range, requiring a second relaxation pass. -if { ![ld_compile "$CC $CFLAGS -membedded-pic" $srcdir/$subdir/relax1.c tmpdir/relax1.o] - || ![ld_compile "$CC $CFLAGS -membedded-pic" $srcdir/$subdir/relax2.c tmpdir/relax2.o] - || ![ld_compile "$CC $CFLAGS -membedded-pic" $srcdir/$subdir/relax3.c tmpdir/relax3.o] - || ![ld_compile "$CC $CFLAGS -membedded-pic" $srcdir/$subdir/relax4.c tmpdir/relax4.o] } { - unresolved $testname - return -} - -if ![ld_simple_link $ld tmpdir/relax "--relax -T $srcdir/$subdir/relax.t tmpdir/relax1.o tmpdir/relax2.o tmpdir/relax3.o tmpdir/relax4.o"] { - fail $testname -} else { - # Check that the relaxation produced the correct result. Check - # each bal instruction. Some will go directly to the start of a - # function, which is OK. Some will form part of the five - # instruction expanded call sequence, in which case we compute the - # real destination and make sure it is the start of a function. - # Some bal instructions are used to locate the start of the - # function in order to do position independent addressing into the - # text section, in which case we just check that it correctly - # computes the start of the function. - - # Get the symbol table. - if ![ld_nm $nm "" tmpdir/relax] { - unresolved $testname - return - } - - # Get a disassembly. - send_log "$objdump -d tmpdir/relax >tmpdir/relax.dis\n" - verbose "$objdump -d tmpdir/relax >tmpdir/relax.dis" - catch "exec $objdump -d tmpdir/relax >tmpdir/relax.dis" exec_output - if ![string match "" $exec_output] { - send_log "$exec_output\n" - verbose $exec_output - unresolved $testname - return - } - - set balcnt 0 - set file [open tmpdir/relax.dis r] - while { [gets $file line] != -1 } { - verbose "$line" 2 - - if ![string match "*bal*" $line] { - continue - } - - verbose "$line" - - incr balcnt - - if ![regexp "^(\[0-9a-fA-F\]+) (<\[a-z+0-9A-Z.\]+>)? bal (\[0-9a-fA-F\]+)" $line whole addr label dest] { - perror "unrecognized format for $line" - unresolved $testname - return - } - - if "0x$addr + 8 != 0x$dest" { - # This is a straight function call. All function calls in - # this example are to either foo or bar. - if "0x$dest != $nm_output(foo) && 0x$dest != $nm_output(bar)" { - send_log "fail 1\n" - send_log "$line\n" - fail $testname - return - } - } else { - # Pick up the next line. If it is sll, this is a switch - # prologue, and there is not much we can do to test it. - # Otherwise, it should be lui, and the next instruction - # should be an addiu, followed by an addu to $31. - if { [gets $file l] == -1 } { - send_log "fail 2\n" - send_log "$line\n" - fail $testname - return - } - verbose $l - - if [string match "*sll*" $l] { - continue - } - if ![regexp "lui (\[\$a-z0-9\]+),(\[0-9a-fA-Fx\]+)" $l whole reg upper] { - send_log "fail 3\n" - send_log "$line\n" - send_log "$l\n" - fail $testname - return - } - - if { [gets $file l] == -1 } { - send_log "fail 4\n" - send_log "$line\n" - fail $testname - return - } - verbose "$l" - if ![regexp "addiu \\$reg,\\$reg,(\[-0-9\]+)" $l whole lower] { - send_log "fail 5\n" - send_log "$line\n" - send_log "$l\n" - send_log "addiu \\$reg,\\$reg,(\[-0-9\]+)\n" - fail $testname - return - } - - if { [gets $file l] == -1 } { - send_log "fail 6\n" - send_log "$line\n" - fail $testname - return - } - verbose "$l" - if ![regexp "addu \\$reg,\\$reg,\\\$ra" $l] { - send_log "fail 7\n" - send_log "$line\n" - send_log "$l\n" - fail $testname - return - } - - # The next line will be jalr in the case of an expanded - # call. Otherwise, the code is getting the start of the - # function, and the next line can be anything. - - if { [gets $file l] == -1 } { - send_log "fail 8\n" - send_log "$line\n" - fail $testname - return - } - verbose "$l" - if [string match "*jalr*" $l] { - set dest [expr 0x$addr + 8 + ($upper << 16) + $lower] - if { $dest != $nm_output(foo) && $dest != $nm_output(bar) } { - send_log "fail 9\n" - send_log "$line\n" - fail $testname - return - } - } else { - set dest [expr ($upper << 16) + $lower] - if ![regexp "<(\[.a-z\]+)\\+(\[0-9a-fA-F\]+)>" $label whole base offset] { - send_log "fail 10\n" - send_log "$line\n" - fail $testname - return - } - set offset 0x$offset - if { $base == ".foo" } { - set offset [expr $offset - ($nm_output(foo) - 0x30)] - } - if { $offset + 8 != - $dest } { - send_log "fail 11\n" - send_log "$line\n" - fail $testname - return - } - } - } - } - - close $file - - if {$balcnt < 10} { - send_log "fail 12\n" - fail $testname - } else { - verbose "$balcnt bal instructions" - pass $testname - } -} - -# We now test actually running embedded MIPS PIC code. This can only -# be done on a MIPS host with the same endianness as our target. -if [istarget mipsel-*-*] { - if ![ishost mips*-*-ultrix*] { - return - } -} else { - if ![ishost mips*-*-irix*] { - return - } -} - -set testname "run embedded PIC code" - -# Compile the program which will run the test. This code must be -# compiled for the host, not the target. -send_log "$CC_FOR_HOST $CFLAGS_FOR_HOST -o tmpdir/run $srcdir/$subdir/run.c\n" -verbose "$CC_FOR_HOST $CFLAGS_FOR_HOST -o tmpdir/run $srcdir/$subdir/run.c" -catch "exec $CC_FOR_HOST $CFLAGS_FOR_HOST -o tmpdir/run $srcdir/$subdir/run.c" exec_output -if ![string match "" $exec_output] { - send_log "$exec_output\n" - verbose "$exec_output" - unresolved $testname - return -} - -# Compile and link the test. -if { ![ld_compile "$CC $CFLAGS -membedded-pic" $srcdir/$subdir/runtesti.s tmpdir/runtesti.o] - || ![ld_compile "$CC $CFLAGS -membedded-pic" $srcdir/$subdir/runtest1.c tmpdir/runtest1.o] - || ![ld_compile "$CC $CFLAGS -membedded-pic" $srcdir/$subdir/runtest2.c tmpdir/runtest2.o] } { - unresolved $testname - return -} -if ![ld_simple_link $ld tmpdir/runtest "--embedded-relocs tmpdir/runtesti.o tmpdir/runtest1.o tmpdir/runtest2.o"] { - fail $testname -} else { - # Now run the test. - send_log "tmpdir/run tmpdir/runtest\n" - verbose "tmpdir/run tmpdir/runtest" - catch "exec tmpdir/run tmpdir/runtest" exec_output - if [string match "*ran and returned 0*" $exec_output] { - send_log "$exec_output\n" - verbose "$exec_output" - pass $testname - } else { - send_log "$exec_output\n" - verbose "$exec_output" - fail $testname - } -} diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-empic/relax.t binutils-2.15.91.0.1/ld/testsuite/ld-empic/relax.t --- binutils-2.15.90.0.3/ld/testsuite/ld-empic/relax.t 1999-06-03 11:02:11.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-empic/relax.t 1969-12-31 16:00:00.000000000 -0800 @@ -1,49 +0,0 @@ -OUTPUT_FORMAT("ecoff-bigmips") -SECTIONS -{ - .foo 0x30 : { - tmpdir/relax3.o(.text) - tmpdir/relax1.o(.text) - } - .text 0x20000 : { - _ftext = . ; - *(.init) - eprol = .; - tmpdir/relax4.o(.text) - *(.text) - *(.fini) - etext = .; - _etext = .; - } - .rdata . : { - *(.rdata) - } - _fdata = .; - .data . : { - *(.data) - CONSTRUCTORS - } - _gp = . + 0x8000; - .lit8 . : { - *(.lit8) - } - .lit4 . : { - *(.lit4) - } - .sdata . : { - *(.sdata) - } - edata = .; - _edata = .; - _fbss = .; - .sbss . : { - *(.sbss) - *(.scommon) - } - .bss . : { - *(.bss) - *(COMMON) - } - end = .; - _end = .; -} diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-empic/relax1.c binutils-2.15.91.0.1/ld/testsuite/ld-empic/relax1.c --- binutils-2.15.90.0.3/ld/testsuite/ld-empic/relax1.c 1999-06-03 11:02:11.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-empic/relax1.c 1969-12-31 16:00:00.000000000 -0800 @@ -1,22 +0,0 @@ -/* First source file in relaxation test. */ - -extern int bar (); -static int foo2 (); - -int foo (int i) -{ - switch (i) - { - case 0: bar (0); break; - case 1: bar (1); break; - case 2: bar (2); break; - case 3: bar (3); break; - case 4: bar (foo2); break; - case 5: bar (bar); break; - } - while (1) - if (i) - return bar (); -} - -static int foo2 () { } diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-empic/relax2.c binutils-2.15.91.0.1/ld/testsuite/ld-empic/relax2.c --- binutils-2.15.90.0.3/ld/testsuite/ld-empic/relax2.c 1999-06-03 11:02:11.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-empic/relax2.c 1969-12-31 16:00:00.000000000 -0800 @@ -1,19 +0,0 @@ -/* Second source file in relaxation test. */ - -int bar2 () -{ - int i; - - for (i = 0; i < 100; i++) - foo (); - return foo () + foo () + foo () + foo (); -} - -int bar (int i) -{ - while (1) - if (i) - return foo (); - else - return foo (); -} diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-empic/relax3.c binutils-2.15.91.0.1/ld/testsuite/ld-empic/relax3.c --- binutils-2.15.90.0.3/ld/testsuite/ld-empic/relax3.c 1999-06-03 11:02:11.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-empic/relax3.c 1969-12-31 16:00:00.000000000 -0800 @@ -1,3 +0,0 @@ -/* Third source file in relaxation test. */ - -int quux () { return 0; } diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-empic/relax4.c binutils-2.15.91.0.1/ld/testsuite/ld-empic/relax4.c --- binutils-2.15.90.0.3/ld/testsuite/ld-empic/relax4.c 1999-06-03 11:02:11.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-empic/relax4.c 1969-12-31 16:00:00.000000000 -0800 @@ -1,3 +0,0 @@ -/* Fourth source file in relaxation test. */ - -int xyzzy () { return 0; } diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-empic/run.c binutils-2.15.91.0.1/ld/testsuite/ld-empic/run.c --- binutils-2.15.90.0.3/ld/testsuite/ld-empic/run.c 1999-06-03 11:02:11.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-empic/run.c 1969-12-31 16:00:00.000000000 -0800 @@ -1,160 +0,0 @@ -/* Load and run a MIPS position independent ECOFF file. - Written by Ian Lance Taylor - Public domain. */ - -/* This program will load an ECOFF file into memory and execute it. - The file must have been compiled using the GNU -membedded-pic - switch to produce position independent code. This will only work - if this program is run on a MIPS system with the same endianness as - the ECOFF file. The ECOFF file must be complete. System calls may - not work correctly. - - There are further restrictions on the file (they could be removed - by doing some additional programming). The file must be aligned - such that it does not require any gaps introduced in the data - segment; the GNU linker produces such files by default. However, - the file must not assume that the text or data segment is aligned - on a page boundary. The start address must be at the start of the - text segment. - - The ECOFF file is run by calling it as though it were a function. - The address of the data segment is passed as the only argument. - The file is expected to return an integer value, which will be - printed. */ - -#include -#include -#include - -/* Structures used in ECOFF files. We assume that a short is two - bytes and an int is four bytes. This is not much of an assumption, - since we already assume that we are running on a MIPS host with the - same endianness as the file we are examining. */ - -struct ecoff_filehdr { - unsigned short f_magic; /* magic number */ - unsigned short f_nscns; /* number of sections */ - unsigned int f_timdat; /* time & date stamp */ - unsigned int f_symptr; /* file pointer to symtab */ - unsigned int f_nsyms; /* number of symtab entries */ - unsigned short f_opthdr; /* sizeof(optional hdr) */ - unsigned short f_flags; /* flags */ -}; - -struct ecoff_aouthdr -{ - unsigned short magic; /* type of file */ - unsigned short vstamp; /* version stamp */ - unsigned int tsize; /* text size in bytes, padded to FW bdry*/ - unsigned int dsize; /* initialized data " " */ - unsigned int bsize; /* uninitialized data " " */ - unsigned int entry; /* entry pt. */ - unsigned int text_start; /* base of text used for this file */ - unsigned int data_start; /* base of data used for this file */ - unsigned int bss_start; /* base of bss used for this file */ - unsigned int gprmask; /* ?? */ - unsigned int cprmask[4]; /* ?? */ - unsigned int gp_value; /* value for gp register */ -}; - -#define ECOFF_SCNHDR_SIZE (40) - -static void -die (s) - char *s; -{ - perror (s); - exit (1); -} - -int -main (argc, argv) - int argc; - char **argv; -{ - FILE *f; - struct stat s; - char *z; - struct ecoff_filehdr *fh; - struct ecoff_aouthdr *ah; - unsigned int toff; - char *t, *d; - int (*pfn) (); - int ret; - - if (argc != 2) - { - fprintf (stderr, "Usage: %s file\n", argv[0]); - exit (1); - } - - f = fopen (argv[1], "r"); - if (f == NULL) - die (argv[1]); - - if (stat (argv[1], &s) < 0) - die ("stat"); - - z = (char *) malloc (s.st_size); - if (z == NULL) - die ("malloc"); - - if (fread (z, 1, s.st_size, f) != s.st_size) - die ("fread"); - - /* We need to figure out the start of the text segment, which is the - location we are going to call, and the start of the data segment, - which we are going to pass as an argument. We also need the size - and start address of the bss segment. This information is all in - the ECOFF a.out header. */ - - fh = (struct ecoff_filehdr *) z; - if (fh->f_opthdr != sizeof (struct ecoff_aouthdr)) - { - fprintf (stderr, "%s: unexpected opthdr size: is %u, want %u\n", - argv[1], (unsigned int) fh->f_opthdr, - (unsigned int) sizeof (struct ecoff_aouthdr)); - exit (1); - } - - ah = (struct ecoff_aouthdr *) (z + sizeof (struct ecoff_filehdr)); - if (ah->magic != 0413) - { - fprintf (stderr, "%s: bad aouthdr magic number 0%o (want 0413)\n", - argv[1], (unsigned int) ah->magic); - exit (1); - } - - /* We should clear the bss segment at this point. This is the - ah->bsize bytes starting at ah->bss_start, To do this correctly, - we would have to make sure our memory block is large enough. It - so happens that our test case does not have any additional pages - for the bss segment--it is contained within the data segment. - So, we don't bother. */ - if (ah->bsize != 0) - { - fprintf (stderr, - "%s: bss segment is %u bytes; non-zero sizes not supported\n", - argv[1], ah->bsize); - exit (1); - } - - /* The text section starts just after all the headers, rounded to a - 16 byte boundary. */ - toff = (sizeof (struct ecoff_filehdr) + sizeof (struct ecoff_aouthdr) - + fh->f_nscns * ECOFF_SCNHDR_SIZE); - toff += 15; - toff &=~ 15; - t = z + toff; - - /* The tsize field gives us the start of the data segment. */ - d = z + ah->tsize; - - /* Call the code as a function. */ - pfn = (int (*) ()) t; - ret = (*pfn) (d); - - printf ("%s ran and returned %d\n", argv[1], ret); - - exit (0); -} diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-empic/runtest1.c binutils-2.15.91.0.1/ld/testsuite/ld-empic/runtest1.c --- binutils-2.15.90.0.3/ld/testsuite/ld-empic/runtest1.c 1999-06-03 11:02:11.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-empic/runtest1.c 1969-12-31 16:00:00.000000000 -0800 @@ -1,117 +0,0 @@ -/* First C source file for actual execution test. */ - -/* The main point of this test is to make sure that the code and data - are truly position independent. We statically initialize several - global variables, and make sure that they are correctly adjusted at - runtime. */ - -int i = 1; -int j = 0; -extern int k; -int l; -char small_buf[] = "aaaa"; -char *small_pointer = small_buf; -char big_buf[] = "aaaaaaaaaaaaaaaa"; -char *big_pointer = big_buf; - -extern int bar (); -int (*pbar) () = bar; - -static int -foo2 (arg) - int arg; -{ - l = arg; - return i + j; -} - -int (*pfoo2) () = foo2; - -int -chkstr (z, c) - char *z; - int c; -{ - /* Switch statements need extra effort to be position independent, - so we run one here, even though most of the cases will never be - taken. */ - switch (c) - { - case 1: - case 2: - case 3: - return i - 1; - case 4: - break; - case 5: - case 6: - case 7: - case 8: - case 9: - return i * j; - case 10: - case 11: - case 12: - case 13: - case 14: - case 15: - return j; - case 16: - break; - default: - return 0; - } - - while (c-- != 0) - if (*z++ != 'a') - return 0; - - return *z == '\0'; -} - -/* This function is called by the assembler startup routine. It tries - to test that everything was correctly initialized. It returns 0 on - success, something else on failure. */ - -int -foo () -{ - if (i != 1) - return 1; - if (j != 0) - return 2; - if (! chkstr (small_buf, 4)) - return 3; - if (! chkstr (small_pointer, 4)) - return 4; - if (! chkstr (big_buf, 16)) - return 5; - if (! chkstr (big_pointer, 16)) - return 6; - - if (l != 0) - return 7; - if (foo2 (1) != 1) - return 8; - if (l != 1) - return 9; - if ((*pfoo2) (2) != 1) - return 10; - if (l != 2) - return 11; - - if (bar (1) != 0) - return 12; - if (bar (-1) != 1) - return 13; - if ((*pbar) (0xa5a5a5a5) != -1) - return 14; - if (k != 0xa5a5a5a5) - return 15; - if ((*pbar) (0) != 0xa5a5a5a5) - return 16; - if (k != 0) - return 17; - - return 0; -} diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-empic/runtest2.c binutils-2.15.91.0.1/ld/testsuite/ld-empic/runtest2.c --- binutils-2.15.90.0.3/ld/testsuite/ld-empic/runtest2.c 1999-06-03 11:02:11.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-empic/runtest2.c 1969-12-31 16:00:00.000000000 -0800 @@ -1,26 +0,0 @@ -/* Second C source file for actual execution test. */ - -int k; -extern int i; -extern int j; -extern char small_buf[]; -extern char *small_pointer; - -extern int chkstr (); - -int -bar (n) - int n; -{ - int r; - - if (i != 1 - || j != 0 - || ! chkstr (small_buf, 4) - || ! chkstr (small_pointer, 4)) - return k + 1; - - r = k; - k = n; - return r; -} diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-empic/runtesti.s binutils-2.15.91.0.1/ld/testsuite/ld-empic/runtesti.s --- binutils-2.15.90.0.3/ld/testsuite/ld-empic/runtesti.s 1999-06-03 11:02:11.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-empic/runtesti.s 1969-12-31 16:00:00.000000000 -0800 @@ -1,94 +0,0 @@ -# Assembler initialization code for actual execution test. - -# This code becomes the start of the execution test program. It is -# responsible for initializing the static data, invoking the C code, -# and returning the result. It is called as though it were a C -# function with an argument of the address of the data segment. - -# We need to know the value of _ftext and _fdata at link time, but we -# have no way to actually get that at runtime. This is because when -# this code is compiled with -membedded-pic, the la instruction will -# be turned into an addiu $gp instruction. We work around this by -# storing the information in words in the .data section. We then load -# the values of these words *before* doing the runtime relocation. - .sdata -text_start: - .word _ftext -data_start: - .word _fdata - - .globl start - .text -start: - # Grab some space on the stack, just as though we were a real - # function. - addiu $sp,$sp,-8 - sw $31,0($sp) - - # Save the $gp register, and set it up for our data section. - sw $gp,4($sp) - - addu $gp,$4,0x8000 # macro - - # The start of the data segment is in $4. - - # Get the address of start into $5 in a position independent - # fashion. - .set noreorder - $LF1 = . + 8 - bal $LF1 - la $5,start-$LF1 # macro - .set reorder - addu $5,$5,$31 - - # Now get the address of _ftext into $6. - la $6,_ftext-start # macro - addu $6,$6,$5 - - # Get the value of _ftext used to link into $7. - lw $7,text_start # macro - - # Get the value of _fdata used to link into $8. - lw $8,data_start # macro - - # Get the address of __runtime_reloc_start into $9. - la $9,__runtime_reloc_start-start # macro - addu $9,$9,$5 - - # Get the address of __runtime_reloc_stop into $10. - la $10,__runtime_reloc_stop-start # macro - addu $10,$10,$5 - - # The words between $9 and $10 are the runtime initialization - # instructions. Step through and relocate them. First set - # $11 and $12 to the values to add to text and data sections, - # respectively. - subu $11,$6,$7 - subu $12,$4,$8 - -1: - bge $9,$10,3f # macro - lw $13,0($9) - and $14,$13,0xfffffffe # macro - move $15,$11 - beq $13,$14,2f - move $15,$12 -2: - addu $14,$14,$4 - lw $24,0($14) - addu $24,$24,$15 - sw $24,0($14) - addiu $9,$9,4 - b 1b -3: - - # Now the statically initialized data has been relocated - # correctly, and we can call the C code which does the actual - # testing. - bal foo - - # We return the value returned by the C code. - lw $31,0($sp) - lw $gp,4($sp) - addu $sp,$sp,8 - j $31 diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-frv/fdpic.exp binutils-2.15.91.0.1/ld/testsuite/ld-frv/fdpic.exp --- binutils-2.15.90.0.3/ld/testsuite/ld-frv/fdpic.exp 2004-03-03 12:24:34.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-frv/fdpic.exp 2004-05-27 11:26:05.315083507 -0700 @@ -21,6 +21,7 @@ if {![istarget frv*-*-*] || ![is_elf_for } global LDFLAGS +set saved_LDFLAGS "$LDFLAGS" set LDFLAGS "$LDFLAGS -melf32frvfd" run_dump_test "fdpic-static-1" @@ -56,3 +57,5 @@ run_dump_test "fdpic-pie-8" run_dump_test "fdpic-shared-8-fail" run_dump_test "fdpic-shared-8" run_dump_test "fdpic-shared-local-8" + +set LDFLAGS "$saved_LDFLAGS" diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-frv/fr450-link.d binutils-2.15.91.0.1/ld/testsuite/ld-frv/fr450-link.d --- binutils-2.15.90.0.3/ld/testsuite/ld-frv/fr450-link.d 2004-03-03 12:24:34.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-frv/fr450-link.d 2004-05-27 11:26:05.317083248 -0700 @@ -6,6 +6,6 @@ #ld: -r #objdump: -p -.*: file format elf32-frv -private flags = 0x8000000: -mcpu=fr450 +.*: file format elf32-frv(|fdpic) +private flags = 0x800[08]000: -mcpu=fr450(| -mfdpic) diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-i386/combreloc.d binutils-2.15.91.0.1/ld/testsuite/ld-i386/combreloc.d --- binutils-2.15.90.0.3/ld/testsuite/ld-i386/combreloc.d 2002-10-10 09:16:57.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-i386/combreloc.d 2004-05-27 11:26:05.342080016 -0700 @@ -8,10 +8,10 @@ Relocation section '.rel.dyn' at offset 0x[0-9a-f]+ contains 4 entries: Offset Info Type Sym.Value Sym. Name +[0-9a-f]+ [0-9a-f]+06 R_386_GLOB_DAT [0-9a-f]+ _start [0-9a-f]+ [0-9a-f]+01 R_386_32 [0-9a-f]+ _start [0-9a-f]+ [0-9a-f]+01 R_386_32 [0-9a-f]+ _start [0-9a-f]+ [0-9a-f]+01 R_386_32 [0-9a-f]+ _start -[0-9a-f]+ [0-9a-f]+06 R_386_GLOB_DAT [0-9a-f]+ _start Relocation section '.rel.plt' at offset 0x[0-9a-f]+ contains 1 entries: Offset Info Type Sym.Value Sym. Name diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-i386/tlsbin.dd binutils-2.15.91.0.1/ld/testsuite/ld-i386/tlsbin.dd --- binutils-2.15.90.0.3/ld/testsuite/ld-i386/tlsbin.dd 2004-03-03 12:24:34.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-i386/tlsbin.dd 2004-05-27 11:26:05.361077559 -0700 @@ -25,14 +25,14 @@ Disassembly of section .text: 8049004: 50[ ]+push %eax 8049005: e8 00 00 00 00[ ]+call 804900a 804900a: 5b[ ]+pop %ebx - 804900b: 81 c3 f6 10 00 00[ ]+add \$0x10f6,%ebx + 804900b: 81 c3 1a 11 00 00[ ]+add \$0x111a,%ebx 8049011: 90[ ]+nop * 8049012: 90[ ]+nop * 8049013: 90[ ]+nop * 8049014: 90[ ]+nop * # GD -> IE because variable is not defined in executable 8049015: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax - 804901b: 2b 83 2c 00 00 00[ ]+sub 0x2c\(%ebx\),%eax + 804901b: 2b 83 f8 ff ff ff[ ]+sub 0xfffffff8\(%ebx\),%eax # ->R_386_TLS_TPOFF32 sG1 8049021: 90[ ]+nop * 8049022: 90[ ]+nop * @@ -41,7 +41,7 @@ Disassembly of section .text: # GD -> IE because variable is not defined in executable where # the variable is referenced through @gottpoff too 8049025: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax - 804902b: 2b 83 1c 00 00 00[ ]+sub 0x1c\(%ebx\),%eax + 804902b: 2b 83 e8 ff ff ff[ ]+sub 0xffffffe8\(%ebx\),%eax # ->R_386_TLS_TPOFF32 sG2 8049031: 90[ ]+nop * 8049032: 90[ ]+nop * @@ -50,7 +50,7 @@ Disassembly of section .text: # GD -> IE because variable is not defined in executable where # the variable is referenced through @gotntpoff too 8049035: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax - 804903b: 2b 83 10 00 00 00[ ]+sub 0x10\(%ebx\),%eax + 804903b: 2b 83 dc ff ff ff[ ]+sub 0xffffffdc\(%ebx\),%eax # ->R_386_TLS_TPOFF sG3 8049041: 90[ ]+nop * 8049042: 90[ ]+nop * @@ -59,7 +59,7 @@ Disassembly of section .text: # GD -> IE because variable is not defined in executable where # the variable is referenced through @gottpoff and @gotntpoff too 8049045: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax - 804904b: 2b 83 20 00 00 00[ ]+sub 0x20\(%ebx\),%eax + 804904b: 2b 83 ec ff ff ff[ ]+sub 0xffffffec\(%ebx\),%eax # ->R_386_TLS_TPOFF32 sG4 8049051: 90[ ]+nop * 8049052: 90[ ]+nop * @@ -67,7 +67,7 @@ Disassembly of section .text: 8049054: 90[ ]+nop * # GD -> LE with global variable defined in executable 8049055: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax - 804905b: 81 e8 a0 00 00 00[ ]+sub \$0xa0,%eax + 804905b: 81 e8 00 10 00 00[ ]+sub \$0x1000,%eax # sg1 8049061: 90[ ]+nop * 8049062: 90[ ]+nop * @@ -75,7 +75,7 @@ Disassembly of section .text: 8049064: 90[ ]+nop * # GD -> LE with local variable defined in executable 8049065: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax - 804906b: 81 e8 80 00 00 00[ ]+sub \$0x80,%eax + 804906b: 81 e8 e0 0f 00 00[ ]+sub \$0xfe0,%eax # sl1 8049071: 90[ ]+nop * 8049072: 90[ ]+nop * @@ -83,7 +83,7 @@ Disassembly of section .text: 8049074: 90[ ]+nop * # GD -> LE with hidden variable defined in executable 8049075: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax - 804907b: 81 e8 60 00 00 00[ ]+sub \$0x60,%eax + 804907b: 81 e8 c0 0f 00 00[ ]+sub \$0xfc0,%eax # sh1 8049081: 90[ ]+nop * 8049082: 90[ ]+nop * @@ -95,11 +95,11 @@ Disassembly of section .text: 804908c: 8d 74 26 00[ ]+lea 0x0\(%esi\),%esi 8049090: 90[ ]+nop * 8049091: 90[ ]+nop * - 8049092: 8d 90 80 ff ff ff[ ]+lea 0xffffff80\(%eax\),%edx + 8049092: 8d 90 20 f0 ff ff[ ]+lea 0xfffff020\(%eax\),%edx # sl1 8049098: 90[ ]+nop * 8049099: 90[ ]+nop * - 804909a: 8d 88 84 ff ff ff[ ]+lea 0xffffff84\(%eax\),%ecx + 804909a: 8d 88 24 f0 ff ff[ ]+lea 0xfffff024\(%eax\),%ecx # sl2 80490a0: 90[ ]+nop * 80490a1: 90[ ]+nop * @@ -111,21 +111,21 @@ Disassembly of section .text: 80490ab: 8d 74 26 00[ ]+lea 0x0\(%esi\),%esi 80490af: 90[ ]+nop * 80490b0: 90[ ]+nop * - 80490b1: 8d 90 a0 ff ff ff[ ]+lea 0xffffffa0\(%eax\),%edx + 80490b1: 8d 90 40 f0 ff ff[ ]+lea 0xfffff040\(%eax\),%edx # sh1 80490b7: 90[ ]+nop * 80490b8: 90[ ]+nop * - 80490b9: 8d 88 a4 ff ff ff[ ]+lea 0xffffffa4\(%eax\),%ecx + 80490b9: 8d 88 44 f0 ff ff[ ]+lea 0xfffff044\(%eax\),%ecx # sh2 80490bf: 90[ ]+nop * 80490c0: 90[ ]+nop * 80490c1: 90[ ]+nop * 80490c2: 90[ ]+nop * # @gottpoff IE against global var - 80490c3: 65 8b 0d 00 00 00 00 mov %gs:0x0,%ecx + 80490c3: 65 8b 0d 00 00 00 00[ ]+mov %gs:0x0,%ecx 80490ca: 90[ ]+nop * 80490cb: 90[ ]+nop * - 80490cc: 2b 8b 1c 00 00 00[ ]+sub 0x1c\(%ebx\),%ecx + 80490cc: 2b 8b e8 ff ff ff[ ]+sub 0xffffffe8\(%ebx\),%ecx # ->R_386_TLS_TPOFF32 sG2 80490d2: 90[ ]+nop * 80490d3: 90[ ]+nop * @@ -135,17 +135,17 @@ Disassembly of section .text: 80490d6: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax 80490dc: 90[ ]+nop * 80490dd: 90[ ]+nop * - 80490de: 2b 83 20 00 00 00[ ]+sub 0x20\(%ebx\),%eax + 80490de: 2b 83 ec ff ff ff[ ]+sub 0xffffffec\(%ebx\),%eax # ->R_386_TLS_TPOFF32 sG4 80490e4: 90[ ]+nop * 80490e5: 90[ ]+nop * 80490e6: 90[ ]+nop * 80490e7: 90[ ]+nop * # @gotntpoff IE against global var - 80490e8: 65 8b 0d 00 00 00 00 mov %gs:0x0,%ecx + 80490e8: 65 8b 0d 00 00 00 00[ ]+mov %gs:0x0,%ecx 80490ef: 90[ ]+nop * 80490f0: 90[ ]+nop * - 80490f1: 03 8b 10 00 00 00[ ]+add 0x10\(%ebx\),%ecx + 80490f1: 03 8b dc ff ff ff[ ]+add 0xffffffdc\(%ebx\),%ecx # ->R_386_TLS_TPOFF sG3 80490f7: 90[ ]+nop * 80490f8: 90[ ]+nop * @@ -155,37 +155,37 @@ Disassembly of section .text: 80490fb: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax 8049101: 90[ ]+nop * 8049102: 90[ ]+nop * - 8049103: 03 83 24 00 00 00[ ]+add 0x24\(%ebx\),%eax + 8049103: 03 83 f0 ff ff ff[ ]+add 0xfffffff0\(%ebx\),%eax # ->R_386_TLS_TPOFF sG4 8049109: 90[ ]+nop * 804910a: 90[ ]+nop * 804910b: 90[ ]+nop * 804910c: 90[ ]+nop * # @gottpoff IE -> LE against global var defined in exec - 804910d: 65 8b 0d 00 00 00 00 mov %gs:0x0,%ecx + 804910d: 65 8b 0d 00 00 00 00[ ]+mov %gs:0x0,%ecx 8049114: 90[ ]+nop * 8049115: 90[ ]+nop * - 8049116: 81 e9 a0 00 00 00[ ]+sub \$0xa0,%ecx + 8049116: 81 e9 00 10 00 00[ ]+sub \$0x1000,%ecx # sg1 804911c: 90[ ]+nop * 804911d: 90[ ]+nop * 804911e: 90[ ]+nop * 804911f: 90[ ]+nop * # @gotntpoff IE -> LE against local var - 8049120: 65 8b 0d 00 00 00 00 mov %gs:0x0,%ecx + 8049120: 65 8b 0d 00 00 00 00[ ]+mov %gs:0x0,%ecx 8049127: 90[ ]+nop * 8049128: 90[ ]+nop * - 8049129: 81 c0 80 ff ff ff[ ]+add \$0xffffff80,%eax + 8049129: 81 c0 20 f0 ff ff[ ]+add \$0xfffff020,%eax # sl1 804912f: 90[ ]+nop * 8049130: 90[ ]+nop * 8049131: 90[ ]+nop * 8049132: 90[ ]+nop * # @gottpoff IE -> LE against hidden var - 8049133: 65 8b 0d 00 00 00 00 mov %gs:0x0,%ecx + 8049133: 65 8b 0d 00 00 00 00[ ]+mov %gs:0x0,%ecx 804913a: 90[ ]+nop * 804913b: 90[ ]+nop * - 804913c: 81 e9 60 00 00 00[ ]+sub \$0x60,%ecx + 804913c: 81 e9 c0 0f 00 00[ ]+sub \$0xfc0,%ecx # sh1 8049142: 90[ ]+nop * 8049143: 90[ ]+nop * @@ -193,7 +193,7 @@ Disassembly of section .text: 8049145: 90[ ]+nop * # Direct access through %gs # @gotntpoff IE against global var - 8049146: 8b 8b 14 00 00 00[ ]+mov 0x14\(%ebx\),%ecx + 8049146: 8b 8b e0 ff ff ff[ ]+mov 0xffffffe0\(%ebx\),%ecx # ->R_386_TLS_TPOFF sG5 804914c: 90[ ]+nop * 804914d: 90[ ]+nop * @@ -203,7 +203,7 @@ Disassembly of section .text: 8049153: 90[ ]+nop * 8049154: 90[ ]+nop * # @gotntpoff IE->LE against local var - 8049155: c7 c0 90 ff ff ff[ ]+mov \$0xffffff90,%eax + 8049155: c7 c0 30 f0 ff ff[ ]+mov \$0xfffff030,%eax # sl5 804915b: 90[ ]+nop * 804915c: 90[ ]+nop * @@ -213,7 +213,7 @@ Disassembly of section .text: 8049162: 90[ ]+nop * 8049163: 90[ ]+nop * # @gotntpoff IE->LE against hidden var - 8049164: c7 c2 b0 ff ff ff[ ]+mov \$0xffffffb0,%edx + 8049164: c7 c2 50 f0 ff ff[ ]+mov \$0xfffff050,%edx # sh5 804916a: 90[ ]+nop * 804916b: 90[ ]+nop * @@ -226,21 +226,21 @@ Disassembly of section .text: 8049176: c9[ ]+leave * 8049177: c3[ ]+ret * -08049178 <_start>: +0+8049178 <_start>: 8049178: 55[ ]+push %ebp 8049179: 89 e5[ ]+mov %esp,%ebp 804917b: e8 00 00 00 00[ ]+call 8049180 <_start\+0x8> 8049180: 59[ ]+pop %ecx - 8049181: 81 c1 80 0f 00 00[ ]+add \$0xf80,%ecx + 8049181: 81 c1 a4 0f 00 00[ ]+add \$0xfa4,%ecx 8049187: 90[ ]+nop * 8049188: 90[ ]+nop * 8049189: 90[ ]+nop * 804918a: 90[ ]+nop * # @gottpoff IE against global var - 804918b: 65 8b 15 00 00 00 00 mov %gs:0x0,%edx + 804918b: 65 8b 15 00 00 00 00[ ]+mov %gs:0x0,%edx 8049192: 90[ ]+nop * 8049193: 90[ ]+nop * - 8049194: 2b 91 28 00 00 00[ ]+sub 0x28\(%ecx\),%edx + 8049194: 2b 91 f4 ff ff ff[ ]+sub 0xfffffff4\(%ecx\),%edx # ->R_386_TLS_TPOFF32 sG6 804919a: 90[ ]+nop * 804919b: 90[ ]+nop * @@ -250,14 +250,14 @@ Disassembly of section .text: 804919e: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax 80491a4: 90[ ]+nop * 80491a5: 90[ ]+nop * - 80491a6: 03 05 18 a1 04 08[ ]+add 0x804a118,%eax + 80491a6: 03 05 08 a1 04 08[ ]+add 0x804a108,%eax # ->R_386_TLS_TPOFF sG7 80491ac: 90[ ]+nop * 80491ad: 90[ ]+nop * 80491ae: 90[ ]+nop * 80491af: 90[ ]+nop * # @indntpoff direct %gs access IE against global var - 80491b0: 8b 15 30 a1 04 08[ ]+mov 0x804a130,%edx + 80491b0: 8b 15 20 a1 04 08[ ]+mov 0x804a120,%edx # ->R_386_TLS_TPOFF sG8 80491b6: 90[ ]+nop * 80491b7: 90[ ]+nop * @@ -267,10 +267,10 @@ Disassembly of section .text: 80491bd: 90[ ]+nop * 80491be: 90[ ]+nop * # @gottpoff IE -> LE against global var defined in exec - 80491bf: 65 8b 15 00 00 00 00 mov %gs:0x0,%edx + 80491bf: 65 8b 15 00 00 00 00[ ]+mov %gs:0x0,%edx 80491c6: 90[ ]+nop * 80491c7: 90[ ]+nop * - 80491c8: 81 ea 2c 00 00 00[ ]+sub \$0x2c,%edx + 80491c8: 81 ea 8c 0f 00 00[ ]+sub \$0xf8c,%edx # bg6 80491ce: 90[ ]+nop * 80491cf: 90[ ]+nop * @@ -280,7 +280,7 @@ Disassembly of section .text: 80491d2: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax 80491d8: 90[ ]+nop * 80491d9: 90[ ]+nop * - 80491da: 81 c0 d8 ff ff ff[ ]+add \$0xffffffd8,%eax + 80491da: 81 c0 78 f0 ff ff[ ]+add \$0xfffff078,%eax # bg7 80491e0: 90[ ]+nop * 80491e1: 90[ ]+nop * @@ -288,7 +288,7 @@ Disassembly of section .text: 80491e3: 90[ ]+nop * # @indntpoff direct %gs access IE -> LE against global var defined # in exec - 80491e4: c7 c2 dc ff ff ff[ ]+mov \$0xffffffdc,%edx + 80491e4: c7 c2 7c f0 ff ff[ ]+mov \$0xfffff07c,%edx # bg8 80491ea: 90[ ]+nop * 80491eb: 90[ ]+nop * @@ -298,10 +298,10 @@ Disassembly of section .text: 80491f1: 90[ ]+nop * 80491f2: 90[ ]+nop * # @gottpoff IE -> LE against local var - 80491f3: 65 8b 15 00 00 00 00 mov %gs:0x0,%edx + 80491f3: 65 8b 15 00 00 00 00[ ]+mov %gs:0x0,%edx 80491fa: 90[ ]+nop * 80491fb: 90[ ]+nop * - 80491fc: 81 ea 0c 00 00 00[ ]+sub \$0xc,%edx + 80491fc: 81 ea 6c 0f 00 00[ ]+sub \$0xf6c,%edx # bl6 8049202: 90[ ]+nop * 8049203: 90[ ]+nop * @@ -311,14 +311,14 @@ Disassembly of section .text: 8049206: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax 804920c: 90[ ]+nop * 804920d: 90[ ]+nop * - 804920e: 81 c0 f8 ff ff ff[ ]+add \$0xfffffff8,%eax + 804920e: 81 c0 98 f0 ff ff[ ]+add \$0xfffff098,%eax # bl7 8049214: 90[ ]+nop * 8049215: 90[ ]+nop * 8049216: 90[ ]+nop * 8049217: 90[ ]+nop * # @indntpoff direct %gs access IE -> LE against local var - 8049218: c7 c2 fc ff ff ff[ ]+mov \$0xfffffffc,%edx + 8049218: c7 c2 9c f0 ff ff[ ]+mov \$0xfffff09c,%edx # bl8 804921e: 90[ ]+nop * 804921f: 90[ ]+nop * @@ -328,10 +328,10 @@ Disassembly of section .text: 8049225: 90[ ]+nop * 8049226: 90[ ]+nop * # @gottpoff IE -> LE against hidden but not local var - 8049227: 65 8b 15 00 00 00 00 mov %gs:0x0,%edx + 8049227: 65 8b 15 00 00 00 00[ ]+mov %gs:0x0,%edx 804922e: 90[ ]+nop * 804922f: 90[ ]+nop * - 8049230: 81 ea 4c 00 00 00[ ]+sub \$0x4c,%edx + 8049230: 81 ea ac 0f 00 00[ ]+sub \$0xfac,%edx # sh6 8049236: 90[ ]+nop * 8049237: 90[ ]+nop * @@ -341,7 +341,7 @@ Disassembly of section .text: 804923a: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax 8049240: 90[ ]+nop * 8049241: 90[ ]+nop * - 8049242: 81 c0 b8 ff ff ff[ ]+add \$0xffffffb8,%eax + 8049242: 81 c0 58 f0 ff ff[ ]+add \$0xfffff058,%eax # sh7 8049248: 90[ ]+nop * 8049249: 90[ ]+nop * @@ -349,7 +349,7 @@ Disassembly of section .text: 804924b: 90[ ]+nop * # @indntpoff direct %gs access IE -> LE against hidden but not # local var - 804924c: c7 c2 bc ff ff ff[ ]+mov \$0xffffffbc,%edx + 804924c: c7 c2 5c f0 ff ff[ ]+mov \$0xfffff05c,%edx # sh8 8049252: 90[ ]+nop * 8049253: 90[ ]+nop * @@ -359,7 +359,7 @@ Disassembly of section .text: 8049259: 90[ ]+nop * 804925a: 90[ ]+nop * # LE @tpoff, global var defined in exec - 804925b: ba a0 00 00 00[ ]+mov \$0xa0,%edx + 804925b: ba 00 10 00 00[ ]+mov \$0x1000,%edx # sg1 8049260: 90[ ]+nop * 8049261: 90[ ]+nop * @@ -372,11 +372,11 @@ Disassembly of section .text: 804926e: 90[ ]+nop * 804926f: 90[ ]+nop * # LE @tpoff, local var - 8049270: b8 1f 00 00 00[ ]+mov \$0x1f,%eax + 8049270: b8 7f 0f 00 00[ ]+mov \$0xf7f,%eax # bl1+1 8049275: 90[ ]+nop * 8049276: 90[ ]+nop * - 8049277: 65 8b 15 00 00 00 00 mov %gs:0x0,%edx + 8049277: 65 8b 15 00 00 00 00[ ]+mov %gs:0x0,%edx 804927e: 90[ ]+nop * 804927f: 90[ ]+nop * 8049280: 29 c2[ ]+sub %eax,%edx @@ -385,11 +385,11 @@ Disassembly of section .text: 8049284: 90[ ]+nop * 8049285: 90[ ]+nop * # LE @tpoff, hidden var defined in exec - 8049286: b8 5d 00 00 00[ ]+mov \$0x5d,%eax + 8049286: b8 bd 0f 00 00[ ]+mov \$0xfbd,%eax # sh1+3 804928b: 90[ ]+nop * 804928c: 90[ ]+nop * - 804928d: 65 8b 15 00 00 00 00 mov %gs:0x0,%edx + 804928d: 65 8b 15 00 00 00 00[ ]+mov %gs:0x0,%edx 8049294: 90[ ]+nop * 8049295: 90[ ]+nop * 8049296: 29 c2[ ]+sub %eax,%edx @@ -401,18 +401,18 @@ Disassembly of section .text: 804929c: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax 80492a2: 90[ ]+nop * 80492a3: 90[ ]+nop * - 80492a4: 8d 90 64 ff ff ff[ ]+lea 0xffffff64\(%eax\),%edx + 80492a4: 8d 90 04 f0 ff ff[ ]+lea 0xfffff004\(%eax\),%edx # sg2 80492aa: 90[ ]+nop * 80492ab: 90[ ]+nop * 80492ac: 90[ ]+nop * 80492ad: 90[ ]+nop * # LE @ntpoff, local var, non-canonical sequence - 80492ae: b8 e6 ff ff ff[ ]+mov \$0xffffffe6,%eax + 80492ae: b8 86 f0 ff ff[ ]+mov \$0xfffff086,%eax # bl2+2 80492b3: 90[ ]+nop * 80492b4: 90[ ]+nop * - 80492b5: 65 8b 15 00 00 00 00 mov %gs:0x0,%edx + 80492b5: 65 8b 15 00 00 00 00[ ]+mov %gs:0x0,%edx 80492bc: 90[ ]+nop * 80492bd: 90[ ]+nop * 80492be: 01 c2[ ]+add %eax,%edx @@ -421,31 +421,31 @@ Disassembly of section .text: 80492c2: 90[ ]+nop * 80492c3: 90[ ]+nop * # LE @ntpoff, hidden var defined in exec, non-canonical sequence - 80492c4: 65 8b 15 00 00 00 00 mov %gs:0x0,%edx + 80492c4: 65 8b 15 00 00 00 00[ ]+mov %gs:0x0,%edx 80492cb: 90[ ]+nop * 80492cc: 90[ ]+nop * - 80492cd: 81 c2 a5 ff ff ff[ ]+add \$0xffffffa5,%edx + 80492cd: 81 c2 45 f0 ff ff[ ]+add \$0xfffff045,%edx # sh2+1 80492d3: 90[ ]+nop * 80492d4: 90[ ]+nop * 80492d5: 90[ ]+nop * 80492d6: 90[ ]+nop * # LE @ntpoff, global var defined in exec - 80492d7: 65 a1 68 ff ff ff[ ]+mov %gs:0xffffff68,%eax + 80492d7: 65 a1 08 f0 ff ff[ ]+mov %gs:0xfffff008,%eax # sg3 80492dd: 90[ ]+nop * 80492de: 90[ ]+nop * 80492df: 90[ ]+nop * 80492e0: 90[ ]+nop * # LE @ntpoff, local var - 80492e1: 65 8b 15 eb ff ff ff mov %gs:0xffffffeb,%edx + 80492e1: 65 8b 15 8b f0 ff ff[ ]+mov %gs:0xfffff08b,%edx # bl3+3 80492e8: 90[ ]+nop * 80492e9: 90[ ]+nop * 80492ea: 90[ ]+nop * 80492eb: 90[ ]+nop * # LE @ntpoff, hidden var defined in exec - 80492ec: 65 8b 15 a9 ff ff ff mov %gs:0xffffffa9,%edx + 80492ec: 65 8b 15 49 f0 ff ff[ ]+mov %gs:0xfffff049,%edx # sh3+1 80492f3: 90[ ]+nop * 80492f4: 90[ ]+nop * diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-i386/tlsbin.rd binutils-2.15.91.0.1/ld/testsuite/ld-i386/tlsbin.rd --- binutils-2.15.90.0.3/ld/testsuite/ld-i386/tlsbin.rd 2002-09-27 08:33:09.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-i386/tlsbin.rd 2004-05-27 11:26:05.382074844 -0700 @@ -5,7 +5,7 @@ #readelf: -Ssrl #target: i?86-*-* -There are 18 section headers, starting at offset 0x[0-9a-f]+: +There are 19 section headers, starting at offset 0x[0-9a-f]+: Section Headers: \[Nr\] Name +Type +Addr +Off +Size +ES Flg Lk Inf Al @@ -18,15 +18,16 @@ Section Headers: \[ 6\] \.rel.plt +.* \[ 7\] \.plt +.* \[ 8\] \.text +PROGBITS +0+8049000 .* - \[ 9\] \.data +.* - \[10\] .tdata +PROGBITS +0+804a000 [0-9a-f]+ 000060 00 WAT 0 0 1 - \[11\] .tbss +NOBITS +[0-9a-f]+ [0-9a-f]+ 000040 00 WAT 0 0 1 - \[12\] \.dynamic +DYNAMIC +0+804a060 .* - \[13\] \.got +PROGBITS +0+804a100 .* - \[14\] \.bss +.* - \[15\] \.shstrtab +.* - \[16\] \.symtab +.* - \[17\] \.strtab +.* + \[ 9\] \.tdata +PROGBITS +0+804a000 [0-9a-f]+ 000060 00 WAT 0 0 4096 + \[10\] \.tbss +NOBITS +[0-9a-f]+ [0-9a-f]+ 000040 00 WAT 0 0 1 + \[11\] \.dynamic +DYNAMIC +0+804a060 .* + \[12\] \.got +PROGBITS +0+804a100 .* + \[13\] \.got\.plt +PROGBITS +0+804a124 .* + \[14\] \.data +.* + \[15\] \.bss +.* + \[16\] \.shstrtab +.* + \[17\] \.symtab +.* + \[18\] \.strtab +.* Key to Flags: .* .* @@ -44,124 +45,125 @@ Program Headers: LOAD.* LOAD.* DYNAMIC.* - TLS +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x0+60 0x0+a0 R +0x1 + TLS +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x0+60 0x0+a0 R +0x1000 Section to Segment mapping: Segment Sections... 00 + 01 +.interp * 02 +.interp .hash .dynsym .dynstr .rel.dyn .rel.plt .plt .text * - 03 +.tdata .tbss .dynamic .got * + 03 +.tdata .tbss .dynamic .got .got.plt * 04 +.tbss .dynamic * 05 +.tdata .tbss * Relocation section '.rel.dyn' at offset 0x[0-9a-f]+ contains 9 entries: Offset +Info +Type +Sym.Value +Sym. Name -0+804a110 0000010e R_386_TLS_TPOFF +0+ +sG3 -0+804a114 0000020e R_386_TLS_TPOFF +0+ +sG5 -0+804a118 0000040e R_386_TLS_TPOFF +0+ +sG7 -0+804a11c 00000525 R_386_TLS_TPOFF32 0+ +sG2 -0+804a120 00000625 R_386_TLS_TPOFF32 0+ +sG4 -0+804a124 0000060e R_386_TLS_TPOFF +0+ +sG4 -0+804a128 00000825 R_386_TLS_TPOFF32 0+ +sG6 -0+804a12c 00000925 R_386_TLS_TPOFF32 0+ +sG1 -0+804a130 00000d0e R_386_TLS_TPOFF +0+ +sG8 +0+804a100 0000010e R_386_TLS_TPOFF +0+ +sG3 +0+804a104 0000020e R_386_TLS_TPOFF +0+ +sG5 +0+804a108 0000040e R_386_TLS_TPOFF +0+ +sG7 +0+804a10c 00000525 R_386_TLS_TPOFF32 0+ +sG2 +0+804a110 00000625 R_386_TLS_TPOFF32 0+ +sG4 +0+804a114 0000060e R_386_TLS_TPOFF +0+ +sG4 +0+804a118 00000825 R_386_TLS_TPOFF32 0+ +sG6 +0+804a11c 00000925 R_386_TLS_TPOFF32 0+ +sG1 +0+804a120 00000d0e R_386_TLS_TPOFF +0+ +sG8 Relocation section '.rel.plt' at offset 0x30c contains 1 entries: Offset +Info +Type +Sym.Value Sym. Name -0+804a10c 00000e07 R_386_JUMP_SLOT +[0-9a-f]+ +___tls_get_addr +0+804a130 00000e07 R_386_JUMP_SLOT +[0-9a-f]+ +___tls_get_addr Symbol table '.dynsym' contains 15 entries: +Num: +Value Size Type +Bind +Vis +Ndx Name - +0: 0+ +0 NOTYPE LOCAL DEFAULT UND * - +1: 0+ +0 TLS +GLOBAL DEFAULT UND sG3 - +2: 0+ +0 TLS +GLOBAL DEFAULT UND sG5 - +3: 0+804a060 +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC - +4: 0+ +0 TLS +GLOBAL DEFAULT UND sG7 - +5: 0+ +0 TLS +GLOBAL DEFAULT UND sG2 - +6: 0+ +0 TLS +GLOBAL DEFAULT UND sG4 - +7: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start - +8: 0+ +0 TLS +GLOBAL DEFAULT UND sG6 - +9: 0+ +0 TLS +GLOBAL DEFAULT UND sG1 - +10: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata - +11: 0+804a100 +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ - +12: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end - +13: 0+ +0 TLS +GLOBAL DEFAULT UND sG8 - +14: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT UND ___tls_get_addr + +[0-9]+: 0+ +0 NOTYPE LOCAL DEFAULT UND * + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG3 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG5 + +[0-9]+: 0+804a060 +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG7 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG2 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG4 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG6 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG1 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata + +[0-9]+: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG8 + +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT UND ___tls_get_addr -Symbol table '.symtab' contains 74 entries: +Symbol table '.symtab' contains 75 entries: +Num: +Value Size Type +Bind +Vis +Ndx Name - +0: 0+ +0 NOTYPE LOCAL DEFAULT UND * - +1: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +1 * - +2: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +2 * - +3: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +3 * - +4: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +4 * - +5: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +5 * - +6: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +6 * - +7: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +7 * - +8: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +8 * - +9: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +9 * - +10: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +10 * - +11: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +11 * - +12: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +12 * - +13: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +13 * - +14: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +14 * - +15: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +15 * - +16: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +16 * - +17: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +17 * - +18: 00000020 +0 TLS +LOCAL DEFAULT +10 sl1 - +19: 00000024 +0 TLS +LOCAL DEFAULT +10 sl2 - +20: 00000028 +0 TLS +LOCAL DEFAULT +10 sl3 - +21: 0000002c +0 TLS +LOCAL DEFAULT +10 sl4 - +22: 00000030 +0 TLS +LOCAL DEFAULT +10 sl5 - +23: 00000034 +0 TLS +LOCAL DEFAULT +10 sl6 - +24: 00000038 +0 TLS +LOCAL DEFAULT +10 sl7 - +25: 0000003c +0 TLS +LOCAL DEFAULT +10 sl8 - +26: 00000080 +0 TLS +LOCAL DEFAULT +11 bl1 - +27: 00000084 +0 TLS +LOCAL DEFAULT +11 bl2 - +28: 00000088 +0 TLS +LOCAL DEFAULT +11 bl3 - +29: 0000008c +0 TLS +LOCAL DEFAULT +11 bl4 - +30: 00000090 +0 TLS +LOCAL DEFAULT +11 bl5 - +31: 00000094 +0 TLS +LOCAL DEFAULT +11 bl6 - +32: 00000098 +0 TLS +LOCAL DEFAULT +11 bl7 - +33: 0000009c +0 TLS +LOCAL DEFAULT +11 bl8 - +34: 0+ +0 TLS +GLOBAL DEFAULT UND sG3 - +35: 0000001c +0 TLS +GLOBAL DEFAULT +10 sg8 - +36: 0000007c +0 TLS +GLOBAL DEFAULT +11 bg8 - +37: 00000074 +0 TLS +GLOBAL DEFAULT +11 bg6 - +38: 0+ +0 TLS +GLOBAL DEFAULT UND sG5 - +39: 00000068 +0 TLS +GLOBAL DEFAULT +11 bg3 - +40: 0+804a060 +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC - +41: 00000008 +0 TLS +GLOBAL DEFAULT +10 sg3 - +42: 0+ +0 TLS +GLOBAL DEFAULT UND sG7 - +43: 00000048 +0 TLS +GLOBAL HIDDEN +10 sh3 - +44: 0+ +0 TLS +GLOBAL DEFAULT UND sG2 - +45: 0000000c +0 TLS +GLOBAL DEFAULT +10 sg4 - +46: 0+ +0 TLS +GLOBAL DEFAULT UND sG4 - +47: 00000010 +0 TLS +GLOBAL DEFAULT +10 sg5 - +48: 00000070 +0 TLS +GLOBAL DEFAULT +11 bg5 - +49: 00000058 +0 TLS +GLOBAL HIDDEN +10 sh7 - +50: 0000005c +0 TLS +GLOBAL HIDDEN +10 sh8 - +51: 0+ +0 TLS +GLOBAL DEFAULT +10 sg1 - +52: 0+8049178 +0 FUNC +GLOBAL DEFAULT +8 _start - +53: 0000004c +0 TLS +GLOBAL HIDDEN +10 sh4 - +54: 00000078 +0 TLS +GLOBAL DEFAULT +11 bg7 - +55: 00000050 +0 TLS +GLOBAL HIDDEN +10 sh5 - +56: 0+804a134 +0 NOTYPE GLOBAL DEFAULT ABS __bss_start - +57: 0+ +0 TLS +GLOBAL DEFAULT UND sG6 - +58: 0+8049000 +0 FUNC +GLOBAL DEFAULT +8 fn2 - +59: 00000004 +0 TLS +GLOBAL DEFAULT +10 sg2 - +60: 0+ +0 TLS +GLOBAL DEFAULT UND sG1 - +61: 00000040 +0 TLS +GLOBAL HIDDEN +10 sh1 - +62: 00000014 +0 TLS +GLOBAL DEFAULT +10 sg6 - +63: 00000018 +0 TLS +GLOBAL DEFAULT +10 sg7 - +64: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata - +65: 0+804a100 +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ - +66: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end - +67: 00000044 +0 TLS +GLOBAL HIDDEN +10 sh2 - +68: 00000054 +0 TLS +GLOBAL HIDDEN +10 sh6 - +69: 0+ +0 TLS +GLOBAL DEFAULT UND sG8 - +70: 00000064 +0 TLS +GLOBAL DEFAULT +11 bg2 - +71: 00000060 +0 TLS +GLOBAL DEFAULT +11 bg1 - +72: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT UND ___tls_get_addr - +73: 0000006c +0 TLS +GLOBAL DEFAULT +11 bg4 + +[0-9]+: 0+ +0 NOTYPE LOCAL DEFAULT UND * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +1 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +2 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +3 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +4 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +5 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +6 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +7 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +8 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +9 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +10 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +11 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +12 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +13 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +14 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +15 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +16 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +17 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +18 * + +[0-9]+: 00000020 +0 TLS +LOCAL DEFAULT +9 sl1 + +[0-9]+: 00000024 +0 TLS +LOCAL DEFAULT +9 sl2 + +[0-9]+: 00000028 +0 TLS +LOCAL DEFAULT +9 sl3 + +[0-9]+: 0000002c +0 TLS +LOCAL DEFAULT +9 sl4 + +[0-9]+: 00000030 +0 TLS +LOCAL DEFAULT +9 sl5 + +[0-9]+: 00000034 +0 TLS +LOCAL DEFAULT +9 sl6 + +[0-9]+: 00000038 +0 TLS +LOCAL DEFAULT +9 sl7 + +[0-9]+: 0000003c +0 TLS +LOCAL DEFAULT +9 sl8 + +[0-9]+: 00000080 +0 TLS +LOCAL DEFAULT +10 bl1 + +[0-9]+: 00000084 +0 TLS +LOCAL DEFAULT +10 bl2 + +[0-9]+: 00000088 +0 TLS +LOCAL DEFAULT +10 bl3 + +[0-9]+: 0000008c +0 TLS +LOCAL DEFAULT +10 bl4 + +[0-9]+: 00000090 +0 TLS +LOCAL DEFAULT +10 bl5 + +[0-9]+: 00000094 +0 TLS +LOCAL DEFAULT +10 bl6 + +[0-9]+: 00000098 +0 TLS +LOCAL DEFAULT +10 bl7 + +[0-9]+: 0000009c +0 TLS +LOCAL DEFAULT +10 bl8 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG3 + +[0-9]+: 0000001c +0 TLS +GLOBAL DEFAULT +9 sg8 + +[0-9]+: 0000007c +0 TLS +GLOBAL DEFAULT +10 bg8 + +[0-9]+: 00000074 +0 TLS +GLOBAL DEFAULT +10 bg6 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG5 + +[0-9]+: 00000068 +0 TLS +GLOBAL DEFAULT +10 bg3 + +[0-9]+: 0+804a060 +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC + +[0-9]+: 00000008 +0 TLS +GLOBAL DEFAULT +9 sg3 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG7 + +[0-9]+: 00000048 +0 TLS +GLOBAL HIDDEN +9 sh3 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG2 + +[0-9]+: 0000000c +0 TLS +GLOBAL DEFAULT +9 sg4 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG4 + +[0-9]+: 00000010 +0 TLS +GLOBAL DEFAULT +9 sg5 + +[0-9]+: 00000070 +0 TLS +GLOBAL DEFAULT +10 bg5 + +[0-9]+: 00000058 +0 TLS +GLOBAL HIDDEN +9 sh7 + +[0-9]+: 0000005c +0 TLS +GLOBAL HIDDEN +9 sh8 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +9 sg1 + +[0-9]+: 0+8049178 +0 FUNC +GLOBAL DEFAULT +8 _start + +[0-9]+: 0000004c +0 TLS +GLOBAL HIDDEN +9 sh4 + +[0-9]+: 00000078 +0 TLS +GLOBAL DEFAULT +10 bg7 + +[0-9]+: 00000050 +0 TLS +GLOBAL HIDDEN +9 sh5 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG6 + +[0-9]+: 0+8049000 +0 FUNC +GLOBAL DEFAULT +8 fn2 + +[0-9]+: 00000004 +0 TLS +GLOBAL DEFAULT +9 sg2 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG1 + +[0-9]+: 00000040 +0 TLS +GLOBAL HIDDEN +9 sh1 + +[0-9]+: 00000014 +0 TLS +GLOBAL DEFAULT +9 sg6 + +[0-9]+: 00000018 +0 TLS +GLOBAL DEFAULT +9 sg7 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata + +[0-9]+: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end + +[0-9]+: 00000044 +0 TLS +GLOBAL HIDDEN +9 sh2 + +[0-9]+: 00000054 +0 TLS +GLOBAL HIDDEN +9 sh6 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG8 + +[0-9]+: 00000064 +0 TLS +GLOBAL DEFAULT +10 bg2 + +[0-9]+: 00000060 +0 TLS +GLOBAL DEFAULT +10 bg1 + +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT UND ___tls_get_addr + +[0-9]+: 0000006c +0 TLS +GLOBAL DEFAULT +10 bg4 diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-i386/tlsbin.sd binutils-2.15.91.0.1/ld/testsuite/ld-i386/tlsbin.sd --- binutils-2.15.90.0.3/ld/testsuite/ld-i386/tlsbin.sd 2002-09-27 08:33:09.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-i386/tlsbin.sd 2004-05-27 11:26:05.383074715 -0700 @@ -10,5 +10,4 @@ Contents of section \.got: 804a100 [0-9a-f]+ 00000000 00000000 [0-9a-f]+ .* 804a110 00000000 00000000 00000000 00000000 .* - 804a120 00000000 00000000 00000000 00000000 .* - 804a130 00000000 +.* + 804a120 00000000 +.* diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-i386/tlsbinpic.s binutils-2.15.91.0.1/ld/testsuite/ld-i386/tlsbinpic.s --- binutils-2.15.90.0.3/ld/testsuite/ld-i386/tlsbinpic.s 2002-10-02 10:17:20.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-i386/tlsbinpic.s 2004-05-27 11:26:05.384074585 -0700 @@ -1,8 +1,7 @@ /* Force .got aligned to 4K, so it very likely gets at 0x804a100 (0x60 bytes .tdata and 0xa0 bytes .dynamic) */ - .data - .balign 4096 .section ".tdata", "awT", @progbits + .balign 4096 .globl sg1, sg2, sg3, sg4, sg5, sg6, sg7, sg8 .globl sh1, sh2, sh3, sh4, sh5, sh6, sh7, sh8 .hidden sh1, sh2, sh3, sh4, sh5, sh6, sh7, sh8 diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-i386/tlsnopic.dd binutils-2.15.91.0.1/ld/testsuite/ld-i386/tlsnopic.dd --- binutils-2.15.90.0.3/ld/testsuite/ld-i386/tlsnopic.dd 2002-09-27 08:33:09.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-i386/tlsnopic.dd 2004-05-27 11:26:05.384074585 -0700 @@ -16,14 +16,14 @@ Disassembly of section .text: 1003: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax 1009: 90[ ]+nop * 100a: 90[ ]+nop * - 100b: 03 05 94 20 00 00[ ]+add 0x2094,%eax + 100b: 03 05 88 20 00 00[ ]+add 0x2088,%eax # ->R_386_TLS_TPOFF sg1 1011: 90[ ]+nop * 1012: 90[ ]+nop * 1013: 90[ ]+nop * 1014: 90[ ]+nop * # @indntpoff direct %gs access IE against global var - 1015: 8b 15 98 20 00 00[ ]+mov 0x2098,%edx + 1015: 8b 15 8c 20 00 00[ ]+mov 0x208c,%edx # ->R_386_TLS_TPOFF sg2 101b: 90[ ]+nop * 101c: 90[ ]+nop * @@ -36,14 +36,14 @@ Disassembly of section .text: 1024: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax 102a: 90[ ]+nop * 102b: 90[ ]+nop * - 102c: 03 05 9c 20 00 00[ ]+add 0x209c,%eax + 102c: 03 05 90 20 00 00[ ]+add 0x2090,%eax # ->R_386_TLS_TPOFF [0x14000000] 1032: 90[ ]+nop * 1033: 90[ ]+nop * 1034: 90[ ]+nop * 1035: 90[ ]+nop * # @indntpoff direct %gs access IE against hidden var - 1036: 8b 15 a0 20 00 00[ ]+mov 0x20a0,%edx + 1036: 8b 15 94 20 00 00[ ]+mov 0x2094,%edx # ->R_386_TLS_TPOFF [0x18000000] 103c: 90[ ]+nop * 103d: 90[ ]+nop * @@ -56,14 +56,14 @@ Disassembly of section .text: 1045: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax 104b: 90[ ]+nop * 104c: 90[ ]+nop * - 104d: 03 05 8c 20 00 00[ ]+add 0x208c,%eax + 104d: 03 05 80 20 00 00[ ]+add 0x2080,%eax # ->R_386_TLS_TPOFF [0x00000000] 1053: 90[ ]+nop * 1054: 90[ ]+nop * 1055: 90[ ]+nop * 1056: 90[ ]+nop * # @indntpoff direct %gs access IE against local var - 1057: 8b 15 90 20 00 00[ ]+mov 0x2090,%edx + 1057: 8b 15 84 20 00 00[ ]+mov 0x2084,%edx # ->R_386_TLS_TPOFF [0x04000000] 105d: 90[ ]+nop * 105e: 90[ ]+nop * diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-i386/tlsnopic.rd binutils-2.15.91.0.1/ld/testsuite/ld-i386/tlsnopic.rd --- binutils-2.15.90.0.3/ld/testsuite/ld-i386/tlsnopic.rd 2002-12-16 12:22:53.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-i386/tlsnopic.rd 2004-05-27 11:26:05.385074456 -0700 @@ -5,7 +5,7 @@ #readelf: -Ssrl #target: i?86-*-* -There are 14 section headers, starting at offset 0x[0-9a-f]+: +There are 16 section headers, starting at offset 0x[0-9a-f]+: Section Headers: \[Nr\] Name +Type +Addr +Off +Size +ES Flg Lk Inf Al @@ -15,14 +15,16 @@ Section Headers: \[ 3\] \.dynstr +.* \[ 4\] \.rel.dyn +.* \[ 5\] \.text +PROGBITS +0+1000 .* - \[ 6\] \.data +.* - \[ 7\] .tbss +NOBITS +[0-9a-f]+ [0-9a-f]+ 000024 00 WAT 0 0 1 + \[ 6\] \.tbss +NOBITS +[0-9a-f]+ [0-9a-f]+ 000024 00 WAT 0 0 1 + \[ 7\] \.data.rel.ro +PROGBITS +.* \[ 8\] \.dynamic +DYNAMIC +0+2000 .* \[ 9\] \.got +PROGBITS +0+2080 .* - \[10\] \.bss +.* - \[11\] \.shstrtab +.* - \[12\] \.symtab +.* - \[13\] \.strtab +.* + \[10\] \.got.plt +PROGBITS +0+2098 .* + \[11\] \.data +.* + \[12\] \.bss +.* + \[13\] \.shstrtab +.* + \[14\] \.symtab +.* + \[15\] \.strtab +.* Key to Flags: .* .* @@ -42,7 +44,7 @@ Program Headers: Section to Segment mapping: Segment Sections... 00 +.hash .dynsym .dynstr .rel.dyn .text * - 01 +.tbss .dynamic .got * + 01 +.tbss .dynamic .got .got.plt * 02 +.tbss .dynamic * 03 +.tbss * @@ -54,80 +56,77 @@ Relocation section '.rel.dyn' at offset 0+1038 0+8 R_386_RELATIVE + 0+104f 0+8 R_386_RELATIVE + 0+1059 0+8 R_386_RELATIVE + -0+1067 0+c25 R_386_TLS_TPOFF32 0+ sg3 +0+1067 0+725 R_386_TLS_TPOFF32 0+ sg3 0+107c 0+25 R_386_TLS_TPOFF32 0+10a4 0+e R_386_TLS_TPOFF + 0+10c4 0+e R_386_TLS_TPOFF + 0+10d9 0+e R_386_TLS_TPOFF + 0+10e4 0+e R_386_TLS_TPOFF + -0+208c 0+e R_386_TLS_TPOFF + +0+2080 0+e R_386_TLS_TPOFF + +0+2084 0+e R_386_TLS_TPOFF + 0+2090 0+e R_386_TLS_TPOFF + -0+209c 0+e R_386_TLS_TPOFF + -0+20a0 0+e R_386_TLS_TPOFF + -0+109b 0+d0e R_386_TLS_TPOFF 0+ sg4 -0+10ce 0+f0e R_386_TLS_TPOFF 0+ sg5 -0+2094 0+100e R_386_TLS_TPOFF 0+ sg1 -0+2098 0+120e R_386_TLS_TPOFF 0+ sg2 +0+2094 0+e R_386_TLS_TPOFF + +0+109b 0+80e R_386_TLS_TPOFF 0+ sg4 +0+10ce 0+a0e R_386_TLS_TPOFF 0+ sg5 +0+2088 0+b0e R_386_TLS_TPOFF 0+ sg1 +0+208c 0+d0e R_386_TLS_TPOFF 0+ sg2 -Symbol table '.dynsym' contains 22 entries: +Symbol table '.dynsym' contains 17 entries: +Num: +Value Size Type +Bind +Vis +Ndx Name - +0: 0+ +0 NOTYPE LOCAL DEFAULT UND * - +1: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +1 * - +2: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +2 * - +3: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +3 * - +4: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +4 * - +5: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +5 * - +6: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +6 * - +7: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +7 * - +8: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +8 * - +9: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +9 * - +10: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +10 * - +11: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC - +12: 0+ +0 TLS +GLOBAL DEFAULT UND sg3 - +13: 0+ +0 TLS +GLOBAL DEFAULT UND sg4 - +14: 0+1000 +0 FUNC +GLOBAL DEFAULT +5 fn3 - +15: 0+ +0 TLS +GLOBAL DEFAULT UND sg5 - +16: 0+ +0 TLS +GLOBAL DEFAULT UND sg1 - +17: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start - +18: 0+ +0 TLS +GLOBAL DEFAULT UND sg2 - +19: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata - +20: 0+2080 +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ - +21: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end + +[0-9]+: 0+ +0 NOTYPE LOCAL DEFAULT UND * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +5 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +6 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +7 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +11 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +12 * + +[0-9]+: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sg3 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sg4 + +[0-9]+: 0+1000 +0 FUNC +GLOBAL DEFAULT +5 fn3 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sg5 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sg1 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sg2 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata + +[0-9]+: 0+2098 +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end -Symbol table '.symtab' contains 34 entries: +Symbol table '.symtab' contains 36 entries: +Num: +Value Size Type +Bind +Vis +Ndx Name - +0: 0+ +0 NOTYPE LOCAL DEFAULT UND * - +1: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +1 * - +2: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +2 * - +3: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +3 * - +4: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +4 * - +5: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +5 * - +6: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +6 * - +7: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +7 * - +8: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +8 * - +9: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +9 * - +10: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +10 * - +11: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +11 * - +12: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +12 * - +13: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +13 * - +14: 0+00 +0 TLS +LOCAL DEFAULT +7 bl1 - +15: 0+04 +0 TLS +LOCAL DEFAULT +7 bl2 - +16: 0+08 +0 TLS +LOCAL DEFAULT +7 bl3 - +17: 0+0c +0 TLS +LOCAL DEFAULT +7 bl4 - +18: 0+10 +0 TLS +LOCAL DEFAULT +7 bl5 - +19: 0+1c +0 TLS +LOCAL HIDDEN +7 sh3 - +20: 0+20 +0 TLS +LOCAL HIDDEN +7 sh4 - +21: 0+14 +0 TLS +LOCAL HIDDEN +7 sh1 - +22: 0+18 +0 TLS +LOCAL HIDDEN +7 sh2 - +23: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC - +24: 0+ +0 TLS +GLOBAL DEFAULT UND sg3 - +25: 0+ +0 TLS +GLOBAL DEFAULT UND sg4 - +26: 0+1000 +0 FUNC +GLOBAL DEFAULT +5 fn3 - +27: 0+ +0 TLS +GLOBAL DEFAULT UND sg5 - +28: 0+ +0 TLS +GLOBAL DEFAULT UND sg1 - +29: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start - +30: 0+ +0 TLS +GLOBAL DEFAULT UND sg2 - +31: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata - +32: 0+2080 +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ - +33: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end + +[0-9]+: 0+ +0 NOTYPE LOCAL DEFAULT UND * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +1 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +2 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +3 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +4 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +5 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +6 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +7 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +8 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +9 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +10 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +11 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +12 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +13 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +14 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +15 * + +[0-9]+: 0+00 +0 TLS +LOCAL DEFAULT +6 bl1 + +[0-9]+: 0+04 +0 TLS +LOCAL DEFAULT +6 bl2 + +[0-9]+: 0+08 +0 TLS +LOCAL DEFAULT +6 bl3 + +[0-9]+: 0+0c +0 TLS +LOCAL DEFAULT +6 bl4 + +[0-9]+: 0+10 +0 TLS +LOCAL DEFAULT +6 bl5 + +[0-9]+: 0+1c +0 TLS +LOCAL HIDDEN +6 sh3 + +[0-9]+: 0+20 +0 TLS +LOCAL HIDDEN +6 sh4 + +[0-9]+: 0+14 +0 TLS +LOCAL HIDDEN +6 sh1 + +[0-9]+: 0+18 +0 TLS +LOCAL HIDDEN +6 sh2 + +[0-9]+: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sg3 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sg4 + +[0-9]+: 0+1000 +0 FUNC +GLOBAL DEFAULT +5 fn3 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sg5 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sg1 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sg2 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata + +[0-9]+: 0+2098 +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-i386/tlsnopic.sd binutils-2.15.91.0.1/ld/testsuite/ld-i386/tlsnopic.sd --- binutils-2.15.90.0.3/ld/testsuite/ld-i386/tlsnopic.sd 2002-09-27 08:33:09.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-i386/tlsnopic.sd 2004-05-27 11:26:05.386074327 -0700 @@ -8,6 +8,5 @@ .*: file format elf32-i386 Contents of section \.got: - 2080 [0-9a-f]+ 00000000 00000000 00000000 .* - 2090 04000000 00000000 00000000 14000000 .* - 20a0 18000000 +.* + 2080 00000000 04000000 00000000 00000000 .* + 2090 14000000 18000000 +.* diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-i386/tlsnopic1.s binutils-2.15.91.0.1/ld/testsuite/ld-i386/tlsnopic1.s --- binutils-2.15.90.0.3/ld/testsuite/ld-i386/tlsnopic1.s 2002-09-27 08:33:09.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-i386/tlsnopic1.s 2004-05-27 11:26:05.386074327 -0700 @@ -1,4 +1,4 @@ - .data + .section ".data.rel.ro", "aw", @progbits /* Align, so that .got is likely at address 0x2080. */ .balign 4096 .section ".tbss", "awT", @nobits diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-i386/tlspic.dd binutils-2.15.91.0.1/ld/testsuite/ld-i386/tlspic.dd --- binutils-2.15.90.0.3/ld/testsuite/ld-i386/tlspic.dd 2002-09-27 08:33:09.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-i386/tlspic.dd 2004-05-27 11:26:05.388074068 -0700 @@ -16,15 +16,15 @@ Disassembly of section .text: [0-9a-f]+: 50[ ]+push %eax [0-9a-f]+: e8 00 00 00 00[ ]+call [0-9a-f]+ [0-9a-f]+: 5b[ ]+pop %ebx - [0-9a-f]+: 81 c3 [0-9a-f ]+[ ]+add \$0x[0-9a-f]+,%ebx + [0-9a-f]+: 81 c3 42 14 00 00[ ]+add \$0x[0-9a-f]+,%ebx [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * # GD - [0-9a-f]+: 8d 04 1d 5c 00 00 00 lea 0x5c\(,%ebx,1\),%eax + [0-9a-f]+: 8d 04 1d d4 ff ff ff[ ]+lea 0xffffffd4\(,%ebx,1\),%eax # ->R_386_TLS_DTPMOD32 sg1 - [0-9a-f]+: e8 cf ff ff ff[ ]+call [0-9a-f]+ <.*0x[0-9a-f]+> + [0-9a-f]+: e8 cf ff ff ff[ ]+call [0-9a-f]+ <___tls_get_addr@plt> # ->R_386_JUMP_SLOT ___tls_get_addr [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * @@ -32,7 +32,7 @@ Disassembly of section .text: [0-9a-f]+: 90[ ]+nop * # GD -> IE because variable is referenced through @gottpoff too [0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax - [0-9a-f]+: 2b 83 78 00 00 00[ ]+sub 0x78\(%ebx\),%eax + [0-9a-f]+: 2b 83 f0 ff ff ff[ ]+sub 0xfffffff0\(%ebx\),%eax # ->R_386_TLS_TPOFF32 sg2 [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * @@ -40,7 +40,7 @@ Disassembly of section .text: [0-9a-f]+: 90[ ]+nop * # GD -> IE because variable is referenced through @gotntpoff too [0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax - [0-9a-f]+: 03 83 3c 00 00 00[ ]+add 0x3c\(%ebx\),%eax + [0-9a-f]+: 03 83 b4 ff ff ff[ ]+add 0xffffffb4\(%ebx\),%eax # ->R_386_TLS_TPOFF sg3 [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * @@ -48,16 +48,16 @@ Disassembly of section .text: [0-9a-f]+: 90[ ]+nop * # GD -> IE because variable is referenced through @gottpoff and [0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax - [0-9a-f]+: 2b 83 48 00 00 00[ ]+sub 0x48\(%ebx\),%eax + [0-9a-f]+: 2b 83 c0 ff ff ff[ ]+sub 0xffffffc0\(%ebx\),%eax # ->R_386_TLS_TPOFF32 sg4 [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * # GD against local variable - [0-9a-f]+: 8d 04 1d 10 00 00 00 lea 0x10\(,%ebx,1\),%eax + [0-9a-f]+: 8d 04 1d 88 ff ff ff[ ]+lea 0xffffff88\(,%ebx,1\),%eax # ->R_386_TLS_DTPMOD32 [0x00000000 0x20000000] - [0-9a-f]+: e8 8f ff ff ff[ ]+call [0-9a-f]+ <.*0x[0-9a-f]+> + [0-9a-f]+: e8 8f ff ff ff[ ]+call [0-9a-f]+ <___tls_get_addr@plt> # ->R_386_JUMP_SLOT ___tls_get_addr [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * @@ -65,7 +65,7 @@ Disassembly of section .text: [0-9a-f]+: 90[ ]+nop * # GD -> IE against local variable referenced through @gottpoff too [0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax - [0-9a-f]+: 2b 83 18 00 00 00[ ]+sub 0x18\(%ebx\),%eax + [0-9a-f]+: 2b 83 90 ff ff ff[ ]+sub 0xffffff90\(%ebx\),%eax # ->R_386_TLS_TPOFF32 [0xdcffffff] [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * @@ -73,7 +73,7 @@ Disassembly of section .text: [0-9a-f]+: 90[ ]+nop * # GD -> IE against local variable referenced through @gotntpoff [0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax - [0-9a-f]+: 03 83 1c 00 00 00[ ]+add 0x1c\(%ebx\),%eax + [0-9a-f]+: 03 83 94 ff ff ff[ ]+add 0xffffff94\(%ebx\),%eax # ->R_386_TLS_TPOFF [0x28000000] [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * @@ -81,16 +81,16 @@ Disassembly of section .text: [0-9a-f]+: 90[ ]+nop * # GD -> IE against local variable referenced through @gottpoff and [0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax - [0-9a-f]+: 2b 83 20 00 00 00[ ]+sub 0x20\(%ebx\),%eax + [0-9a-f]+: 2b 83 98 ff ff ff[ ]+sub 0xffffff98\(%ebx\),%eax # ->R_386_TLS_TPOFF32 [0xd4ffffff] [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * # GD against hidden and local variable - [0-9a-f]+: 8d 04 1d 7c 00 00 00 lea 0x7c\(,%ebx,1\),%eax + [0-9a-f]+: 8d 04 1d f4 ff ff ff[ ]+lea 0xfffffff4\(,%ebx,1\),%eax # ->R_386_TLS_DTPMOD32 [0x00000000 0x40000000] - [0-9a-f]+: e8 4f ff ff ff[ ]+call [0-9a-f]+ <.*0x[0-9a-f]+> + [0-9a-f]+: e8 4f ff ff ff[ ]+call [0-9a-f]+ <___tls_get_addr@plt> # ->R_386_JUMP_SLOT ___tls_get_addr [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * @@ -98,7 +98,7 @@ Disassembly of section .text: [0-9a-f]+: 90[ ]+nop * # GD -> IE against hidden and local variable referenced through @gottpoff too [0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax - [0-9a-f]+: 2b 83 84 00 00 00[ ]+sub 0x84\(%ebx\),%eax + [0-9a-f]+: 2b 83 fc ff ff ff[ ]+sub 0xfffffffc\(%ebx\),%eax # ->R_386_TLS_TPOFF32 [0xbcffffff] [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * @@ -106,7 +106,7 @@ Disassembly of section .text: [0-9a-f]+: 90[ ]+nop * # GD -> IE against hidden and local variable referenced through @gotntpoff too [0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax - [0-9a-f]+: 03 83 40 00 00 00[ ]+add 0x40\(%ebx\),%eax + [0-9a-f]+: 03 83 b8 ff ff ff[ ]+add 0xffffffb8\(%ebx\),%eax # ->R_386_TLS_TPOFF [0x48000000] [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * @@ -114,16 +114,16 @@ Disassembly of section .text: [0-9a-f]+: 90[ ]+nop * # GD -> IE against hidden and local variable referenced through @gottpoff and @gotntpoff too [0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax - [0-9a-f]+: 2b 83 64 00 00 00[ ]+sub 0x64\(%ebx\),%eax + [0-9a-f]+: 2b 83 dc ff ff ff[ ]+sub 0xffffffdc\(%ebx\),%eax # ->R_386_TLS_TPOFF32 [0xb4ffffff] [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * # GD against hidden but not local variable - [0-9a-f]+: 8d 04 1d 34 00 00 00 lea 0x34\(,%ebx,1\),%eax + [0-9a-f]+: 8d 04 1d ac ff ff ff[ ]+lea 0xffffffac\(,%ebx,1\),%eax # ->R_386_TLS_DTPMOD32 [0x00000000 0x60000000] - [0-9a-f]+: e8 0f ff ff ff[ ]+call [0-9a-f]+ <.*0x[0-9a-f]+> + [0-9a-f]+: e8 0f ff ff ff[ ]+call [0-9a-f]+ <___tls_get_addr@plt> # ->R_386_JUMP_SLOT ___tls_get_addr [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * @@ -131,7 +131,7 @@ Disassembly of section .text: [0-9a-f]+: 90[ ]+nop * # GD -> IE against hidden but not local variable referenced through [0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax - [0-9a-f]+: 2b 83 44 00 00 00[ ]+sub 0x44\(%ebx\),%eax + [0-9a-f]+: 2b 83 bc ff ff ff[ ]+sub 0xffffffbc\(%ebx\),%eax # ->R_386_TLS_TPOFF32 [0x9cffffff] [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * @@ -139,7 +139,7 @@ Disassembly of section .text: [0-9a-f]+: 90[ ]+nop * # GD -> IE against hidden but not local variable referenced through [0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax - [0-9a-f]+: 03 83 6c 00 00 00[ ]+add 0x6c\(%ebx\),%eax + [0-9a-f]+: 03 83 e4 ff ff ff[ ]+add 0xffffffe4\(%ebx\),%eax # ->R_386_TLS_TPOFF [0x68000000] [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * @@ -147,16 +147,16 @@ Disassembly of section .text: [0-9a-f]+: 90[ ]+nop * # GD -> IE against hidden but not local variable referenced through [0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax - [0-9a-f]+: 2b 83 54 00 00 00[ ]+sub 0x54\(%ebx\),%eax + [0-9a-f]+: 2b 83 cc ff ff ff[ ]+sub 0xffffffcc\(%ebx\),%eax # ->R_386_TLS_TPOFF32 [0x94ffffff] [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * # LD - [0-9a-f]+: 8d 83 2c 00 00 00[ ]+lea 0x2c\(%ebx\),%eax + [0-9a-f]+: 8d 83 a4 ff ff ff[ ]+lea 0xffffffa4\(%ebx\),%eax # ->R_386_TLS_DTPMOD32 [0x00000000 0x00000000] - [0-9a-f]+: e8 d0 fe ff ff[ ]+call [0-9a-f]+ <.*0x[0-9a-f]+> + [0-9a-f]+: e8 d0 fe ff ff[ ]+call [0-9a-f]+ <___tls_get_addr@plt> # ->R_386_JUMP_SLOT ___tls_get_addr [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * @@ -171,9 +171,9 @@ Disassembly of section .text: [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * # LD against hidden and local variables - [0-9a-f]+: 8d 83 2c 00 00 00[ ]+lea 0x2c\(%ebx\),%eax + [0-9a-f]+: 8d 83 a4 ff ff ff[ ]+lea 0xffffffa4\(%ebx\),%eax # ->R_386_TLS_DTPMOD32 [0x00000000 0x00000000] - [0-9a-f]+: e8 b1 fe ff ff[ ]+call [0-9a-f]+ <.*0x[0-9a-f]+> + [0-9a-f]+: e8 b1 fe ff ff[ ]+call [0-9a-f]+ <___tls_get_addr@plt> # ->R_386_JUMP_SLOT ___tls_get_addr [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * @@ -188,9 +188,9 @@ Disassembly of section .text: [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * # LD against hidden but not local variables - [0-9a-f]+: 8d 83 2c 00 00 00[ ]+lea 0x2c\(%ebx\),%eax + [0-9a-f]+: 8d 83 a4 ff ff ff[ ]+lea 0xffffffa4\(%ebx\),%eax # ->R_386_TLS_DTPMOD32 [0x00000000 0x00000000] - [0-9a-f]+: e8 92 fe ff ff[ ]+call [0-9a-f]+ <.*0x[0-9a-f]+> + [0-9a-f]+: e8 92 fe ff ff[ ]+call [0-9a-f]+ <___tls_get_addr@plt> # ->R_386_JUMP_SLOT ___tls_get_addr [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * @@ -203,10 +203,10 @@ Disassembly of section .text: [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * # @gottpoff IE against global var - [0-9a-f]+: 65 8b 0d 00 00 00 00 mov %gs:0x0,%ecx + [0-9a-f]+: 65 8b 0d 00 00 00 00[ ]+mov %gs:0x0,%ecx [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * - [0-9a-f]+: 2b 8b 78 00 00 00[ ]+sub 0x78\(%ebx\),%ecx + [0-9a-f]+: 2b 8b f0 ff ff ff[ ]+sub 0xfffffff0\(%ebx\),%ecx # ->R_386_TLS_TPOFF32 sg2 [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * @@ -216,17 +216,17 @@ Disassembly of section .text: [0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * - [0-9a-f]+: 2b 83 48 00 00 00[ ]+sub 0x48\(%ebx\),%eax + [0-9a-f]+: 2b 83 c0 ff ff ff[ ]+sub 0xffffffc0\(%ebx\),%eax # ->R_386_TLS_TPOFF32 sg4 [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * # @gotntpoff IE against global var - [0-9a-f]+: 65 8b 0d 00 00 00 00 mov %gs:0x0,%ecx + [0-9a-f]+: 65 8b 0d 00 00 00 00[ ]+mov %gs:0x0,%ecx [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * - [0-9a-f]+: 03 8b 3c 00 00 00[ ]+add 0x3c\(%ebx\),%ecx + [0-9a-f]+: 03 8b b4 ff ff ff[ ]+add 0xffffffb4\(%ebx\),%ecx # ->R_386_TLS_TPOFF sg3 [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * @@ -236,17 +236,17 @@ Disassembly of section .text: [0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * - [0-9a-f]+: 03 83 4c 00 00 00[ ]+add 0x4c\(%ebx\),%eax + [0-9a-f]+: 03 83 c4 ff ff ff[ ]+add 0xffffffc4\(%ebx\),%eax # ->R_386_TLS_TPOFF sg4 [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * # @gottpoff IE against local var - [0-9a-f]+: 65 8b 0d 00 00 00 00 mov %gs:0x0,%ecx + [0-9a-f]+: 65 8b 0d 00 00 00 00[ ]+mov %gs:0x0,%ecx [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * - [0-9a-f]+: 2b 8b 18 00 00 00[ ]+sub 0x18\(%ebx\),%ecx + [0-9a-f]+: 2b 8b 90 ff ff ff[ ]+sub 0xffffff90\(%ebx\),%ecx # ->R_386_TLS_TPOFF32 [0xdcffffff] [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * @@ -256,17 +256,17 @@ Disassembly of section .text: [0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * - [0-9a-f]+: 2b 83 20 00 00 00[ ]+sub 0x20\(%ebx\),%eax + [0-9a-f]+: 2b 83 98 ff ff ff[ ]+sub 0xffffff98\(%ebx\),%eax # ->R_386_TLS_TPOFF32 [0xd4ffffff] [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * # @gotntpoff IE against local var - [0-9a-f]+: 65 8b 0d 00 00 00 00 mov %gs:0x0,%ecx + [0-9a-f]+: 65 8b 0d 00 00 00 00[ ]+mov %gs:0x0,%ecx [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * - [0-9a-f]+: 03 8b 1c 00 00 00[ ]+add 0x1c\(%ebx\),%ecx + [0-9a-f]+: 03 8b 94 ff ff ff[ ]+add 0xffffff94\(%ebx\),%ecx # ->R_386_TLS_TPOFF [0x28000000] [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * @@ -276,17 +276,17 @@ Disassembly of section .text: [0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * - [0-9a-f]+: 03 83 24 00 00 00[ ]+add 0x24\(%ebx\),%eax + [0-9a-f]+: 03 83 9c ff ff ff[ ]+add 0xffffff9c\(%ebx\),%eax # ->R_386_TLS_TPOFF [0x2c000000] [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * # @gottpoff IE against hidden and local var - [0-9a-f]+: 65 8b 0d 00 00 00 00 mov %gs:0x0,%ecx + [0-9a-f]+: 65 8b 0d 00 00 00 00[ ]+mov %gs:0x0,%ecx [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * - [0-9a-f]+: 2b 8b 84 00 00 00[ ]+sub 0x84\(%ebx\),%ecx + [0-9a-f]+: 2b 8b fc ff ff ff[ ]+sub 0xfffffffc\(%ebx\),%ecx # ->R_386_TLS_TPOFF32 [0xbcffffff] [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * @@ -296,17 +296,17 @@ Disassembly of section .text: [0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * - [0-9a-f]+: 2b 83 64 00 00 00[ ]+sub 0x64\(%ebx\),%eax + [0-9a-f]+: 2b 83 dc ff ff ff[ ]+sub 0xffffffdc\(%ebx\),%eax # ->R_386_TLS_TPOFF32 [0xb4ffffff] [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * # @gotntpoff IE against hidden and local var - [0-9a-f]+: 65 8b 0d 00 00 00 00 mov %gs:0x0,%ecx + [0-9a-f]+: 65 8b 0d 00 00 00 00[ ]+mov %gs:0x0,%ecx [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * - [0-9a-f]+: 03 8b 40 00 00 00[ ]+add 0x40\(%ebx\),%ecx + [0-9a-f]+: 03 8b b8 ff ff ff[ ]+add 0xffffffb8\(%ebx\),%ecx # ->R_386_TLS_TPOFF [0x48000000] [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * @@ -316,17 +316,17 @@ Disassembly of section .text: [0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * - [0-9a-f]+: 03 83 68 00 00 00[ ]+add 0x68\(%ebx\),%eax + [0-9a-f]+: 03 83 e0 ff ff ff[ ]+add 0xffffffe0\(%ebx\),%eax # ->R_386_TLS_TPOFF [0x4c000000] [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * # @gottpoff IE against hidden but not local var - [0-9a-f]+: 65 8b 0d 00 00 00 00 mov %gs:0x0,%ecx + [0-9a-f]+: 65 8b 0d 00 00 00 00[ ]+mov %gs:0x0,%ecx [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * - [0-9a-f]+: 2b 8b 44 00 00 00[ ]+sub 0x44\(%ebx\),%ecx + [0-9a-f]+: 2b 8b bc ff ff ff[ ]+sub 0xffffffbc\(%ebx\),%ecx # ->R_386_TLS_TPOFF32 [0x9cffffff] [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * @@ -336,17 +336,17 @@ Disassembly of section .text: [0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * - [0-9a-f]+: 2b 83 54 00 00 00[ ]+sub 0x54\(%ebx\),%eax + [0-9a-f]+: 2b 83 cc ff ff ff[ ]+sub 0xffffffcc\(%ebx\),%eax # ->R_386_TLS_TPOFF32 [0x94ffffff] [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * # @gotntpoff IE against hidden but not local var - [0-9a-f]+: 65 8b 0d 00 00 00 00 mov %gs:0x0,%ecx + [0-9a-f]+: 65 8b 0d 00 00 00 00[ ]+mov %gs:0x0,%ecx [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * - [0-9a-f]+: 03 8b 6c 00 00 00[ ]+add 0x6c\(%ebx\),%ecx + [0-9a-f]+: 03 8b e4 ff ff ff[ ]+add 0xffffffe4\(%ebx\),%ecx # ->R_386_TLS_TPOFF [0x68000000] [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * @@ -356,7 +356,7 @@ Disassembly of section .text: [0-9a-f]+: 65 a1 00 00 00 00[ ]+mov %gs:0x0,%eax [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * - [0-9a-f]+: 03 83 58 00 00 00[ ]+add 0x58\(%ebx\),%eax + [0-9a-f]+: 03 83 d0 ff ff ff[ ]+add 0xffffffd0\(%ebx\),%eax # ->R_386_TLS_TPOFF [0x6c000000] [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * @@ -364,7 +364,7 @@ Disassembly of section .text: [0-9a-f]+: 90[ ]+nop * # Direct access through %gs # @gotntpoff IE against global var - [0-9a-f]+: 8b 8b 50 00 00 00[ ]+mov 0x50\(%ebx\),%ecx + [0-9a-f]+: 8b 8b c8 ff ff ff[ ]+mov 0xffffffc8\(%ebx\),%ecx # ->R_386_TLS_TPOFF sg5 [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * @@ -374,7 +374,7 @@ Disassembly of section .text: [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * # @gotntpoff IE against local var - [0-9a-f]+: 8b 83 28 00 00 00[ ]+mov 0x28\(%ebx\),%eax + [0-9a-f]+: 8b 83 a0 ff ff ff[ ]+mov 0xffffffa0\(%ebx\),%eax # ->R_386_TLS_TPOFF [0x30000000] [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * @@ -384,7 +384,7 @@ Disassembly of section .text: [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * # @gotntpoff IE against hidden and local var - [0-9a-f]+: 8b 93 70 00 00 00[ ]+mov 0x70\(%ebx\),%edx + [0-9a-f]+: 8b 93 e8 ff ff ff[ ]+mov 0xffffffe8\(%ebx\),%edx # ->R_386_TLS_TPOFF [0x50000000] [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * @@ -394,7 +394,7 @@ Disassembly of section .text: [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * # @gotntpoff IE against hidden but not local var - [0-9a-f]+: 8b 8b 74 00 00 00[ ]+mov 0x74\(%ebx\),%ecx + [0-9a-f]+: 8b 8b ec ff ff ff[ ]+mov 0xffffffec\(%ebx\),%ecx # ->R_386_TLS_TPOFF [0x70000000] [0-9a-f]+: 90[ ]+nop * [0-9a-f]+: 90[ ]+nop * diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-i386/tlspic.rd binutils-2.15.91.0.1/ld/testsuite/ld-i386/tlspic.rd --- binutils-2.15.90.0.3/ld/testsuite/ld-i386/tlspic.rd 2002-09-27 08:33:09.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-i386/tlspic.rd 2004-05-27 11:26:05.389073939 -0700 @@ -17,15 +17,16 @@ Section Headers: \[ 5\] \.rel.plt +.* \[ 6\] \.plt +.* \[ 7\] \.text +.* - \[ 8\] \.data +.* - \[ 9\] .tdata +PROGBITS +[0-9a-f]+ [0-9a-f]+ 000060 00 WAT 0 0 1 - \[10\] .tbss +NOBITS +[0-9aa-f]+ [0-9a-f]+ 000020 00 WAT 0 0 1 - \[11\] \.dynamic +.* - \[12\] \.got +.* - \[13\] \.bss +.* - \[14\] \.shstrtab +.* - \[15\] \.symtab +.* - \[16\] \.strtab +.* + \[ 8\] \.tdata +PROGBITS +[0-9a-f]+ [0-9a-f]+ 000060 00 WAT 0 0 1 + \[ 9\] \.tbss +NOBITS +[0-9aa-f]+ [0-9a-f]+ 000020 00 WAT 0 0 1 + \[10\] \.dynamic +.* + \[11\] \.got +.* + \[12\] \.got.plt +.* + \[13\] \.data +.* + \[14\] \.bss +.* + \[15\] \.shstrtab +.* + \[16\] \.symtab +.* + \[17\] \.strtab +.* Key to Flags: .* .* @@ -45,7 +46,7 @@ Program Headers: Section to Segment mapping: Segment Sections... 00 +.hash .dynsym .dynstr .rel.dyn .rel.plt .plt .text * - 01 +.tdata .tbss .dynamic .got * + 01 +.tdata .tbss .dynamic .got .got.plt * 02 +.tbss .dynamic * 03 +.tdata .tbss * @@ -70,105 +71,98 @@ Relocation section '.rel.dyn' at offset [0-9a-f]+ +0+0e R_386_TLS_TPOFF * [0-9a-f]+ +0+23 R_386_TLS_DTPMOD3 [0-9a-f]+ +0+25 R_386_TLS_TPOFF32 -[0-9a-f]+ +0+100e R_386_TLS_TPOFF 0+8 sg3 -[0-9a-f]+ +0+1125 R_386_TLS_TPOFF32 0+c sg4 -[0-9a-f]+ +0+110e R_386_TLS_TPOFF 0+c sg4 -[0-9a-f]+ +0+120e R_386_TLS_TPOFF 0+10 sg5 -[0-9a-f]+ +0+1323 R_386_TLS_DTPMOD3 0+ sg1 -[0-9a-f]+ +0+1324 R_386_TLS_DTPOFF3 0+ sg1 -[0-9a-f]+ +0+1625 R_386_TLS_TPOFF32 0+4 sg2 +[0-9a-f]+ +0+80e R_386_TLS_TPOFF 0+8 sg3 +[0-9a-f]+ +0+925 R_386_TLS_TPOFF32 0+c sg4 +[0-9a-f]+ +0+90e R_386_TLS_TPOFF 0+c sg4 +[0-9a-f]+ +0+a0e R_386_TLS_TPOFF 0+10 sg5 +[0-9a-f]+ +0+b23 R_386_TLS_DTPMOD3 0+ sg1 +[0-9a-f]+ +0+b24 R_386_TLS_DTPOFF3 0+ sg1 +[0-9a-f]+ +0+e25 R_386_TLS_TPOFF32 0+4 sg2 -Relocation section '.rel.plt' at offset 0x480 contains 1 entries: +Relocation section '.rel.plt' at offset 0x[0-9a-f]+ contains 1 entries: Offset Info Type Sym.Value Sym. Name -[0-9a-f]+ 0+1c07 R_386_JUMP_SLOT 0+ ___tls_get_addr +[0-9a-f]+ 0+1407 R_386_JUMP_SLOT 0+ ___tls_get_addr -Symbol table '.dynsym' contains 29 entries: +Symbol table '.dynsym' contains 21 entries: +Num: + Value Size Type + Bind +Vis +Ndx Name - +0: 0+ +0 NOTYPE LOCAL DEFAULT UND * - +1: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +1 * - +2: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +2 * - +3: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +3 * - +4: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +4 * - +5: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +5 * - +6: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +6 * - +7: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +7 * - +8: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +8 * - +9: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +9 * - +10: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +10 * - +11: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +11 * - +12: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +12 * - +13: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +13 * - +14: 0+1c +0 TLS +GLOBAL DEFAULT +9 sg8 - +15: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC - +16: 0+8 +0 TLS +GLOBAL DEFAULT +9 sg3 - +17: 0+c +0 TLS +GLOBAL DEFAULT +9 sg4 - +18: 0+10 +0 TLS +GLOBAL DEFAULT +9 sg5 - +19: 0+ +0 TLS +GLOBAL DEFAULT +9 sg1 - +20: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +7 fn1 - +21: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start - +22: 0+4 +0 TLS +GLOBAL DEFAULT +9 sg2 - +23: 0+14 +0 TLS +GLOBAL DEFAULT +9 sg6 - +24: 0+18 +0 TLS +GLOBAL DEFAULT +9 sg7 - +25: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata - +26: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ - +27: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end - +28: 0+ +0 NOTYPE GLOBAL DEFAULT UND ___tls_get_addr + +[0-9]+: 0+ +0 NOTYPE LOCAL DEFAULT UND * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +7 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +8 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +9 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +13 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +14 * + +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +8 sg8 + +[0-9]+: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC + +[0-9]+: 0+8 +0 TLS +GLOBAL DEFAULT +8 sg3 + +[0-9]+: 0+c +0 TLS +GLOBAL DEFAULT +8 sg4 + +[0-9]+: 0+10 +0 TLS +GLOBAL DEFAULT +8 sg5 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +8 sg1 + +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +7 fn1 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start + +[0-9]+: 0+4 +0 TLS +GLOBAL DEFAULT +8 sg2 + +[0-9]+: 0+14 +0 TLS +GLOBAL DEFAULT +8 sg6 + +[0-9]+: 0+18 +0 TLS +GLOBAL DEFAULT +8 sg7 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata + +[0-9]+: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end + +[0-9]+: 0+ +0 NOTYPE GLOBAL DEFAULT UND ___tls_get_addr -Symbol table '.symtab' contains 56 entries: +Symbol table '.symtab' contains 57 entries: +Num: +Value Size Type +Bind +Vis +Ndx Name - +0: 0+ +0 NOTYPE LOCAL DEFAULT UND * - +1: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +1 * - +2: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +2 * - +3: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +3 * - +4: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +4 * - +5: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +5 * - +6: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +6 * - +7: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +7 * - +8: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +8 * - +9: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +9 * - +10: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +10 * - +11: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +11 * - +12: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +12 * - +13: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +13 * - +14: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +14 * - +15: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +15 * - +16: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +16 * - +17: 0+20 +0 TLS +LOCAL DEFAULT +9 sl1 - +18: 0+24 +0 TLS +LOCAL DEFAULT +9 sl2 - +19: 0+28 +0 TLS +LOCAL DEFAULT +9 sl3 - +20: 0+2c +0 TLS +LOCAL DEFAULT +9 sl4 - +21: 0+30 +0 TLS +LOCAL DEFAULT +9 sl5 - +22: 0+34 +0 TLS +LOCAL DEFAULT +9 sl6 - +23: 0+38 +0 TLS +LOCAL DEFAULT +9 sl7 - +24: 0+3c +0 TLS +LOCAL DEFAULT +9 sl8 - +25: 0+60 +0 TLS +LOCAL HIDDEN +10 sH1 - +26: 0+48 +0 TLS +LOCAL HIDDEN +9 sh3 - +27: 0+64 +0 TLS +LOCAL HIDDEN +10 sH2 - +28: 0+78 +0 TLS +LOCAL HIDDEN +10 sH7 - +29: 0+58 +0 TLS +LOCAL HIDDEN +9 sh7 - +30: 0+5c +0 TLS +LOCAL HIDDEN +9 sh8 - +31: 0+6c +0 TLS +LOCAL HIDDEN +10 sH4 - +32: 0+4c +0 TLS +LOCAL HIDDEN +9 sh4 - +33: 0+68 +0 TLS +LOCAL HIDDEN +10 sH3 - +34: 0+50 +0 TLS +LOCAL HIDDEN +9 sh5 - +35: 0+70 +0 TLS +LOCAL HIDDEN +10 sH5 - +36: 0+74 +0 TLS +LOCAL HIDDEN +10 sH6 - +37: 0+7c +0 TLS +LOCAL HIDDEN +10 sH8 - +38: 0+40 +0 TLS +LOCAL HIDDEN +9 sh1 - +39: 0+44 +0 TLS +LOCAL HIDDEN +9 sh2 - +40: 0+54 +0 TLS +LOCAL HIDDEN +9 sh6 - +41: 0+1c +0 TLS +GLOBAL DEFAULT +9 sg8 - +42: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC - +43: 0+8 +0 TLS +GLOBAL DEFAULT +9 sg3 - +44: 0+c +0 TLS +GLOBAL DEFAULT +9 sg4 - +45: 0+10 +0 TLS +GLOBAL DEFAULT +9 sg5 - +46: 0+ +0 TLS +GLOBAL DEFAULT +9 sg1 - +47: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +7 fn1 - +48: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start - +49: 0+4 +0 TLS +GLOBAL DEFAULT +9 sg2 - +50: 0+14 +0 TLS +GLOBAL DEFAULT +9 sg6 - +51: 0+18 +0 TLS +GLOBAL DEFAULT +9 sg7 - +52: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata - +53: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ - +54: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end - +55: 0+ +0 NOTYPE GLOBAL DEFAULT UND ___tls_get_addr + +[0-9]+: 0+ +0 NOTYPE LOCAL DEFAULT UND * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +1 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +2 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +3 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +4 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +5 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +6 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +7 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +8 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +9 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +10 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +11 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +12 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +13 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +14 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +15 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +16 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +17 * + +[0-9]+: 0+20 +0 TLS +LOCAL DEFAULT +8 sl1 + +[0-9]+: 0+24 +0 TLS +LOCAL DEFAULT +8 sl2 + +[0-9]+: 0+28 +0 TLS +LOCAL DEFAULT +8 sl3 + +[0-9]+: 0+2c +0 TLS +LOCAL DEFAULT +8 sl4 + +[0-9]+: 0+30 +0 TLS +LOCAL DEFAULT +8 sl5 + +[0-9]+: 0+34 +0 TLS +LOCAL DEFAULT +8 sl6 + +[0-9]+: 0+38 +0 TLS +LOCAL DEFAULT +8 sl7 + +[0-9]+: 0+3c +0 TLS +LOCAL DEFAULT +8 sl8 + +[0-9]+: 0+60 +0 TLS +LOCAL HIDDEN +9 sH1 + +[0-9]+: 0+48 +0 TLS +LOCAL HIDDEN +8 sh3 + +[0-9]+: 0+64 +0 TLS +LOCAL HIDDEN +9 sH2 + +[0-9]+: 0+78 +0 TLS +LOCAL HIDDEN +9 sH7 + +[0-9]+: 0+58 +0 TLS +LOCAL HIDDEN +8 sh7 + +[0-9]+: 0+5c +0 TLS +LOCAL HIDDEN +8 sh8 + +[0-9]+: 0+6c +0 TLS +LOCAL HIDDEN +9 sH4 + +[0-9]+: 0+4c +0 TLS +LOCAL HIDDEN +8 sh4 + +[0-9]+: 0+68 +0 TLS +LOCAL HIDDEN +9 sH3 + +[0-9]+: 0+50 +0 TLS +LOCAL HIDDEN +8 sh5 + +[0-9]+: 0+70 +0 TLS +LOCAL HIDDEN +9 sH5 + +[0-9]+: 0+74 +0 TLS +LOCAL HIDDEN +9 sH6 + +[0-9]+: 0+7c +0 TLS +LOCAL HIDDEN +9 sH8 + +[0-9]+: 0+40 +0 TLS +LOCAL HIDDEN +8 sh1 + +[0-9]+: 0+44 +0 TLS +LOCAL HIDDEN +8 sh2 + +[0-9]+: 0+54 +0 TLS +LOCAL HIDDEN +8 sh6 + +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +8 sg8 + +[0-9]+: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC + +[0-9]+: 0+8 +0 TLS +GLOBAL DEFAULT +8 sg3 + +[0-9]+: 0+c +0 TLS +GLOBAL DEFAULT +8 sg4 + +[0-9]+: 0+10 +0 TLS +GLOBAL DEFAULT +8 sg5 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +8 sg1 + +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +7 fn1 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start + +[0-9]+: 0+4 +0 TLS +GLOBAL DEFAULT +8 sg2 + +[0-9]+: 0+14 +0 TLS +GLOBAL DEFAULT +8 sg6 + +[0-9]+: 0+18 +0 TLS +GLOBAL DEFAULT +8 sg7 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata + +[0-9]+: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end + +[0-9]+: 0+ +0 NOTYPE GLOBAL DEFAULT UND ___tls_get_addr diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-i386/tlspic.sd binutils-2.15.91.0.1/ld/testsuite/ld-i386/tlspic.sd --- binutils-2.15.90.0.3/ld/testsuite/ld-i386/tlspic.sd 2002-09-27 08:33:09.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-i386/tlspic.sd 2004-05-27 11:26:05.396073034 -0700 @@ -8,7 +8,6 @@ .*: file format elf32-i386 Contents of section \.got: - [0-9a-f]+ [0-9a-f]+ 00000000 00000000 [0-9a-f]+ .* [0-9a-f]+ 00000000 20000000 dcffffff 28000000 .* [0-9a-f]+ d4ffffff 2c000000 30000000 00000000 .* [0-9a-f]+ 00000000 00000000 60000000 00000000 .* diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-ia64/tlsbin.rd binutils-2.15.91.0.1/ld/testsuite/ld-ia64/tlsbin.rd --- binutils-2.15.90.0.3/ld/testsuite/ld-ia64/tlsbin.rd 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-ia64/tlsbin.rd 2004-05-27 11:26:05.434068120 -0700 @@ -20,11 +20,11 @@ Section Headers: \[ 8\] .text +PROGBITS +40+1000 0+1000 0+140 00 +AX +0 +0 4096 \[ 9\] .IA_64.unwind_inf +.* \[10\] .IA_64.unwind +.* - \[11\] .data +.* - \[12\] .tdata +PROGBITS +60+2000 0+2000 0+60 00 WAT +0 +0 +4 - \[13\] .tbss +NOBITS +60+2060 0+2060 0+40 00 WAT +0 +0 +1 - \[14\] .dynamic +DYNAMIC +60+2060 0+2060 0+150 10 +WA +4 +0 +8 - \[15\] .got +PROGBITS +60+21b0 0+21b0 0+48 00 WAp +0 +0 +8 + \[11\] .tdata +PROGBITS +60+1170 0+1170 0+60 00 WAT +0 +0 +4 + \[12\] .tbss +NOBITS +60+11d0 0+11d0 0+40 00 WAT +0 +0 +1 + \[13\] .dynamic +DYNAMIC +60+11d0 0+11d0 0+150 10 +WA +4 +0 +8 + \[14\] .data +.* + \[15\] .got +PROGBITS +60+2000 0+2000 0+48 00 WAp +0 +0 +8 \[16\] .IA_64.pltoff +.* \[17\] .sbss +.* \[18\] .bss +.* @@ -43,32 +43,32 @@ Program Headers: INTERP +0x0+1c8 0x40+1c8 0x40+1c8 0x[0-9a-f]+ 0x[0-9a-f]+ R +0x1 .*Requesting program interpreter.* LOAD +0x0+ 0x40+ 0x40+ 0x0+1170 0x0+1170 R E 0x10000 - LOAD +0x0+2000 0x60+2000 0x60+2000 0x0+210 0x0+210 RW +0x10000 - DYNAMIC +0x0+2060 0x60+2060 0x60+2060 0x0+150 0x0+150 RW +0x8 - TLS +0x0+2000 0x60+2000 0x60+2000 0x0+60 0x0+a0 R +0x4 + LOAD +0x0+1170 0x60+1170 0x60+1170 0x0+ef0 0x0+ef0 RW +0x10000 + DYNAMIC +0x0+11d0 0x60+11d0 0x60+11d0 0x0+150 0x0+150 RW +0x8 + TLS +0x0+1170 0x60+1170 0x60+1170 0x0+60 0x0+a0 R +0x4 IA_64_UNWIND .* R +0x8 #... Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 3 entries: +Offset +Info +Type +Symbol's Value Symbol's Name \+ Addend -60+21c8 0+200000097 R_IA64_TPREL64LSB +0+ sG2 \+ 0 -60+21d0 0+5000000a7 R_IA64_DTPMOD64LSB +0+ sG1 \+ 0 -60+21d8 0+5000000b7 R_IA64_DTPREL64LSB +0+ sG1 \+ 0 +60+2018 0+200000097 R_IA64_TPREL64LSB +0+ sG2 \+ 0 +60+2020 0+5000000a7 R_IA64_DTPMOD64LSB +0+ sG1 \+ 0 +60+2028 0+5000000b7 R_IA64_DTPREL64LSB +0+ sG1 \+ 0 Relocation section '.rela.IA_64.pltoff' at offset 0x[0-9a-f]+ contains 1 entries: +Offset +Info +Type +Symbol's Value Symbol's Name \+ Addend -60+2200 0+300000081 R_IA64_IPLTLSB +0+ __tls_get_addr \+ 0 +60+2050 0+300000081 R_IA64_IPLTLSB +0+ __tls_get_addr \+ 0 Symbol table '.dynsym' contains 9 entries: +Num: +Value +Size Type +Bind +Vis +Ndx Name +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND * - +1: 60+2060 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC + +1: 60+11d0 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC +2: 0+ +0 TLS +GLOBAL DEFAULT +UND sG2 +3: 0+ +16 FUNC +GLOBAL DEFAULT +UND __tls_get_addr +4: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start +5: 0+ +0 TLS +GLOBAL DEFAULT +UND sG1 +6: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata - +7: 60+21b0 +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_ + +7: 60+2000 +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_ +8: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end Symbol table '.symtab' contains 72 entries: @@ -95,53 +95,53 @@ Symbol table '.symtab' contains 72 entri +19: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +19 * +20: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +20 * +21: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +21 * - +22: 0+20 +0 TLS +LOCAL +DEFAULT +12 sl1 - +23: 0+24 +0 TLS +LOCAL +DEFAULT +12 sl2 - +24: 0+28 +0 TLS +LOCAL +DEFAULT +12 sl3 - +25: 0+2c +0 TLS +LOCAL +DEFAULT +12 sl4 - +26: 0+30 +0 TLS +LOCAL +DEFAULT +12 sl5 - +27: 0+34 +0 TLS +LOCAL +DEFAULT +12 sl6 - +28: 0+38 +0 TLS +LOCAL +DEFAULT +12 sl7 - +29: 0+3c +0 TLS +LOCAL +DEFAULT +12 sl8 - +30: 0+80 +0 TLS +LOCAL +DEFAULT +13 bl1 - +31: 0+84 +0 TLS +LOCAL +DEFAULT +13 bl2 - +32: 0+88 +0 TLS +LOCAL +DEFAULT +13 bl3 - +33: 0+8c +0 TLS +LOCAL +DEFAULT +13 bl4 - +34: 0+90 +0 TLS +LOCAL +DEFAULT +13 bl5 - +35: 0+94 +0 TLS +LOCAL +DEFAULT +13 bl6 - +36: 0+98 +0 TLS +LOCAL +DEFAULT +13 bl7 - +37: 0+9c +0 TLS +LOCAL +DEFAULT +13 bl8 - +38: 0+1c +0 TLS +GLOBAL DEFAULT +12 sg8 - +39: 0+7c +0 TLS +GLOBAL DEFAULT +13 bg8 - +40: 0+74 +0 TLS +GLOBAL DEFAULT +13 bg6 - +41: 0+68 +0 TLS +GLOBAL DEFAULT +13 bg3 - +42: 60+2060 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC - +43: 0+8 +0 TLS +GLOBAL DEFAULT +12 sg3 - +44: 0+48 +0 TLS +GLOBAL HIDDEN +12 sh3 + +22: 0+20 +0 TLS +LOCAL +DEFAULT +11 sl1 + +23: 0+24 +0 TLS +LOCAL +DEFAULT +11 sl2 + +24: 0+28 +0 TLS +LOCAL +DEFAULT +11 sl3 + +25: 0+2c +0 TLS +LOCAL +DEFAULT +11 sl4 + +26: 0+30 +0 TLS +LOCAL +DEFAULT +11 sl5 + +27: 0+34 +0 TLS +LOCAL +DEFAULT +11 sl6 + +28: 0+38 +0 TLS +LOCAL +DEFAULT +11 sl7 + +29: 0+3c +0 TLS +LOCAL +DEFAULT +11 sl8 + +30: 0+80 +0 TLS +LOCAL +DEFAULT +12 bl1 + +31: 0+84 +0 TLS +LOCAL +DEFAULT +12 bl2 + +32: 0+88 +0 TLS +LOCAL +DEFAULT +12 bl3 + +33: 0+8c +0 TLS +LOCAL +DEFAULT +12 bl4 + +34: 0+90 +0 TLS +LOCAL +DEFAULT +12 bl5 + +35: 0+94 +0 TLS +LOCAL +DEFAULT +12 bl6 + +36: 0+98 +0 TLS +LOCAL +DEFAULT +12 bl7 + +37: 0+9c +0 TLS +LOCAL +DEFAULT +12 bl8 + +38: 0+1c +0 TLS +GLOBAL DEFAULT +11 sg8 + +39: 0+7c +0 TLS +GLOBAL DEFAULT +12 bg8 + +40: 0+74 +0 TLS +GLOBAL DEFAULT +12 bg6 + +41: 0+68 +0 TLS +GLOBAL DEFAULT +12 bg3 + +42: 60+11d0 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC + +43: 0+8 +0 TLS +GLOBAL DEFAULT +11 sg3 + +44: 0+48 +0 TLS +GLOBAL HIDDEN +11 sh3 +45: 0+ +0 TLS +GLOBAL DEFAULT +UND sG2 - +46: 0+c +0 TLS +GLOBAL DEFAULT +12 sg4 - +47: 0+10 +0 TLS +GLOBAL DEFAULT +12 sg5 - +48: 0+70 +0 TLS +GLOBAL DEFAULT +13 bg5 + +46: 0+c +0 TLS +GLOBAL DEFAULT +11 sg4 + +47: 0+10 +0 TLS +GLOBAL DEFAULT +11 sg5 + +48: 0+70 +0 TLS +GLOBAL DEFAULT +12 bg5 +49: 0+ +16 FUNC +GLOBAL DEFAULT +UND __tls_get_addr - +50: 0+58 +0 TLS +GLOBAL HIDDEN +12 sh7 - +51: 0+5c +0 TLS +GLOBAL HIDDEN +12 sh8 - +52: 0+ +0 TLS +GLOBAL DEFAULT +12 sg1 + +50: 0+58 +0 TLS +GLOBAL HIDDEN +11 sh7 + +51: 0+5c +0 TLS +GLOBAL HIDDEN +11 sh8 + +52: 0+ +0 TLS +GLOBAL DEFAULT +11 sg1 +53: 40+10d0 +112 FUNC +GLOBAL DEFAULT +8 _start - +54: 0+4c +0 TLS +GLOBAL HIDDEN +12 sh4 - +55: 0+78 +0 TLS +GLOBAL DEFAULT +13 bg7 - +56: 0+50 +0 TLS +GLOBAL HIDDEN +12 sh5 + +54: 0+4c +0 TLS +GLOBAL HIDDEN +11 sh4 + +55: 0+78 +0 TLS +GLOBAL DEFAULT +12 bg7 + +56: 0+50 +0 TLS +GLOBAL HIDDEN +11 sh5 +57: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start +58: 40+1000 +208 FUNC +GLOBAL DEFAULT +8 fn2 - +59: 0+4 +0 TLS +GLOBAL DEFAULT +12 sg2 + +59: 0+4 +0 TLS +GLOBAL DEFAULT +11 sg2 +60: 0+ +0 TLS +GLOBAL DEFAULT +UND sG1 - +61: 0+40 +0 TLS +GLOBAL HIDDEN +12 sh1 - +62: 0+14 +0 TLS +GLOBAL DEFAULT +12 sg6 - +63: 0+18 +0 TLS +GLOBAL DEFAULT +12 sg7 + +61: 0+40 +0 TLS +GLOBAL HIDDEN +11 sh1 + +62: 0+14 +0 TLS +GLOBAL DEFAULT +11 sg6 + +63: 0+18 +0 TLS +GLOBAL DEFAULT +11 sg7 +64: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata +65: [0-9a-f]+ +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_ +66: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end - +67: 0+44 +0 TLS +GLOBAL HIDDEN +12 sh2 - +68: 0+54 +0 TLS +GLOBAL HIDDEN +12 sh6 - +69: 0+64 +0 TLS +GLOBAL DEFAULT +13 bg2 - +70: 0+60 +0 TLS +GLOBAL DEFAULT +13 bg1 - +71: 0+6c +0 TLS +GLOBAL DEFAULT +13 bg4 + +67: 0+44 +0 TLS +GLOBAL HIDDEN +11 sh2 + +68: 0+54 +0 TLS +GLOBAL HIDDEN +11 sh6 + +69: 0+64 +0 TLS +GLOBAL DEFAULT +12 bg2 + +70: 0+60 +0 TLS +GLOBAL DEFAULT +12 bg1 + +71: 0+6c +0 TLS +GLOBAL DEFAULT +12 bg4 diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-ia64/tlsbin.sd binutils-2.15.91.0.1/ld/testsuite/ld-ia64/tlsbin.sd --- binutils-2.15.90.0.3/ld/testsuite/ld-ia64/tlsbin.sd 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-ia64/tlsbin.sd 2004-05-27 11:26:05.434068120 -0700 @@ -8,8 +8,8 @@ .*: +file format elf..-ia64-.* Contents of section .got: - (60+)?21b0 0+ 0+ 0+ 0+ .* - (60+)?21c0 0+ 0+ 0+ 0+ .* - (60+)?21d0 0+ 0+ 0+ 0+ .* - (60+)?21e0 01000000 0+ 90000000 0+ .* - (60+)?21f0 24000000 0+ .* + (60+)?2000 0+ 0+ 0+ 0+ .* + (60+)?2010 0+ 0+ 0+ 0+ .* + (60+)?2020 0+ 0+ 0+ 0+ .* + (60+)?2030 01000000 0+ 90000000 0+ .* + (60+)?2040 24000000 0+ .* diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-ia64/tlsbin.td binutils-2.15.91.0.1/ld/testsuite/ld-ia64/tlsbin.td --- binutils-2.15.90.0.3/ld/testsuite/ld-ia64/tlsbin.td 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-ia64/tlsbin.td 2004-05-27 11:26:05.435067991 -0700 @@ -8,9 +8,9 @@ .*: +file format elf..-ia64-.* Contents of section .tdata: - (60+)?2000 11000000 12000000 13000000 14000000 .* - (60+)?2010 15000000 16000000 17000000 18000000 .* - (60+)?2020 41000000 42000000 43000000 44000000 .* - (60+)?2030 45000000 46000000 47000000 48000000 .* - (60+)?2040 01010000 02010000 03010000 04010000 .* - (60+)?2050 05010000 06010000 07010000 08010000 .* + (60+)?1170 11000000 12000000 13000000 14000000 .* + (60+)?1180 15000000 16000000 17000000 18000000 .* + (60+)?1190 41000000 42000000 43000000 44000000 .* + (60+)?11a0 45000000 46000000 47000000 48000000 .* + (60+)?11b0 01010000 02010000 03010000 04010000 .* + (60+)?11c0 05010000 06010000 07010000 08010000 .* diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-ia64/tlspic.dd binutils-2.15.91.0.1/ld/testsuite/ld-ia64/tlspic.dd --- binutils-2.15.90.0.3/ld/testsuite/ld-ia64/tlspic.dd 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-ia64/tlspic.dd 2004-05-27 11:26:05.454065534 -0700 @@ -18,25 +18,25 @@ Disassembly of section .text: +101c: 01 0a 00 90[ ]+addl r15=32,r1;; +1020: 19 18 01 1c 18 10[ ]+\[MMB\] +ld8 r35=\[r14\] +1026: 40 02 3c 30 20 00[ ]+ld8 r36=\[r15\] - +102c: 88 f6 ff 58[ ]+br.call.sptk.many b0=[0-9a-f]+ <.*>;; + +102c: 88 f5 ff 58[ ]+br.call.sptk.many b0=[0-9a-f]+ <.*>;; +1030: 0d 70 c0 02 00 24[ ]+\[MFI\] +addl r14=48,r1 +1036: 00 00 00 02 00 e0[ ]+nop.f 0x0 +103c: 01 0c 00 90[ ]+addl r15=64,r1;; +1040: 19 18 01 1c 18 10[ ]+\[MMB\] +ld8 r35=\[r14\] +1046: 40 02 3c 30 20 00[ ]+ld8 r36=\[r15\] - +104c: 68 f6 ff 58[ ]+br.call.sptk.many b0=[0-9a-f]+ <.*>;; + +104c: 68 f5 ff 58[ ]+br.call.sptk.many b0=[0-9a-f]+ <.*>;; +1050: 0d 70 c0 02 00 24[ ]+\[MFI\] +addl r14=48,r1 +1056: 00 00 00 02 00 80[ ]+nop.f 0x0 +105c: 14 02 00 90[ ]+mov r36=33;; +1060: 1d 18 01 1c 18 10[ ]+\[MFB\] +ld8 r35=\[r14\] +1066: 00 00 00 02 00 00[ ]+nop.f 0x0 - +106c: 48 f6 ff 58[ ]+br.call.sptk.many b0=[0-9a-f]+ <.*>;; + +106c: 48 f5 ff 58[ ]+br.call.sptk.many b0=[0-9a-f]+ <.*>;; +1070: 0d 70 c0 02 00 24[ ]+\[MFI\] +addl r14=48,r1 +1076: 00 00 00 02 00 80[ ]+nop.f 0x0 +107c: 04 00 00 84[ ]+mov r36=r0;; +1080: 1d 18 01 1c 18 10[ ]+\[MFB\] +ld8 r35=\[r14\] +1086: 00 00 00 02 00 00[ ]+nop.f 0x0 - +108c: 28 f6 ff 58[ ]+br.call.sptk.many b0=[0-9a-f]+ <.*>;; + +108c: 28 f5 ff 58[ ]+br.call.sptk.many b0=[0-9a-f]+ <.*>;; +1090: 0b 10 00 10 00 21[ ]+\[MMI\] +mov r2=r8;; +1096: e0 00 0a 00 48 e0[ ]+addl r14=64,r2 +109c: 21 16 00 90[ ]+addl r15=98,r2;; diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-ia64/tlspic.rd binutils-2.15.91.0.1/ld/testsuite/ld-ia64/tlspic.rd --- binutils-2.15.90.0.3/ld/testsuite/ld-ia64/tlspic.rd 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-ia64/tlspic.rd 2004-05-27 11:26:05.460064759 -0700 @@ -19,11 +19,11 @@ Section Headers: \[ 7\] .text +PROGBITS +0+1000 0+1000 0+110 00 +AX +0 +0 4096 \[ 8\] .IA_64.unwind_inf +.* \[ 9\] .IA_64.unwind +.* - \[10\] .data +.* - \[11\] .tdata +PROGBITS +0+12000 0+2000 0+60 00 WAT +0 +0 +4 - \[12\] .tbss +NOBITS +0+12060 0+2060 0+20 00 WAT +0 +0 +1 - \[13\] .dynamic +DYNAMIC +0+12060 0+2060 0+140 10 +WA +3 +0 +8 - \[14\] .got +PROGBITS +0+121a0 0+21a0 0+50 00 WAp +0 +0 +8 + \[10\] .tdata +PROGBITS +0+11140 0+1140 0+60 00 WAT +0 +0 +4 + \[11\] .tbss +NOBITS +0+111a0 0+11a0 0+20 00 WAT +0 +0 +1 + \[12\] .dynamic +DYNAMIC +0+111a0 0+11a0 0+140 10 +WA +3 +0 +8 + \[13\] .data +.* + \[14\] .got +PROGBITS +0+12000 0+2000 0+50 00 WAp +0 +0 +8 \[15\] .IA_64.pltoff +.* \[16\] .sbss +.* \[17\] .bss +.* @@ -40,120 +40,111 @@ There are 5 program headers, starting at Program Headers: Type +Offset +VirtAddr +PhysAddr +FileSiz +MemSiz +Flg Align LOAD +0x0+ 0x0+ 0x0+ 0x0+1140 0x0+1140 R E 0x10000 - LOAD +0x0+2000 0x0+12000 0x0+12000 0x0+200 0x0+200 RW +0x10000 - DYNAMIC +0x0+2060 0x0+12060 0x0+12060 0x0+140 0x0+140 RW +0x8 - TLS +0x0+2000 0x0+12000 0x0+12000 0x0+60 0x0+80 R +0x4 + LOAD +0x0+1140 0x0+11140 0x0+11140 0x0+f20 0x0+f20 RW +0x10000 + DYNAMIC +0x0+11a0 0x0+111a0 0x0+111a0 0x0+140 0x0+140 RW +0x8 + TLS +0x0+1140 0x0+11140 0x0+11140 0x0+60 0x0+80 R +0x4 IA_64_UNWIND +0x0+1128 0x0+1128 0x0+1128 0x0+18 0x0+18 R +0x8 #... Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 6 entries: +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend -0+121b8 +0+18000000a7 R_IA64_DTPMOD64LSB +0+ sg1 \+ 0 -0+121c0 +0+18000000b7 R_IA64_DTPREL64LSB +0+ sg1 \+ 0 -0+121c8 +0+1b00000097 R_IA64_TPREL64LSB +0+4 sg2 \+ 0 -0+121d0 +0+a7 R_IA64_DTPMOD64LSB +0+ -0+121d8 +0+97 R_IA64_TPREL64LSB +0+44 -0+121e8 +0+97 R_IA64_TPREL64LSB +0+24 +0+12018 +0+f000000a7 R_IA64_DTPMOD64LSB +0+ sg1 \+ 0 +0+12020 +0+f000000b7 R_IA64_DTPREL64LSB +0+ sg1 \+ 0 +0+12028 +0+1200000097 R_IA64_TPREL64LSB +0+4 sg2 \+ 0 +0+12030 +0+a7 R_IA64_DTPMOD64LSB +0+ +0+12038 +0+97 R_IA64_TPREL64LSB +0+44 +0+12048 +0+97 R_IA64_TPREL64LSB +0+24 Relocation section '.rela.IA_64.pltoff' at offset 0x[0-9a-f]+ contains 1 entries: +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend -0+[0-9a-f]+ +0+1700000081 R_IA64_IPLTLSB +0+ __tls_get_addr \+ 0 +0+[0-9a-f]+ +0+e00000081 R_IA64_IPLTLSB +0+ __tls_get_addr \+ 0 -Symbol table '.dynsym' contains 33 entries: +Symbol table '.dynsym' contains 24 entries: +Num: +Value +Size Type +Bind +Vis +Ndx Name - +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND * - +1: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +1 * - +2: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +2 * - +3: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +3 * - +4: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +4 * - +5: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +5 * - +6: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +6 * - +7: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +7 * - +8: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +8 * - +9: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +9 * - +10: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +10 * - +11: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +11 * - +12: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +12 * - +13: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +13 * - +14: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +14 * - +15: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +15 * - +16: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +16 * - +17: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +17 * - +18: 0+1c +0 TLS +GLOBAL DEFAULT +11 sg8 - +19: 0+12060 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC - +20: 0+8 +0 TLS +GLOBAL DEFAULT +11 sg3 - +21: 0+c +0 TLS +GLOBAL DEFAULT +11 sg4 - +22: 0+10 +0 TLS +GLOBAL DEFAULT +11 sg5 - +23: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND __tls_get_addr - +24: 0+ +0 TLS +GLOBAL DEFAULT +11 sg1 - +25: 0+1000 +272 FUNC +GLOBAL DEFAULT +7 fn1 - +26: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start - +27: 0+4 +0 TLS +GLOBAL DEFAULT +11 sg2 - +28: 0+14 +0 TLS +GLOBAL DEFAULT +11 sg6 - +29: 0+18 +0 TLS +GLOBAL DEFAULT +11 sg7 - +30: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata - +31: 0+121a0 +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_ - +32: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end + +[0-9]+: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +7 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +8 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +9 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +10 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +11 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +13 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +15 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +17 * + +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +10 sg8 + +[0-9]+: 0+111a0 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC + +[0-9]+: 0+8 +0 TLS +GLOBAL DEFAULT +10 sg3 + +[0-9]+: 0+c +0 TLS +GLOBAL DEFAULT +10 sg4 + +[0-9]+: 0+10 +0 TLS +GLOBAL DEFAULT +10 sg5 + +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND __tls_get_addr + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +10 sg1 + +[0-9]+: 0+1000 +272 FUNC +GLOBAL DEFAULT +7 fn1 + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start + +[0-9]+: 0+4 +0 TLS +GLOBAL DEFAULT +10 sg2 + +[0-9]+: 0+14 +0 TLS +GLOBAL DEFAULT +10 sg6 + +[0-9]+: 0+18 +0 TLS +GLOBAL DEFAULT +10 sg7 + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata + +[0-9]+: 0+12000 +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_ + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end Symbol table '.symtab' contains 60 entries: +Num: +Value +Size Type +Bind +Vis +Ndx Name - +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND * - +1: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +1 * - +2: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +2 * - +3: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +3 * - +4: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +4 * - +5: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +5 * - +6: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +6 * - +7: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +7 * - +8: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +8 * - +9: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +9 * - +10: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +10 * - +11: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +11 * - +12: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +12 * - +13: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +13 * - +14: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +14 * - +15: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +15 * - +16: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +16 * - +17: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +17 * - +18: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +18 * - +19: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +19 * - +20: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +20 * - +21: 0+20 +0 TLS +LOCAL +DEFAULT +11 sl1 - +22: 0+24 +0 TLS +LOCAL +DEFAULT +11 sl2 - +23: 0+28 +0 TLS +LOCAL +DEFAULT +11 sl3 - +24: 0+2c +0 TLS +LOCAL +DEFAULT +11 sl4 - +25: 0+30 +0 TLS +LOCAL +DEFAULT +11 sl5 - +26: 0+34 +0 TLS +LOCAL +DEFAULT +11 sl6 - +27: 0+38 +0 TLS +LOCAL +DEFAULT +11 sl7 - +28: 0+3c +0 TLS +LOCAL +DEFAULT +11 sl8 - +29: 0+60 +0 TLS +LOCAL +HIDDEN +12 sH1 - +30: 0+48 +0 TLS +LOCAL +HIDDEN +11 sh3 - +31: 0+64 +0 TLS +LOCAL +HIDDEN +12 sH2 - +32: 0+78 +0 TLS +LOCAL +HIDDEN +12 sH7 - +33: 0+58 +0 TLS +LOCAL +HIDDEN +11 sh7 - +34: 0+5c +0 TLS +LOCAL +HIDDEN +11 sh8 - +35: 0+6c +0 TLS +LOCAL +HIDDEN +12 sH4 - +36: 0+4c +0 TLS +LOCAL +HIDDEN +11 sh4 - +37: 0+68 +0 TLS +LOCAL +HIDDEN +12 sH3 - +38: 0+50 +0 TLS +LOCAL +HIDDEN +11 sh5 - +39: 0+70 +0 TLS +LOCAL +HIDDEN +12 sH5 - +40: 0+74 +0 TLS +LOCAL +HIDDEN +12 sH6 - +41: 0+7c +0 TLS +LOCAL +HIDDEN +12 sH8 - +42: 0+40 +0 TLS +LOCAL +HIDDEN +11 sh1 - +43: 0+44 +0 TLS +LOCAL +HIDDEN +11 sh2 - +44: 0+54 +0 TLS +LOCAL +HIDDEN +11 sh6 - +45: 0+1c +0 TLS +GLOBAL DEFAULT +11 sg8 - +46: 0+12060 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC - +47: 0+8 +0 TLS +GLOBAL DEFAULT +11 sg3 - +48: 0+c +0 TLS +GLOBAL DEFAULT +11 sg4 - +49: 0+10 +0 TLS +GLOBAL DEFAULT +11 sg5 - +50: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND __tls_get_addr - +51: 0+ +0 TLS +GLOBAL DEFAULT +11 sg1 - +52: 0+1000 +272 FUNC +GLOBAL DEFAULT +7 fn1 - +53: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start - +54: 0+4 +0 TLS +GLOBAL DEFAULT +11 sg2 - +55: 0+14 +0 TLS +GLOBAL DEFAULT +11 sg6 - +56: 0+18 +0 TLS +GLOBAL DEFAULT +11 sg7 - +57: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata - +58: 0+121a0 +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_ - +59: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end + +[0-9]+: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +1 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +2 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +3 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +4 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +5 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +6 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +7 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +8 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +9 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +10 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +11 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +12 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +13 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +14 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +15 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +16 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +17 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +18 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +19 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +20 * + +[0-9]+: 0+20 +0 TLS +LOCAL +DEFAULT +10 sl1 + +[0-9]+: 0+24 +0 TLS +LOCAL +DEFAULT +10 sl2 + +[0-9]+: 0+28 +0 TLS +LOCAL +DEFAULT +10 sl3 + +[0-9]+: 0+2c +0 TLS +LOCAL +DEFAULT +10 sl4 + +[0-9]+: 0+30 +0 TLS +LOCAL +DEFAULT +10 sl5 + +[0-9]+: 0+34 +0 TLS +LOCAL +DEFAULT +10 sl6 + +[0-9]+: 0+38 +0 TLS +LOCAL +DEFAULT +10 sl7 + +[0-9]+: 0+3c +0 TLS +LOCAL +DEFAULT +10 sl8 + +[0-9]+: 0+60 +0 TLS +LOCAL +HIDDEN +11 sH1 + +[0-9]+: 0+48 +0 TLS +LOCAL +HIDDEN +10 sh3 + +[0-9]+: 0+64 +0 TLS +LOCAL +HIDDEN +11 sH2 + +[0-9]+: 0+78 +0 TLS +LOCAL +HIDDEN +11 sH7 + +[0-9]+: 0+58 +0 TLS +LOCAL +HIDDEN +10 sh7 + +[0-9]+: 0+5c +0 TLS +LOCAL +HIDDEN +10 sh8 + +[0-9]+: 0+6c +0 TLS +LOCAL +HIDDEN +11 sH4 + +[0-9]+: 0+4c +0 TLS +LOCAL +HIDDEN +10 sh4 + +[0-9]+: 0+68 +0 TLS +LOCAL +HIDDEN +11 sH3 + +[0-9]+: 0+50 +0 TLS +LOCAL +HIDDEN +10 sh5 + +[0-9]+: 0+70 +0 TLS +LOCAL +HIDDEN +11 sH5 + +[0-9]+: 0+74 +0 TLS +LOCAL +HIDDEN +11 sH6 + +[0-9]+: 0+7c +0 TLS +LOCAL +HIDDEN +11 sH8 + +[0-9]+: 0+40 +0 TLS +LOCAL +HIDDEN +10 sh1 + +[0-9]+: 0+44 +0 TLS +LOCAL +HIDDEN +10 sh2 + +[0-9]+: 0+54 +0 TLS +LOCAL +HIDDEN +10 sh6 + +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +10 sg8 + +[0-9]+: 0+111a0 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC + +[0-9]+: 0+8 +0 TLS +GLOBAL DEFAULT +10 sg3 + +[0-9]+: 0+c +0 TLS +GLOBAL DEFAULT +10 sg4 + +[0-9]+: 0+10 +0 TLS +GLOBAL DEFAULT +10 sg5 + +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND __tls_get_addr + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +10 sg1 + +[0-9]+: 0+1000 +272 FUNC +GLOBAL DEFAULT +7 fn1 + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start + +[0-9]+: 0+4 +0 TLS +GLOBAL DEFAULT +10 sg2 + +[0-9]+: 0+14 +0 TLS +GLOBAL DEFAULT +10 sg6 + +[0-9]+: 0+18 +0 TLS +GLOBAL DEFAULT +10 sg7 + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata + +[0-9]+: 0+12000 +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_ + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-ia64/tlspic.sd binutils-2.15.91.0.1/ld/testsuite/ld-ia64/tlspic.sd --- binutils-2.15.90.0.3/ld/testsuite/ld-ia64/tlspic.sd 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-ia64/tlspic.sd 2004-05-27 11:26:05.464064241 -0700 @@ -8,8 +8,8 @@ .*: +file format elf..-ia64-.* Contents of section .got: - 121a0 0+ 0+ 0+ 0+ .* - 121b0 0+ 0+ [0-9a-f]+ [0-9a-f]+ .* - 121c0 [0-9a-f]+ [0-9a-f]+ [0-9a-f]+ [0-9a-f]+ .* - 121d0 [0-9a-f]+ [0-9a-f]+ [0-9a-f]+ [0-9a-f]+ .* - 121e0 440+ 0+ [0-9a-f]+ [0-9a-f]+ .* + 12000 0+ 0+ 0+ 0+ .* + 12010 0+ 0+ [0-9a-f]+ [0-9a-f]+ .* + 12020 [0-9a-f]+ [0-9a-f]+ [0-9a-f]+ [0-9a-f]+ .* + 12030 [0-9a-f]+ [0-9a-f]+ [0-9a-f]+ [0-9a-f]+ .* + 12040 440+ 0+ [0-9a-f]+ [0-9a-f]+ .* diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-ia64/tlspic.td binutils-2.15.91.0.1/ld/testsuite/ld-ia64/tlspic.td --- binutils-2.15.90.0.3/ld/testsuite/ld-ia64/tlspic.td 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-ia64/tlspic.td 2004-05-27 11:26:05.484061655 -0700 @@ -8,9 +8,9 @@ .*: +file format elf..-ia64-.* Contents of section .tdata: - 12000 11000000 12000000 13000000 14000000 .* - 12010 15000000 16000000 17000000 18000000 .* - 12020 41000000 42000000 43000000 44000000 .* - 12030 45000000 46000000 47000000 48000000 .* - 12040 01010000 02010000 03010000 04010000 .* - 12050 05010000 06010000 07010000 08010000 .* + 11140 11000000 12000000 13000000 14000000 .* + 11150 15000000 16000000 17000000 18000000 .* + 11160 41000000 42000000 43000000 44000000 .* + 11170 45000000 46000000 47000000 48000000 .* + 11180 01010000 02010000 03010000 04010000 .* + 11190 05010000 06010000 07010000 08010000 .* diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic1-ln.d binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic1-ln.d --- binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic1-ln.d 2002-02-03 11:22:33.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic1-ln.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,27 +0,0 @@ -#name: MIPS 32-bit ELF embedded-pic relocs #1-ln (large negative) -#as: -membedded-pic -mips3 -#source: empic1-tgt.s -#source: empic1-space.s -#source: empic1-space.s -#source: empic1-ref.s -#objdump: --prefix-addresses -tdr --show-raw-insn -mmips:4000 -#ld: -Ttext 0x400000 -e 0x400000 - -.*: file format elf.*mips.* - -SYMBOL TABLE: -#... -0+410020 g F .text [0-9a-f]+ foo -#... -0+400000 g F .text [0-9a-f]+ bar -#... - -Disassembly of section \.text: - ... - ... - ... -0+410020 <[^>]*> 00000000 nop -0+410024 <[^>]*> 3c02ffff lui v0,0xffff -0+410028 <[^>]*> 6442ffe0 daddiu v0,v0,-32 - ... -#pass diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic1-lp.d binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic1-lp.d --- binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic1-lp.d 2002-02-03 11:22:33.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic1-lp.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,26 +0,0 @@ -#name: MIPS 32-bit ELF embedded-pic relocs #1-lp (large positive) -#as: -membedded-pic -mips3 -#source: empic1-ref.s -#source: empic1-space.s -#source: empic1-space.s -#source: empic1-tgt.s -#objdump: --prefix-addresses -tdr --show-raw-insn -mmips:4000 -#ld: -Ttext 0x400000 -e 0x400000 - -.*: file format elf.*mips.* - -SYMBOL TABLE: -#... -0+400000 g F .text [0-9a-f]+ foo -#... -0+410020 g F .text [0-9a-f]+ bar -#... - -Disassembly of section \.text: -0+400000 <[^>]*> 00000000 nop -0+400004 <[^>]*> 3c020001 lui v0,0x1 -0+400008 <[^>]*> 64420020 daddiu v0,v0,32 - ... - ... - ... -#pass diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic1-mn.d binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic1-mn.d --- binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic1-mn.d 2002-02-03 11:22:33.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic1-mn.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,25 +0,0 @@ -#name: MIPS 32-bit ELF embedded-pic relocs #1-mn (medium negative) -#as: -membedded-pic -mips3 -#source: empic1-tgt.s -#source: empic1-space.s -#source: empic1-ref.s -#objdump: --prefix-addresses -tdr --show-raw-insn -mmips:4000 -#ld: -Ttext 0x400000 -e 0x400000 - -.*: file format elf.*mips.* - -SYMBOL TABLE: -#... -0+408020 g F .text [0-9a-f]+ foo -#... -0+400000 g F .text [0-9a-f]+ bar -#... - -Disassembly of section \.text: - ... - ... -0+408020 <[^>]*> 00000000 nop -0+408024 <[^>]*> 3c02ffff lui v0,0xffff -0+408028 <[^>]*> 64427fe0 daddiu v0,v0,32736 - ... -#pass diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic1-mp.d binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic1-mp.d --- binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic1-mp.d 2002-02-03 11:22:33.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic1-mp.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,25 +0,0 @@ -#name: MIPS 32-bit ELF embedded-pic relocs #1-mp (medium positive) -#as: -membedded-pic -mips3 -#source: empic1-ref.s -#source: empic1-space.s -#source: empic1-tgt.s -#objdump: --prefix-addresses -tdr --show-raw-insn -mmips:4000 -#ld: -Ttext 0x400000 -e 0x400000 - -.*: file format elf.*mips.* - -SYMBOL TABLE: -#... -0+400000 g F .text [0-9a-f]+ foo -#... -0+408020 g F .text [0-9a-f]+ bar -#... - -Disassembly of section \.text: -0+400000 <[^>]*> 00000000 nop -0+400004 <[^>]*> 3c020001 lui v0,0x1 -0+400008 <[^>]*> 64428020 daddiu v0,v0,-32736 - ... - ... - ... -#pass diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic1-ref.s binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic1-ref.s --- binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic1-ref.s 2002-02-03 11:22:33.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic1-ref.s 1969-12-31 16:00:00.000000000 -0800 @@ -1,9 +0,0 @@ - - .globl foo - .ent foo -foo: - nop - la $2, bar - foo - .end foo - - .p2align 5 diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic1-sn.d binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic1-sn.d --- binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic1-sn.d 2002-02-03 11:22:33.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic1-sn.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,23 +0,0 @@ -#name: MIPS 32-bit ELF embedded-pic relocs #1-sn (small negative) -#as: -membedded-pic -mips3 -#source: empic1-tgt.s -#source: empic1-ref.s -#objdump: --prefix-addresses -tdr --show-raw-insn -mmips:4000 -#ld: -Ttext 0x400000 -e 0x400000 - -.*: file format elf.*mips.* - -SYMBOL TABLE: -#... -0+400020 g F .text [0-9a-f]+ foo -#... -0+400000 g F .text [0-9a-f]+ bar -#... - -Disassembly of section \.text: - ... -0+400020 <[^>]*> 00000000 nop -0+400024 <[^>]*> 3c020000 lui v0,0x0 -0+400028 <[^>]*> 6442ffe0 daddiu v0,v0,-32 - ... -#pass diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic1-sp.d binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic1-sp.d --- binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic1-sp.d 2002-02-03 11:22:33.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic1-sp.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,23 +0,0 @@ -#name: MIPS 32-bit ELF embedded-pic relocs #1-sp (small positive) -#as: -membedded-pic -mips3 -#source: empic1-ref.s -#source: empic1-tgt.s -#objdump: --prefix-addresses -tdr --show-raw-insn -mmips:4000 -#ld: -Ttext 0x400000 -e 0x400000 - -.*: file format elf.*mips.* - -SYMBOL TABLE: -#... -0+400000 g F .text [0-9a-f]+ foo -#... -0+400020 g F .text [0-9a-f]+ bar -#... - -Disassembly of section \.text: -0+400000 <[^>]*> 00000000 nop -0+400004 <[^>]*> 3c020000 lui v0,0x0 -0+400008 <[^>]*> 64420020 daddiu v0,v0,32 - ... - ... -#pass diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic1-space.s binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic1-space.s --- binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic1-space.s 2002-02-03 11:22:33.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic1-space.s 1969-12-31 16:00:00.000000000 -0800 @@ -1,5 +0,0 @@ - - .ent space -space: - .space (32 * 1024) - .end space diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic1-tgt.s binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic1-tgt.s --- binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic1-tgt.s 2002-02-03 11:22:33.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic1-tgt.s 1969-12-31 16:00:00.000000000 -0800 @@ -1,8 +0,0 @@ - - .globl bar - .ent bar -bar: - nop - .end bar - - .p2align 5 diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic2-fwd-0.d binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic2-fwd-0.d --- binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic2-fwd-0.d 2002-02-03 11:22:33.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic2-fwd-0.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,20 +0,0 @@ -#name: MIPS 32-bit ELF embedded-pic relocs #2-fwd-0 (0x7ffc forward edge case) -#as: -membedded-pic -mips3 -#source: empic2-ref.s -#source: empic2-fwd-tgt.s -#objdump: --prefix-addresses -tdr --show-raw-insn -mmips:4000 -#ld: -Ttext 0x400000 -e 0x400000 - -.*: file format elf.*mips.* - -#... -0+400000 g F .text [0-9a-f]+ foo -#... -0+407ffc g F .text [0-9a-f]+ bar -#... - -Disassembly of section \.text: -0+400000 <[^>]*> 3c020000 lui v0,0x0 -0+400004 <[^>]*> 64427ffc daddiu v0,v0,32764 - ... -#pass diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic2-fwd-1.d binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic2-fwd-1.d --- binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic2-fwd-1.d 2002-02-03 11:22:33.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic2-fwd-1.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,21 +0,0 @@ -#name: MIPS 32-bit ELF embedded-pic relocs #2-fwd-1 (0xfffc forward edge case) -#as: -membedded-pic -mips3 -#source: empic2-ref.s -#source: empic2-space.s -#source: empic2-fwd-tgt.s -#objdump: --prefix-addresses -tdr --show-raw-insn -mmips:4000 -#ld: -Ttext 0x400000 -e 0x400000 - -.*: file format elf.*mips.* - -#... -0+400000 g F .text [0-9a-f]+ foo -#... -0+40fffc g F .text [0-9a-f]+ bar -#... - -Disassembly of section \.text: -0+400000 <[^>]*> 3c020001 lui v0,0x1 -0+400004 <[^>]*> 6442fffc daddiu v0,v0,-4 - ... -#pass diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic2-fwd-tgt.s binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic2-fwd-tgt.s --- binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic2-fwd-tgt.s 2002-02-03 11:22:33.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic2-fwd-tgt.s 1969-12-31 16:00:00.000000000 -0800 @@ -1,7 +0,0 @@ - - .space (32768 - 16 - 4) # 16..32764 - - .globl bar - .ent bar -bar: - .end bar diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic2-ref.s binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic2-ref.s --- binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic2-ref.s 2002-06-18 21:41:59.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic2-ref.s 1969-12-31 16:00:00.000000000 -0800 @@ -1,7 +0,0 @@ - .globl foo - .ent foo -foo: - la $2,bar-foo - .end foo - - .p2align 4 diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic2-rev-0.d binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic2-rev-0.d --- binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic2-rev-0.d 2002-02-03 11:22:33.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic2-rev-0.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,22 +0,0 @@ -#name: MIPS 32-bit ELF embedded-pic relocs #2-rev-0 (0x0004 backward edge case) -#as: -membedded-pic -mips3 -#source: empic2-rev-tgt.s -#source: empic2-ref.s -#objdump: --prefix-addresses -tdr --show-raw-insn -mmips:4000 -#ld: -Ttext 0x400000 -e 0x400000 - -.*: file format elf.*mips.* - -#... -0+408000 g F .text [0-9a-f]+ foo -#... -0+407ffc g F .text [0-9a-f]+ bar -#... - -Disassembly of section \.text: - ... -0+407ffc <[^>]*> 00000000 nop -0+408000 <[^>]*> 3c020000 lui v0,0x0 -0+408004 <[^>]*> 6442fffc daddiu v0,v0,-4 - ... -#pass diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic2-rev-1.d binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic2-rev-1.d --- binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic2-rev-1.d 2002-02-03 11:22:33.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic2-rev-1.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,24 +0,0 @@ -#name: MIPS 32-bit ELF embedded-pic relocs #2-rev-1 (0x8004 backward edge case) -#as: -membedded-pic -mips3 -#source: empic2-rev-tgt.s -#source: empic2-space.s -#source: empic2-ref.s -#objdump: --prefix-addresses -tdr --show-raw-insn -mmips:4000 -#ld: -Ttext 0x400000 -e 0x400000 - -.*: file format elf.*mips.* - -#... -0+410000 g F .text [0-9a-f]+ foo -#... -0+407ffc g F .text [0-9a-f]+ bar -#... - -Disassembly of section \.text: - ... -0+407ffc <[^>]*> 00000000 nop - ... -0+410000 <[^>]*> 3c02ffff lui v0,0xffff -0+410004 <[^>]*> 64427ffc daddiu v0,v0,32764 - ... -#pass diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic2-rev-tgt.s binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic2-rev-tgt.s --- binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic2-rev-tgt.s 2002-02-03 11:22:33.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic2-rev-tgt.s 1969-12-31 16:00:00.000000000 -0800 @@ -1,8 +0,0 @@ - - .space (32768 - 4) - - .globl bar - .ent bar -bar: - .space 4 - .end bar diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic2-space.s binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic2-space.s --- binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/empic2-space.s 2002-02-03 11:22:33.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/empic2-space.s 1969-12-31 16:00:00.000000000 -0800 @@ -1,5 +0,0 @@ - - .ent space -space: - .space (32 * 1024) - .end space diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/emrelocs-eb.d binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/emrelocs-eb.d --- binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/emrelocs-eb.d 2002-02-03 11:22:33.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/emrelocs-eb.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,25 +0,0 @@ -#name: MIPS 32-bit ELF embedded relocs (big endian) -#source: emrelocs1.s -EB -#source: emrelocs2.s -EB -#ld: -EB --embedded-relocs -T $srcdir/$subdir/emrelocs.ld -#objdump: -s - -.*: file format elf.*mips.* - -Contents of section \.text: - 100000 00000000 00000001 00000000 00000000 .* - 100010 00000000 00000000 00000003 00000000 .* -Contents of section \.data: - 200000 00000000 00000002 00000000 00000000 .* - 200010 00000000 00000000 00000004 00000000 .* - 200020 00100004 00200004 00100018 00200018 .* - 200030 00000000 00100004 00000000 00200004 .* - 200040 00000000 00100018 00000000 00200018 .* -Contents of section \.rel\.sdata: - 300000 00000020 2e746578 74000000 00000024 .* - 300010 2e646174 61000000 00000028 2e746578 .* - 300020 74000000 0000002c 2e646174 61000000 .* - 300030 00000031 2e746578 74000000 00000039 .* - 300040 2e646174 61000000 00000041 2e746578 .* - 300050 74000000 00000049 2e646174 61000000 .* -#pass diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/emrelocs-el.d binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/emrelocs-el.d --- binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/emrelocs-el.d 2002-02-03 11:22:33.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/emrelocs-el.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,25 +0,0 @@ -#name: MIPS 32-bit ELF embedded relocs (little endian) -#source: emrelocs1.s -EL -#source: emrelocs2.s -EL -#ld: -EL --embedded-relocs -T $srcdir/$subdir/emrelocs.ld -#objdump: -s - -.*: file format elf.*mips.* - -Contents of section \.text: - 100000 00000000 01000000 00000000 00000000 .* - 100010 00000000 00000000 03000000 00000000 .* -Contents of section \.data: - 200000 00000000 02000000 00000000 00000000 .* - 200010 00000000 00000000 04000000 00000000 .* - 200020 04001000 04002000 18001000 18002000 .* - 200030 04001000 00000000 04002000 00000000 .* - 200040 18001000 00000000 18002000 00000000 .* -Contents of section \.rel\.sdata: - 300000 20000000 2e746578 74000000 24000000 .* - 300010 2e646174 61000000 28000000 2e746578 .* - 300020 74000000 2c000000 2e646174 61000000 .* - 300030 31000000 2e746578 74000000 39000000 .* - 300040 2e646174 61000000 41000000 2e746578 .* - 300050 74000000 49000000 2e646174 61000000 .* -#pass diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/emrelocs.ld binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/emrelocs.ld --- binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/emrelocs.ld 2002-02-03 11:22:33.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/emrelocs.ld 1969-12-31 16:00:00.000000000 -0800 @@ -1,16 +0,0 @@ -ENTRY(ext_fun) -SECTIONS -{ - .text 0x00100000: - { - *(.text) - } - .data 0x00200000: - { - *(.sdata) - } - .rel.sdata 0x00300000: - { - *(.rel.sdata) - } -} diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/emrelocs1.s binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/emrelocs1.s --- binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/emrelocs1.s 2002-02-03 11:22:33.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/emrelocs1.s 1969-12-31 16:00:00.000000000 -0800 @@ -1,23 +0,0 @@ -# emrelocs1.s: some external symbols to be used in relocations. - - .text - .p2align 4 - - # Pad things so addresses which are used for relocations - # are non-zero. Zero simply isn't as much fun. - .word 0 - - .globl ext_fun - .ent ext_fun -ext_fun: .word 1 - .end ext_fun - - - .sdata - .p2align 4 - - # Padding here, for same reason. - .word 0 - - .globl ext_var -ext_var: .word 2 diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/emrelocs2.s binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/emrelocs2.s --- binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/emrelocs2.s 2002-02-03 11:22:33.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/emrelocs2.s 1969-12-31 16:00:00.000000000 -0800 @@ -1,30 +0,0 @@ -# emrelocs2.s: local symbols and data which causes relocations. - - .text - .p2align 4 - - .word 0, 0 - - .ent lcl_fun -lcl_fun: .word 3 - .end lcl_fun - - - .sdata - .p2align 4 - - .word 0, 0 - -lcl_var: .word 4 - - .p2align 4 - - .word ext_fun - .word ext_var - .word lcl_fun - .word lcl_var - - .dword ext_fun - .dword ext_var - .dword lcl_fun - .dword lcl_var diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/mips-elf.exp binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/mips-elf.exp --- binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/mips-elf.exp 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/mips-elf.exp 2004-05-27 11:26:05.886009677 -0700 @@ -58,25 +58,6 @@ if { $linux_gnu } { } if { $embedded_elf } { - # Check basic Embedded-PIC PC-relative HI/LO relocs. - run_dump_test "empic1-ln" - run_dump_test "empic1-lp" - run_dump_test "empic1-mn" - run_dump_test "empic1-mp" - run_dump_test "empic1-sn" - run_dump_test "empic1-sp" - - # Embedded-PIC PC-relative HI/LO reloc edge-case regression tests. - # As of 2001-12-26, the linker botches the fwd-0 and rev-1 tests. - run_dump_test "empic2-fwd-0" - run_dump_test "empic2-fwd-1" - run_dump_test "empic2-rev-0" - run_dump_test "empic2-rev-1" - - # Check generation of embedded relocs section. - run_dump_test "emrelocs-eb" - run_dump_test "emrelocs-el" - run_dump_test "region1" } @@ -93,7 +74,3 @@ if $has_newabi { } } run_dump_test "reloc-2" -if $embedded_elf { - run_dump_test "reloc-3-r" - run_dump_test "reloc-3-srec" -} diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/reloc-3-r.d binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/reloc-3-r.d --- binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/reloc-3-r.d 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/reloc-3-r.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,83 +0,0 @@ -#source: reloc-3a.s -mabi=32 -membedded-pic -#source: reloc-3b.s -mabi=32 -membedded-pic -#ld: -r -#objdump: -dr - -.*: file format .* - -Disassembly of section \.text: - -.* <.*>: -# -# Relocations against lda -# -.*: 3c04ffff lui a0,0xffff - .*: R_MIPS_GNU_REL_HI16 \.text2 -.*: 24847ffc addiu a0,a0,32764 - .*: R_MIPS_GNU_REL_LO16 \.text2 -.*: 3c040000 lui a0,0x0 - .*: R_MIPS_GNU_REL_HI16 \.text2 -.*: 24848014 addiu a0,a0,-32748 - .*: R_MIPS_GNU_REL_LO16 \.text2 -.*: 3c040000 lui a0,0x0 - .*: R_MIPS_GNU_REL_HI16 \.text2 -.*: 2484001c addiu a0,a0,28 - .*: R_MIPS_GNU_REL_LO16 \.text2 -.*: 3c040001 lui a0,0x1 - .*: R_MIPS_GNU_REL_HI16 \.text2 -.*: 24848014 addiu a0,a0,-32748 - .*: R_MIPS_GNU_REL_LO16 \.text2 -.*: 3c040001 lui a0,0x1 - .*: R_MIPS_GNU_REL_HI16 \.text2 -.*: 2484803c addiu a0,a0,-32708 - .*: R_MIPS_GNU_REL_LO16 \.text2 - \.\.\. - -.* <.*>: -# -# Relocations against gd -# -.*: 3c04ffff lui a0,0xffff - .*: R_MIPS_GNU_REL_HI16 gd -.*: 24847ff4 addiu a0,a0,32756 - .*: R_MIPS_GNU_REL_LO16 gd -.*: 3c040000 lui a0,0x0 - .*: R_MIPS_GNU_REL_HI16 gd -.*: 2484800c addiu a0,a0,-32756 - .*: R_MIPS_GNU_REL_LO16 gd -.*: 3c040000 lui a0,0x0 - .*: R_MIPS_GNU_REL_HI16 gd -.*: 24840014 addiu a0,a0,20 - .*: R_MIPS_GNU_REL_LO16 gd -.*: 3c040001 lui a0,0x1 - .*: R_MIPS_GNU_REL_HI16 gd -.*: 2484800c addiu a0,a0,-32756 - .*: R_MIPS_GNU_REL_LO16 gd -.*: 3c040001 lui a0,0x1 - .*: R_MIPS_GNU_REL_HI16 gd -.*: 24848034 addiu a0,a0,-32716 - .*: R_MIPS_GNU_REL_LO16 gd -# -# Relocations against ldb -# -.*: 3c040000 lui a0,0x0 - .*: R_MIPS_GNU_REL_HI16 \.text2 -.*: 2484802c addiu a0,a0,-32724 - .*: R_MIPS_GNU_REL_LO16 \.text2 -.*: 3c040000 lui a0,0x0 - .*: R_MIPS_GNU_REL_HI16 \.text2 -.*: 24848044 addiu a0,a0,-32700 - .*: R_MIPS_GNU_REL_LO16 \.text2 -.*: 3c040000 lui a0,0x0 - .*: R_MIPS_GNU_REL_HI16 \.text2 -.*: 2484004c addiu a0,a0,76 - .*: R_MIPS_GNU_REL_LO16 \.text2 -.*: 3c040001 lui a0,0x1 - .*: R_MIPS_GNU_REL_HI16 \.text2 -.*: 24848044 addiu a0,a0,-32700 - .*: R_MIPS_GNU_REL_LO16 \.text2 -.*: 3c040001 lui a0,0x1 - .*: R_MIPS_GNU_REL_HI16 \.text2 -.*: 2484806c addiu a0,a0,-32660 - .*: R_MIPS_GNU_REL_LO16 \.text2 - \.\.\. diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/reloc-3-srec.d binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/reloc-3-srec.d --- binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/reloc-3-srec.d 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/reloc-3-srec.d 1969-12-31 16:00:00.000000000 -0800 @@ -1,54 +0,0 @@ -#source: reloc-3a.s -mabi=32 -membedded-pic -EB -#source: reloc-3b.s -mabi=32 -membedded-pic -EB -#ld: --oformat=srec -Treloc-3.ld -#objdump: -D -mmips:4000 --endian=big - -.*: file format .* - -Disassembly of section .*: - -.* <.*>: -# .text2 - tstarta = 0x108000 -# .text2 - tstartb = 0x098010 -# -# Relocations against lda -# -.*: 3c040010 lui a0,0x10 -.*: 2484fff8 addiu a0,a0,-8 -.*: 3c040010 lui a0,0x10 -.*: 24840008 addiu a0,a0,8 -.*: 3c040011 lui a0,0x11 -.*: 24848008 addiu a0,a0,-32760 -.*: 3c040011 lui a0,0x11 -.*: 2484fff8 addiu a0,a0,-8 -.*: 3c040011 lui a0,0x11 -.*: 24840018 addiu a0,a0,24 - \.\.\. -# -# Relocations against gd -# -.*: 3c04000f lui a0,0xf -.*: 24840004 addiu a0,a0,4 -.*: 3c04000f lui a0,0xf -.*: 24840014 addiu a0,a0,20 -.*: 3c040010 lui a0,0x10 -.*: 24848014 addiu a0,a0,-32748 -.*: 3c040010 lui a0,0x10 -.*: 24840004 addiu a0,a0,4 -.*: 3c040010 lui a0,0x10 -.*: 24840024 addiu a0,a0,36 -# -# Relocations against ldb -# -.*: 3c04000f lui a0,0xf -.*: 24840010 addiu a0,a0,16 -.*: 3c04000f lui a0,0xf -.*: 24840020 addiu a0,a0,32 -.*: 3c040010 lui a0,0x10 -.*: 24848020 addiu a0,a0,-32736 -.*: 3c040010 lui a0,0x10 -.*: 24840010 addiu a0,a0,16 -.*: 3c040010 lui a0,0x10 -.*: 24840030 addiu a0,a0,48 - \.\.\. -#pass diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/reloc-3.ld binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/reloc-3.ld --- binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/reloc-3.ld 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/reloc-3.ld 1969-12-31 16:00:00.000000000 -0800 @@ -1,8 +0,0 @@ -SECTIONS -{ - . = 0x208000; - .text : { *(.text) } - . = 0x310000; - .text2 : { *(.text2) } - /DISCARD/ : { *(*) } -} diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/reloc-3a.s binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/reloc-3a.s --- binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/reloc-3a.s 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/reloc-3a.s 1969-12-31 16:00:00.000000000 -0800 @@ -1,38 +0,0 @@ - .globl _start - .globl gd - .ent tstarta -tstarta: -_start: - la $4,lda-tstarta-0x8010 - # (.text2+8-0x8010) - tstarta [+ (tstarta+0x4)] - # relocation: .text2 - 0x8004 - # final value: .text2 - tstarta - 0x8008 - - la $4,lda-tstarta-0x8000 - # (.text2+8-0x8000) - tstarta [+ (tstarta+0xc)] - # relocation: .text2 - 0x7fec - # final value: .text2 - tstarta - 0x7ff8 - - la $4,lda-tstarta - # (.text2+8) - tstarta [+ (tstarta+0x14)] - # relocation: .text2 + 0x1c - # final value: .text2 - tstarta + 0x8 - - la $4,lda-tstarta+0x7ff0 - # (.text2+8+0x7ff0) - tstarta [+ (tstarta+0x1c)] - # relocation: .text2 + 0x8014 - # final value: .text2 - tstarta + 0x7ff8 - - la $4,lda-tstarta+0x8010 # (.text2+8)-(tstarta+0x8010)+0x24 - # (.text2+8+0x8010) - tstarta [+ (tstarta+0x24)] - # relocation: .text2 + 0x803c - # final value: .text2 - tstarta + 0x8018 - - .end tstarta - - .org 0xfff0 - .section .text2 - .word 1 -gd: .word 2 -lda: .word 3 - .word 4 diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/reloc-3b.s binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/reloc-3b.s --- binutils-2.15.90.0.3/ld/testsuite/ld-mips-elf/reloc-3b.s 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mips-elf/reloc-3b.s 1969-12-31 16:00:00.000000000 -0800 @@ -1,58 +0,0 @@ - .globl _start - .globl gd - .ent tstartb -tstartb: - la $4,gd-tstartb-0x8010 - # (gd-0x8010) - tstartb [+ (tstartb+0x4)] - # relocation: gd - 0x800c - # final value: gd - tstartb - 0x8010 - - la $4,gd-tstartb-0x8000 - # (gd-0x8000) - tstartb [+ (tstartb+0xc)] - # relocation: gd - 0x7ff4 - # final value: gd - tstartb - 0x8000 - - la $4,gd-tstartb - # (gd) - tstartb [+ (tstartb+0x14)] - # relocation: gd + 0x14 - # final value: gd - tstartb - - la $4,gd-tstartb+0x7ff0 - # (gd+0x7ff0) - tstartb [+ (tstartb+0x1c)] - # relocation: gd + 0x800c - # final value: gd - tstartb + 0x7ff0 - - la $4,gd-tstartb+0x8010 - # (gd+0x8010) - tstartb [+ (tstartb+0x24)] - # relocation: gd + 0x8034 - # final value: gd - tstartb + 0x8010 - - la $4,ldb-tstartb-0x8010 - # (.text2+0x10-0x8010) - tstartb [+ (tstartb+0x2c)] - # relocation: .text2 - 0x7fd4 - # final value: .text2 - tstartb - 0x8000 - - la $4,ldb-tstartb-0x8000 - # (.text2+0x10-0x8000) - tstartb [+ (tstartb+0x34)] - # relocation: .text2 - 0x7fbc - # final value: .text2 - tstartb - 0x7ff0 - - la $4,ldb-tstartb - # (.text2+0x10) - tstartb [+ (tstartb+0x3c)] - # relocation: .text2 + 0x4c - # final value: .text2 - tstartb + 0x10 - - la $4,ldb-tstartb+0x7ff0 - # (.text2+0x10+0x7ff0) - tstartb [+ (tstartb+0x44)] - # relocation: .text2 + 0x8044 - # final value: .text2 - tstartb + 0x8000 - - la $4,ldb-tstartb+0x8010 - # (.text2+0x10+0x8010) - tstartb [+ (tstartb+0x4c)] - # relocation: .text2 + 0x806c - # final value: .text2 - tstartb + 0x8020 - - .end tstartb - .space 16 - .section .text2 -ldb: .word 5 diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mmix/bspec2.d binutils-2.15.91.0.1/ld/testsuite/ld-mmix/bspec2.d --- binutils-2.15.90.0.3/ld/testsuite/ld-mmix/bspec2.d 2002-03-22 14:06:16.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mmix/bspec2.d 2004-05-27 11:26:06.062986791 -0700 @@ -28,7 +28,7 @@ Section Headers: \[ 7\] \.shstrtab STRTAB 0+ 0+c0 0+56 0+ 0 0 1 \[ 8\] \.symtab SYMTAB 0+ 0+398 - 0+198 0+18 9 a 8 + 0+198 0+18 9 10 8 \[ 9\] \.strtab STRTAB 0+ 0+530 0+32 0+ 0 0 1 Key to Flags: diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mmix/local1.d binutils-2.15.91.0.1/ld/testsuite/ld-mmix/local1.d --- binutils-2.15.90.0.3/ld/testsuite/ld-mmix/local1.d 2002-11-14 09:37:56.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mmix/local1.d 2004-05-27 11:26:06.107980973 -0700 @@ -30,7 +30,7 @@ Section Headers: \[ 6\] \.shstrtab STRTAB 0+ 0+c8 0+45 0+ 0 0 1 \[ 7\] \.symtab SYMTAB 0+ 0+350 - 0+198 0+18 8 b 8 + 0+198 0+18 8 11 8 \[ 8\] \.strtab STRTAB 0+ 0+4e8 0+32 0+ 0 0 1 Key to Flags: diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mmix/local3.d binutils-2.15.91.0.1/ld/testsuite/ld-mmix/local3.d --- binutils-2.15.90.0.3/ld/testsuite/ld-mmix/local3.d 2002-11-14 09:37:56.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mmix/local3.d 2004-05-27 11:26:06.110980585 -0700 @@ -28,7 +28,7 @@ Section Headers: \[ 6\] \.shstrtab STRTAB 0+ 0+c8 0+45 0+ 0 0 1 \[ 7\] \.symtab SYMTAB 0+ 0+350 - 0+198 0+18 8 b 8 + 0+198 0+18 8 11 8 \[ 8\] \.strtab STRTAB 0+ 0+4e8 0+32 0+ 0 0 1 Key to Flags: diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mmix/local5.d binutils-2.15.91.0.1/ld/testsuite/ld-mmix/local5.d --- binutils-2.15.90.0.3/ld/testsuite/ld-mmix/local5.d 2002-11-14 09:37:56.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mmix/local5.d 2004-05-27 11:26:06.112980326 -0700 @@ -29,7 +29,7 @@ Section Headers: \[ 6\] \.shstrtab STRTAB 0+ 0+cc 0+45 0+ 0 0 1 \[ 7\] \.symtab SYMTAB 0+ 0+358 - 0+198 0+18 8 b 8 + 0+198 0+18 8 11 8 \[ 8\] \.strtab STRTAB 0+ 0+4f0 0+32 0+ 0 0 1 Key to Flags: diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-mmix/local7.d binutils-2.15.91.0.1/ld/testsuite/ld-mmix/local7.d --- binutils-2.15.90.0.3/ld/testsuite/ld-mmix/local7.d 2002-11-14 09:37:56.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-mmix/local7.d 2004-05-27 11:26:06.115979939 -0700 @@ -30,7 +30,7 @@ Section Headers: \[ 6\] \.shstrtab STRTAB 0+ 0+cc 0+45 0+ 0 0 1 \[ 7\] \.symtab SYMTAB 0+ 0+358 - 0+198 0+18 8 b 8 + 0+198 0+18 8 11 8 \[ 8\] \.strtab STRTAB 0+ 0+4f0 0+32 0+ 0 0 1 Key to Flags: diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-pe/pe.exp binutils-2.15.91.0.1/ld/testsuite/ld-pe/pe.exp --- binutils-2.15.90.0.3/ld/testsuite/ld-pe/pe.exp 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-pe/pe.exp 2004-05-27 11:26:06.116979809 -0700 @@ -0,0 +1,31 @@ +# Expect script for export table in executables tests +# Copyright 2004 +# Free Software Foundation, Inc. +# +# This file 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 of the License, or +# (at your option) any later version. +# +# This program 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 this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# + +# This test can only be run on i386 PE/COFF platforms. +if { ![istarget i*86-*-cygwin*] && ![istarget i*86-*-pe] + && ![istarget i*86-*-mingw*] } { + return +} + +set pe_tests { + {".secrel32" "" "" {secrel1.s secrel2.s} + {{objdump -s secrel.d}} "secrel.x"} +} + +run_ld_link_tests $pe_tests diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-pe/secrel.d binutils-2.15.91.0.1/ld/testsuite/ld-pe/secrel.d --- binutils-2.15.90.0.3/ld/testsuite/ld-pe/secrel.d 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-pe/secrel.d 2004-05-27 11:26:06.116979809 -0700 @@ -0,0 +1,27 @@ + +tmpdir/secrel\.x: file format pei-i386 + +Contents of section \.text: + 401000 3e3e3e3e 3c3c3c3c 3e3e3e3e 3e3c3c3c >>>><<<<>>>>><<< + 401010 3e3e3e3e 3e3e3c3c 3e3e3e3e 3e3e3e3c >>>>>><<>>>>>>>< + 401020 3e3e3e3e 3c3c3c3c 3e3e3e3e 3e3c3c3c >>>><<<<>>>>><<< + 401030 3e3e3e3e 3e3e3c3c 3e3e3e3e 3e3e3e3c >>>>>><<>>>>>>>< + 401040 ........ ........ ........ ........ ................ +Contents of section \.data: + 402000 3e3e3e3e 3c3c3c3c 3e3e3e3e 3e3c3c3c >>>><<<<>>>>><<< + 402010 3e3e3e3e 3e3e3c3c 3e3e3e3e 3e3e3e3c >>>>>><<>>>>>>>< + 402020 3e3e3e3e 04000000 110d0000 00111600 >>>>............ + 402030 0000111f 00000011 3c3c3c3c 3c3c3c3c ........<<<<<<<< + 402040 3e3e3e3e 04000000 110d0000 00111600 >>>>............ + 402050 0000111f 00000011 3c3c3c3c 3c3c3c3c ........<<<<<<<< + 402060 3e3e3e3e 04000000 110d0000 00111600 >>>>............ + 402070 0000111f 00000011 3c3c3c3c 3c3c3c3c ........<<<<<<<< + 402080 3e3e3e3e 24000000 112d0000 00113600 >>>>\$....-....6. + 402090 0000113f 00000011 3c3c3c3c 3c3c3c3c ...\?....<<<<<<<< +Contents of section \.rdata: + 403000 3e3e3e3e 3c3c3c3c 3e3e3e3e 3e3c3c3c >>>><<<<>>>>><<< + 403010 3e3e3e3e 3e3e3c3c 3e3e3e3e 3e3e3e3c >>>>>><<>>>>>>>< + 403020 3e3e3e3e >>>> +Contents of section \.idata: + 404000 00000000 00000000 00000000 00000000 ................ + 404010 00000000 .... diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-pe/secrel1.s binutils-2.15.91.0.1/ld/testsuite/ld-pe/secrel1.s --- binutils-2.15.90.0.3/ld/testsuite/ld-pe/secrel1.s 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-pe/secrel1.s 2004-05-27 11:26:06.117979680 -0700 @@ -0,0 +1,77 @@ +.text + + .ascii ">>>>" +pre04: .ascii "<<<<" + .ascii ">>>>>" +pre0d: .ascii "<<<" + .ascii ">>>>>>" +pre16: .ascii "<<" + .ascii ">>>>>>>" +pre1f: .ascii "<" + +.data + + .ascii ">>>>" +sam04: .ascii "<<<<" + .ascii ">>>>>" +sam0d: .ascii "<<<" + .ascii ">>>>>>" +sam16: .ascii "<<" + .ascii ">>>>>>>" +sam1f: .ascii "<" + + .ascii ">>>>" + .secrel32 pre04 + .byte 0x11 + .secrel32 pre0d + .byte 0x11 + .secrel32 pre16 + .byte 0x11 + .secrel32 pre1f + .byte 0x11 + .ascii "<<<<<<<<" + + .ascii ">>>>" + .secrel32 sam04 + .byte 0x11 + .secrel32 sam0d + .byte 0x11 + .secrel32 sam16 + .byte 0x11 + .secrel32 sam1f + .byte 0x11 + .ascii "<<<<<<<<" + + .ascii ">>>>" + .secrel32 nex04 + .byte 0x11 + .secrel32 nex0d + .byte 0x11 + .secrel32 nex16 + .byte 0x11 + .secrel32 nex1f + .byte 0x11 + .ascii "<<<<<<<<" + + .ascii ">>>>" + .secrel32 ext24 + .byte 0x11 + .secrel32 ext2d + .byte 0x11 + .secrel32 ext36 + .byte 0x11 + .secrel32 ext3f + .byte 0x11 + .ascii "<<<<<<<<" + +.section .rdata + + .ascii ">>>>" +nex04: .ascii "<<<<" + .ascii ">>>>>" +nex0d: .ascii "<<<" + .ascii ">>>>>>" +nex16: .ascii "<<" + .ascii ">>>>>>>" +nex1f: .ascii "<" + .ascii ">>>>" diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-pe/secrel2.s binutils-2.15.91.0.1/ld/testsuite/ld-pe/secrel2.s --- binutils-2.15.90.0.3/ld/testsuite/ld-pe/secrel2.s 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-pe/secrel2.s 2004-05-27 11:26:06.117979680 -0700 @@ -0,0 +1,14 @@ +.text + + .ascii ">>>>" +.global ext24 +ext24: .ascii "<<<<" + .ascii ">>>>>" +.global ext2d +ext2d: .ascii "<<<" + .ascii ">>>>>>" +.global ext36 +ext36: .ascii "<<" + .ascii ">>>>>>>" +.global ext3f +ext3f: .ascii "<" diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-powerpc/tlsexe.r binutils-2.15.91.0.1/ld/testsuite/ld-powerpc/tlsexe.r --- binutils-2.15.90.0.3/ld/testsuite/ld-powerpc/tlsexe.r 2004-04-12 12:56:37.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-powerpc/tlsexe.r 2004-05-27 11:26:06.197969336 -0700 @@ -10,25 +10,25 @@ There are 20 section headers.* Section Headers: +\[Nr\] Name +Type +Address +Off +Size +ES Flg Lk Inf Al +\[ 0\] +NULL +0+ 0+ 0+ 0+ +0 +0 +0 - +\[ 1\] \.interp +PROGBITS +0+10000190 0+190 0+11 0+ +A +0 +0 +1 - +\[ 2\] \.hash +HASH +0+100001a8 0+1a8 0+3c 04 +A +3 +0 +8 - +\[ 3\] \.dynsym +DYNSYM +0+100001e8 0+1e8 0+f0 18 +A +4 +1 +8 - +\[ 4\] \.dynstr +STRTAB +0+100002d8 0+2d8 0+50 0+ +A +0 +0 +1 - +\[ 5\] \.rela\.dyn +RELA +0+10000328 0+328 0+48 18 +A +3 +0 +8 - +\[ 6\] \.rela\.plt +RELA +0+10000370 0+370 0+18 18 +A +3 +f +8 + +\[ 1\] \.interp +.* + +\[ 2\] \.hash +.* + +\[ 3\] \.dynsym +.* + +\[ 4\] \.dynstr +.* + +\[ 5\] \.rela\.dyn +.* + +\[ 6\] \.rela\.plt +.* +\[ 7\] \.text +PROGBITS +0+10000388 0+388 0+fc 0+ +AX +0 +0 +4 - +\[ 8\] \.data +PROGBITS +0+10010488 0+488 0+ 0+ +WA +0 +0 +1 - +\[ 9\] \.branch_lt +PROGBITS +0+10010488 0+488 0+ 0+ +WA +0 +0 +8 - +\[10\] \.tdata +PROGBITS +0+10010488 0+488 0+38 0+ WAT +0 +0 +8 - +\[11\] \.tbss +NOBITS +0+100104c0 0+4c0 0+38 0+ WAT +0 +0 +8 - +\[12\] \.dynamic +DYNAMIC +0+100104c0 0+4c0 0+150 10 +WA +4 +0 +8 + +\[ 8\] \.tdata +PROGBITS +0+10010488 0+488 0+38 0+ WAT +0 +0 +8 + +\[ 9\] \.tbss +NOBITS +0+100104c0 0+4c0 0+38 0+ WAT +0 +0 +8 + +\[10\] \.dynamic +DYNAMIC +0+100104c0 0+4c0 0+150 10 +WA +4 +0 +8 + +\[11\] \.data +PROGBITS +0+10010610 0+610 0+ 0+ +WA +0 +0 +1 + +\[12\] \.branch_lt +.* +\[13\] \.got +PROGBITS +0+10010610 0+610 0+30 08 +WA +0 +0 +8 - +\[14\] \.sbss +NOBITS +0+10010640 0+640 0+ 0+ +W +0 +0 +1 - +\[15\] \.plt +NOBITS +0+10010640 0+640 0+30 18 +WA +0 +0 +8 - +\[16\] \.bss +NOBITS +0+10010670 0+640 0+ 0+ +WA +0 +0 +1 - +\[17\] \.shstrtab +STRTAB +0+ 0+640 0+8a 0+ +0 +0 +1 - +\[18\] \.symtab +SYMTAB +0+ 0+bd0 0+408 18 +19 +1b +8 - +\[19\] \.strtab +STRTAB +0+ 0+fd8 0+86 0+ +0 +0 +1 + +\[14\] \.sbss +.* + +\[15\] \.plt +.* + +\[16\] \.bss +.* + +\[17\] \.shstrtab +.* + +\[18\] \.symtab +.* + +\[19\] \.strtab +.* #... Elf file type is EXEC \(Executable file\) @@ -72,7 +72,7 @@ Symbol table '\.dynsym' contains 10 entr +3: 0+ +0 FUNC +GLOBAL DEFAULT +UND __tls_get_addr +4: 0+ +0 FUNC +GLOBAL DEFAULT +UND \.__tls_get_addr +5: 0+ +0 TLS +GLOBAL DEFAULT +UND ld - +6: 0+50 +0 TLS +GLOBAL DEFAULT +11 ld2 + +6: 0+50 +0 TLS +GLOBAL DEFAULT +9 ld2 +7: 0+10010640 +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start +8: 0+10010640 +0 NOTYPE +GLOBAL DEFAULT +ABS _edata +9: 0+10010670 +0 NOTYPE +GLOBAL DEFAULT +ABS _end @@ -80,45 +80,45 @@ Symbol table '\.dynsym' contains 10 entr Symbol table '\.symtab' contains 43 entries: +Num: +Value +Size Type +Bind +Vis +Ndx Name +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND - +1: 0+10000190 +0 SECTION LOCAL +DEFAULT +1 - +2: 0+100001a8 +0 SECTION LOCAL +DEFAULT +2 - +3: 0+100001e8 +0 SECTION LOCAL +DEFAULT +3 - +4: 0+100002d8 +0 SECTION LOCAL +DEFAULT +4 - +5: 0+10000328 +0 SECTION LOCAL +DEFAULT +5 - +6: 0+10000370 +0 SECTION LOCAL +DEFAULT +6 + +1: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +1 + +2: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +2 + +3: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +3 + +4: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +4 + +5: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +5 + +6: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +6 +7: 0+10000388 +0 SECTION LOCAL +DEFAULT +7 +8: 0+10010488 +0 SECTION LOCAL +DEFAULT +8 - +9: 0+10010488 +0 SECTION LOCAL +DEFAULT +9 - +10: 0+10010488 +0 SECTION LOCAL +DEFAULT +10 - +11: 0+100104c0 +0 SECTION LOCAL +DEFAULT +11 - +12: 0+100104c0 +0 SECTION LOCAL +DEFAULT +12 + +9: 0+100104c0 +0 SECTION LOCAL +DEFAULT +9 + +10: 0+100104c0 +0 SECTION LOCAL +DEFAULT +10 + +11: 0+10010610 +0 SECTION LOCAL +DEFAULT +11 + +12: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +12 +13: 0+10010610 +0 SECTION LOCAL +DEFAULT +13 - +14: 0+10010640 +0 SECTION LOCAL +DEFAULT +14 - +15: 0+10010640 +0 SECTION LOCAL +DEFAULT +15 - +16: 0+10010670 +0 SECTION LOCAL +DEFAULT +16 + +14: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +14 + +15: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +15 + +16: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +16 +17: 0+ +0 SECTION LOCAL +DEFAULT +17 +18: 0+ +0 SECTION LOCAL +DEFAULT +18 +19: 0+ +0 SECTION LOCAL +DEFAULT +19 - +20: 0+ +0 TLS +LOCAL +DEFAULT +10 gd4 - +21: 0+8 +0 TLS +LOCAL +DEFAULT +10 ld4 - +22: 0+10 +0 TLS +LOCAL +DEFAULT +10 ld5 - +23: 0+18 +0 TLS +LOCAL +DEFAULT +10 ld6 - +24: 0+20 +0 TLS +LOCAL +DEFAULT +10 ie4 - +25: 0+28 +0 TLS +LOCAL +DEFAULT +10 le4 - +26: 0+30 +0 TLS +LOCAL +DEFAULT +10 le5 + +20: 0+ +0 TLS +LOCAL +DEFAULT +8 gd4 + +21: 0+8 +0 TLS +LOCAL +DEFAULT +8 ld4 + +22: 0+10 +0 TLS +LOCAL +DEFAULT +8 ld5 + +23: 0+18 +0 TLS +LOCAL +DEFAULT +8 ld6 + +24: 0+20 +0 TLS +LOCAL +DEFAULT +8 ie4 + +25: 0+28 +0 TLS +LOCAL +DEFAULT +8 le4 + +26: 0+30 +0 TLS +LOCAL +DEFAULT +8 le5 +27: 0+100104c0 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC +28: 0+ +0 TLS +GLOBAL DEFAULT +UND gd - +29: 0+60 +0 TLS +GLOBAL DEFAULT +11 le0 + +29: 0+60 +0 TLS +GLOBAL DEFAULT +9 le0 +30: 0+ +0 FUNC +GLOBAL DEFAULT +UND __tls_get_addr +31: 0+ +0 FUNC +GLOBAL DEFAULT +UND \.__tls_get_addr - +32: 0+40 +0 TLS +GLOBAL DEFAULT +11 ld0 - +33: 0+68 +0 TLS +GLOBAL DEFAULT +11 le1 + +32: 0+40 +0 TLS +GLOBAL DEFAULT +9 ld0 + +33: 0+68 +0 TLS +GLOBAL DEFAULT +9 le1 +34: 0+ +0 TLS +GLOBAL DEFAULT +UND ld - +35: 0+100003a4 +0 NOTYPE +GLOBAL DEFAULT +7 _start - +36: 0+50 +0 TLS +GLOBAL DEFAULT +11 ld2 - +37: 0+48 +0 TLS +GLOBAL DEFAULT +11 ld1 - +38: 0+10010640 +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start - +39: 0+10010640 +0 NOTYPE +GLOBAL DEFAULT +ABS _edata - +40: 0+10010670 +0 NOTYPE +GLOBAL DEFAULT +ABS _end - +41: 0+38 +0 TLS +GLOBAL DEFAULT +11 gd0 - +42: 0+58 +0 TLS +GLOBAL DEFAULT +11 ie0 + +35: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +7 _start + +36: 0+50 +0 TLS +GLOBAL DEFAULT +9 ld2 + +37: 0+48 +0 TLS +GLOBAL DEFAULT +9 ld1 + +38: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start + +39: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata + +40: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end + +41: 0+38 +0 TLS +GLOBAL DEFAULT +9 gd0 + +42: 0+58 +0 TLS +GLOBAL DEFAULT +9 ie0 diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-powerpc/tlsexe32.d binutils-2.15.91.0.1/ld/testsuite/ld-powerpc/tlsexe32.d --- binutils-2.15.90.0.3/ld/testsuite/ld-powerpc/tlsexe32.d 2004-04-12 12:56:37.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-powerpc/tlsexe32.d 2004-05-27 11:26:06.200968948 -0700 @@ -43,7 +43,3 @@ Disassembly of section \.got: 18103b8: 4e 80 00 21 blrl 18103bc: 01 81 03 18 \.long 0x1810318 \.\.\. -Disassembly of section \.plt: - -018103d4 <\.plt>: - \.\.\. diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-powerpc/tlsexe32.r binutils-2.15.91.0.1/ld/testsuite/ld-powerpc/tlsexe32.r --- binutils-2.15.90.0.3/ld/testsuite/ld-powerpc/tlsexe32.r 2003-03-19 09:19:17.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-powerpc/tlsexe32.r 2004-05-27 11:26:06.264960673 -0700 @@ -10,26 +10,26 @@ There are 21 section headers.* Section Headers: +\[Nr\] Name +Type +Addr +Off +Size +ES Flg Lk Inf Al +\[ 0\] +NULL +00000000 000000 000000 00 +0 +0 +0 - +\[ 1\] \.interp +PROGBITS +01800114 000114 000011 00 +A +0 +0 +1 - +\[ 2\] \.hash +HASH +01800128 000128 00003c 04 +A +3 +0 +4 - +\[ 3\] \.dynsym +DYNSYM +01800164 000164 0000a0 10 +A +4 +1 +4 - +\[ 4\] \.dynstr +STRTAB +01800204 000204 000064 00 +A +0 +0 +1 - +\[ 5\] \.rela\.dyn +RELA +01800268 000268 000018 0c +A +3 +0 +4 - +\[ 6\] \.rela\.plt +RELA +01800280 000280 00000c 0c +A +3 +10 +4 + +\[ 1\] \.interp +.* + +\[ 2\] \.hash +.* + +\[ 3\] \.dynsym +.* + +\[ 4\] \.dynstr +.* + +\[ 5\] \.rela\.dyn +.* + +\[ 6\] \.rela\.plt +.* +\[ 7\] \.text +PROGBITS +0180028c 00028c 000070 00 +AX +0 +0 +1 - +\[ 8\] \.sdata2 +PROGBITS +018002fc 0002fc 000000 00 +A +0 +0 +4 - +\[ 9\] \.data +PROGBITS +018102fc 0002fc 000000 00 +WA +0 +0 +1 - +\[10\] \.tdata +PROGBITS +018102fc 0002fc 00001c 00 WAT +0 +0 +4 - +\[11\] \.tbss +NOBITS +01810318 000318 00001c 00 WAT +0 +0 +4 - +\[12\] \.dynamic +DYNAMIC +01810318 000318 0000a0 08 +WA +4 +0 +4 + +\[ 8\] \.sdata2 +PROGBITS +.* + +\[ 9\] \.tdata +PROGBITS +018102fc 0002fc 00001c 00 WAT +0 +0 +4 + +\[10\] \.tbss +NOBITS +01810318 000318 00001c 00 WAT +0 +0 +4 + +\[11\] \.dynamic +DYNAMIC +01810318 000318 0000a0 08 +WA +4 +0 +4 + +\[12\] \.data +PROGBITS +018103b8 0003b8 000000 00 +WA +0 +0 +1 +\[13\] \.got +PROGBITS +018103b8 0003b8 00001c 04 WAX +0 +0 +4 +\[14\] \.sdata +PROGBITS +018103d4 0003d4 000000 00 +WA +0 +0 +4 +\[15\] \.sbss +NOBITS +018103d4 0003d4 000000 00 +WA +0 +0 +1 - +\[16\] \.plt +NOBITS +018103d4 0003d4 000054 00 WAX +0 +0 +4 - +\[17\] \.bss +NOBITS +01810428 0003d4 000000 00 +WA +0 +0 +1 - +\[18\] \.shstrtab +STRTAB +00000000 0003d4 00008e 00 +0 +0 +1 - +\[19\] \.symtab +SYMTAB +00000000 0007ac 0002f0 10 +20 +1c +4 - +\[20\] \.strtab +STRTAB +00000000 000a9c 0000a9 00 +0 +0 +1 + +\[16\] \.plt +NOBITS +.* + +\[17\] \.bss +NOBITS +.* + +\[18\] \.shstrtab +STRTAB +.* + +\[19\] \.symtab +SYMTAB +.* + +\[20\] \.strtab +STRTAB +.* #... Elf file type is EXEC \(Executable file\) @@ -80,49 +80,49 @@ Symbol table '\.dynsym' contains 10 entr Symbol table '\.symtab' contains 47 entries: +Num: +Value +Size Type +Bind +Vis +Ndx Name +0: 00000000 +0 NOTYPE +LOCAL +DEFAULT +UND - +1: 01800114 +0 SECTION LOCAL +DEFAULT +1 - +2: 01800128 +0 SECTION LOCAL +DEFAULT +2 - +3: 01800164 +0 SECTION LOCAL +DEFAULT +3 - +4: 01800204 +0 SECTION LOCAL +DEFAULT +4 - +5: 01800268 +0 SECTION LOCAL +DEFAULT +5 - +6: 01800280 +0 SECTION LOCAL +DEFAULT +6 + +1: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +1 + +2: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +2 + +3: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +3 + +4: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +4 + +5: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +5 + +6: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +6 +7: 0180028c +0 SECTION LOCAL +DEFAULT +7 - +8: 018002fc +0 SECTION LOCAL +DEFAULT +8 + +8: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +8 +9: 018102fc +0 SECTION LOCAL +DEFAULT +9 - +10: 018102fc +0 SECTION LOCAL +DEFAULT +10 + +10: 01810318 +0 SECTION LOCAL +DEFAULT +10 +11: 01810318 +0 SECTION LOCAL +DEFAULT +11 - +12: 01810318 +0 SECTION LOCAL +DEFAULT +12 + +12: 018103b8 +0 SECTION LOCAL +DEFAULT +12 +13: 018103b8 +0 SECTION LOCAL +DEFAULT +13 +14: 018103d4 +0 SECTION LOCAL +DEFAULT +14 +15: 018103d4 +0 SECTION LOCAL +DEFAULT +15 - +16: 018103d4 +0 SECTION LOCAL +DEFAULT +16 - +17: 01810428 +0 SECTION LOCAL +DEFAULT +17 - +18: 00000000 +0 SECTION LOCAL +DEFAULT +18 - +19: 00000000 +0 SECTION LOCAL +DEFAULT +19 - +20: 00000000 +0 SECTION LOCAL +DEFAULT +20 - +21: 00000000 +0 TLS +LOCAL +DEFAULT +10 gd4 - +22: 00000004 +0 TLS +LOCAL +DEFAULT +10 ld4 - +23: 00000008 +0 TLS +LOCAL +DEFAULT +10 ld5 - +24: 0000000c +0 TLS +LOCAL +DEFAULT +10 ld6 - +25: 00000010 +0 TLS +LOCAL +DEFAULT +10 ie4 - +26: 00000014 +0 TLS +LOCAL +DEFAULT +10 le4 - +27: 00000018 +0 TLS +LOCAL +DEFAULT +10 le5 + +16: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +16 + +17: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +17 + +18: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +18 + +19: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +19 + +20: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +20 + +21: 00000000 +0 TLS +LOCAL +DEFAULT +9 gd4 + +22: 00000004 +0 TLS +LOCAL +DEFAULT +9 ld4 + +23: 00000008 +0 TLS +LOCAL +DEFAULT +9 ld5 + +24: 0000000c +0 TLS +LOCAL +DEFAULT +9 ld6 + +25: 00000010 +0 TLS +LOCAL +DEFAULT +9 ie4 + +26: 00000014 +0 TLS +LOCAL +DEFAULT +9 le4 + +27: 00000018 +0 TLS +LOCAL +DEFAULT +9 le5 +28: 01810318 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC +29: 00000000 +0 TLS +GLOBAL DEFAULT +UND gd - +30: 00000030 +0 TLS +GLOBAL DEFAULT +11 le0 - +31: 0181041c +0 FUNC +GLOBAL DEFAULT +UND __tls_get_addr - +32: 00000020 +0 TLS +GLOBAL DEFAULT +11 ld0 - +33: 00000034 +0 TLS +GLOBAL DEFAULT +11 le1 + +30: 00000030 +0 TLS +GLOBAL DEFAULT +10 le0 + +31: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +UND __tls_get_addr + +32: 00000020 +0 TLS +GLOBAL DEFAULT +10 ld0 + +33: 00000034 +0 TLS +GLOBAL DEFAULT +10 le1 +34: 00000000 +0 TLS +GLOBAL DEFAULT +UND ld - +35: 0180028c +0 NOTYPE +GLOBAL DEFAULT +7 _start - +36: 01810428 +0 NOTYPE +GLOBAL DEFAULT +ABS __end - +37: 018183d4 +0 OBJECT +GLOBAL DEFAULT +14 _SDA_BASE_ - +38: 00000028 +0 TLS +GLOBAL DEFAULT +11 ld2 - +39: 00000024 +0 TLS +GLOBAL DEFAULT +11 ld1 - +40: 018103d4 +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start - +41: 018103d4 +0 NOTYPE +GLOBAL DEFAULT +ABS _edata + +35: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +7 _start + +36: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __end + +37: [0-9a-f]+ +0 OBJECT +GLOBAL DEFAULT +14 _SDA_BASE_ + +38: 00000028 +0 TLS +GLOBAL DEFAULT +10 ld2 + +39: 00000024 +0 TLS +GLOBAL DEFAULT +10 ld1 + +40: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start + +41: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata +42: 018103bc +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_ - +43: 01810428 +0 NOTYPE +GLOBAL DEFAULT +ABS _end - +44: 0000001c +0 TLS +GLOBAL DEFAULT +11 gd0 - +45: 0000002c +0 TLS +GLOBAL DEFAULT +11 ie0 - +46: 018082fc +0 OBJECT +GLOBAL DEFAULT +8 _SDA2_BASE_ + +43: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end + +44: 0000001c +0 TLS +GLOBAL DEFAULT +10 gd0 + +45: 0000002c +0 TLS +GLOBAL DEFAULT +10 ie0 + +46: [0-9a-f]+ +0 OBJECT +GLOBAL DEFAULT +8 _SDA2_BASE_ diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-powerpc/tlsexetoc.r binutils-2.15.91.0.1/ld/testsuite/ld-powerpc/tlsexetoc.r --- binutils-2.15.90.0.3/ld/testsuite/ld-powerpc/tlsexetoc.r 2004-04-12 12:56:37.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-powerpc/tlsexetoc.r 2004-05-27 11:26:06.268960156 -0700 @@ -10,25 +10,25 @@ There are 20 section headers.* Section Headers: +\[Nr\] Name +Type +Address +Off +Size +ES Flg Lk Inf Al +\[ 0\] +NULL +0+ 0+ 0+ 0+ +0 +0 +0 - +\[ 1\] \.interp +PROGBITS +0+10000190 0+190 0+11 0+ +A +0 +0 +1 - +\[ 2\] \.hash +HASH +0+100001a8 0+1a8 0+38 04 +A +3 +0 +8 - +\[ 3\] \.dynsym +DYNSYM +0+100001e0 0+1e0 0+d8 18 +A +4 +1 +8 - +\[ 4\] \.dynstr +STRTAB +0+100002b8 0+2b8 0+4c 0+ +A +0 +0 +1 - +\[ 5\] \.rela\.dyn +RELA +0+10000308 0+308 0+30 18 +A +3 +0 +8 - +\[ 6\] \.rela\.plt +RELA +0+10000338 0+338 0+18 18 +A +3 +f +8 + +\[ 1\] \.interp +.* + +\[ 2\] \.hash +.* + +\[ 3\] \.dynsym +.* + +\[ 4\] \.dynstr +.* + +\[ 5\] \.rela\.dyn +.* + +\[ 6\] \.rela\.plt +.* +\[ 7\] \.text +PROGBITS +0+10000350 0+350 0+bc 0+ +AX +0 +0 +4 - +\[ 8\] \.data +PROGBITS +0+10010410 0+410 0+ 0+ +WA +0 +0 +1 - +\[ 9\] \.branch_lt +PROGBITS +0+10010410 0+410 0+ 0+ +WA +0 +0 +8 - +\[10\] \.tdata +PROGBITS +0+10010410 0+410 0+38 0+ WAT +0 +0 +8 - +\[11\] \.tbss +NOBITS +0+10010448 0+448 0+38 0+ WAT +0 +0 +8 - +\[12\] \.dynamic +DYNAMIC +0+10010448 0+448 0+150 10 +WA +4 +0 +8 + +\[ 8\] \.tdata +PROGBITS +0+10010410 0+410 0+38 0+ WAT +0 +0 +8 + +\[ 9\] \.tbss +NOBITS +0+10010448 0+448 0+38 0+ WAT +0 +0 +8 + +\[10\] \.dynamic +DYNAMIC +0+10010448 0+448 0+150 10 +WA +4 +0 +8 + +\[11\] \.data +PROGBITS +0+10010598 0+598 0+ 0+ +WA +0 +0 +1 + +\[12\] \.branch_lt +.* +\[13\] \.got +PROGBITS +0+10010598 0+598 0+58 08 +WA +0 +0 +8 - +\[14\] \.sbss +NOBITS +0+100105f0 0+5f0 0+ 0+ +W +0 +0 +1 - +\[15\] \.plt +NOBITS +0+100105f0 0+5f0 0+30 18 +WA +0 +0 +8 - +\[16\] \.bss +NOBITS +0+10010620 0+5f0 0+ 0+ +WA +0 +0 +1 - +\[17\] \.shstrtab +STRTAB +0+ 0+5f0 0+8a 0+ +0 +0 +1 - +\[18\] \.symtab +SYMTAB +0+ 0+b80 0+420 18 +19 +1c +8 - +\[19\] \.strtab +STRTAB +0+ 0+fa0 0+8c 0+ +0 +0 +1 + +\[14\] \.sbss +.* + +\[15\] \.plt +.* + +\[16\] \.bss +.* + +\[17\] \.shstrtab +.* + +\[18\] \.symtab +.* + +\[19\] \.strtab +.* #... Elf file type is EXEC \(Executable file\) @@ -71,53 +71,53 @@ Symbol table '\.dynsym' contains 9 entri +3: 0+ +0 FUNC +GLOBAL DEFAULT +UND __tls_get_addr +4: 0+ +0 FUNC +GLOBAL DEFAULT +UND \.__tls_get_addr +5: 0+ +0 TLS +GLOBAL DEFAULT +UND ld - +6: 0+100105f0 +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start - +7: 0+100105f0 +0 NOTYPE +GLOBAL DEFAULT +ABS _edata - +8: 0+10010620 +0 NOTYPE +GLOBAL DEFAULT +ABS _end + +6: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start + +7: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata + +8: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end Symbol table '\.symtab' contains 44 entries: +Num: +Value +Size Type +Bind +Vis +Ndx Name +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND - +1: 0+10000190 +0 SECTION LOCAL +DEFAULT +1 - +2: 0+100001a8 +0 SECTION LOCAL +DEFAULT +2 - +3: 0+100001e0 +0 SECTION LOCAL +DEFAULT +3 - +4: 0+100002b8 +0 SECTION LOCAL +DEFAULT +4 - +5: 0+10000308 +0 SECTION LOCAL +DEFAULT +5 - +6: 0+10000338 +0 SECTION LOCAL +DEFAULT +6 + +1: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +1 + +2: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +2 + +3: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +3 + +4: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +4 + +5: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +5 + +6: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +6 +7: 0+10000350 +0 SECTION LOCAL +DEFAULT +7 +8: 0+10010410 +0 SECTION LOCAL +DEFAULT +8 - +9: 0+10010410 +0 SECTION LOCAL +DEFAULT +9 - +10: 0+10010410 +0 SECTION LOCAL +DEFAULT +10 - +11: 0+10010448 +0 SECTION LOCAL +DEFAULT +11 - +12: 0+10010448 +0 SECTION LOCAL +DEFAULT +12 + +9: 0+10010448 +0 SECTION LOCAL +DEFAULT +9 + +10: 0+10010448 +0 SECTION LOCAL +DEFAULT +10 + +11: 0+10010598 +0 SECTION LOCAL +DEFAULT +11 + +12: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +12 +13: 0+10010598 +0 SECTION LOCAL +DEFAULT +13 - +14: 0+100105f0 +0 SECTION LOCAL +DEFAULT +14 - +15: 0+100105f0 +0 SECTION LOCAL +DEFAULT +15 - +16: 0+10010620 +0 SECTION LOCAL +DEFAULT +16 + +14: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +14 + +15: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +15 + +16: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +16 +17: 0+ +0 SECTION LOCAL +DEFAULT +17 +18: 0+ +0 SECTION LOCAL +DEFAULT +18 +19: 0+ +0 SECTION LOCAL +DEFAULT +19 - +20: 0+ +0 TLS +LOCAL +DEFAULT +10 gd4 - +21: 0+8 +0 TLS +LOCAL +DEFAULT +10 ld4 - +22: 0+10 +0 TLS +LOCAL +DEFAULT +10 ld5 - +23: 0+18 +0 TLS +LOCAL +DEFAULT +10 ld6 - +24: 0+20 +0 TLS +LOCAL +DEFAULT +10 ie4 - +25: 0+28 +0 TLS +LOCAL +DEFAULT +10 le4 - +26: 0+30 +0 TLS +LOCAL +DEFAULT +10 le5 + +20: 0+ +0 TLS +LOCAL +DEFAULT +8 gd4 + +21: 0+8 +0 TLS +LOCAL +DEFAULT +8 ld4 + +22: 0+10 +0 TLS +LOCAL +DEFAULT +8 ld5 + +23: 0+18 +0 TLS +LOCAL +DEFAULT +8 ld6 + +24: 0+20 +0 TLS +LOCAL +DEFAULT +8 ie4 + +25: 0+28 +0 TLS +LOCAL +DEFAULT +8 le4 + +26: 0+30 +0 TLS +LOCAL +DEFAULT +8 le5 +27: 0+100105e8 +0 NOTYPE +LOCAL +DEFAULT +13 \.Lie0 +28: 0+10010448 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC +29: 0+ +0 TLS +GLOBAL DEFAULT +UND gd - +30: 0+60 +0 TLS +GLOBAL DEFAULT +11 le0 + +30: 0+60 +0 TLS +GLOBAL DEFAULT +9 le0 +31: 0+ +0 FUNC +GLOBAL DEFAULT +UND __tls_get_addr +32: 0+ +0 FUNC +GLOBAL DEFAULT +UND \.__tls_get_addr - +33: 0+40 +0 TLS +GLOBAL DEFAULT +11 ld0 - +34: 0+68 +0 TLS +GLOBAL DEFAULT +11 le1 + +33: 0+40 +0 TLS +GLOBAL DEFAULT +9 ld0 + +34: 0+68 +0 TLS +GLOBAL DEFAULT +9 le1 +35: 0+ +0 TLS +GLOBAL DEFAULT +UND ld +36: 0+1000036c +0 NOTYPE +GLOBAL DEFAULT +7 _start - +37: 0+50 +0 TLS +GLOBAL DEFAULT +11 ld2 - +38: 0+48 +0 TLS +GLOBAL DEFAULT +11 ld1 + +37: 0+50 +0 TLS +GLOBAL DEFAULT +9 ld2 + +38: 0+48 +0 TLS +GLOBAL DEFAULT +9 ld1 +39: 0+100105f0 +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start +40: 0+100105f0 +0 NOTYPE +GLOBAL DEFAULT +ABS _edata +41: 0+10010620 +0 NOTYPE +GLOBAL DEFAULT +ABS _end - +42: 0+38 +0 TLS +GLOBAL DEFAULT +11 gd0 - +43: 0+58 +0 TLS +GLOBAL DEFAULT +11 ie0 + +42: 0+38 +0 TLS +GLOBAL DEFAULT +9 gd0 + +43: 0+58 +0 TLS +GLOBAL DEFAULT +9 ie0 diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-powerpc/tlsso.g binutils-2.15.91.0.1/ld/testsuite/ld-powerpc/tlsso.g --- binutils-2.15.90.0.3/ld/testsuite/ld-powerpc/tlsso.g 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-powerpc/tlsso.g 2004-05-27 11:26:06.272959639 -0700 @@ -7,9 +7,9 @@ .*: +file format elf64-powerpc Contents of section \.got: - 10948 00000000 00018948 00000000 00000000 .* - 10958 00000000 00000000 00000000 00000000 .* - 10968 00000000 00000000 00000000 00000000 .* - 10978 00000000 00000000 00000000 00000000 .* - 10988 00000000 00000000 00000000 00000000 .* - 10998 00000000 00000000 00000000 00000000 .* + 10850 00000000 00018850 00000000 00000000 .* + 10860 00000000 00000000 00000000 00000000 .* + 10870 00000000 00000000 00000000 00000000 .* + 10880 00000000 00000000 00000000 00000000 .* + 10890 00000000 00000000 00000000 00000000 .* + 108a0 00000000 00000000 00000000 00000000 .* diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-powerpc/tlsso.r binutils-2.15.91.0.1/ld/testsuite/ld-powerpc/tlsso.r --- binutils-2.15.90.0.3/ld/testsuite/ld-powerpc/tlsso.r 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-powerpc/tlsso.r 2004-05-27 11:26:06.277958992 -0700 @@ -9,36 +9,36 @@ There are 19 section headers.* Section Headers: +\[Nr\] Name +Type +Address +Off +Size +ES Flg Lk Inf Al +\[ 0\] +NULL +0+ 0+ 0+ 0+ +0 +0 +0 - +\[ 1\] \.hash +HASH +0+120 0+120 0+c8 04 +A +2 +0 +8 - +\[ 2\] \.dynsym +DYNSYM +0+1e8 0+1e8 0+2e8 18 +A +3 +10 +8 - +\[ 3\] \.dynstr +STRTAB +0+4d0 0+4d0 0+53 0+ +A +0 +0 +1 - +\[ 4\] \.rela\.dyn +RELA +0+528 0+528 0+180 18 +A +2 +0 +8 - +\[ 5\] \.rela\.plt +RELA +0+6a8 0+6a8 0+18 18 +A +2 +e +8 - +\[ 6\] \.text +PROGBITS +0+6c0 0+6c0 0+fc 0+ +AX +0 +0 +4 - +\[ 7\] \.data +PROGBITS +0+107c0 0+7c0 0+ 0+ +WA +0 +0 +1 - +\[ 8\] \.branch_lt +PROGBITS +0+107c0 0+7c0 0+ 0+ +WA +0 +0 +8 - +\[ 9\] \.tdata +PROGBITS +0+107c0 0+7c0 0+38 0+ WAT +0 +0 +8 - +\[10\] \.tbss +NOBITS +0+107f8 0+7f8 0+38 0+ WAT +0 +0 +8 - +\[11\] \.dynamic +DYNAMIC +0+107f8 0+7f8 0+150 10 +WA +3 +0 +8 - +\[12\] \.got +PROGBITS +0+10948 0+948 0+60 08 +WA +0 +0 +8 - +\[13\] \.sbss +NOBITS +0+109a8 0+9a8 0+ 0+ +W +0 +0 +1 - +\[14\] \.plt +NOBITS +0+109a8 0+9a8 0+30 18 +WA +0 +0 +8 - +\[15\] \.bss +NOBITS +0+109d8 0+9a8 0+ 0+ +WA +0 +0 +1 - +\[16\] \.shstrtab +STRTAB +0+ 0+9a8 0+82 0+ +0 +0 +1 - +\[17\] \.symtab +SYMTAB +0+ 0+ef0 0+3f0 18 +18 +1b +8 - +\[18\] \.strtab +STRTAB +0+ 0+12e0 0+86 0+ +0 +0 +1 + +\[ 1\] \.hash +.* + +\[ 2\] \.dynsym +.* + +\[ 3\] \.dynstr +.* + +\[ 4\] \.rela\.dyn +.* + +\[ 5\] \.rela\.plt +.* + +\[ 6\] \.text +PROGBITS +0+5c8 0+5c8 0+fc 0+ +AX +0 +0 +4 + +\[ 7\] \.tdata +PROGBITS +0+106c8 0+6c8 0+38 0+ WAT +0 +0 +8 + +\[ 8\] \.tbss +NOBITS +0+10700 0+700 0+38 0+ WAT +0 +0 +8 + +\[ 9\] \.dynamic +DYNAMIC +0+10700 0+700 0+150 10 +WA +3 +0 +8 + +\[10\] \.data +PROGBITS +0+10850 0+850 0+ 0+ +WA +0 +0 +1 + +\[11\] \.branch_lt +.* + +\[12\] \.got +PROGBITS +0+10850 0+850 0+60 08 +WA +0 +0 +8 + +\[13\] \.sbss +.* + +\[14\] \.plt +.* + +\[15\] \.bss +.* + +\[16\] \.shstrtab +.* + +\[17\] \.symtab +.* + +\[18\] \.strtab +.* #... Elf file type is DYN \(Shared object file\) -Entry point 0x6dc +Entry point 0x[0-9a-f]+ There are 4 program headers.* Program Headers: +Type +Offset +VirtAddr +PhysAddr +FileSiz +MemSiz +Flg Align - +LOAD +0x0+ 0x0+ 0x0+ 0x0+7bc 0x0+7bc R E 0x10000 - +LOAD +0x0+7c0 0x0+107c0 0x0+107c0 0x0+1e8 0x0+218 RW +0x10000 - +DYNAMIC +0x0+7f8 0x0+107f8 0x0+107f8 0x0+150 0x0+150 RW +0x8 - +TLS +0x0+7c0 0x0+107c0 0x0+107c0 0x0+38 0x0+70 R +0x8 + +LOAD +0x0+ 0x0+ 0x0+ 0x0+6c4 0x0+6c4 R E 0x10000 + +LOAD +0x0+6c8 0x0+106c8 0x0+106c8 0x0+1e8 0x0+218 RW +0x10000 + +DYNAMIC +0x0+700 0x0+10700 0x0+10700 0x0+150 0x0+150 RW +0x8 + +TLS +0x0+6c8 0x0+106c8 0x0+106c8 0x0+38 0x0+70 R +0x8 Section to Segment mapping: +Segment Sections\.\.\. @@ -49,102 +49,93 @@ Program Headers: Relocation section '\.rela\.dyn' at offset .* contains 16 entries: +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend -0+72a +0+1200000045 R_PPC64_TPREL16 +0+60 le0 \+ 0 -0+72e +0+1500000048 R_PPC64_TPREL16_HA +0+68 le1 \+ 0 -0+732 +0+1500000046 R_PPC64_TPREL16_LO +0+68 le1 \+ 0 -0+76a +0+90000005f R_PPC64_TPREL16_DS +0+107c0 \.tdata \+ 28 -0+76e +0+900000048 R_PPC64_TPREL16_HA +0+107c0 \.tdata \+ 30 -0+772 +0+900000046 R_PPC64_TPREL16_LO +0+107c0 \.tdata \+ 30 -0+10950 +0+44 R_PPC64_DTPMOD64 +0+ -0+10960 +0+44 R_PPC64_DTPMOD64 +0+ -0+10968 +0+4e R_PPC64_DTPREL64 +0+ -0+10970 +0+4e R_PPC64_DTPREL64 +0+18 -0+10978 +0+1100000044 R_PPC64_DTPMOD64 +0+ gd \+ 0 -0+10980 +0+110000004e R_PPC64_DTPREL64 +0+ gd \+ 0 -0+10988 +0+180000004e R_PPC64_DTPREL64 +0+50 ld2 \+ 0 -0+10990 +0+1d00000044 R_PPC64_DTPMOD64 +0+38 gd0 \+ 0 -0+10998 +0+1d0000004e R_PPC64_DTPREL64 +0+38 gd0 \+ 0 -0+109a0 +0+1e00000049 R_PPC64_TPREL64 +0+58 ie0 \+ 0 +0+632 +0+90+45 R_PPC64_TPREL16 +0+60 le0 \+ 0 +0+636 +0+c0+48 R_PPC64_TPREL16_HA +0+68 le1 \+ 0 +0+63a +0+c0+46 R_PPC64_TPREL16_LO +0+68 le1 \+ 0 +0+672 +0+20+5f R_PPC64_TPREL16_DS +0+106c8 \.tdata \+ 28 +0+676 +0+20+48 R_PPC64_TPREL16_HA +0+106c8 \.tdata \+ 30 +0+67a +0+20+46 R_PPC64_TPREL16_LO +0+106c8 \.tdata \+ 30 +0+10858 +0+44 R_PPC64_DTPMOD64 +0+ +0+10868 +0+44 R_PPC64_DTPMOD64 +0+ +0+10870 +0+4e R_PPC64_DTPREL64 +0+ +0+10878 +0+4e R_PPC64_DTPREL64 +0+18 +0+10880 +0+80+44 R_PPC64_DTPMOD64 +0+ gd \+ 0 +0+10888 +0+80+4e R_PPC64_DTPREL64 +0+ gd \+ 0 +0+10890 +0+f0+4e R_PPC64_DTPREL64 +0+50 ld2 \+ 0 +0+10898 +0+140+44 R_PPC64_DTPMOD64 +0+38 gd0 \+ 0 +0+108a0 +0+140+4e R_PPC64_DTPREL64 +0+38 gd0 \+ 0 +0+108a8 +0+150+49 R_PPC64_TPREL64 +0+58 ie0 \+ 0 Relocation section '\.rela\.plt' at offset .* contains 1 entries: +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend -0+109c0 +0+1300000015 R_PPC64_JMP_SLOT +0+ __tls_get_addr \+ 0 +0+108c8 +0+a0+15 R_PPC64_JMP_SLOT +0+ __tls_get_addr \+ 0 -Symbol table '\.dynsym' contains 31 entries: +Symbol table '\.dynsym' contains 22 entries: +Num: +Value +Size Type +Bind +Vis +Ndx Name - +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND - +1: 0+120 +0 SECTION LOCAL +DEFAULT +1 - +2: 0+1e8 +0 SECTION LOCAL +DEFAULT +2 - +3: 0+4d0 +0 SECTION LOCAL +DEFAULT +3 - +4: 0+528 +0 SECTION LOCAL +DEFAULT +4 - +5: 0+6a8 +0 SECTION LOCAL +DEFAULT +5 - +6: 0+6c0 +0 SECTION LOCAL +DEFAULT +6 - +7: 0+107c0 +0 SECTION LOCAL +DEFAULT +7 - +8: 0+107c0 +0 SECTION LOCAL +DEFAULT +8 - +9: 0+107c0 +0 SECTION LOCAL +DEFAULT +9 - +10: 0+107f8 +0 SECTION LOCAL +DEFAULT +10 - +11: 0+107f8 +0 SECTION LOCAL +DEFAULT +11 - +12: 0+10948 +0 SECTION LOCAL +DEFAULT +12 - +13: 0+109a8 +0 SECTION LOCAL +DEFAULT +13 - +14: 0+109a8 +0 SECTION LOCAL +DEFAULT +14 - +15: 0+109d8 +0 SECTION LOCAL +DEFAULT +15 - +16: 0+107f8 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC - +17: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND gd - +18: 0+60 +0 TLS +GLOBAL DEFAULT +10 le0 - +19: 0+ +24 OBJECT +GLOBAL DEFAULT +UND __tls_get_addr - +20: 0+40 +0 TLS +GLOBAL DEFAULT +10 ld0 - +21: 0+68 +0 TLS +GLOBAL DEFAULT +10 le1 - +22: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND ld - +23: 0+6dc +0 NOTYPE +GLOBAL DEFAULT +6 _start - +24: 0+50 +0 TLS +GLOBAL DEFAULT +10 ld2 - +25: 0+48 +0 TLS +GLOBAL DEFAULT +10 ld1 - +26: 0+109a8 +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start - +27: 0+109a8 +0 NOTYPE +GLOBAL DEFAULT +ABS _edata - +28: 0+109d8 +0 NOTYPE +GLOBAL DEFAULT +ABS _end - +29: 0+38 +0 TLS +GLOBAL DEFAULT +10 gd0 - +30: 0+58 +0 TLS +GLOBAL DEFAULT +10 ie0 + +[0-9]+: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND + +[0-9]+: 0+5c8 +0 SECTION LOCAL +DEFAULT +6 + +[0-9]+: 0+106c8 +0 SECTION LOCAL +DEFAULT +7 + +[0-9]+: 0+10700 +0 SECTION LOCAL +DEFAULT +8 + +[0-9]+: 0+10850 +0 SECTION LOCAL +DEFAULT +10 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +11 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +15 + +[0-9]+: 0+10700 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC + +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND gd + +[0-9]+: 0+60 +0 TLS +GLOBAL DEFAULT +8 le0 + +[0-9]+: 0+ +24 OBJECT +GLOBAL DEFAULT +UND __tls_get_addr + +[0-9]+: 0+40 +0 TLS +GLOBAL DEFAULT +8 ld0 + +[0-9]+: 0+68 +0 TLS +GLOBAL DEFAULT +8 le1 + +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND ld + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +6 _start + +[0-9]+: 0+50 +0 TLS +GLOBAL DEFAULT +8 ld2 + +[0-9]+: 0+48 +0 TLS +GLOBAL DEFAULT +8 ld1 + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end + +[0-9]+: 0+38 +0 TLS +GLOBAL DEFAULT +8 gd0 + +[0-9]+: 0+58 +0 TLS +GLOBAL DEFAULT +8 ie0 Symbol table '\.symtab' contains 42 entries: +Num: +Value +Size Type +Bind +Vis +Ndx Name - +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND - +1: 0+120 +0 SECTION LOCAL +DEFAULT +1 - +2: 0+1e8 +0 SECTION LOCAL +DEFAULT +2 - +3: 0+4d0 +0 SECTION LOCAL +DEFAULT +3 - +4: 0+528 +0 SECTION LOCAL +DEFAULT +4 - +5: 0+6a8 +0 SECTION LOCAL +DEFAULT +5 - +6: 0+6c0 +0 SECTION LOCAL +DEFAULT +6 - +7: 0+107c0 +0 SECTION LOCAL +DEFAULT +7 - +8: 0+107c0 +0 SECTION LOCAL +DEFAULT +8 - +9: 0+107c0 +0 SECTION LOCAL +DEFAULT +9 - +10: 0+107f8 +0 SECTION LOCAL +DEFAULT +10 - +11: 0+107f8 +0 SECTION LOCAL +DEFAULT +11 - +12: 0+10948 +0 SECTION LOCAL +DEFAULT +12 - +13: 0+109a8 +0 SECTION LOCAL +DEFAULT +13 - +14: 0+109a8 +0 SECTION LOCAL +DEFAULT +14 - +15: 0+109d8 +0 SECTION LOCAL +DEFAULT +15 - +16: 0+ +0 SECTION LOCAL +DEFAULT +16 - +17: 0+ +0 SECTION LOCAL +DEFAULT +17 - +18: 0+ +0 SECTION LOCAL +DEFAULT +18 - +19: 0+ +0 TLS +LOCAL +DEFAULT +9 gd4 - +20: 0+8 +0 TLS +LOCAL +DEFAULT +9 ld4 - +21: 0+10 +0 TLS +LOCAL +DEFAULT +9 ld5 - +22: 0+18 +0 TLS +LOCAL +DEFAULT +9 ld6 - +23: 0+20 +0 TLS +LOCAL +DEFAULT +9 ie4 - +24: 0+28 +0 TLS +LOCAL +DEFAULT +9 le4 - +25: 0+30 +0 TLS +LOCAL +DEFAULT +9 le5 - +26: 0+6c0 +0 NOTYPE +LOCAL +DEFAULT +6 \.__tls_get_addr - +27: 0+107f8 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC - +28: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND gd - +29: 0+60 +0 TLS +GLOBAL DEFAULT +10 le0 - +30: 0+ +24 OBJECT +GLOBAL DEFAULT +UND __tls_get_addr - +31: 0+40 +0 TLS +GLOBAL DEFAULT +10 ld0 - +32: 0+68 +0 TLS +GLOBAL DEFAULT +10 le1 - +33: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND ld - +34: 0+6dc +0 NOTYPE +GLOBAL DEFAULT +6 _start - +35: 0+50 +0 TLS +GLOBAL DEFAULT +10 ld2 - +36: 0+48 +0 TLS +GLOBAL DEFAULT +10 ld1 - +37: 0+109a8 +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start - +38: 0+109a8 +0 NOTYPE +GLOBAL DEFAULT +ABS _edata - +39: 0+109d8 +0 NOTYPE +GLOBAL DEFAULT +ABS _end - +40: 0+38 +0 TLS +GLOBAL DEFAULT +10 gd0 - +41: 0+58 +0 TLS +GLOBAL DEFAULT +10 ie0 + +[0-9]+: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +1 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +2 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +3 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +4 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +5 + +[0-9]+: 0+5c8 +0 SECTION LOCAL +DEFAULT +6 + +[0-9]+: 0+106c8 +0 SECTION LOCAL +DEFAULT +7 + +[0-9]+: 0+10700 +0 SECTION LOCAL +DEFAULT +8 + +[0-9]+: 0+10700 +0 SECTION LOCAL +DEFAULT +9 + +[0-9]+: 0+10850 +0 SECTION LOCAL +DEFAULT +10 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +11 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +12 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +13 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +14 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +15 + +[0-9]+: 0+ +0 SECTION LOCAL +DEFAULT +16 + +[0-9]+: 0+ +0 SECTION LOCAL +DEFAULT +17 + +[0-9]+: 0+ +0 SECTION LOCAL +DEFAULT +18 + +[0-9]+: 0+ +0 TLS +LOCAL +DEFAULT +7 gd4 + +[0-9]+: 0+8 +0 TLS +LOCAL +DEFAULT +7 ld4 + +[0-9]+: 0+10 +0 TLS +LOCAL +DEFAULT +7 ld5 + +[0-9]+: 0+18 +0 TLS +LOCAL +DEFAULT +7 ld6 + +[0-9]+: 0+20 +0 TLS +LOCAL +DEFAULT +7 ie4 + +[0-9]+: 0+28 +0 TLS +LOCAL +DEFAULT +7 le4 + +[0-9]+: 0+30 +0 TLS +LOCAL +DEFAULT +7 le5 + +[0-9]+: [0-9a-f]+ +0 NOTYPE +LOCAL +DEFAULT +6 \.__tls_get_addr + +[0-9]+: 0+10700 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC + +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND gd + +[0-9]+: 0+60 +0 TLS +GLOBAL DEFAULT +8 le0 + +[0-9]+: 0+ +24 OBJECT +GLOBAL DEFAULT +UND __tls_get_addr + +[0-9]+: 0+40 +0 TLS +GLOBAL DEFAULT +8 ld0 + +[0-9]+: 0+68 +0 TLS +GLOBAL DEFAULT +8 le1 + +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND ld + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +6 _start + +[0-9]+: 0+50 +0 TLS +GLOBAL DEFAULT +8 ld2 + +[0-9]+: 0+48 +0 TLS +GLOBAL DEFAULT +8 ld1 + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end + +[0-9]+: 0+38 +0 TLS +GLOBAL DEFAULT +8 gd0 + +[0-9]+: 0+58 +0 TLS +GLOBAL DEFAULT +8 ie0 diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-powerpc/tlsso32.d binutils-2.15.91.0.1/ld/testsuite/ld-powerpc/tlsso32.d --- binutils-2.15.90.0.3/ld/testsuite/ld-powerpc/tlsso32.d 2004-04-12 12:56:37.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-powerpc/tlsso32.d 2004-05-27 11:26:06.292957053 -0700 @@ -8,42 +8,38 @@ Disassembly of section \.text: -0+538 <_start>: - 538: 38 7f 00 1c addi r3,r31,28 - 53c: 48 00 00 01 bl 53c .* - 540: 38 7f 00 0c addi r3,r31,12 - 544: 48 00 00 01 bl 544 .* - 548: 38 7f 00 24 addi r3,r31,36 - 54c: 48 01 01 95 bl 106e0 .* - 550: 38 7f 00 0c addi r3,r31,12 - 554: 48 01 01 8d bl 106e0 .* - 558: 39 23 80 20 addi r9,r3,-32736 - 55c: 3d 23 00 00 addis r9,r3,0 - 560: 81 49 80 24 lwz r10,-32732\(r9\) - 564: 81 3f 00 2c lwz r9,44\(r31\) - 568: 7d 49 12 2e lhzx r10,r9,r2 - 56c: 89 42 00 00 lbz r10,0\(r2\) - 570: 3d 22 00 00 addis r9,r2,0 - 574: 99 49 00 00 stb r10,0\(r9\) - 578: 38 7e 00 14 addi r3,r30,20 - 57c: 48 00 00 01 bl 57c .* - 580: 38 7e 00 0c addi r3,r30,12 - 584: 48 00 00 01 bl 584 .* - 588: 91 43 80 04 stw r10,-32764\(r3\) - 58c: 3d 23 00 00 addis r9,r3,0 - 590: 91 49 80 08 stw r10,-32760\(r9\) - 594: 81 3e 00 2c lwz r9,44\(r30\) - 598: 7d 49 13 2e sthx r10,r9,r2 - 59c: a1 42 00 00 lhz r10,0\(r2\) - 5a0: 3d 22 00 00 addis r9,r2,0 - 5a4: a9 49 00 00 lha r10,0\(r9\) +0+498 <_start>: + 498: 38 7f 00 1c addi r3,r31,28 + 49c: 48 00 00 01 bl 49c .* + 4a0: 38 7f 00 0c addi r3,r31,12 + 4a4: 48 00 00 01 bl 4a4 .* + 4a8: 38 7f 00 24 addi r3,r31,36 + 4ac: 48 01 01 95 bl 10640 .* + 4b0: 38 7f 00 0c addi r3,r31,12 + 4b4: 48 01 01 8d bl 10640 .* + 4b8: 39 23 80 20 addi r9,r3,-32736 + 4bc: 3d 23 00 00 addis r9,r3,0 + 4c0: 81 49 80 24 lwz r10,-32732\(r9\) + 4c4: 81 3f 00 2c lwz r9,44\(r31\) + 4c8: 7d 49 12 2e lhzx r10,r9,r2 + 4cc: 89 42 00 00 lbz r10,0\(r2\) + 4d0: 3d 22 00 00 addis r9,r2,0 + 4d4: 99 49 00 00 stb r10,0\(r9\) + 4d8: 38 7e 00 14 addi r3,r30,20 + 4dc: 48 00 00 01 bl 4dc .* + 4e0: 38 7e 00 0c addi r3,r30,12 + 4e4: 48 00 00 01 bl 4e4 .* + 4e8: 91 43 80 04 stw r10,-32764\(r3\) + 4ec: 3d 23 00 00 addis r9,r3,0 + 4f0: 91 49 80 08 stw r10,-32760\(r9\) + 4f4: 81 3e 00 2c lwz r9,44\(r30\) + 4f8: 7d 49 13 2e sthx r10,r9,r2 + 4fc: a1 42 00 00 lhz r10,0\(r2\) + 500: 3d 22 00 00 addis r9,r2,0 + 504: a9 49 00 00 lha r10,0\(r9\) Disassembly of section \.got: -00010664 <\.got>: - 10664: 4e 80 00 21 blrl - 10668: 00 01 05 c4 \.long 0x105c4 - \.\.\. -Disassembly of section \.plt: - -00010698 <\.plt>: +000105c4 <\.got>: + 105c4: 4e 80 00 21 blrl + 105c8: 00 01 05 24 \.long 0x10524 \.\.\. diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-powerpc/tlsso32.g binutils-2.15.91.0.1/ld/testsuite/ld-powerpc/tlsso32.g --- binutils-2.15.90.0.3/ld/testsuite/ld-powerpc/tlsso32.g 2003-03-19 09:19:17.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-powerpc/tlsso32.g 2004-05-27 11:26:06.310954726 -0700 @@ -7,7 +7,7 @@ .*: +file format elf32-powerpc Contents of section \.got: - 10664 4e800021 000105c4 00000000 00000000 .* - 10674 00000000 00000000 00000000 00000000 .* - 10684 00000000 00000000 00000000 00000000 .* - 10694 00000000 .* + 105c4 4e800021 00010524 00000000 00000000 .* + 105d4 00000000 00000000 00000000 00000000 .* + 105e4 00000000 00000000 00000000 00000000 .* + 105f4 00000000 .* diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-powerpc/tlsso32.r binutils-2.15.91.0.1/ld/testsuite/ld-powerpc/tlsso32.r --- binutils-2.15.90.0.3/ld/testsuite/ld-powerpc/tlsso32.r 2003-03-19 09:19:17.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-powerpc/tlsso32.r 2004-05-27 11:26:06.315954079 -0700 @@ -9,37 +9,37 @@ There are 20 section headers.* Section Headers: +\[Nr\] Name +Type +Addr +Off +Size +ES Flg Lk Inf Al +\[ 0\] +NULL +0+ 0+ 0+ 0+ +0 +0 +0 - +\[ 1\] \.hash +HASH +0+b4 0+b4 0+dc 04 +A +2 +0 +4 - +\[ 2\] \.dynsym +DYNSYM +0+190 0+190 0+240 10 +A +3 +11 +4 - +\[ 3\] \.dynstr +STRTAB +0+3d0 0+3d0 0+81 0+ +A +0 +0 +1 - +\[ 4\] \.rela\.dyn +RELA +0+454 0+454 0+d8 0c +A +2 +0 +4 - +\[ 5\] \.rela\.plt +RELA +0+52c 0+52c 0+c 0c +A +2 +f +4 - +\[ 6\] \.text +PROGBITS +0+538 0+538 0+70 0+ +AX +0 +0 +1 - +\[ 7\] \.data +PROGBITS +0+105a8 0+5a8 0+ 0+ +WA +0 +0 +1 - +\[ 8\] \.tdata +PROGBITS +0+105a8 0+5a8 0+1c 0+ WAT +0 +0 +4 - +\[ 9\] \.tbss +NOBITS +0+105c4 0+5c4 0+1c 0+ WAT +0 +0 +4 - +\[10\] \.dynamic +DYNAMIC +0+105c4 0+5c4 0+a0 08 +WA +3 +0 +4 - +\[11\] \.got +PROGBITS +0+10664 0+664 0+34 04 WAX +0 +0 +4 - +\[12\] \.sdata2 +PROGBITS +0+10698 0+698 0+ 0+ +A +0 +0 +4 - +\[13\] \.sdata +PROGBITS +0+10698 0+698 0+ 0+ +WA +0 +0 +4 - +\[14\] \.sbss +NOBITS +0+10698 0+698 0+ 0+ +WA +0 +0 +1 - +\[15\] \.plt +NOBITS +0+10698 0+698 0+54 0+ WAX +0 +0 +4 - +\[16\] \.bss +NOBITS +0+106ec 0+698 0+ 0+ +WA +0 +0 +1 - +\[17\] \.shstrtab +STRTAB +0+ 0+698 0+86 0+ +0 +0 +1 - +\[18\] \.symtab +SYMTAB +0+ 0+a40 0+2e0 10 +19 +1b +4 - +\[19\] \.strtab +STRTAB +0+ 0+d20 0+a9 0+ +0 +0 +1 + +\[ 1\] \.hash +.* + +\[ 2\] \.dynsym +.* + +\[ 3\] \.dynstr +.* + +\[ 4\] \.rela\.dyn +.* + +\[ 5\] \.rela\.plt +.* + +\[ 6\] \.text +PROGBITS +0+498 0+498 0+70 0+ +AX +0 +0 +1 + +\[ 7\] \.tdata +PROGBITS +0+10508 0+508 0+1c 0+ WAT +0 +0 +4 + +\[ 8\] \.tbss +NOBITS +0+10524 0+524 0+1c 0+ WAT +0 +0 +4 + +\[ 9\] \.dynamic +DYNAMIC +0+10524 0+524 0+a0 08 +WA +3 +0 +4 + +\[10\] \.data +PROGBITS +0+105c4 0+5c4 0+ 0+ +WA +0 +0 +1 + +\[11\] \.got +PROGBITS +0+105c4 0+5c4 0+34 04 WAX +0 +0 +4 + +\[12\] \.sdata2 +.* + +\[13\] \.sdata +.* + +\[14\] \.sbss +.* + +\[15\] \.plt +.* + +\[16\] \.bss +.* + +\[17\] \.shstrtab +.* + +\[18\] \.symtab +.* + +\[19\] \.strtab +.* #... Elf file type is DYN \(Shared object file\) -Entry point 0x538 +Entry point 0x[0-9a-f]+ There are 4 program headers.* Program Headers: +Type +Offset +VirtAddr +PhysAddr +FileSiz MemSiz +Flg Align - +LOAD +0x0+ 0x0+ 0x0+ 0x0+5a8 0x0+5a8 R E 0x10000 - +LOAD +0x0+5a8 0x0+105a8 0x0+105a8 0x0+f0 0x0+144 RWE 0x10000 - +DYNAMIC +0x0+5c4 0x0+105c4 0x0+105c4 0x0+a0 0x0+a0 RW +0x4 - +TLS +0x0+5a8 0x0+105a8 0x0+105a8 0x0+1c 0x0+38 R +0x4 + +LOAD +0x0+ 0x0+ 0x0+ 0x0+508 0x0+508 R E 0x10000 + +LOAD +0x0+508 0x0+10508 0x0+10508 0x0+f0 0x0+144 RWE 0x10000 + +DYNAMIC +0x0+524 0x0+10524 0x0+10524 0x0+a0 0x0+a0 RW +0x4 + +TLS +0x0+508 0x0+10508 0x0+10508 0x0+1c 0x0+38 R +0x4 Section to Segment mapping: +Segment Sections\.\.\. @@ -48,115 +48,107 @@ Program Headers: +02 +\.tbss \.dynamic +03 +\.tdata \.tbss -Relocation section '\.rela\.dyn' at offset 0x454 contains 18 entries: +Relocation section '\.rela\.dyn' at offset 0x[0-9a-f]+ contains 18 entries: Offset +Info +Type +Sym\. Value +Symbol's Name \+ Addend -0+53c +0+140a R_PPC_REL24 +0+ +__tls_get_addr \+ 0 -0+544 +0+140a R_PPC_REL24 +0+ +__tls_get_addr \+ 0 -0+57c +0+140a R_PPC_REL24 +0+ +__tls_get_addr \+ 0 -0+584 +0+140a R_PPC_REL24 +0+ +__tls_get_addr \+ 0 -0+56e +0+1345 R_PPC_TPREL16 +0+30 +le0 \+ 0 -0+572 +0+1648 R_PPC_TPREL16_HA +0+34 +le1 \+ 0 -0+576 +0+1646 R_PPC_TPREL16_LO +0+34 +le1 \+ 0 -0+59e +0+845 R_PPC_TPREL16 +0+105a8 +\.tdata \+ 105bc -0+5a2 +0+848 R_PPC_TPREL16_HA +0+105a8 +\.tdata \+ 105c0 -0+5a6 +0+846 R_PPC_TPREL16_LO +0+105a8 +\.tdata \+ 105c0 -0+10674 +0+44 R_PPC_DTPMOD32 +0+ -0+1067c +0+44 R_PPC_DTPMOD32 +0+ -0+10680 +0+4e R_PPC_DTPREL32 +0+ -0+10684 +0+1244 R_PPC_DTPMOD32 +0+ +gd \+ 0 -0+10688 +0+124e R_PPC_DTPREL32 +0+ +gd \+ 0 -0+1068c +0+2144 R_PPC_DTPMOD32 +0+1c +gd0 \+ 0 -0+10690 +0+214e R_PPC_DTPREL32 +0+1c +gd0 \+ 0 -0+10694 +0+2249 R_PPC_TPREL32 +0+2c +ie0 \+ 0 +0+49c +0+c0a R_PPC_REL24 +0+ +__tls_get_addr \+ 0 +0+4a4 +0+c0a R_PPC_REL24 +0+ +__tls_get_addr \+ 0 +0+4dc +0+c0a R_PPC_REL24 +0+ +__tls_get_addr \+ 0 +0+4e4 +0+c0a R_PPC_REL24 +0+ +__tls_get_addr \+ 0 +0+4ce +0+b45 R_PPC_TPREL16 +0+30 +le0 \+ 0 +0+4d2 +0+e48 R_PPC_TPREL16_HA +0+34 +le1 \+ 0 +0+4d6 +0+e46 R_PPC_TPREL16_LO +0+34 +le1 \+ 0 +0+4fe +0+245 R_PPC_TPREL16 +0+10508 +\.tdata \+ 1051c +0+502 +0+248 R_PPC_TPREL16_HA +0+10508 +\.tdata \+ 10520 +0+506 +0+246 R_PPC_TPREL16_LO +0+10508 +\.tdata \+ 10520 +0+105d4 +0+44 R_PPC_DTPMOD32 +0+ +0+105dc +0+44 R_PPC_DTPMOD32 +0+ +0+105e0 +0+4e R_PPC_DTPREL32 +0+ +0+105e4 +0+a44 R_PPC_DTPMOD32 +0+ +gd \+ 0 +0+105e8 +0+a4e R_PPC_DTPREL32 +0+ +gd \+ 0 +0+105ec +0+1944 R_PPC_DTPMOD32 +0+1c +gd0 \+ 0 +0+105f0 +0+194e R_PPC_DTPREL32 +0+1c +gd0 \+ 0 +0+105f4 +0+1a49 R_PPC_TPREL32 +0+2c +ie0 \+ 0 -Relocation section '\.rela\.plt' at offset 0x52c contains 1 entries: +Relocation section '\.rela\.plt' at offset 0x[0-9a-f]+ contains 1 entries: Offset +Info +Type +Sym\. Value +Symbol's Name \+ Addend -0+106e0 +0+1415 R_PPC_JMP_SLOT +0+ +__tls_get_addr \+ 0 +0+10640 +0+c15 R_PPC_JMP_SLOT +0+ +__tls_get_addr \+ 0 -Symbol table '\.dynsym' contains 36 entries: +Symbol table '\.dynsym' contains 28 entries: +Num: +Value +Size Type +Bind +Vis +Ndx Name - +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND - +1: 0+b4 +0 SECTION LOCAL +DEFAULT +1 - +2: 0+190 +0 SECTION LOCAL +DEFAULT +2 - +3: 0+3d0 +0 SECTION LOCAL +DEFAULT +3 - +4: 0+454 +0 SECTION LOCAL +DEFAULT +4 - +5: 0+52c +0 SECTION LOCAL +DEFAULT +5 - +6: 0+538 +0 SECTION LOCAL +DEFAULT +6 - +7: 0+105a8 +0 SECTION LOCAL +DEFAULT +7 - +8: 0+105a8 +0 SECTION LOCAL +DEFAULT +8 - +9: 0+105c4 +0 SECTION LOCAL +DEFAULT +9 - +10: 0+105c4 +0 SECTION LOCAL +DEFAULT +10 - +11: 0+10664 +0 SECTION LOCAL +DEFAULT +11 - +12: 0+10698 +0 SECTION LOCAL +DEFAULT +12 - +13: 0+10698 +0 SECTION LOCAL +DEFAULT +13 - +14: 0+10698 +0 SECTION LOCAL +DEFAULT +14 - +15: 0+10698 +0 SECTION LOCAL +DEFAULT +15 - +16: 0+106ec +0 SECTION LOCAL +DEFAULT +16 - +17: 0+105c4 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC - +18: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND gd - +19: 0+30 +0 TLS +GLOBAL DEFAULT +9 le0 - +20: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND __tls_get_addr - +21: 0+20 +0 TLS +GLOBAL DEFAULT +9 ld0 - +22: 0+34 +0 TLS +GLOBAL DEFAULT +9 le1 - +23: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND ld - +24: 0+538 +0 NOTYPE +GLOBAL DEFAULT +6 _start - +25: 0+106ec +0 NOTYPE +GLOBAL DEFAULT +ABS __end - +26: 0+18698 +0 OBJECT +GLOBAL DEFAULT +13 _SDA_BASE_ - +27: 0+28 +0 TLS +GLOBAL DEFAULT +9 ld2 - +28: 0+24 +0 TLS +GLOBAL DEFAULT +9 ld1 - +29: 0+10698 +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start - +30: 0+10698 +0 NOTYPE +GLOBAL DEFAULT +ABS _edata - +31: 0+10668 +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_ - +32: 0+106ec +0 NOTYPE +GLOBAL DEFAULT +ABS _end - +33: 0+1c +0 TLS +GLOBAL DEFAULT +9 gd0 - +34: 0+2c +0 TLS +GLOBAL DEFAULT +9 ie0 - +35: 0+18698 +0 OBJECT +GLOBAL DEFAULT +12 _SDA2_BASE_ + +[0-9]+: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND + +[0-9]+: 0+498 +0 SECTION LOCAL +DEFAULT +6 + +[0-9]+: 0+10508 +0 SECTION LOCAL +DEFAULT +7 + +[0-9]+: 0+10524 +0 SECTION LOCAL +DEFAULT +8 + +[0-9]+: 0+105c4 +0 SECTION LOCAL +DEFAULT +10 + +[0-9]+: 0+105f8 +0 SECTION LOCAL +DEFAULT +12 + +[0-9]+: 0+105f8 +0 SECTION LOCAL +DEFAULT +13 + +[0-9]+: 0+105f8 +0 SECTION LOCAL +DEFAULT +14 + +[0-9]+: 0+1064c +0 SECTION LOCAL +DEFAULT +16 + +[0-9]+: 0+10524 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC + +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND gd + +[0-9]+: 0+30 +0 TLS +GLOBAL DEFAULT +8 le0 + +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND __tls_get_addr + +[0-9]+: 0+20 +0 TLS +GLOBAL DEFAULT +8 ld0 + +[0-9]+: 0+34 +0 TLS +GLOBAL DEFAULT +8 le1 + +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND ld + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +6 _start + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __end + +[0-9]+: [0-9a-f]+ +0 OBJECT +GLOBAL DEFAULT +13 _SDA_BASE_ + +[0-9]+: 0+28 +0 TLS +GLOBAL DEFAULT +8 ld2 + +[0-9]+: 0+24 +0 TLS +GLOBAL DEFAULT +8 ld1 + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata + +[0-9]+: 0+105c8 +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_ + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end + +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +8 gd0 + +[0-9]+: 0+2c +0 TLS +GLOBAL DEFAULT +8 ie0 + +[0-9]+: [0-9a-f]+ +0 OBJECT +GLOBAL DEFAULT +12 _SDA2_BASE_ Symbol table '\.symtab' contains 46 entries: +Num: +Value +Size Type +Bind +Vis +Ndx Name - +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND - +1: 0+b4 +0 SECTION LOCAL +DEFAULT +1 - +2: 0+190 +0 SECTION LOCAL +DEFAULT +2 - +3: 0+3d0 +0 SECTION LOCAL +DEFAULT +3 - +4: 0+454 +0 SECTION LOCAL +DEFAULT +4 - +5: 0+52c +0 SECTION LOCAL +DEFAULT +5 - +6: 0+538 +0 SECTION LOCAL +DEFAULT +6 - +7: 0+105a8 +0 SECTION LOCAL +DEFAULT +7 - +8: 0+105a8 +0 SECTION LOCAL +DEFAULT +8 - +9: 0+105c4 +0 SECTION LOCAL +DEFAULT +9 - +10: 0+105c4 +0 SECTION LOCAL +DEFAULT +10 - +11: 0+10664 +0 SECTION LOCAL +DEFAULT +11 - +12: 0+10698 +0 SECTION LOCAL +DEFAULT +12 - +13: 0+10698 +0 SECTION LOCAL +DEFAULT +13 - +14: 0+10698 +0 SECTION LOCAL +DEFAULT +14 - +15: 0+10698 +0 SECTION LOCAL +DEFAULT +15 - +16: 0+106ec +0 SECTION LOCAL +DEFAULT +16 - +17: 0+ +0 SECTION LOCAL +DEFAULT +17 - +18: 0+ +0 SECTION LOCAL +DEFAULT +18 - +19: 0+ +0 SECTION LOCAL +DEFAULT +19 - +20: 0+ +0 TLS +LOCAL +DEFAULT +8 gd4 - +21: 0+4 +0 TLS +LOCAL +DEFAULT +8 ld4 - +22: 0+8 +0 TLS +LOCAL +DEFAULT +8 ld5 - +23: 0+c +0 TLS +LOCAL +DEFAULT +8 ld6 - +24: 0+10 +0 TLS +LOCAL +DEFAULT +8 ie4 - +25: 0+14 +0 TLS +LOCAL +DEFAULT +8 le4 - +26: 0+18 +0 TLS +LOCAL +DEFAULT +8 le5 - +27: 0+105c4 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC - +28: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND gd - +29: 0+30 +0 TLS +GLOBAL DEFAULT +9 le0 - +30: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND __tls_get_addr - +31: 0+20 +0 TLS +GLOBAL DEFAULT +9 ld0 - +32: 0+34 +0 TLS +GLOBAL DEFAULT +9 le1 - +33: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND ld - +34: 0+538 +0 NOTYPE +GLOBAL DEFAULT +6 _start - +35: 0+106ec +0 NOTYPE +GLOBAL DEFAULT +ABS __end - +36: 0+18698 +0 OBJECT +GLOBAL DEFAULT +13 _SDA_BASE_ - +37: 0+28 +0 TLS +GLOBAL DEFAULT +9 ld2 - +38: 0+24 +0 TLS +GLOBAL DEFAULT +9 ld1 - +39: 0+10698 +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start - +40: 0+10698 +0 NOTYPE +GLOBAL DEFAULT +ABS _edata - +41: 0+10668 +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_ - +42: 0+106ec +0 NOTYPE +GLOBAL DEFAULT +ABS _end - +43: 0+1c +0 TLS +GLOBAL DEFAULT +9 gd0 - +44: 0+2c +0 TLS +GLOBAL DEFAULT +9 ie0 - +45: 0+18698 +0 OBJECT +GLOBAL DEFAULT +12 _SDA2_BASE_ + +[0-9]+: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +1 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +2 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +3 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +4 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +5 + +[0-9]+: 0+498 +0 SECTION LOCAL +DEFAULT +6 + +[0-9]+: 0+10508 +0 SECTION LOCAL +DEFAULT +7 + +[0-9]+: 0+10524 +0 SECTION LOCAL +DEFAULT +8 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +9 + +[0-9]+: 0+105c4 +0 SECTION LOCAL +DEFAULT +10 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +11 + +[0-9]+: 0+105f8 +0 SECTION LOCAL +DEFAULT +12 + +[0-9]+: 0+105f8 +0 SECTION LOCAL +DEFAULT +13 + +[0-9]+: 0+105f8 +0 SECTION LOCAL +DEFAULT +14 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +15 + +[0-9]+: 0+1064c +0 SECTION LOCAL +DEFAULT +16 + +[0-9]+: 0+ +0 SECTION LOCAL +DEFAULT +17 + +[0-9]+: 0+ +0 SECTION LOCAL +DEFAULT +18 + +[0-9]+: 0+ +0 SECTION LOCAL +DEFAULT +19 + +[0-9]+: 0+ +0 TLS +LOCAL +DEFAULT +7 gd4 + +[0-9]+: 0+4 +0 TLS +LOCAL +DEFAULT +7 ld4 + +[0-9]+: 0+8 +0 TLS +LOCAL +DEFAULT +7 ld5 + +[0-9]+: 0+c +0 TLS +LOCAL +DEFAULT +7 ld6 + +[0-9]+: 0+10 +0 TLS +LOCAL +DEFAULT +7 ie4 + +[0-9]+: 0+14 +0 TLS +LOCAL +DEFAULT +7 le4 + +[0-9]+: 0+18 +0 TLS +LOCAL +DEFAULT +7 le5 + +[0-9]+: 0+10524 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC + +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND gd + +[0-9]+: 0+30 +0 TLS +GLOBAL DEFAULT +8 le0 + +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND __tls_get_addr + +[0-9]+: 0+20 +0 TLS +GLOBAL DEFAULT +8 ld0 + +[0-9]+: 0+34 +0 TLS +GLOBAL DEFAULT +8 le1 + +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND ld + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +6 _start + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __end + +[0-9]+: [0-9a-f]+ +0 OBJECT +GLOBAL DEFAULT +13 _SDA_BASE_ + +[0-9]+: 0+28 +0 TLS +GLOBAL DEFAULT +8 ld2 + +[0-9]+: 0+24 +0 TLS +GLOBAL DEFAULT +8 ld1 + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata + +[0-9]+: 0+105c8 +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_ + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end + +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +8 gd0 + +[0-9]+: 0+2c +0 TLS +GLOBAL DEFAULT +8 ie0 + +[0-9]+: [0-9a-f]+ +0 OBJECT +GLOBAL DEFAULT +12 _SDA2_BASE_ diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-powerpc/tlsso32.t binutils-2.15.91.0.1/ld/testsuite/ld-powerpc/tlsso32.t --- binutils-2.15.90.0.3/ld/testsuite/ld-powerpc/tlsso32.t 2003-03-19 09:19:17.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-powerpc/tlsso32.t 2004-05-27 11:26:06.325952786 -0700 @@ -7,5 +7,5 @@ .*: +file format elf32-powerpc Contents of section \.tdata: - 105a8 12345678 23456789 3456789a 456789ab .* - 105b8 56789abc 6789abcd 789abcde .* + 10508 12345678 23456789 3456789a 456789ab .* + 10518 56789abc 6789abcd 789abcde .* diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-powerpc/tlstocso.g binutils-2.15.91.0.1/ld/testsuite/ld-powerpc/tlstocso.g --- binutils-2.15.90.0.3/ld/testsuite/ld-powerpc/tlstocso.g 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-powerpc/tlstocso.g 2004-05-27 11:26:06.334951622 -0700 @@ -7,9 +7,9 @@ .*: +file format elf64-powerpc Contents of section \.got: - 10890 00000000 00018890 00000000 00000000 .* - 108a0 00000000 00000000 00000000 00000000 .* - 108b0 00000000 00000000 00000000 00000000 .* - 108c0 00000000 00000000 00000000 00000000 .* - 108d0 00000000 00000000 00000000 00000000 .* - 108e0 00000000 00000000 .* + 10798 00000000 00018798 00000000 00000000 .* + 107a8 00000000 00000000 00000000 00000000 .* + 107b8 00000000 00000000 00000000 00000000 .* + 107c8 00000000 00000000 00000000 00000000 .* + 107d8 00000000 00000000 00000000 00000000 .* + 107e8 00000000 00000000 .* diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-powerpc/tlstocso.r binutils-2.15.91.0.1/ld/testsuite/ld-powerpc/tlstocso.r --- binutils-2.15.90.0.3/ld/testsuite/ld-powerpc/tlstocso.r 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-powerpc/tlstocso.r 2004-05-27 11:26:06.338951105 -0700 @@ -9,36 +9,36 @@ There are 19 section headers.* Section Headers: +\[Nr\] Name +Type +Address +Off +Size +ES Flg Lk Inf Al +\[ 0\] +NULL +0+ 0+ 0+ 0+ +0 +0 +0 - +\[ 1\] \.hash +HASH +0+120 0+120 0+c8 04 +A +2 +0 +8 - +\[ 2\] \.dynsym +DYNSYM +0+1e8 0+1e8 0+2e8 18 +A +3 +10 +8 - +\[ 3\] \.dynstr +STRTAB +0+4d0 0+4d0 0+53 0+ +A +0 +0 +1 - +\[ 4\] \.rela\.dyn +RELA +0+528 0+528 0+108 18 +A +2 +0 +8 - +\[ 5\] \.rela\.plt +RELA +0+630 0+630 0+18 18 +A +2 +e +8 - +\[ 6\] \.text +PROGBITS +0+648 0+648 0+bc 0+ +AX +0 +0 +4 - +\[ 7\] \.data +PROGBITS +0+10708 0+708 0+ 0+ +WA +0 +0 +1 - +\[ 8\] \.branch_lt +PROGBITS +0+10708 0+708 0+ 0+ +WA +0 +0 +8 - +\[ 9\] \.tdata +PROGBITS +0+10708 0+708 0+38 0+ WAT +0 +0 +8 - +\[10\] \.tbss +NOBITS +0+10740 0+740 0+38 0+ WAT +0 +0 +8 - +\[11\] \.dynamic +DYNAMIC +0+10740 0+740 0+150 10 +WA +3 +0 +8 - +\[12\] \.got +PROGBITS +0+10890 0+890 0+58 08 +WA +0 +0 +8 - +\[13\] \.sbss +NOBITS +0+108e8 0+8e8 0+ 0+ +W +0 +0 +1 - +\[14\] \.plt +NOBITS +0+108e8 0+8e8 0+30 18 +WA +0 +0 +8 - +\[15\] \.bss +NOBITS +0+10918 0+8e8 0+ 0+ +WA +0 +0 +1 - +\[16\] \.shstrtab +STRTAB +0+ 0+8e8 0+82 0+ +0 +0 +1 - +\[17\] \.symtab +SYMTAB +0+ 0+e30 0+408 18 +18 +1c +8 - +\[18\] \.strtab +STRTAB +0+ 0+1238 0+8c 0+ +0 +0 +1 + +\[ 1\] \.hash +.* + +\[ 2\] \.dynsym +.* + +\[ 3\] \.dynstr +.* + +\[ 4\] \.rela\.dyn +.* + +\[ 5\] \.rela\.plt +.* + +\[ 6\] \.text +PROGBITS +0+550 0+550 0+bc 0+ +AX +0 +0 +4 + +\[ 7\] \.tdata +PROGBITS +0+10610 0+610 0+38 0+ WAT +0 +0 +8 + +\[ 8\] \.tbss +NOBITS +0+10648 0+648 0+38 0+ WAT +0 +0 +8 + +\[ 9\] \.dynamic +DYNAMIC +0+10648 0+648 0+150 10 +WA +3 +0 +8 + +\[10\] \.data +PROGBITS +0+10798 0+798 0+ 0+ +WA +0 +0 +1 + +\[11\] \.branch_lt +.* + +\[12\] \.got +PROGBITS +0+10798 0+798 0+58 08 +WA +0 +0 +8 + +\[13\] \.sbss +.* + +\[14\] \.plt +.* + +\[15\] \.bss +.* + +\[16\] \.shstrtab +.* + +\[17\] \.symtab +.* + +\[18\] \.strtab +.* #... Elf file type is DYN \(Shared object file\) -Entry point 0x664 +Entry point 0x[0-9a-f]+ There are 4 program headers.* Program Headers: +Type +Offset +VirtAddr +PhysAddr +FileSiz +MemSiz +Flg Align - +LOAD +0x0+ 0x0+ 0x0+ 0x0+704 0x0+704 R E 0x10000 - +LOAD +0x0+708 0x0+10708 0x0+10708 0x0+1e0 0x0+210 RW +0x10000 - +DYNAMIC +0x0+740 0x0+10740 0x0+10740 0x0+150 0x0+150 RW +0x8 - +TLS +0x0+708 0x0+10708 0x0+10708 0x0+38 0x0+70 R +0x8 + +LOAD +0x0+ 0x0+ 0x0+ 0x0+60c 0x0+60c R E 0x10000 + +LOAD +0x0+610 0x0+10610 0x0+10610 0x0+1e0 0x0+210 RW +0x10000 + +DYNAMIC +0x0+648 0x0+10648 0x0+10648 0x0+150 0x0+150 RW +0x8 + +TLS +0x0+610 0x0+10610 0x0+10610 0x0+38 0x0+70 R +0x8 Section to Segment mapping: +Segment Sections\.\.\. @@ -49,98 +49,89 @@ Program Headers: Relocation section '\.rela\.dyn' at offset .* contains 11 entries: +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend -0+6b2 +0+1200000045 R_PPC64_TPREL16 +0+60 le0 \+ 0 -0+6b6 +0+1500000048 R_PPC64_TPREL16_HA +0+68 le1 \+ 0 -0+6ba +0+1500000046 R_PPC64_TPREL16_LO +0+68 le1 \+ 0 -0+10898 +0+1100000044 R_PPC64_DTPMOD64 +0+ gd \+ 0 -0+108a0 +0+110000004e R_PPC64_DTPREL64 +0+ gd \+ 0 -0+108a8 +0+1600000044 R_PPC64_DTPMOD64 +0+ ld \+ 0 -0+108b8 +0+1d00000044 R_PPC64_DTPMOD64 +0+38 gd0 \+ 0 -0+108c0 +0+1d0000004e R_PPC64_DTPREL64 +0+38 gd0 \+ 0 -0+108c8 +0+1400000044 R_PPC64_DTPMOD64 +0+40 ld0 \+ 0 -0+108d8 +0+180000004e R_PPC64_DTPREL64 +0+50 ld2 \+ 0 -0+108e0 +0+1e00000049 R_PPC64_TPREL64 +0+58 ie0 \+ 0 +0+5ba +0+90+45 R_PPC64_TPREL16 +0+60 le0 \+ 0 +0+5be +0+c0+48 R_PPC64_TPREL16_HA +0+68 le1 \+ 0 +0+5c2 +0+c0+46 R_PPC64_TPREL16_LO +0+68 le1 \+ 0 +0+107a0 +0+80+44 R_PPC64_DTPMOD64 +0+ gd \+ 0 +0+107a8 +0+80+4e R_PPC64_DTPREL64 +0+ gd \+ 0 +0+107b0 +0+d0+44 R_PPC64_DTPMOD64 +0+ ld \+ 0 +0+107c0 +0+140+44 R_PPC64_DTPMOD64 +0+38 gd0 \+ 0 +0+107c8 +0+140+4e R_PPC64_DTPREL64 +0+38 gd0 \+ 0 +0+107d0 +0+b0+44 R_PPC64_DTPMOD64 +0+40 ld0 \+ 0 +0+107e0 +0+f0+4e R_PPC64_DTPREL64 +0+50 ld2 \+ 0 +0+107e8 +0+150+49 R_PPC64_TPREL64 +0+58 ie0 \+ 0 Relocation section '\.rela\.plt' at offset .* contains 1 entries: +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend -0+10900 +0+1300000015 R_PPC64_JMP_SLOT +0+ __tls_get_addr \+ 0 +0+10808 +0+a0+15 R_PPC64_JMP_SLOT +0+ __tls_get_addr \+ 0 -Symbol table '\.dynsym' contains 31 entries: +Symbol table '\.dynsym' contains 22 entries: +Num: +Value +Size Type +Bind +Vis +Ndx Name - +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND - +1: 0+120 +0 SECTION LOCAL +DEFAULT +1 - +2: 0+1e8 +0 SECTION LOCAL +DEFAULT +2 - +3: 0+4d0 +0 SECTION LOCAL +DEFAULT +3 - +4: 0+528 +0 SECTION LOCAL +DEFAULT +4 - +5: 0+630 +0 SECTION LOCAL +DEFAULT +5 - +6: 0+648 +0 SECTION LOCAL +DEFAULT +6 - +7: 0+10708 +0 SECTION LOCAL +DEFAULT +7 - +8: 0+10708 +0 SECTION LOCAL +DEFAULT +8 - +9: 0+10708 +0 SECTION LOCAL +DEFAULT +9 - +10: 0+10740 +0 SECTION LOCAL +DEFAULT +10 - +11: 0+10740 +0 SECTION LOCAL +DEFAULT +11 - +12: 0+10890 +0 SECTION LOCAL +DEFAULT +12 - +13: 0+108e8 +0 SECTION LOCAL +DEFAULT +13 - +14: 0+108e8 +0 SECTION LOCAL +DEFAULT +14 - +15: 0+10918 +0 SECTION LOCAL +DEFAULT +15 - +16: 0+10740 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC - +17: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND gd - +18: 0+60 +0 TLS +GLOBAL DEFAULT +10 le0 - +19: 0+ +24 OBJECT +GLOBAL DEFAULT +UND __tls_get_addr - +20: 0+40 +0 TLS +GLOBAL DEFAULT +10 ld0 - +21: 0+68 +0 TLS +GLOBAL DEFAULT +10 le1 - +22: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND ld - +23: 0+664 +0 NOTYPE +GLOBAL DEFAULT +6 _start - +24: 0+50 +0 TLS +GLOBAL DEFAULT +10 ld2 - +25: 0+48 +0 TLS +GLOBAL DEFAULT +10 ld1 - +26: 0+108e8 +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start - +27: 0+108e8 +0 NOTYPE +GLOBAL DEFAULT +ABS _edata - +28: 0+10918 +0 NOTYPE +GLOBAL DEFAULT +ABS _end - +29: 0+38 +0 TLS +GLOBAL DEFAULT +10 gd0 - +30: 0+58 +0 TLS +GLOBAL DEFAULT +10 ie0 + +[0-9]+: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND + +[0-9]+: 0+550 +0 SECTION LOCAL +DEFAULT +6 + +[0-9]+: 0+10610 +0 SECTION LOCAL +DEFAULT +7 + +[0-9]+: 0+10648 +0 SECTION LOCAL +DEFAULT +8 + +[0-9]+: 0+10798 +0 SECTION LOCAL +DEFAULT +10 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +11 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +15 + +[0-9]+: 0+10648 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC + +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND gd + +[0-9]+: 0+60 +0 TLS +GLOBAL DEFAULT +8 le0 + +[0-9]+: 0+ +24 OBJECT +GLOBAL DEFAULT +UND __tls_get_addr + +[0-9]+: 0+40 +0 TLS +GLOBAL DEFAULT +8 ld0 + +[0-9]+: 0+68 +0 TLS +GLOBAL DEFAULT +8 le1 + +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND ld + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +6 _start + +[0-9]+: 0+50 +0 TLS +GLOBAL DEFAULT +8 ld2 + +[0-9]+: 0+48 +0 TLS +GLOBAL DEFAULT +8 ld1 + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end + +[0-9]+: 0+38 +0 TLS +GLOBAL DEFAULT +8 gd0 + +[0-9]+: 0+58 +0 TLS +GLOBAL DEFAULT +8 ie0 Symbol table '\.symtab' contains 43 entries: +Num: +Value +Size Type +Bind +Vis +Ndx Name - +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND - +1: 0+120 +0 SECTION LOCAL +DEFAULT +1 - +2: 0+1e8 +0 SECTION LOCAL +DEFAULT +2 - +3: 0+4d0 +0 SECTION LOCAL +DEFAULT +3 - +4: 0+528 +0 SECTION LOCAL +DEFAULT +4 - +5: 0+630 +0 SECTION LOCAL +DEFAULT +5 - +6: 0+648 +0 SECTION LOCAL +DEFAULT +6 - +7: 0+10708 +0 SECTION LOCAL +DEFAULT +7 - +8: 0+10708 +0 SECTION LOCAL +DEFAULT +8 - +9: 0+10708 +0 SECTION LOCAL +DEFAULT +9 - +10: 0+10740 +0 SECTION LOCAL +DEFAULT +10 - +11: 0+10740 +0 SECTION LOCAL +DEFAULT +11 - +12: 0+10890 +0 SECTION LOCAL +DEFAULT +12 - +13: 0+108e8 +0 SECTION LOCAL +DEFAULT +13 - +14: 0+108e8 +0 SECTION LOCAL +DEFAULT +14 - +15: 0+10918 +0 SECTION LOCAL +DEFAULT +15 - +16: 0+ +0 SECTION LOCAL +DEFAULT +16 - +17: 0+ +0 SECTION LOCAL +DEFAULT +17 - +18: 0+ +0 SECTION LOCAL +DEFAULT +18 - +19: 0+ +0 TLS +LOCAL +DEFAULT +9 gd4 - +20: 0+8 +0 TLS +LOCAL +DEFAULT +9 ld4 - +21: 0+10 +0 TLS +LOCAL +DEFAULT +9 ld5 - +22: 0+18 +0 TLS +LOCAL +DEFAULT +9 ld6 - +23: 0+20 +0 TLS +LOCAL +DEFAULT +9 ie4 - +24: 0+28 +0 TLS +LOCAL +DEFAULT +9 le4 - +25: 0+30 +0 TLS +LOCAL +DEFAULT +9 le5 - +26: 0+108e0 +0 NOTYPE +LOCAL +DEFAULT +12 \.Lie0 - +27: 0+648 +0 NOTYPE +LOCAL +DEFAULT +6 \.__tls_get_addr - +28: 0+10740 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC - +29: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND gd - +30: 0+60 +0 TLS +GLOBAL DEFAULT +10 le0 - +31: 0+ +24 OBJECT +GLOBAL DEFAULT +UND __tls_get_addr - +32: 0+40 +0 TLS +GLOBAL DEFAULT +10 ld0 - +33: 0+68 +0 TLS +GLOBAL DEFAULT +10 le1 - +34: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND ld - +35: 0+664 +0 NOTYPE +GLOBAL DEFAULT +6 _start - +36: 0+50 +0 TLS +GLOBAL DEFAULT +10 ld2 - +37: 0+48 +0 TLS +GLOBAL DEFAULT +10 ld1 - +38: 0+108e8 +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start - +39: 0+108e8 +0 NOTYPE +GLOBAL DEFAULT +ABS _edata - +40: 0+10918 +0 NOTYPE +GLOBAL DEFAULT +ABS _end - +41: 0+38 +0 TLS +GLOBAL DEFAULT +10 gd0 - +42: 0+58 +0 TLS +GLOBAL DEFAULT +10 ie0 + +[0-9]+: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND + +[0-9]+: 0+120 +0 SECTION LOCAL +DEFAULT +1 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +2 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +3 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +4 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +5 + +[0-9]+: 0+550 +0 SECTION LOCAL +DEFAULT +6 + +[0-9]+: 0+10610 +0 SECTION LOCAL +DEFAULT +7 + +[0-9]+: 0+10648 +0 SECTION LOCAL +DEFAULT +8 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +9 + +[0-9]+: 0+10798 +0 SECTION LOCAL +DEFAULT +10 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +11 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +12 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +13 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +14 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +15 + +[0-9]+: 0+ +0 SECTION LOCAL +DEFAULT +16 + +[0-9]+: 0+ +0 SECTION LOCAL +DEFAULT +17 + +[0-9]+: 0+ +0 SECTION LOCAL +DEFAULT +18 + +[0-9]+: 0+ +0 TLS +LOCAL +DEFAULT +7 gd4 + +[0-9]+: 0+8 +0 TLS +LOCAL +DEFAULT +7 ld4 + +[0-9]+: 0+10 +0 TLS +LOCAL +DEFAULT +7 ld5 + +[0-9]+: 0+18 +0 TLS +LOCAL +DEFAULT +7 ld6 + +[0-9]+: 0+20 +0 TLS +LOCAL +DEFAULT +7 ie4 + +[0-9]+: 0+28 +0 TLS +LOCAL +DEFAULT +7 le4 + +[0-9]+: 0+30 +0 TLS +LOCAL +DEFAULT +7 le5 + +[0-9]+: [0-9a-f]+ +0 NOTYPE +LOCAL +DEFAULT +12 \.Lie0 + +[0-9]+: [0-9a-f]+ +0 NOTYPE +LOCAL +DEFAULT +6 \.__tls_get_addr + +[0-9]+: 0+10648 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC + +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND gd + +[0-9]+: 0+60 +0 TLS +GLOBAL DEFAULT +8 le0 + +[0-9]+: 0+ +24 OBJECT +GLOBAL DEFAULT +UND __tls_get_addr + +[0-9]+: 0+40 +0 TLS +GLOBAL DEFAULT +8 ld0 + +[0-9]+: 0+68 +0 TLS +GLOBAL DEFAULT +8 le1 + +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND ld + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +6 _start + +[0-9]+: 0+50 +0 TLS +GLOBAL DEFAULT +8 ld2 + +[0-9]+: 0+48 +0 TLS +GLOBAL DEFAULT +8 ld1 + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end + +[0-9]+: 0+38 +0 TLS +GLOBAL DEFAULT +8 gd0 + +[0-9]+: 0+58 +0 TLS +GLOBAL DEFAULT +8 ie0 diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlsbin.dd binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlsbin.dd --- binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlsbin.dd 2003-03-19 09:19:17.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlsbin.dd 2004-05-27 11:26:06.413941408 -0700 @@ -18,168 +18,176 @@ Disassembly of section .text: -0+4002e4 : +0+[0-9a-f]+ : # function prolog - +4002e4: 90 6e f0 18 stm %r6,%r14,24\(%r15\) - +4002e8: a7 d5 00 24 bras %r13,400330 + +[0-9a-f]+: 90 6e f0 18 stm %r6,%r14,24\(%r15\) + +[0-9a-f]+: a7 d5 00 24 bras %r13,[0-9a-f]+ # _GLOBAL_OFFSET_TABLE_ - +4002ec: 00 00 12 90 .long 0x00001290 + +[0-9a-f]+: [0-9a-f ]+ .long 0x[0-9a-f]+ # __tls_get_addr@plt-.LT1 - +4002f0: ff ff ff d8 .long 0xffffffd8 + +[0-9a-f]+: [0-9a-f ]+ .long 0x[0-9a-f]+ # sG1@tlsgd - +4002f4: 00 00 00 28 .long 0x00000028 + +[0-9a-f]+: 00 00 00 28 .long 0x00000028 # sG2@tlsgd - +4002f8: 00 00 00 20 .long 0x00000020 + +[0-9a-f]+: 00 00 00 20 .long 0x00000020 # sg1@tlsgd - +4002fc: ff ff ff 60 .long 0xffffff60 + +[0-9a-f]+: ff ff ff 60 .long 0xffffff60 # sl1@tlsgd - +400300: ff ff ff 80 .long 0xffffff80 + +[0-9a-f]+: ff ff ff 80 .long 0xffffff80 # sh1@tlsgd - +400304: ff ff ff a0 .long 0xffffffa0 + +[0-9a-f]+: ff ff ff a0 .long 0xffffffa0 # sl1@tlsldm - +400308: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 # sl1@dtpoff - +40030c: ff ff ff 80 .long 0xffffff80 + +[0-9a-f]+: ff ff ff 80 .long 0xffffff80 # sl2@dtpoff - +400310: ff ff ff 84 .long 0xffffff84 + +[0-9a-f]+: ff ff ff 84 .long 0xffffff84 # sh1@tlsldm - +400314: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 # sh1@dtpoff - +400318: ff ff ff a0 .long 0xffffffa0 + +[0-9a-f]+: ff ff ff a0 .long 0xffffffa0 # sh2@dtpoff - +40031c: ff ff ff a4 .long 0xffffffa4 + +[0-9a-f]+: ff ff ff a4 .long 0xffffffa4 # sG2@gotntpoff - +400320: 00 00 00 20 .long 0x00000020 + +[0-9a-f]+: 00 00 00 20 .long 0x00000020 # sg1@gotntpoff - +400324: ff ff ff 60 .long 0xffffff60 + +[0-9a-f]+: ff ff ff 60 .long 0xffffff60 # sl1@gotntpoff - +400328: ff ff ff 80 .long 0xffffff80 + +[0-9a-f]+: ff ff ff 80 .long 0xffffff80 # sh1@gotntpoff - +40032c: ff ff ff a0 .long 0xffffffa0 + +[0-9a-f]+: ff ff ff a0 .long 0xffffffa0 # function prolog - +400330: 18 ef lr %r14,%r15 - +400332: 58 c0 d0 00 l %r12,0\(%r13\) - +400336: a7 fa ff a0 ahi %r15,-96 - +40033a: 41 cc d0 00 la %r12,0\(%r12,%r13\) - +40033e: 50 e0 e0 00 st %r14,0\(%r14\) + +[0-9a-f]+: 18 ef lr %r14,%r15 + +[0-9a-f]+: 58 c0 d0 00 l %r12,0\(%r13\) + +[0-9a-f]+: a7 fa ff a0 ahi %r15,-96 + +[0-9a-f]+: 41 cc d0 00 la %r12,0\(%r12,%r13\) + +[0-9a-f]+: 50 e0 e0 00 st %r14,0\(%r14\) # Extract TCB and load branch offset - +400342: b2 4f 00 90 ear %r9,%a0 - +400346: 58 70 d0 04 l %r7,4\(%r13\) + +[0-9a-f]+: b2 4f 00 90 ear %r9,%a0 + +[0-9a-f]+: 58 70 d0 04 l %r7,4\(%r13\) # GD -> IE because variable is not defined in executable - +40034a: 58 20 d0 08 l %r2,8\(%r13\) - +40034e: 58 22 c0 00 l %r2,0\(%r2,%r12\) - +400352: 41 22 90 00 la %r2,0\(%r2,%r9\) + +[0-9a-f]+: 58 20 d0 08 l %r2,8\(%r13\) + +[0-9a-f]+: 58 22 c0 00 l %r2,0\(%r2,%r12\) + +[0-9a-f]+: 41 22 90 00 la %r2,0\(%r2,%r9\) # GD -> IE because variable is not defined in executable where # the variable is referenced through IE too - +400356: 58 20 d0 0c l %r2,12\(%r13\) - +40035a: 58 22 c0 00 l %r2,0\(%r2,%r12\) - +40035e: 41 22 90 00 la %r2,0\(%r2,%r9\) + +[0-9a-f]+: 58 20 d0 0c l %r2,12\(%r13\) + +[0-9a-f]+: 58 22 c0 00 l %r2,0\(%r2,%r12\) + +[0-9a-f]+: 41 22 90 00 la %r2,0\(%r2,%r9\) # GD -> LE with global variable defined in executable - +400362: 58 20 d0 10 l %r2,16\(%r13\) - +400366: 47 00 00 00 bc 0,0 - +40036a: 41 22 90 00 la %r2,0\(%r2,%r9\) + +[0-9a-f]+: 58 20 d0 10 l %r2,16\(%r13\) + +[0-9a-f]+: 47 00 00 00 bc 0,0 + +[0-9a-f]+: 41 22 90 00 la %r2,0\(%r2,%r9\) # GD -> LE with local variable defined in executable - +40036e: 58 20 d0 14 l %r2,20\(%r13\) - +400372: 47 00 00 00 bc 0,0 - +400376: 41 22 90 00 la %r2,0\(%r2,%r9\) + +[0-9a-f]+: 58 20 d0 14 l %r2,20\(%r13\) + +[0-9a-f]+: 47 00 00 00 bc 0,0 + +[0-9a-f]+: 41 22 90 00 la %r2,0\(%r2,%r9\) # GD -> LE with hidden variable defined in executable - +40037a: 58 20 d0 18 l %r2,24\(%r13\) - +40037e: 47 00 00 00 bc 0,0 - +400382: 41 22 90 00 la %r2,0\(%r2,%r9\) + +[0-9a-f]+: 58 20 d0 18 l %r2,24\(%r13\) + +[0-9a-f]+: 47 00 00 00 bc 0,0 + +[0-9a-f]+: 41 22 90 00 la %r2,0\(%r2,%r9\) # LD -> LE - +400386: 58 20 d0 1c l %r2,28\(%r13\) - +40038a: 47 00 00 00 bc 0,0 - +40038e: 41 32 90 00 la %r3,0\(%r2,%r9\) - +400392: 58 40 d0 20 l %r4,32\(%r13\) - +400396: 41 54 30 00 la %r5,0\(%r4,%r3\) - +40039a: 58 40 d0 24 l %r4,36\(%r13\) - +40039e: 41 54 30 00 la %r5,0\(%r4,%r3\) + +[0-9a-f]+: 58 20 d0 1c l %r2,28\(%r13\) + +[0-9a-f]+: 47 00 00 00 bc 0,0 + +[0-9a-f]+: 41 32 90 00 la %r3,0\(%r2,%r9\) + +[0-9a-f]+: 58 40 d0 20 l %r4,32\(%r13\) + +[0-9a-f]+: 41 54 30 00 la %r5,0\(%r4,%r3\) + +[0-9a-f]+: 58 40 d0 24 l %r4,36\(%r13\) + +[0-9a-f]+: 41 54 30 00 la %r5,0\(%r4,%r3\) # LD -> LE against hidden variables - +4003a2: 58 20 d0 28 l %r2,40\(%r13\) - +4003a6: 47 00 00 00 bc 0,0 - +4003aa: 41 32 90 00 la %r3,0\(%r2,%r9\) - +4003ae: 58 40 d0 2c l %r4,44\(%r13\) - +4003b2: 41 54 30 00 la %r5,0\(%r4,%r3\) - +4003b6: 58 40 d0 30 l %r4,48\(%r13\) - +4003ba: 41 54 30 00 la %r5,0\(%r4,%r3\) + +[0-9a-f]+: 58 20 d0 28 l %r2,40\(%r13\) + +[0-9a-f]+: 47 00 00 00 bc 0,0 + +[0-9a-f]+: 41 32 90 00 la %r3,0\(%r2,%r9\) + +[0-9a-f]+: 58 40 d0 2c l %r4,44\(%r13\) + +[0-9a-f]+: 41 54 30 00 la %r5,0\(%r4,%r3\) + +[0-9a-f]+: 58 40 d0 30 l %r4,48\(%r13\) + +[0-9a-f]+: 41 54 30 00 la %r5,0\(%r4,%r3\) # IE against global var - +4003be: 58 30 d0 34 l %r3,52\(%r13\) - +4003c2: 58 33 c0 00 l %r3,0\(%r3,%r12\) - +4003c6: 58 33 90 00 l %r3,0\(%r3,%r9\) + +[0-9a-f]+: 58 30 d0 34 l %r3,52\(%r13\) + +[0-9a-f]+: 58 33 c0 00 l %r3,0\(%r3,%r12\) + +[0-9a-f]+: 58 33 90 00 l %r3,0\(%r3,%r9\) # IE -> LE against global var defined in exec - +4003ca: 58 30 d0 38 l %r3,56\(%r13\) - +4003ce: 18 43 lr %r4,%r3 - +4003d0: 07 00 bcr 0,%r0 - +4003d2: 41 54 90 00 la %r5,0\(%r4,%r9\) + +[0-9a-f]+: 58 30 d0 38 l %r3,56\(%r13\) + +[0-9a-f]+: 18 43 lr %r4,%r3 + +[0-9a-f]+: 07 00 bcr 0,%r0 + +[0-9a-f]+: 41 54 90 00 la %r5,0\(%r4,%r9\) # IE -> LE against local var - +4003d6: 58 30 d0 3c l %r3,60\(%r13\) - +4003da: 18 43 lr %r4,%r3 - +4003dc: 07 00 bcr 0,%r0 - +4003de: 41 54 90 00 la %r5,0\(%r4,%r9\) + +[0-9a-f]+: 58 30 d0 3c l %r3,60\(%r13\) + +[0-9a-f]+: 18 43 lr %r4,%r3 + +[0-9a-f]+: 07 00 bcr 0,%r0 + +[0-9a-f]+: 41 54 90 00 la %r5,0\(%r4,%r9\) # IE -> LE against hidden var - +4003e2: 58 30 d0 40 l %r3,64\(%r13\) - +4003e6: 18 43 lr %r4,%r3 - +4003e8: 07 00 bcr 0,%r0 - +4003ea: 41 54 90 00 la %r5,0\(%r4,%r9\) + +[0-9a-f]+: 58 30 d0 40 l %r3,64\(%r13\) + +[0-9a-f]+: 18 43 lr %r4,%r3 + +[0-9a-f]+: 07 00 bcr 0,%r0 + +[0-9a-f]+: 41 54 90 00 la %r5,0\(%r4,%r9\) # IE against global var with small got access (no optimization) - +4003ee: 58 30 c0 14 l %r3,20\(%r12\) - +4003f2: 41 33 90 00 la %r3,0\(%r3,%r9\) + +[0-9a-f]+: 58 30 c0 14 l %r3,20\(%r12\) + +[0-9a-f]+: 41 33 90 00 la %r3,0\(%r3,%r9\) # IE against global var defined in exec with small got access # (no optimization) - +4003f6: 58 30 c0 18 l %r3,24\(%r12\) - +4003fa: 41 33 90 00 la %r3,0\(%r3,%r9\) + +[0-9a-f]+: 58 30 c0 18 l %r3,24\(%r12\) + +[0-9a-f]+: 41 33 90 00 la %r3,0\(%r3,%r9\) # IE against local var with small got access (no optimization) - +4003fe: 58 30 c0 10 l %r3,16\(%r12\) - +400402: 41 33 90 00 la %r3,0\(%r3,%r9\) + +[0-9a-f]+: 58 30 c0 10 l %r3,16\(%r12\) + +[0-9a-f]+: 41 33 90 00 la %r3,0\(%r3,%r9\) # IE against hidden var with small got access (no optimization) - +400406: 58 30 c0 1c l %r3,28\(%r12\) - +40040a: 41 33 90 00 la %r3,0\(%r3,%r9\) + +[0-9a-f]+: 58 30 c0 1c l %r3,28\(%r12\) + +[0-9a-f]+: 41 33 90 00 la %r3,0\(%r3,%r9\) # function epilog - +40040e: 98 6e f0 78 lm %r6,%r14,120\(%r15\) - +400412: 07 fe br %r14 + +[0-9a-f]+: 98 6e f0 78 lm %r6,%r14,120\(%r15\) + +[0-9a-f]+: 07 fe br %r14 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 -0+400414 <_start>: +0+[0-9a-f]+ <_start>: # function prolog - +400414: 90 6e f0 18 stm %r6,%r14,24\(%r15\) - +400418: a7 d5 00 0c bras %r13,400430 <_start\+0x1c> + +[0-9a-f]+: 90 6e f0 18 stm %r6,%r14,24\(%r15\) + +[0-9a-f]+: a7 d5 00 0c bras %r13,[0-9a-f]+ <_start\+0x1c> # sG6@indntpoff - +40041c: 00 40 15 a0 .long 0x004015a0 + +[0-9a-f]+: 00 40 15 e4 .long 0x004015e4 # bg6@indntpoff - +400420: ff ff ff d4 .long 0xffffffd4 + +[0-9a-f]+: ff ff ff d4 .long 0xffffffd4 # bl6@indntpoff - +400424: ff ff ff f4 .long 0xfffffff4 + +[0-9a-f]+: ff ff ff f4 .long 0xfffffff4 # sh6@indntpoff - +400428: ff ff ff b4 .long 0xffffffb4 + +[0-9a-f]+: ff ff ff b4 .long 0xffffffb4 # sg3@indntpoff - +40042c: ff ff ff 68 .long 0xffffff68 + +[0-9a-f]+: ff ff ff 68 .long 0xffffff68 # function prolog - +400430: 18 ef lr %r14,%r15 - +400432: a7 fa ff a0 ahi %r15,-96 - +400436: 50 e0 e0 00 st %r14,0\(%r14\) + +[0-9a-f]+: 18 ef lr %r14,%r15 + +[0-9a-f]+: a7 fa ff a0 ahi %r15,-96 + +[0-9a-f]+: 50 e0 e0 00 st %r14,0\(%r14\) # Extract TCB - +40043a: b2 4f 00 90 ear %r9,%a0 + +[0-9a-f]+: b2 4f 00 90 ear %r9,%a0 # IE against global var - +40043e: 58 30 d0 00 l %r3,0\(%r13\) - +400442: 58 33 c0 00 l %r3,0\(%r3,%r12\) - +400446: 41 33 90 00 la %r3,0\(%r3,%r9\) + +[0-9a-f]+: 58 30 d0 00 l %r3,0\(%r13\) + +[0-9a-f]+: 58 33 c0 00 l %r3,0\(%r3,%r12\) + +[0-9a-f]+: 41 33 90 00 la %r3,0\(%r3,%r9\) # IE -> LE against global var defined in exec - +40044a: 58 30 d0 04 l %r3,4\(%r13\) - +40044e: 18 43 lr %r4,%r3 - +400450: 07 00 bcr 0,%r0 - +400452: 41 54 90 00 la %r5,0\(%r4,%r9\) + +[0-9a-f]+: 58 30 d0 04 l %r3,4\(%r13\) + +[0-9a-f]+: 18 43 lr %r4,%r3 + +[0-9a-f]+: 07 00 bcr 0,%r0 + +[0-9a-f]+: 41 54 90 00 la %r5,0\(%r4,%r9\) # IE -> LE against local var - +400456: 58 30 d0 08 l %r3,8\(%r13\) - +40045a: 18 43 lr %r4,%r3 - +40045c: 07 00 bcr 0,%r0 - +40045e: 41 54 90 00 la %r5,0\(%r4,%r9\) + +[0-9a-f]+: 58 30 d0 08 l %r3,8\(%r13\) + +[0-9a-f]+: 18 43 lr %r4,%r3 + +[0-9a-f]+: 07 00 bcr 0,%r0 + +[0-9a-f]+: 41 54 90 00 la %r5,0\(%r4,%r9\) # IE -> LE against hidden but not local var - +400462: 58 30 d0 0c l %r3,12\(%r13\) - +400466: 18 43 lr %r4,%r3 - +400468: 07 00 bcr 0,%r0 - +40046a: 41 54 90 00 la %r5,0\(%r4,%r9\) + +[0-9a-f]+: 58 30 d0 0c l %r3,12\(%r13\) + +[0-9a-f]+: 18 43 lr %r4,%r3 + +[0-9a-f]+: 07 00 bcr 0,%r0 + +[0-9a-f]+: 41 54 90 00 la %r5,0\(%r4,%r9\) # LE, global var defined in exec - +40046e: 58 40 d0 10 l %r4,16\(%r13\) - +400472: 41 54 90 00 la %r5,0\(%r4,%r9\) + +[0-9a-f]+: 58 40 d0 10 l %r4,16\(%r13\) + +[0-9a-f]+: 41 54 90 00 la %r5,0\(%r4,%r9\) # function epilog - +400476: 98 6e f0 78 lm %r6,%r14,120\(%r15\) - +40047a: 07 fe br %r14 + +[0-9a-f]+: 98 6e f0 78 lm %r6,%r14,120\(%r15\) + +[0-9a-f]+: 07 fe br %r14 diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlsbin.rd binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlsbin.rd --- binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlsbin.rd 2003-03-19 09:19:17.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlsbin.rd 2004-05-27 11:26:06.416941020 -0700 @@ -5,7 +5,7 @@ #readelf: -Ssrl #target: s390-*-* -There are 19 section headers, starting at offset 0x[0-9a-f]+: +There are 18 section headers, starting at offset 0x[0-9a-f]+: Section Headers: \[Nr\] Name +Type +Addr +Off +Size +ES Flg Lk Inf Al @@ -17,24 +17,23 @@ Section Headers: \[ 5\] .rela.dyn +.* \[ 6\] .rela.plt +.* \[ 7\] .plt +.* - \[ 8\] .text +PROGBITS +0+4002e4 0+2e4 0+198 00 +AX +0 +0 +4 - \[ 9\] .data +.* - \[10\] .tdata +PROGBITS +0+40147c 0+47c 0+60 00 WAT +0 +0 +1 - \[11\] .tbss +NOBITS +0+4014dc 0+4dc 0+40 00 WAT +0 +0 +1 - \[12\] .dynamic +DYNAMIC +0+4014dc 0+4dc 0+a0 08 +WA +4 +0 +4 - \[13\] .got +PROGBITS +0+40157c 0+57c 0+2c 04 +WA +0 +0 +4 - \[14\] .sbss +.* - \[15\] .bss +.* - \[16\] .shstrtab +.* - \[17\] .symtab +.* - \[18\] .strtab +.* + \[ 8\] .text +PROGBITS +.* + \[ 9\] .tdata +PROGBITS +0+4014c0 0+4c0 0+60 00 WAT +0 +0 +32 + \[10\] .tbss +NOBITS +0+401520 0+520 0+40 00 WAT +0 +0 +1 + \[11\] .dynamic +DYNAMIC +0+401520 0+520 0+a0 08 +WA +4 +0 +4 + \[12\] .got +PROGBITS +0+4015c0 0+5c0 0+2c 04 +WA +0 +0 +4 + \[13\] .data +.* + \[14\] .bss +.* + \[15\] .shstrtab +.* + \[16\] .symtab +.* + \[17\] .strtab +.* Key to Flags: .* .* .* Elf file type is EXEC \(Executable file\) -Entry point 0x400414 +Entry point 0x[0-9a-f]+ There are 6 program headers, starting at offset [0-9]+ Program Headers: @@ -42,10 +41,10 @@ Program Headers: PHDR +0x0+34 0x0+400034 0x0+400034 0x0+c0 0x0+c0 R E 0x4 INTERP +0x0+f4 0x0+4000f4 0x0+4000f4 0x0+11 0x0+11 R +0x1 .*Requesting program interpreter.* - LOAD +0x0+ 0x0+400000 0x0+400000 0x0+47c 0x0+47c R E 0x1000 - LOAD +0x0+47c 0x0+40147c 0x0+40147c 0x0+12c 0x0+12c RW 0x1000 - DYNAMIC +0x0+4dc 0x0+4014dc 0x0+4014dc 0x0+a0 0x0+a0 RW 0x4 - TLS +0x0+47c 0x0+40147c 0x0+40147c 0x0+60 0x0+a0 R +0x1 + LOAD +0x0+ 0x0+400000 0x0+400000 0x[0-9a-f]+ 0x[0-9a-f]+ R E 0x1000 + LOAD +0x0+4c0 0x0+4014c0 0x0+4014c0 0x0+12c 0x0+12c RW 0x1000 + DYNAMIC +0x0+520 0x0+401520 0x0+401520 0x0+a0 0x0+a0 RW 0x4 + TLS +0x0+4c0 0x0+4014c0 0x0+4014c0 0x0+60 0x0+a0 R +0x20 Section to Segment mapping: Segment Sections... @@ -69,88 +68,87 @@ Relocation section '.rela.plt' at offset Symbol table '.dynsym' contains 11 entries: +Num: +Value Size Type +Bind +Vis +Ndx Name - +0: 0+ +0 NOTYPE LOCAL DEFAULT UND - +1: 0+ +0 TLS +GLOBAL DEFAULT UND sG3 - +2: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC - +3: 0+ +0 TLS +GLOBAL DEFAULT UND sG2 - +4: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT UND __tls_get_offset - +5: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start - +6: 0+ +0 TLS +GLOBAL DEFAULT UND sG6 - +7: 0+ +0 TLS +GLOBAL DEFAULT UND sG1 - +8: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata - +9: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ - +10: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end + +[0-9]+: 0+ +0 NOTYPE LOCAL DEFAULT UND + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG3 + +[0-9]+: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG2 + +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT UND __tls_get_offset + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG6 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG1 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata + +[0-9]+: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end -Symbol table '.symtab' contains 71 entries: +Symbol table '.symtab' contains 70 entries: +Num: +Value Size Type +Bind +Vis +Ndx Name - +0: 0+ +0 NOTYPE LOCAL DEFAULT UND - +1: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +1 - +2: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +2 - +3: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +3 - +4: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +4 - +5: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +5 - +6: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +6 - +7: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +7 - +8: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +8 - +9: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +9 - +10: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +10 - +11: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +11 - +12: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +12 - +13: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +13 - +14: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +14 - +15: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +15 - +16: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +16 - +17: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +17 - +18: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +18 - +19: 0+20 +0 TLS +LOCAL DEFAULT +10 sl1 - +20: 0+24 +0 TLS +LOCAL DEFAULT +10 sl2 - +21: 0+28 +0 TLS +LOCAL DEFAULT +10 sl3 - +22: 0+2c +0 TLS +LOCAL DEFAULT +10 sl4 - +23: 0+30 +0 TLS +LOCAL DEFAULT +10 sl5 - +24: 0+34 +0 TLS +LOCAL DEFAULT +10 sl6 - +25: 0+38 +0 TLS +LOCAL DEFAULT +10 sl7 - +26: 0+3c +0 TLS +LOCAL DEFAULT +10 sl8 - +27: 0+80 +0 TLS +LOCAL DEFAULT +11 bl1 - +28: 0+84 +0 TLS +LOCAL DEFAULT +11 bl2 - +29: 0+88 +0 TLS +LOCAL DEFAULT +11 bl3 - +30: 0+8c +0 TLS +LOCAL DEFAULT +11 bl4 - +31: 0+90 +0 TLS +LOCAL DEFAULT +11 bl5 - +32: 0+94 +0 TLS +LOCAL DEFAULT +11 bl6 - +33: 0+98 +0 TLS +LOCAL DEFAULT +11 bl7 - +34: 0+9c +0 TLS +LOCAL DEFAULT +11 bl8 - +35: 0+ +0 TLS +GLOBAL DEFAULT UND sG3 - +36: 0+1c +0 TLS +GLOBAL DEFAULT +10 sg8 - +37: 0+7c +0 TLS +GLOBAL DEFAULT +11 bg8 - +38: 0+74 +0 TLS +GLOBAL DEFAULT +11 bg6 - +39: 0+68 +0 TLS +GLOBAL DEFAULT +11 bg3 - +40: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC - +41: 0+8 +0 TLS +GLOBAL DEFAULT +10 sg3 - +42: 0+48 +0 TLS +GLOBAL HIDDEN +10 sh3 - +43: 0+ +0 TLS +GLOBAL DEFAULT UND sG2 - +44: 0+c +0 TLS +GLOBAL DEFAULT +10 sg4 - +45: 0+10 +0 TLS +GLOBAL DEFAULT +10 sg5 - +46: 0+70 +0 TLS +GLOBAL DEFAULT +11 bg5 - +47: 0+58 +0 TLS +GLOBAL HIDDEN +10 sh7 - +48: 0+5c +0 TLS +GLOBAL HIDDEN +10 sh8 - +49: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT UND __tls_get_offset - +50: 0+ +0 TLS +GLOBAL DEFAULT +10 sg1 - +51: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +8 _start - +52: 0+4c +0 TLS +GLOBAL HIDDEN +10 sh4 - +53: 0+78 +0 TLS +GLOBAL DEFAULT +11 bg7 - +54: 0+50 +0 TLS +GLOBAL HIDDEN +10 sh5 - +55: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start - +56: 0+ +0 TLS +GLOBAL DEFAULT UND sG6 - +57: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +8 fn2 - +58: 0+4 +0 TLS +GLOBAL DEFAULT +10 sg2 - +59: 0+ +0 TLS +GLOBAL DEFAULT UND sG1 - +60: 0+40 +0 TLS +GLOBAL HIDDEN +10 sh1 - +61: 0+14 +0 TLS +GLOBAL DEFAULT +10 sg6 - +62: 0+18 +0 TLS +GLOBAL DEFAULT +10 sg7 - +63: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata - +64: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ - +65: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end - +66: 0+44 +0 TLS +GLOBAL HIDDEN +10 sh2 - +67: 0+54 +0 TLS +GLOBAL HIDDEN +10 sh6 - +68: 0+64 +0 TLS +GLOBAL DEFAULT +11 bg2 - +69: 0+60 +0 TLS +GLOBAL DEFAULT +11 bg1 - +70: 0+6c +0 TLS +GLOBAL DEFAULT +11 bg4 + +[0-9]+: 0+ +0 NOTYPE LOCAL DEFAULT UND + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +1 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +2 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +3 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +4 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +5 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +6 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +7 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +8 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +9 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +10 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +11 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +12 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +13 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +14 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +15 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +16 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +17 + +[0-9]+: 0+20 +0 TLS +LOCAL DEFAULT +9 sl1 + +[0-9]+: 0+24 +0 TLS +LOCAL DEFAULT +9 sl2 + +[0-9]+: 0+28 +0 TLS +LOCAL DEFAULT +9 sl3 + +[0-9]+: 0+2c +0 TLS +LOCAL DEFAULT +9 sl4 + +[0-9]+: 0+30 +0 TLS +LOCAL DEFAULT +9 sl5 + +[0-9]+: 0+34 +0 TLS +LOCAL DEFAULT +9 sl6 + +[0-9]+: 0+38 +0 TLS +LOCAL DEFAULT +9 sl7 + +[0-9]+: 0+3c +0 TLS +LOCAL DEFAULT +9 sl8 + +[0-9]+: 0+80 +0 TLS +LOCAL DEFAULT +10 bl1 + +[0-9]+: 0+84 +0 TLS +LOCAL DEFAULT +10 bl2 + +[0-9]+: 0+88 +0 TLS +LOCAL DEFAULT +10 bl3 + +[0-9]+: 0+8c +0 TLS +LOCAL DEFAULT +10 bl4 + +[0-9]+: 0+90 +0 TLS +LOCAL DEFAULT +10 bl5 + +[0-9]+: 0+94 +0 TLS +LOCAL DEFAULT +10 bl6 + +[0-9]+: 0+98 +0 TLS +LOCAL DEFAULT +10 bl7 + +[0-9]+: 0+9c +0 TLS +LOCAL DEFAULT +10 bl8 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG3 + +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +9 sg8 + +[0-9]+: 0+7c +0 TLS +GLOBAL DEFAULT +10 bg8 + +[0-9]+: 0+74 +0 TLS +GLOBAL DEFAULT +10 bg6 + +[0-9]+: 0+68 +0 TLS +GLOBAL DEFAULT +10 bg3 + +[0-9]+: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC + +[0-9]+: 0+8 +0 TLS +GLOBAL DEFAULT +9 sg3 + +[0-9]+: 0+48 +0 TLS +GLOBAL HIDDEN +9 sh3 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG2 + +[0-9]+: 0+c +0 TLS +GLOBAL DEFAULT +9 sg4 + +[0-9]+: 0+10 +0 TLS +GLOBAL DEFAULT +9 sg5 + +[0-9]+: 0+70 +0 TLS +GLOBAL DEFAULT +10 bg5 + +[0-9]+: 0+58 +0 TLS +GLOBAL HIDDEN +9 sh7 + +[0-9]+: 0+5c +0 TLS +GLOBAL HIDDEN +9 sh8 + +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT UND __tls_get_offset + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +9 sg1 + +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +8 _start + +[0-9]+: 0+4c +0 TLS +GLOBAL HIDDEN +9 sh4 + +[0-9]+: 0+78 +0 TLS +GLOBAL DEFAULT +10 bg7 + +[0-9]+: 0+50 +0 TLS +GLOBAL HIDDEN +9 sh5 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG6 + +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +8 fn2 + +[0-9]+: 0+4 +0 TLS +GLOBAL DEFAULT +9 sg2 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG1 + +[0-9]+: 0+40 +0 TLS +GLOBAL HIDDEN +9 sh1 + +[0-9]+: 0+14 +0 TLS +GLOBAL DEFAULT +9 sg6 + +[0-9]+: 0+18 +0 TLS +GLOBAL DEFAULT +9 sg7 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata + +[0-9]+: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end + +[0-9]+: 0+44 +0 TLS +GLOBAL HIDDEN +9 sh2 + +[0-9]+: 0+54 +0 TLS +GLOBAL HIDDEN +9 sh6 + +[0-9]+: 0+64 +0 TLS +GLOBAL DEFAULT +10 bg2 + +[0-9]+: 0+60 +0 TLS +GLOBAL DEFAULT +10 bg1 + +[0-9]+: 0+6c +0 TLS +GLOBAL DEFAULT +10 bg4 diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlsbin.sd binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlsbin.sd --- binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlsbin.sd 2003-03-19 09:19:17.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlsbin.sd 2004-05-27 11:26:06.420940503 -0700 @@ -8,6 +8,6 @@ .*: file format elf32-s390 Contents of section .got: - 40157c [0-9a-f]+ 00000000 00000000 [0-9a-f]+ .@...........@.. - 40158c ffffff88 00000000 ffffff68 ffffffa8 ...........h.... - 40159c 00000000 00000000 00000000 ............ + [0-9a-f]+ [0-9a-f]+ 00000000 00000000 [0-9a-f]+ .@...........@.. + [0-9a-f]+ ffffff88 00000000 ffffff68 ffffffa8 ...........h.... + [0-9a-f]+ 00000000 00000000 00000000 ............ diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlsbin.td binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlsbin.td --- binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlsbin.td 2003-03-19 09:19:17.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlsbin.td 2004-05-27 11:26:06.425939856 -0700 @@ -8,9 +8,9 @@ .*: file format elf32-s390 Contents of section .tdata: - 40147c 00000011 00000012 00000013 00000014 .* - 40148c 00000015 00000016 00000017 00000018 .* - 40149c 00000041 00000042 00000043 00000044 .* - 4014ac 00000045 00000046 00000047 00000048 .* - 4014bc 00000101 00000102 00000103 00000104 .* - 4014cc 00000105 00000106 00000107 00000108 .* + [0-9a-f]+ 00000011 00000012 00000013 00000014 .* + [0-9a-f]+ 00000015 00000016 00000017 00000018 .* + [0-9a-f]+ 00000041 00000042 00000043 00000044 .* + [0-9a-f]+ 00000045 00000046 00000047 00000048 .* + [0-9a-f]+ 00000101 00000102 00000103 00000104 .* + [0-9a-f]+ 00000105 00000106 00000107 00000108 .* diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlsbin_64.dd binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlsbin_64.dd --- binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlsbin_64.dd 2003-03-19 09:19:17.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlsbin_64.dd 2004-05-27 11:26:06.432938951 -0700 @@ -18,196 +18,206 @@ Disassembly of section .text: -0+80000458 : +0+[0-9a-f]+ : # function prolog - +80000458: eb 6e f0 30 00 24 stmg %r6,%r14,48\(%r15\) - +8000045e: a7 d5 00 3e bras %r13,800004da + +[0-9a-f]+: eb 6e f0 30 00 24 stmg %r6,%r14,48\(%r15\) + +[0-9a-f]+: a7 d5 00 3e bras %r13,[0-9a-f]+ # sG1@tlsgd - +80000462: 00 00 00 00 .long 0x00000000 - +80000466: 00 00 00 60 .long 0x00000060 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 60 .long 0x00000060 # sG2@tlsgd - +8000046a: 00 00 00 00 .long 0x00000000 - +8000046e: 00 00 00 48 .long 0x00000048 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 48 .long 0x00000048 # sg1@tlsgd - +80000472: ff ff ff ff .long 0xffffffff - +80000476: ff ff ff 60 .long 0xffffff60 + +[0-9a-f]+: ff ff ff ff .long 0xffffffff + +[0-9a-f]+: ff ff ff 60 .long 0xffffff60 # sl1@tlsgd - +8000047a: ff ff ff ff .long 0xffffffff - +8000047e: ff ff ff 80 .long 0xffffff80 + +[0-9a-f]+: ff ff ff ff .long 0xffffffff + +[0-9a-f]+: ff ff ff 80 .long 0xffffff80 # sh1@tlsgd - +80000482: ff ff ff ff .long 0xffffffff - +80000486: ff ff ff a0 .long 0xffffffa0 + +[0-9a-f]+: ff ff ff ff .long 0xffffffff + +[0-9a-f]+: ff ff ff a0 .long 0xffffffa0 # sl1@tlsldm - +8000048a: 00 00 00 00 .long 0x00000000 - +8000048e: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 # sl1@dtpoff - +80000492: ff ff ff ff .long 0xffffffff - +80000496: ff ff ff 80 .long 0xffffff80 + +[0-9a-f]+: ff ff ff ff .long 0xffffffff + +[0-9a-f]+: ff ff ff 80 .long 0xffffff80 # sl2@dtpoff - +8000049a: ff ff ff ff .long 0xffffffff - +8000049e: ff ff ff 84 .long 0xffffff84 + +[0-9a-f]+: ff ff ff ff .long 0xffffffff + +[0-9a-f]+: ff ff ff 84 .long 0xffffff84 # sh1@tlsldm - +800004a2: 00 00 00 00 .long 0x00000000 - +800004a6: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 # sh1@dtpoff - +800004aa: ff ff ff ff .long 0xffffffff - +800004ae: ff ff ff a0 .long 0xffffffa0 + +[0-9a-f]+: ff ff ff ff .long 0xffffffff + +[0-9a-f]+: ff ff ff a0 .long 0xffffffa0 # sh2@dtpoff - +800004b2: ff ff ff ff .long 0xffffffff - +800004b6: ff ff ff a4 .long 0xffffffa4 + +[0-9a-f]+: ff ff ff ff .long 0xffffffff + +[0-9a-f]+: ff ff ff a4 .long 0xffffffa4 # sG2@gotntpoff - +800004ba: 00 00 00 00 .long 0x00000000 - +800004be: 00 00 00 48 .long 0x00000048 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 48 .long 0x00000048 # sg1@gotntpoff - +800004c2: ff ff ff ff .long 0xffffffff - +800004c6: ff ff ff 60 .long 0xffffff60 + +[0-9a-f]+: ff ff ff ff .long 0xffffffff + +[0-9a-f]+: ff ff ff 60 .long 0xffffff60 # sl1@gotntpoff - +800004ca: ff ff ff ff .long 0xffffffff - +800004ce: ff ff ff 80 .long 0xffffff80 + +[0-9a-f]+: ff ff ff ff .long 0xffffffff + +[0-9a-f]+: ff ff ff 80 .long 0xffffff80 # sh1@gotntpoff - +800004d2: ff ff ff ff .long 0xffffffff - +800004d6: ff ff ff a0 .long 0xffffffa0 + +[0-9a-f]+: ff ff ff ff .long 0xffffffff + +[0-9a-f]+: ff ff ff a0 .long 0xffffffa0 # function prolog - +800004da: b9 04 00 ef lgr %r14,%r15 - +800004de: a7 fb ff 60 aghi %r15,-160 - +800004e2: c0 c0 00 00 09 d3 larl %r12,80001888 <_GLOBAL_OFFSET_TABLE_> - +800004e8: e3 e0 e0 00 00 24 stg %r14,0\(%r14\) + +[0-9a-f]+: b9 04 00 ef lgr %r14,%r15 + +[0-9a-f]+: a7 fb ff 60 aghi %r15,-160 + +[0-9a-f]+: c0 c0 [0-9a-f ]+ larl %r12,[0-9a-f]+ <_GLOBAL_OFFSET_TABLE_> + +[0-9a-f]+: e3 e0 e0 00 00 24 stg %r14,0\(%r14\) # extract TCB - +800004ee: b2 4f 00 90 ear %r9,%a0 - +800004f2: eb 94 00 20 00 0d sllg %r9,%r4,32 - +800004f8: b2 4f 00 91 ear %r9,%a1 + +[0-9a-f]+: b2 4f 00 90 ear %r9,%a0 + +[0-9a-f]+: eb 94 00 20 00 0d sllg %r9,%r4,32 + +[0-9a-f]+: b2 4f 00 91 ear %r9,%a1 # GD -> IE because variable is not defined in executable - +800004fc: e3 c0 d0 00 00 04 lg %r12,0\(%r13\) - +80000502: e3 22 c0 00 00 04 lg %r2,0\(%r2,%r12\) - +80000508: 41 22 90 00 la %r2,0\(%r2,%r9\) + +[0-9a-f]+: e3 c0 d0 00 00 04 lg %r12,0\(%r13\) + +[0-9a-f]+: e3 22 c0 00 00 04 lg %r2,0\(%r2,%r12\) + +[0-9a-f]+: 41 22 90 00 la %r2,0\(%r2,%r9\) # GD -> IE because variable is not defined in executable where # the variable is referenced through IE too - +8000050c: e3 20 d0 08 00 04 lg %r2,8\(%r13\) - +80000512: e3 22 c0 00 00 04 lg %r2,0\(%r2,%r12\) - +80000518: 41 22 90 00 la %r2,0\(%r2,%r9\) + +[0-9a-f]+: e3 20 d0 08 00 04 lg %r2,8\(%r13\) + +[0-9a-f]+: e3 22 c0 00 00 04 lg %r2,0\(%r2,%r12\) + +[0-9a-f]+: 41 22 90 00 la %r2,0\(%r2,%r9\) # GD -> LE with global variable defined in executable - +8000051c: e3 20 d0 10 00 04 lg %r2,16\(%r13\) - +80000522: c0 04 00 00 00 00 brcl 0,80000522 - +80000528: 41 22 90 00 la %r2,0\(%r2,%r9\) + +[0-9a-f]+: e3 20 d0 10 00 04 lg %r2,16\(%r13\) + +[0-9a-f]+: c0 04 00 00 00 00 brcl 0,[0-9a-f]+ + +[0-9a-f]+: 41 22 90 00 la %r2,0\(%r2,%r9\) # GD -> LE with local variable defined in executable - +8000052c: e3 20 d0 18 00 04 lg %r2,24\(%r13\) - +80000532: c0 04 00 00 00 00 brcl 0,80000532 - +80000538: 41 22 90 00 la %r2,0\(%r2,%r9\) + +[0-9a-f]+: e3 20 d0 18 00 04 lg %r2,24\(%r13\) + +[0-9a-f]+: c0 04 00 00 00 00 brcl 0,[0-9a-f]+ + +[0-9a-f]+: 41 22 90 00 la %r2,0\(%r2,%r9\) # GD -> LE with hidden variable defined in executable - +8000053c: e3 20 d0 20 00 04 lg %r2,32\(%r13\) - +80000542: c0 04 00 00 00 00 brcl 0,80000542 - +80000548: 41 22 90 00 la %r2,0\(%r2,%r9\) + +[0-9a-f]+: e3 20 d0 20 00 04 lg %r2,32\(%r13\) + +[0-9a-f]+: c0 04 00 00 00 00 brcl 0,[0-9a-f]+ + +[0-9a-f]+: 41 22 90 00 la %r2,0\(%r2,%r9\) # LD -> LE - +8000054c: e3 20 d0 28 00 04 lg %r2,40\(%r13\) - +80000552: c0 04 00 00 00 00 brcl 0,80000552 - +80000558: 41 32 90 00 la %r3,0\(%r2,%r9\) - +8000055c: e3 40 d0 30 00 04 lg %r4,48\(%r13\) - +80000562: 41 54 30 00 la %r5,0\(%r4,%r3\) - +80000566: e3 40 d0 38 00 04 lg %r4,56\(%r13\) - +8000056c: 41 54 30 00 la %r5,0\(%r4,%r3\) - +80000570: e3 20 d0 40 00 04 lg %r2,64\(%r13\) - +80000576: c0 04 00 00 00 00 brcl 0,80000576 - +8000057c: 41 32 90 00 la %r3,0\(%r2,%r9\) - +80000580: e3 40 d0 48 00 04 lg %r4,72\(%r13\) - +80000586: 41 54 30 00 la %r5,0\(%r4,%r3\) - +8000058a: e3 40 d0 50 00 04 lg %r4,80\(%r13\) - +80000590: 41 54 30 00 la %r5,0\(%r4,%r3\) + +[0-9a-f]+: e3 20 d0 28 00 04 lg %r2,40\(%r13\) + +[0-9a-f]+: c0 04 00 00 00 00 brcl 0,[0-9a-f]+ + +[0-9a-f]+: 41 32 90 00 la %r3,0\(%r2,%r9\) + +[0-9a-f]+: e3 40 d0 30 00 04 lg %r4,48\(%r13\) + +[0-9a-f]+: 41 54 30 00 la %r5,0\(%r4,%r3\) + +[0-9a-f]+: e3 40 d0 38 00 04 lg %r4,56\(%r13\) + +[0-9a-f]+: 41 54 30 00 la %r5,0\(%r4,%r3\) + +[0-9a-f]+: e3 20 d0 40 00 04 lg %r2,64\(%r13\) + +[0-9a-f]+: c0 04 00 00 00 00 brcl 0,[0-9a-f]+ + +[0-9a-f]+: 41 32 90 00 la %r3,0\(%r2,%r9\) + +[0-9a-f]+: e3 40 d0 48 00 04 lg %r4,72\(%r13\) + +[0-9a-f]+: 41 54 30 00 la %r5,0\(%r4,%r3\) + +[0-9a-f]+: e3 40 d0 50 00 04 lg %r4,80\(%r13\) + +[0-9a-f]+: 41 54 30 00 la %r5,0\(%r4,%r3\) # IE against global var - +80000594: e3 30 d0 58 00 04 lg %r3,88\(%r13\) - +8000059a: e3 33 c0 00 00 04 lg %r3,0\(%r3,%r12\) - +800005a0: 41 33 90 00 la %r3,0\(%r3,%r9\) + +[0-9a-f]+: e3 30 d0 58 00 04 lg %r3,88\(%r13\) + +[0-9a-f]+: e3 33 c0 00 00 04 lg %r3,0\(%r3,%r12\) + +[0-9a-f]+: 41 33 90 00 la %r3,0\(%r3,%r9\) # IE -> LE against global var defined in exec - +800005a4: e3 30 d0 60 00 04 lg %r3,96\(%r13\) - +800005aa: eb 43 00 00 00 0d sllg %r4,%r3,0 - +800005b0: 41 54 90 00 la %r5,0\(%r4,%r9\) + +[0-9a-f]+: e3 30 d0 60 00 04 lg %r3,96\(%r13\) + +[0-9a-f]+: eb 43 00 00 00 0d sllg %r4,%r3,0 + +[0-9a-f]+: 41 54 90 00 la %r5,0\(%r4,%r9\) # IE -> LE against local var - +800005b4: e3 30 d0 68 00 04 lg %r3,104\(%r13\) - +800005ba: eb 43 00 00 00 0d sllg %r4,%r3,0 - +800005c0: 41 54 90 00 la %r5,0\(%r4,%r9\) + +[0-9a-f]+: e3 30 d0 68 00 04 lg %r3,104\(%r13\) + +[0-9a-f]+: eb 43 00 00 00 0d sllg %r4,%r3,0 + +[0-9a-f]+: 41 54 90 00 la %r5,0\(%r4,%r9\) # IE -> LE against hidden var - +800005c4: e3 30 d0 70 00 04 lg %r3,112\(%r13\) - +800005ca: eb 43 00 00 00 0d sllg %r4,%r3,0 - +800005d0: 41 54 90 00 la %r5,0\(%r4,%r9\) + +[0-9a-f]+: e3 30 d0 70 00 04 lg %r3,112\(%r13\) + +[0-9a-f]+: eb 43 00 00 00 0d sllg %r4,%r3,0 + +[0-9a-f]+: 41 54 90 00 la %r5,0\(%r4,%r9\) # IE against global var with larl got access - +800005d4: c0 30 00 00 09 6e larl %r3,800018b0 <\_GLOBAL\_OFFSET\_TABLE\_\+0x28> - +800005da: e3 33 c0 00 00 04 lg %r3,0\(%r3,%r12\) - +800005e0: 41 33 90 00 la %r3,0\(%r3,%r9\) + +[0-9a-f]+: c0 30 [0-9a-f ]+ larl %r3,[0-9a-f]+ <_GLOBAL_OFFSET_TABLE_\+0x28> + +[0-9a-f]+: e3 33 c0 00 00 04 lg %r3,0\(%r3,%r12\) + +[0-9a-f]+: 41 33 90 00 la %r3,0\(%r3,%r9\) # IE against global var defined in exec with larl got access - +800005e4: c0 30 00 00 09 6e larl %r3,800018c0 <\_GLOBAL\_OFFSET\_TABLE\_\+0x38> - +800005ea: eb 43 00 00 00 0d sllg %r4,%r3,0 - +800005f0: 41 54 90 00 la %r5,0\(%r4,%r9\) + +[0-9a-f]+: c0 30 [0-9a-f ]+ larl %r3,[0-9a-f]+ <_GLOBAL_OFFSET_TABLE_\+0x38> + +[0-9a-f]+: eb 43 00 00 00 0d sllg %r4,%r3,0 + +[0-9a-f]+: 41 54 90 00 la %r5,0\(%r4,%r9\) # IE against local var with larl got access - +800005f4: c0 30 00 00 09 5a larl %r3,800018a8 <\_GLOBAL\_OFFSET\_TABLE\_\+0x20> - +800005fa: eb 43 00 00 00 0d sllg %r4,%r3,0 - +80000600: 41 54 90 00 la %r5,0\(%r4,%r9\) + +[0-9a-f]+: c0 30 [0-9a-f ]+ larl %r3,[0-9a-f]+ <_GLOBAL_OFFSET_TABLE_\+0x20> + +[0-9a-f]+: eb 43 00 00 00 0d sllg %r4,%r3,0 + +[0-9a-f]+: 41 54 90 00 la %r5,0\(%r4,%r9\) # IE against hidden var with larl got access - +80000604: c0 30 00 00 09 62 larl %r3,800018c8 <\_GLOBAL\_OFFSET\_TABLE\_\+0x40> - +8000060a: eb 43 00 00 00 0d sllg %r4,%r3,0 - +80000610: 41 54 90 00 la %r5,0\(%r4,%r9\) + +[0-9a-f]+: c0 30 [0-9a-f ]+ larl %r3,[0-9a-f]+ <_GLOBAL_OFFSET_TABLE_\+0x40> + +[0-9a-f]+: eb 43 00 00 00 0d sllg %r4,%r3,0 + +[0-9a-f]+: 41 54 90 00 la %r5,0\(%r4,%r9\) # IE against global var with small got access (no optimization) - +80000614: e3 30 c0 28 00 04 lg %r3,40\(%r12\) - +8000061a: 41 33 90 00 la %r3,0\(%r3,%r9\) + +[0-9a-f]+: e3 30 c0 28 00 04 lg %r3,40\(%r12\) + +[0-9a-f]+: 41 33 90 00 la %r3,0\(%r3,%r9\) # IE against global var defined in exec with small got access # (no optimization) - +8000061e: e3 30 c0 38 00 04 lg %r3,56\(%r12\) - +80000624: 41 33 90 00 la %r3,0\(%r3,%r9\) + +[0-9a-f]+: e3 30 c0 38 00 04 lg %r3,56\(%r12\) + +[0-9a-f]+: 41 33 90 00 la %r3,0\(%r3,%r9\) # IE against local var with small got access (no optimization) - +80000628: e3 30 c0 20 00 04 lg %r3,32\(%r12\) - +8000062e: 41 33 90 00 la %r3,0\(%r3,%r9\) + +[0-9a-f]+: e3 30 c0 20 00 04 lg %r3,32\(%r12\) + +[0-9a-f]+: 41 33 90 00 la %r3,0\(%r3,%r9\) # IE against hidden var with small got access (no optimization) - +80000632: e3 30 c0 40 00 04 lg %r3,64\(%r12\) - +80000638: 41 33 90 00 la %r3,0\(%r3,%r9\) + +[0-9a-f]+: e3 30 c0 40 00 04 lg %r3,64\(%r12\) + +[0-9a-f]+: 41 33 90 00 la %r3,0\(%r3,%r9\) # function epilog - +8000063c: eb 6e f0 d0 00 04 lmg %r6,%r14,208\(%r15\) - +80000642: 07 fe br %r14 + +[0-9a-f]+: eb 6e f0 d0 00 04 lmg %r6,%r14,208\(%r15\) + +[0-9a-f]+: 07 fe br %r14 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 -0+80000644 <_start>: +0+[0-9a-f]+ <_start>: # function prolog - +80000644: 90 6e f0 18 stm %r6,%r14,24\(%r15\) - +80000648: a7 d5 00 16 bras %r13,80000674 <_start\+0x30> + +[0-9a-f]+: 90 6e f0 18 stm %r6,%r14,24\(%r15\) + +[0-9a-f]+: a7 d5 00 16 bras %r13,[0-9a-f]+ <_start\+0x30> # sG6@indntpoff - +8000064c: 00 00 00 00 .long 0x00000000 - +80000650: 80 00 18 e0 ssm 2272\(%r1\) + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 80 00 [0-9a-f ]+ ssm [0-9]+\(%r1\) # bg6@indntpoff - +80000654: ff ff ff ff .long 0xffffffff - +80000658: ff ff ff d4 .long 0xffffffd4 + +[0-9a-f]+: ff ff ff ff .long 0xffffffff + +[0-9a-f]+: ff ff ff d4 .long 0xffffffd4 # bl6@indntpoff - +8000065c: ff ff ff ff .long 0xffffffff - +80000660: ff ff ff f4 .long 0xfffffff4 + +[0-9a-f]+: ff ff ff ff .long 0xffffffff + +[0-9a-f]+: ff ff ff f4 .long 0xfffffff4 # sh6@indntpoff - +80000664: ff ff ff ff .long 0xffffffff - +80000668: ff ff ff b4 .long 0xffffffb4 + +[0-9a-f]+: ff ff ff ff .long 0xffffffff + +[0-9a-f]+: ff ff ff b4 .long 0xffffffb4 # sg3@indntpoff - +8000066c: ff ff ff ff .long 0xffffffff - +80000670: ff ff ff 68 .long 0xffffff68 + +[0-9a-f]+: ff ff ff ff .long 0xffffffff + +[0-9a-f]+: ff ff ff 68 .long 0xffffff68 # function prolog - +80000674: b9 04 00 ef lgr %r14,%r15 - +80000678: a7 fb ff 60 aghi %r15,-160 - +8000067c: e3 e0 e0 00 00 24 stg %r14,0\(%r14\) + +[0-9a-f]+: b9 04 00 ef lgr %r14,%r15 + +[0-9a-f]+: a7 fb ff 60 aghi %r15,-160 + +[0-9a-f]+: e3 e0 e0 00 00 24 stg %r14,0\(%r14\) # extract TCB - +80000682: b2 4f 00 90 ear %r9,%a0 - +80000686: eb 94 00 20 00 0d sllg %r9,%r4,32 - +8000068c: b2 4f 00 91 ear %r9,%a1 + +[0-9a-f]+: b2 4f 00 90 ear %r9,%a0 + +[0-9a-f]+: eb 94 00 20 00 0d sllg %r9,%r4,32 + +[0-9a-f]+: b2 4f 00 91 ear %r9,%a1 # IE against global var - +80000690: e3 30 d0 00 00 04 lg %r3,0\(%r13\) - +80000696: e3 33 c0 00 00 04 lg %r3,0\(%r3,%r12\) - +8000069c: 41 33 90 00 la %r3,0\(%r3,%r9\) + +[0-9a-f]+: e3 30 d0 00 00 04 lg %r3,0\(%r13\) + +[0-9a-f]+: e3 33 c0 00 00 04 lg %r3,0\(%r3,%r12\) + +[0-9a-f]+: 41 33 90 00 la %r3,0\(%r3,%r9\) # IE -> LE against global var defined in exec - +800006a0: e3 30 d0 08 00 04 lg %r3,8\(%r13\) - +800006a6: eb 43 00 00 00 0d sllg %r4,%r3,0 - +800006ac: 41 54 90 00 la %r5,0\(%r4,%r9\) + +[0-9a-f]+: e3 30 d0 08 00 04 lg %r3,8\(%r13\) + +[0-9a-f]+: eb 43 00 00 00 0d sllg %r4,%r3,0 + +[0-9a-f]+: 41 54 90 00 la %r5,0\(%r4,%r9\) # IE -> LE against local var - +800006b0: e3 30 d0 10 00 04 lg %r3,16\(%r13\) - +800006b6: eb 43 00 00 00 0d sllg %r4,%r3,0 - +800006bc: 41 54 90 00 la %r5,0\(%r4,%r9\) + +[0-9a-f]+: e3 30 d0 10 00 04 lg %r3,16\(%r13\) + +[0-9a-f]+: eb 43 00 00 00 0d sllg %r4,%r3,0 + +[0-9a-f]+: 41 54 90 00 la %r5,0\(%r4,%r9\) # IE -> LE against hidden but not local var - +800006c0: e3 30 d0 18 00 04 lg %r3,24\(%r13\) - +800006c6: eb 43 00 00 00 0d sllg %r4,%r3,0 - +800006cc: 41 54 90 00 la %r5,0\(%r4,%r9\) + +[0-9a-f]+: e3 30 d0 18 00 04 lg %r3,24\(%r13\) + +[0-9a-f]+: eb 43 00 00 00 0d sllg %r4,%r3,0 + +[0-9a-f]+: 41 54 90 00 la %r5,0\(%r4,%r9\) # LE, global var defined in exec - +800006d0: e3 40 d0 20 00 04 lg %r4,32\(%r13\) - +800006d6: 41 54 90 00 la %r5,0\(%r4,%r9\) + +[0-9a-f]+: e3 40 d0 20 00 04 lg %r4,32\(%r13\) + +[0-9a-f]+: 41 54 90 00 la %r5,0\(%r4,%r9\) # function epilog - +800006da: eb 6e f0 d0 00 04 lmg %r6,%r14,208\(%r15\) - +800006e0: 07 fe br %r14 - +800006e2: 07 07 bcr 0,%r7 + +[0-9a-f]+: eb 6e f0 d0 00 04 lmg %r6,%r14,208\(%r15\) + +[0-9a-f]+: 07 fe br %r14 + +[0-9a-f]+: 07 07 bcr 0,%r7 diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlsbin_64.rd binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlsbin_64.rd --- binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlsbin_64.rd 2003-03-19 09:19:17.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlsbin_64.rd 2004-05-27 11:26:06.439938046 -0700 @@ -5,7 +5,7 @@ #readelf: -Ssrl #target: s390x-*-* -There are 19 section headers, starting at offset 0x[0-9a-f]+: +There are 18 section headers, starting at offset 0x[0-9a-f]+: Section Headers: \[Nr\] Name +Type +Address +Off +Size +ES Flg Lk Inf Al @@ -17,24 +17,23 @@ Section Headers: \[ 5\] .rela.dyn +.* \[ 6\] .rela.plt +.* \[ 7\] .plt +.* - \[ 8\] .text +PROGBITS +0+80000458 0+458 0+28c 00 +AX +0 +0 +4 - \[ 9\] .data +.* - \[10\] .tdata +PROGBITS +0+800016e8 0+6e8 0+60 00 WAT +0 +0 +1 - \[11\] .tbss +NOBITS +0+80001748 0+748 0+40 00 WAT +0 +0 +1 - \[12\] .dynamic +DYNAMIC +0+80001748 0+748 0+140 10 +WA +4 +0 +8 - \[13\] .got +PROGBITS +0+80001888 0+888 0+78 08 +WA +0 +0 +8 - \[14\] .sbss +.* - \[15\] .bss +.* - \[16\] .shstrtab +.* - \[17\] .symtab +.* - \[18\] .strtab +.* + \[ 8\] .text +PROGBITS +.* + \[ 9\] .tdata +PROGBITS +0+80001720 0+720 0+60 00 WAT +0 +0 +32 + \[10\] .tbss +NOBITS +0+80001780 0+780 0+40 00 WAT +0 +0 +1 + \[11\] .dynamic +DYNAMIC +0+80001780 0+780 0+140 10 +WA +4 +0 +8 + \[12\] .got +PROGBITS +0+800018c0 0+8c0 0+78 08 +WA +0 +0 +8 + \[13\] .data +.* + \[14\] .bss +.* + \[15\] .shstrtab +.* + \[16\] .symtab +.* + \[17\] .strtab +.* Key to Flags: .* .* .* Elf file type is EXEC \(Executable file\) -Entry point 0x80000644 +Entry point 0x[0-9a-f]+ There are 6 program headers, starting at offset [0-9]+ Program Headers: @@ -42,10 +41,10 @@ Program Headers: PHDR +0x0+40 0x0+80000040 0x0+80000040 0x0+150 0x0+150 R E 0x8 INTERP +0x0+190 0x0+80000190 0x0+80000190 0x0+11 0x0+11 R +0x1 .*Requesting program interpreter.* - LOAD +0x0+ 0x0+80000000 0x0+80000000 0x0+6e4 0x0+6e4 R E 0x1000 - LOAD +0x0+6e8 0x0+800016e8 0x0+800016e8 0x0+218 0x0+218 RW 0x1000 - DYNAMIC +0x0+748 0x0+80001748 0x0+80001748 0x0+140 0x0+140 RW 0x8 - TLS +0x0+6e8 0x0+800016e8 0x0+800016e8 0x0+60 0x0+a0 R +0x1 + LOAD +0x0+ 0x0+80000000 0x0+80000000 0x0+720 0x0+720 R E 0x1000 + LOAD +0x0+720 0x0+80001720 0x0+80001720 0x0+218 0x0+218 RW 0x1000 + DYNAMIC +0x0+780 0x0+80001780 0x0+80001780 0x0+140 0x0+140 RW 0x8 + TLS +0x0+720 0x0+80001720 0x0+80001720 0x0+60 0x0+a0 R +0x20 Section to Segment mapping: Segment Sections... @@ -56,101 +55,100 @@ Program Headers: 04 +.tbss .dynamic * 05 +.tdata .tbss * -Relocation section '.rela.dyn' at offset 0x[0-9a-z]+ contains 4 entries: +Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 4 entries: +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend -[0-9a-z]+ +0+10+38 R_390_TLS_TPOFF +0+ sG3 \+ 0 -[0-9a-z]+ +0+30+38 R_390_TLS_TPOFF +0+ sG2 \+ 0 -[0-9a-z]+ +0+60+38 R_390_TLS_TPOFF +0+ sG6 \+ 0 -[0-9a-z]+ +0+70+38 R_390_TLS_TPOFF +0+ sG1 \+ 0 +[0-9a-f]+ +0+10+38 R_390_TLS_TPOFF +0+ sG3 \+ 0 +[0-9a-f]+ +0+30+38 R_390_TLS_TPOFF +0+ sG2 \+ 0 +[0-9a-f]+ +0+60+38 R_390_TLS_TPOFF +0+ sG6 \+ 0 +[0-9a-f]+ +0+70+38 R_390_TLS_TPOFF +0+ sG1 \+ 0 Relocation section '.rela.plt' at offset 0x40+ contains 1 entries: +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend -[0-9a-z]+ +0+40+b R_390_JMP_SLOT +0+80+438 __tls_get_offset \+ 0 +[0-9a-f]+ +0+40+b R_390_JMP_SLOT +0+80+438 __tls_get_offset \+ 0 Symbol table '.dynsym' contains 11 entries: +Num: +Value +Size Type +Bind +Vis +Ndx Name - +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND - +1: 0+ +0 TLS +GLOBAL DEFAULT +UND sG3 - +2: [0-9a-z]+ +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC - +3: 0+ +0 TLS +GLOBAL DEFAULT +UND sG2 - +4: [0-9a-z]+ +0 FUNC +GLOBAL DEFAULT +UND __tls_get_offset - +5: [0-9a-z]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start - +6: 0+ +0 TLS +GLOBAL DEFAULT +UND sG6 - +7: 0+ +0 TLS +GLOBAL DEFAULT +UND sG1 - +8: [0-9a-z]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata - +9: [0-9a-z]+ +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_ - +10: [0-9a-z]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end + +[0-9]+: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +UND sG3 + +[0-9]+: [0-9a-f]+ +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +UND sG2 + +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +UND __tls_get_offset + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +UND sG6 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +UND sG1 + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata + +[0-9]+: [0-9a-f]+ +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_ + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end -Symbol table '.symtab' contains 71 entries: +Symbol table '.symtab' contains 70 entries: +Num: +Value +Size Type +Bind +Vis +Ndx Name - +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND - +1: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +1 - +2: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +2 - +3: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +3 - +4: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +4 - +5: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +5 - +6: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +6 - +7: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +7 - +8: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +8 - +9: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +9 - +10: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +10 - +11: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +11 - +12: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +12 - +13: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +13 - +14: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +14 - +15: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +15 - +16: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +16 - +17: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +17 - +18: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +18 - +19: 0+20 +0 TLS +LOCAL +DEFAULT +10 sl1 - +20: 0+24 +0 TLS +LOCAL +DEFAULT +10 sl2 - +21: 0+28 +0 TLS +LOCAL +DEFAULT +10 sl3 - +22: 0+2c +0 TLS +LOCAL +DEFAULT +10 sl4 - +23: 0+30 +0 TLS +LOCAL +DEFAULT +10 sl5 - +24: 0+34 +0 TLS +LOCAL +DEFAULT +10 sl6 - +25: 0+38 +0 TLS +LOCAL +DEFAULT +10 sl7 - +26: 0+3c +0 TLS +LOCAL +DEFAULT +10 sl8 - +27: 0+80 +0 TLS +LOCAL +DEFAULT +11 bl1 - +28: 0+84 +0 TLS +LOCAL +DEFAULT +11 bl2 - +29: 0+88 +0 TLS +LOCAL +DEFAULT +11 bl3 - +30: 0+8c +0 TLS +LOCAL +DEFAULT +11 bl4 - +31: 0+90 +0 TLS +LOCAL +DEFAULT +11 bl5 - +32: 0+94 +0 TLS +LOCAL +DEFAULT +11 bl6 - +33: 0+98 +0 TLS +LOCAL +DEFAULT +11 bl7 - +34: 0+9c +0 TLS +LOCAL +DEFAULT +11 bl8 - +35: 0+ +0 TLS +GLOBAL DEFAULT +UND sG3 - +36: 0+1c +0 TLS +GLOBAL DEFAULT +10 sg8 - +37: 0+7c +0 TLS +GLOBAL DEFAULT +11 bg8 - +38: 0+74 +0 TLS +GLOBAL DEFAULT +11 bg6 - +39: 0+68 +0 TLS +GLOBAL DEFAULT +11 bg3 - +40: [0-9a-z]+ +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC - +41: 0+8 +0 TLS +GLOBAL DEFAULT +10 sg3 - +42: 0+48 +0 TLS +GLOBAL HIDDEN +10 sh3 - +43: 0+ +0 TLS +GLOBAL DEFAULT +UND sG2 - +44: 0+c +0 TLS +GLOBAL DEFAULT +10 sg4 - +45: 0+10 +0 TLS +GLOBAL DEFAULT +10 sg5 - +46: 0+70 +0 TLS +GLOBAL DEFAULT +11 bg5 - +47: 0+58 +0 TLS +GLOBAL HIDDEN +10 sh7 - +48: 0+5c +0 TLS +GLOBAL HIDDEN +10 sh8 - +49: [0-9a-z]+ +0 FUNC +GLOBAL DEFAULT +UND __tls_get_offset - +50: 0+ +0 TLS +GLOBAL DEFAULT +10 sg1 - +51: [0-9a-z]+ +0 FUNC +GLOBAL DEFAULT +8 _start - +52: 0+4c +0 TLS +GLOBAL HIDDEN +10 sh4 - +53: 0+78 +0 TLS +GLOBAL DEFAULT +11 bg7 - +54: 0+50 +0 TLS +GLOBAL HIDDEN +10 sh5 - +55: [0-9a-z]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start - +56: 0+ +0 TLS +GLOBAL DEFAULT +UND sG6 - +57: [0-9a-z]+ +0 FUNC +GLOBAL DEFAULT +8 fn2 - +58: 0+4 +0 TLS +GLOBAL DEFAULT +10 sg2 - +59: 0+ +0 TLS +GLOBAL DEFAULT +UND sG1 - +60: 0+40 +0 TLS +GLOBAL HIDDEN +10 sh1 - +61: 0+14 +0 TLS +GLOBAL DEFAULT +10 sg6 - +62: 0+18 +0 TLS +GLOBAL DEFAULT +10 sg7 - +63: [0-9a-z]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata - +64: [0-9a-z]+ +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_ - +65: 0+80+190+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end - +66: 0+44 +0 TLS +GLOBAL HIDDEN +10 sh2 - +67: 0+54 +0 TLS +GLOBAL HIDDEN +10 sh6 - +68: 0+64 +0 TLS +GLOBAL DEFAULT +11 bg2 - +69: 0+60 +0 TLS +GLOBAL DEFAULT +11 bg1 - +70: 0+6c +0 TLS +GLOBAL DEFAULT +11 bg4 + +[0-9]+: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +1 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +2 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +3 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +4 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +5 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +6 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +7 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +8 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +9 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +10 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +11 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +12 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +13 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +14 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +15 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +16 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +17 + +[0-9]+: 0+20 +0 TLS +LOCAL +DEFAULT +9 sl1 + +[0-9]+: 0+24 +0 TLS +LOCAL +DEFAULT +9 sl2 + +[0-9]+: 0+28 +0 TLS +LOCAL +DEFAULT +9 sl3 + +[0-9]+: 0+2c +0 TLS +LOCAL +DEFAULT +9 sl4 + +[0-9]+: 0+30 +0 TLS +LOCAL +DEFAULT +9 sl5 + +[0-9]+: 0+34 +0 TLS +LOCAL +DEFAULT +9 sl6 + +[0-9]+: 0+38 +0 TLS +LOCAL +DEFAULT +9 sl7 + +[0-9]+: 0+3c +0 TLS +LOCAL +DEFAULT +9 sl8 + +[0-9]+: 0+80 +0 TLS +LOCAL +DEFAULT +10 bl1 + +[0-9]+: 0+84 +0 TLS +LOCAL +DEFAULT +10 bl2 + +[0-9]+: 0+88 +0 TLS +LOCAL +DEFAULT +10 bl3 + +[0-9]+: 0+8c +0 TLS +LOCAL +DEFAULT +10 bl4 + +[0-9]+: 0+90 +0 TLS +LOCAL +DEFAULT +10 bl5 + +[0-9]+: 0+94 +0 TLS +LOCAL +DEFAULT +10 bl6 + +[0-9]+: 0+98 +0 TLS +LOCAL +DEFAULT +10 bl7 + +[0-9]+: 0+9c +0 TLS +LOCAL +DEFAULT +10 bl8 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +UND sG3 + +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +9 sg8 + +[0-9]+: 0+7c +0 TLS +GLOBAL DEFAULT +10 bg8 + +[0-9]+: 0+74 +0 TLS +GLOBAL DEFAULT +10 bg6 + +[0-9]+: 0+68 +0 TLS +GLOBAL DEFAULT +10 bg3 + +[0-9]+: [0-9a-f]+ +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC + +[0-9]+: 0+8 +0 TLS +GLOBAL DEFAULT +9 sg3 + +[0-9]+: 0+48 +0 TLS +GLOBAL HIDDEN +9 sh3 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +UND sG2 + +[0-9]+: 0+c +0 TLS +GLOBAL DEFAULT +9 sg4 + +[0-9]+: 0+10 +0 TLS +GLOBAL DEFAULT +9 sg5 + +[0-9]+: 0+70 +0 TLS +GLOBAL DEFAULT +10 bg5 + +[0-9]+: 0+58 +0 TLS +GLOBAL HIDDEN +9 sh7 + +[0-9]+: 0+5c +0 TLS +GLOBAL HIDDEN +9 sh8 + +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +UND __tls_get_offset + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +9 sg1 + +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +8 _start + +[0-9]+: 0+4c +0 TLS +GLOBAL HIDDEN +9 sh4 + +[0-9]+: 0+78 +0 TLS +GLOBAL DEFAULT +10 bg7 + +[0-9]+: 0+50 +0 TLS +GLOBAL HIDDEN +9 sh5 + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +UND sG6 + +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +8 fn2 + +[0-9]+: 0+4 +0 TLS +GLOBAL DEFAULT +9 sg2 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +UND sG1 + +[0-9]+: 0+40 +0 TLS +GLOBAL HIDDEN +9 sh1 + +[0-9]+: 0+14 +0 TLS +GLOBAL DEFAULT +9 sg6 + +[0-9]+: 0+18 +0 TLS +GLOBAL DEFAULT +9 sg7 + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata + +[0-9]+: [0-9a-f]+ +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_ + +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end + +[0-9]+: 0+44 +0 TLS +GLOBAL HIDDEN +9 sh2 + +[0-9]+: 0+54 +0 TLS +GLOBAL HIDDEN +9 sh6 + +[0-9]+: 0+64 +0 TLS +GLOBAL DEFAULT +10 bg2 + +[0-9]+: 0+60 +0 TLS +GLOBAL DEFAULT +10 bg1 + +[0-9]+: 0+6c +0 TLS +GLOBAL DEFAULT +10 bg4 diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlsbin_64.sd binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlsbin_64.sd --- binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlsbin_64.sd 2003-03-19 09:19:17.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlsbin_64.sd 2004-05-27 11:26:06.459935460 -0700 @@ -8,11 +8,11 @@ .*: file format elf64-s390 Contents of section .got: - 80001888 [0-9a-f]+ [0-9a-f]+ 00000000 00000000 .* - 80001898 00000000 00000000 [0-9a-f]+ [0-9a-f]+ .* - 800018a8 ffffffff ffffff88 00000000 00000000 .* - 800018b8 00000000 00000000 ffffffff ffffff68 .* - 800018c8 ffffffff ffffffa8 00000000 00000000 .* - 800018d8 00000000 00000000 00000000 00000000 .* - 800018e8 00000000 00000000 00000000 00000000 .* - 800018f8 00000000 00000000 .* + [0-9a-f]+ [0-9a-f]+ [0-9a-f]+ 00000000 00000000 .* + [0-9a-f]+ 00000000 00000000 [0-9a-f]+ [0-9a-f]+ .* + [0-9a-f]+ ffffffff ffffff88 00000000 00000000 .* + [0-9a-f]+ 00000000 00000000 ffffffff ffffff68 .* + [0-9a-f]+ ffffffff ffffffa8 00000000 00000000 .* + [0-9a-f]+ 00000000 00000000 00000000 00000000 .* + [0-9a-f]+ 00000000 00000000 00000000 00000000 .* + [0-9a-f]+ 00000000 00000000 .* diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlsbin_64.td binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlsbin_64.td --- binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlsbin_64.td 2003-03-19 09:19:17.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlsbin_64.td 2004-05-27 11:26:06.469934167 -0700 @@ -8,9 +8,9 @@ .*: file format elf64-s390 Contents of section .tdata: - 800016e8 00000011 00000012 00000013 00000014 .* - 800016f8 00000015 00000016 00000017 00000018 .* - 80001708 00000041 00000042 00000043 00000044 .* - 80001718 00000045 00000046 00000047 00000048 .* - 80001728 00000101 00000102 00000103 00000104 .* - 80001738 00000105 00000106 00000107 00000108 .* + [0-9a-f]+ 00000011 00000012 00000013 00000014 .* + [0-9a-f]+ 00000015 00000016 00000017 00000018 .* + [0-9a-f]+ 00000041 00000042 00000043 00000044 .* + [0-9a-f]+ 00000045 00000046 00000047 00000048 .* + [0-9a-f]+ 00000101 00000102 00000103 00000104 .* + [0-9a-f]+ 00000105 00000106 00000107 00000108 .* diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlsbinpic.s binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlsbinpic.s --- binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlsbinpic.s 2003-03-19 09:19:17.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlsbinpic.s 2004-05-27 11:26:06.491931323 -0700 @@ -1,4 +1,5 @@ .section ".tdata", "awT", @progbits + .balign 32 .globl sg1, sg2, sg3, sg4, sg5, sg6, sg7, sg8 .globl sh1, sh2, sh3, sh4, sh5, sh6, sh7, sh8 .hidden sh1, sh2, sh3, sh4, sh5, sh6, sh7, sh8 @@ -30,6 +31,7 @@ sh8: .long 264 .text .globl fn2 .type fn2,@function + .balign 64 fn2: /* Function prolog */ stm %r6,%r14,24(%r15) diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlsbinpic_64.s binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlsbinpic_64.s --- binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlsbinpic_64.s 2003-03-19 09:19:17.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlsbinpic_64.s 2004-05-27 11:26:06.494930935 -0700 @@ -1,4 +1,5 @@ .section ".tdata", "awT", @progbits + .balign 32 .globl sg1, sg2, sg3, sg4, sg5, sg6, sg7, sg8 .globl sh1, sh2, sh3, sh4, sh5, sh6, sh7, sh8 .hidden sh1, sh2, sh3, sh4, sh5, sh6, sh7, sh8 @@ -30,6 +31,7 @@ sh8: .long 264 .text .globl fn2 .type fn2,@function + .balign 64 fn2: /* Function prolog */ stmg %r6,%r14,48(%r15) diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlspic.dd binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlspic.dd --- binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlspic.dd 2003-03-19 09:19:17.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlspic.dd 2004-05-27 11:26:06.567921496 -0700 @@ -9,153 +9,181 @@ Disassembly of section .text: -0+4bc : +0+[0-9a-f]+ : # function prolog - +4bc: 90 6e f0 18 stm %r6,%r14,24\(%r15\) - +4c0: a7 d5 00 30 bras %r13,520 + +[0-9a-f]+: 90 6e f0 18 stm %r6,%r14,24\(%r15\) + +[0-9a-f]+: a7 d5 00 30 bras %r13,[0-9a-f]+ # _GLOBAL_OFFSET_TABLE_-.LT1 - +4c4: 00 00 12 78 .long 0x00001278 + +[0-9a-f]+: [0-9a-f ]+ .long 0x[0-9a-f]+ # __tls_get_addr@plt-.LT1 - +4c8: ff ff ff d8 .long 0xffffffd8 + +[0-9a-f]+: [0-9a-f ]+ .long 0x[0-9a-f]+ # sg1@tlsgd - +4cc: 00 00 00 38 .long 0x00000038 + +[0-9a-f]+: 00 00 00 38 .long 0x00000038 # sg2@tlsgd - +4d0: 00 00 00 48 .long 0x00000048 + +[0-9a-f]+: 00 00 00 48 .long 0x00000048 # sl1@tlsgd - +4d4: 00 00 00 10 .long 0x00000010 + +[0-9a-f]+: 00 00 00 10 .long 0x00000010 # sl2@tlsgd - +4d8: 00 00 00 18 .long 0x00000018 + +[0-9a-f]+: 00 00 00 18 .long 0x00000018 # sh1@tlsgd - +4dc: 00 00 00 4c .long 0x0000004c + +[0-9a-f]+: 00 00 00 4c .long 0x0000004c # sh2@tlsgd - +4e0: 00 00 00 54 .long 0x00000054 + +[0-9a-f]+: 00 00 00 54 .long 0x00000054 # sH1@tlsgd - +4e4: 00 00 00 28 .long 0x00000028 + +[0-9a-f]+: 00 00 00 28 .long 0x00000028 # sH2@tlsgd - +4e8: 00 00 00 30 .long 0x00000030 + +[0-9a-f]+: 00 00 00 30 .long 0x00000030 # sl1@tlsldm - +4ec: 00 00 00 20 .long 0x00000020 + +[0-9a-f]+: 00 00 00 20 .long 0x00000020 # sl1@dtpoff - +4f0: 00 00 00 20 .long 0x00000020 + +[0-9a-f]+: 00 00 00 20 .long 0x00000020 # sl2@dtpoff - +4f4: 00 00 00 24 .long 0x00000024 + +[0-9a-f]+: 00 00 00 24 .long 0x00000024 # sh1@tlsldm - +4f8: 00 00 00 20 .long 0x00000020 + +[0-9a-f]+: 00 00 00 20 .long 0x00000020 # sh1@dtpoff - +4fc: 00 00 00 40 .long 0x00000040 + +[0-9a-f]+: 00 00 00 40 .long 0x00000040 # sh2@dtpoff - +500: 00 00 00 44 .long 0x00000044 + +[0-9a-f]+: 00 00 00 44 .long 0x00000044 # sH1@tlsldm - +504: 00 00 00 20 .long 0x00000020 + +[0-9a-f]+: 00 00 00 20 .long 0x00000020 # sH1@dtpoff - +508: 00 00 00 60 .long 0x00000060 + +[0-9a-f]+: 00 00 00 60 .long 0x00000060 # sH2@dtpoff - +50c: 00 00 00 64 .long 0x00000064 + +[0-9a-f]+: 00 00 00 64 .long 0x00000064 # sg2@gotntpoff - +510: 00 00 00 48 .long 0x00000048 + +[0-9a-f]+: 00 00 00 48 .long 0x00000048 # sl2@gotntpoff - +514: 00 00 00 18 .long 0x00000018 + +[0-9a-f]+: 00 00 00 18 .long 0x00000018 # sh2@gotntpoff - +518: 00 00 00 54 .long 0x00000054 + +[0-9a-f]+: 00 00 00 54 .long 0x00000054 # sH2@gotntpoff - +51c: 00 00 00 30 .long 0x00000030 + +[0-9a-f]+: 00 00 00 30 .long 0x00000030 # function prolog - +520: 18 ef lr %r14,%r15 - +522: 58 c0 d0 00 l %r12,0\(%r13\) - +526: a7 fa ff a0 ahi %r15,-96 - +52a: 41 cc d0 00 la %r12,0\(%r12,%r13\) - +52e: 50 e0 e0 00 st %r14,0\(%r14\) + +[0-9a-f]+: 18 ef lr %r14,%r15 + +[0-9a-f]+: 58 c0 d0 00 l %r12,0\(%r13\) + +[0-9a-f]+: a7 fa ff a0 ahi %r15,-96 + +[0-9a-f]+: 41 cc d0 00 la %r12,0\(%r12,%r13\) + +[0-9a-f]+: 50 e0 e0 00 st %r14,0\(%r14\) # Extract TCB and load branch offset - +532: b2 4f 00 90 ear %r9,%a0 - +536: 58 70 d0 04 l %r7,4\(%r13\) + +[0-9a-f]+: b2 4f 00 90 ear %r9,%a0 + +[0-9a-f]+: 58 70 d0 04 l %r7,4\(%r13\) # GD - +53a: 58 20 d0 08 l %r2,8\(%r13\) - +53e: 4d e7 d0 00 bas %r14,0\(%r7,%r13\) - +542: 41 22 90 00 la %r2,0\(%r2,%r9\) + +[0-9a-f]+: 58 20 d0 08 l %r2,8\(%r13\) + +[0-9a-f]+: 4d e7 d0 00 bas %r14,0\(%r7,%r13\) + +[0-9a-f]+: 41 22 90 00 la %r2,0\(%r2,%r9\) # GD -> IE because variable is referenced through IE too - +546: 58 20 d0 0c l %r2,12\(%r13\) - +54a: 58 22 c0 00 l %r2,0\(%r2,%r12\) - +54e: 41 22 90 00 la %r2,0\(%r2,%r9\) + +[0-9a-f]+: 58 20 d0 0c l %r2,12\(%r13\) + +[0-9a-f]+: 58 22 c0 00 l %r2,0\(%r2,%r12\) + +[0-9a-f]+: 41 22 90 00 la %r2,0\(%r2,%r9\) # GD against local variable - +552: 58 20 d0 10 l %r2,16\(%r13\) - +556: 4d e7 d0 00 bas %r14,0\(%r7,%r13\) - +55a: 41 22 90 00 la %r2,0\(%r2,%r9\) + +[0-9a-f]+: 58 20 d0 10 l %r2,16\(%r13\) + +[0-9a-f]+: 4d e7 d0 00 bas %r14,0\(%r7,%r13\) + +[0-9a-f]+: 41 22 90 00 la %r2,0\(%r2,%r9\) # GD -> IE against local variable referenced through IE too - +55e: 58 20 d0 14 l %r2,20\(%r13\) - +562: 58 22 c0 00 l %r2,0\(%r2,%r12\) - +566: 41 22 90 00 la %r2,0\(%r2,%r9\) + +[0-9a-f]+: 58 20 d0 14 l %r2,20\(%r13\) + +[0-9a-f]+: 58 22 c0 00 l %r2,0\(%r2,%r12\) + +[0-9a-f]+: 41 22 90 00 la %r2,0\(%r2,%r9\) # GD against hidden and local variable - +56a: 58 20 d0 18 l %r2,24\(%r13\) - +56e: 4d e7 d0 00 bas %r14,0\(%r7,%r13\) - +572: 41 22 90 00 la %r2,0\(%r2,%r9\) + +[0-9a-f]+: 58 20 d0 18 l %r2,24\(%r13\) + +[0-9a-f]+: 4d e7 d0 00 bas %r14,0\(%r7,%r13\) + +[0-9a-f]+: 41 22 90 00 la %r2,0\(%r2,%r9\) # GD -> IE against hidden and local variable referenced through # IE too - +576: 58 20 d0 1c l %r2,28\(%r13\) - +57a: 58 22 c0 00 l %r2,0\(%r2,%r12\) - +57e: 41 22 90 00 la %r2,0\(%r2,%r9\) + +[0-9a-f]+: 58 20 d0 1c l %r2,28\(%r13\) + +[0-9a-f]+: 58 22 c0 00 l %r2,0\(%r2,%r12\) + +[0-9a-f]+: 41 22 90 00 la %r2,0\(%r2,%r9\) # GD against hidden but not local variable - +582: 58 20 d0 20 l %r2,32\(%r13\) - +586: 4d e7 d0 00 bas %r14,0\(%r7,%r13\) - +58a: 41 22 90 00 la %r2,0\(%r2,%r9\) + +[0-9a-f]+: 58 20 d0 20 l %r2,32\(%r13\) + +[0-9a-f]+: 4d e7 d0 00 bas %r14,0\(%r7,%r13\) + +[0-9a-f]+: 41 22 90 00 la %r2,0\(%r2,%r9\) # GD -> IE against hidden but not local variable referenced through # IE too - +58e: 58 20 d0 24 l %r2,36\(%r13\) - +592: 58 22 c0 00 l %r2,0\(%r2,%r12\) - +596: 41 22 90 00 la %r2,0\(%r2,%r9\) + +[0-9a-f]+: 58 20 d0 24 l %r2,36\(%r13\) + +[0-9a-f]+: 58 22 c0 00 l %r2,0\(%r2,%r12\) + +[0-9a-f]+: 41 22 90 00 la %r2,0\(%r2,%r9\) # LD - +59a: 58 20 d0 28 l %r2,40\(%r13\) - +59e: 4d e7 d0 00 bas %r14,0\(%r7,%r13\) - +5a2: 41 32 90 00 la %r3,0\(%r2,%r9\) - +5a6: 58 40 d0 2c l %r4,44\(%r13\) - +5aa: 41 54 30 00 la %r5,0\(%r4,%r3\) - +5ae: 58 40 d0 30 l %r4,48\(%r13\) - +5b2: 41 54 30 00 la %r5,0\(%r4,%r3\) + +[0-9a-f]+: 58 20 d0 28 l %r2,40\(%r13\) + +[0-9a-f]+: 4d e7 d0 00 bas %r14,0\(%r7,%r13\) + +[0-9a-f]+: 41 32 90 00 la %r3,0\(%r2,%r9\) + +[0-9a-f]+: 58 40 d0 2c l %r4,44\(%r13\) + +[0-9a-f]+: 41 54 30 00 la %r5,0\(%r4,%r3\) + +[0-9a-f]+: 58 40 d0 30 l %r4,48\(%r13\) + +[0-9a-f]+: 41 54 30 00 la %r5,0\(%r4,%r3\) # LD against hidden and local variables - +5b6: 58 20 d0 34 l %r2,52\(%r13\) - +5ba: 4d e7 d0 00 bas %r14,0\(%r7,%r13\) - +5be: 41 32 90 00 la %r3,0\(%r2,%r9\) - +5c2: 58 40 d0 38 l %r4,56\(%r13\) - +5c6: 41 54 30 00 la %r5,0\(%r4,%r3\) - +5ca: 58 40 d0 34 l %r4,52\(%r13\) - +5ce: 41 55 30 00 la %r5,0\(%r5,%r3\) + +[0-9a-f]+: 58 20 d0 34 l %r2,52\(%r13\) + +[0-9a-f]+: 4d e7 d0 00 bas %r14,0\(%r7,%r13\) + +[0-9a-f]+: 41 32 90 00 la %r3,0\(%r2,%r9\) + +[0-9a-f]+: 58 40 d0 38 l %r4,56\(%r13\) + +[0-9a-f]+: 41 54 30 00 la %r5,0\(%r4,%r3\) + +[0-9a-f]+: 58 40 d0 34 l %r4,52\(%r13\) + +[0-9a-f]+: 41 55 30 00 la %r5,0\(%r5,%r3\) # LD against hidden but not local variables - +5d2: 58 20 d0 40 l %r2,64\(%r13\) - +5d6: 4d e7 d0 00 bas %r14,0\(%r7,%r13\) - +5da: 41 32 90 00 la %r3,0\(%r2,%r9\) - +5de: 58 30 d0 44 l %r3,68\(%r13\) - +5e2: 41 54 30 00 la %r5,0\(%r4,%r3\) - +5e6: 58 40 d0 48 l %r4,72\(%r13\) - +5ea: 41 54 30 00 la %r5,0\(%r4,%r3\) + +[0-9a-f]+: 58 20 d0 40 l %r2,64\(%r13\) + +[0-9a-f]+: 4d e7 d0 00 bas %r14,0\(%r7,%r13\) + +[0-9a-f]+: 41 32 90 00 la %r3,0\(%r2,%r9\) + +[0-9a-f]+: 58 30 d0 44 l %r3,68\(%r13\) + +[0-9a-f]+: 41 54 30 00 la %r5,0\(%r4,%r3\) + +[0-9a-f]+: 58 40 d0 48 l %r4,72\(%r13\) + +[0-9a-f]+: 41 54 30 00 la %r5,0\(%r4,%r3\) # IE against global var - +5ee: 58 30 d0 4c l %r3,76\(%r13\) - +5f2: 58 33 c0 00 l %r3,0\(%r3,%r12\) - +5f6: 41 33 30 00 la %r3,0\(%r3,%r3\) + +[0-9a-f]+: 58 30 d0 4c l %r3,76\(%r13\) + +[0-9a-f]+: 58 33 c0 00 l %r3,0\(%r3,%r12\) + +[0-9a-f]+: 41 33 30 00 la %r3,0\(%r3,%r3\) # IE against local var - +5fa: 58 30 d0 50 l %r3,80\(%r13\) - +5fe: 58 43 c0 00 l %r4,0\(%r3,%r12\) - +602: 41 54 30 00 la %r5,0\(%r4,%r3\) + +[0-9a-f]+: 58 30 d0 50 l %r3,80\(%r13\) + +[0-9a-f]+: 58 43 c0 00 l %r4,0\(%r3,%r12\) + +[0-9a-f]+: 41 54 30 00 la %r5,0\(%r4,%r3\) # IE against hidden and local var - +606: 58 30 d0 54 l %r3,84\(%r13\) - +60a: 58 43 c0 00 l %r4,0\(%r3,%r12\) - +60e: 41 54 30 00 la %r5,0\(%r4,%r3\) + +[0-9a-f]+: 58 30 d0 54 l %r3,84\(%r13\) + +[0-9a-f]+: 58 43 c0 00 l %r4,0\(%r3,%r12\) + +[0-9a-f]+: 41 54 30 00 la %r5,0\(%r4,%r3\) # IE against hidden but not local var - +612: 58 30 d0 58 l %r3,88\(%r13\) - +616: 58 43 c0 00 l %r4,0\(%r3,%r12\) - +61a: 41 54 30 00 la %r5,0\(%r4,%r3\) + +[0-9a-f]+: 58 30 d0 58 l %r3,88\(%r13\) + +[0-9a-f]+: 58 43 c0 00 l %r4,0\(%r3,%r12\) + +[0-9a-f]+: 41 54 30 00 la %r5,0\(%r4,%r3\) # IE against global var with small got access (no optimization) - +61e: 58 30 c0 34 l %r3,52\(%r12\) - +622: 41 33 90 00 la %r3,0\(%r3,%r9\) + +[0-9a-f]+: 58 30 c0 34 l %r3,52\(%r12\) + +[0-9a-f]+: 41 33 90 00 la %r3,0\(%r3,%r9\) # IE against local var with small got access (no optimization) - +626: 58 30 c0 1c l %r3,28\(%r12\) - +62a: 41 33 90 00 la %r3,0\(%r3,%r9\) + +[0-9a-f]+: 58 30 c0 1c l %r3,28\(%r12\) + +[0-9a-f]+: 41 33 90 00 la %r3,0\(%r3,%r9\) # IE against hidden and local var with small got access # (no optimization) - +62e: 58 30 c0 40 l %r3,64\(%r12\) - +632: 41 33 90 00 la %r3,0\(%r3,%r9\) + +[0-9a-f]+: 58 30 c0 40 l %r3,64\(%r12\) + +[0-9a-f]+: 41 33 90 00 la %r3,0\(%r3,%r9\) # IE against hidden but not local var with small got access # (no optimization) - +636: 58 30 c0 44 l %r3,68\(%r12\) - +63a: 41 33 90 00 la %r3,0\(%r3,%r9\) + +[0-9a-f]+: 58 30 c0 44 l %r3,68\(%r12\) + +[0-9a-f]+: 41 33 90 00 la %r3,0\(%r3,%r9\) # function prolog - +63e: 98 6e f0 78 lm %r6,%r14,120\(%r15\) - +642: 07 fe br %r14 + +[0-9a-f]+: 98 6e f0 78 lm %r6,%r14,120\(%r15\) + +[0-9a-f]+: 07 fe br %r14 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlspic.rd binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlspic.rd --- binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlspic.rd 2003-03-19 09:19:17.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlspic.rd 2004-05-27 11:26:06.571920979 -0700 @@ -5,7 +5,7 @@ #readelf: -Ssrl #target: s390-*-* -There are 18 section headers, starting at offset 0x[0-9a-f]+: +There are 17 section headers, starting at offset 0x[0-9a-f]+: Section Headers: \[Nr\] Name +Type +Addr +Off +Size +ES Flg Lk Inf Al @@ -16,32 +16,31 @@ Section Headers: \[ 4\] .rela.dyn +.* \[ 5\] .rela.plt +.* \[ 6\] .plt +.* - \[ 7\] .text +PROGBITS +0+4bc 0+4bc 0+188 00 AX 0 +0 4 - \[ 8\] .data +.* - \[ 9\] .tdata +PROGBITS +0+1644 0+644 0+60 00 WAT 0 +0 1 - \[10\] .tbss +NOBITS +0+16a4 0+6a4 0+20 00 WAT 0 +0 1 - \[11\] .dynamic +DYNAMIC +0+16a4 0+6a4 0+98 08 WA 3 +0 4 - \[12\] .got +PROGBITS +0+173c 0+73c 0+58 04 WA 0 +0 4 - \[13\] .sbss +.* - \[14\] .bss +.* - \[15\] .shstrtab +.* - \[16\] .symtab +.* - \[17\] .strtab +.* + \[ 7\] .text +PROGBITS +.* + \[ 8\] .tdata +PROGBITS +0+1600 0+600 0+60 00 WAT 0 +0 32 + \[ 9\] .tbss +NOBITS +0+1660 0+660 0+20 00 WAT 0 +0 1 + \[10\] .dynamic +DYNAMIC +0+1660 0+660 0+98 08 WA 3 +0 4 + \[11\] .got +PROGBITS +0+16f8 0+6f8 0+58 04 WA 0 +0 4 + \[12\] .data +.* + \[13\] .bss +.* + \[14\] .shstrtab +.* + \[15\] .symtab +.* + \[16\] .strtab +.* Key to Flags: .* .* .* Elf file type is DYN \(Shared object file\) -Entry point 0x4bc +Entry point 0x[0-9a-f]+ There are 4 program headers, starting at offset [0-9]+ Program Headers: Type +Offset +VirtAddr +PhysAddr +FileSiz MemSiz Flg Align LOAD +0x0+ 0x0+ 0x0+ 0x[0-9a-f]+ 0x[0-9a-f]+ R E 0x1000 - LOAD +0x0+644 0x0+1644 0x0+1644 0x00150 0x00150 RW 0x1000 - DYNAMIC +0x0+6a4 0x0+16a4 0x0+16a4 0x0+98 0x0+98 RW 0x4 - TLS +0x0+644 0x0+1644 0x0+1644 0x0+60 0x0+80 R +0x1 + LOAD +0x0+600 0x0+1600 0x0+1600 0x00150 0x00150 RW 0x1000 + DYNAMIC +0x0+660 0x0+1660 0x0+1660 0x0+98 0x0+98 RW 0x4 + TLS +0x0+600 0x0+1600 0x0+1600 0x0+60 0x0+80 R +0x20 Section to Segment mapping: Segment Sections... @@ -50,7 +49,7 @@ Program Headers: +02 +.tbss .dynamic +03 +.tdata .tbss -Relocation section '.rela.dyn' at offset 0x3c8 contains 14 entries: +Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 14 entries: Offset +Info +Type +Sym.Value Sym. Name \+ Addend [0-9a-f]+ 0+36 R_390_TLS_DTPMOD +0+ [0-9a-f]+ 0+38 R_390_TLS_TPOFF +0+24 @@ -62,104 +61,94 @@ Relocation section '.rela.dyn' at offset [0-9a-f]+ 0+38 R_390_TLS_TPOFF +0+70 [0-9a-f]+ 0+36 R_390_TLS_DTPMOD +0+ [0-9a-f]+ 0+38 R_390_TLS_TPOFF +0+44 -[0-9a-f]+ 0+1338 R_390_TLS_TPOFF +0+10 +sg5 \+ 0 -[0-9a-f]+ 0+1536 R_390_TLS_DTPMOD 0+ +sg1 \+ 0 -[0-9a-f]+ 0+1537 R_390_TLS_DTPOFF 0+ +sg1 \+ 0 -[0-9a-f]+ 0+1838 R_390_TLS_TPOFF +0+4 +sg2 \+ 0 +[0-9a-f]+ 0+a38 R_390_TLS_TPOFF +0+10 +sg5 \+ 0 +[0-9a-f]+ 0+c36 R_390_TLS_DTPMOD 0+ +sg1 \+ 0 +[0-9a-f]+ 0+c37 R_390_TLS_DTPOFF 0+ +sg1 \+ 0 +[0-9a-f]+ 0+f38 R_390_TLS_TPOFF +0+4 +sg2 \+ 0 Relocation section '.rela.plt' at offset 0x[0-9a-f]+ contains 1 entries: Offset +Info +Type +Sym.Value Sym. Name \+ Addend -[0-9a-f]+ 0+140b R_390_JMP_SLOT +0+ +__tls_get_offset \+ 0 +[0-9a-f]+ 0+b0b R_390_JMP_SLOT +0+ +__tls_get_offset \+ 0 -Symbol table '.dynsym' contains 30 entries: +Symbol table '.dynsym' contains 21 entries: +Num: +Value Size Type +Bind +Vis +Ndx Name - +0: 0+ +0 NOTYPE LOCAL DEFAULT UND - +1: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +1 - +2: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +2 - +3: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +3 - +4: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +4 - +5: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +5 - +6: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +6 - +7: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +7 - +8: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +8 - +9: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +9 - +10: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +10 - +11: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +11 - +12: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +12 - +13: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +13 - +14: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +14 - +15: 0+1c +0 TLS +GLOBAL DEFAULT +9 sg8 - +16: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC - +17: 0+8 +0 TLS +GLOBAL DEFAULT +9 sg3 - +18: 0+c +0 TLS +GLOBAL DEFAULT +9 sg4 - +19: 0+10 +0 TLS +GLOBAL DEFAULT +9 sg5 - +20: 0+ +0 NOTYPE GLOBAL DEFAULT UND __tls_get_offset - +21: 0+ +0 TLS +GLOBAL DEFAULT +9 sg1 - +22: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +7 fn1 - +23: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start - +24: 0+4 +0 TLS +GLOBAL DEFAULT +9 sg2 - +25: 0+14 +0 TLS +GLOBAL DEFAULT +9 sg6 - +26: 0+18 +0 TLS +GLOBAL DEFAULT +9 sg7 - +27: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata - +28: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ - +29: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end + +[0-9]+: 0+ +0 NOTYPE LOCAL DEFAULT UND + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +7 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +8 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +9 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +12 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +13 + +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +8 sg8 + +[0-9]+: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC + +[0-9]+: 0+8 +0 TLS +GLOBAL DEFAULT +8 sg3 + +[0-9]+: 0+c +0 TLS +GLOBAL DEFAULT +8 sg4 + +[0-9]+: 0+10 +0 TLS +GLOBAL DEFAULT +8 sg5 + +[0-9]+: 0+ +0 NOTYPE GLOBAL DEFAULT UND __tls_get_offset + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +8 sg1 + +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +7 fn1 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start + +[0-9]+: 0+4 +0 TLS +GLOBAL DEFAULT +8 sg2 + +[0-9]+: 0+14 +0 TLS +GLOBAL DEFAULT +8 sg6 + +[0-9]+: 0+18 +0 TLS +GLOBAL DEFAULT +8 sg7 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata + +[0-9]+: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end -Symbol table '.symtab' contains 57 entries: +Symbol table '.symtab' contains 56 entries: +Num: +Value Size Type +Bind +Vis +Ndx Name - +0: 0+ +0 NOTYPE LOCAL DEFAULT UND - +1: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +1 - +2: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +2 - +3: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +3 - +4: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +4 - +5: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +5 - +6: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +6 - +7: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +7 - +8: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +8 - +9: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +9 - +10: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +10 - +11: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +11 - +12: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +12 - +13: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +13 - +14: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +14 - +15: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +15 - +16: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +16 - +17: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +17 - +18: 0+20 +0 TLS +LOCAL DEFAULT +9 sl1 - +19: 0+24 +0 TLS +LOCAL DEFAULT +9 sl2 - +20: 0+28 +0 TLS +LOCAL DEFAULT +9 sl3 - +21: 0+2c +0 TLS +LOCAL DEFAULT +9 sl4 - +22: 0+30 +0 TLS +LOCAL DEFAULT +9 sl5 - +23: 0+34 +0 TLS +LOCAL DEFAULT +9 sl6 - +24: 0+38 +0 TLS +LOCAL DEFAULT +9 sl7 - +25: 0+3c +0 TLS +LOCAL DEFAULT +9 sl8 - +26: 0+60 +0 TLS +LOCAL HIDDEN +10 sH1 - +27: 0+48 +0 TLS +LOCAL HIDDEN +9 sh3 - +28: 0+64 +0 TLS +LOCAL HIDDEN +10 sH2 - +29: 0+78 +0 TLS +LOCAL HIDDEN +10 sH7 - +30: 0+58 +0 TLS +LOCAL HIDDEN +9 sh7 - +31: 0+5c +0 TLS +LOCAL HIDDEN +9 sh8 - +32: 0+6c +0 TLS +LOCAL HIDDEN +10 sH4 - +33: 0+4c +0 TLS +LOCAL HIDDEN +9 sh4 - +34: 0+68 +0 TLS +LOCAL HIDDEN +10 sH3 - +35: 0+50 +0 TLS +LOCAL HIDDEN +9 sh5 - +36: 0+70 +0 TLS +LOCAL HIDDEN +10 sH5 - +37: 0+74 +0 TLS +LOCAL HIDDEN +10 sH6 - +38: 0+7c +0 TLS +LOCAL HIDDEN +10 sH8 - +39: 0+40 +0 TLS +LOCAL HIDDEN +9 sh1 - +40: 0+44 +0 TLS +LOCAL HIDDEN +9 sh2 - +41: 0+54 +0 TLS +LOCAL HIDDEN +9 sh6 - +42: 0+1c +0 TLS +GLOBAL DEFAULT +9 sg8 - +43: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC - +44: 0+8 +0 TLS +GLOBAL DEFAULT +9 sg3 - +45: 0+c +0 TLS +GLOBAL DEFAULT +9 sg4 - +46: 0+10 +0 TLS +GLOBAL DEFAULT +9 sg5 - +47: 0+ +0 NOTYPE GLOBAL DEFAULT UND __tls_get_offset - +48: 0+ +0 TLS +GLOBAL DEFAULT +9 sg1 - +49: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +7 fn1 - +50: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start - +51: 0+4 +0 TLS +GLOBAL DEFAULT +9 sg2 - +52: 0+14 +0 TLS +GLOBAL DEFAULT +9 sg6 - +53: 0+18 +0 TLS +GLOBAL DEFAULT +9 sg7 - +54: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata - +55: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ - +56: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end + +[0-9]+: 0+ +0 NOTYPE LOCAL DEFAULT UND + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +1 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +2 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +3 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +4 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +5 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +6 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +7 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +8 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +9 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +10 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +11 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +12 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +13 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +14 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +15 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +16 + +[0-9]+: 0+20 +0 TLS +LOCAL DEFAULT +8 sl1 + +[0-9]+: 0+24 +0 TLS +LOCAL DEFAULT +8 sl2 + +[0-9]+: 0+28 +0 TLS +LOCAL DEFAULT +8 sl3 + +[0-9]+: 0+2c +0 TLS +LOCAL DEFAULT +8 sl4 + +[0-9]+: 0+30 +0 TLS +LOCAL DEFAULT +8 sl5 + +[0-9]+: 0+34 +0 TLS +LOCAL DEFAULT +8 sl6 + +[0-9]+: 0+38 +0 TLS +LOCAL DEFAULT +8 sl7 + +[0-9]+: 0+3c +0 TLS +LOCAL DEFAULT +8 sl8 + +[0-9]+: 0+60 +0 TLS +LOCAL HIDDEN +9 sH1 + +[0-9]+: 0+48 +0 TLS +LOCAL HIDDEN +8 sh3 + +[0-9]+: 0+64 +0 TLS +LOCAL HIDDEN +9 sH2 + +[0-9]+: 0+78 +0 TLS +LOCAL HIDDEN +9 sH7 + +[0-9]+: 0+58 +0 TLS +LOCAL HIDDEN +8 sh7 + +[0-9]+: 0+5c +0 TLS +LOCAL HIDDEN +8 sh8 + +[0-9]+: 0+6c +0 TLS +LOCAL HIDDEN +9 sH4 + +[0-9]+: 0+4c +0 TLS +LOCAL HIDDEN +8 sh4 + +[0-9]+: 0+68 +0 TLS +LOCAL HIDDEN +9 sH3 + +[0-9]+: 0+50 +0 TLS +LOCAL HIDDEN +8 sh5 + +[0-9]+: 0+70 +0 TLS +LOCAL HIDDEN +9 sH5 + +[0-9]+: 0+74 +0 TLS +LOCAL HIDDEN +9 sH6 + +[0-9]+: 0+7c +0 TLS +LOCAL HIDDEN +9 sH8 + +[0-9]+: 0+40 +0 TLS +LOCAL HIDDEN +8 sh1 + +[0-9]+: 0+44 +0 TLS +LOCAL HIDDEN +8 sh2 + +[0-9]+: 0+54 +0 TLS +LOCAL HIDDEN +8 sh6 + +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +8 sg8 + +[0-9]+: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC + +[0-9]+: 0+8 +0 TLS +GLOBAL DEFAULT +8 sg3 + +[0-9]+: 0+c +0 TLS +GLOBAL DEFAULT +8 sg4 + +[0-9]+: 0+10 +0 TLS +GLOBAL DEFAULT +8 sg5 + +[0-9]+: 0+ +0 NOTYPE GLOBAL DEFAULT UND __tls_get_offset + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +8 sg1 + +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +7 fn1 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start + +[0-9]+: 0+4 +0 TLS +GLOBAL DEFAULT +8 sg2 + +[0-9]+: 0+14 +0 TLS +GLOBAL DEFAULT +8 sg6 + +[0-9]+: 0+18 +0 TLS +GLOBAL DEFAULT +8 sg7 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata + +[0-9]+: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlspic.sd binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlspic.sd --- binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlspic.sd 2003-03-19 09:19:17.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlspic.sd 2004-05-27 11:26:06.574920591 -0700 @@ -8,9 +8,9 @@ .*: +file format elf32-s390 Contents of section .got: - 173c [0-9a-f]+ 00000000 00000000 [0-9a-f]+ .* - 174c 00000000 00000020 00000000 00000000 .* - 175c 00000000 00000000 00000000 00000060 .* - 176c 00000000 00000000 00000000 00000000 .* - 177c 00000000 00000000 00000000 00000000 .* - 178c 00000040 00000000 +.* + [0-9a-f]+ [0-9a-f]+ 00000000 00000000 [0-9a-f]+ .* + [0-9a-f]+ 00000000 00000020 00000000 00000000 .* + [0-9a-f]+ 00000000 00000000 00000000 00000060 .* + [0-9a-f]+ 00000000 00000000 00000000 00000000 .* + [0-9a-f]+ 00000000 00000000 00000000 00000000 .* + [0-9a-f]+ 00000040 00000000 +.* diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlspic.td binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlspic.td --- binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlspic.td 2003-03-19 09:19:17.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlspic.td 2004-05-27 11:26:06.578920074 -0700 @@ -8,9 +8,9 @@ .*: +file format elf32-s390 Contents of section .tdata: - 1644 00000011 00000012 00000013 00000014 .* - 1654 00000015 00000016 00000017 00000018 .* - 1664 00000041 00000042 00000043 00000044 .* - 1674 00000045 00000046 00000047 00000048 .* - 1684 00000101 00000102 00000103 00000104 .* - 1694 00000105 00000106 00000107 00000108 .* + [0-9a-f]+ 00000011 00000012 00000013 00000014 .* + [0-9a-f]+ 00000015 00000016 00000017 00000018 .* + [0-9a-f]+ 00000041 00000042 00000043 00000044 .* + [0-9a-f]+ 00000045 00000046 00000047 00000048 .* + [0-9a-f]+ 00000101 00000102 00000103 00000104 .* + [0-9a-f]+ 00000105 00000106 00000107 00000108 .* diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlspic1.s binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlspic1.s --- binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlspic1.s 2003-03-19 09:19:17.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlspic1.s 2004-05-27 11:26:06.580919815 -0700 @@ -1,4 +1,5 @@ .section ".tdata", "awT", @progbits + .balign 32 .globl sg1, sg2, sg3, sg4, sg5, sg6, sg7, sg8 .globl sh1, sh2, sh3, sh4, sh5, sh6, sh7, sh8 .hidden sh1, sh2, sh3, sh4, sh5, sh6, sh7, sh8 @@ -29,6 +30,7 @@ sh8: .long 264 .text .globl fn1 .type fn1,@function + .balign 64 fn1: /* Funtion prolog */ stm %r6,%r14,24(%r15) diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlspic1_64.s binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlspic1_64.s --- binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlspic1_64.s 2003-03-19 09:19:17.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlspic1_64.s 2004-05-27 11:26:06.593918134 -0700 @@ -1,4 +1,5 @@ .section ".tdata", "awT", @progbits + .balign 32 .globl sg1, sg2, sg3, sg4, sg5, sg6, sg7, sg8 .globl sh1, sh2, sh3, sh4, sh5, sh6, sh7, sh8 .hidden sh1, sh2, sh3, sh4, sh5, sh6, sh7, sh8 @@ -29,6 +30,7 @@ sh8: .long 264 .text .globl fn1 .type fn1,@function + .balign 64 fn1: /* Funtion prolog */ stmg %r6,%r14,48(%r15) diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlspic_64.dd binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlspic_64.dd --- binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlspic_64.dd 2003-03-19 09:19:17.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlspic_64.dd 2004-05-27 11:26:06.674907661 -0700 @@ -9,186 +9,194 @@ Disassembly of section .text: -0+790 : +0+[0-9a-f]+ : # function prolog - +790: eb 6e f0 30 00 24 stmg %r6,%r14,48\(%r15\) - +796: a7 d5 00 56 bras %r13,842 + +[0-9a-f]+: eb 6e f0 30 00 24 stmg %r6,%r14,48\(%r15\) + +[0-9a-f]+: a7 d5 00 56 bras %r13,[0-9a-f]+ # sg1@tlsgd - +79a: 00 00 00 00 .long 0x00000000 - +79e: 00 00 00 70 .long 0x00000070 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 70 .long 0x00000070 # sg2@tlsgd - +7a2: 00 00 00 00 .long 0x00000000 - +7a6: 00 00 00 90 .long 0x00000090 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 90 .long 0x00000090 # sl1@tlsgd - +7aa: 00 00 00 00 .long 0x00000000 - +7ae: 00 00 00 20 .long 0x00000020 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 20 .long 0x00000020 # sl2@tlsgd - +7b2: 00 00 00 00 .long 0x00000000 - +7b6: 00 00 00 30 .long 0x00000030 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 30 .long 0x00000030 # sh1@tlsgd - +7ba: 00 00 00 00 .long 0x00000000 - +7be: 00 00 00 98 .long 0x00000098 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 98 .long 0x00000098 # sh2@tlsgd - +7c2: 00 00 00 00 .long 0x00000000 - +7c6: 00 00 00 a8 .long 0x000000a8 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 a8 .long 0x000000a8 # sH1@tlsgd - +7ca: 00 00 00 00 .long 0x00000000 - +7ce: 00 00 00 50 .long 0x00000050 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 50 .long 0x00000050 # sH2@tlsgd - +7d2: 00 00 00 00 .long 0x00000000 - +7d6: 00 00 00 60 .long 0x00000060 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 60 .long 0x00000060 # sl1@tlsldm - +7da: 00 00 00 00 .long 0x00000000 - +7de: 00 00 00 40 .long 0x00000040 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 40 .long 0x00000040 # sl1@dtpoff - +7e2: 00 00 00 00 .long 0x00000000 - +7e6: 00 00 00 20 .long 0x00000020 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 20 .long 0x00000020 # sl2@dtpoff - +7ea: 00 00 00 00 .long 0x00000000 - +7ee: 00 00 00 24 .long 0x00000024 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 24 .long 0x00000024 # sh1@tlsldm - +7f2: 00 00 00 00 .long 0x00000000 - +7f6: 00 00 00 40 .long 0x00000040 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 40 .long 0x00000040 # sh1@dtpoff - +7fa: 00 00 00 00 .long 0x00000000 - +7fe: 00 00 00 40 .long 0x00000040 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 40 .long 0x00000040 # sh2@dtpoff - +802: 00 00 00 00 .long 0x00000000 - +806: 00 00 00 44 .long 0x00000044 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 44 .long 0x00000044 # sH1@tlsldm - +80a: 00 00 00 00 .long 0x00000000 - +80e: 00 00 00 40 .long 0x00000040 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 40 .long 0x00000040 # sH1@dtpoff - +812: 00 00 00 00 .long 0x00000000 - +816: 00 00 00 60 .long 0x00000060 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 60 .long 0x00000060 # sH2@dtpoff - +81a: 00 00 00 00 .long 0x00000000 - +81e: 00 00 00 64 .long 0x00000064 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 64 .long 0x00000064 # sg2@gotntpoff - +822: 00 00 00 00 .long 0x00000000 - +826: 00 00 00 90 .long 0x00000090 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 90 .long 0x00000090 # sl2@gotntpoff - +82a: 00 00 00 00 .long 0x00000000 - +82e: 00 00 00 30 .long 0x00000030 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 30 .long 0x00000030 # sh2@gotntpoff - +832: 00 00 00 00 .long 0x00000000 - +836: 00 00 00 a8 .long 0x000000a8 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 a8 .long 0x000000a8 # sH2@gotntpoff - +83a: 00 00 00 00 .long 0x00000000 - +83e: 00 00 00 60 .long 0x00000060 + +[0-9a-f]+: 00 00 00 00 .long 0x00000000 + +[0-9a-f]+: 00 00 00 60 .long 0x00000060 # function prolog - +842: b9 04 00 ef lgr %r14,%r15 - +846: c0 c0 00 00 09 a5 larl %r12,1b90 <_GLOBAL_OFFSET_TABLE_> - +84c: a7 fb ff 60 aghi %r15,-160 - +850: e3 e0 e0 00 00 24 stg %r14,0\(%r14\) + +[0-9a-f]+: b9 04 00 ef lgr %r14,%r15 + +[0-9a-f]+: c0 c0 [0-9a-f ]+ larl %r12,[0-9a-f]+ <_GLOBAL_OFFSET_TABLE_> + +[0-9a-f]+: a7 fb ff 60 aghi %r15,-160 + +[0-9a-f]+: e3 e0 e0 00 00 24 stg %r14,0\(%r14\) # extract TCB - +856: b2 4f 00 90 ear %r9,%a0 - +85a: eb 94 00 20 00 0d sllg %r9,%r4,32 - +860: b2 4f 00 91 ear %r9,%a1 + +[0-9a-f]+: b2 4f 00 90 ear %r9,%a0 + +[0-9a-f]+: eb 94 00 20 00 0d sllg %r9,%r4,32 + +[0-9a-f]+: b2 4f 00 91 ear %r9,%a1 # GD - +864: e3 20 d0 00 00 04 lg %r2,0\(%r13\) - +86a: c0 e5 ff ff ff 83 brasl %r14,770 - +870: 41 22 90 00 la %r2,0\(%r2,%r9\) + +[0-9a-f]+: e3 20 d0 00 00 04 lg %r2,0\(%r13\) + +[0-9a-f]+: c0 e5 [0-9a-f ]+ brasl %r14,[0-9a-f]+ <.*> + +[0-9a-f]+: 41 22 90 00 la %r2,0\(%r2,%r9\) # GD -> IE because variable is referenced through IE too - +874: e3 20 d0 08 00 04 lg %r2,8\(%r13\) - +87a: e3 22 c0 00 00 04 lg %r2,0\(%r2,%r12\) - +880: 41 22 90 00 la %r2,0\(%r2,%r9\) + +[0-9a-f]+: e3 20 d0 08 00 04 lg %r2,8\(%r13\) + +[0-9a-f]+: e3 22 c0 00 00 04 lg %r2,0\(%r2,%r12\) + +[0-9a-f]+: 41 22 90 00 la %r2,0\(%r2,%r9\) # GD against local variable - +884: e3 20 d0 10 00 04 lg %r2,16\(%r13\) - +88a: c0 e5 ff ff ff 73 brasl %r14,770 - +890: 41 22 90 00 la %r2,0\(%r2,%r9\) + +[0-9a-f]+: e3 20 d0 10 00 04 lg %r2,16\(%r13\) + +[0-9a-f]+: c0 e5 [0-9a-f ]+ brasl %r14,[0-9a-f]+ <.*> + +[0-9a-f]+: 41 22 90 00 la %r2,0\(%r2,%r9\) # GD -> IE against local variable referenced through IE too - +894: e3 20 d0 18 00 04 lg %r2,24\(%r13\) - +89a: e3 22 c0 00 00 04 lg %r2,0\(%r2,%r12\) - +8a0: 41 22 90 00 la %r2,0\(%r2,%r9\) + +[0-9a-f]+: e3 20 d0 18 00 04 lg %r2,24\(%r13\) + +[0-9a-f]+: e3 22 c0 00 00 04 lg %r2,0\(%r2,%r12\) + +[0-9a-f]+: 41 22 90 00 la %r2,0\(%r2,%r9\) # GD against hidden and local variable - +8a4: e3 20 d0 20 00 04 lg %r2,32\(%r13\) - +8aa: c0 e5 ff ff ff 63 brasl %r14,770 - +8b0: 41 22 90 00 la %r2,0\(%r2,%r9\) + +[0-9a-f]+: e3 20 d0 20 00 04 lg %r2,32\(%r13\) + +[0-9a-f]+: c0 e5 [0-9a-f ]+ brasl %r14,[0-9a-f]+ <.*> + +[0-9a-f]+: 41 22 90 00 la %r2,0\(%r2,%r9\) # GD -> IE against hidden and local variable referenced through # IE too - +8b4: e3 20 d0 28 00 04 lg %r2,40\(%r13\) - +8ba: e3 22 c0 00 00 04 lg %r2,0\(%r2,%r12\) - +8c0: 41 22 90 00 la %r2,0\(%r2,%r9\) + +[0-9a-f]+: e3 20 d0 28 00 04 lg %r2,40\(%r13\) + +[0-9a-f]+: e3 22 c0 00 00 04 lg %r2,0\(%r2,%r12\) + +[0-9a-f]+: 41 22 90 00 la %r2,0\(%r2,%r9\) # GD against hidden but not local variable - +8c4: e3 20 d0 30 00 04 lg %r2,48\(%r13\) - +8ca: c0 e5 ff ff ff 53 brasl %r14,770 - +8d0: 41 22 90 00 la %r2,0\(%r2,%r9\) + +[0-9a-f]+: e3 20 d0 30 00 04 lg %r2,48\(%r13\) + +[0-9a-f]+: c0 e5 [0-9a-f ]+ brasl %r14,[0-9a-f]+ <.*> + +[0-9a-f]+: 41 22 90 00 la %r2,0\(%r2,%r9\) # GD -> IE against hidden but not local variable referenced through # IE too - +8d4: e3 20 d0 38 00 04 lg %r2,56\(%r13\) - +8da: e3 22 c0 00 00 04 lg %r2,0\(%r2,%r12\) - +8e0: 41 22 90 00 la %r2,0\(%r2,%r9\) + +[0-9a-f]+: e3 20 d0 38 00 04 lg %r2,56\(%r13\) + +[0-9a-f]+: e3 22 c0 00 00 04 lg %r2,0\(%r2,%r12\) + +[0-9a-f]+: 41 22 90 00 la %r2,0\(%r2,%r9\) # LD - +8e4: e3 20 d0 40 00 04 lg %r2,64\(%r13\) - +8ea: c0 e5 ff ff ff 43 brasl %r14,770 - +8f0: 41 32 90 00 la %r3,0\(%r2,%r9\) - +8f4: e3 40 d0 48 00 04 lg %r4,72\(%r13\) - +8fa: 41 54 30 00 la %r5,0\(%r4,%r3\) - +8fe: e3 40 d0 50 00 04 lg %r4,80\(%r13\) - +904: 41 54 30 00 la %r5,0\(%r4,%r3\) + +[0-9a-f]+: e3 20 d0 40 00 04 lg %r2,64\(%r13\) + +[0-9a-f]+: c0 e5 [0-9a-f ]+ brasl %r14,[0-9a-f]+ <.*> + +[0-9a-f]+: 41 32 90 00 la %r3,0\(%r2,%r9\) + +[0-9a-f]+: e3 40 d0 48 00 04 lg %r4,72\(%r13\) + +[0-9a-f]+: 41 54 30 00 la %r5,0\(%r4,%r3\) + +[0-9a-f]+: e3 40 d0 50 00 04 lg %r4,80\(%r13\) + +[0-9a-f]+: 41 54 30 00 la %r5,0\(%r4,%r3\) # LD against hidden and local variables - +908: e3 20 d0 58 00 04 lg %r2,88\(%r13\) - +90e: c0 e5 ff ff ff 31 brasl %r14,770 - +914: 41 32 90 00 la %r3,0\(%r2,%r9\) - +918: e3 40 d0 60 00 04 lg %r4,96\(%r13\) - +91e: 41 54 30 00 la %r5,0\(%r4,%r3\) - +922: e3 40 d0 68 00 04 lg %r4,104\(%r13\) - +928: 41 54 30 00 la %r5,0\(%r4,%r3\) + +[0-9a-f]+: e3 20 d0 58 00 04 lg %r2,88\(%r13\) + +[0-9a-f]+: c0 e5 [0-9a-f ]+ brasl %r14,[0-9a-f]+ <.*> + +[0-9a-f]+: 41 32 90 00 la %r3,0\(%r2,%r9\) + +[0-9a-f]+: e3 40 d0 60 00 04 lg %r4,96\(%r13\) + +[0-9a-f]+: 41 54 30 00 la %r5,0\(%r4,%r3\) + +[0-9a-f]+: e3 40 d0 68 00 04 lg %r4,104\(%r13\) + +[0-9a-f]+: 41 54 30 00 la %r5,0\(%r4,%r3\) # LD against hidden but not local variables - +92c: e3 20 d0 70 00 04 lg %r2,112\(%r13\) - +932: c0 e5 ff ff ff 1f brasl %r14,770 - +938: 41 32 90 00 la %r3,0\(%r2,%r9\) - +93c: e3 40 d0 78 00 04 lg %r4,120\(%r13\) - +942: 41 54 30 00 la %r5,0\(%r4,%r3\) - +946: e3 40 d0 80 00 04 lg %r4,128\(%r13\) - +94c: 41 54 30 00 la %r5,0\(%r4,%r3\) + +[0-9a-f]+: e3 20 d0 70 00 04 lg %r2,112\(%r13\) + +[0-9a-f]+: c0 e5 [0-9a-f ]+ brasl %r14,[0-9a-f]+ <.*> + +[0-9a-f]+: 41 32 90 00 la %r3,0\(%r2,%r9\) + +[0-9a-f]+: e3 40 d0 78 00 04 lg %r4,120\(%r13\) + +[0-9a-f]+: 41 54 30 00 la %r5,0\(%r4,%r3\) + +[0-9a-f]+: e3 40 d0 80 00 04 lg %r4,128\(%r13\) + +[0-9a-f]+: 41 54 30 00 la %r5,0\(%r4,%r3\) # IE against global var - +950: e3 30 d0 88 00 04 lg %r3,136\(%r13\) - +956: e3 33 c0 00 00 04 lg %r3,0\(%r3,%r12\) - +95c: 41 33 90 00 la %r3,0\(%r3,%r9\) + +[0-9a-f]+: e3 30 d0 88 00 04 lg %r3,136\(%r13\) + +[0-9a-f]+: e3 33 c0 00 00 04 lg %r3,0\(%r3,%r12\) + +[0-9a-f]+: 41 33 90 00 la %r3,0\(%r3,%r9\) # IE against local var - +960: e3 30 d0 90 00 04 lg %r3,144\(%r13\) - +966: e3 43 c0 00 00 04 lg %r4,0\(%r3,%r12\) - +96c: 41 54 90 00 la %r5,0\(%r4,%r9\) + +[0-9a-f]+: e3 30 d0 90 00 04 lg %r3,144\(%r13\) + +[0-9a-f]+: e3 43 c0 00 00 04 lg %r4,0\(%r3,%r12\) + +[0-9a-f]+: 41 54 90 00 la %r5,0\(%r4,%r9\) # IE against hidden and local var - +970: e3 30 d0 98 00 04 lg %r3,152\(%r13\) - +976: e3 43 c0 00 00 04 lg %r4,0\(%r3,%r12\) - +97c: 41 54 90 00 la %r5,0\(%r4,%r9\) + +[0-9a-f]+: e3 30 d0 98 00 04 lg %r3,152\(%r13\) + +[0-9a-f]+: e3 43 c0 00 00 04 lg %r4,0\(%r3,%r12\) + +[0-9a-f]+: 41 54 90 00 la %r5,0\(%r4,%r9\) # IE against hidden but not local var - +980: e3 30 d0 a0 00 04 lg %r3,160\(%r13\) - +986: e3 43 c0 00 00 04 lg %r4,0\(%r3,%r12\) - +98c: 41 54 90 00 la %r5,0\(%r4,%r9\) + +[0-9a-f]+: e3 30 d0 a0 00 04 lg %r3,160\(%r13\) + +[0-9a-f]+: e3 43 c0 00 00 04 lg %r4,0\(%r3,%r12\) + +[0-9a-f]+: 41 54 90 00 la %r5,0\(%r4,%r9\) # IE against global var with larl got access - +990: c0 30 00 00 09 34 larl %r3,1bf8 <\_GLOBAL\_OFFSET\_TABLE\_\+0x68> - +996: e3 33 c0 00 00 04 lg %r3,0\(%r3,%r12\) - +99c: 41 33 90 00 la %r3,0\(%r3,%r9\) + +[0-9a-f]+: c0 30 [0-9a-f ]+ larl %r3,[0-9a-f]+ <\_GLOBAL\_OFFSET\_TABLE\_\+0x68> + +[0-9a-f]+: e3 33 c0 00 00 04 lg %r3,0\(%r3,%r12\) + +[0-9a-f]+: 41 33 90 00 la %r3,0\(%r3,%r9\) # IE against local var with larl got access - +9a0: c0 30 00 00 09 14 larl %r3,1bc8 <\_GLOBAL\_OFFSET\_TABLE\_\+0x38> - +9a6: e3 43 c0 00 00 04 lg %r4,0\(%r3,%r12\) - +9ac: 41 54 90 00 la %r5,0\(%r4,%r9\) + +[0-9a-f]+: c0 30 [0-9a-f ]+ larl %r3,[0-9a-f]+ <\_GLOBAL\_OFFSET\_TABLE\_\+0x38> + +[0-9a-f]+: e3 43 c0 00 00 04 lg %r4,0\(%r3,%r12\) + +[0-9a-f]+: 41 54 90 00 la %r5,0\(%r4,%r9\) # IE against hidden and local var with larl got access - +9b0: c0 30 00 00 09 30 larl %r3,1c10 <\_GLOBAL\_OFFSET\_TABLE\_\+0x80> - +9b6: e3 43 c0 00 00 04 lg %r4,0\(%r3,%r12\) - +9bc: 41 54 90 00 la %r5,0\(%r4,%r9\) + +[0-9a-f]+: c0 30 [0-9a-f ]+ larl %r3,[0-9a-f]+ <\_GLOBAL\_OFFSET\_TABLE\_\+0x80> + +[0-9a-f]+: e3 43 c0 00 00 04 lg %r4,0\(%r3,%r12\) + +[0-9a-f]+: 41 54 90 00 la %r5,0\(%r4,%r9\) # IE against hidden but not local var with larl got access - +9c0: c0 30 00 00 09 2c larl %r3,1c18 <\_GLOBAL\_OFFSET\_TABLE\_\+0x88> - +9c6: e3 43 c0 00 00 04 lg %r4,0\(%r3,%r12\) - +9cc: 41 54 90 00 la %r5,0\(%r4,%r9\) + +[0-9a-f]+: c0 30 [0-9a-f ]+ larl %r3,[0-9a-f]+ <\_GLOBAL\_OFFSET\_TABLE\_\+0x88> + +[0-9a-f]+: e3 43 c0 00 00 04 lg %r4,0\(%r3,%r12\) + +[0-9a-f]+: 41 54 90 00 la %r5,0\(%r4,%r9\) # IE against global var with small got access (no optimization) - +9d0: e3 30 c0 68 00 04 lg %r3,104\(%r12\) - +9d6: 41 33 90 00 la %r3,0\(%r3,%r9\) + +[0-9a-f]+: e3 30 c0 68 00 04 lg %r3,104\(%r12\) + +[0-9a-f]+: 41 33 90 00 la %r3,0\(%r3,%r9\) # IE against local var with small got access (no optimization) - +9da: e3 30 c0 38 00 04 lg %r3,56\(%r12\) - +9e0: 41 33 90 00 la %r3,0\(%r3,%r9\) + +[0-9a-f]+: e3 30 c0 38 00 04 lg %r3,56\(%r12\) + +[0-9a-f]+: 41 33 90 00 la %r3,0\(%r3,%r9\) # IE against hidden and local var with small got access # (no optimization) - +9e4: e3 30 c0 80 00 04 lg %r3,128\(%r12\) - +9ea: 41 33 90 00 la %r3,0\(%r3,%r9\) + +[0-9a-f]+: e3 30 c0 80 00 04 lg %r3,128\(%r12\) + +[0-9a-f]+: 41 33 90 00 la %r3,0\(%r3,%r9\) # IE against hidden but not local var with small got access # (no optimization) - +9ee: e3 30 c0 88 00 04 lg %r3,136\(%r12\) - +9f4: 41 33 90 00 la %r3,0\(%r3,%r9\) + +[0-9a-f]+: e3 30 c0 88 00 04 lg %r3,136\(%r12\) + +[0-9a-f]+: 41 33 90 00 la %r3,0\(%r3,%r9\) # function epilog - +9f8: eb 6e f0 d0 00 04 lmg %r6,%r14,208\(%r15\) - +9fe: 07 fe br %r14 + +[0-9a-f]+: eb 6e f0 d0 00 04 lmg %r6,%r14,208\(%r15\) + +[0-9a-f]+: 07 fe br %r14 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 + +[0-9a-f]+: 07 07 bcr 0,%r7 diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlspic_64.rd binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlspic_64.rd --- binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlspic_64.rd 2003-03-19 09:19:17.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlspic_64.rd 2004-05-27 11:26:06.681906756 -0700 @@ -5,7 +5,7 @@ #readelf: -WSsrl #target: s390x-*-* -There are 18 section headers, starting at offset 0x[0-9a-f]+: +There are 17 section headers, starting at offset 0x[0-9a-f]+: Section Headers: \[Nr\] Name +Type +Address +Off +Size +ES Flg Lk Inf Al @@ -16,32 +16,31 @@ Section Headers: \[ 4\] .rela.dyn +.* \[ 5\] .rela.plt +.* \[ 6\] .plt +.* - \[ 7\] .text +PROGBITS +0+790 0+790 0+270 00 +AX +0 +0 +4 - \[ 8\] .data +.* - \[ 9\] .tdata +PROGBITS +0+1a00 0+a00 0+60 00 WAT +0 +0 +1 - \[10\] .tbss +NOBITS +0+1a60 0+a60 0+20 00 WAT +0 +0 +1 - \[11\] .dynamic +DYNAMIC +0+1a60 0+a60 0+130 10 +WA +3 +0 +8 - \[12\] .got +PROGBITS +0+1b90 0+b90 0+b0 08 +WA +0 +0 +8 - \[13\] .sbss +.* - \[14\] .bss +.* - \[15\] .shstrtab +.* - \[16\] .symtab +.* - \[17\] .strtab +.* + \[ 7\] .text +PROGBITS +.* + \[ 8\] .tdata +PROGBITS +0+1900 0+900 0+60 00 WAT +0 +0 +32 + \[ 9\] .tbss +NOBITS +0+1960 0+960 0+20 00 WAT +0 +0 +1 + \[10\] .dynamic +DYNAMIC +0+1960 0+960 0+130 10 +WA +3 +0 +8 + \[11\] .got +PROGBITS +0+1a90 0+a90 0+b0 08 +WA +0 +0 +8 + \[12\] .data +.* + \[13\] .bss +.* + \[14\] .shstrtab +.* + \[15\] .symtab +.* + \[16\] .strtab +.* Key to Flags: .* .* .* Elf file type is DYN \(Shared object file\) -Entry point 0x790 +Entry point 0x[0-9a-f]+ There are 4 program headers, starting at offset [0-9]+ Program Headers: Type +Offset +VirtAddr +PhysAddr +FileSiz +MemSiz +Flg Align LOAD +0x0+ 0x0+ 0x0+ 0x[0-9a-f]+ 0x[0-9a-f]+ R E 0x1000 - LOAD +0x0+a00 0x0+1a00 0x0+1a00 0x0+240 0x0+240 RW +0x1000 - DYNAMIC +0x0+a60 0x0+1a60 0x0+1a60 0x0+130 0x0+130 RW +0x8 - TLS +0x0+a00 0x0+1a00 0x0+1a00 0x0+60 0x0+80 R +0x1 + LOAD +0x0+900 0x0+1900 0x0+1900 0x0+240 0x0+240 RW +0x1000 + DYNAMIC +0x0+960 0x0+1960 0x0+1960 0x0+130 0x0+130 RW +0x8 + TLS +0x0+900 0x0+1900 0x0+1900 0x0+60 0x0+80 R +0x20 Section to Segment mapping: Segment Sections... @@ -52,114 +51,104 @@ Program Headers: Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 14 entries: +Offset +Info +Type +Symbol's Value Symbol's Name \+ Addend -[0-9a-z]+ 0+36 R_390_TLS_DTPMOD +0+ -[0-9a-z]+ 0+38 R_390_TLS_TPOFF +0+24 -[0-9a-z]+ 0+38 R_390_TLS_TPOFF +0+30 -[0-9a-z]+ 0+36 R_390_TLS_DTPMOD +0+ -[0-9a-z]+ 0+36 R_390_TLS_DTPMOD +0+ -[0-9a-z]+ 0+38 R_390_TLS_TPOFF +0+64 -[0-9a-z]+ 0+38 R_390_TLS_TPOFF +0+50 -[0-9a-z]+ 0+38 R_390_TLS_TPOFF +0+70 -[0-9a-z]+ 0+36 R_390_TLS_DTPMOD +0+ -[0-9a-z]+ 0+38 R_390_TLS_TPOFF +0+44 -[0-9a-z]+ 0+130+38 R_390_TLS_TPOFF +0+10 sg5 \+ 0 -[0-9a-z]+ 0+150+36 R_390_TLS_DTPMOD +0+ sg1 \+ 0 -[0-9a-z]+ 0+150+37 R_390_TLS_DTPOFF +0+ sg1 \+ 0 -[0-9a-z]+ 0+180+38 R_390_TLS_TPOFF +0+4 sg2 \+ 0 +[0-9a-f]+ 0+36 R_390_TLS_DTPMOD +0+ +[0-9a-f]+ 0+38 R_390_TLS_TPOFF +0+24 +[0-9a-f]+ 0+38 R_390_TLS_TPOFF +0+30 +[0-9a-f]+ 0+36 R_390_TLS_DTPMOD +0+ +[0-9a-f]+ 0+36 R_390_TLS_DTPMOD +0+ +[0-9a-f]+ 0+38 R_390_TLS_TPOFF +0+64 +[0-9a-f]+ 0+38 R_390_TLS_TPOFF +0+50 +[0-9a-f]+ 0+38 R_390_TLS_TPOFF +0+70 +[0-9a-f]+ 0+36 R_390_TLS_DTPMOD +0+ +[0-9a-f]+ 0+38 R_390_TLS_TPOFF +0+44 +[0-9a-f]+ 0+a0+38 R_390_TLS_TPOFF +0+10 sg5 \+ 0 +[0-9a-f]+ 0+c0+36 R_390_TLS_DTPMOD +0+ sg1 \+ 0 +[0-9a-f]+ 0+c0+37 R_390_TLS_DTPOFF +0+ sg1 \+ 0 +[0-9a-f]+ 0+f0+38 R_390_TLS_TPOFF +0+4 sg2 \+ 0 -Relocation section '.rela.plt' at offset 0x738 contains 1 entries: +Relocation section '.rela.plt' at offset 0x[0-9a-f]+ contains 1 entries: +Offset +Info +Type +Symbol's Value Symbol's Name \+ Addend -0+1ba8 0+140+b R_390_JMP_SLOT +0+ __tls_get_offset \+ 0 +[0-9a-f]+ 0+b0+b R_390_JMP_SLOT +0+ __tls_get_offset \+ 0 -Symbol table '.dynsym' contains 30 entries: +Symbol table '.dynsym' contains 21 entries: +Num: +Value +Size Type +Bind +Vis +Ndx Name - +0: 0+ +0 NOTYPE LOCAL DEFAULT UND - +1: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +1 - +2: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +2 - +3: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +3 - +4: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +4 - +5: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +5 - +6: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +6 - +7: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +7 - +8: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +8 - +9: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +9 - +10: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +10 - +11: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +11 - +12: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +12 - +13: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +13 - +14: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +14 - +15: 0+1c +0 TLS +GLOBAL DEFAULT +9 sg8 - +16: [0-9a-z]+ +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC - +17: 0+8 +0 TLS +GLOBAL DEFAULT +9 sg3 - +18: 0+c +0 TLS +GLOBAL DEFAULT +9 sg4 - +19: 0+10 +0 TLS +GLOBAL DEFAULT +9 sg5 - +20: 0+ +0 NOTYPE GLOBAL DEFAULT UND __tls_get_offset - +21: 0+ +0 TLS +GLOBAL DEFAULT +9 sg1 - +22: [0-9a-z]+ +0 FUNC +GLOBAL DEFAULT +7 fn1 - +23: [0-9a-z]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start - +24: 0+4 +0 TLS +GLOBAL DEFAULT +9 sg2 - +25: 0+14 +0 TLS +GLOBAL DEFAULT +9 sg6 - +26: 0+18 +0 TLS +GLOBAL DEFAULT +9 sg7 - +27: [0-9a-z]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata - +28: [0-9a-z]+ +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ - +29: 0+1c40 +0 NOTYPE GLOBAL DEFAULT ABS _end + +[0-9]+: 0+ +0 NOTYPE LOCAL DEFAULT UND + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +7 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +8 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +9 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +12 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +13 + +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +8 sg8 + +[0-9]+: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC + +[0-9]+: 0+8 +0 TLS +GLOBAL DEFAULT +8 sg3 + +[0-9]+: 0+c +0 TLS +GLOBAL DEFAULT +8 sg4 + +[0-9]+: 0+10 +0 TLS +GLOBAL DEFAULT +8 sg5 + +[0-9]+: 0+ +0 NOTYPE GLOBAL DEFAULT UND __tls_get_offset + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +8 sg1 + +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +7 fn1 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start + +[0-9]+: 0+4 +0 TLS +GLOBAL DEFAULT +8 sg2 + +[0-9]+: 0+14 +0 TLS +GLOBAL DEFAULT +8 sg6 + +[0-9]+: 0+18 +0 TLS +GLOBAL DEFAULT +8 sg7 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata + +[0-9]+: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end -Symbol table '.symtab' contains 57 entries: +Symbol table '.symtab' contains 56 entries: +Num: +Value +Size Type +Bind +Vis +Ndx Name - +0: 0+ +0 NOTYPE LOCAL DEFAULT UND - +1: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +1 - +2: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +2 - +3: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +3 - +4: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +4 - +5: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +5 - +6: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +6 - +7: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +7 - +8: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +8 - +9: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +9 - +10: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +10 - +11: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +11 - +12: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +12 - +13: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +13 - +14: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +14 - +15: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +15 - +16: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +16 - +17: [0-9a-z]+ +0 SECTION LOCAL DEFAULT +17 - +18: 0+20 +0 TLS +LOCAL DEFAULT +9 sl1 - +19: 0+24 +0 TLS +LOCAL DEFAULT +9 sl2 - +20: 0+28 +0 TLS +LOCAL DEFAULT +9 sl3 - +21: 0+2c +0 TLS +LOCAL DEFAULT +9 sl4 - +22: 0+30 +0 TLS +LOCAL DEFAULT +9 sl5 - +23: 0+34 +0 TLS +LOCAL DEFAULT +9 sl6 - +24: 0+38 +0 TLS +LOCAL DEFAULT +9 sl7 - +25: 0+3c +0 TLS +LOCAL DEFAULT +9 sl8 - +26: 0+60 +0 TLS +LOCAL HIDDEN +10 sH1 - +27: 0+48 +0 TLS +LOCAL HIDDEN +9 sh3 - +28: 0+64 +0 TLS +LOCAL HIDDEN +10 sH2 - +29: 0+78 +0 TLS +LOCAL HIDDEN +10 sH7 - +30: 0+58 +0 TLS +LOCAL HIDDEN +9 sh7 - +31: 0+5c +0 TLS +LOCAL HIDDEN +9 sh8 - +32: 0+6c +0 TLS +LOCAL HIDDEN +10 sH4 - +33: 0+4c +0 TLS +LOCAL HIDDEN +9 sh4 - +34: 0+68 +0 TLS +LOCAL HIDDEN +10 sH3 - +35: 0+50 +0 TLS +LOCAL HIDDEN +9 sh5 - +36: 0+70 +0 TLS +LOCAL HIDDEN +10 sH5 - +37: 0+74 +0 TLS +LOCAL HIDDEN +10 sH6 - +38: 0+7c +0 TLS +LOCAL HIDDEN +10 sH8 - +39: 0+40 +0 TLS +LOCAL HIDDEN +9 sh1 - +40: 0+44 +0 TLS +LOCAL HIDDEN +9 sh2 - +41: 0+54 +0 TLS +LOCAL HIDDEN +9 sh6 - +42: 0+1c +0 TLS +GLOBAL DEFAULT +9 sg8 - +43: [0-9a-z]+ +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC - +44: 0+8 +0 TLS +GLOBAL DEFAULT +9 sg3 - +45: 0+c +0 TLS +GLOBAL DEFAULT +9 sg4 - +46: 0+10 +0 TLS +GLOBAL DEFAULT +9 sg5 - +47: 0+ +0 NOTYPE GLOBAL DEFAULT UND __tls_get_offset - +48: 0+ +0 TLS +GLOBAL DEFAULT +9 sg1 - +49: [0-9a-z]+ +0 FUNC +GLOBAL DEFAULT +7 fn1 - +50: [0-9a-z]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start - +51: 0+4 +0 TLS +GLOBAL DEFAULT +9 sg2 - +52: 0+14 +0 TLS +GLOBAL DEFAULT +9 sg6 - +53: 0+18 +0 TLS +GLOBAL DEFAULT +9 sg7 - +54: [0-9a-z]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata - +55: [0-9a-z]+ +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ - +56: [0-9a-z]+ +0 NOTYPE GLOBAL DEFAULT ABS _end + +[0-9]+: 0+ +0 NOTYPE LOCAL DEFAULT UND + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +1 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +2 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +3 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +4 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +5 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +6 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +7 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +8 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +9 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +10 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +11 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +12 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +13 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +14 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +15 + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +16 + +[0-9]+: 0+20 +0 TLS +LOCAL DEFAULT +8 sl1 + +[0-9]+: 0+24 +0 TLS +LOCAL DEFAULT +8 sl2 + +[0-9]+: 0+28 +0 TLS +LOCAL DEFAULT +8 sl3 + +[0-9]+: 0+2c +0 TLS +LOCAL DEFAULT +8 sl4 + +[0-9]+: 0+30 +0 TLS +LOCAL DEFAULT +8 sl5 + +[0-9]+: 0+34 +0 TLS +LOCAL DEFAULT +8 sl6 + +[0-9]+: 0+38 +0 TLS +LOCAL DEFAULT +8 sl7 + +[0-9]+: 0+3c +0 TLS +LOCAL DEFAULT +8 sl8 + +[0-9]+: 0+60 +0 TLS +LOCAL HIDDEN +9 sH1 + +[0-9]+: 0+48 +0 TLS +LOCAL HIDDEN +8 sh3 + +[0-9]+: 0+64 +0 TLS +LOCAL HIDDEN +9 sH2 + +[0-9]+: 0+78 +0 TLS +LOCAL HIDDEN +9 sH7 + +[0-9]+: 0+58 +0 TLS +LOCAL HIDDEN +8 sh7 + +[0-9]+: 0+5c +0 TLS +LOCAL HIDDEN +8 sh8 + +[0-9]+: 0+6c +0 TLS +LOCAL HIDDEN +9 sH4 + +[0-9]+: 0+4c +0 TLS +LOCAL HIDDEN +8 sh4 + +[0-9]+: 0+68 +0 TLS +LOCAL HIDDEN +9 sH3 + +[0-9]+: 0+50 +0 TLS +LOCAL HIDDEN +8 sh5 + +[0-9]+: 0+70 +0 TLS +LOCAL HIDDEN +9 sH5 + +[0-9]+: 0+74 +0 TLS +LOCAL HIDDEN +9 sH6 + +[0-9]+: 0+7c +0 TLS +LOCAL HIDDEN +9 sH8 + +[0-9]+: 0+40 +0 TLS +LOCAL HIDDEN +8 sh1 + +[0-9]+: 0+44 +0 TLS +LOCAL HIDDEN +8 sh2 + +[0-9]+: 0+54 +0 TLS +LOCAL HIDDEN +8 sh6 + +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +8 sg8 + +[0-9]+: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC + +[0-9]+: 0+8 +0 TLS +GLOBAL DEFAULT +8 sg3 + +[0-9]+: 0+c +0 TLS +GLOBAL DEFAULT +8 sg4 + +[0-9]+: 0+10 +0 TLS +GLOBAL DEFAULT +8 sg5 + +[0-9]+: 0+ +0 NOTYPE GLOBAL DEFAULT UND __tls_get_offset + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +8 sg1 + +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +7 fn1 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start + +[0-9]+: 0+4 +0 TLS +GLOBAL DEFAULT +8 sg2 + +[0-9]+: 0+14 +0 TLS +GLOBAL DEFAULT +8 sg6 + +[0-9]+: 0+18 +0 TLS +GLOBAL DEFAULT +8 sg7 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata + +[0-9]+: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlspic_64.sd binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlspic_64.sd --- binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlspic_64.sd 2003-03-19 09:19:17.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlspic_64.sd 2004-05-27 11:26:06.681906756 -0700 @@ -8,14 +8,14 @@ .*: +file format elf64-s390 Contents of section .got: - 1b90 [0-9a-f]+ [0-9a-f]+ 00000000 00000000 .* - 1ba0 00000000 00000000 [0-9a-f]+ [0-9a-f]+ .* - 1bb0 00000000 00000000 00000000 00000020 .* - 1bc0 00000000 00000000 00000000 00000000 .* - 1bd0 00000000 00000000 00000000 00000000 .* - 1be0 00000000 00000000 00000000 00000060 .* - 1bf0 00000000 00000000 00000000 00000000 .* - 1c00 00000000 00000000 00000000 00000000 .* - 1c10 00000000 00000000 00000000 00000000 .* - 1c20 00000000 00000000 00000000 00000000 .* - 1c30 00000000 00000040 00000000 00000000 .* + [0-9a-f]+ [0-9a-f]+ [0-9a-f]+ 00000000 00000000 .* + [0-9a-f]+ 00000000 00000000 [0-9a-f]+ [0-9a-f]+ .* + [0-9a-f]+ 00000000 00000000 00000000 00000020 .* + [0-9a-f]+ 00000000 00000000 00000000 00000000 .* + [0-9a-f]+ 00000000 00000000 00000000 00000000 .* + [0-9a-f]+ 00000000 00000000 00000000 00000060 .* + [0-9a-f]+ 00000000 00000000 00000000 00000000 .* + [0-9a-f]+ 00000000 00000000 00000000 00000000 .* + [0-9a-f]+ 00000000 00000000 00000000 00000000 .* + [0-9a-f]+ 00000000 00000000 00000000 00000000 .* + [0-9a-f]+ 00000000 00000040 00000000 00000000 .* diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlspic_64.td binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlspic_64.td --- binutils-2.15.90.0.3/ld/testsuite/ld-s390/tlspic_64.td 2003-03-19 09:19:17.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-s390/tlspic_64.td 2004-05-27 11:26:06.682906627 -0700 @@ -8,9 +8,9 @@ .*: +file format elf64-s390 Contents of section .tdata: - 1a00 00000011 00000012 00000013 00000014 .* - 1a10 00000015 00000016 00000017 00000018 .* - 1a20 00000041 00000042 00000043 00000044 .* - 1a30 00000045 00000046 00000047 00000048 .* - 1a40 00000101 00000102 00000103 00000104 .* - 1a50 00000105 00000106 00000107 00000108 .* + [0-9a-f]+ 00000011 00000012 00000013 00000014 .* + [0-9a-f]+ 00000015 00000016 00000017 00000018 .* + [0-9a-f]+ 00000041 00000042 00000043 00000044 .* + [0-9a-f]+ 00000045 00000046 00000047 00000048 .* + [0-9a-f]+ 00000101 00000102 00000103 00000104 .* + [0-9a-f]+ 00000105 00000106 00000107 00000108 .* diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-sh/sh64/crange1.rd binutils-2.15.91.0.1/ld/testsuite/ld-sh/sh64/crange1.rd --- binutils-2.15.90.0.3/ld/testsuite/ld-sh/sh64/crange1.rd 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-sh/sh64/crange1.rd 2004-05-27 11:26:06.708903265 -0700 @@ -13,7 +13,7 @@ Section Headers: \[ 8\] \.stack PROGBITS 00080000 000180 000004 00 WA 0 0 1 \[ 9\] \.cranges LOUSER\+1 00000000 000184 00001e 00 W 0 0 1 \[10\] \.shstrtab STRTAB 00000000 0001a2 000056 00 0 0 1 - \[11\] \.symtab SYMTAB 00000000 000400 000180 10 12 e 4 + \[11\] \.symtab SYMTAB 00000000 000400 000180 10 12 14 4 \[12\] \.strtab STRTAB 00000000 000580 000064 00 0 0 1 Key to Flags: W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\) diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-sh/sh64/crange2.rd binutils-2.15.91.0.1/ld/testsuite/ld-sh/sh64/crange2.rd --- binutils-2.15.90.0.3/ld/testsuite/ld-sh/sh64/crange2.rd 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-sh/sh64/crange2.rd 2004-05-27 11:26:06.708903265 -0700 @@ -13,7 +13,7 @@ Section Headers: \[ 8\] \.stack PROGBITS 00080000 000180 000004 00 WA 0 0 1 \[ 9\] \.cranges LOUSER\+1 00000000 000184 000046 00 W 0 0 1 \[10\] \.shstrtab STRTAB 00000000 0001ca 000056 00 0 0 1 - \[11\] \.symtab SYMTAB 00000000 000428 0001c0 10 12 12 4 + \[11\] \.symtab SYMTAB 00000000 000428 0001c0 10 12 18 4 \[12\] \.strtab STRTAB 00000000 0005e8 000078 00 0 0 1 Key to Flags: W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\) diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-sh/sh64/crange3-cmpct.rd binutils-2.15.91.0.1/ld/testsuite/ld-sh/sh64/crange3-cmpct.rd --- binutils-2.15.90.0.3/ld/testsuite/ld-sh/sh64/crange3-cmpct.rd 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-sh/sh64/crange3-cmpct.rd 2004-05-27 11:26:06.709903136 -0700 @@ -32,7 +32,7 @@ Section Headers: \[ 8\] \.stack PROGBITS 00080000 000200 000004 00 WA 0 0 1 \[ 9\] \.cranges LOUSER\+1 00000000 000204 00003c 00 W 0 0 1 \[10\] \.shstrtab STRTAB 00000000 000240 000056 00 0 0 1 - \[11\] \.symtab SYMTAB 00000000 0004a0 0001b0 10 12 10 4 + \[11\] \.symtab SYMTAB 00000000 0004a0 0001b0 10 12 16 4 \[12\] \.strtab STRTAB 00000000 000650 000078 00 0 0 1 Key to Flags: W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\) diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-sh/sh64/crange3-media.rd binutils-2.15.91.0.1/ld/testsuite/ld-sh/sh64/crange3-media.rd --- binutils-2.15.90.0.3/ld/testsuite/ld-sh/sh64/crange3-media.rd 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-sh/sh64/crange3-media.rd 2004-05-27 11:26:06.724901196 -0700 @@ -32,7 +32,7 @@ Section Headers: \[ 8\] \.stack PROGBITS 00080000 000200 000004 00 WA 0 0 1 \[ 9\] \.cranges LOUSER\+1 00000000 000204 00003c 00 W 0 0 1 \[10\] \.shstrtab STRTAB 00000000 000240 000056 00 0 0 1 - \[11\] \.symtab SYMTAB 00000000 0004a0 0001b0 10 12 10 4 + \[11\] \.symtab SYMTAB 00000000 0004a0 0001b0 10 12 16 4 \[12\] \.strtab STRTAB 00000000 000650 000078 00 0 0 1 Key to Flags: W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\) diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-sh/sh64/crange3.rd binutils-2.15.91.0.1/ld/testsuite/ld-sh/sh64/crange3.rd --- binutils-2.15.90.0.3/ld/testsuite/ld-sh/sh64/crange3.rd 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-sh/sh64/crange3.rd 2004-05-27 11:26:06.725901067 -0700 @@ -13,7 +13,7 @@ Section Headers: \[ 8\] \.stack PROGBITS 00080000 000200 000004 00 WA 0 0 1 \[ 9\] \.cranges LOUSER\+1 00000000 000204 00003c 00 W 0 0 1 \[10\] \.shstrtab STRTAB 00000000 000240 000056 00 0 0 1 - \[11\] \.symtab SYMTAB 00000000 0004a0 0001b0 10 12 10 4 + \[11\] \.symtab SYMTAB 00000000 0004a0 0001b0 10 12 16 4 \[12\] \.strtab STRTAB 00000000 000650 000078 00 0 0 1 Key to Flags: W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\) diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-sh/sh64/crangerel1.rd binutils-2.15.91.0.1/ld/testsuite/ld-sh/sh64/crangerel1.rd --- binutils-2.15.90.0.3/ld/testsuite/ld-sh/sh64/crangerel1.rd 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-sh/sh64/crangerel1.rd 2004-05-27 11:26:06.725901067 -0700 @@ -11,7 +11,7 @@ Section Headers: \[ 6\] \.cranges PROGBITS 00000000 000050 00001e 00 W 0 0 1 \[ 7\] \.rela\.cranges RELA 00000000 000274 000024 0c 9 6 4 \[ 8\] \.shstrtab STRTAB 00000000 00006e 00004d 00 0 0 1 - \[ 9\] \.symtab SYMTAB 00000000 000298 0000d0 10 10 c 4 + \[ 9\] \.symtab SYMTAB 00000000 000298 0000d0 10 10 12 4 \[10\] \.strtab STRTAB 00000000 000368 000013 00 0 0 1 Key to Flags: W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\) diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-sh/sh64/crangerel2.rd binutils-2.15.91.0.1/ld/testsuite/ld-sh/sh64/crangerel2.rd --- binutils-2.15.90.0.3/ld/testsuite/ld-sh/sh64/crangerel2.rd 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-sh/sh64/crangerel2.rd 2004-05-27 11:26:06.726900938 -0700 @@ -11,7 +11,7 @@ Section Headers: \[ 6\] \.cranges PROGBITS 00000000 000094 000046 00 W 0 0 1 \[ 7\] \.rela\.cranges RELA 00000000 0002e0 000054 0c 9 6 4 \[ 8\] \.shstrtab STRTAB 00000000 0000da 00004d 00 0 0 1 - \[ 9\] \.symtab SYMTAB 00000000 000334 000110 10 10 10 4 + \[ 9\] \.symtab SYMTAB 00000000 000334 000110 10 10 16 4 \[10\] \.strtab STRTAB 00000000 000444 000027 00 0 0 1 Key to Flags: W \(write\), A \(alloc\), X \(execute\), M \(merge\), S \(strings\) diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-sh/sh64/relax.exp binutils-2.15.91.0.1/ld/testsuite/ld-sh/sh64/relax.exp --- binutils-2.15.90.0.3/ld/testsuite/ld-sh/sh64/relax.exp 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-sh/sh64/relax.exp 2004-05-27 11:26:06.726900938 -0700 @@ -116,7 +116,7 @@ proc run_sh64relaxtest {sh64relaxtests} if {$expect_relaxed == -1} { pass $testname - continue; + continue } verbose "$testname: file $binfile doesn't exist" 1 diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-sh/sh64/relfail.exp binutils-2.15.91.0.1/ld/testsuite/ld-sh/sh64/relfail.exp --- binutils-2.15.90.0.3/ld/testsuite/ld-sh/sh64/relfail.exp 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-sh/sh64/relfail.exp 2004-05-27 11:26:06.745898481 -0700 @@ -150,10 +150,10 @@ proc run_sh64relfailtests {sh64relfailte } if {$as_options == ""} { - set as_options $def_as_options; + set as_options $def_as_options } if {$ld_options == ""} { - set ld_options $def_ld_options; + set ld_options $def_ld_options } if { $is_unresolved } { @@ -165,7 +165,7 @@ proc run_sh64relfailtests {sh64relfailte puts $asm " .text" puts $asm " .global $startsym" puts $asm "$startsym:" - puts $asm " $opcode"; + puts $asm " $opcode" close $asm if ![ld_assemble $as "$as_options tmpdir/relfail-$testindex.s" "tmpdir/relfail-$testindex.o"] { diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-sh/tlsbin-1.d binutils-2.15.91.0.1/ld/testsuite/ld-sh/tlsbin-1.d --- binutils-2.15.90.0.3/ld/testsuite/ld-sh/tlsbin-1.d 2003-05-05 14:46:50.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-sh/tlsbin-1.d 2004-05-27 11:26:06.698904558 -0700 @@ -21,7 +21,7 @@ Disassembly of section \.text: 401010: 09 00 nop 401012: 09 00 nop 401014: 09 00 nop - 401016: 04 d0 mov\.l 401028 ,r0 ! 0x1c + 401016: 04 d0 mov\.l 401028 ,r0 ! 0x1c .* 401018: 12 04 stc gbr,r4 40101a: ce 00 mov\.l @\(r0,r12\),r0 40101c: 4c 30 add r4,r0 @@ -38,7 +38,7 @@ Disassembly of section \.text: 401032: 09 00 nop 401034: 09 00 nop 401036: 09 00 nop - 401038: 03 d0 mov\.l 401048 ,r0 ! 0x14 + 401038: 03 d0 mov\.l 401048 ,r0 ! 0x14 .* 40103a: 12 04 stc gbr,r4 40103c: ce 00 mov\.l @\(r0,r12\),r0 40103e: 4c 30 add r4,r0 @@ -54,7 +54,7 @@ Disassembly of section \.text: 401052: 09 00 nop 401054: 09 00 nop 401056: 09 00 nop - 401058: 03 d4 mov\.l 401068 ,r4 ! 0x8 + 401058: 03 d4 mov\.l 401068 ,r4 ! 0x8 .* 40105a: 12 00 stc gbr,r0 40105c: 4c 30 add r4,r0 40105e: 09 00 nop @@ -70,7 +70,7 @@ Disassembly of section \.text: 401072: 09 00 nop 401074: 09 00 nop 401076: 09 00 nop - 401078: 03 d4 mov\.l 401088 ,r4 ! 0x10 + 401078: 03 d4 mov\.l 401088 ,r4 ! 0x10 .* 40107a: 12 00 stc gbr,r0 40107c: 4c 30 add r4,r0 40107e: 09 00 nop @@ -86,7 +86,7 @@ Disassembly of section \.text: 401092: 09 00 nop 401094: 09 00 nop 401096: 09 00 nop - 401098: 03 d4 mov\.l 4010a8 ,r4 ! 0x18 + 401098: 03 d4 mov\.l 4010a8 ,r4 ! 0x18 .* 40109a: 12 00 stc gbr,r0 40109c: 4c 30 add r4,r0 40109e: 09 00 nop @@ -116,11 +116,11 @@ Disassembly of section \.text: 4010ce: [0-9a-f]+ [0-9a-f]+ .*[ ]*.* 4010d0: 09 00 nop 4010d2: 09 00 nop - 4010d4: 2c d1 mov\.l 401188 ,r1 ! 0x10 + 4010d4: 2c d1 mov\.l 401188 ,r1 ! 0x10 .* 4010d6: 0c 31 add r0,r1 4010d8: 09 00 nop 4010da: 09 00 nop - 4010dc: 2b d2 mov\.l 40118c ,r2 ! 0x14 + 4010dc: 2b d2 mov\.l 40118c ,r2 ! 0x14 .* 4010de: 0c 32 add r0,r2 4010e0: 09 00 nop 4010e2: 09 00 nop @@ -140,17 +140,17 @@ Disassembly of section \.text: 4010fe: [0-9a-f]+ [0-9a-f]+ .*[ ]*.* 401100: 09 00 nop 401102: 09 00 nop - 401104: 22 d1 mov\.l 401190 ,r1 ! 0x18 + 401104: 22 d1 mov\.l 401190 ,r1 ! 0x18 .* 401106: 0c 31 add r0,r1 401108: 09 00 nop 40110a: 09 00 nop - 40110c: 21 d2 mov\.l 401194 ,r2 ! 0x1c + 40110c: 21 d2 mov\.l 401194 ,r2 ! 0x1c .* 40110e: 0c 32 add r0,r2 401110: 09 00 nop 401112: 09 00 nop 401114: 09 00 nop 401116: 09 00 nop - 401118: 02 d0 mov\.l 401124 ,r0 ! 0x14 + 401118: 02 d0 mov\.l 401124 ,r0 ! 0x14 .* 40111a: 12 01 stc gbr,r1 40111c: ce 00 mov\.l @\(r0,r12\),r0 40111e: 03 a0 bra 401128 @@ -162,7 +162,7 @@ Disassembly of section \.text: 40112a: 09 00 nop 40112c: 09 00 nop 40112e: 09 00 nop - 401130: 02 d0 mov\.l 40113c ,r0 ! 0x18 + 401130: 02 d0 mov\.l 40113c ,r0 ! 0x18 .* 401132: 12 01 stc gbr,r1 401134: ce 00 mov\.l @\(r0,r12\),r0 401136: 03 a0 bra 401140 @@ -174,7 +174,7 @@ Disassembly of section \.text: 401142: 09 00 nop 401144: 09 00 nop 401146: 09 00 nop - 401148: 02 d0 mov\.l 401154 ,r0 ! 0x8 + 401148: 02 d0 mov\.l 401154 ,r0 ! 0x8 .* 40114a: 12 01 stc gbr,r1 40114c: 09 00 nop 40114e: 03 a0 bra 401158 @@ -186,7 +186,7 @@ Disassembly of section \.text: 40115a: 09 00 nop 40115c: 09 00 nop 40115e: 09 00 nop - 401160: 02 d0 mov\.l 40116c ,r0 ! 0x18 + 401160: 02 d0 mov\.l 40116c ,r0 ! 0x18 .* 401162: 12 01 stc gbr,r1 401164: 09 00 nop 401166: 03 a0 bra 401170 @@ -226,7 +226,7 @@ Disassembly of section \.text: 40200e: 09 00 nop 402010: 09 00 nop 402012: 09 00 nop - 402014: 02 d0 mov\.l 402020 <_start\+0x20>,r0 ! 0x10 + 402014: 02 d0 mov\.l 402020 <_start\+0x20>,r0 ! 0x10 .* 402016: 12 01 stc gbr,r1 402018: ce 00 mov\.l @\(r0,r12\),r0 40201a: 03 a0 bra 402024 <_start\+0x24> @@ -238,7 +238,7 @@ Disassembly of section \.text: 402026: 09 00 nop 402028: 09 00 nop 40202a: 09 00 nop - 40202c: 02 d0 mov\.l 402038 <_start\+0x38>,r0 ! 0x20 + 40202c: 02 d0 mov\.l 402038 <_start\+0x38>,r0 ! 0x20 .* 40202e: 12 01 stc gbr,r1 402030: 09 00 nop 402032: 03 a0 bra 40203c <_start\+0x3c> @@ -262,7 +262,7 @@ Disassembly of section \.text: 402056: 09 00 nop 402058: 09 00 nop 40205a: 09 00 nop - 40205c: 02 d0 mov\.l 402068 <_start\+0x68>,r0 ! 0x1c + 40205c: 02 d0 mov\.l 402068 <_start\+0x68>,r0 ! 0x1c .* 40205e: 12 01 stc gbr,r1 402060: 09 00 nop 402062: 03 a0 bra 40206c <_start\+0x6c> @@ -275,7 +275,7 @@ Disassembly of section \.text: 402070: 09 00 nop 402072: 09 00 nop 402074: 12 01 stc gbr,r1 - 402076: 0c d0 mov\.l 4020a8 <_start\+0xa8>,r0 ! 0x8 + 402076: 0c d0 mov\.l 4020a8 <_start\+0xa8>,r0 ! 0x8 .* 402078: 1c 30 add r1,r0 40207a: 09 00 nop 40207c: 09 00 nop @@ -289,7 +289,7 @@ Disassembly of section \.text: 40208c: 09 00 nop 40208e: 09 00 nop 402090: 12 01 stc gbr,r1 - 402092: 07 d0 mov\.l 4020b0 <_start\+0xb0>,r0 ! 0x18 + 402092: 07 d0 mov\.l 4020b0 <_start\+0xb0>,r0 ! 0x18 .* 402094: 1c 30 add r1,r0 402096: 09 00 nop 402098: 09 00 nop diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-sh/tlsbin-2.d binutils-2.15.91.0.1/ld/testsuite/ld-sh/tlsbin-2.d --- binutils-2.15.90.0.3/ld/testsuite/ld-sh/tlsbin-2.d 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-sh/tlsbin-2.d 2004-05-27 11:26:06.699904429 -0700 @@ -18,12 +18,11 @@ Section Headers: \[ 6\] \.rela\.plt +.* \[ 7\] \.plt +.* \[ 8\] \.text +PROGBITS +0+401000 .* - \[ 9\] \.data +.* - \[10\] \.tdata +PROGBITS +0+413000 [0-9a-f]+ 0+018 00 WAT 0 0 4 - \[11\] \.tbss +NOBITS +0+413018 [0-9a-f]+ 0+010 00 WAT 0 0 1 - \[12\] \.dynamic +DYNAMIC +0+413018 .* -#... - \[[0-9a-f]+\] \.got +PROGBITS +0+4130b8 .* + \[ 9\] \.tdata +PROGBITS +0+413000 [0-9a-f]+ 0+018 00 WAT 0 0 4 + \[10\] \.tbss +NOBITS +0+413018 [0-9a-f]+ 0+010 00 WAT 0 0 1 + \[11\] \.dynamic +DYNAMIC +0+413018 .* + \[12\] \.data +.* + \[[0-9a-f]+\] \.got +PROGBITS +0+414000 .* \[[0-9a-f]+\] \.sbss +.* \[[0-9a-f]+\] \.bss +.* #... @@ -60,14 +59,14 @@ Program Headers: Relocation section '\.rela\.dyn' at offset 0x[0-9a-f]+ contains 4 entries: Offset +Info +Type +Sym\.Value +Sym\. Name \+ Addend -0+4130c8 00000197 R_SH_TLS_TPOFF32 +0+ +sG3 \+ 0 -0+4130cc 00000397 R_SH_TLS_TPOFF32 +0+ +sG2 \+ 0 -0+4130d0 00000497 R_SH_TLS_TPOFF32 +0+ +sG4 \+ 0 -0+4130d4 0000[0-9a-f]+97 R_SH_TLS_TPOFF32 +0+ +sG1 \+ 0 +0+414010 00000197 R_SH_TLS_TPOFF32 +0+ +sG3 \+ 0 +0+414014 00000397 R_SH_TLS_TPOFF32 +0+ +sG2 \+ 0 +0+414018 00000497 R_SH_TLS_TPOFF32 +0+ +sG4 \+ 0 +0+41401c 0000[0-9a-f]+97 R_SH_TLS_TPOFF32 +0+ +sG1 \+ 0 Relocation section '\.rela\.plt' at offset 0x[0-9a-f]+ contains 1 entries: Offset +Info +Type +Sym\.Value +Sym\. Name \+ Addend -0+4130c4 000005a4 R_SH_JMP_SLOT +[0-9a-f]+ +__tls_get_addr \+ [0-9a-f]+ +0+41400c 000005a4 R_SH_JMP_SLOT +[0-9a-f]+ +__tls_get_addr \+ [0-9a-f]+ Symbol table '\.dynsym' contains [0-9]+ entries: +Num: +Value +Size Type +Bind +Vis +Ndx Name @@ -102,30 +101,29 @@ Symbol table '\.symtab' contains [0-9]+ +16: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +16 * +17: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +17 * +18: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +18 * -#... - +[0-9]+: 00000008 +0 TLS +LOCAL DEFAULT +10 sl1 - +[0-9]+: 0000000c +0 TLS +LOCAL DEFAULT +10 sl2 - +[0-9]+: 00000020 +0 TLS +LOCAL DEFAULT +11 bl1 - +[0-9]+: 00000024 +0 TLS +LOCAL DEFAULT +11 bl2 + +[0-9]+: 00000008 +0 TLS +LOCAL DEFAULT +9 sl1 + +[0-9]+: 0000000c +0 TLS +LOCAL DEFAULT +9 sl2 + +[0-9]+: 00000020 +0 TLS +LOCAL DEFAULT +10 bl1 + +[0-9]+: 00000024 +0 TLS +LOCAL DEFAULT +10 bl2 +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG3 +[0-9]+: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG2 +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG4 +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT UND __tls_get_addr - +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +10 sg1 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +9 sg1 +[0-9]+: 0+402000 +0 FUNC +GLOBAL DEFAULT +8 _start #... +[0-9]+: 0+401000 +0 FUNC +GLOBAL DEFAULT +8 fn2 #... - +[0-9]+: 00000004 +0 TLS +GLOBAL DEFAULT +10 sg2 + +[0-9]+: 00000004 +0 TLS +GLOBAL DEFAULT +9 sg2 +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG1 - +[0-9]+: 00000010 +0 TLS +GLOBAL HIDDEN +10 sh1 - +[0-9]+: 004130d8 +0 NOTYPE GLOBAL DEFAULT ABS _edata + +[0-9]+: 00000010 +0 TLS +GLOBAL HIDDEN +9 sh1 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata +[0-9]+: [0-9a-f]+ +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end - +[0-9]+: 00000014 +0 TLS +GLOBAL HIDDEN +10 sh2 - +[0-9]+: 0000001c +0 TLS +GLOBAL DEFAULT +11 bg2 - +[0-9]+: 00000018 +0 TLS +GLOBAL DEFAULT +11 bg1 + +[0-9]+: 00000014 +0 TLS +GLOBAL HIDDEN +9 sh2 + +[0-9]+: 0000001c +0 TLS +GLOBAL DEFAULT +10 bg2 + +[0-9]+: 00000018 +0 TLS +GLOBAL DEFAULT +10 bg1 #... +[0-9]+: .* #pass diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-sh/tlsbin-3.d binutils-2.15.91.0.1/ld/testsuite/ld-sh/tlsbin-3.d --- binutils-2.15.90.0.3/ld/testsuite/ld-sh/tlsbin-3.d 2003-05-05 14:46:50.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-sh/tlsbin-3.d 2004-05-27 11:26:06.700904299 -0700 @@ -8,5 +8,5 @@ .*: +file format elf32-sh.* Contents of section \.got: - 4130b8 [0-9a-f]+ 00000000 00000000 [0-9a-f]+ .* - 4130c8 00000000 00000000 00000000 00000000 .* + 414000 [0-9a-f]+ 00000000 00000000 [0-9a-f]+ .* + 414010 00000000 00000000 00000000 00000000 .* diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-sh/tlspic-1.d binutils-2.15.91.0.1/ld/testsuite/ld-sh/tlspic-1.d --- binutils-2.15.90.0.3/ld/testsuite/ld-sh/tlspic-1.d 2002-11-09 11:08:31.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-sh/tlspic-1.d 2004-05-27 11:26:06.701904170 -0700 @@ -54,7 +54,7 @@ Disassembly of section \.text: [0-9a-f]+: 09 00 nop [0-9a-f]+: 09 00 nop [0-9a-f]+: 09 00 nop - [0-9a-f]+: 03 d4 mov\.l [0-9a-f]+ ,r4 ! 0x10 + [0-9a-f]+: 03 d4 mov\.l [0-9a-f]+ ,r4 ! 0x10 .* [0-9a-f]+: 04 c7 mova [0-9a-f]+ ,r0 [0-9a-f]+: 03 d1 mov\.l [0-9a-f]+ ,r1 ! 0x[0-9a-f]+ [0-9a-f]+: 0c 31 add r0,r1 @@ -70,7 +70,7 @@ Disassembly of section \.text: [0-9a-f]+: 09 00 nop [0-9a-f]+: 09 00 nop [0-9a-f]+: 09 00 nop - [0-9a-f]+: 03 d0 mov\.l [0-9a-f]+ ,r0 ! 0x18 + [0-9a-f]+: 03 d0 mov\.l [0-9a-f]+ ,r0 ! 0x18 .* [0-9a-f]+: 12 04 stc gbr,r4 [0-9a-f]+: ce 00 mov\.l @\(r0,r12\),r0 [0-9a-f]+: 4c 30 add r4,r0 @@ -150,7 +150,7 @@ Disassembly of section \.text: [0-9a-f]+: 09 00 nop [0-9a-f]+: 09 00 nop [0-9a-f]+: 09 00 nop - [0-9a-f]+: 03 d4 mov\.l [0-9a-f]+ ,r4 ! 0x1c + [0-9a-f]+: 03 d4 mov\.l [0-9a-f]+ ,r4 ! 0x1c .* [0-9a-f]+: 04 c7 mova [0-9a-f]+ ,r0 [0-9a-f]+: 03 d1 mov\.l [0-9a-f]+ ,r1 ! 0x[0-9a-f]+ [0-9a-f]+: 0c 31 add r0,r1 @@ -164,11 +164,11 @@ Disassembly of section \.text: [0-9a-f]+: [0-9a-f]+ [0-9a-f]+ .*[ ]*.* [0-9a-f]+: 09 00 nop [0-9a-f]+: 09 00 nop - [0-9a-f]+: 38 d1 mov\.l [0-9a-f]+ ,r1 ! 0x8 + [0-9a-f]+: 38 d1 mov\.l [0-9a-f]+ ,r1 ! 0x8 .* [0-9a-f]+: 0c 31 add r0,r1 [0-9a-f]+: 09 00 nop [0-9a-f]+: 09 00 nop - [0-9a-f]+: 37 d2 mov\.l [0-9a-f]+ ,r2 ! 0xc + [0-9a-f]+: 37 d2 mov\.l [0-9a-f]+ ,r2 ! 0xc .* [0-9a-f]+: 0c 32 add r0,r2 [0-9a-f]+: 09 00 nop [0-9a-f]+: 09 00 nop @@ -188,17 +188,17 @@ Disassembly of section \.text: [0-9a-f]+: [0-9a-f]+ [0-9a-f]+ .*[ ]*.* [0-9a-f]+: 09 00 nop [0-9a-f]+: 09 00 nop - [0-9a-f]+: 2e d1 mov\.l [0-9a-f]+ ,r1 ! 0x10 + [0-9a-f]+: 2e d1 mov\.l [0-9a-f]+ ,r1 ! 0x10 .* [0-9a-f]+: 0c 31 add r0,r1 [0-9a-f]+: 09 00 nop [0-9a-f]+: 09 00 nop - [0-9a-f]+: 2d d2 mov\.l [0-9a-f]+ ,r2 ! 0x14 + [0-9a-f]+: 2d d2 mov\.l [0-9a-f]+ ,r2 ! 0x14 .* [0-9a-f]+: 0c 32 add r0,r2 [0-9a-f]+: 09 00 nop [0-9a-f]+: 09 00 nop [0-9a-f]+: 09 00 nop [0-9a-f]+: 09 00 nop - [0-9a-f]+: 03 d4 mov\.l [0-9a-f]+ ,r4 ! 0x1c + [0-9a-f]+: 03 d4 mov\.l [0-9a-f]+ ,r4 ! 0x1c .* [0-9a-f]+: 04 c7 mova [0-9a-f]+ ,r0 [0-9a-f]+: 03 d1 mov\.l [0-9a-f]+ ,r1 ! 0x[0-9a-f]+ [0-9a-f]+: 0c 31 add r0,r1 @@ -212,11 +212,11 @@ Disassembly of section \.text: [0-9a-f]+: [0-9a-f]+ [0-9a-f]+ .*[ ]*.* [0-9a-f]+: 09 00 nop [0-9a-f]+: 09 00 nop - [0-9a-f]+: 24 d1 mov\.l [0-9a-f]+ ,r1 ! 0x18 + [0-9a-f]+: 24 d1 mov\.l [0-9a-f]+ ,r1 ! 0x18 .* [0-9a-f]+: 0c 31 add r0,r1 [0-9a-f]+: 09 00 nop [0-9a-f]+: 09 00 nop - [0-9a-f]+: 23 d2 mov\.l [0-9a-f]+ ,r2 ! 0x1c + [0-9a-f]+: 23 d2 mov\.l [0-9a-f]+ ,r2 ! 0x1c .* [0-9a-f]+: 0c 32 add r0,r2 [0-9a-f]+: 09 00 nop [0-9a-f]+: 09 00 nop @@ -234,7 +234,7 @@ Disassembly of section \.text: [0-9a-f]+: 09 00 nop [0-9a-f]+: 09 00 nop [0-9a-f]+: 09 00 nop - [0-9a-f]+: 02 d0 mov\.l [0-9a-f]+ ,r0 ! 0x18 + [0-9a-f]+: 02 d0 mov\.l [0-9a-f]+ ,r0 ! 0x18 .* [0-9a-f]+: 12 01 stc gbr,r1 [0-9a-f]+: ce 00 mov\.l @\(r0,r12\),r0 [0-9a-f]+: 03 a0 bra [0-9a-f]+ diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-sh/tlspic-2.d binutils-2.15.91.0.1/ld/testsuite/ld-sh/tlspic-2.d --- binutils-2.15.90.0.3/ld/testsuite/ld-sh/tlspic-2.d 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-sh/tlspic-2.d 2004-05-27 11:26:06.701904170 -0700 @@ -17,10 +17,10 @@ Section Headers: \[ 5\] \.rela\.plt +.* \[ 6\] \.plt +.* \[ 7\] \.text +PROGBITS +0+[0-9a-f]+ .* - \[ 8\] \.data +.* - \[ 9\] \.tdata +PROGBITS +0+[0-9a-f]+ [0-9a-f]+ 0+018 00 WAT 0 0 4 - \[10\] \.tbss +NOBITS +0+[0-9a-f]+ [0-9a-f]+ 0+008 00 WAT 0 0 1 - \[11\] \.dynamic +DYNAMIC +0+[0-9a-f]+ .* + \[ 8\] \.tdata +PROGBITS +0+[0-9a-f]+ [0-9a-f]+ 0+018 00 WAT 0 0 4 + \[ 9\] \.tbss +NOBITS +0+[0-9a-f]+ [0-9a-f]+ 0+008 00 WAT 0 0 1 + \[10\] \.dynamic +DYNAMIC +0+[0-9a-f]+ .* + \[11\] \.data +.* #... \[[0-9a-f]+\] \.got +PROGBITS +0+[0-9a-f]+ .* \[[0-9a-f]+\] \.sbss +.* @@ -72,27 +72,17 @@ Relocation section '\.rela\.plt' at offs Symbol table '\.dynsym' contains [0-9]+ entries: +Num: +Value +Size Type +Bind +Vis +Ndx Name +0: 0+ +0 NOTYPE +LOCAL +DEFAULT UND * - +1: [0-9a-f]+ +0 SECTION LOCAL DEFAULT 1 * - +2: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +2 * - +3: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +3 * - +4: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +4 * - +5: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +5 * - +6: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +6 * - +7: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +7 * - +8: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +8 * - +9: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +9 * - +10: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +10 * - +11: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +11 * - +12: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +12 * - +13: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +13 * - +14: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +14 * -#... + +1: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +7 * + +2: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +8 * + +3: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +9 * + +4: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +11 * + +5: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +14 * + +6: [0-9a-f]+ +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC +[0-9a-f]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT UND __tls_get_addr - +[0-9a-f]+: 0+00 +0 TLS +GLOBAL DEFAULT +9 sg1 -#... + +[0-9a-f]+: 0+00 +0 TLS +GLOBAL DEFAULT +8 sg1 +[0-9a-f]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +7 fn1 #... - +[0-9a-f]+: 0+04 +0 TLS +GLOBAL DEFAULT +9 sg2 + +[0-9a-f]+: 0+04 +0 TLS +GLOBAL DEFAULT +8 sg2 #... Symbol table '\.symtab' contains [0-9]+ entries: @@ -115,18 +105,17 @@ Symbol table '\.symtab' contains [0-9]+ +15: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +15 * +16: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +16 * +17: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +17 * -#... - +[0-9]+: 0+08 +0 TLS +LOCAL DEFAULT +9 sl1 - +[0-9]+: 0+0c +0 TLS +LOCAL DEFAULT +9 sl2 - +[0-9]+: 0+18 +0 TLS +LOCAL HIDDEN +10 sH1 - +[0-9]+: 0+1c +0 TLS +LOCAL HIDDEN +10 sH2 - +[0-9]+: 0+10 +0 TLS +LOCAL HIDDEN +9 sh1 - +[0-9]+: 0+14 +0 TLS +LOCAL HIDDEN +9 sh2 + +[0-9]+: 0+08 +0 TLS +LOCAL DEFAULT +8 sl1 + +[0-9]+: 0+0c +0 TLS +LOCAL DEFAULT +8 sl2 + +[0-9]+: 0+18 +0 TLS +LOCAL HIDDEN +9 sH1 + +[0-9]+: 0+1c +0 TLS +LOCAL HIDDEN +9 sH2 + +[0-9]+: 0+10 +0 TLS +LOCAL HIDDEN +8 sh1 + +[0-9]+: 0+14 +0 TLS +LOCAL HIDDEN +8 sh2 #... +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT UND __tls_get_addr - +[0-9]+: 0+00 +0 TLS +GLOBAL DEFAULT +9 sg1 + +[0-9]+: 0+00 +0 TLS +GLOBAL DEFAULT +8 sg1 #... +[0-9]+: [0-9a-f]+ +0 FUNC GLOBAL DEFAULT +7 fn1 #... - +[0-9]+: 0+04 +0 TLS +GLOBAL DEFAULT +9 sg2 + +[0-9]+: 0+04 +0 TLS +GLOBAL DEFAULT +8 sg2 #pass diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-shared/shared.exp binutils-2.15.91.0.1/ld/testsuite/ld-shared/shared.exp --- binutils-2.15.90.0.3/ld/testsuite/ld-shared/shared.exp 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/ld-shared/shared.exp 2004-05-27 11:26:06.754897317 -0700 @@ -203,6 +203,9 @@ if ![ld_compile "$CC $CFLAGS $SHCFLAG" $ if { ![istarget hppa*64*-*-linux*] } { setup_xfail "hppa*-*-linux*" } + if { [istarget sparc*-*-linux*] && [is_elf64 $tmpdir/mainnp.o] } { + setup_xfail "sparc*-*-linux*" + } setup_xfail "x86_64-*-linux*" setup_xfail "s390x-*-linux*" shared_test shnp "shared (non PIC)" mainnp.o sh1np.o sh2np.o shared @@ -220,7 +223,11 @@ if ![ld_compile "$CC $CFLAGS $SHCFLAG" $ if { ![istarget hppa*64*-*-linux*] } { setup_xfail "hppa*-*-linux*" } + if { [istarget sparc*-*-linux*] && [is_elf64 $tmpdir/mainnp.o] } { + setup_xfail "sparc*-*-linux*" + } setup_xfail "x86_64-*-linux*" + setup_xfail "s390x-*-linux*" shared_test shnp "shared (non PIC, load offset)" \ mainnp.o sh1np.o sh2np.o shared \ "-T $srcdir/$subdir/elf-offset.ld" @@ -265,6 +272,9 @@ if ![ld_compile "$CC $CFLAGS $SHCFLAG $p if { ![istarget hppa*64*-*-linux*] } { setup_xfail "hppa*-*-linux*" } + if { [istarget sparc*-*-linux*] && [is_elf64 $tmpdir/mainp.o] } { + setup_xfail "sparc*-*-linux*" + } setup_xfail "x86_64-*-linux*" setup_xfail "s390x-*-linux*" shared_test shmpnp "shared (PIC main, non PIC so)" mainp.o sh1np.o sh2np.o shared diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-x86-64/tlsbin.dd binutils-2.15.91.0.1/ld/testsuite/ld-x86-64/tlsbin.dd --- binutils-2.15.90.0.3/ld/testsuite/ld-x86-64/tlsbin.dd 2002-10-02 10:17:20.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-x86-64/tlsbin.dd 2004-05-27 11:26:06.767895636 -0700 @@ -24,7 +24,7 @@ Disassembly of section .text: # GD -> IE because variable is not defined in executable 401004: 64 48 8b 04 25 00 00[ ]+mov %fs:0x0,%rax 40100b: 00 00 * - 40100d: 48 03 05 c4 11 10 00[ ]+add 1053124\(%rip\),%rax +# 5021d8 <_GLOBAL_OFFSET_TABLE_\+0x38> + 40100d: 48 03 05 d4 03 10 00[ ]+add 1049556\(%rip\),%rax +# 5013e8 <.*> # -> R_X86_64_TPOFF64 sG1 401014: 90[ ]+nop * 401015: 90[ ]+nop * @@ -34,7 +34,7 @@ Disassembly of section .text: # the variable is referenced through IE too 401018: 64 48 8b 04 25 00 00[ ]+mov %fs:0x0,%rax 40101f: 00 00 * - 401021: 48 03 05 a0 11 10 00[ ]+add 1053088\(%rip\),%rax +# 5021c8 <_GLOBAL_OFFSET_TABLE_\+0x28> + 401021: 48 03 05 b0 03 10 00[ ]+add 1049520\(%rip\),%rax +# 5013d8 <.*> # -> R_X86_64_TPOFF64 sG2 401028: 90[ ]+nop * 401029: 90[ ]+nop * @@ -102,7 +102,7 @@ Disassembly of section .text: 4010b3: 00 00 * 4010b5: 90[ ]+nop * 4010b6: 90[ ]+nop * - 4010b7: 4c 03 0d 0a 11 10 00[ ]+add 1052938\(%rip\),%r9 +# 5021c8 <_GLOBAL_OFFSET_TABLE_\+0x28> + 4010b7: 4c 03 0d 1a 03 10 00[ ]+add 1049370\(%rip\),%r9 +# 5013d8 <.*> # -> R_X86_64_TPOFF64 sG2 4010be: 90[ ]+nop * 4010bf: 90[ ]+nop * @@ -143,7 +143,7 @@ Disassembly of section .text: 401103: 90[ ]+nop * # Direct access through %fs # IE against global var - 401104: 48 8b 0d b5 10 10 00[ ]+mov 1052853\(%rip\),%rcx +# 5021c0 <_GLOBAL_OFFSET_TABLE_\+0x20> + 401104: 48 8b 0d c5 02 10 00[ ]+mov 1049285\(%rip\),%rcx +# 5013d0 <.*> # -> R_X86_64_TPOFF64 sG5 40110b: 90[ ]+nop * 40110c: 90[ ]+nop * @@ -186,7 +186,7 @@ Disassembly of section .text: 401147: 00 00 * 401149: 90[ ]+nop * 40114a: 90[ ]+nop * - 40114b: 4c 03 1d 7e 10 10 00[ ]+add 1052798\(%rip\),%r11 +# 5021d0 <_GLOBAL_OFFSET_TABLE_\+0x30> + 40114b: 4c 03 1d 8e 02 10 00[ ]+add 1049230\(%rip\),%r11 +# 5013e0 <.*> # -> R_X86_64_TPOFF64 sG6 401152: 90[ ]+nop * 401153: 90[ ]+nop * diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-x86-64/tlsbin.rd binutils-2.15.91.0.1/ld/testsuite/ld-x86-64/tlsbin.rd --- binutils-2.15.90.0.3/ld/testsuite/ld-x86-64/tlsbin.rd 2002-10-02 10:17:20.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-x86-64/tlsbin.rd 2004-05-27 11:26:06.768895507 -0700 @@ -5,7 +5,7 @@ #readelf: -WSsrl #target: x86_64-*-* -There are 18 section headers, starting at offset 0x[0-9a-f]+: +There are 19 section headers, starting at offset 0x[0-9a-f]+: Section Headers: \[Nr\] Name +Type +Address +Off +Size +ES Flg Lk Inf Al @@ -18,15 +18,16 @@ Section Headers: \[ 6\] .rela.plt +.* \[ 7\] .plt +.* \[ 8\] .text +PROGBITS +0+401000 0+1000 0+22a 00 +AX +0 +0 +4096 - \[ 9\] .data +.* - \[10\] .tdata +PROGBITS +0+502000 0+2000 0+60 00 WAT +0 +0 +1 - \[11\] .tbss +NOBITS +0+502060 0+2060 0+40 00 WAT +0 +0 +1 - \[12\] .dynamic +DYNAMIC +0+502060 0+2060 0+140 10 +WA +4 +0 +8 - \[13\] .got +PROGBITS +0+5021a0 0+21a0 0+40 08 +WA +0 +0 +8 - \[14\] .bss +.* - \[15\] .shstrtab +.* - \[16\] .symtab +.* - \[17\] .strtab +.* + \[ 9\] .tdata +PROGBITS +0+50122a 0+122a 0+60 00 WAT +0 +0 +1 + \[10\] .tbss +NOBITS +0+50128a 0+128a 0+40 00 WAT +0 +0 +1 + \[11\] .dynamic +DYNAMIC +0+501290 0+1290 0+140 10 +WA +4 +0 +8 + \[12\] .got +PROGBITS +0+5013d0 0+13d0 0+20 08 +WA +0 +0 +8 + \[13\] .got.plt +PROGBITS +0+5013f0 0+13f0 0+20 08 +WA +0 +0 +8 + \[14\] .data +.* + \[15\] .bss +.* + \[16\] .shstrtab +.* + \[17\] .symtab +.* + \[18\] .strtab +.* Key to Flags: .* .* @@ -42,25 +43,25 @@ Program Headers: INTERP +0x0+190 0x0+400190 0x0+400190 0x0+f 0x0+f R +0x1 .*Requesting program interpreter.* LOAD +0x0+ 0x0+400000 0x0+400000 0x0+122a 0x0+122a R E 0x100000 - LOAD +0x0+2000 0x0+502000 0x0+502000 0x0+1e0 0x0+1e0 RW 0x100000 - DYNAMIC +0x0+2060 0x0+502060 0x0+502060 0x0+140 0x0+140 RW 0x8 - TLS +0x0+2000 0x0+502000 0x0+502000 0x0+60 0x0+a0 R +0x1 + LOAD +0x0+122a 0x0+50122a 0x0+50122a 0x0+dd6 0x0+dd6 RW 0x100000 + DYNAMIC +0x0+1290 0x0+501290 0x0+501290 0x0+140 0x0+140 RW 0x8 + TLS +0x0+122a 0x0+50122a 0x0+50122a 0x0+60 0x0+a0 R +0x1 Section to Segment mapping: Segment Sections... 00 * 01 +.interp * 02 +.interp .hash .dynsym .dynstr .rela.dyn .rela.plt .plt .text * - 03 +.tdata .tbss .dynamic .got * - 04 +.tbss .dynamic * + 03 +.tdata .tbss .dynamic .got .got.plt * + 04 +.dynamic * 05 +.tdata .tbss * Relocation section '.rela.dyn' at offset 0x358 contains 4 entries: +Offset +Info +Type +Symbol's Value Symbol's Name \+ Addend -0+5021c0 0+100000012 R_X86_64_TPOFF64 +0+ sG5 \+ 0 -0+5021c8 0+300000012 R_X86_64_TPOFF64 +0+ sG2 \+ 0 -0+5021d0 0+600000012 R_X86_64_TPOFF64 +0+ sG6 \+ 0 -0+5021d8 0+700000012 R_X86_64_TPOFF64 +0+ sG1 \+ 0 +0+5013d0 0+100000012 R_X86_64_TPOFF64 +0+ sG5 \+ 0 +0+5013d8 0+300000012 R_X86_64_TPOFF64 +0+ sG2 \+ 0 +0+5013e0 0+600000012 R_X86_64_TPOFF64 +0+ sG6 \+ 0 +0+5013e8 0+700000012 R_X86_64_TPOFF64 +0+ sG1 \+ 0 Relocation section '.rela.plt' at offset 0x3b8 contains 1 entries: +Offset +Info +Type +Symbol's Value Symbol's Name \+ Addend @@ -68,87 +69,88 @@ Relocation section '.rela.plt' at offset Symbol table '.dynsym' contains 11 entries: +Num: +Value +Size Type +Bind +Vis +Ndx Name - +0: 0+ +0 NOTYPE LOCAL DEFAULT UND * - +1: 0+ +0 TLS +GLOBAL DEFAULT UND sG5 - +2: 0+502060 +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC - +3: 0+ +0 TLS +GLOBAL DEFAULT UND sG2 - +4: 0+[0-9a-f]+ +0 FUNC +GLOBAL DEFAULT UND __tls_get_addr - +5: 0+[0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start - +6: 0+ +0 TLS +GLOBAL DEFAULT UND sG6 - +7: 0+ +0 TLS +GLOBAL DEFAULT UND sG1 - +8: 0+[0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata - +9: 0+5021a0 +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ - +10: 0+[0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end + +[0-9]+: 0+ +0 NOTYPE LOCAL DEFAULT UND * + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG5 + +[0-9]+: 0+501290 +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG2 + +[0-9]+: 0+[0-9a-f]+ +0 FUNC +GLOBAL DEFAULT UND __tls_get_addr + +[0-9]+: 0+[0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG6 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG1 + +[0-9]+: 0+[0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata + +[0-9]+: 0+5013f0 +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ + +[0-9]+: 0+[0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end -Symbol table '.symtab' contains 70 entries: +Symbol table '.symtab' contains 71 entries: +Num: +Value +Size Type +Bind +Vis +Ndx Name - +0: 0+ +0 NOTYPE LOCAL DEFAULT UND * - +1: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +1 * - +2: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +2 * - +3: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +3 * - +4: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +4 * - +5: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +5 * - +6: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +6 * - +7: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +7 * - +8: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +8 * - +9: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +9 * - +10: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +10 * - +11: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +11 * - +12: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +12 * - +13: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +13 * - +14: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +14 * - +15: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +15 * - +16: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +16 * - +17: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +17 * - +18: 0+20 +0 TLS +LOCAL DEFAULT +10 sl1 - +19: 0+24 +0 TLS +LOCAL DEFAULT +10 sl2 - +20: 0+28 +0 TLS +LOCAL DEFAULT +10 sl3 - +21: 0+2c +0 TLS +LOCAL DEFAULT +10 sl4 - +22: 0+30 +0 TLS +LOCAL DEFAULT +10 sl5 - +23: 0+34 +0 TLS +LOCAL DEFAULT +10 sl6 - +24: 0+38 +0 TLS +LOCAL DEFAULT +10 sl7 - +25: 0+3c +0 TLS +LOCAL DEFAULT +10 sl8 - +26: 0+80 +0 TLS +LOCAL DEFAULT +11 bl1 - +27: 0+84 +0 TLS +LOCAL DEFAULT +11 bl2 - +28: 0+88 +0 TLS +LOCAL DEFAULT +11 bl3 - +29: 0+8c +0 TLS +LOCAL DEFAULT +11 bl4 - +30: 0+90 +0 TLS +LOCAL DEFAULT +11 bl5 - +31: 0+94 +0 TLS +LOCAL DEFAULT +11 bl6 - +32: 0+98 +0 TLS +LOCAL DEFAULT +11 bl7 - +33: 0+9c +0 TLS +LOCAL DEFAULT +11 bl8 - +34: 0+1c +0 TLS +GLOBAL DEFAULT +10 sg8 - +35: 0+7c +0 TLS +GLOBAL DEFAULT +11 bg8 - +36: 0+74 +0 TLS +GLOBAL DEFAULT +11 bg6 - +37: 0+ +0 TLS +GLOBAL DEFAULT UND sG5 - +38: 0+68 +0 TLS +GLOBAL DEFAULT +11 bg3 - +39: 0+502060 +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC - +40: 0+8 +0 TLS +GLOBAL DEFAULT +10 sg3 - +41: 0+48 +0 TLS +GLOBAL HIDDEN +10 sh3 - +42: 0+ +0 TLS +GLOBAL DEFAULT UND sG2 - +43: 0+c +0 TLS +GLOBAL DEFAULT +10 sg4 - +44: 0+10 +0 TLS +GLOBAL DEFAULT +10 sg5 - +45: 0+70 +0 TLS +GLOBAL DEFAULT +11 bg5 - +46: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT UND __tls_get_addr - +47: 0+58 +0 TLS +GLOBAL HIDDEN +10 sh7 - +48: 0+5c +0 TLS +GLOBAL HIDDEN +10 sh8 - +49: 0+ +0 TLS +GLOBAL DEFAULT +10 sg1 - +50: 0+40113c +0 FUNC +GLOBAL DEFAULT +8 _start - +51: 0+4c +0 TLS +GLOBAL HIDDEN +10 sh4 - +52: 0+78 +0 TLS +GLOBAL DEFAULT +11 bg7 - +53: 0+50 +0 TLS +GLOBAL HIDDEN +10 sh5 - +54: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start - +55: 0+ +0 TLS +GLOBAL DEFAULT UND sG6 - +56: 0+401000 +0 FUNC +GLOBAL DEFAULT +8 fn2 - +57: 0+4 +0 TLS +GLOBAL DEFAULT +10 sg2 - +58: 0+ +0 TLS +GLOBAL DEFAULT UND sG1 - +59: 0+40 +0 TLS +GLOBAL HIDDEN +10 sh1 - +60: 0+14 +0 TLS +GLOBAL DEFAULT +10 sg6 - +61: 0+18 +0 TLS +GLOBAL DEFAULT +10 sg7 - +62: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata - +63: 0+5021a0 +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ - +64: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end - +65: 0+44 +0 TLS +GLOBAL HIDDEN +10 sh2 - +66: 0+54 +0 TLS +GLOBAL HIDDEN +10 sh6 - +67: 0+64 +0 TLS +GLOBAL DEFAULT +11 bg2 - +68: 0+60 +0 TLS +GLOBAL DEFAULT +11 bg1 - +69: 0+6c +0 TLS +GLOBAL DEFAULT +11 bg4 + +[0-9]+: 0+ +0 NOTYPE LOCAL DEFAULT UND * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +1 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +2 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +3 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +4 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +5 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +6 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +7 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +8 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +9 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +10 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +11 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +12 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +13 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +14 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +15 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +16 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +17 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +18 * + +[0-9]+: 0+20 +0 TLS +LOCAL DEFAULT +9 sl1 + +[0-9]+: 0+24 +0 TLS +LOCAL DEFAULT +9 sl2 + +[0-9]+: 0+28 +0 TLS +LOCAL DEFAULT +9 sl3 + +[0-9]+: 0+2c +0 TLS +LOCAL DEFAULT +9 sl4 + +[0-9]+: 0+30 +0 TLS +LOCAL DEFAULT +9 sl5 + +[0-9]+: 0+34 +0 TLS +LOCAL DEFAULT +9 sl6 + +[0-9]+: 0+38 +0 TLS +LOCAL DEFAULT +9 sl7 + +[0-9]+: 0+3c +0 TLS +LOCAL DEFAULT +9 sl8 + +[0-9]+: 0+80 +0 TLS +LOCAL DEFAULT +10 bl1 + +[0-9]+: 0+84 +0 TLS +LOCAL DEFAULT +10 bl2 + +[0-9]+: 0+88 +0 TLS +LOCAL DEFAULT +10 bl3 + +[0-9]+: 0+8c +0 TLS +LOCAL DEFAULT +10 bl4 + +[0-9]+: 0+90 +0 TLS +LOCAL DEFAULT +10 bl5 + +[0-9]+: 0+94 +0 TLS +LOCAL DEFAULT +10 bl6 + +[0-9]+: 0+98 +0 TLS +LOCAL DEFAULT +10 bl7 + +[0-9]+: 0+9c +0 TLS +LOCAL DEFAULT +10 bl8 + +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +9 sg8 + +[0-9]+: 0+7c +0 TLS +GLOBAL DEFAULT +10 bg8 + +[0-9]+: 0+74 +0 TLS +GLOBAL DEFAULT +10 bg6 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG5 + +[0-9]+: 0+68 +0 TLS +GLOBAL DEFAULT +10 bg3 + +[0-9]+: 0+501290 +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC + +[0-9]+: 0+8 +0 TLS +GLOBAL DEFAULT +9 sg3 + +[0-9]+: 0+48 +0 TLS +GLOBAL HIDDEN +9 sh3 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG2 + +[0-9]+: 0+c +0 TLS +GLOBAL DEFAULT +9 sg4 + +[0-9]+: 0+10 +0 TLS +GLOBAL DEFAULT +9 sg5 + +[0-9]+: 0+70 +0 TLS +GLOBAL DEFAULT +10 bg5 + +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT UND __tls_get_addr + +[0-9]+: 0+58 +0 TLS +GLOBAL HIDDEN +9 sh7 + +[0-9]+: 0+5c +0 TLS +GLOBAL HIDDEN +9 sh8 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +9 sg1 + +[0-9]+: 0+40113c +0 FUNC +GLOBAL DEFAULT +8 _start + +[0-9]+: 0+4c +0 TLS +GLOBAL HIDDEN +9 sh4 + +[0-9]+: 0+78 +0 TLS +GLOBAL DEFAULT +10 bg7 + +[0-9]+: 0+50 +0 TLS +GLOBAL HIDDEN +9 sh5 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG6 + +[0-9]+: 0+401000 +0 FUNC +GLOBAL DEFAULT +8 fn2 + +[0-9]+: 0+4 +0 TLS +GLOBAL DEFAULT +9 sg2 + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT UND sG1 + +[0-9]+: 0+40 +0 TLS +GLOBAL HIDDEN +9 sh1 + +[0-9]+: 0+14 +0 TLS +GLOBAL DEFAULT +9 sg6 + +[0-9]+: 0+18 +0 TLS +GLOBAL DEFAULT +9 sg7 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata + +[0-9]+: 0+5013f0 +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end + +[0-9]+: 0+44 +0 TLS +GLOBAL HIDDEN +9 sh2 + +[0-9]+: 0+54 +0 TLS +GLOBAL HIDDEN +9 sh6 + +[0-9]+: 0+64 +0 TLS +GLOBAL DEFAULT +10 bg2 + +[0-9]+: 0+60 +0 TLS +GLOBAL DEFAULT +10 bg1 + +[0-9]+: 0+6c +0 TLS +GLOBAL DEFAULT +10 bg4 diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-x86-64/tlsbin.sd binutils-2.15.91.0.1/ld/testsuite/ld-x86-64/tlsbin.sd --- binutils-2.15.90.0.3/ld/testsuite/ld-x86-64/tlsbin.sd 2002-10-02 10:17:20.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-x86-64/tlsbin.sd 2004-05-27 11:26:06.778894214 -0700 @@ -8,7 +8,5 @@ .*: +file format elf64-x86-64 Contents of section .got: - 5021a0 [0-9a-f]+ [0-9a-f]+ 00000000 00000000 .* - 5021b0 00000000 00000000 [0-9a-f]+ [0-9a-f]+ .* - 5021c0 00000000 00000000 00000000 00000000 .* - 5021d0 00000000 00000000 00000000 00000000 .* + 5013d0 00000000 00000000 00000000 00000000 .* + 5013e0 00000000 00000000 00000000 00000000 .* diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-x86-64/tlsbin.td binutils-2.15.91.0.1/ld/testsuite/ld-x86-64/tlsbin.td --- binutils-2.15.90.0.3/ld/testsuite/ld-x86-64/tlsbin.td 2002-10-02 10:17:20.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-x86-64/tlsbin.td 2004-05-27 11:26:06.779894085 -0700 @@ -8,9 +8,9 @@ .*: +file format elf64-x86-64 Contents of section .tdata: - 502000 11000000 12000000 13000000 14000000 .* - 502010 15000000 16000000 17000000 18000000 .* - 502020 41000000 42000000 43000000 44000000 .* - 502030 45000000 46000000 47000000 48000000 .* - 502040 01010000 02010000 03010000 04010000 .* - 502050 05010000 06010000 07010000 08010000 .* + 50122a 11000000 12000000 13000000 14000000 .* + 50123a 15000000 16000000 17000000 18000000 .* + 50124a 41000000 42000000 43000000 44000000 .* + 50125a 45000000 46000000 47000000 48000000 .* + 50126a 01010000 02010000 03010000 04010000 .* + 50127a 05010000 06010000 07010000 08010000 .* diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-x86-64/tlspic.dd binutils-2.15.91.0.1/ld/testsuite/ld-x86-64/tlspic.dd --- binutils-2.15.90.0.3/ld/testsuite/ld-x86-64/tlspic.dd 2002-10-02 10:17:20.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-x86-64/tlspic.dd 2004-05-27 11:26:06.788892921 -0700 @@ -17,12 +17,12 @@ Disassembly of section .text: +1006: 90[ ]+nop * +1007: 90[ ]+nop * # GD - +1008: 66 48 8d 3d f0 11 10[ ]+lea 1053168\(%rip\),%rdi +# 102200 <_GLOBAL_OFFSET_TABLE_\+0x70> + +1008: 66 48 8d 3d 80 03 10[ ]+lea 1049472\(%rip\),%rdi +# 101390 <.*> +100f: 00 * # -> R_X86_64_DTPMOD64 sg1 +1010: 66[ ]+data16 +1011: 66[ ]+data16 - +1012: 48 e8 68 f6 ff ff[ ]+rex64 callq [0-9a-f]+ <.*> + +1012: 48 e8 88 f5 ff ff[ ]+rex64 callq [0-9a-f]+ <.*> # -> R_X86_64_JUMP_SLOT __tls_get_addr +1018: 90[ ]+nop * +1019: 90[ ]+nop * @@ -31,19 +31,19 @@ Disassembly of section .text: # GD -> IE because variable is referenced through IE too +101c: 64 48 8b 04 25 00 00[ ]+mov %fs:0x0,%rax +1023: 00 00 * - +1025: 48 03 05 f4 11 10 00[ ]+add 1053172\(%rip\),%rax +# 102220 <_GLOBAL_OFFSET_TABLE_\+0x90> + +1025: 48 03 05 84 03 10 00[ ]+add 1049476\(%rip\),%rax +# 1013b0 <.*> # -> R_X86_64_TPOFF64 sg2 +102c: 90[ ]+nop * +102d: 90[ ]+nop * +102e: 90[ ]+nop * +102f: 90[ ]+nop * # GD against local variable - +1030: 66 48 8d 3d 78 11 10[ ]+lea 1053048\(%rip\),%rdi +# 1021b0 <_GLOBAL_OFFSET_TABLE_\+0x20> + +1030: 66 48 8d 3d 08 03 10[ ]+lea 1049352\(%rip\),%rdi +# 101340 <.*> +1037: 00 * # -> R_X86_64_DTPMOD64 [0 0x2000000000000000] +1038: 66[ ]+data16 +1039: 66[ ]+data16 - +103a: 48 e8 40 f6 ff ff[ ]+rex64 callq [0-9a-f]+ <.*> + +103a: 48 e8 60 f5 ff ff[ ]+rex64 callq [0-9a-f]+ <.*> # -> R_X86_64_JUMP_SLOT __tls_get_addr +1040: 90[ ]+nop * +1041: 90[ ]+nop * @@ -52,19 +52,19 @@ Disassembly of section .text: # GD -> IE against local variable referenced through IE too +1044: 64 48 8b 04 25 00 00[ ]+mov %fs:0x0,%rax +104b: 00 00 * - +104d: 48 03 05 6c 11 10 00[ ]+add 1053036\(%rip\),%rax +# 1021c0 <_GLOBAL_OFFSET_TABLE_\+0x30> + +104d: 48 03 05 fc 02 10 00[ ]+add 1049340\(%rip\),%rax +# 101350 <.*> # -> R_X86_64_TPOFF64 *ABS*+0x24 +1054: 90[ ]+nop * +1055: 90[ ]+nop * +1056: 90[ ]+nop * +1057: 90[ ]+nop * # GD against hidden and local variable - +1058: 66 48 8d 3d c8 11 10[ ]+lea 1053128\(%rip\),%rdi +# 102228 <_GLOBAL_OFFSET_TABLE_\+0x98> + +1058: 66 48 8d 3d 58 03 10[ ]+lea 1049432\(%rip\),%rdi +# 1013b8 <.*> +105f: 00 * # -> R_X86_64_DTPMOD64 [0 0x4000000000000000] +1060: 66[ ]+data16 +1061: 66[ ]+data16 - +1062: 48 e8 18 f6 ff ff[ ]+rex64 callq [0-9a-f]+ <.*> + +1062: 48 e8 38 f5 ff ff[ ]+rex64 callq [0-9a-f]+ <.*> # -> R_X86_64_JUMP_SLOT __tls_get_addr +1068: 90[ ]+nop * +1069: 90[ ]+nop * @@ -73,19 +73,19 @@ Disassembly of section .text: # GD -> IE against hidden and local variable referenced through IE too +106c: 64 48 8b 04 25 00 00[ ]+mov %fs:0x0,%rax +1073: 00 00 * - +1075: 48 03 05 bc 11 10 00[ ]+add 1053116\(%rip\),%rax +# 102238 <_GLOBAL_OFFSET_TABLE_\+0xa8> + +1075: 48 03 05 4c 03 10 00[ ]+add 1049420\(%rip\),%rax +# 1013c8 <.*> # -> R_X86_64_TPOFF64 *ABS*+0x44 +107c: 90[ ]+nop * +107d: 90[ ]+nop * +107e: 90[ ]+nop * +107f: 90[ ]+nop * # GD against hidden but not local variable - +1080: 66 48 8d 3d 58 11 10[ ]+lea 1053016\(%rip\),%rdi +# 1021e0 <_GLOBAL_OFFSET_TABLE_\+0x50> + +1080: 66 48 8d 3d e8 02 10[ ]+lea 1049320\(%rip\),%rdi +# 101370 <.*> +1087: 00 * # -> R_X86_64_DTPMOD64 [0 0x6000000000000000] +1088: 66[ ]+data16 +1089: 66[ ]+data16 - +108a: 48 e8 f0 f5 ff ff[ ]+rex64 callq [0-9a-f]+ <.*> + +108a: 48 e8 10 f5 ff ff[ ]+rex64 callq [0-9a-f]+ <.*> # -> R_X86_64_JUMP_SLOT __tls_get_addr +1090: 90[ ]+nop * +1091: 90[ ]+nop * @@ -94,16 +94,16 @@ Disassembly of section .text: # GD -> IE against hidden but not local variable referenced through IE too +1094: 64 48 8b 04 25 00 00[ ]+mov %fs:0x0,%rax +109b: 00 00 * - +109d: 48 03 05 4c 11 10 00[ ]+add 1053004\(%rip\),%rax +# 1021f0 <_GLOBAL_OFFSET_TABLE_\+0x60> + +109d: 48 03 05 dc 02 10 00[ ]+add 1049308\(%rip\),%rax +# 101380 <.*> # -> R_X86_64_TPOFF64 *ABS*+0x64 +10a4: 90[ ]+nop * +10a5: 90[ ]+nop * +10a6: 90[ ]+nop * +10a7: 90[ ]+nop * # LD - +10a8: 48 8d 3d 21 11 10 00[ ]+lea 1052961\(%rip\),%rdi +# 1021d0 <_GLOBAL_OFFSET_TABLE_\+0x40> + +10a8: 48 8d 3d b1 02 10 00[ ]+lea 1049265\(%rip\),%rdi +# 101360 <.*> # -> R_X86_64_DTPMOD64 [0 0x000000000000000] - +10af: e8 cc f5 ff ff[ ]+callq [0-9a-f]+ <.*> + +10af: e8 ec f4 ff ff[ ]+callq [0-9a-f]+ <.*> # -> R_X86_64_JUMP_SLOT __tls_get_addr +10b4: 90[ ]+nop * +10b5: 90[ ]+nop * @@ -116,9 +116,9 @@ Disassembly of section .text: +10c8: 90[ ]+nop * +10c9: 90[ ]+nop * # LD against hidden and local variables - +10ca: 48 8d 3d ff 10 10 00[ ]+lea 1052927\(%rip\),%rdi +# 1021d0 <_GLOBAL_OFFSET_TABLE_\+0x40> + +10ca: 48 8d 3d 8f 02 10 00[ ]+lea 1049231\(%rip\),%rdi +# 101360 <.*> # -> R_X86_64_DTPMOD64 [0 0x000000000000000] - +10d1: e8 aa f5 ff ff[ ]+callq [0-9a-f]+ <.*> + +10d1: e8 ca f4 ff ff[ ]+callq [0-9a-f]+ <.*> # -> R_X86_64_JUMP_SLOT __tls_get_addr +10d6: 90[ ]+nop * +10d7: 90[ ]+nop * @@ -131,9 +131,9 @@ Disassembly of section .text: +10ea: 90[ ]+nop * +10eb: 90[ ]+nop * # LD against hidden but not local variables - +10ec: 48 8d 3d dd 10 10 00[ ]+lea 1052893\(%rip\),%rdi +# 1021d0 <_GLOBAL_OFFSET_TABLE_\+0x40> + +10ec: 48 8d 3d 6d 02 10 00[ ]+lea 1049197\(%rip\),%rdi +# 101360 <.*> # -> R_X86_64_DTPMOD64 [0 0x000000000000000] - +10f3: e8 88 f5 ff ff[ ]+callq [0-9a-f]+ <.*> + +10f3: e8 a8 f4 ff ff[ ]+callq [0-9a-f]+ <.*> # -> R_X86_64_JUMP_SLOT __tls_get_addr +10f8: 90[ ]+nop * +10f9: 90[ ]+nop * @@ -148,7 +148,7 @@ Disassembly of section .text: +1113: 00 00 * +1115: 90[ ]+nop * +1116: 90[ ]+nop * - +1117: 48 03 0d 02 11 10 00[ ]+add 1052930\(%rip\),%rcx +# 102220 <_GLOBAL_OFFSET_TABLE_\+0x90> + +1117: 48 03 0d 92 02 10 00[ ]+add 1049234\(%rip\),%rcx +# 1013b0 <.*> # -> R_X86_64_TPOFF64 sg2 +111e: 90[ ]+nop * +111f: 90[ ]+nop * @@ -159,7 +159,7 @@ Disassembly of section .text: +1129: 00 00 * +112b: 90[ ]+nop * +112c: 90[ ]+nop * - +112d: 4c 03 35 8c 10 10 00[ ]+add 1052812\(%rip\),%r14 +# 1021c0 <_GLOBAL_OFFSET_TABLE_\+0x30> + +112d: 4c 03 35 1c 02 10 00[ ]+add 1049116\(%rip\),%r14 +# 101350 <.*> # -> R_X86_64_TPOFF64 *ABS*+0x24 +1134: 90[ ]+nop * +1135: 90[ ]+nop * @@ -170,7 +170,7 @@ Disassembly of section .text: +113f: 00 00 * +1141: 90[ ]+nop * +1142: 90[ ]+nop * - +1143: 48 03 0d ee 10 10 00[ ]+add 1052910\(%rip\),%rcx +# 102238 <_GLOBAL_OFFSET_TABLE_\+0xa8> + +1143: 48 03 0d 7e 02 10 00[ ]+add 1049214\(%rip\),%rcx +# 1013c8 <.*> # -> R_X86_64_TPOFF64 *ABS*+0x44 +114a: 90[ ]+nop * +114b: 90[ ]+nop * @@ -181,7 +181,7 @@ Disassembly of section .text: +1155: 00 00 * +1157: 90[ ]+nop * +1158: 90[ ]+nop * - +1159: 48 03 0d 90 10 10 00[ ]+add 1052816\(%rip\),%rcx +# 1021f0 <_GLOBAL_OFFSET_TABLE_\+0x60> + +1159: 48 03 0d 20 02 10 00[ ]+add 1049120\(%rip\),%rcx +# 101380 <.*> # -> R_X86_64_TPOFF64 *ABS*+0x64 +1160: 90[ ]+nop * +1161: 90[ ]+nop * @@ -189,7 +189,7 @@ Disassembly of section .text: +1163: 90[ ]+nop * # Direct access through %fs # IE against global var - +1164: 48 8b 0d 8d 10 10 00[ ]+mov 1052813\(%rip\),%rcx +# 1021f8 <_GLOBAL_OFFSET_TABLE_\+0x68> + +1164: 48 8b 0d 1d 02 10 00[ ]+mov 1049117\(%rip\),%rcx +# 101388 <.*> # -> R_X86_64_TPOFF64 sg5 +116b: 90[ ]+nop * +116c: 90[ ]+nop * @@ -199,7 +199,7 @@ Disassembly of section .text: +1173: 90[ ]+nop * +1174: 90[ ]+nop * # IE against local var - +1175: 4c 8b 15 4c 10 10 00[ ]+mov 1052748\(%rip\),%r10 +# 1021c8 <_GLOBAL_OFFSET_TABLE_\+0x38> + +1175: 4c 8b 15 dc 01 10 00[ ]+mov 1049052\(%rip\),%r10 +# 101358 <.*> # -> R_X86_64_TPOFF64 *ABS*+0x30 +117c: 90[ ]+nop * +117d: 90[ ]+nop * @@ -209,7 +209,7 @@ Disassembly of section .text: +1184: 90[ ]+nop * +1185: 90[ ]+nop * # IE against hidden and local var - +1186: 48 8b 15 83 10 10 00[ ]+mov 1052803\(%rip\),%rdx +# 102210 <_GLOBAL_OFFSET_TABLE_\+0x80> + +1186: 48 8b 15 13 02 10 00[ ]+mov 1049107\(%rip\),%rdx +# 1013a0 <.*> # -> R_X86_64_TPOFF64 *ABS*+0x50 +118d: 90[ ]+nop * +118e: 90[ ]+nop * @@ -219,7 +219,7 @@ Disassembly of section .text: +1195: 90[ ]+nop * +1196: 90[ ]+nop * # IE against hidden but not local var - +1197: 48 8b 0d 7a 10 10 00[ ]+mov 1052794\(%rip\),%rcx +# 102218 <_GLOBAL_OFFSET_TABLE_\+0x88> + +1197: 48 8b 0d 0a 02 10 00[ ]+mov 1049098\(%rip\),%rcx +# 1013a8 <.*> # -> R_X86_64_TPOFF64 *ABS*+0x70 +119e: 90[ ]+nop * +119f: 90[ ]+nop * diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-x86-64/tlspic.rd binutils-2.15.91.0.1/ld/testsuite/ld-x86-64/tlspic.rd --- binutils-2.15.90.0.3/ld/testsuite/ld-x86-64/tlspic.rd 2002-10-02 10:17:20.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-x86-64/tlspic.rd 2004-05-27 11:26:06.789892792 -0700 @@ -5,7 +5,7 @@ #readelf: -WSsrl #target: x86_64-*-* -There are 17 section headers, starting at offset 0x[0-9a-f]+: +There are 18 section headers, starting at offset 0x[0-9a-f]+: Section Headers: \[Nr\] Name +Type +Address +Off +Size +ES Flg Lk Inf Al @@ -17,15 +17,16 @@ Section Headers: \[ 5\] .rela.plt +.* \[ 6\] .plt +.* \[ 7\] .text +PROGBITS +0+1000 0+1000 0+1ac 00 +AX +0 +0 4096 - \[ 8\] .data +.* - \[ 9\] .tdata +PROGBITS +0+102000 0+2000 0+60 00 WAT +0 +0 +1 - \[10\] .tbss +NOBITS +0+102060 0+2060 0+20 00 WAT +0 +0 +1 - \[11\] .dynamic +DYNAMIC +0+102060 0+2060 0+130 10 +WA +3 +0 +8 - \[12\] .got +PROGBITS +0+102190 0+2190 0+b0 08 +WA +0 +0 +8 - \[13\] .bss +.* - \[14\] .shstrtab +.* - \[15\] .symtab +.* - \[16\] .strtab +.* + \[ 8\] .tdata +PROGBITS +0+1011ac 0+11ac 0+60 00 WAT +0 +0 +1 + \[ 9\] .tbss +NOBITS +0+10120c 0+120c 0+20 00 WAT +0 +0 +1 + \[10\] .dynamic +DYNAMIC +0+101210 0+1210 0+130 10 +WA +3 +0 +8 + \[11\] .got +PROGBITS +0+101340 0+1340 0+90 08 +WA +0 +0 +8 + \[12\] .got.plt +PROGBITS +0+1013d0 0+13d0 0+20 08 +WA +0 +0 +8 + \[13\] .data +.* + \[14\] .bss +.* + \[15\] .shstrtab +.* + \[16\] .symtab +.* + \[17\] .strtab +.* Key to Flags: .* .* @@ -38,125 +39,118 @@ There are 4 program headers, starting at Program Headers: Type +Offset +VirtAddr +PhysAddr +FileSiz +MemSiz +Flg Align LOAD +0x0+ 0x0+ 0x0+ 0x[0-9a-f]+ 0x[0-9a-f]+ R E 0x100000 - LOAD +0x0+2000 0x0+102000 0x0+102000 0x0+240 0x0+240 RW +0x100000 - DYNAMIC +0x0+2060 0x0+102060 0x0+102060 0x0+130 0x0+130 RW +0x8 - TLS +0x0+2000 0x0+102000 0x0+102000 0x0+60 0x0+80 R +0x1 + LOAD +0x0+11ac 0x0+1011ac 0x0+1011ac 0x0+e54 0x0+e54 RW +0x100000 + DYNAMIC +0x0+1210 0x0+101210 0x0+101210 0x0+130 0x0+130 RW +0x8 + TLS +0x0+11ac 0x0+1011ac 0x0+1011ac 0x0+60 0x0+80 R +0x1 Section to Segment mapping: Segment Sections... 00 +.hash .dynsym .dynstr .rela.dyn .rela.plt .plt .text * - 01 +.tdata .tbss .dynamic .got * - 02 +.tbss .dynamic * + 01 +.tdata .tbss .dynamic .got .got.plt * + 02 +.dynamic * 03 +.tdata .tbss * Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 14 entries: +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend -0+1021b0 0+10 R_X86_64_DTPMOD64 +0+ -0+1021c0 0+12 R_X86_64_TPOFF64 +0+24 -0+1021c8 0+12 R_X86_64_TPOFF64 +0+30 -0+1021d0 0+10 R_X86_64_DTPMOD64 +0+ -0+1021e0 0+10 R_X86_64_DTPMOD64 +0+ -0+1021f0 0+12 R_X86_64_TPOFF64 +0+64 -0+102210 0+12 R_X86_64_TPOFF64 +0+50 -0+102218 0+12 R_X86_64_TPOFF64 +0+70 -0+102228 0+10 R_X86_64_DTPMOD64 +0+ -0+102238 0+12 R_X86_64_TPOFF64 +0+44 -0+1021f8 0+1200000012 R_X86_64_TPOFF64 +0+10 sg5 \+ 0 -0+102200 0+1400000010 R_X86_64_DTPMOD64 +0+ sg1 \+ 0 -0+102208 0+1400000011 R_X86_64_DTPOFF64 +0+ sg1 \+ 0 -0+102220 0+1700000012 R_X86_64_TPOFF64 +0+4 sg2 \+ 0 +0+101340 0+10 R_X86_64_DTPMOD64 +0+ +0+101350 0+12 R_X86_64_TPOFF64 +0+24 +0+101358 0+12 R_X86_64_TPOFF64 +0+30 +0+101360 0+10 R_X86_64_DTPMOD64 +0+ +0+101370 0+10 R_X86_64_DTPMOD64 +0+ +0+101380 0+12 R_X86_64_TPOFF64 +0+64 +0+1013a0 0+12 R_X86_64_TPOFF64 +0+50 +0+1013a8 0+12 R_X86_64_TPOFF64 +0+70 +0+1013b8 0+10 R_X86_64_DTPMOD64 +0+ +0+1013c8 0+12 R_X86_64_TPOFF64 +0+44 +0+101388 0+a00000012 R_X86_64_TPOFF64 +0+10 sg5 \+ 0 +0+101390 0+c00000010 R_X86_64_DTPMOD64 +0+ sg1 \+ 0 +0+101398 0+c00000011 R_X86_64_DTPOFF64 +0+ sg1 \+ 0 +0+1013b0 0+f00000012 R_X86_64_TPOFF64 +0+4 sg2 \+ 0 -Relocation section '.rela.plt' at offset 0x658 contains 1 entries: +Relocation section '.rela.plt' at offset 0x[0-9a-f]+ contains 1 entries: +Offset +Info +Type +Symbol's Value Symbol's Name \+ Addend -0+[0-9a-f]+ 0+1300000007 R_X86_64_JUMP_SLOT +0+ __tls_get_addr \+ 0 +0+[0-9a-f]+ 0+b00000007 R_X86_64_JUMP_SLOT +0+ __tls_get_addr \+ 0 -Symbol table '.dynsym' contains 29 entries: +Symbol table '.dynsym' contains 21 entries: +Num: +Value +Size Type +Bind +Vis +Ndx Name - +0: 0+ +0 NOTYPE LOCAL DEFAULT UND * - +1: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +1 * - +2: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +2 * - +3: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +3 * - +4: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +4 * - +5: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +5 * - +6: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +6 * - +7: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +7 * - +8: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +8 * - +9: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +9 * - +10: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +10 * - +11: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +11 * - +12: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +12 * - +13: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +13 * - +14: 0+1c +0 TLS +GLOBAL DEFAULT +9 sg8 - +15: 0+102060 +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC - +16: 0+8 +0 TLS +GLOBAL DEFAULT +9 sg3 - +17: 0+c +0 TLS +GLOBAL DEFAULT +9 sg4 - +18: 0+10 +0 TLS +GLOBAL DEFAULT +9 sg5 - +19: 0+ +0 NOTYPE GLOBAL DEFAULT UND __tls_get_addr - +20: 0+ +0 TLS +GLOBAL DEFAULT +9 sg1 - +21: 0+1000 +0 FUNC +GLOBAL DEFAULT +7 fn1 - +22: 0+102240 +0 NOTYPE GLOBAL DEFAULT ABS __bss_start - +23: 0+4 +0 TLS +GLOBAL DEFAULT +9 sg2 - +24: 0+14 +0 TLS +GLOBAL DEFAULT +9 sg6 - +25: 0+18 +0 TLS +GLOBAL DEFAULT +9 sg7 - +26: 0+102240 +0 NOTYPE GLOBAL DEFAULT ABS _edata - +27: 0+102190 +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ - +28: 0+102240 +0 NOTYPE GLOBAL DEFAULT ABS _end + +[0-9]+: 0+ +0 NOTYPE LOCAL DEFAULT UND * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +7 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +8 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +9 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +13 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +14 * + +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +8 sg8 + +[0-9]+: 0+101210 +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC + +[0-9]+: 0+8 +0 TLS +GLOBAL DEFAULT +8 sg3 + +[0-9]+: 0+c +0 TLS +GLOBAL DEFAULT +8 sg4 + +[0-9]+: 0+10 +0 TLS +GLOBAL DEFAULT +8 sg5 + +[0-9]+: 0+ +0 NOTYPE GLOBAL DEFAULT UND __tls_get_addr + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +8 sg1 + +[0-9]+: 0+1000 +0 FUNC +GLOBAL DEFAULT +7 fn1 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start + +[0-9]+: 0+4 +0 TLS +GLOBAL DEFAULT +8 sg2 + +[0-9]+: 0+14 +0 TLS +GLOBAL DEFAULT +8 sg6 + +[0-9]+: 0+18 +0 TLS +GLOBAL DEFAULT +8 sg7 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata + +[0-9]+: 0+1013d0 +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end -Symbol table '.symtab' contains 56 entries: +Symbol table '.symtab' contains 57 entries: +Num: +Value +Size Type +Bind +Vis +Ndx Name - +0: 0+ +0 NOTYPE LOCAL DEFAULT UND * - +1: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +1 * - +2: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +2 * - +3: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +3 * - +4: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +4 * - +5: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +5 * - +6: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +6 * - +7: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +7 * - +8: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +8 * - +9: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +9 * - +10: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +10 * - +11: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +11 * - +12: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +12 * - +13: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +13 * - +14: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +14 * - +15: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +15 * - +16: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +16 * - +17: 0+20 +0 TLS +LOCAL DEFAULT +9 sl1 - +18: 0+24 +0 TLS +LOCAL DEFAULT +9 sl2 - +19: 0+28 +0 TLS +LOCAL DEFAULT +9 sl3 - +20: 0+2c +0 TLS +LOCAL DEFAULT +9 sl4 - +21: 0+30 +0 TLS +LOCAL DEFAULT +9 sl5 - +22: 0+34 +0 TLS +LOCAL DEFAULT +9 sl6 - +23: 0+38 +0 TLS +LOCAL DEFAULT +9 sl7 - +24: 0+3c +0 TLS +LOCAL DEFAULT +9 sl8 - +25: 0+60 +0 TLS +LOCAL HIDDEN +10 sH1 - +26: 0+48 +0 TLS +LOCAL HIDDEN +9 sh3 - +27: 0+64 +0 TLS +LOCAL HIDDEN +10 sH2 - +28: 0+78 +0 TLS +LOCAL HIDDEN +10 sH7 - +29: 0+58 +0 TLS +LOCAL HIDDEN +9 sh7 - +30: 0+5c +0 TLS +LOCAL HIDDEN +9 sh8 - +31: 0+6c +0 TLS +LOCAL HIDDEN +10 sH4 - +32: 0+4c +0 TLS +LOCAL HIDDEN +9 sh4 - +33: 0+68 +0 TLS +LOCAL HIDDEN +10 sH3 - +34: 0+50 +0 TLS +LOCAL HIDDEN +9 sh5 - +35: 0+70 +0 TLS +LOCAL HIDDEN +10 sH5 - +36: 0+74 +0 TLS +LOCAL HIDDEN +10 sH6 - +37: 0+7c +0 TLS +LOCAL HIDDEN +10 sH8 - +38: 0+40 +0 TLS +LOCAL HIDDEN +9 sh1 - +39: 0+44 +0 TLS +LOCAL HIDDEN +9 sh2 - +40: 0+54 +0 TLS +LOCAL HIDDEN +9 sh6 - +41: 0+1c +0 TLS +GLOBAL DEFAULT +9 sg8 - +42: 0+102060 +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC - +43: 0+8 +0 TLS +GLOBAL DEFAULT +9 sg3 - +44: 0+c +0 TLS +GLOBAL DEFAULT +9 sg4 - +45: 0+10 +0 TLS +GLOBAL DEFAULT +9 sg5 - +46: 0+ +0 NOTYPE GLOBAL DEFAULT UND __tls_get_addr - +47: 0+ +0 TLS +GLOBAL DEFAULT +9 sg1 - +48: 0+1000 +0 FUNC +GLOBAL DEFAULT +7 fn1 - +49: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start - +50: 0+4 +0 TLS +GLOBAL DEFAULT +9 sg2 - +51: 0+14 +0 TLS +GLOBAL DEFAULT +9 sg6 - +52: 0+18 +0 TLS +GLOBAL DEFAULT +9 sg7 - +53: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata - +54: 0+102190 +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ - +55: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end + +[0-9]+: 0+ +0 NOTYPE LOCAL DEFAULT UND * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +1 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +2 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +3 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +4 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +5 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +6 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +7 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +8 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +9 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +10 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +11 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +12 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +13 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +14 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +15 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +16 * + +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL DEFAULT +17 * + +[0-9]+: 0+20 +0 TLS +LOCAL DEFAULT +8 sl1 + +[0-9]+: 0+24 +0 TLS +LOCAL DEFAULT +8 sl2 + +[0-9]+: 0+28 +0 TLS +LOCAL DEFAULT +8 sl3 + +[0-9]+: 0+2c +0 TLS +LOCAL DEFAULT +8 sl4 + +[0-9]+: 0+30 +0 TLS +LOCAL DEFAULT +8 sl5 + +[0-9]+: 0+34 +0 TLS +LOCAL DEFAULT +8 sl6 + +[0-9]+: 0+38 +0 TLS +LOCAL DEFAULT +8 sl7 + +[0-9]+: 0+3c +0 TLS +LOCAL DEFAULT +8 sl8 + +[0-9]+: 0+60 +0 TLS +LOCAL HIDDEN +9 sH1 + +[0-9]+: 0+48 +0 TLS +LOCAL HIDDEN +8 sh3 + +[0-9]+: 0+64 +0 TLS +LOCAL HIDDEN +9 sH2 + +[0-9]+: 0+78 +0 TLS +LOCAL HIDDEN +9 sH7 + +[0-9]+: 0+58 +0 TLS +LOCAL HIDDEN +8 sh7 + +[0-9]+: 0+5c +0 TLS +LOCAL HIDDEN +8 sh8 + +[0-9]+: 0+6c +0 TLS +LOCAL HIDDEN +9 sH4 + +[0-9]+: 0+4c +0 TLS +LOCAL HIDDEN +8 sh4 + +[0-9]+: 0+68 +0 TLS +LOCAL HIDDEN +9 sH3 + +[0-9]+: 0+50 +0 TLS +LOCAL HIDDEN +8 sh5 + +[0-9]+: 0+70 +0 TLS +LOCAL HIDDEN +9 sH5 + +[0-9]+: 0+74 +0 TLS +LOCAL HIDDEN +9 sH6 + +[0-9]+: 0+7c +0 TLS +LOCAL HIDDEN +9 sH8 + +[0-9]+: 0+40 +0 TLS +LOCAL HIDDEN +8 sh1 + +[0-9]+: 0+44 +0 TLS +LOCAL HIDDEN +8 sh2 + +[0-9]+: 0+54 +0 TLS +LOCAL HIDDEN +8 sh6 + +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +8 sg8 + +[0-9]+: 0+101210 +0 OBJECT GLOBAL DEFAULT ABS _DYNAMIC + +[0-9]+: 0+8 +0 TLS +GLOBAL DEFAULT +8 sg3 + +[0-9]+: 0+c +0 TLS +GLOBAL DEFAULT +8 sg4 + +[0-9]+: 0+10 +0 TLS +GLOBAL DEFAULT +8 sg5 + +[0-9]+: 0+ +0 NOTYPE GLOBAL DEFAULT UND __tls_get_addr + +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +8 sg1 + +[0-9]+: 0+1000 +0 FUNC +GLOBAL DEFAULT +7 fn1 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS __bss_start + +[0-9]+: 0+4 +0 TLS +GLOBAL DEFAULT +8 sg2 + +[0-9]+: 0+14 +0 TLS +GLOBAL DEFAULT +8 sg6 + +[0-9]+: 0+18 +0 TLS +GLOBAL DEFAULT +8 sg7 + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _edata + +[0-9]+: 0+1013d0 +0 OBJECT GLOBAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_ + +[0-9]+: [0-9a-f]+ +0 NOTYPE GLOBAL DEFAULT ABS _end diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-x86-64/tlspic.sd binutils-2.15.91.0.1/ld/testsuite/ld-x86-64/tlspic.sd --- binutils-2.15.90.0.3/ld/testsuite/ld-x86-64/tlspic.sd 2002-10-02 10:17:20.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-x86-64/tlspic.sd 2004-05-27 11:26:06.789892792 -0700 @@ -8,14 +8,12 @@ .*: +file format elf64-x86-64 Contents of section .got: - 102190 [0-9a-f]+ [0-9a-f]+ 00000000 00000000 .* - 1021a0 00000000 00000000 [0-9a-f]+ [0-9a-f]+ .* - 1021b0 00000000 00000000 20000000 00000000 .* - 1021c0 00000000 00000000 00000000 00000000 .* - 1021d0 00000000 00000000 00000000 00000000 .* - 1021e0 00000000 00000000 60000000 00000000 .* - 1021f0 00000000 00000000 00000000 00000000 .* - 102200 00000000 00000000 00000000 00000000 .* - 102210 00000000 00000000 00000000 00000000 .* - 102220 00000000 00000000 00000000 00000000 .* - 102230 40000000 00000000 00000000 00000000 .* + 101340 00000000 00000000 20000000 00000000 .* + 101350 00000000 00000000 00000000 00000000 .* + 101360 00000000 00000000 00000000 00000000 .* + 101370 00000000 00000000 60000000 00000000 .* + 101380 00000000 00000000 00000000 00000000 .* + 101390 00000000 00000000 00000000 00000000 .* + 1013a0 00000000 00000000 00000000 00000000 .* + 1013b0 00000000 00000000 00000000 00000000 .* + 1013c0 40000000 00000000 00000000 00000000 .* diff -uprN binutils-2.15.90.0.3/ld/testsuite/ld-x86-64/tlspic.td binutils-2.15.91.0.1/ld/testsuite/ld-x86-64/tlspic.td --- binutils-2.15.90.0.3/ld/testsuite/ld-x86-64/tlspic.td 2002-10-02 10:17:20.000000000 -0700 +++ binutils-2.15.91.0.1/ld/testsuite/ld-x86-64/tlspic.td 2004-05-27 11:26:06.790892663 -0700 @@ -8,9 +8,9 @@ .*: +file format elf64-x86-64 Contents of section .tdata: - 102000 11000000 12000000 13000000 14000000 .* - 102010 15000000 16000000 17000000 18000000 .* - 102020 41000000 42000000 43000000 44000000 .* - 102030 45000000 46000000 47000000 48000000 .* - 102040 01010000 02010000 03010000 04010000 .* - 102050 05010000 06010000 07010000 08010000 .* + 1011ac 11000000 12000000 13000000 14000000 .* + 1011bc 15000000 16000000 17000000 18000000 .* + 1011cc 41000000 42000000 43000000 44000000 .* + 1011dc 45000000 46000000 47000000 48000000 .* + 1011ec 01010000 02010000 03010000 04010000 .* + 1011fc 05010000 06010000 07010000 08010000 .* diff -uprN binutils-2.15.90.0.3/ld/testsuite/lib/ld-lib.exp binutils-2.15.91.0.1/ld/testsuite/lib/ld-lib.exp --- binutils-2.15.90.0.3/ld/testsuite/lib/ld-lib.exp 2004-01-14 13:07:54.000000000 -0800 +++ binutils-2.15.91.0.1/ld/testsuite/lib/ld-lib.exp 2004-05-27 11:26:06.813889689 -0700 @@ -90,7 +90,7 @@ proc is_endian_output_format { object_fl proc big_or_little_endian {} { if [board_info [target_info name] exists multilib_flags] { - set tmp_flags " [board_info [target_info name] multilib_flags]"; + set tmp_flags " [board_info [target_info name] multilib_flags]" foreach x $tmp_flags { case $x in { @@ -235,7 +235,7 @@ proc default_ld_compile { cc source obje } if [board_info [target_info name] exists multilib_flags] { - append flags " [board_info [target_info name] multilib_flags]"; + append flags " [board_info [target_info name] multilib_flags]" } verbose -log "$cc $flags -c $source -o $object" diff -uprN binutils-2.15.90.0.3/libiberty/ChangeLog binutils-2.15.91.0.1/libiberty/ChangeLog --- binutils-2.15.90.0.3/libiberty/ChangeLog 2004-04-14 21:26:05.000000000 -0700 +++ binutils-2.15.91.0.1/libiberty/ChangeLog 2004-05-27 11:26:06.860883612 -0700 @@ -1,3 +1,31 @@ +2004-05-25 Daniel Jacobowitz + + * Makefile.in: Add .NOEXPORT. + +2004-04-29 Douglas B Rupp + + * mkstemps.c (mkstemps) [VMS]: Remove special open option. Update + copyright. + +2004-04-26 Maciej W. Rozycki + + * configure.ac (UNSIGNED_64BIT_TYPE): Unquote the definition. + * configure: Regenerate. + +2004-04-22 Richard Henderson + + * hashtab.c: Include limits.h, stdint.h, ansidecl.h. + (CHAR_BIT): Provide default. + (struct prime_ent, prime_tab): New. + (higher_prime_index): Rename from higher_prime_number, return index. + (htab_mod_1): New. + (htab_mod, htab_mod_m2): Use it. + (htab_create_alloc, htab_create_alloc_ex): Store prime index. + (htab_expand): Likewise. + * configure.ac: Check for stdint.h. + (UNSIGNED_64BIT_TYPE): New define and checks to fill it in. + * config.in, configure: Rebuild. + 2004-04-13 Ian Lance Taylor * strerror.c: Include config.h, and redefine sys_nerr and diff -uprN binutils-2.15.90.0.3/libiberty/Makefile.in binutils-2.15.91.0.1/libiberty/Makefile.in --- binutils-2.15.90.0.3/libiberty/Makefile.in 2004-04-12 12:56:37.000000000 -0700 +++ binutils-2.15.91.0.1/libiberty/Makefile.in 2004-05-27 11:26:06.881880896 -0700 @@ -1058,3 +1058,6 @@ $(CONFIGURED_OFILES): stamp-picdir else true; fi $(COMPILE.c) $(srcdir)/xstrerror.c $(OUTPUT_OPTION) +# Don't export variables to the environment, in order to not confuse +# configure. +.NOEXPORT: diff -uprN binutils-2.15.90.0.3/libiberty/config.in binutils-2.15.91.0.1/libiberty/config.in --- binutils-2.15.90.0.3/libiberty/config.in 2004-04-12 12:56:37.000000000 -0700 +++ binutils-2.15.91.0.1/libiberty/config.in 2004-05-27 11:26:06.882880767 -0700 @@ -353,6 +353,9 @@ /* Define to 1 if you can safely include both and . */ #undef TIME_WITH_SYS_TIME +/* Define to an unsigned 64-bit type available in the compiler. */ +#undef UNSIGNED_64BIT_TYPE + /* whether byteorder is bigendian */ #undef WORDS_BIGENDIAN diff -uprN binutils-2.15.90.0.3/libiberty/configure binutils-2.15.91.0.1/libiberty/configure --- binutils-2.15.90.0.3/libiberty/configure 2004-04-12 12:56:38.000000000 -0700 +++ binutils-2.15.91.0.1/libiberty/configure 2004-05-27 11:26:06.899878569 -0700 @@ -1305,6 +1305,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu + # This works around the fact that libtool configuration may change LD # for this particular configuration, but some shells, instead of # keeping the changes in LD private, export them just because LD is @@ -3539,7 +3540,8 @@ host_makefile_frag=${frag} -for ac_header in sys/file.h sys/param.h limits.h stdlib.h malloc.h string.h unistd.h strings.h sys/time.h time.h sys/resource.h sys/stat.h sys/mman.h fcntl.h alloca.h sys/pstat.h sys/sysmp.h sys/sysinfo.h machine/hal_sysinfo.h sys/table.h sys/sysctl.h sys/systemcfg.h dlfcn.h + +for ac_header in sys/file.h sys/param.h limits.h stdlib.h malloc.h string.h unistd.h strings.h sys/time.h time.h sys/resource.h sys/stat.h sys/mman.h fcntl.h alloca.h sys/pstat.h sys/sysmp.h sys/sysinfo.h machine/hal_sysinfo.h sys/table.h sys/sysctl.h sys/systemcfg.h stdint.h dlfcn.h do as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` echo "$as_me:$LINENO: checking for $ac_header" >&5 @@ -4103,6 +4105,170 @@ _ACEOF fi + +# Look for a 64-bit type. +echo "$as_me:$LINENO: checking for a 64-bit type" >&5 +echo $ECHO_N "checking for a 64-bit type... $ECHO_C" >&6 +if test "${liberty_cv_uint64+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#ifdef HAVE_STDINT_H +#include +#endif +int +main () +{ +extern uint64_t foo; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest.$ac_objext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + liberty_cv_uint64=uint64_t +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#ifdef HAVE_LIMITS_H +#include +#endif +#ifndef CHAR_BIT +#define CHAR_BIT 8 +#endif +int +main () +{ +extern char foo[sizeof(long) * CHAR_BIT >= 64 ? 1 : -1]; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest.$ac_objext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + liberty_cv_uint64="unsigned long" +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#ifdef HAVE_LIMITS_H +#include +#endif +#ifndef CHAR_BIT +#define CHAR_BIT 8 +#endif +int +main () +{ +extern char foo[sizeof(long long) * CHAR_BIT >= 64 ? 1 : -1]; + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest.$ac_objext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + liberty_cv_uint64="unsigned long long" +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +liberty_cv_uint64=none +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +fi + +echo "$as_me:$LINENO: result: $liberty_cv_uint64" >&5 +echo "${ECHO_T}$liberty_cv_uint64" >&6 +if test "$liberty_cv_uint64" != none; then + +cat >>confdefs.h <<_ACEOF +#define UNSIGNED_64BIT_TYPE $liberty_cv_uint64 +_ACEOF + +fi + # Given the above check, we always have uintptr_t or a fallback # definition. So define HAVE_UINTPTR_T in case any imported code # relies on it. @@ -4118,7 +4284,6 @@ if test "${libiberty_cv_have_weak_symbol echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -4137,11 +4302,21 @@ if (return &liberty_weak_symbol_test != _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 + (eval $ac_compile) 2>conftest.er1 ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -s conftest.$ac_objext' + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -4154,7 +4329,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 libiberty_cv_have_weak_symbol=yes fi -rm -f conftest.$ac_objext conftest.$ac_ext +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $libiberty_cv_have_weak_symbol" >&5 @@ -4182,7 +4357,6 @@ echo "$as_me: error: Link tests are not { (exit 1); exit 1; }; } fi cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -4206,11 +4380,21 @@ dlopen (); _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 + (eval $ac_link) 2>conftest.er1 ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -4222,7 +4406,8 @@ else sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext +rm -f conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext if test "$ac_cv_search_dlopen" = no; then for ac_lib in dl; do LIBS="-l$ac_lib $ac_func_search_save_LIBS" @@ -4232,7 +4417,6 @@ echo "$as_me: error: Link tests are not { (exit 1); exit 1; }; } fi cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -4256,11 +4440,21 @@ dlopen (); _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 + (eval $ac_link) 2>conftest.er1 ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' + { ac_try='test -z "$ac_c_werror_flag" + || test ! -s conftest.err' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? @@ -4273,7 +4467,8 @@ else sed 's/^/| /' conftest.$ac_ext >&5 fi -rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext +rm -f conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext done fi LIBS=$ac_func_search_save_LIBS @@ -6786,7 +6981,9 @@ LIBOBJS="$L" # We need multilib support, but only if configuring for the target. ac_config_files="$ac_config_files Makefile testsuite/Makefile" + ac_config_commands="$ac_config_commands default" + cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure # tests run on this system so they can be shared between configure diff -uprN binutils-2.15.90.0.3/libiberty/configure.ac binutils-2.15.91.0.1/libiberty/configure.ac --- binutils-2.15.90.0.3/libiberty/configure.ac 2004-04-12 12:56:38.000000000 -0700 +++ binutils-2.15.91.0.1/libiberty/configure.ac 2004-05-27 11:26:06.924875337 -0700 @@ -159,13 +159,47 @@ AC_SUBST_FILE(host_makefile_frag) # It's OK to check for header files. Although the compiler may not be # able to link anything, it had better be able to at least compile # something. -AC_CHECK_HEADERS(sys/file.h sys/param.h limits.h stdlib.h malloc.h string.h unistd.h strings.h sys/time.h time.h sys/resource.h sys/stat.h sys/mman.h fcntl.h alloca.h sys/pstat.h sys/sysmp.h sys/sysinfo.h machine/hal_sysinfo.h sys/table.h sys/sysctl.h sys/systemcfg.h dlfcn.h) +AC_CHECK_HEADERS(sys/file.h sys/param.h limits.h stdlib.h malloc.h string.h unistd.h strings.h sys/time.h time.h sys/resource.h sys/stat.h sys/mman.h fcntl.h alloca.h sys/pstat.h sys/sysmp.h sys/sysinfo.h machine/hal_sysinfo.h sys/table.h sys/sysctl.h sys/systemcfg.h stdint.h dlfcn.h) AC_HEADER_SYS_WAIT AC_HEADER_TIME libiberty_AC_DECLARE_ERRNO AC_CHECK_TYPE(uintptr_t, unsigned long) + +# Look for a 64-bit type. +AC_MSG_CHECKING([for a 64-bit type]) +AC_CACHE_VAL(liberty_cv_uint64, +[AC_TRY_COMPILE( +[#ifdef HAVE_STDINT_H +#include +#endif], +[extern uint64_t foo;], +liberty_cv_uint64=uint64_t, +[AC_TRY_COMPILE( +[#ifdef HAVE_LIMITS_H +#include +#endif +#ifndef CHAR_BIT +#define CHAR_BIT 8 +#endif], +[extern char foo[sizeof(long) * CHAR_BIT >= 64 ? 1 : -1];], +liberty_cv_uint64="unsigned long", +[AC_TRY_COMPILE( +[#ifdef HAVE_LIMITS_H +#include +#endif +#ifndef CHAR_BIT +#define CHAR_BIT 8 +#endif], +[extern char foo[sizeof(long long) * CHAR_BIT >= 64 ? 1 : -1];], +liberty_cv_uint64="unsigned long long", liberty_cv_uint64=none)])])]) +AC_MSG_RESULT($liberty_cv_uint64) +if test "$liberty_cv_uint64" != none; then + AC_DEFINE_UNQUOTED(UNSIGNED_64BIT_TYPE, $liberty_cv_uint64, + [Define to an unsigned 64-bit type available in the compiler.]) +fi + # Given the above check, we always have uintptr_t or a fallback # definition. So define HAVE_UINTPTR_T in case any imported code # relies on it. diff -uprN binutils-2.15.90.0.3/libiberty/hashtab.c binutils-2.15.91.0.1/libiberty/hashtab.c --- binutils-2.15.90.0.3/libiberty/hashtab.c 2004-04-14 21:26:05.000000000 -0700 +++ binutils-2.15.91.0.1/libiberty/hashtab.c 2004-05-27 11:26:06.945872621 -0700 @@ -1,5 +1,6 @@ /* An expandable hash tables datatype. - Copyright (C) 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. + Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004 + Free Software Foundation, Inc. Contributed by Vladimir Makarov (vmakarov@cygnus.com). This file is part of the libiberty library. @@ -40,20 +41,29 @@ Boston, MA 02111-1307, USA. */ #ifdef HAVE_STDLIB_H #include #endif - #ifdef HAVE_STRING_H #include #endif - #ifdef HAVE_MALLOC_H #include #endif +#ifdef HAVE_LIMITS_H +#include +#endif +#ifdef HAVE_STDINT_H +#include +#endif #include #include "libiberty.h" +#include "ansidecl.h" #include "hashtab.h" +#ifndef CHAR_BIT +#define CHAR_BIT 8 +#endif + /* This macro defines reserved value for empty table entry. */ #define EMPTY_ENTRY ((PTR) 0) @@ -63,7 +73,10 @@ Boston, MA 02111-1307, USA. */ #define DELETED_ENTRY ((PTR) 1) -static unsigned long higher_prime_number PARAMS ((unsigned long)); +static unsigned int higher_prime_index PARAMS ((unsigned long)); +static hashval_t htab_mod_1 PARAMS ((hashval_t, hashval_t, hashval_t, int)); +static hashval_t htab_mod PARAMS ((hashval_t, htab_t)); +static hashval_t htab_mod_m2 PARAMS ((hashval_t, htab_t)); static hashval_t hash_pointer PARAMS ((const void *)); static int eq_pointer PARAMS ((const void *, const void *)); static int htab_expand PARAMS ((htab_t)); @@ -75,69 +88,117 @@ static PTR *find_empty_slot_for_expand htab_hash htab_hash_pointer = hash_pointer; htab_eq htab_eq_pointer = eq_pointer; -/* The following function returns a nearest prime number which is - greater than N, and near a power of two. */ +/* Table of primes and multiplicative inverses. -static unsigned long -higher_prime_number (n) - unsigned long n; + Note that these are not minimally reduced inverses. Unlike when generating + code to divide by a constant, we want to be able to use the same algorithm + all the time. All of these inverses (are implied to) have bit 32 set. + + For the record, here's the function that computed the table; it's a + vastly simplified version of the function of the same name from gcc. */ + +#if 0 +unsigned int +ceil_log2 (unsigned int x) { - /* These are primes that are near, but slightly smaller than, a - power of two. */ - static const unsigned long primes[] = { - (unsigned long) 7, - (unsigned long) 13, - (unsigned long) 31, - (unsigned long) 61, - (unsigned long) 127, - (unsigned long) 251, - (unsigned long) 509, - (unsigned long) 1021, - (unsigned long) 2039, - (unsigned long) 4093, - (unsigned long) 8191, - (unsigned long) 16381, - (unsigned long) 32749, - (unsigned long) 65521, - (unsigned long) 131071, - (unsigned long) 262139, - (unsigned long) 524287, - (unsigned long) 1048573, - (unsigned long) 2097143, - (unsigned long) 4194301, - (unsigned long) 8388593, - (unsigned long) 16777213, - (unsigned long) 33554393, - (unsigned long) 67108859, - (unsigned long) 134217689, - (unsigned long) 268435399, - (unsigned long) 536870909, - (unsigned long) 1073741789, - (unsigned long) 2147483647, - /* 4294967291L */ - ((unsigned long) 2147483647) + ((unsigned long) 2147483644), - }; + int i; + for (i = 31; i >= 0 ; --i) + if (x > (1u << i)) + return i+1; + abort (); +} + +unsigned int +choose_multiplier (unsigned int d, unsigned int *mlp, unsigned char *shiftp) +{ + unsigned long long mhigh; + double nx; + int lgup, post_shift; + int pow, pow2; + int n = 32, precision = 32; + + lgup = ceil_log2 (d); + pow = n + lgup; + pow2 = n + lgup - precision; + + nx = ldexp (1.0, pow) + ldexp (1.0, pow2); + mhigh = nx / d; + + *shiftp = lgup - 1; + *mlp = mhigh; + return mhigh >> 32; +} +#endif + +struct prime_ent +{ + hashval_t prime; + hashval_t inv; + hashval_t inv_m2; /* inverse of prime-2 */ + hashval_t shift; +}; + +static struct prime_ent const prime_tab[] = { + { 7, 0x24924925, 0x9999999b, 2 }, + { 13, 0x3b13b13c, 0x745d1747, 3 }, + { 31, 0x08421085, 0x1a7b9612, 4 }, + { 61, 0x0c9714fc, 0x15b1e5f8, 5 }, + { 127, 0x02040811, 0x0624dd30, 6 }, + { 251, 0x05197f7e, 0x073260a5, 7 }, + { 509, 0x01824366, 0x02864fc8, 8 }, + { 1021, 0x00c0906d, 0x014191f7, 9 }, + { 2039, 0x0121456f, 0x0161e69e, 10 }, + { 4093, 0x00300902, 0x00501908, 11 }, + { 8191, 0x00080041, 0x00180241, 12 }, + { 16381, 0x000c0091, 0x00140191, 13 }, + { 32749, 0x002605a5, 0x002a06e6, 14 }, + { 65521, 0x000f00e2, 0x00110122, 15 }, + { 131071, 0x00008001, 0x00018003, 16 }, + { 262139, 0x00014002, 0x0001c004, 17 }, + { 524287, 0x00002001, 0x00006001, 18 }, + { 1048573, 0x00003001, 0x00005001, 19 }, + { 2097143, 0x00004801, 0x00005801, 20 }, + { 4194301, 0x00000c01, 0x00001401, 21 }, + { 8388593, 0x00001e01, 0x00002201, 22 }, + { 16777213, 0x00000301, 0x00000501, 23 }, + { 33554393, 0x00001381, 0x00001481, 24 }, + { 67108859, 0x00000141, 0x000001c1, 25 }, + { 134217689, 0x000004e1, 0x00000521, 26 }, + { 268435399, 0x00000391, 0x000003b1, 27 }, + { 536870909, 0x00000019, 0x00000029, 28 }, + { 1073741789, 0x0000008d, 0x00000095, 29 }, + { 2147483647, 0x00000003, 0x00000007, 30 }, + /* Avoid "decimal constant so large it is unsigned" for 4294967291. */ + { 0xfffffffb, 0x00000006, 0x00000008, 31 } +}; - const unsigned long *low = &primes[0]; - const unsigned long *high = &primes[sizeof(primes) / sizeof(primes[0])]; +/* The following function returns an index into the above table of the + nearest prime number which is greater than N, and near a power of two. */ + +static unsigned int +higher_prime_index (n) + unsigned long n; +{ + unsigned int low = 0; + unsigned int high = sizeof(prime_tab) / sizeof(prime_tab[0]); while (low != high) { - const unsigned long *mid = low + (high - low) / 2; - if (n > *mid) + unsigned int mid = low + (high - low) / 2; + if (n > prime_tab[mid].prime) low = mid + 1; else high = mid; } /* If we've run out of primes, abort. */ - if (n > *low) + if (n > prime_tab[low].prime) { fprintf (stderr, "Cannot find prime bigger than %lu\n", n); abort (); } - return *low; + return low; } /* Returns a hash code for P. */ @@ -177,6 +238,36 @@ htab_elements (htab) return htab->n_elements - htab->n_deleted; } +/* Return X % Y. */ + +static inline hashval_t +htab_mod_1 (x, y, inv, shift) + hashval_t x, y, inv; + int shift; +{ + /* The multiplicative inverses computed above are for 32-bit types, and + requires that we be able to compute a highpart multiply. */ +#ifdef UNSIGNED_64BIT_TYPE + __extension__ typedef UNSIGNED_64BIT_TYPE ull; + if (sizeof (hashval_t) * CHAR_BIT <= 32) + { + hashval_t t1, t2, t3, t4, q, r; + + t1 = ((ull)x * inv) >> 32; + t2 = x - t1; + t3 = t2 >> 1; + t4 = t1 + t3; + q = t4 >> shift; + r = x - (q * y); + + return r; + } +#endif + + /* Otherwise just use the native division routines. */ + return x % y; +} + /* Compute the primary hash for HASH given HTAB's current size. */ static inline hashval_t @@ -184,7 +275,8 @@ htab_mod (hash, htab) hashval_t hash; htab_t htab; { - return hash % htab_size (htab); + const struct prime_ent *p = &prime_tab[htab->size_prime_index]; + return htab_mod_1 (hash, p->prime, p->inv, p->shift); } /* Compute the secondary hash for HASH given HTAB's current size. */ @@ -194,7 +286,8 @@ htab_mod_m2 (hash, htab) hashval_t hash; htab_t htab; { - return 1 + hash % (htab_size (htab) - 2); + const struct prime_ent *p = &prime_tab[htab->size_prime_index]; + return 1 + htab_mod_1 (hash, p->prime - 2, p->inv_m2, p->shift); } /* This function creates table with length slightly longer than given @@ -212,8 +305,11 @@ htab_create_alloc (size, hash_f, eq_f, d htab_free free_f; { htab_t result; + unsigned int size_prime_index; + + size_prime_index = higher_prime_index (size); + size = prime_tab[size_prime_index].prime; - size = higher_prime_number (size); result = (htab_t) (*alloc_f) (1, sizeof (struct htab)); if (result == NULL) return NULL; @@ -225,6 +321,7 @@ htab_create_alloc (size, hash_f, eq_f, d return NULL; } result->size = size; + result->size_prime_index = size_prime_index; result->hash_f = hash_f; result->eq_f = eq_f; result->del_f = del_f; @@ -248,8 +345,11 @@ htab_create_alloc_ex (size, hash_f, eq_f htab_free_with_arg free_f; { htab_t result; + unsigned int size_prime_index; + + size_prime_index = higher_prime_index (size); + size = prime_tab[size_prime_index].prime; - size = higher_prime_number (size); result = (htab_t) (*alloc_f) (alloc_arg, 1, sizeof (struct htab)); if (result == NULL) return NULL; @@ -261,6 +361,7 @@ htab_create_alloc_ex (size, hash_f, eq_f return NULL; } result->size = size; + result->size_prime_index = size_prime_index; result->hash_f = hash_f; result->eq_f = eq_f; result->del_f = del_f; @@ -412,19 +513,27 @@ htab_expand (htab) PTR *olimit; PTR *p; PTR *nentries; - size_t nsize; + size_t nsize, osize, elts; + unsigned int oindex, nindex; oentries = htab->entries; - olimit = oentries + htab->size; + oindex = htab->size_prime_index; + osize = htab->size; + olimit = oentries + osize; + elts = htab_elements (htab); /* Resize only when table after removal of unused elements is either too full or too empty. */ - if ((htab->n_elements - htab->n_deleted) * 2 > htab->size - || ((htab->n_elements - htab->n_deleted) * 8 < htab->size - && htab->size > 32)) - nsize = higher_prime_number ((htab->n_elements - htab->n_deleted) * 2); + if (elts * 2 > osize || (elts * 8 < osize && osize > 32)) + { + nindex = higher_prime_index (elts * 2); + nsize = prime_tab[nindex].prime; + } else - nsize = htab->size; + { + nindex = oindex; + nsize = osize; + } if (htab->alloc_with_arg_f != NULL) nentries = (PTR *) (*htab->alloc_with_arg_f) (htab->alloc_arg, nsize, @@ -435,7 +544,7 @@ htab_expand (htab) return 0; htab->entries = nentries; htab->size = nsize; - + htab->size_prime_index = nindex; htab->n_elements -= htab->n_deleted; htab->n_deleted = 0; diff -uprN binutils-2.15.90.0.3/libiberty/mkstemps.c binutils-2.15.91.0.1/libiberty/mkstemps.c --- binutils-2.15.90.0.3/libiberty/mkstemps.c 2002-02-03 11:22:33.000000000 -0800 +++ binutils-2.15.91.0.1/libiberty/mkstemps.c 2004-05-27 11:26:06.971869260 -0700 @@ -1,4 +1,4 @@ -/* Copyright (C) 1991, 1992, 1996, 1998 Free Software Foundation, Inc. +/* Copyright (C) 1991, 1992, 1996, 1998, 2004 Free Software Foundation, Inc. This file is derived from mkstemp.c from the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -121,11 +121,7 @@ mkstemps (template, suffix_len) v /= 62; XXXXXX[5] = letters[v % 62]; -#ifdef VMS - fd = open (template, O_RDWR|O_CREAT|O_EXCL, 0600, "fop=tmd"); -#else fd = open (template, O_RDWR|O_CREAT|O_EXCL, 0600); -#endif if (fd >= 0) /* The file does not exist. */ return fd; diff -uprN binutils-2.15.90.0.3/opcodes/ChangeLog binutils-2.15.91.0.1/opcodes/ChangeLog --- binutils-2.15.90.0.3/opcodes/ChangeLog 2004-04-12 12:56:38.000000000 -0700 +++ binutils-2.15.91.0.1/opcodes/ChangeLog 2004-05-27 11:26:06.994866286 -0700 @@ -1,3 +1,72 @@ +2004-05-24 Peter Barada + + * m68k-dis.c(print_insn_m68k): Strip body of diassembly out + into new match_insn_m68k function. Loop over canidate + matches and select first that completely matches. + * m68k-dis.c(print_insn_arg): Fix 'g' case to only extract 1 bit. + * m68k-dis.c(print_insn_arg): Call new function m68k_valid_ea + to verify addressing for MAC/EMAC. + * m68k-dis.c(print_insn_arg): Use reg_half_names for MAC/EMAC + reigster halves since 'fpu' and 'spl' look misleading. + * m68k-dis.c(fetch_arg): Fix 'G', 'H', 'I', 'f', 'M', 'N' cases. + * m68k-opc.c: Rearragne mac/emac cases to use longest for + first, tighten up match masks. + * m68k-opc.c: Add 'size' field to struct m68k_opcode. Produce + 'size' from special case code in print_insn_m68k to + determine decode size of insns. + +2004-05-19 Alan Modra + + * ppc-opc.c (insert_fxm): Enable two operand mfcr when -many as + well as when -mpower4. + +2004-05-13 Nick Clifton + + * po/fr.po: Updated French translation. + +2004-05-05 Peter Barada + + * m68k-dis.c(print_insn_m68k): Add new chips, use core + variants in arch_mask. Only set m68881/68851 for 68k chips. + * m68k-op.c: Switch from ColdFire chips to core variants. + +2004-05-05 Alan Modra + + PR 147. + * ppc-opc.c (PPCVEC): Remove PPC_OPCODE_PPC. + +2004-04-29 Ben Elliston + + * ppc-opc.c (XCMPL): Renmame to XOPL. Update users. + (powerpc_opcodes): Add "dbczl" instruction for PPC970. + +2004-04-22 Kaz Kojima + + * sh-dis.c (print_insn_sh): Print the value in constant pool + as a symbol if it looks like a symbol. + +2004-04-22 Peter Barada + + * m68k-dis.c(print_insn_m68k): Set mfcmac/mcfemac on + appropriate ColdFire architectures. + (print_insn_m68k): Handle EMAC, MAC/EMAC scalefactor, and MAC/EMAC + mask addressing. + Add EMAC instructions, fix MAC instructions. Remove + macmw/macml/msacmw/msacml instructions since mask addressing now + supported. + +2004-04-20 Jakub Jelinek + + * sparc-opc.c (fmoviccx, fmovfccx, fmovccx): Define. + (fmovicc, fmovfcc, fmovcc): Remove fpsize argument, change opcode to + suffix. Use fmov*x macros, create all 3 fpsize variants in one + macro. Adjust all users. + +2004-04-15 Anil Paranjpe + + * h8300-dis.c (bfd_h8_disassemble) : Treat "adds" & "subs" + separately. + 2004-03-30 Kazuhiro Inaoka * m32r-asm.c: Regenerate. diff -uprN binutils-2.15.90.0.3/opcodes/h8300-dis.c binutils-2.15.91.0.1/opcodes/h8300-dis.c --- binutils-2.15.90.0.3/opcodes/h8300-dis.c 2004-01-14 13:07:55.000000000 -0800 +++ binutils-2.15.91.0.1/opcodes/h8300-dis.c 2004-05-27 11:26:07.002865251 -0700 @@ -716,6 +716,17 @@ bfd_h8_disassemble (addr, info, mach) int hadone = 0; int nargs; + /* Special case handling for the adds and subs instructions + since in H8 mode thay can only take the r0-r7 registers but + in other (higher) modes they can take the er0-er7 registers + as well. */ + if (strcmp (qi->opcode->name, "adds") == 0 + || strcmp (qi->opcode->name, "subs") == 0) + { + outfn (stream, "#%d,%s", cst[0], pregnames[regno[1] & 0x7]); + return qi->length; + } + for (nargs = 0; nargs < 3 && args[nargs] != (op_type) E; nargs++) diff -uprN binutils-2.15.90.0.3/opcodes/m68k-dis.c binutils-2.15.91.0.1/opcodes/m68k-dis.c --- binutils-2.15.90.0.3/opcodes/m68k-dis.c 2004-01-14 13:07:55.000000000 -0800 +++ binutils-2.15.91.0.1/opcodes/m68k-dis.c 2004-05-27 11:26:07.008864476 -0700 @@ -1,6 +1,6 @@ /* Print Motorola 68k instructions. Copyright 1986, 1987, 1989, 1991, 1992, 1993, 1994, 1995, 1996, 1997, - 1998, 1999, 2000, 2001, 2002, 2003 + 1998, 1999, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. This file is free software; you can redistribute it and/or modify @@ -46,18 +46,31 @@ static int print_insn_arg PARAMS ((const char *, unsigned char *, unsigned char *, bfd_vma, disassemble_info *)); -const char * const fpcr_names[] = { +static bfd_boolean m68k_valid_ea (char code, int val); + +const char * const fpcr_names[] = +{ "", "%fpiar", "%fpsr", "%fpiar/%fpsr", "%fpcr", "%fpiar/%fpcr", "%fpsr/%fpcr", "%fpiar/%fpsr/%fpcr" }; -static char *const reg_names[] = { +static char *const reg_names[] = +{ "%d0", "%d1", "%d2", "%d3", "%d4", "%d5", "%d6", "%d7", "%a0", "%a1", "%a2", "%a3", "%a4", "%a5", "%fp", "%sp", "%ps", "%pc" }; -/* Sign-extend an (unsigned char). */ +/* Name of register halves for MAC/EMAC. + Seperate from reg_names since 'spu', 'fpl' look weird. */ +static char *const reg_half_names[] = +{ + "%d0", "%d1", "%d2", "%d3", "%d4", "%d5", "%d6", "%d7", + "%a0", "%a1", "%a2", "%a3", "%a4", "%a5", "%a6", "%a7", + "%ps", "%pc" +}; + +/* Sign-extend an (unsigned char). */ #if __STDC__ == 1 #define COERCE_SIGNED_CHAR(ch) ((signed char) (ch)) #else @@ -169,6 +182,147 @@ dummy_print_address (vma, info) { } +/* Try to match the current instruction to best and if so, return the + number of bytes consumed from the instruction stream, else zero. */ + +static int +match_insn_m68k (bfd_vma memaddr, disassemble_info * info, + const struct m68k_opcode * best, struct private * priv) +{ + unsigned char *save_p; + unsigned char *p; + const char *d; + + bfd_byte *buffer = priv->the_buffer; + fprintf_ftype save_printer = info->fprintf_func; + void (* save_print_address) (bfd_vma, struct disassemble_info *) + = info->print_address_func; + + /* Point at first word of argument data, + and at descriptor for first argument. */ + p = buffer + 2; + + /* Figure out how long the fixed-size portion of the instruction is. + The only place this is stored in the opcode table is + in the arguments--look for arguments which specify fields in the 2nd + or 3rd words of the instruction. */ + for (d = best->args; *d; d += 2) + { + /* I don't think it is necessary to be checking d[0] here; + I suspect all this could be moved to the case statement below. */ + if (d[0] == '#') + { + if (d[1] == 'l' && p - buffer < 6) + p = buffer + 6; + else if (p - buffer < 4 && d[1] != 'C' && d[1] != '8') + p = buffer + 4; + } + + if ((d[0] == 'L' || d[0] == 'l') && d[1] == 'w' && p - buffer < 4) + p = buffer + 4; + + switch (d[1]) + { + case '1': + case '2': + case '3': + case '7': + case '8': + case '9': + case 'i': + if (p - buffer < 4) + p = buffer + 4; + break; + case '4': + case '5': + case '6': + if (p - buffer < 6) + p = buffer + 6; + break; + default: + break; + } + } + + /* pflusha is an exceptions. It takes no arguments but is two words + long. Recognize it by looking at the lower 16 bits of the mask. */ + if (p - buffer < 4 && (best->match & 0xFFFF) != 0) + p = buffer + 4; + + /* lpstop is another exception. It takes a one word argument but is + three words long. */ + if (p - buffer < 6 + && (best->match & 0xffff) == 0xffff + && best->args[0] == '#' + && best->args[1] == 'w') + { + /* Copy the one word argument into the usual location for a one + word argument, to simplify printing it. We can get away with + this because we know exactly what the second word is, and we + aren't going to print anything based on it. */ + p = buffer + 6; + FETCH_DATA (info, p); + buffer[2] = buffer[4]; + buffer[3] = buffer[5]; + } + + FETCH_DATA (info, p); + + d = best->args; + + save_p = p; + info->print_address_func = dummy_print_address; + info->fprintf_func = (fprintf_ftype) dummy_printer; + + /* We scan the operands twice. The first time we don't print anything, + but look for errors. */ + for (; *d; d += 2) + { + int eaten = print_insn_arg (d, buffer, p, memaddr + (p - buffer), info); + + if (eaten >= 0) + p += eaten; + else if (eaten == -1) + { + info->fprintf_func = save_printer; + info->print_address_func = save_print_address; + return 0; + } + else + { + info->fprintf_func (info->stream, + /* xgettext:c-format */ + _("\n"), + best->name, best->args); + info->fprintf_func = save_printer; + info->print_address_func = save_print_address; + return 2; + } + } + + p = save_p; + info->fprintf_func = save_printer; + info->print_address_func = save_print_address; + + d = best->args; + + info->fprintf_func (info->stream, "%s", best->name); + + if (*d) + info->fprintf_func (info->stream, " "); + + while (*d) + { + p += print_insn_arg (d, buffer, p, memaddr + (p - buffer), info); + d += 2; + + if (*d && *(d - 2) != 'I' && *d != 'k') + info->fprintf_func (info->stream, ","); + } + + return p - buffer; +} + /* Print the m68k instruction at address MEMADDR in debugged memory, on INFO->STREAM. Returns length of the instruction, in bytes. */ @@ -177,38 +331,32 @@ print_insn_m68k (memaddr, info) bfd_vma memaddr; disassemble_info *info; { - register int i; - register unsigned char *p; - unsigned char *save_p; - register const char *d; - register unsigned long bestmask; - const struct m68k_opcode *best; + int i; + const char *d; unsigned int arch_mask; struct private priv; bfd_byte *buffer = priv.the_buffer; - fprintf_ftype save_printer = info->fprintf_func; - void (*save_print_address) PARAMS ((bfd_vma, struct disassemble_info *)) - = info->print_address_func; int major_opcode; static int numopcodes[16]; static const struct m68k_opcode **opcodes[16]; + int val; if (!opcodes[0]) { - /* Speed up the matching by sorting the opcode table on the upper - four bits of the opcode. */ + /* Speed up the matching by sorting the opcode + table on the upper four bits of the opcode. */ const struct m68k_opcode **opc_pointer[16]; /* First count how many opcodes are in each of the sixteen buckets. */ for (i = 0; i < m68k_numopcodes; i++) numopcodes[(m68k_opcodes[i].opcode >> 28) & 15]++; - /* Then create a sorted table of pointers that point into the - unsorted table. */ - opc_pointer[0] = ((const struct m68k_opcode **) - xmalloc (sizeof (struct m68k_opcode *) - * m68k_numopcodes)); + /* Then create a sorted table of pointers + that point into the unsorted table. */ + opc_pointer[0] = xmalloc (sizeof (struct m68k_opcode *) + * m68k_numopcodes); opcodes[0] = opc_pointer[0]; + for (i = 1; i < 16; i++) { opc_pointer[i] = opc_pointer[i - 1] + numopcodes[i - 1]; @@ -217,22 +365,21 @@ print_insn_m68k (memaddr, info) for (i = 0; i < m68k_numopcodes; i++) *opc_pointer[(m68k_opcodes[i].opcode >> 28) & 15]++ = &m68k_opcodes[i]; - } info->private_data = (PTR) &priv; - /* Tell objdump to use two bytes per chunk and six bytes per line for - displaying raw data. */ + /* Tell objdump to use two bytes per chunk + and six bytes per line for displaying raw data. */ info->bytes_per_chunk = 2; info->bytes_per_line = 6; info->display_endian = BFD_ENDIAN_BIG; priv.max_fetched = priv.the_buffer; priv.insn_start = memaddr; + if (setjmp (priv.bailout) != 0) /* Error return. */ return -1; - best = NULL; switch (info->mach) { default: @@ -240,48 +387,55 @@ print_insn_m68k (memaddr, info) arch_mask = (unsigned int) -1; break; case bfd_mach_m68000: - arch_mask = m68000; + arch_mask = m68000|m68881|m68851; break; case bfd_mach_m68008: - arch_mask = m68008; + arch_mask = m68008|m68881|m68851; break; case bfd_mach_m68010: - arch_mask = m68010; + arch_mask = m68010|m68881|m68851; break; case bfd_mach_m68020: - arch_mask = m68020; + arch_mask = m68020|m68881|m68851; break; case bfd_mach_m68030: - arch_mask = m68030; + arch_mask = m68030|m68881|m68851; break; case bfd_mach_m68040: - arch_mask = m68040; + arch_mask = m68040|m68881|m68851; break; case bfd_mach_m68060: - arch_mask = m68060; + arch_mask = m68060|m68881|m68851; break; case bfd_mach_mcf5200: - arch_mask = mcf5200; + arch_mask = mcfisa_a; break; + case bfd_mach_mcf521x: case bfd_mach_mcf528x: - arch_mask = mcf528x; + arch_mask = mcfisa_a|mcfhwdiv|mcfisa_aa|mcfusp|mcfemac; break; case bfd_mach_mcf5206e: - arch_mask = mcf5206e; + arch_mask = mcfisa_a|mcfhwdiv|mcfmac; + break; + case bfd_mach_mcf5249: + arch_mask = mcfisa_a|mcfhwdiv|mcfemac; break; case bfd_mach_mcf5307: - arch_mask = mcf5307; + arch_mask = mcfisa_a|mcfhwdiv|mcfmac; break; case bfd_mach_mcf5407: - arch_mask = mcf5407; + arch_mask = mcfisa_a|mcfhwdiv|mcfisa_b|mcfmac; + break; + case bfd_mach_mcf547x: + case bfd_mach_mcf548x: + case bfd_mach_mcfv4e: + arch_mask = mcfisa_a|mcfhwdiv|mcfisa_b|mcfusp|cfloat|mcfemac; break; } - arch_mask |= m68881 | m68851; - - bestmask = 0; FETCH_DATA (info, buffer + 2); major_opcode = (buffer[0] >> 4) & 15; + for (i = 0; i < numopcodes[major_opcode]; i++) { const struct m68k_opcode *opc = opcodes[major_opcode][i]; @@ -308,22 +462,20 @@ print_insn_m68k (memaddr, info) /* Don't use for printout the variants of most floating point coprocessor instructions which use the same - register number in two places, as above. */ + register number in two places, as above. */ if (*d == '\0') for (d = opc->args; *d; d += 2) if (d[1] == 't') break; - /* Don't match fmovel with more than one register; wait for - fmoveml. */ + /* Don't match fmovel with more than one register; + wait for fmoveml. */ if (*d == '\0') { for (d = opc->args; *d; d += 2) { if (d[0] == 's' && d[1] == '8') { - int val; - val = fetch_arg (buffer, d[1], 3, info); if ((val & (val - 1)) != 0) break; @@ -331,158 +483,35 @@ print_insn_m68k (memaddr, info) } } - if (*d == '\0' && match > bestmask) - { - best = opc; - bestmask = match; - } - } - } - - if (best == NULL) - goto invalid; - - /* Point at first word of argument data, - and at descriptor for first argument. */ - p = buffer + 2; - - /* Figure out how long the fixed-size portion of the instruction is. - The only place this is stored in the opcode table is - in the arguments--look for arguments which specify fields in the 2nd - or 3rd words of the instruction. */ - for (d = best->args; *d; d += 2) - { - /* I don't think it is necessary to be checking d[0] here; I suspect - all this could be moved to the case statement below. */ - if (d[0] == '#') - { - if (d[1] == 'l' && p - buffer < 6) - p = buffer + 6; - else if (p - buffer < 4 && d[1] != 'C' && d[1] != '8') - p = buffer + 4; - } - if ((d[0] == 'L' || d[0] == 'l') && d[1] == 'w' && p - buffer < 4) - p = buffer + 4; - switch (d[1]) - { - case '1': - case '2': - case '3': - case '7': - case '8': - case '9': - case 'i': - if (p - buffer < 4) - p = buffer + 4; - break; - case '4': - case '5': - case '6': - if (p - buffer < 6) - p = buffer + 6; - break; - default: - break; - } - } - - /* pflusha is an exceptions. It takes no arguments but is two words - long. Recognize it by looking at the lower 16 bits of the mask. */ - if (p - buffer < 4 && (best->match & 0xFFFF) != 0) - p = buffer + 4; - - /* lpstop is another exception. It takes a one word argument but is - three words long. */ - if (p - buffer < 6 - && (best->match & 0xffff) == 0xffff - && best->args[0] == '#' - && best->args[1] == 'w') - { - /* Copy the one word argument into the usual location for a one - word argument, to simplify printing it. We can get away with - this because we know exactly what the second word is, and we - aren't going to print anything based on it. */ - p = buffer + 6; - FETCH_DATA (info, p); - buffer[2] = buffer[4]; - buffer[3] = buffer[5]; - } - - FETCH_DATA (info, p); - - d = best->args; - - /* We scan the operands twice. The first time we don't print anything, - but look for errors. */ - - save_p = p; - info->print_address_func = dummy_print_address; - info->fprintf_func = (fprintf_ftype) dummy_printer; - for (; *d; d += 2) - { - int eaten = print_insn_arg (d, buffer, p, memaddr + (p - buffer), info); - if (eaten >= 0) - p += eaten; - else if (eaten == -1) - goto invalid; - else - { - (*info->fprintf_func) (info->stream, - /* xgettext:c-format */ - _("\n"), - best->name, - best->args); - goto invalid; + if (*d == '\0') + if ((val = match_insn_m68k (memaddr, info, opc, & priv))) + return val; } - } - p = save_p; - info->fprintf_func = save_printer; - info->print_address_func = save_print_address; - - d = best->args; - - (*info->fprintf_func) (info->stream, "%s", best->name); - if (*d) - (*info->fprintf_func) (info->stream, " "); - - while (*d) - { - p += print_insn_arg (d, buffer, p, memaddr + (p - buffer), info); - d += 2; - if (*d && *(d - 2) != 'I' && *d != 'k') - (*info->fprintf_func) (info->stream, ","); - } - return p - buffer; - - invalid: /* Handle undefined instructions. */ - info->fprintf_func = save_printer; - info->print_address_func = save_print_address; - (*info->fprintf_func) (info->stream, "0%o", - (buffer[0] << 8) + buffer[1]); + info->fprintf_func (info->stream, "0%o", (buffer[0] << 8) + buffer[1]); return 2; } /* Returns number of bytes "eaten" by the operand, or return -1 if an invalid operand was found, or -2 if - an opcode tabe error was found. */ + an opcode tabe error was found. */ static int print_insn_arg (d, buffer, p0, addr, info) const char *d; unsigned char *buffer; unsigned char *p0; - bfd_vma addr; /* PC for this arg to be relative to */ + bfd_vma addr; /* PC for this arg to be relative to. */ disassemble_info *info; { - register int val = 0; - register int place = d[1]; - register unsigned char *p = p0; + int val = 0; + int place = d[1]; + unsigned char *p = p0; int regno; - register const char *regname; - register unsigned char *p1; + const char *regname; + unsigned char *p1; double flval; int flt_p; bfd_signed_vma disp; @@ -490,7 +519,7 @@ print_insn_arg (d, buffer, p0, addr, inf switch (*d) { - case 'c': /* cache identifier */ + case 'c': /* Cache identifier. */ { static char *const cacheFieldName[] = { "nc", "dc", "ic", "bc" }; val = fetch_arg (buffer, place, 2, info); @@ -498,7 +527,7 @@ print_insn_arg (d, buffer, p0, addr, inf break; } - case 'a': /* address register indirect only. Cf. case '+'. */ + case 'a': /* Address register indirect only. Cf. case '+'. */ { (*info->fprintf_func) (info->stream, @@ -507,7 +536,7 @@ print_insn_arg (d, buffer, p0, addr, inf break; } - case '_': /* 32-bit absolute address for move16. */ + case '_': /* 32-bit absolute address for move16. */ { uval = NEXTULONG (p); (*info->print_address_func) (uval, info); @@ -736,6 +765,26 @@ print_insn_arg (d, buffer, p0, addr, inf fpcr_names[fetch_arg (buffer, place, 3, info)]); break; + case 'e': + val = fetch_arg(buffer, place, 2, info); + (*info->fprintf_func) (info->stream, "%%acc%d", val); + break; + + case 'g': + val = fetch_arg(buffer, place, 1, info); + (*info->fprintf_func) (info->stream, "%%accext%s", val==0 ? "01" : "23"); + break; + + case 'i': + val = fetch_arg(buffer, place, 2, info); + if (val == 1) + (*info->fprintf_func) (info->stream, "<<"); + else if (val == 3) + (*info->fprintf_func) (info->stream, ">>"); + else + return -1; + break; + case 'I': /* Get coprocessor ID... */ val = fetch_arg (buffer, 'd', 3, info); @@ -744,6 +793,7 @@ print_insn_arg (d, buffer, p0, addr, inf (*info->fprintf_func) (info->stream, "(cpid=%d) ", val); break; + case '4': case '*': case '~': case '%': @@ -775,6 +825,10 @@ print_insn_arg (d, buffer, p0, addr, inf else val = fetch_arg (buffer, 's', 6, info); + /* If the is invalid for *d, then reject this match. */ + if (m68k_valid_ea (*d, val) == FALSE) + return -1; + /* Get register number assuming address register. */ regno = (val & 7) + 8; regname = reg_names[regno]; @@ -881,6 +935,16 @@ print_insn_arg (d, buffer, p0, addr, inf return -1; } } + + /* If place is '/', then this is the case of the mask bit for + mac/emac loads. Now that the arg has been printed, grab the + mask bit and if set, add a '&' to the arg. */ + if (place == '/') + { + val = fetch_arg (buffer, place, 1, info); + if (val) + info->fprintf_func (info->stream, "&"); + } break; case 'L': @@ -1048,7 +1112,7 @@ print_insn_arg (d, buffer, p0, addr, inf reg &= 0xf; } (*info->fprintf_func) (info->stream, "%s%s", - reg_names[reg], + reg_half_names[reg], is_upper ? "u" : "l"); } break; @@ -1060,6 +1124,24 @@ print_insn_arg (d, buffer, p0, addr, inf return p - p0; } +/* Check if an EA is valid for a particular code. This is required + for the EMAC instructions since the type of source address determines + if it is a EMAC-load instruciton if the EA is mode 2-5, otherwise it + is a non-load EMAC instruction and the bits mean register Ry. */ + +static bfd_boolean +m68k_valid_ea (char code, int val) +{ + int mode; + + mode = (val >> 3) & 7; + if (code == '4') + if (!(mode >= 2 && mode <= 5)) + return FALSE; + + return TRUE; +} + /* Fetch BITS bits from a position in the instruction specified by CODE. CODE is a "place to put an argument", or 'x' for a destination that is a general address (mode and register). @@ -1072,9 +1154,38 @@ fetch_arg (buffer, code, bits, info) int bits; disassemble_info *info; { - register int val = 0; + int val = 0; + switch (code) { + case '/': /* MAC/EMAC mask bit. */ + val = buffer[3] >> 5; + break; + + case 'G': /* EMAC ACC load. */ + val = ((buffer[3] >> 3) & 0x2) | ((~buffer[1] >> 7) & 0x1); + break; + + case 'H': /* EMAC ACC !load. */ + val = ((buffer[3] >> 3) & 0x2) | ((buffer[1] >> 7) & 0x1); + break; + + case ']': /* EMAC ACCEXT bit. */ + val = buffer[0] >> 2; + break; + + case 'I': /* MAC/EMAC scale factor. */ + val = buffer[2] >> 1; + break; + + case 'F': /* EMAC ACCx. */ + val = buffer[0] >> 1; + break; + + case 'f': + val = buffer[1]; + break; + case 's': val = buffer[1]; break; @@ -1171,11 +1282,11 @@ fetch_arg (buffer, code, bits, info) break; case 'M': - val = buffer[1] | (buffer[3] & 0x40 ? 0x10 : 0); + val = (buffer[1] & 0xf) | (buffer[3] & 0x40 ? 0x10 : 0); break; case 'N': - val = buffer[3] | (buffer[3] & 0x40 ? 0x10 : 0); + val = (buffer[3] & 0xf) | (buffer[3] & 0x40 ? 0x10 : 0); break; case 'h': @@ -1222,7 +1333,7 @@ print_indexed (basereg, p, addr, info) bfd_vma addr; disassemble_info *info; { - register int word; + int word; static char *const scales[] = { "", ":2", ":4", ":8" }; bfd_vma base_disp; bfd_vma outer_disp; diff -uprN binutils-2.15.90.0.3/opcodes/m68k-opc.c binutils-2.15.91.0.1/opcodes/m68k-opc.c --- binutils-2.15.90.0.3/opcodes/m68k-opc.c 2004-01-14 13:07:55.000000000 -0800 +++ binutils-2.15.91.0.1/opcodes/m68k-opc.c 2004-05-27 11:26:07.020862924 -0700 @@ -1,6 +1,6 @@ /* Opcode table for m680[012346]0/m6888[12]/m68851/mcf5200. Copyright 1989, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, - 2000, 2001, 2003 + 2000, 2001, 2003, 2004 Free Software Foundation, Inc. This file is part of GDB, GAS, and the GNU binutils. @@ -32,1471 +32,1460 @@ const struct m68k_opcode m68k_opcodes[] = { -{"abcd", one(0140400), one(0170770), "DsDd", m68000up }, -{"abcd", one(0140410), one(0170770), "-s-d", m68000up }, +{"abcd", 2, one(0140400), one(0170770), "DsDd", m68000up }, +{"abcd", 2, one(0140410), one(0170770), "-s-d", m68000up }, -{"addaw", one(0150300), one(0170700), "*wAd", m68000up }, -{"addal", one(0150700), one(0170700), "*lAd", m68000up | mcf }, +{"addaw", 2, one(0150300), one(0170700), "*wAd", m68000up }, +{"addal", 2, one(0150700), one(0170700), "*lAd", m68000up | mcfisa_a }, -{"addib", one(0003000), one(0177700), "#b$s", m68000up }, -{"addiw", one(0003100), one(0177700), "#w$s", m68000up }, -{"addil", one(0003200), one(0177700), "#l$s", m68000up }, -{"addil", one(0003200), one(0177700), "#lDs", mcf }, - -{"addqb", one(0050000), one(0170700), "Qd$b", m68000up }, -{"addqw", one(0050100), one(0170700), "Qd%w", m68000up }, -{"addql", one(0050200), one(0170700), "Qd%l", m68000up | mcf }, +{"addib", 4, one(0003000), one(0177700), "#b$s", m68000up }, +{"addiw", 4, one(0003100), one(0177700), "#w$s", m68000up }, +{"addil", 6, one(0003200), one(0177700), "#l$s", m68000up }, +{"addil", 6, one(0003200), one(0177700), "#lDs", mcfisa_a }, + +{"addqb", 2, one(0050000), one(0170700), "Qd$b", m68000up }, +{"addqw", 2, one(0050100), one(0170700), "Qd%w", m68000up }, +{"addql", 2, one(0050200), one(0170700), "Qd%l", m68000up | mcfisa_a }, /* The add opcode can generate the adda, addi, and addq instructions. */ -{"addb", one(0050000), one(0170700), "Qd$b", m68000up }, -{"addb", one(0003000), one(0177700), "#b$s", m68000up }, -{"addb", one(0150000), one(0170700), ";bDd", m68000up }, -{"addb", one(0150400), one(0170700), "Dd~b", m68000up }, -{"addw", one(0050100), one(0170700), "Qd%w", m68000up }, -{"addw", one(0150300), one(0170700), "*wAd", m68000up }, -{"addw", one(0003100), one(0177700), "#w$s", m68000up }, -{"addw", one(0150100), one(0170700), "*wDd", m68000up }, -{"addw", one(0150500), one(0170700), "Dd~w", m68000up }, -{"addl", one(0050200), one(0170700), "Qd%l", m68000up | mcf }, -{"addl", one(0003200), one(0177700), "#l$s", m68000up }, -{"addl", one(0003200), one(0177700), "#lDs", mcf }, -{"addl", one(0150700), one(0170700), "*lAd", m68000up | mcf }, -{"addl", one(0150200), one(0170700), "*lDd", m68000up | mcf }, -{"addl", one(0150600), one(0170700), "Dd~l", m68000up | mcf }, - -{"addxb", one(0150400), one(0170770), "DsDd", m68000up }, -{"addxb", one(0150410), one(0170770), "-s-d", m68000up }, -{"addxw", one(0150500), one(0170770), "DsDd", m68000up }, -{"addxw", one(0150510), one(0170770), "-s-d", m68000up }, -{"addxl", one(0150600), one(0170770), "DsDd", m68000up | mcf }, -{"addxl", one(0150610), one(0170770), "-s-d", m68000up }, - -{"andib", one(0001000), one(0177700), "#b$s", m68000up }, -{"andib", one(0001074), one(0177777), "#bCs", m68000up }, -{"andiw", one(0001100), one(0177700), "#w$s", m68000up }, -{"andiw", one(0001174), one(0177777), "#wSs", m68000up }, -{"andil", one(0001200), one(0177700), "#l$s", m68000up }, -{"andil", one(0001200), one(0177700), "#lDs", mcf }, -{"andi", one(0001100), one(0177700), "#w$s", m68000up }, -{"andi", one(0001074), one(0177777), "#bCs", m68000up }, -{"andi", one(0001174), one(0177777), "#wSs", m68000up }, +{"addb", 2, one(0050000), one(0170700), "Qd$b", m68000up }, +{"addb", 4, one(0003000), one(0177700), "#b$s", m68000up }, +{"addb", 2, one(0150000), one(0170700), ";bDd", m68000up }, +{"addb", 2, one(0150400), one(0170700), "Dd~b", m68000up }, +{"addw", 2, one(0050100), one(0170700), "Qd%w", m68000up }, +{"addw", 2, one(0150300), one(0170700), "*wAd", m68000up }, +{"addw", 4, one(0003100), one(0177700), "#w$s", m68000up }, +{"addw", 2, one(0150100), one(0170700), "*wDd", m68000up }, +{"addw", 2, one(0150500), one(0170700), "Dd~w", m68000up }, +{"addl", 2, one(0050200), one(0170700), "Qd%l", m68000up | mcfisa_a }, +{"addl", 6, one(0003200), one(0177700), "#l$s", m68000up }, +{"addl", 6, one(0003200), one(0177700), "#lDs", mcfisa_a }, +{"addl", 2, one(0150700), one(0170700), "*lAd", m68000up | mcfisa_a }, +{"addl", 2, one(0150200), one(0170700), "*lDd", m68000up | mcfisa_a }, +{"addl", 2, one(0150600), one(0170700), "Dd~l", m68000up | mcfisa_a }, + +{"addxb", 2, one(0150400), one(0170770), "DsDd", m68000up }, +{"addxb", 2, one(0150410), one(0170770), "-s-d", m68000up }, +{"addxw", 2, one(0150500), one(0170770), "DsDd", m68000up }, +{"addxw", 2, one(0150510), one(0170770), "-s-d", m68000up }, +{"addxl", 2, one(0150600), one(0170770), "DsDd", m68000up | mcfisa_a }, +{"addxl", 2, one(0150610), one(0170770), "-s-d", m68000up }, + +{"andib", 4, one(0001000), one(0177700), "#b$s", m68000up }, +{"andib", 4, one(0001074), one(0177777), "#bCs", m68000up }, +{"andiw", 4, one(0001100), one(0177700), "#w$s", m68000up }, +{"andiw", 4, one(0001174), one(0177777), "#wSs", m68000up }, +{"andil", 6, one(0001200), one(0177700), "#l$s", m68000up }, +{"andil", 6, one(0001200), one(0177700), "#lDs", mcfisa_a }, +{"andi", 4, one(0001100), one(0177700), "#w$s", m68000up }, +{"andi", 4, one(0001074), one(0177777), "#bCs", m68000up }, +{"andi", 4, one(0001174), one(0177777), "#wSs", m68000up }, /* The and opcode can generate the andi instruction. */ -{"andb", one(0001000), one(0177700), "#b$s", m68000up }, -{"andb", one(0001074), one(0177777), "#bCs", m68000up }, -{"andb", one(0140000), one(0170700), ";bDd", m68000up }, -{"andb", one(0140400), one(0170700), "Dd~b", m68000up }, -{"andw", one(0001100), one(0177700), "#w$s", m68000up }, -{"andw", one(0001174), one(0177777), "#wSs", m68000up }, -{"andw", one(0140100), one(0170700), ";wDd", m68000up }, -{"andw", one(0140500), one(0170700), "Dd~w", m68000up }, -{"andl", one(0001200), one(0177700), "#l$s", m68000up }, -{"andl", one(0001200), one(0177700), "#lDs", mcf }, -{"andl", one(0140200), one(0170700), ";lDd", m68000up | mcf }, -{"andl", one(0140600), one(0170700), "Dd~l", m68000up | mcf }, -{"and", one(0001100), one(0177700), "#w$w", m68000up }, -{"and", one(0001074), one(0177777), "#bCs", m68000up }, -{"and", one(0001174), one(0177777), "#wSs", m68000up }, -{"and", one(0140100), one(0170700), ";wDd", m68000up }, -{"and", one(0140500), one(0170700), "Dd~w", m68000up }, - -{"aslb", one(0160400), one(0170770), "QdDs", m68000up }, -{"aslb", one(0160440), one(0170770), "DdDs", m68000up }, -{"aslw", one(0160500), one(0170770), "QdDs", m68000up }, -{"aslw", one(0160540), one(0170770), "DdDs", m68000up }, -{"aslw", one(0160700), one(0177700), "~s", m68000up }, -{"asll", one(0160600), one(0170770), "QdDs", m68000up | mcf }, -{"asll", one(0160640), one(0170770), "DdDs", m68000up | mcf }, - -{"asrb", one(0160000), one(0170770), "QdDs", m68000up }, -{"asrb", one(0160040), one(0170770), "DdDs", m68000up }, -{"asrw", one(0160100), one(0170770), "QdDs", m68000up }, -{"asrw", one(0160140), one(0170770), "DdDs", m68000up }, -{"asrw", one(0160300), one(0177700), "~s", m68000up }, -{"asrl", one(0160200), one(0170770), "QdDs", m68000up | mcf }, -{"asrl", one(0160240), one(0170770), "DdDs", m68000up | mcf }, - -{"bhiw", one(0061000), one(0177777), "BW", m68000up | mcf }, -{"blsw", one(0061400), one(0177777), "BW", m68000up | mcf }, -{"bccw", one(0062000), one(0177777), "BW", m68000up | mcf }, -{"bcsw", one(0062400), one(0177777), "BW", m68000up | mcf }, -{"bnew", one(0063000), one(0177777), "BW", m68000up | mcf }, -{"beqw", one(0063400), one(0177777), "BW", m68000up | mcf }, -{"bvcw", one(0064000), one(0177777), "BW", m68000up | mcf }, -{"bvsw", one(0064400), one(0177777), "BW", m68000up | mcf }, -{"bplw", one(0065000), one(0177777), "BW", m68000up | mcf }, -{"bmiw", one(0065400), one(0177777), "BW", m68000up | mcf }, -{"bgew", one(0066000), one(0177777), "BW", m68000up | mcf }, -{"bltw", one(0066400), one(0177777), "BW", m68000up | mcf }, -{"bgtw", one(0067000), one(0177777), "BW", m68000up | mcf }, -{"blew", one(0067400), one(0177777), "BW", m68000up | mcf }, - -{"bhil", one(0061377), one(0177777), "BL", m68020up | cpu32 | mcfv4up}, -{"blsl", one(0061777), one(0177777), "BL", m68020up | cpu32 | mcfv4up}, -{"bccl", one(0062377), one(0177777), "BL", m68020up | cpu32 | mcfv4up}, -{"bcsl", one(0062777), one(0177777), "BL", m68020up | cpu32 | mcfv4up}, -{"bnel", one(0063377), one(0177777), "BL", m68020up | cpu32 | mcfv4up}, -{"beql", one(0063777), one(0177777), "BL", m68020up | cpu32 | mcfv4up}, -{"bvcl", one(0064377), one(0177777), "BL", m68020up | cpu32 | mcfv4up}, -{"bvsl", one(0064777), one(0177777), "BL", m68020up | cpu32 | mcfv4up}, -{"bpll", one(0065377), one(0177777), "BL", m68020up | cpu32 | mcfv4up}, -{"bmil", one(0065777), one(0177777), "BL", m68020up | cpu32 | mcfv4up}, -{"bgel", one(0066377), one(0177777), "BL", m68020up | cpu32 | mcfv4up}, -{"bltl", one(0066777), one(0177777), "BL", m68020up | cpu32 | mcfv4up}, -{"bgtl", one(0067377), one(0177777), "BL", m68020up | cpu32 | mcfv4up}, -{"blel", one(0067777), one(0177777), "BL", m68020up | cpu32 | mcfv4up}, - -{"bhis", one(0061000), one(0177400), "BB", m68000up | mcf }, -{"blss", one(0061400), one(0177400), "BB", m68000up | mcf }, -{"bccs", one(0062000), one(0177400), "BB", m68000up | mcf }, -{"bcss", one(0062400), one(0177400), "BB", m68000up | mcf }, -{"bnes", one(0063000), one(0177400), "BB", m68000up | mcf }, -{"beqs", one(0063400), one(0177400), "BB", m68000up | mcf }, -{"bvcs", one(0064000), one(0177400), "BB", m68000up | mcf }, -{"bvss", one(0064400), one(0177400), "BB", m68000up | mcf }, -{"bpls", one(0065000), one(0177400), "BB", m68000up | mcf }, -{"bmis", one(0065400), one(0177400), "BB", m68000up | mcf }, -{"bges", one(0066000), one(0177400), "BB", m68000up | mcf }, -{"blts", one(0066400), one(0177400), "BB", m68000up | mcf }, -{"bgts", one(0067000), one(0177400), "BB", m68000up | mcf }, -{"bles", one(0067400), one(0177400), "BB", m68000up | mcf }, - -{"jhi", one(0061000), one(0177400), "Bg", m68000up | mcf }, -{"jls", one(0061400), one(0177400), "Bg", m68000up | mcf }, -{"jcc", one(0062000), one(0177400), "Bg", m68000up | mcf }, -{"jcs", one(0062400), one(0177400), "Bg", m68000up | mcf }, -{"jne", one(0063000), one(0177400), "Bg", m68000up | mcf }, -{"jeq", one(0063400), one(0177400), "Bg", m68000up | mcf }, -{"jvc", one(0064000), one(0177400), "Bg", m68000up | mcf }, -{"jvs", one(0064400), one(0177400), "Bg", m68000up | mcf }, -{"jpl", one(0065000), one(0177400), "Bg", m68000up | mcf }, -{"jmi", one(0065400), one(0177400), "Bg", m68000up | mcf }, -{"jge", one(0066000), one(0177400), "Bg", m68000up | mcf }, -{"jlt", one(0066400), one(0177400), "Bg", m68000up | mcf }, -{"jgt", one(0067000), one(0177400), "Bg", m68000up | mcf }, -{"jle", one(0067400), one(0177400), "Bg", m68000up | mcf }, - -{"bchg", one(0000500), one(0170700), "Dd$s", m68000up | mcf }, -{"bchg", one(0004100), one(0177700), "#b$s", m68000up }, -{"bchg", one(0004100), one(0177700), "#bqs", mcf }, - -{"bclr", one(0000600), one(0170700), "Dd$s", m68000up | mcf }, -{"bclr", one(0004200), one(0177700), "#b$s", m68000up }, -{"bclr", one(0004200), one(0177700), "#bqs", mcf }, - -{"bfchg", two(0165300, 0), two(0177700, 0170000), "?sO2O3", m68020up }, -{"bfclr", two(0166300, 0), two(0177700, 0170000), "?sO2O3", m68020up }, -{"bfexts", two(0165700, 0), two(0177700, 0100000), "/sO2O3D1", m68020up }, -{"bfextu", two(0164700, 0), two(0177700, 0100000), "/sO2O3D1", m68020up }, -{"bfffo", two(0166700, 0), two(0177700, 0100000), "/sO2O3D1", m68020up }, -{"bfins", two(0167700, 0), two(0177700, 0100000), "D1?sO2O3", m68020up }, -{"bfset", two(0167300, 0), two(0177700, 0170000), "?sO2O3", m68020up }, -{"bftst", two(0164300, 0), two(0177700, 0170000), "/sO2O3", m68020up }, - -{"bgnd", one(0045372), one(0177777), "", cpu32 }, - -{"bitrev", one(0000300), one(0177770), "Ds", mcf528x}, - -{"bkpt", one(0044110), one(0177770), "ts", m68010up }, - -{"braw", one(0060000), one(0177777), "BW", m68000up | mcf }, -{"bral", one(0060377), one(0177777), "BL", m68020up | cpu32 | mcfv4up}, -{"bras", one(0060000), one(0177400), "BB", m68000up | mcf }, - -{"bset", one(0000700), one(0170700), "Dd$s", m68000up | mcf }, -{"bset", one(0000700), one(0170700), "Ddvs", mcf }, -{"bset", one(0004300), one(0177700), "#b$s", m68000up }, -{"bset", one(0004300), one(0177700), "#bqs", mcf }, - -{"bsrw", one(0060400), one(0177777), "BW", m68000up | mcf }, -{"bsrl", one(0060777), one(0177777), "BL", m68020up | cpu32 | mcfv4up}, -{"bsrs", one(0060400), one(0177400), "BB", m68000up | mcf }, - -{"btst", one(0000400), one(0170700), "Dd;b", m68000up | mcf }, -{"btst", one(0004000), one(0177700), "#b@s", m68000up }, -{"btst", one(0004000), one(0177700), "#bqs", mcf }, - -{"byterev", one(0001300), one(0177770), "Ds", mcf528x}, - -{"callm", one(0003300), one(0177700), "#b!s", m68020 }, - -{"cas2w", two(0006374,0), two(0177777,0007070), "D3D6D2D5r1r4", m68020up }, -{"cas2w", two(0006374,0), two(0177777,0007070), "D3D6D2D5R1R4", m68020up }, -{"cas2l", two(0007374,0), two(0177777,0007070), "D3D6D2D5r1r4", m68020up }, -{"cas2l", two(0007374,0), two(0177777,0007070), "D3D6D2D5R1R4", m68020up }, - -{"casb", two(0005300, 0), two(0177700, 0177070), "D3D2~s", m68020up }, -{"casw", two(0006300, 0), two(0177700, 0177070), "D3D2~s", m68020up }, -{"casl", two(0007300, 0), two(0177700, 0177070), "D3D2~s", m68020up }, - -{"chk2b", two(0000300,0004000), two(0177700,07777), "!sR1", m68020up | cpu32 }, -{"chk2w", two(0001300,0004000), two(0177700,07777), "!sR1", m68020up | cpu32 }, -{"chk2l", two(0002300,0004000), two(0177700,07777), "!sR1", m68020up | cpu32 }, +{"andb", 4, one(0001000), one(0177700), "#b$s", m68000up }, +{"andb", 4, one(0001074), one(0177777), "#bCs", m68000up }, +{"andb", 2, one(0140000), one(0170700), ";bDd", m68000up }, +{"andb", 2, one(0140400), one(0170700), "Dd~b", m68000up }, +{"andw", 4, one(0001100), one(0177700), "#w$s", m68000up }, +{"andw", 4, one(0001174), one(0177777), "#wSs", m68000up }, +{"andw", 2, one(0140100), one(0170700), ";wDd", m68000up }, +{"andw", 2, one(0140500), one(0170700), "Dd~w", m68000up }, +{"andl", 6, one(0001200), one(0177700), "#l$s", m68000up }, +{"andl", 6, one(0001200), one(0177700), "#lDs", mcfisa_a }, +{"andl", 2, one(0140200), one(0170700), ";lDd", m68000up | mcfisa_a }, +{"andl", 2, one(0140600), one(0170700), "Dd~l", m68000up | mcfisa_a }, +{"and", 4, one(0001100), one(0177700), "#w$w", m68000up }, +{"and", 4, one(0001074), one(0177777), "#bCs", m68000up }, +{"and", 4, one(0001174), one(0177777), "#wSs", m68000up }, +{"and", 2, one(0140100), one(0170700), ";wDd", m68000up }, +{"and", 2, one(0140500), one(0170700), "Dd~w", m68000up }, + +{"aslb", 2, one(0160400), one(0170770), "QdDs", m68000up }, +{"aslb", 2, one(0160440), one(0170770), "DdDs", m68000up }, +{"aslw", 2, one(0160500), one(0170770), "QdDs", m68000up }, +{"aslw", 2, one(0160540), one(0170770), "DdDs", m68000up }, +{"aslw", 2, one(0160700), one(0177700), "~s", m68000up }, +{"asll", 2, one(0160600), one(0170770), "QdDs", m68000up | mcfisa_a }, +{"asll", 2, one(0160640), one(0170770), "DdDs", m68000up | mcfisa_a }, + +{"asrb", 2, one(0160000), one(0170770), "QdDs", m68000up }, +{"asrb", 2, one(0160040), one(0170770), "DdDs", m68000up }, +{"asrw", 2, one(0160100), one(0170770), "QdDs", m68000up }, +{"asrw", 2, one(0160140), one(0170770), "DdDs", m68000up }, +{"asrw", 2, one(0160300), one(0177700), "~s", m68000up }, +{"asrl", 2, one(0160200), one(0170770), "QdDs", m68000up | mcfisa_a }, +{"asrl", 2, one(0160240), one(0170770), "DdDs", m68000up | mcfisa_a }, + +{"bhiw", 2, one(0061000), one(0177777), "BW", m68000up | mcfisa_a }, +{"blsw", 2, one(0061400), one(0177777), "BW", m68000up | mcfisa_a }, +{"bccw", 2, one(0062000), one(0177777), "BW", m68000up | mcfisa_a }, +{"bcsw", 2, one(0062400), one(0177777), "BW", m68000up | mcfisa_a }, +{"bnew", 2, one(0063000), one(0177777), "BW", m68000up | mcfisa_a }, +{"beqw", 2, one(0063400), one(0177777), "BW", m68000up | mcfisa_a }, +{"bvcw", 2, one(0064000), one(0177777), "BW", m68000up | mcfisa_a }, +{"bvsw", 2, one(0064400), one(0177777), "BW", m68000up | mcfisa_a }, +{"bplw", 2, one(0065000), one(0177777), "BW", m68000up | mcfisa_a }, +{"bmiw", 2, one(0065400), one(0177777), "BW", m68000up | mcfisa_a }, +{"bgew", 2, one(0066000), one(0177777), "BW", m68000up | mcfisa_a }, +{"bltw", 2, one(0066400), one(0177777), "BW", m68000up | mcfisa_a }, +{"bgtw", 2, one(0067000), one(0177777), "BW", m68000up | mcfisa_a }, +{"blew", 2, one(0067400), one(0177777), "BW", m68000up | mcfisa_a }, + +{"bhil", 2, one(0061377), one(0177777), "BL", m68020up | cpu32 | mcfisa_b}, +{"blsl", 2, one(0061777), one(0177777), "BL", m68020up | cpu32 | mcfisa_b}, +{"bccl", 2, one(0062377), one(0177777), "BL", m68020up | cpu32 | mcfisa_b}, +{"bcsl", 2, one(0062777), one(0177777), "BL", m68020up | cpu32 | mcfisa_b}, +{"bnel", 2, one(0063377), one(0177777), "BL", m68020up | cpu32 | mcfisa_b}, +{"beql", 2, one(0063777), one(0177777), "BL", m68020up | cpu32 | mcfisa_b}, +{"bvcl", 2, one(0064377), one(0177777), "BL", m68020up | cpu32 | mcfisa_b}, +{"bvsl", 2, one(0064777), one(0177777), "BL", m68020up | cpu32 | mcfisa_b}, +{"bpll", 2, one(0065377), one(0177777), "BL", m68020up | cpu32 | mcfisa_b}, +{"bmil", 2, one(0065777), one(0177777), "BL", m68020up | cpu32 | mcfisa_b}, +{"bgel", 2, one(0066377), one(0177777), "BL", m68020up | cpu32 | mcfisa_b}, +{"bltl", 2, one(0066777), one(0177777), "BL", m68020up | cpu32 | mcfisa_b}, +{"bgtl", 2, one(0067377), one(0177777), "BL", m68020up | cpu32 | mcfisa_b}, +{"blel", 2, one(0067777), one(0177777), "BL", m68020up | cpu32 | mcfisa_b}, + +{"bhis", 2, one(0061000), one(0177400), "BB", m68000up | mcfisa_a }, +{"blss", 2, one(0061400), one(0177400), "BB", m68000up | mcfisa_a }, +{"bccs", 2, one(0062000), one(0177400), "BB", m68000up | mcfisa_a }, +{"bcss", 2, one(0062400), one(0177400), "BB", m68000up | mcfisa_a }, +{"bnes", 2, one(0063000), one(0177400), "BB", m68000up | mcfisa_a }, +{"beqs", 2, one(0063400), one(0177400), "BB", m68000up | mcfisa_a }, +{"bvcs", 2, one(0064000), one(0177400), "BB", m68000up | mcfisa_a }, +{"bvss", 2, one(0064400), one(0177400), "BB", m68000up | mcfisa_a }, +{"bpls", 2, one(0065000), one(0177400), "BB", m68000up | mcfisa_a }, +{"bmis", 2, one(0065400), one(0177400), "BB", m68000up | mcfisa_a }, +{"bges", 2, one(0066000), one(0177400), "BB", m68000up | mcfisa_a }, +{"blts", 2, one(0066400), one(0177400), "BB", m68000up | mcfisa_a }, +{"bgts", 2, one(0067000), one(0177400), "BB", m68000up | mcfisa_a }, +{"bles", 2, one(0067400), one(0177400), "BB", m68000up | mcfisa_a }, + +{"jhi", 2, one(0061000), one(0177400), "Bg", m68000up | mcfisa_a }, +{"jls", 2, one(0061400), one(0177400), "Bg", m68000up | mcfisa_a }, +{"jcc", 2, one(0062000), one(0177400), "Bg", m68000up | mcfisa_a }, +{"jcs", 2, one(0062400), one(0177400), "Bg", m68000up | mcfisa_a }, +{"jne", 2, one(0063000), one(0177400), "Bg", m68000up | mcfisa_a }, +{"jeq", 2, one(0063400), one(0177400), "Bg", m68000up | mcfisa_a }, +{"jvc", 2, one(0064000), one(0177400), "Bg", m68000up | mcfisa_a }, +{"jvs", 2, one(0064400), one(0177400), "Bg", m68000up | mcfisa_a }, +{"jpl", 2, one(0065000), one(0177400), "Bg", m68000up | mcfisa_a }, +{"jmi", 2, one(0065400), one(0177400), "Bg", m68000up | mcfisa_a }, +{"jge", 2, one(0066000), one(0177400), "Bg", m68000up | mcfisa_a }, +{"jlt", 2, one(0066400), one(0177400), "Bg", m68000up | mcfisa_a }, +{"jgt", 2, one(0067000), one(0177400), "Bg", m68000up | mcfisa_a }, +{"jle", 2, one(0067400), one(0177400), "Bg", m68000up | mcfisa_a }, + +{"bchg", 2, one(0000500), one(0170700), "Dd$s", m68000up | mcfisa_a }, +{"bchg", 4, one(0004100), one(0177700), "#b$s", m68000up }, +{"bchg", 4, one(0004100), one(0177700), "#bqs", mcfisa_a }, + +{"bclr", 2, one(0000600), one(0170700), "Dd$s", m68000up | mcfisa_a }, +{"bclr", 4, one(0004200), one(0177700), "#b$s", m68000up }, +{"bclr", 4, one(0004200), one(0177700), "#bqs", mcfisa_a }, + +{"bfchg", 4, two(0165300, 0), two(0177700, 0170000), "?sO2O3", m68020up }, +{"bfclr", 4, two(0166300, 0), two(0177700, 0170000), "?sO2O3", m68020up }, +{"bfexts", 4, two(0165700, 0), two(0177700, 0100000), "/sO2O3D1", m68020up }, +{"bfextu", 4, two(0164700, 0), two(0177700, 0100000), "/sO2O3D1", m68020up }, +{"bfffo", 4, two(0166700, 0), two(0177700, 0100000), "/sO2O3D1", m68020up }, +{"bfins", 4, two(0167700, 0), two(0177700, 0100000), "D1?sO2O3", m68020up }, +{"bfset", 4, two(0167300, 0), two(0177700, 0170000), "?sO2O3", m68020up }, +{"bftst", 4, two(0164300, 0), two(0177700, 0170000), "/sO2O3", m68020up }, + +{"bgnd", 2, one(0045372), one(0177777), "", cpu32 }, + +{"bitrev", 2, one(0000300), one(0177770), "Ds", mcfisa_aa}, + +{"bkpt", 2, one(0044110), one(0177770), "ts", m68010up }, + +{"braw", 2, one(0060000), one(0177777), "BW", m68000up | mcfisa_a }, +{"bral", 2, one(0060377), one(0177777), "BL", m68020up | cpu32 | mcfisa_b}, +{"bras", 2, one(0060000), one(0177400), "BB", m68000up | mcfisa_a }, + +{"bset", 2, one(0000700), one(0170700), "Dd$s", m68000up | mcfisa_a }, +{"bset", 2, one(0000700), one(0170700), "Ddvs", mcfisa_a }, +{"bset", 4, one(0004300), one(0177700), "#b$s", m68000up }, +{"bset", 4, one(0004300), one(0177700), "#bqs", mcfisa_a }, + +{"bsrw", 2, one(0060400), one(0177777), "BW", m68000up | mcfisa_a }, +{"bsrl", 2, one(0060777), one(0177777), "BL", m68020up | cpu32 | mcfisa_b}, +{"bsrs", 2, one(0060400), one(0177400), "BB", m68000up | mcfisa_a }, + +{"btst", 2, one(0000400), one(0170700), "Dd;b", m68000up | mcfisa_a }, +{"btst", 4, one(0004000), one(0177700), "#b@s", m68000up }, +{"btst", 4, one(0004000), one(0177700), "#bqs", mcfisa_a }, + +{"byterev", 2, one(0001300), one(0177770), "Ds", mcfisa_aa}, + +{"callm", 4, one(0003300), one(0177700), "#b!s", m68020 }, + +{"cas2w", 6, two(0006374,0), two(0177777,0007070), "D3D6D2D5r1r4", m68020up }, +{"cas2w", 6, two(0006374,0), two(0177777,0007070), "D3D6D2D5R1R4", m68020up }, +{"cas2l", 6, two(0007374,0), two(0177777,0007070), "D3D6D2D5r1r4", m68020up }, +{"cas2l", 6, two(0007374,0), two(0177777,0007070), "D3D6D2D5R1R4", m68020up }, + +{"casb", 4, two(0005300, 0), two(0177700, 0177070), "D3D2~s", m68020up }, +{"casw", 4, two(0006300, 0), two(0177700, 0177070), "D3D2~s", m68020up }, +{"casl", 4, two(0007300, 0), two(0177700, 0177070), "D3D2~s", m68020up }, + +{"chk2b", 4, two(0000300,0004000), two(0177700,07777), "!sR1", m68020up | cpu32 }, +{"chk2w", 4, two(0001300,0004000), two(0177700,07777), "!sR1", m68020up | cpu32 }, +{"chk2l", 4, two(0002300,0004000), two(0177700,07777), "!sR1", m68020up | cpu32 }, -{"chkl", one(0040400), one(0170700), ";lDd", m68000up }, -{"chkw", one(0040600), one(0170700), ";wDd", m68000up }, +{"chkl", 2, one(0040400), one(0170700), ";lDd", m68000up }, +{"chkw", 2, one(0040600), one(0170700), ";wDd", m68000up }, #define SCOPE_LINE (0x1 << 3) #define SCOPE_PAGE (0x2 << 3) #define SCOPE_ALL (0x3 << 3) -{"cinva", one(0xf400|SCOPE_ALL), one(0xff38), "ce", m68040up }, -{"cinvl", one(0xf400|SCOPE_LINE), one(0xff38), "ceas", m68040up }, -{"cinvp", one(0xf400|SCOPE_PAGE), one(0xff38), "ceas", m68040up }, - -{"cpusha", one(0xf420|SCOPE_ALL), one(0xff38), "ce", m68040up }, -{"cpushl", one(0xf420|SCOPE_LINE), one(0xff38), "ceas", m68040up | mcf }, -{"cpushp", one(0xf420|SCOPE_PAGE), one(0xff38), "ceas", m68040up }, +{"cinva", 2, one(0xf400|SCOPE_ALL), one(0xff38), "ce", m68040up }, +{"cinvl", 2, one(0xf400|SCOPE_LINE), one(0xff38), "ceas", m68040up }, +{"cinvp", 2, one(0xf400|SCOPE_PAGE), one(0xff38), "ceas", m68040up }, + +{"cpusha", 2, one(0xf420|SCOPE_ALL), one(0xff38), "ce", m68040up }, +{"cpushl", 2, one(0xf420|SCOPE_LINE), one(0xff38), "ceas", m68040up | mcfisa_a }, +{"cpushp", 2, one(0xf420|SCOPE_PAGE), one(0xff38), "ceas", m68040up }, #undef SCOPE_LINE #undef SCOPE_PAGE #undef SCOPE_ALL -{"clrb", one(0041000), one(0177700), "$s", m68000up | mcf }, -{"clrw", one(0041100), one(0177700), "$s", m68000up | mcf }, -{"clrl", one(0041200), one(0177700), "$s", m68000up | mcf }, - -{"cmp2b", two(0000300,0), two(0177700,07777), "!sR1", m68020up | cpu32 }, -{"cmp2w", two(0001300,0), two(0177700,07777), "!sR1", m68020up | cpu32 }, -{"cmp2l", two(0002300,0), two(0177700,07777), "!sR1", m68020up | cpu32 }, - -{"cmpaw", one(0130300), one(0170700), "*wAd", m68000up }, -{"cmpal", one(0130700), one(0170700), "*lAd", m68000up | mcf }, - -{"cmpib", one(0006000), one(0177700), "#b@s", m68000up }, -{"cmpib", one(0006000), one(0177700), "#bDs", mcfv4up }, -{"cmpiw", one(0006100), one(0177700), "#w@s", m68000up }, -{"cmpiw", one(0006100), one(0177700), "#wDs", mcfv4up }, -{"cmpil", one(0006200), one(0177700), "#l@s", m68000up }, -{"cmpil", one(0006200), one(0177700), "#lDs", mcf }, - -{"cmpmb", one(0130410), one(0170770), "+s+d", m68000up }, -{"cmpmw", one(0130510), one(0170770), "+s+d", m68000up }, -{"cmpml", one(0130610), one(0170770), "+s+d", m68000up }, +{"clrb", 2, one(0041000), one(0177700), "$s", m68000up | mcfisa_a }, +{"clrw", 2, one(0041100), one(0177700), "$s", m68000up | mcfisa_a }, +{"clrl", 2, one(0041200), one(0177700), "$s", m68000up | mcfisa_a }, + +{"cmp2b", 4, two(0000300,0), two(0177700,07777), "!sR1", m68020up | cpu32 }, +{"cmp2w", 4, two(0001300,0), two(0177700,07777), "!sR1", m68020up | cpu32 }, +{"cmp2l", 4, two(0002300,0), two(0177700,07777), "!sR1", m68020up | cpu32 }, + +{"cmpaw", 2, one(0130300), one(0170700), "*wAd", m68000up }, +{"cmpal", 2, one(0130700), one(0170700), "*lAd", m68000up | mcfisa_a }, + +{"cmpib", 4, one(0006000), one(0177700), "#b@s", m68000up }, +{"cmpib", 4, one(0006000), one(0177700), "#bDs", mcfisa_b }, +{"cmpiw", 4, one(0006100), one(0177700), "#w@s", m68000up }, +{"cmpiw", 4, one(0006100), one(0177700), "#wDs", mcfisa_b }, +{"cmpil", 6, one(0006200), one(0177700), "#l@s", m68000up }, +{"cmpil", 6, one(0006200), one(0177700), "#lDs", mcfisa_a }, + +{"cmpmb", 2, one(0130410), one(0170770), "+s+d", m68000up }, +{"cmpmw", 2, one(0130510), one(0170770), "+s+d", m68000up }, +{"cmpml", 2, one(0130610), one(0170770), "+s+d", m68000up }, /* The cmp opcode can generate the cmpa, cmpm, and cmpi instructions. */ -{"cmpb", one(0006000), one(0177700), "#b@s", m68000up }, -{"cmpb", one(0006000), one(0177700), "#bDs", mcfv4up }, -{"cmpb", one(0130410), one(0170770), "+s+d", m68000up }, -{"cmpb", one(0130000), one(0170700), ";bDd", m68000up }, -{"cmpb", one(0130000), one(0170700), "*bDd", mcfv4up }, -{"cmpw", one(0130300), one(0170700), "*wAd", m68000up }, -{"cmpw", one(0006100), one(0177700), "#w@s", m68000up }, -{"cmpw", one(0006100), one(0177700), "#wDs", mcfv4up }, -{"cmpw", one(0130510), one(0170770), "+s+d", m68000up }, -{"cmpw", one(0130100), one(0170700), "*wDd", m68000up | mcfv4up }, -{"cmpl", one(0130700), one(0170700), "*lAd", m68000up | mcf }, -{"cmpl", one(0006200), one(0177700), "#l@s", m68000up }, -{"cmpl", one(0006200), one(0177700), "#lDs", mcf }, -{"cmpl", one(0130610), one(0170770), "+s+d", m68000up }, -{"cmpl", one(0130200), one(0170700), "*lDd", m68000up | mcf }, - -{"dbcc", one(0052310), one(0177770), "DsBw", m68000up }, -{"dbcs", one(0052710), one(0177770), "DsBw", m68000up }, -{"dbeq", one(0053710), one(0177770), "DsBw", m68000up }, -{"dbf", one(0050710), one(0177770), "DsBw", m68000up }, -{"dbge", one(0056310), one(0177770), "DsBw", m68000up }, -{"dbgt", one(0057310), one(0177770), "DsBw", m68000up }, -{"dbhi", one(0051310), one(0177770), "DsBw", m68000up }, -{"dble", one(0057710), one(0177770), "DsBw", m68000up }, -{"dbls", one(0051710), one(0177770), "DsBw", m68000up }, -{"dblt", one(0056710), one(0177770), "DsBw", m68000up }, -{"dbmi", one(0055710), one(0177770), "DsBw", m68000up }, -{"dbne", one(0053310), one(0177770), "DsBw", m68000up }, -{"dbpl", one(0055310), one(0177770), "DsBw", m68000up }, -{"dbt", one(0050310), one(0177770), "DsBw", m68000up }, -{"dbvc", one(0054310), one(0177770), "DsBw", m68000up }, -{"dbvs", one(0054710), one(0177770), "DsBw", m68000up }, - -{"divsw", one(0100700), one(0170700), ";wDd", m68000up | mcf5206eup }, - -{"divsl", two(0046100,0006000),two(0177700,0107770),";lD3D1", m68020up|cpu32 }, -{"divsl", two(0046100,0004000),two(0177700,0107770),";lDD", m68020up|cpu32 }, -{"divsl", two(0046100,0004000),two(0177700,0107770),"qsDD", mcf5206eup }, - -{"divsll", two(0046100,0004000),two(0177700,0107770),";lD3D1",m68020up|cpu32 }, -{"divsll", two(0046100,0004000),two(0177700,0107770),";lDD", m68020up|cpu32 }, - -{"divuw", one(0100300), one(0170700), ";wDd", m68000up | mcf5206eup }, - -{"divul", two(0046100,0002000),two(0177700,0107770),";lD3D1", m68020up|cpu32 }, -{"divul", two(0046100,0000000),two(0177700,0107770),";lDD", m68020up|cpu32 }, -{"divul", two(0046100,0000000),two(0177700,0107770),"qsDD", mcf5206eup }, - -{"divull", two(0046100,0000000),two(0177700,0107770),";lD3D1",m68020up|cpu32 }, -{"divull", two(0046100,0000000),two(0177700,0107770),";lDD", m68020up|cpu32 }, - -{"eorib", one(0005000), one(0177700), "#b$s", m68000up }, -{"eorib", one(0005074), one(0177777), "#bCs", m68000up }, -{"eoriw", one(0005100), one(0177700), "#w$s", m68000up }, -{"eoriw", one(0005174), one(0177777), "#wSs", m68000up }, -{"eoril", one(0005200), one(0177700), "#l$s", m68000up }, -{"eoril", one(0005200), one(0177700), "#lDs", mcf }, -{"eori", one(0005074), one(0177777), "#bCs", m68000up }, -{"eori", one(0005174), one(0177777), "#wSs", m68000up }, -{"eori", one(0005100), one(0177700), "#w$s", m68000up }, +{"cmpb", 4, one(0006000), one(0177700), "#b@s", m68000up }, +{"cmpb", 4, one(0006000), one(0177700), "#bDs", mcfisa_b }, +{"cmpb", 2, one(0130410), one(0170770), "+s+d", m68000up }, +{"cmpb", 2, one(0130000), one(0170700), ";bDd", m68000up }, +{"cmpb", 2, one(0130000), one(0170700), "*bDd", mcfisa_b }, +{"cmpw", 2, one(0130300), one(0170700), "*wAd", m68000up }, +{"cmpw", 4, one(0006100), one(0177700), "#w@s", m68000up }, +{"cmpw", 4, one(0006100), one(0177700), "#wDs", mcfisa_b }, +{"cmpw", 2, one(0130510), one(0170770), "+s+d", m68000up }, +{"cmpw", 2, one(0130100), one(0170700), "*wDd", m68000up | mcfisa_b }, +{"cmpl", 2, one(0130700), one(0170700), "*lAd", m68000up | mcfisa_a }, +{"cmpl", 6, one(0006200), one(0177700), "#l@s", m68000up }, +{"cmpl", 6, one(0006200), one(0177700), "#lDs", mcfisa_a }, +{"cmpl", 2, one(0130610), one(0170770), "+s+d", m68000up }, +{"cmpl", 2, one(0130200), one(0170700), "*lDd", m68000up | mcfisa_a }, + +{"dbcc", 2, one(0052310), one(0177770), "DsBw", m68000up }, +{"dbcs", 2, one(0052710), one(0177770), "DsBw", m68000up }, +{"dbeq", 2, one(0053710), one(0177770), "DsBw", m68000up }, +{"dbf", 2, one(0050710), one(0177770), "DsBw", m68000up }, +{"dbge", 2, one(0056310), one(0177770), "DsBw", m68000up }, +{"dbgt", 2, one(0057310), one(0177770), "DsBw", m68000up }, +{"dbhi", 2, one(0051310), one(0177770), "DsBw", m68000up }, +{"dble", 2, one(0057710), one(0177770), "DsBw", m68000up }, +{"dbls", 2, one(0051710), one(0177770), "DsBw", m68000up }, +{"dblt", 2, one(0056710), one(0177770), "DsBw", m68000up }, +{"dbmi", 2, one(0055710), one(0177770), "DsBw", m68000up }, +{"dbne", 2, one(0053310), one(0177770), "DsBw", m68000up }, +{"dbpl", 2, one(0055310), one(0177770), "DsBw", m68000up }, +{"dbt", 2, one(0050310), one(0177770), "DsBw", m68000up }, +{"dbvc", 2, one(0054310), one(0177770), "DsBw", m68000up }, +{"dbvs", 2, one(0054710), one(0177770), "DsBw", m68000up }, + +{"divsw", 2, one(0100700), one(0170700), ";wDd", m68000up | mcfhwdiv }, + +{"divsl", 4, two(0046100,0006000),two(0177700,0107770),";lD3D1", m68020up|cpu32 }, +{"divsl", 4, two(0046100,0004000),two(0177700,0107770),";lDD", m68020up|cpu32 }, +{"divsl", 4, two(0046100,0004000),two(0177700,0107770),"qsDD", mcfhwdiv }, + +{"divsll", 4, two(0046100,0004000),two(0177700,0107770),";lD3D1",m68020up|cpu32 }, +{"divsll", 4, two(0046100,0004000),two(0177700,0107770),";lDD", m68020up|cpu32 }, + +{"divuw", 2, one(0100300), one(0170700), ";wDd", m68000up | mcfhwdiv }, + +{"divul", 4, two(0046100,0002000),two(0177700,0107770),";lD3D1", m68020up|cpu32 }, +{"divul", 4, two(0046100,0000000),two(0177700,0107770),";lDD", m68020up|cpu32 }, +{"divul", 4, two(0046100,0000000),two(0177700,0107770),"qsDD", mcfhwdiv }, + +{"divull", 4, two(0046100,0000000),two(0177700,0107770),";lD3D1",m68020up|cpu32 }, +{"divull", 4, two(0046100,0000000),two(0177700,0107770),";lDD", m68020up|cpu32 }, + +{"eorib", 4, one(0005000), one(0177700), "#b$s", m68000up }, +{"eorib", 4, one(0005074), one(0177777), "#bCs", m68000up }, +{"eoriw", 4, one(0005100), one(0177700), "#w$s", m68000up }, +{"eoriw", 4, one(0005174), one(0177777), "#wSs", m68000up }, +{"eoril", 6, one(0005200), one(0177700), "#l$s", m68000up }, +{"eoril", 6, one(0005200), one(0177700), "#lDs", mcfisa_a }, +{"eori", 4, one(0005074), one(0177777), "#bCs", m68000up }, +{"eori", 4, one(0005174), one(0177777), "#wSs", m68000up }, +{"eori", 4, one(0005100), one(0177700), "#w$s", m68000up }, /* The eor opcode can generate the eori instruction. */ -{"eorb", one(0005000), one(0177700), "#b$s", m68000up }, -{"eorb", one(0005074), one(0177777), "#bCs", m68000up }, -{"eorb", one(0130400), one(0170700), "Dd$s", m68000up }, -{"eorw", one(0005100), one(0177700), "#w$s", m68000up }, -{"eorw", one(0005174), one(0177777), "#wSs", m68000up }, -{"eorw", one(0130500), one(0170700), "Dd$s", m68000up }, -{"eorl", one(0005200), one(0177700), "#l$s", m68000up }, -{"eorl", one(0005200), one(0177700), "#lDs", mcf }, -{"eorl", one(0130600), one(0170700), "Dd$s", m68000up | mcf }, -{"eor", one(0005074), one(0177777), "#bCs", m68000up }, -{"eor", one(0005174), one(0177777), "#wSs", m68000up }, -{"eor", one(0005100), one(0177700), "#w$s", m68000up }, -{"eor", one(0130500), one(0170700), "Dd$s", m68000up }, - -{"exg", one(0140500), one(0170770), "DdDs", m68000up }, -{"exg", one(0140510), one(0170770), "AdAs", m68000up }, -{"exg", one(0140610), one(0170770), "DdAs", m68000up }, -{"exg", one(0140610), one(0170770), "AsDd", m68000up }, - -{"extw", one(0044200), one(0177770), "Ds", m68000up|mcf }, -{"extl", one(0044300), one(0177770), "Ds", m68000up|mcf }, -{"extbl", one(0044700), one(0177770), "Ds", m68020up|cpu32|mcf }, +{"eorb", 4, one(0005000), one(0177700), "#b$s", m68000up }, +{"eorb", 4, one(0005074), one(0177777), "#bCs", m68000up }, +{"eorb", 2, one(0130400), one(0170700), "Dd$s", m68000up }, +{"eorw", 4, one(0005100), one(0177700), "#w$s", m68000up }, +{"eorw", 4, one(0005174), one(0177777), "#wSs", m68000up }, +{"eorw", 2, one(0130500), one(0170700), "Dd$s", m68000up }, +{"eorl", 6, one(0005200), one(0177700), "#l$s", m68000up }, +{"eorl", 6, one(0005200), one(0177700), "#lDs", mcfisa_a }, +{"eorl", 2, one(0130600), one(0170700), "Dd$s", m68000up | mcfisa_a }, +{"eor", 4, one(0005074), one(0177777), "#bCs", m68000up }, +{"eor", 4, one(0005174), one(0177777), "#wSs", m68000up }, +{"eor", 4, one(0005100), one(0177700), "#w$s", m68000up }, +{"eor", 2, one(0130500), one(0170700), "Dd$s", m68000up }, + +{"exg", 2, one(0140500), one(0170770), "DdDs", m68000up }, +{"exg", 2, one(0140510), one(0170770), "AdAs", m68000up }, +{"exg", 2, one(0140610), one(0170770), "DdAs", m68000up }, +{"exg", 2, one(0140610), one(0170770), "AsDd", m68000up }, + +{"extw", 2, one(0044200), one(0177770), "Ds", m68000up|mcfisa_a }, +{"extl", 2, one(0044300), one(0177770), "Ds", m68000up|mcfisa_a }, +{"extbl", 2, one(0044700), one(0177770), "Ds", m68020up|cpu32|mcfisa_a }, -{"ff1", one(0002300), one(0177770), "Ds", mcf528x}, +{"ff1", 2, one(0002300), one(0177770), "Ds", mcfisa_aa}, /* float stuff starts here */ -{"fabsb", two(0xF000, 0x5818), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"fabsb", two(0xF000, 0x5818), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fabsd", two(0xF000, 0x0018), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, -{"fabsd", two(0xF000, 0x0018), two(0xF1C0, 0xE07F), "IiFt", cfloat }, -{"fabsd", two(0xF000, 0x5418), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"fabsd", two(0xF000, 0x5418), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, -{"fabsl", two(0xF000, 0x4018), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"fabsl", two(0xF000, 0x4018), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fabsp", two(0xF000, 0x4C18), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"fabss", two(0xF000, 0x4418), two(0xF1C0, 0xFC7F), "Ii;fF7", cfloat }, -{"fabss", two(0xF000, 0x4418), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"fabsw", two(0xF000, 0x5018), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"fabsw", two(0xF000, 0x5018), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fabsx", two(0xF000, 0x0018), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"fabsx", two(0xF000, 0x4818), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, -{"fabsx", two(0xF000, 0x0018), two(0xF1C0, 0xE07F), "IiFt", mfloat }, - -{"fsabsb", two(0xF000, 0x5858), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, -{"fsabsb", two(0xF000, 0x5858), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsabsd", two(0xF000, 0x0058), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, -{"fsabsd", two(0xF000, 0x0058), two(0xF1C0, 0xE07F), "IiFt", cfloat }, -{"fsabsd", two(0xF000, 0x5458), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, -{"fsabsd", two(0xF000, 0x5458), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, -{"fsabsl", two(0xF000, 0x4058), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, -{"fsabsl", two(0xF000, 0x4058), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsabsp", two(0xF000, 0x4C58), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, -{"fsabss", two(0xF000, 0x4258), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsabss", two(0xF000, 0x4458), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, -{"fsabsw", two(0xF000, 0x5058), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, -{"fsabsw", two(0xF000, 0x5058), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsabsx", two(0xF000, 0x0058), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, -{"fsabsx", two(0xF000, 0x4858), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, -{"fsabsx", two(0xF000, 0x0058), two(0xF1C0, 0xE07F), "IiFt", m68040up }, - -{"fdabsb", two(0xF000, 0x585C), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdabsb", two(0xF000, 0x585c), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up}, -{"fdabsd", two(0xF000, 0x005C), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, -{"fdabsd", two(0xF000, 0x005C), two(0xF1C0, 0xE07F), "IiFt", cfloat }, -{"fdabsd", two(0xF000, 0x545C), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, -{"fdabsd", two(0xF000, 0x545c), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up}, -{"fdabsl", two(0xF000, 0x405C), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdabsl", two(0xF000, 0x405c), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up}, -{"fdabsp", two(0xF000, 0x4C5c), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up}, -{"fdabss", two(0xF000, 0x425C), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdabss", two(0xF000, 0x445c), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up}, -{"fdabsw", two(0xF000, 0x505C), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdabsw", two(0xF000, 0x505c), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up}, -{"fdabsx", two(0xF000, 0x005c), two(0xF1C0, 0xE07F), "IiF8F7", m68040up}, -{"fdabsx", two(0xF000, 0x485c), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up}, -{"fdabsx", two(0xF000, 0x005c), two(0xF1C0, 0xE07F), "IiFt", m68040up}, - -{"facosb", two(0xF000, 0x581C), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"facosd", two(0xF000, 0x541C), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"facosl", two(0xF000, 0x401C), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"facosp", two(0xF000, 0x4C1C), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"facoss", two(0xF000, 0x441C), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"facosw", two(0xF000, 0x501C), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"facosx", two(0xF000, 0x001C), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"facosx", two(0xF000, 0x481C), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, -{"facosx", two(0xF000, 0x001C), two(0xF1C0, 0xE07F), "IiFt", mfloat }, - -{"faddb", two(0xF000, 0x5822), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"faddb", two(0xF000, 0x5822), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"faddd", two(0xF000, 0x0022), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, -{"faddd", two(0xF000, 0x5422), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, -{"faddd", two(0xF000, 0x5422), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"faddd", two(0xF000, 0x5422), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, -{"faddl", two(0xF000, 0x4022), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"faddl", two(0xF000, 0x4022), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"faddp", two(0xF000, 0x4C22), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"fadds", two(0xF000, 0x4422), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"fadds", two(0xF000, 0x4422), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"faddw", two(0xF000, 0x5022), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"faddw", two(0xF000, 0x5022), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"faddx", two(0xF000, 0x0022), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"faddx", two(0xF000, 0x4822), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, - -{"fsaddb", two(0xF000, 0x5862), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, -{"fsaddb", two(0xF000, 0x5862), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsaddd", two(0xF000, 0x0066), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, -{"fsaddd", two(0xF000, 0x5462), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, -{"fsaddd", two(0xF000, 0x5462), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, -{"fsaddl", two(0xF000, 0x4062), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, -{"fsaddl", two(0xF000, 0x4062), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsaddp", two(0xF000, 0x4C62), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, -{"fsadds", two(0xF000, 0x4462), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, -{"fsadds", two(0xF000, 0x4862), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsaddw", two(0xF000, 0x5062), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, -{"fsaddw", two(0xF000, 0x5062), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsaddx", two(0xF000, 0x0062), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, -{"fsaddx", two(0xF000, 0x4862), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, - -{"fdaddb", two(0xF000, 0x5826), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdaddb", two(0xF000, 0x5866), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, -{"fdaddd", two(0xF000, 0x0066), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, -{"fdaddd", two(0xF000, 0x5426), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdaddd", two(0xF000, 0x5466), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, -{"fdaddl", two(0xF000, 0x4026), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, -{"fdaddl", two(0xF000, 0x4066), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, -{"fdaddp", two(0xF000, 0x4C66), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, -{"fdadds", two(0xF000, 0x4466), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, -{"fdadds", two(0xF000, 0x4826), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdaddw", two(0xF000, 0x5026), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdaddw", two(0xF000, 0x5066), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, -{"fdaddx", two(0xF000, 0x0066), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, -{"fdaddx", two(0xF000, 0x4866), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, - -{"fasinb", two(0xF000, 0x580C), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"fasind", two(0xF000, 0x540C), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"fasinl", two(0xF000, 0x400C), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"fasinp", two(0xF000, 0x4C0C), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"fasins", two(0xF000, 0x440C), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"fasinw", two(0xF000, 0x500C), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"fasinx", two(0xF000, 0x000C), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"fasinx", two(0xF000, 0x480C), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, -{"fasinx", two(0xF000, 0x000C), two(0xF1C0, 0xE07F), "IiFt", mfloat }, - -{"fatanb", two(0xF000, 0x580A), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"fatand", two(0xF000, 0x540A), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"fatanl", two(0xF000, 0x400A), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"fatanp", two(0xF000, 0x4C0A), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"fatans", two(0xF000, 0x440A), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"fatanw", two(0xF000, 0x500A), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"fatanx", two(0xF000, 0x000A), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"fatanx", two(0xF000, 0x480A), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, -{"fatanx", two(0xF000, 0x000A), two(0xF1C0, 0xE07F), "IiFt", mfloat }, - -{"fatanhb", two(0xF000, 0x580D), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"fatanhd", two(0xF000, 0x540D), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"fatanhl", two(0xF000, 0x400D), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"fatanhp", two(0xF000, 0x4C0D), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"fatanhs", two(0xF000, 0x440D), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"fatanhw", two(0xF000, 0x500D), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"fatanhx", two(0xF000, 0x000D), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"fatanhx", two(0xF000, 0x480D), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, -{"fatanhx", two(0xF000, 0x000D), two(0xF1C0, 0xE07F), "IiFt", mfloat }, - -{"fbeq", one(0xF081), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fbf", one(0xF080), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fbge", one(0xF093), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fbgl", one(0xF096), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fbgle", one(0xF097), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fbgt", one(0xF092), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fble", one(0xF095), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fblt", one(0xF094), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fbne", one(0xF08E), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fbnge", one(0xF09C), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fbngl", one(0xF099), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fbngle", one(0xF098), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fbngt", one(0xF09D), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fbnle", one(0xF09A), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fbnlt", one(0xF09B), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fboge", one(0xF083), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fbogl", one(0xF086), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fbogt", one(0xF082), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fbole", one(0xF085), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fbolt", one(0xF084), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fbor", one(0xF087), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fbseq", one(0xF091), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fbsf", one(0xF090), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fbsne", one(0xF09E), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fbst", one(0xF09F), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fbt", one(0xF08F), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fbueq", one(0xF089), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fbuge", one(0xF08B), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fbugt", one(0xF08A), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fbule", one(0xF08D), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fbult", one(0xF08C), one(0xF1FF), "IdBW", mfloat | cfloat }, -{"fbun", one(0xF088), one(0xF1FF), "IdBW", mfloat | cfloat }, - -{"fbeql", one(0xF0C1), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fbfl", one(0xF0C0), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fbgel", one(0xF0D3), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fbgll", one(0xF0D6), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fbglel", one(0xF0D7), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fbgtl", one(0xF0D2), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fblel", one(0xF0D5), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fbltl", one(0xF0D4), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fbnel", one(0xF0CE), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fbngel", one(0xF0DC), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fbngll", one(0xF0D9), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fbnglel", one(0xF0D8), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fbngtl", one(0xF0DD), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fbnlel", one(0xF0DA), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fbnltl", one(0xF0DB), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fbogel", one(0xF0C3), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fbogll", one(0xF0C6), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fbogtl", one(0xF0C2), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fbolel", one(0xF0C5), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fboltl", one(0xF0C4), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fborl", one(0xF0C7), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fbseql", one(0xF0D1), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fbsfl", one(0xF0D0), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fbsnel", one(0xF0DE), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fbstl", one(0xF0DF), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fbtl", one(0xF0CF), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fbueql", one(0xF0C9), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fbugel", one(0xF0CB), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fbugtl", one(0xF0CA), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fbulel", one(0xF0CD), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fbultl", one(0xF0CC), one(0xF1FF), "IdBC", mfloat | cfloat }, -{"fbunl", one(0xF0C8), one(0xF1FF), "IdBC", mfloat | cfloat }, - -{"fjeq", one(0xF081), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjf", one(0xF080), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjge", one(0xF093), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjgl", one(0xF096), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjgle", one(0xF097), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjgt", one(0xF092), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjle", one(0xF095), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjlt", one(0xF094), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjne", one(0xF08E), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjnge", one(0xF09C), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjngl", one(0xF099), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjngle", one(0xF098), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjngt", one(0xF09D), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjnle", one(0xF09A), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjnlt", one(0xF09B), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjoge", one(0xF083), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjogl", one(0xF086), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjogt", one(0xF082), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjole", one(0xF085), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjolt", one(0xF084), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjor", one(0xF087), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjseq", one(0xF091), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjsf", one(0xF090), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjsne", one(0xF09E), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjst", one(0xF09F), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjt", one(0xF08F), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjueq", one(0xF089), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjuge", one(0xF08B), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjugt", one(0xF08A), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjule", one(0xF08D), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjult", one(0xF08C), one(0xF1BF), "IdBc", mfloat | cfloat }, -{"fjun", one(0xF088), one(0xF1BF), "IdBc", mfloat | cfloat }, - -{"fcmpb", two(0xF000, 0x5838), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fcmpb", two(0xF000, 0x5838), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"fcmpd", two(0xF000, 0x5438), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"fcmpd", two(0xF000, 0x5438), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, -{"fcmpd", two(0xF000, 0x0038), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, -{"fcmpl", two(0xF000, 0x4038), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"fcmpl", two(0xF000, 0x4038), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fcmpp", two(0xF000, 0x4C38), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"fcmps", two(0xF000, 0x4438), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"fcmps", two(0xF000, 0x4438), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fcmpw", two(0xF000, 0x5038), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"fcmpw", two(0xF000, 0x5038), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fcmpx", two(0xF000, 0x0038), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"fcmpx", two(0xF000, 0x4838), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, - -{"fcosb", two(0xF000, 0x581D), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"fcosd", two(0xF000, 0x541D), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"fcosl", two(0xF000, 0x401D), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"fcosp", two(0xF000, 0x4C1D), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"fcoss", two(0xF000, 0x441D), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"fcosw", two(0xF000, 0x501D), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"fcosx", two(0xF000, 0x001D), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"fcosx", two(0xF000, 0x481D), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, -{"fcosx", two(0xF000, 0x001D), two(0xF1C0, 0xE07F), "IiFt", mfloat }, - -{"fcoshb", two(0xF000, 0x5819), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"fcoshd", two(0xF000, 0x5419), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"fcoshl", two(0xF000, 0x4019), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"fcoshp", two(0xF000, 0x4C19), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"fcoshs", two(0xF000, 0x4419), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"fcoshw", two(0xF000, 0x5019), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"fcoshx", two(0xF000, 0x0019), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"fcoshx", two(0xF000, 0x4819), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, -{"fcoshx", two(0xF000, 0x0019), two(0xF1C0, 0xE07F), "IiFt", mfloat }, - -{"fdbeq", two(0xF048, 0x0001), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdbf", two(0xF048, 0x0000), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdbge", two(0xF048, 0x0013), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdbgl", two(0xF048, 0x0016), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdbgle", two(0xF048, 0x0017), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdbgt", two(0xF048, 0x0012), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdble", two(0xF048, 0x0015), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdblt", two(0xF048, 0x0014), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdbne", two(0xF048, 0x000E), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdbnge", two(0xF048, 0x001C), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdbngl", two(0xF048, 0x0019), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdbngle", two(0xF048, 0x0018), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdbngt", two(0xF048, 0x001D), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdbnle", two(0xF048, 0x001A), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdbnlt", two(0xF048, 0x001B), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdboge", two(0xF048, 0x0003), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdbogl", two(0xF048, 0x0006), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdbogt", two(0xF048, 0x0002), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdbole", two(0xF048, 0x0005), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdbolt", two(0xF048, 0x0004), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdbor", two(0xF048, 0x0007), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdbseq", two(0xF048, 0x0011), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdbsf", two(0xF048, 0x0010), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdbsne", two(0xF048, 0x001E), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdbst", two(0xF048, 0x001F), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdbt", two(0xF048, 0x000F), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdbueq", two(0xF048, 0x0009), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdbuge", two(0xF048, 0x000B), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdbugt", two(0xF048, 0x000A), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdbule", two(0xF048, 0x000D), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdbult", two(0xF048, 0x000C), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, -{"fdbun", two(0xF048, 0x0008), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, - -{"fdivb", two(0xF000, 0x5820), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"fdivb", two(0xF000, 0x5820), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdivd", two(0xF000, 0x0020), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, -{"fdivd", two(0xF000, 0x5420), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"fdivd", two(0xF000, 0x5420), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, -{"fdivl", two(0xF000, 0x4020), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"fdivl", two(0xF000, 0x4020), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdivp", two(0xF000, 0x4C20), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"fdivs", two(0xF000, 0x4420), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"fdivs", two(0xF000, 0x4420), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdivw", two(0xF000, 0x5020), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"fdivw", two(0xF000, 0x5020), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdivx", two(0xF000, 0x0020), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"fdivx", two(0xF000, 0x4820), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, - -{"fsdivb", two(0xF000, 0x5860), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, -{"fsdivb", two(0xF000, 0x5860), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsdivd", two(0xF000, 0x0060), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, -{"fsdivd", two(0xF000, 0x5460), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, -{"fsdivd", two(0xF000, 0x5460), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, -{"fsdivl", two(0xF000, 0x4060), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, -{"fsdivl", two(0xF000, 0x4060), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsdivp", two(0xF000, 0x4C60), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, -{"fsdivs", two(0xF000, 0x4460), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, -{"fsdivs", two(0xF000, 0x4460), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsdivw", two(0xF000, 0x5060), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, -{"fsdivw", two(0xF000, 0x5060), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsdivx", two(0xF000, 0x0060), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, -{"fsdivx", two(0xF000, 0x4860), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, - -{"fddivb", two(0xF000, 0x5864), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, -{"fddivb", two(0xF000, 0x5864), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fddivd", two(0xF000, 0x0064), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, -{"fddivd", two(0xF000, 0x5464), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, -{"fddivd", two(0xF000, 0x5464), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, -{"fddivl", two(0xF000, 0x4064), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, -{"fddivl", two(0xF000, 0x4064), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fddivp", two(0xF000, 0x4C64), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, -{"fddivs", two(0xF000, 0x4464), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, -{"fddivs", two(0xF000, 0x4464), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fddivw", two(0xF000, 0x5064), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, -{"fddivw", two(0xF000, 0x5064), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fddivx", two(0xF000, 0x0064), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, -{"fddivx", two(0xF000, 0x4864), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, - -{"fetoxb", two(0xF000, 0x5810), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"fetoxd", two(0xF000, 0x5410), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"fetoxl", two(0xF000, 0x4010), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"fetoxp", two(0xF000, 0x4C10), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"fetoxs", two(0xF000, 0x4410), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"fetoxw", two(0xF000, 0x5010), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"fetoxx", two(0xF000, 0x0010), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"fetoxx", two(0xF000, 0x4810), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, -{"fetoxx", two(0xF000, 0x0010), two(0xF1C0, 0xE07F), "IiFt", mfloat }, - -{"fetoxm1b", two(0xF000, 0x5808), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"fetoxm1d", two(0xF000, 0x5408), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"fetoxm1l", two(0xF000, 0x4008), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"fetoxm1p", two(0xF000, 0x4C08), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"fetoxm1s", two(0xF000, 0x4408), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"fetoxm1w", two(0xF000, 0x5008), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"fetoxm1x", two(0xF000, 0x0008), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"fetoxm1x", two(0xF000, 0x4808), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, -{"fetoxm1x", two(0xF000, 0x0008), two(0xF1C0, 0xE07F), "IiFt", mfloat }, - -{"fgetexpb", two(0xF000, 0x581E), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"fgetexpd", two(0xF000, 0x541E), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"fgetexpl", two(0xF000, 0x401E), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"fgetexpp", two(0xF000, 0x4C1E), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"fgetexps", two(0xF000, 0x441E), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"fgetexpw", two(0xF000, 0x501E), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"fgetexpx", two(0xF000, 0x001E), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"fgetexpx", two(0xF000, 0x481E), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, -{"fgetexpx", two(0xF000, 0x001E), two(0xF1C0, 0xE07F), "IiFt", mfloat }, - -{"fgetmanb", two(0xF000, 0x581F), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"fgetmand", two(0xF000, 0x541F), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"fgetmanl", two(0xF000, 0x401F), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"fgetmanp", two(0xF000, 0x4C1F), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"fgetmans", two(0xF000, 0x441F), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"fgetmanw", two(0xF000, 0x501F), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"fgetmanx", two(0xF000, 0x001F), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"fgetmanx", two(0xF000, 0x481F), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, -{"fgetmanx", two(0xF000, 0x001F), two(0xF1C0, 0xE07F), "IiFt", mfloat }, - -{"fintb", two(0xF000, 0x5801), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"fintb", two(0xF000, 0x5801), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fintd", two(0xF000, 0x0001), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, -{"fintd", two(0xF000, 0x0001), two(0xF1C0, 0xE07F), "IiFt", cfloat }, -{"fintd", two(0xF000, 0x5401), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"fintd", two(0xF000, 0x5401), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, -{"fintl", two(0xF000, 0x4001), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"fintl", two(0xF000, 0x4001), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fintp", two(0xF000, 0x4C01), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"fints", two(0xF000, 0x4401), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"fints", two(0xF000, 0x4401), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fintw", two(0xF000, 0x5001), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"fintw", two(0xF000, 0x5001), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fintx", two(0xF000, 0x0001), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"fintx", two(0xF000, 0x4801), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, -{"fintx", two(0xF000, 0x0001), two(0xF1C0, 0xE07F), "IiFt", mfloat }, - -{"fintrzb", two(0xF000, 0x5803), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"fintrzb", two(0xF000, 0x5803), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fintrzd", two(0xF000, 0x0003), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, -{"fintrzd", two(0xF000, 0x0003), two(0xF1C0, 0xE07F), "IiFt", cfloat }, -{"fintrzd", two(0xF000, 0x5403), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"fintrzd", two(0xF000, 0x5403), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, -{"fintrzl", two(0xF000, 0x4003), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"fintrzl", two(0xF000, 0x4003), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fintrzp", two(0xF000, 0x4C03), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"fintrzs", two(0xF000, 0x4403), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"fintrzs", two(0xF000, 0x4403), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fintrzw", two(0xF000, 0x5003), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"fintrzw", two(0xF000, 0x5003), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fintrzx", two(0xF000, 0x0003), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"fintrzx", two(0xF000, 0x4803), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, -{"fintrzx", two(0xF000, 0x0003), two(0xF1C0, 0xE07F), "IiFt", mfloat }, - -{"flog10b", two(0xF000, 0x5815), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"flog10d", two(0xF000, 0x5415), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"flog10l", two(0xF000, 0x4015), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"flog10p", two(0xF000, 0x4C15), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"flog10s", two(0xF000, 0x4415), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"flog10w", two(0xF000, 0x5015), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"flog10x", two(0xF000, 0x0015), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"flog10x", two(0xF000, 0x4815), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, -{"flog10x", two(0xF000, 0x0015), two(0xF1C0, 0xE07F), "IiFt", mfloat }, - -{"flog2b", two(0xF000, 0x5816), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"flog2d", two(0xF000, 0x5416), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"flog2l", two(0xF000, 0x4016), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"flog2p", two(0xF000, 0x4C16), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"flog2s", two(0xF000, 0x4416), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"flog2w", two(0xF000, 0x5016), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"flog2x", two(0xF000, 0x0016), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"flog2x", two(0xF000, 0x4816), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, -{"flog2x", two(0xF000, 0x0016), two(0xF1C0, 0xE07F), "IiFt", mfloat }, - -{"flognb", two(0xF000, 0x5814), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"flognd", two(0xF000, 0x5414), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"flognl", two(0xF000, 0x4014), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"flognp", two(0xF000, 0x4C14), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"flogns", two(0xF000, 0x4414), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"flognw", two(0xF000, 0x5014), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"flognx", two(0xF000, 0x0014), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"flognx", two(0xF000, 0x4814), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, -{"flognx", two(0xF000, 0x0014), two(0xF1C0, 0xE07F), "IiFt", mfloat }, - -{"flognp1b", two(0xF000, 0x5806), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"flognp1d", two(0xF000, 0x5406), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"flognp1l", two(0xF000, 0x4006), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"flognp1p", two(0xF000, 0x4C06), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"flognp1s", two(0xF000, 0x4406), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"flognp1w", two(0xF000, 0x5006), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"flognp1x", two(0xF000, 0x0006), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"flognp1x", two(0xF000, 0x4806), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, -{"flognp1x", two(0xF000, 0x0006), two(0xF1C0, 0xE07F), "IiFt", mfloat }, - -{"fmodb", two(0xF000, 0x5821), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"fmodd", two(0xF000, 0x5421), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"fmodl", two(0xF000, 0x4021), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"fmodp", two(0xF000, 0x4C21), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"fmods", two(0xF000, 0x4421), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"fmodw", two(0xF000, 0x5021), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"fmodx", two(0xF000, 0x0021), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"fmodx", two(0xF000, 0x4821), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, - -{"fmoveb", two(0xF000, 0x5800), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fmoveb", two(0xF000, 0x7800), two(0xF1C0, 0xFC7F), "IiF7bs", cfloat }, -{"fmoveb", two(0xF000, 0x5800), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"fmoveb", two(0xF000, 0x7800), two(0xF1C0, 0xFC7F), "IiF7$b", mfloat }, -{"fmoved", two(0xF000, 0x5400), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"fmoved", two(0xF000, 0x7400), two(0xF1C0, 0xFC7F), "IiF7~F", mfloat }, -{"fmoved", two(0xF000, 0x0000), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, -{"fmoved", two(0xF000, 0x5400), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, -{"fmoved", two(0xF000, 0x7400), two(0xF1C0, 0xFC7F), "IiF7ws", cfloat }, -{"fmovel", two(0xF000, 0x4000), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"fmovel", two(0xF000, 0x6000), two(0xF1C0, 0xFC7F), "IiF7$l", mfloat }, +{"fabsb", 4, two(0xF000, 0x5818), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"fabsb", 4, two(0xF000, 0x5818), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fabsd", 4, two(0xF000, 0x0018), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, +{"fabsd", 4, two(0xF000, 0x0018), two(0xF1C0, 0xE07F), "IiFt", cfloat }, +{"fabsd", 4, two(0xF000, 0x5418), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"fabsd", 4, two(0xF000, 0x5418), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, +{"fabsl", 4, two(0xF000, 0x4018), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"fabsl", 4, two(0xF000, 0x4018), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fabsp", 4, two(0xF000, 0x4C18), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"fabss", 4, two(0xF000, 0x4418), two(0xF1C0, 0xFC7F), "Ii;fF7", cfloat }, +{"fabss", 4, two(0xF000, 0x4418), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"fabsw", 4, two(0xF000, 0x5018), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"fabsw", 4, two(0xF000, 0x5018), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fabsx", 4, two(0xF000, 0x0018), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"fabsx", 4, two(0xF000, 0x4818), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"fabsx", 4, two(0xF000, 0x0018), two(0xF1C0, 0xE07F), "IiFt", mfloat }, + +{"fsabsb", 4, two(0xF000, 0x5858), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, +{"fsabsb", 4, two(0xF000, 0x5858), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsabsd", 4, two(0xF000, 0x0058), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, +{"fsabsd", 4, two(0xF000, 0x0058), two(0xF1C0, 0xE07F), "IiFt", cfloat }, +{"fsabsd", 4, two(0xF000, 0x5458), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, +{"fsabsd", 4, two(0xF000, 0x5458), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, +{"fsabsl", 4, two(0xF000, 0x4058), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, +{"fsabsl", 4, two(0xF000, 0x4058), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsabsp", 4, two(0xF000, 0x4C58), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, +{"fsabss", 4, two(0xF000, 0x4258), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsabss", 4, two(0xF000, 0x4458), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, +{"fsabsw", 4, two(0xF000, 0x5058), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, +{"fsabsw", 4, two(0xF000, 0x5058), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsabsx", 4, two(0xF000, 0x0058), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, +{"fsabsx", 4, two(0xF000, 0x4858), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, +{"fsabsx", 4, two(0xF000, 0x0058), two(0xF1C0, 0xE07F), "IiFt", m68040up }, + +{"fdabsb", 4, two(0xF000, 0x585C), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdabsb", 4, two(0xF000, 0x585c), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up}, +{"fdabsd", 4, two(0xF000, 0x005C), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, +{"fdabsd", 4, two(0xF000, 0x005C), two(0xF1C0, 0xE07F), "IiFt", cfloat }, +{"fdabsd", 4, two(0xF000, 0x545C), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, +{"fdabsd", 4, two(0xF000, 0x545c), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up}, +{"fdabsl", 4, two(0xF000, 0x405C), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdabsl", 4, two(0xF000, 0x405c), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up}, +{"fdabsp", 4, two(0xF000, 0x4C5c), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up}, +{"fdabss", 4, two(0xF000, 0x425C), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdabss", 4, two(0xF000, 0x445c), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up}, +{"fdabsw", 4, two(0xF000, 0x505C), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdabsw", 4, two(0xF000, 0x505c), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up}, +{"fdabsx", 4, two(0xF000, 0x005c), two(0xF1C0, 0xE07F), "IiF8F7", m68040up}, +{"fdabsx", 4, two(0xF000, 0x485c), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up}, +{"fdabsx", 4, two(0xF000, 0x005c), two(0xF1C0, 0xE07F), "IiFt", m68040up}, + +{"facosb", 4, two(0xF000, 0x581C), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"facosd", 4, two(0xF000, 0x541C), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"facosl", 4, two(0xF000, 0x401C), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"facosp", 4, two(0xF000, 0x4C1C), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"facoss", 4, two(0xF000, 0x441C), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"facosw", 4, two(0xF000, 0x501C), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"facosx", 4, two(0xF000, 0x001C), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"facosx", 4, two(0xF000, 0x481C), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"facosx", 4, two(0xF000, 0x001C), two(0xF1C0, 0xE07F), "IiFt", mfloat }, + +{"faddb", 4, two(0xF000, 0x5822), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"faddb", 4, two(0xF000, 0x5822), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"faddd", 4, two(0xF000, 0x0022), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, +{"faddd", 4, two(0xF000, 0x5422), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, +{"faddd", 4, two(0xF000, 0x5422), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"faddd", 4, two(0xF000, 0x5422), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, +{"faddl", 4, two(0xF000, 0x4022), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"faddl", 4, two(0xF000, 0x4022), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"faddp", 4, two(0xF000, 0x4C22), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"fadds", 4, two(0xF000, 0x4422), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"fadds", 4, two(0xF000, 0x4422), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"faddw", 4, two(0xF000, 0x5022), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"faddw", 4, two(0xF000, 0x5022), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"faddx", 4, two(0xF000, 0x0022), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"faddx", 4, two(0xF000, 0x4822), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, + +{"fsaddb", 4, two(0xF000, 0x5862), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, +{"fsaddb", 4, two(0xF000, 0x5862), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsaddd", 4, two(0xF000, 0x0066), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, +{"fsaddd", 4, two(0xF000, 0x5462), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, +{"fsaddd", 4, two(0xF000, 0x5462), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, +{"fsaddl", 4, two(0xF000, 0x4062), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, +{"fsaddl", 4, two(0xF000, 0x4062), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsaddp", 4, two(0xF000, 0x4C62), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, +{"fsadds", 4, two(0xF000, 0x4462), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, +{"fsadds", 4, two(0xF000, 0x4862), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsaddw", 4, two(0xF000, 0x5062), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, +{"fsaddw", 4, two(0xF000, 0x5062), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsaddx", 4, two(0xF000, 0x0062), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, +{"fsaddx", 4, two(0xF000, 0x4862), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, + +{"fdaddb", 4, two(0xF000, 0x5826), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdaddb", 4, two(0xF000, 0x5866), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, +{"fdaddd", 4, two(0xF000, 0x0066), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, +{"fdaddd", 4, two(0xF000, 0x5426), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdaddd", 4, two(0xF000, 0x5466), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, +{"fdaddl", 4, two(0xF000, 0x4026), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, +{"fdaddl", 4, two(0xF000, 0x4066), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, +{"fdaddp", 4, two(0xF000, 0x4C66), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, +{"fdadds", 4, two(0xF000, 0x4466), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, +{"fdadds", 4, two(0xF000, 0x4826), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdaddw", 4, two(0xF000, 0x5026), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdaddw", 4, two(0xF000, 0x5066), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, +{"fdaddx", 4, two(0xF000, 0x0066), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, +{"fdaddx", 4, two(0xF000, 0x4866), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, + +{"fasinb", 4, two(0xF000, 0x580C), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"fasind", 4, two(0xF000, 0x540C), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"fasinl", 4, two(0xF000, 0x400C), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"fasinp", 4, two(0xF000, 0x4C0C), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"fasins", 4, two(0xF000, 0x440C), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"fasinw", 4, two(0xF000, 0x500C), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"fasinx", 4, two(0xF000, 0x000C), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"fasinx", 4, two(0xF000, 0x480C), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"fasinx", 4, two(0xF000, 0x000C), two(0xF1C0, 0xE07F), "IiFt", mfloat }, + +{"fatanb", 4, two(0xF000, 0x580A), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"fatand", 4, two(0xF000, 0x540A), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"fatanl", 4, two(0xF000, 0x400A), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"fatanp", 4, two(0xF000, 0x4C0A), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"fatans", 4, two(0xF000, 0x440A), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"fatanw", 4, two(0xF000, 0x500A), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"fatanx", 4, two(0xF000, 0x000A), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"fatanx", 4, two(0xF000, 0x480A), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"fatanx", 4, two(0xF000, 0x000A), two(0xF1C0, 0xE07F), "IiFt", mfloat }, + +{"fatanhb", 4, two(0xF000, 0x580D), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"fatanhd", 4, two(0xF000, 0x540D), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"fatanhl", 4, two(0xF000, 0x400D), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"fatanhp", 4, two(0xF000, 0x4C0D), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"fatanhs", 4, two(0xF000, 0x440D), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"fatanhw", 4, two(0xF000, 0x500D), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"fatanhx", 4, two(0xF000, 0x000D), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"fatanhx", 4, two(0xF000, 0x480D), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"fatanhx", 4, two(0xF000, 0x000D), two(0xF1C0, 0xE07F), "IiFt", mfloat }, + +{"fbeq", 2, one(0xF081), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fbf", 2, one(0xF080), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fbge", 2, one(0xF093), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fbgl", 2, one(0xF096), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fbgle", 2, one(0xF097), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fbgt", 2, one(0xF092), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fble", 2, one(0xF095), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fblt", 2, one(0xF094), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fbne", 2, one(0xF08E), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fbnge", 2, one(0xF09C), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fbngl", 2, one(0xF099), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fbngle", 2, one(0xF098), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fbngt", 2, one(0xF09D), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fbnle", 2, one(0xF09A), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fbnlt", 2, one(0xF09B), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fboge", 2, one(0xF083), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fbogl", 2, one(0xF086), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fbogt", 2, one(0xF082), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fbole", 2, one(0xF085), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fbolt", 2, one(0xF084), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fbor", 2, one(0xF087), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fbseq", 2, one(0xF091), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fbsf", 2, one(0xF090), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fbsne", 2, one(0xF09E), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fbst", 2, one(0xF09F), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fbt", 2, one(0xF08F), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fbueq", 2, one(0xF089), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fbuge", 2, one(0xF08B), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fbugt", 2, one(0xF08A), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fbule", 2, one(0xF08D), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fbult", 2, one(0xF08C), one(0xF1FF), "IdBW", mfloat | cfloat }, +{"fbun", 2, one(0xF088), one(0xF1FF), "IdBW", mfloat | cfloat }, + +{"fbeql", 2, one(0xF0C1), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fbfl", 2, one(0xF0C0), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fbgel", 2, one(0xF0D3), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fbgll", 2, one(0xF0D6), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fbglel", 2, one(0xF0D7), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fbgtl", 2, one(0xF0D2), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fblel", 2, one(0xF0D5), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fbltl", 2, one(0xF0D4), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fbnel", 2, one(0xF0CE), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fbngel", 2, one(0xF0DC), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fbngll", 2, one(0xF0D9), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fbnglel", 2, one(0xF0D8), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fbngtl", 2, one(0xF0DD), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fbnlel", 2, one(0xF0DA), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fbnltl", 2, one(0xF0DB), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fbogel", 2, one(0xF0C3), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fbogll", 2, one(0xF0C6), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fbogtl", 2, one(0xF0C2), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fbolel", 2, one(0xF0C5), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fboltl", 2, one(0xF0C4), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fborl", 2, one(0xF0C7), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fbseql", 2, one(0xF0D1), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fbsfl", 2, one(0xF0D0), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fbsnel", 2, one(0xF0DE), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fbstl", 2, one(0xF0DF), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fbtl", 2, one(0xF0CF), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fbueql", 2, one(0xF0C9), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fbugel", 2, one(0xF0CB), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fbugtl", 2, one(0xF0CA), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fbulel", 2, one(0xF0CD), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fbultl", 2, one(0xF0CC), one(0xF1FF), "IdBC", mfloat | cfloat }, +{"fbunl", 2, one(0xF0C8), one(0xF1FF), "IdBC", mfloat | cfloat }, + +{"fjeq", 2, one(0xF081), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjf", 2, one(0xF080), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjge", 2, one(0xF093), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjgl", 2, one(0xF096), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjgle", 2, one(0xF097), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjgt", 2, one(0xF092), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjle", 2, one(0xF095), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjlt", 2, one(0xF094), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjne", 2, one(0xF08E), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjnge", 2, one(0xF09C), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjngl", 2, one(0xF099), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjngle", 2, one(0xF098), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjngt", 2, one(0xF09D), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjnle", 2, one(0xF09A), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjnlt", 2, one(0xF09B), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjoge", 2, one(0xF083), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjogl", 2, one(0xF086), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjogt", 2, one(0xF082), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjole", 2, one(0xF085), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjolt", 2, one(0xF084), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjor", 2, one(0xF087), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjseq", 2, one(0xF091), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjsf", 2, one(0xF090), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjsne", 2, one(0xF09E), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjst", 2, one(0xF09F), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjt", 2, one(0xF08F), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjueq", 2, one(0xF089), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjuge", 2, one(0xF08B), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjugt", 2, one(0xF08A), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjule", 2, one(0xF08D), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjult", 2, one(0xF08C), one(0xF1BF), "IdBc", mfloat | cfloat }, +{"fjun", 2, one(0xF088), one(0xF1BF), "IdBc", mfloat | cfloat }, + +{"fcmpb", 4, two(0xF000, 0x5838), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fcmpb", 4, two(0xF000, 0x5838), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"fcmpd", 4, two(0xF000, 0x5438), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"fcmpd", 4, two(0xF000, 0x5438), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, +{"fcmpd", 4, two(0xF000, 0x0038), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, +{"fcmpl", 4, two(0xF000, 0x4038), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"fcmpl", 4, two(0xF000, 0x4038), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fcmpp", 4, two(0xF000, 0x4C38), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"fcmps", 4, two(0xF000, 0x4438), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"fcmps", 4, two(0xF000, 0x4438), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fcmpw", 4, two(0xF000, 0x5038), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"fcmpw", 4, two(0xF000, 0x5038), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fcmpx", 4, two(0xF000, 0x0038), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"fcmpx", 4, two(0xF000, 0x4838), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, + +{"fcosb", 4, two(0xF000, 0x581D), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"fcosd", 4, two(0xF000, 0x541D), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"fcosl", 4, two(0xF000, 0x401D), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"fcosp", 4, two(0xF000, 0x4C1D), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"fcoss", 4, two(0xF000, 0x441D), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"fcosw", 4, two(0xF000, 0x501D), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"fcosx", 4, two(0xF000, 0x001D), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"fcosx", 4, two(0xF000, 0x481D), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"fcosx", 4, two(0xF000, 0x001D), two(0xF1C0, 0xE07F), "IiFt", mfloat }, + +{"fcoshb", 4, two(0xF000, 0x5819), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"fcoshd", 4, two(0xF000, 0x5419), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"fcoshl", 4, two(0xF000, 0x4019), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"fcoshp", 4, two(0xF000, 0x4C19), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"fcoshs", 4, two(0xF000, 0x4419), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"fcoshw", 4, two(0xF000, 0x5019), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"fcoshx", 4, two(0xF000, 0x0019), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"fcoshx", 4, two(0xF000, 0x4819), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"fcoshx", 4, two(0xF000, 0x0019), two(0xF1C0, 0xE07F), "IiFt", mfloat }, + +{"fdbeq", 4, two(0xF048, 0x0001), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdbf", 4, two(0xF048, 0x0000), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdbge", 4, two(0xF048, 0x0013), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdbgl", 4, two(0xF048, 0x0016), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdbgle", 4, two(0xF048, 0x0017), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdbgt", 4, two(0xF048, 0x0012), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdble", 4, two(0xF048, 0x0015), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdblt", 4, two(0xF048, 0x0014), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdbne", 4, two(0xF048, 0x000E), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdbnge", 4, two(0xF048, 0x001C), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdbngl", 4, two(0xF048, 0x0019), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdbngle", 4, two(0xF048, 0x0018), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdbngt", 4, two(0xF048, 0x001D), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdbnle", 4, two(0xF048, 0x001A), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdbnlt", 4, two(0xF048, 0x001B), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdboge", 4, two(0xF048, 0x0003), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdbogl", 4, two(0xF048, 0x0006), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdbogt", 4, two(0xF048, 0x0002), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdbole", 4, two(0xF048, 0x0005), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdbolt", 4, two(0xF048, 0x0004), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdbor", 4, two(0xF048, 0x0007), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdbseq", 4, two(0xF048, 0x0011), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdbsf", 4, two(0xF048, 0x0010), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdbsne", 4, two(0xF048, 0x001E), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdbst", 4, two(0xF048, 0x001F), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdbt", 4, two(0xF048, 0x000F), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdbueq", 4, two(0xF048, 0x0009), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdbuge", 4, two(0xF048, 0x000B), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdbugt", 4, two(0xF048, 0x000A), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdbule", 4, two(0xF048, 0x000D), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdbult", 4, two(0xF048, 0x000C), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, +{"fdbun", 4, two(0xF048, 0x0008), two(0xF1F8, 0xFFFF), "IiDsBw", mfloat }, + +{"fdivb", 4, two(0xF000, 0x5820), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"fdivb", 4, two(0xF000, 0x5820), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdivd", 4, two(0xF000, 0x0020), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, +{"fdivd", 4, two(0xF000, 0x5420), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"fdivd", 4, two(0xF000, 0x5420), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, +{"fdivl", 4, two(0xF000, 0x4020), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"fdivl", 4, two(0xF000, 0x4020), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdivp", 4, two(0xF000, 0x4C20), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"fdivs", 4, two(0xF000, 0x4420), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"fdivs", 4, two(0xF000, 0x4420), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdivw", 4, two(0xF000, 0x5020), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"fdivw", 4, two(0xF000, 0x5020), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdivx", 4, two(0xF000, 0x0020), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"fdivx", 4, two(0xF000, 0x4820), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, + +{"fsdivb", 4, two(0xF000, 0x5860), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, +{"fsdivb", 4, two(0xF000, 0x5860), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsdivd", 4, two(0xF000, 0x0060), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, +{"fsdivd", 4, two(0xF000, 0x5460), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, +{"fsdivd", 4, two(0xF000, 0x5460), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, +{"fsdivl", 4, two(0xF000, 0x4060), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, +{"fsdivl", 4, two(0xF000, 0x4060), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsdivp", 4, two(0xF000, 0x4C60), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, +{"fsdivs", 4, two(0xF000, 0x4460), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, +{"fsdivs", 4, two(0xF000, 0x4460), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsdivw", 4, two(0xF000, 0x5060), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, +{"fsdivw", 4, two(0xF000, 0x5060), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsdivx", 4, two(0xF000, 0x0060), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, +{"fsdivx", 4, two(0xF000, 0x4860), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, + +{"fddivb", 4, two(0xF000, 0x5864), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, +{"fddivb", 4, two(0xF000, 0x5864), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fddivd", 4, two(0xF000, 0x0064), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, +{"fddivd", 4, two(0xF000, 0x5464), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, +{"fddivd", 4, two(0xF000, 0x5464), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, +{"fddivl", 4, two(0xF000, 0x4064), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, +{"fddivl", 4, two(0xF000, 0x4064), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fddivp", 4, two(0xF000, 0x4C64), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, +{"fddivs", 4, two(0xF000, 0x4464), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, +{"fddivs", 4, two(0xF000, 0x4464), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fddivw", 4, two(0xF000, 0x5064), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, +{"fddivw", 4, two(0xF000, 0x5064), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fddivx", 4, two(0xF000, 0x0064), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, +{"fddivx", 4, two(0xF000, 0x4864), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, + +{"fetoxb", 4, two(0xF000, 0x5810), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"fetoxd", 4, two(0xF000, 0x5410), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"fetoxl", 4, two(0xF000, 0x4010), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"fetoxp", 4, two(0xF000, 0x4C10), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"fetoxs", 4, two(0xF000, 0x4410), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"fetoxw", 4, two(0xF000, 0x5010), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"fetoxx", 4, two(0xF000, 0x0010), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"fetoxx", 4, two(0xF000, 0x4810), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"fetoxx", 4, two(0xF000, 0x0010), two(0xF1C0, 0xE07F), "IiFt", mfloat }, + +{"fetoxm1b", 4, two(0xF000, 0x5808), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"fetoxm1d", 4, two(0xF000, 0x5408), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"fetoxm1l", 4, two(0xF000, 0x4008), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"fetoxm1p", 4, two(0xF000, 0x4C08), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"fetoxm1s", 4, two(0xF000, 0x4408), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"fetoxm1w", 4, two(0xF000, 0x5008), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"fetoxm1x", 4, two(0xF000, 0x0008), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"fetoxm1x", 4, two(0xF000, 0x4808), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"fetoxm1x", 4, two(0xF000, 0x0008), two(0xF1C0, 0xE07F), "IiFt", mfloat }, + +{"fgetexpb", 4, two(0xF000, 0x581E), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"fgetexpd", 4, two(0xF000, 0x541E), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"fgetexpl", 4, two(0xF000, 0x401E), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"fgetexpp", 4, two(0xF000, 0x4C1E), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"fgetexps", 4, two(0xF000, 0x441E), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"fgetexpw", 4, two(0xF000, 0x501E), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"fgetexpx", 4, two(0xF000, 0x001E), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"fgetexpx", 4, two(0xF000, 0x481E), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"fgetexpx", 4, two(0xF000, 0x001E), two(0xF1C0, 0xE07F), "IiFt", mfloat }, + +{"fgetmanb", 4, two(0xF000, 0x581F), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"fgetmand", 4, two(0xF000, 0x541F), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"fgetmanl", 4, two(0xF000, 0x401F), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"fgetmanp", 4, two(0xF000, 0x4C1F), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"fgetmans", 4, two(0xF000, 0x441F), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"fgetmanw", 4, two(0xF000, 0x501F), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"fgetmanx", 4, two(0xF000, 0x001F), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"fgetmanx", 4, two(0xF000, 0x481F), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"fgetmanx", 4, two(0xF000, 0x001F), two(0xF1C0, 0xE07F), "IiFt", mfloat }, + +{"fintb", 4, two(0xF000, 0x5801), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"fintb", 4, two(0xF000, 0x5801), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fintd", 4, two(0xF000, 0x0001), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, +{"fintd", 4, two(0xF000, 0x0001), two(0xF1C0, 0xE07F), "IiFt", cfloat }, +{"fintd", 4, two(0xF000, 0x5401), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"fintd", 4, two(0xF000, 0x5401), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, +{"fintl", 4, two(0xF000, 0x4001), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"fintl", 4, two(0xF000, 0x4001), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fintp", 4, two(0xF000, 0x4C01), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"fints", 4, two(0xF000, 0x4401), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"fints", 4, two(0xF000, 0x4401), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fintw", 4, two(0xF000, 0x5001), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"fintw", 4, two(0xF000, 0x5001), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fintx", 4, two(0xF000, 0x0001), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"fintx", 4, two(0xF000, 0x4801), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"fintx", 4, two(0xF000, 0x0001), two(0xF1C0, 0xE07F), "IiFt", mfloat }, + +{"fintrzb", 4, two(0xF000, 0x5803), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"fintrzb", 4, two(0xF000, 0x5803), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fintrzd", 4, two(0xF000, 0x0003), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, +{"fintrzd", 4, two(0xF000, 0x0003), two(0xF1C0, 0xE07F), "IiFt", cfloat }, +{"fintrzd", 4, two(0xF000, 0x5403), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"fintrzd", 4, two(0xF000, 0x5403), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, +{"fintrzl", 4, two(0xF000, 0x4003), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"fintrzl", 4, two(0xF000, 0x4003), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fintrzp", 4, two(0xF000, 0x4C03), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"fintrzs", 4, two(0xF000, 0x4403), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"fintrzs", 4, two(0xF000, 0x4403), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fintrzw", 4, two(0xF000, 0x5003), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"fintrzw", 4, two(0xF000, 0x5003), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fintrzx", 4, two(0xF000, 0x0003), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"fintrzx", 4, two(0xF000, 0x4803), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"fintrzx", 4, two(0xF000, 0x0003), two(0xF1C0, 0xE07F), "IiFt", mfloat }, + +{"flog10b", 4, two(0xF000, 0x5815), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"flog10d", 4, two(0xF000, 0x5415), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"flog10l", 4, two(0xF000, 0x4015), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"flog10p", 4, two(0xF000, 0x4C15), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"flog10s", 4, two(0xF000, 0x4415), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"flog10w", 4, two(0xF000, 0x5015), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"flog10x", 4, two(0xF000, 0x0015), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"flog10x", 4, two(0xF000, 0x4815), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"flog10x", 4, two(0xF000, 0x0015), two(0xF1C0, 0xE07F), "IiFt", mfloat }, + +{"flog2b", 4, two(0xF000, 0x5816), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"flog2d", 4, two(0xF000, 0x5416), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"flog2l", 4, two(0xF000, 0x4016), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"flog2p", 4, two(0xF000, 0x4C16), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"flog2s", 4, two(0xF000, 0x4416), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"flog2w", 4, two(0xF000, 0x5016), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"flog2x", 4, two(0xF000, 0x0016), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"flog2x", 4, two(0xF000, 0x4816), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"flog2x", 4, two(0xF000, 0x0016), two(0xF1C0, 0xE07F), "IiFt", mfloat }, + +{"flognb", 4, two(0xF000, 0x5814), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"flognd", 4, two(0xF000, 0x5414), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"flognl", 4, two(0xF000, 0x4014), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"flognp", 4, two(0xF000, 0x4C14), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"flogns", 4, two(0xF000, 0x4414), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"flognw", 4, two(0xF000, 0x5014), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"flognx", 4, two(0xF000, 0x0014), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"flognx", 4, two(0xF000, 0x4814), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"flognx", 4, two(0xF000, 0x0014), two(0xF1C0, 0xE07F), "IiFt", mfloat }, + +{"flognp1b", 4, two(0xF000, 0x5806), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"flognp1d", 4, two(0xF000, 0x5406), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"flognp1l", 4, two(0xF000, 0x4006), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"flognp1p", 4, two(0xF000, 0x4C06), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"flognp1s", 4, two(0xF000, 0x4406), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"flognp1w", 4, two(0xF000, 0x5006), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"flognp1x", 4, two(0xF000, 0x0006), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"flognp1x", 4, two(0xF000, 0x4806), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"flognp1x", 4, two(0xF000, 0x0006), two(0xF1C0, 0xE07F), "IiFt", mfloat }, + +{"fmodb", 4, two(0xF000, 0x5821), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"fmodd", 4, two(0xF000, 0x5421), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"fmodl", 4, two(0xF000, 0x4021), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"fmodp", 4, two(0xF000, 0x4C21), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"fmods", 4, two(0xF000, 0x4421), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"fmodw", 4, two(0xF000, 0x5021), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"fmodx", 4, two(0xF000, 0x0021), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"fmodx", 4, two(0xF000, 0x4821), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, + +{"fmoveb", 4, two(0xF000, 0x5800), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fmoveb", 4, two(0xF000, 0x7800), two(0xF1C0, 0xFC7F), "IiF7bs", cfloat }, +{"fmoveb", 4, two(0xF000, 0x5800), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"fmoveb", 4, two(0xF000, 0x7800), two(0xF1C0, 0xFC7F), "IiF7$b", mfloat }, +{"fmoved", 4, two(0xF000, 0x5400), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"fmoved", 4, two(0xF000, 0x7400), two(0xF1C0, 0xFC7F), "IiF7~F", mfloat }, +{"fmoved", 4, two(0xF000, 0x0000), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, +{"fmoved", 4, two(0xF000, 0x5400), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, +{"fmoved", 4, two(0xF000, 0x7400), two(0xF1C0, 0xFC7F), "IiF7ws", cfloat }, +{"fmovel", 4, two(0xF000, 0x4000), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"fmovel", 4, two(0xF000, 0x6000), two(0xF1C0, 0xFC7F), "IiF7$l", mfloat }, /* FIXME: the next two variants should not permit moving an address register to anything but the floating point instruction register. */ -{"fmovel", two(0xF000, 0xA000), two(0xF1C0, 0xE3FF), "Iis8%s", mfloat }, -{"fmovel", two(0xF000, 0x8000), two(0xF1C0, 0xE3FF), "Ii*ls8", mfloat }, -{"fmovel", two(0xF000, 0x4000), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fmovel", two(0xF000, 0x6000), two(0xF1C0, 0xFC7F), "IiF7bs", cfloat }, - /* Move the FP control registers */ -{"fmovel", two(0xF000, 0xA000), two(0xF1C0, 0xE3FF), "Iis8ps", cfloat }, -{"fmovel", two(0xF000, 0x8000), two(0xF1C0, 0xE3FF), "Iibss8", cfloat }, -{"fmovep", two(0xF000, 0x4C00), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"fmovep", two(0xF000, 0x6C00), two(0xF1C0, 0xFC00), "IiF7~pkC", mfloat }, -{"fmovep", two(0xF000, 0x7C00), two(0xF1C0, 0xFC0F), "IiF7~pDk", mfloat }, -{"fmoves", two(0xF000, 0x4400), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"fmoves", two(0xF000, 0x6400), two(0xF1C0, 0xFC7F), "IiF7$f", mfloat }, -{"fmoves", two(0xF000, 0x4400), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fmoves", two(0xF000, 0x6400), two(0xF1C0, 0xFC7F), "IiF7qs", cfloat }, -{"fmovew", two(0xF000, 0x5000), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"fmovew", two(0xF000, 0x7000), two(0xF1C0, 0xFC7F), "IiF7$w", mfloat }, -{"fmovew", two(0xF000, 0x5000), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fmovew", two(0xF000, 0x7000), two(0xF1C0, 0xFC7F), "IiF7qs", cfloat }, -{"fmovex", two(0xF000, 0x0000), two(0xF1FF, 0xE07F), "IiF8F7", mfloat }, -{"fmovex", two(0xF000, 0x4800), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, -{"fmovex", two(0xF000, 0x6800), two(0xF1C0, 0xFC7F), "IiF7~x", mfloat }, - -{"fsmoveb", two(0xF000, 0x5840), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, -{"fsmoveb", two(0xF000, 0x5840), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsmoveb", two(0xF000, 0x7840), two(0xF1C0, 0xFC7F), "IiF7qs", cfloat }, -{"fsmoved", two(0xF000, 0x0040), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, -{"fsmoved", two(0xF000, 0x5440), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, -{"fsmoved", two(0xF000, 0x5440), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, -{"fsmoved", two(0xF000, 0x7440), two(0xF1C0, 0xFC7F), "IiF7ws", cfloat }, -{"fsmovel", two(0xF000, 0x4040), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, -{"fsmovel", two(0xF000, 0x4040), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsmovel", two(0xF000, 0x6040), two(0xF1C0, 0xFC7F), "IiF7qs", cfloat }, -{"fsmoves", two(0xF000, 0x4440), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, -{"fsmoves", two(0xF000, 0x4440), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsmoves", two(0xF000, 0x6440), two(0xF1C0, 0xFC7F), "IiF7qs", cfloat }, -{"fsmovew", two(0xF000, 0x5040), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, -{"fsmovew", two(0xF000, 0x5040), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsmovew", two(0xF000, 0x7040), two(0xF1C0, 0xFC7F), "IiF7qs", cfloat }, -{"fsmovex", two(0xF000, 0x0040), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, -{"fsmovex", two(0xF000, 0x4840), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, -{"fsmovep", two(0xF000, 0x4C40), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, - -{"fdmoveb", two(0xF000, 0x5844), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, -{"fdmoveb", two(0xF000, 0x5844), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdmoveb", two(0xF000, 0x7844), two(0xF1C0, 0xFC7F), "IiF7qs", cfloat }, -{"fdmoved", two(0xF000, 0x0044), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, -{"fdmoved", two(0xF000, 0x5444), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, -{"fdmoved", two(0xF000, 0x5444), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, -{"fdmoved", two(0xF000, 0x7444), two(0xF1C0, 0xFC7F), "IiF7qs", cfloat }, -{"fdmovel", two(0xF000, 0x4044), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, -{"fdmovel", two(0xF000, 0x4044), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdmovel", two(0xF000, 0x6044), two(0xF1C0, 0xFC7F), "IiF7qs", cfloat }, -{"fdmoves", two(0xF000, 0x4444), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, -{"fdmoves", two(0xF000, 0x4444), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdmoves", two(0xF000, 0x6444), two(0xF1C0, 0xFC7F), "IiF7qs", cfloat }, -{"fdmovew", two(0xF000, 0x5044), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, -{"fdmovew", two(0xF000, 0x5044), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdmovew", two(0xF000, 0x7044), two(0xF1C0, 0xFC7F), "IiF7qs", cfloat }, -{"fdmovex", two(0xF000, 0x0044), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, -{"fdmovex", two(0xF000, 0x4844), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, -{"fdmovep", two(0xF000, 0x4C44), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, - -{"fmovecrx", two(0xF000, 0x5C00), two(0xF1FF, 0xFC00), "Ii#CF7", mfloat }, - -{"fmovemd", two(0xF000, 0xD000), two(0xFFC0, 0xFF00), "Iizsl3", cfloat }, -{"fmovemd", two(0xF000, 0xD000), two(0xFFC0, 0xFF00), "Iizs#3", cfloat }, -{"fmovemd", two(0xF000, 0xF000), two(0xFFC0, 0xFF00), "Ii#3ys", cfloat }, -{"fmovemd", two(0xF000, 0xF000), two(0xFFC0, 0xFF00), "Iil3ys", cfloat }, - -{"fmovemx", two(0xF000, 0xF800), two(0xF1C0, 0xFF8F), "IiDk&s", mfloat }, -{"fmovemx", two(0xF020, 0xE800), two(0xF1F8, 0xFF8F), "IiDk-s", mfloat }, -{"fmovemx", two(0xF000, 0xD800), two(0xF1C0, 0xFF8F), "Ii&sDk", mfloat }, -{"fmovemx", two(0xF018, 0xD800), two(0xF1F8, 0xFF8F), "Ii+sDk", mfloat }, -{"fmovemx", two(0xF000, 0xF000), two(0xF1C0, 0xFF00), "Idl3&s", mfloat }, -{"fmovemx", two(0xF000, 0xF000), two(0xF1C0, 0xFF00), "Id#3&s", mfloat }, -{"fmovemx", two(0xF000, 0xD000), two(0xF1C0, 0xFF00), "Id&sl3", mfloat }, -{"fmovemx", two(0xF000, 0xD000), two(0xF1C0, 0xFF00), "Id&s#3", mfloat }, -{"fmovemx", two(0xF020, 0xE000), two(0xF1F8, 0xFF00), "IdL3-s", mfloat }, -{"fmovemx", two(0xF020, 0xE000), two(0xF1F8, 0xFF00), "Id#3-s", mfloat }, -{"fmovemx", two(0xF018, 0xD000), two(0xF1F8, 0xFF00), "Id+sl3", mfloat }, -{"fmovemx", two(0xF018, 0xD000), two(0xF1F8, 0xFF00), "Id+s#3", mfloat }, +{"fmovel", 4, two(0xF000, 0xA000), two(0xF1C0, 0xE3FF), "Iis8%s", mfloat }, +{"fmovel", 4, two(0xF000, 0x8000), two(0xF1C0, 0xE3FF), "Ii*ls8", mfloat }, +{"fmovel", 4, two(0xF000, 0x4000), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fmovel", 4, two(0xF000, 0x6000), two(0xF1C0, 0xFC7F), "IiF7bs", cfloat }, + /* Move the FP control registers. */ +{"fmovel", 4, two(0xF000, 0xA000), two(0xF1C0, 0xE3FF), "Iis8ps", cfloat }, +{"fmovel", 4, two(0xF000, 0x8000), two(0xF1C0, 0xE3FF), "Iibss8", cfloat }, +{"fmovep", 4, two(0xF000, 0x4C00), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"fmovep", 4, two(0xF000, 0x6C00), two(0xF1C0, 0xFC00), "IiF7~pkC", mfloat }, +{"fmovep", 4, two(0xF000, 0x7C00), two(0xF1C0, 0xFC0F), "IiF7~pDk", mfloat }, +{"fmoves", 4, two(0xF000, 0x4400), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"fmoves", 4, two(0xF000, 0x6400), two(0xF1C0, 0xFC7F), "IiF7$f", mfloat }, +{"fmoves", 4, two(0xF000, 0x4400), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fmoves", 4, two(0xF000, 0x6400), two(0xF1C0, 0xFC7F), "IiF7qs", cfloat }, +{"fmovew", 4, two(0xF000, 0x5000), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"fmovew", 4, two(0xF000, 0x7000), two(0xF1C0, 0xFC7F), "IiF7$w", mfloat }, +{"fmovew", 4, two(0xF000, 0x5000), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fmovew", 4, two(0xF000, 0x7000), two(0xF1C0, 0xFC7F), "IiF7qs", cfloat }, +{"fmovex", 4, two(0xF000, 0x0000), two(0xF1FF, 0xE07F), "IiF8F7", mfloat }, +{"fmovex", 4, two(0xF000, 0x4800), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"fmovex", 4, two(0xF000, 0x6800), two(0xF1C0, 0xFC7F), "IiF7~x", mfloat }, + +{"fsmoveb", 4, two(0xF000, 0x5840), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, +{"fsmoveb", 4, two(0xF000, 0x5840), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsmoveb", 4, two(0xF000, 0x7840), two(0xF1C0, 0xFC7F), "IiF7qs", cfloat }, +{"fsmoved", 4, two(0xF000, 0x0040), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, +{"fsmoved", 4, two(0xF000, 0x5440), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, +{"fsmoved", 4, two(0xF000, 0x5440), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, +{"fsmoved", 4, two(0xF000, 0x7440), two(0xF1C0, 0xFC7F), "IiF7ws", cfloat }, +{"fsmovel", 4, two(0xF000, 0x4040), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, +{"fsmovel", 4, two(0xF000, 0x4040), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsmovel", 4, two(0xF000, 0x6040), two(0xF1C0, 0xFC7F), "IiF7qs", cfloat }, +{"fsmoves", 4, two(0xF000, 0x4440), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, +{"fsmoves", 4, two(0xF000, 0x4440), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsmoves", 4, two(0xF000, 0x6440), two(0xF1C0, 0xFC7F), "IiF7qs", cfloat }, +{"fsmovew", 4, two(0xF000, 0x5040), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, +{"fsmovew", 4, two(0xF000, 0x5040), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsmovew", 4, two(0xF000, 0x7040), two(0xF1C0, 0xFC7F), "IiF7qs", cfloat }, +{"fsmovex", 4, two(0xF000, 0x0040), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, +{"fsmovex", 4, two(0xF000, 0x4840), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, +{"fsmovep", 4, two(0xF000, 0x4C40), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, + +{"fdmoveb", 4, two(0xF000, 0x5844), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, +{"fdmoveb", 4, two(0xF000, 0x5844), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdmoveb", 4, two(0xF000, 0x7844), two(0xF1C0, 0xFC7F), "IiF7qs", cfloat }, +{"fdmoved", 4, two(0xF000, 0x0044), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, +{"fdmoved", 4, two(0xF000, 0x5444), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, +{"fdmoved", 4, two(0xF000, 0x5444), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, +{"fdmoved", 4, two(0xF000, 0x7444), two(0xF1C0, 0xFC7F), "IiF7qs", cfloat }, +{"fdmovel", 4, two(0xF000, 0x4044), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, +{"fdmovel", 4, two(0xF000, 0x4044), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdmovel", 4, two(0xF000, 0x6044), two(0xF1C0, 0xFC7F), "IiF7qs", cfloat }, +{"fdmoves", 4, two(0xF000, 0x4444), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, +{"fdmoves", 4, two(0xF000, 0x4444), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdmoves", 4, two(0xF000, 0x6444), two(0xF1C0, 0xFC7F), "IiF7qs", cfloat }, +{"fdmovew", 4, two(0xF000, 0x5044), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, +{"fdmovew", 4, two(0xF000, 0x5044), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdmovew", 4, two(0xF000, 0x7044), two(0xF1C0, 0xFC7F), "IiF7qs", cfloat }, +{"fdmovex", 4, two(0xF000, 0x0044), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, +{"fdmovex", 4, two(0xF000, 0x4844), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, +{"fdmovep", 4, two(0xF000, 0x4C44), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, + +{"fmovecrx", 4, two(0xF000, 0x5C00), two(0xF1FF, 0xFC00), "Ii#CF7", mfloat }, + +{"fmovemd", 4, two(0xF000, 0xD000), two(0xFFC0, 0xFF00), "Iizsl3", cfloat }, +{"fmovemd", 4, two(0xF000, 0xD000), two(0xFFC0, 0xFF00), "Iizs#3", cfloat }, +{"fmovemd", 4, two(0xF000, 0xF000), two(0xFFC0, 0xFF00), "Ii#3ys", cfloat }, +{"fmovemd", 4, two(0xF000, 0xF000), two(0xFFC0, 0xFF00), "Iil3ys", cfloat }, + +{"fmovemx", 4, two(0xF000, 0xF800), two(0xF1C0, 0xFF8F), "IiDk&s", mfloat }, +{"fmovemx", 4, two(0xF020, 0xE800), two(0xF1F8, 0xFF8F), "IiDk-s", mfloat }, +{"fmovemx", 4, two(0xF000, 0xD800), two(0xF1C0, 0xFF8F), "Ii&sDk", mfloat }, +{"fmovemx", 4, two(0xF018, 0xD800), two(0xF1F8, 0xFF8F), "Ii+sDk", mfloat }, +{"fmovemx", 4, two(0xF000, 0xF000), two(0xF1C0, 0xFF00), "Idl3&s", mfloat }, +{"fmovemx", 4, two(0xF000, 0xF000), two(0xF1C0, 0xFF00), "Id#3&s", mfloat }, +{"fmovemx", 4, two(0xF000, 0xD000), two(0xF1C0, 0xFF00), "Id&sl3", mfloat }, +{"fmovemx", 4, two(0xF000, 0xD000), two(0xF1C0, 0xFF00), "Id&s#3", mfloat }, +{"fmovemx", 4, two(0xF020, 0xE000), two(0xF1F8, 0xFF00), "IdL3-s", mfloat }, +{"fmovemx", 4, two(0xF020, 0xE000), two(0xF1F8, 0xFF00), "Id#3-s", mfloat }, +{"fmovemx", 4, two(0xF018, 0xD000), two(0xF1F8, 0xFF00), "Id+sl3", mfloat }, +{"fmovemx", 4, two(0xF018, 0xD000), two(0xF1F8, 0xFF00), "Id+s#3", mfloat }, -{"fmoveml", two(0xF000, 0xA000), two(0xF1C0, 0xE3FF), "Iis8%s", mfloat }, -{"fmoveml", two(0xF000, 0xA000), two(0xF1C0, 0xE3FF), "IiL8~s", mfloat }, +{"fmoveml", 4, two(0xF000, 0xA000), two(0xF1C0, 0xE3FF), "Iis8%s", mfloat }, +{"fmoveml", 4, two(0xF000, 0xA000), two(0xF1C0, 0xE3FF), "IiL8~s", mfloat }, /* FIXME: In the next instruction, we should only permit %dn if the target is a single register. We should only permit %an if the target is a single %fpiar. */ -{"fmoveml", two(0xF000, 0x8000), two(0xF1C0, 0xE3FF), "Ii*lL8", mfloat }, +{"fmoveml", 4, two(0xF000, 0x8000), two(0xF1C0, 0xE3FF), "Ii*lL8", mfloat }, -{"fmovem", two(0xF000, 0xD000), two(0xFFC0, 0xFF00), "IizsL3", cfloat }, -{"fmovem", two(0xF000, 0xD000), two(0xFFC0, 0xFF00), "Iizs#3", cfloat }, -{"fmovem", two(0xF000, 0xF000), two(0xFFC0, 0xFF00), "Ii#3ys", cfloat }, -{"fmovem", two(0xF000, 0xF000), two(0xFFC0, 0xFF00), "IiL3ys", cfloat }, - -{"fmovem", two(0xF020, 0xE000), two(0xF1F8, 0xFF00), "IdL3-s", mfloat }, -{"fmovem", two(0xF000, 0xF000), two(0xF1C0, 0xFF00), "Idl3&s", mfloat }, -{"fmovem", two(0xF018, 0xD000), two(0xF1F8, 0xFF00), "Id+sl3", mfloat }, -{"fmovem", two(0xF000, 0xD000), two(0xF1C0, 0xFF00), "Id&sl3", mfloat }, -{"fmovem", two(0xF020, 0xE000), two(0xF1F8, 0xFF00), "Id#3-s", mfloat }, -{"fmovem", two(0xF020, 0xE800), two(0xF1F8, 0xFF8F), "IiDk-s", mfloat }, -{"fmovem", two(0xF000, 0xF000), two(0xF1C0, 0xFF00), "Id#3&s", mfloat }, -{"fmovem", two(0xF000, 0xF800), two(0xF1C0, 0xFF8F), "IiDk&s", mfloat }, -{"fmovem", two(0xF018, 0xD000), two(0xF1F8, 0xFF00), "Id+s#3", mfloat }, -{"fmovem", two(0xF018, 0xD800), two(0xF1F8, 0xFF8F), "Ii+sDk", mfloat }, -{"fmovem", two(0xF000, 0xD000), two(0xF1C0, 0xFF00), "Id&s#3", mfloat }, -{"fmovem", two(0xF000, 0xD800), two(0xF1C0, 0xFF8F), "Ii&sDk", mfloat }, -{"fmovem", two(0xF000, 0xA000), two(0xF1C0, 0xE3FF), "Iis8%s", mfloat }, -{"fmovem", two(0xF000, 0x8000), two(0xF1C0, 0xE3FF), "Ii*ss8", mfloat }, -{"fmovem", two(0xF000, 0xA000), two(0xF1C0, 0xE3FF), "IiL8~s", mfloat }, -{"fmovem", two(0xF000, 0x8000), two(0xF2C0, 0xE3FF), "Ii*sL8", mfloat }, - -{"fmulb", two(0xF000, 0x5823), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"fmulb", two(0xF000, 0x5823), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fmuld", two(0xF000, 0x0023), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, -{"fmuld", two(0xF000, 0x5423), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"fmuld", two(0xF000, 0x5423), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, -{"fmull", two(0xF000, 0x4023), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"fmull", two(0xF000, 0x4023), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fmulp", two(0xF000, 0x4C23), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"fmuls", two(0xF000, 0x4423), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"fmuls", two(0xF000, 0x4423), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fmulw", two(0xF000, 0x5023), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"fmulw", two(0xF000, 0x5023), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fmulx", two(0xF000, 0x0023), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"fmulx", two(0xF000, 0x4823), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, - -{"fsmulb", two(0xF000, 0x5863), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, -{"fsmulb", two(0xF000, 0x5863), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsmuld", two(0xF000, 0x0063), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, -{"fsmuld", two(0xF000, 0x5463), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, -{"fsmuld", two(0xF000, 0x5463), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, -{"fsmull", two(0xF000, 0x4063), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, -{"fsmull", two(0xF000, 0x4063), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsmulp", two(0xF000, 0x4C63), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, -{"fsmuls", two(0xF000, 0x4463), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, -{"fsmuls", two(0xF000, 0x4463), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsmulw", two(0xF000, 0x5063), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, -{"fsmulw", two(0xF000, 0x5063), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsmulx", two(0xF000, 0x0063), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, -{"fsmulx", two(0xF000, 0x4863), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, - -{"fdmulb", two(0xF000, 0x5867), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, -{"fdmulb", two(0xF000, 0x5867), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdmuld", two(0xF000, 0x0067), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, -{"fdmuld", two(0xF000, 0x5467), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, -{"fdmuld", two(0xF000, 0x5467), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, -{"fdmull", two(0xF000, 0x4067), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, -{"fdmull", two(0xF000, 0x4067), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdmulp", two(0xF000, 0x4C67), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, -{"fdmuls", two(0xF000, 0x4467), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, -{"fdmuls", two(0xF000, 0x4467), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdmulw", two(0xF000, 0x5067), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, -{"fdmulw", two(0xF000, 0x5067), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdmulx", two(0xF000, 0x0067), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, -{"fdmulx", two(0xF000, 0x4867), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, - -{"fnegb", two(0xF000, 0x581A), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"fnegb", two(0xF000, 0x581A), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fnegd", two(0xF000, 0x001A), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, -{"fnegd", two(0xF000, 0x001A), two(0xF1C0, 0xE07F), "IiFt", cfloat }, -{"fnegd", two(0xF000, 0x541A), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"fnegd", two(0xF000, 0x541A), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, -{"fnegl", two(0xF000, 0x401A), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"fnegl", two(0xF000, 0x401A), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fnegp", two(0xF000, 0x4C1A), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"fnegs", two(0xF000, 0x441A), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"fnegs", two(0xF000, 0x441A), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fnegw", two(0xF000, 0x501A), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"fnegw", two(0xF000, 0x501A), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fnegx", two(0xF000, 0x001A), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"fnegx", two(0xF000, 0x481A), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, -{"fnegx", two(0xF000, 0x001A), two(0xF1C0, 0xE07F), "IiFt", mfloat }, - -{"fsnegb", two(0xF000, 0x585A), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, -{"fsnegb", two(0xF000, 0x585A), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsnegd", two(0xF000, 0x005A), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, -{"fsnegd", two(0xF000, 0x005A), two(0xF1C0, 0xE07F), "IiFt", cfloat }, -{"fsnegd", two(0xF000, 0x545A), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, -{"fsnegd", two(0xF000, 0x545A), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, -{"fsnegl", two(0xF000, 0x405A), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, -{"fsnegl", two(0xF000, 0x405A), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsnegp", two(0xF000, 0x4C5A), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, -{"fsnegs", two(0xF000, 0x445A), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, -{"fsnegs", two(0xF000, 0x445A), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsnegw", two(0xF000, 0x505A), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, -{"fsnegw", two(0xF000, 0x505A), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsnegx", two(0xF000, 0x005A), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, -{"fsnegx", two(0xF000, 0x485A), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, -{"fsnegx", two(0xF000, 0x005A), two(0xF1C0, 0xE07F), "IiFt", m68040up }, - -{"fdnegb", two(0xF000, 0x585E), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, -{"fdnegb", two(0xF000, 0x585E), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdnegd", two(0xF000, 0x005E), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, -{"fdnegd", two(0xF000, 0x005E), two(0xF1C0, 0xE07F), "IiFt", cfloat }, -{"fdnegd", two(0xF000, 0x545E), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, -{"fdnegd", two(0xF000, 0x545E), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, -{"fdnegl", two(0xF000, 0x405E), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, -{"fdnegl", two(0xF000, 0x405E), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdnegp", two(0xF000, 0x4C5E), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, -{"fdnegs", two(0xF000, 0x445E), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, -{"fdnegs", two(0xF000, 0x445E), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdnegw", two(0xF000, 0x505E), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, -{"fdnegw", two(0xF000, 0x505E), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdnegx", two(0xF000, 0x005E), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, -{"fdnegx", two(0xF000, 0x485E), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, -{"fdnegx", two(0xF000, 0x005E), two(0xF1C0, 0xE07F), "IiFt", m68040up }, - -{"fnop", two(0xF280, 0x0000), two(0xFFFF, 0xFFFF), "Ii", mfloat | cfloat }, - -{"fremb", two(0xF000, 0x5825), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"fremd", two(0xF000, 0x5425), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"freml", two(0xF000, 0x4025), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"fremp", two(0xF000, 0x4C25), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"frems", two(0xF000, 0x4425), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"fremw", two(0xF000, 0x5025), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"fremx", two(0xF000, 0x0025), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"fremx", two(0xF000, 0x4825), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, - -{"frestore", one(0xF140), one(0xF1C0), "Ids", mfloat }, -{"fsave", one(0xF100), one(0xF1C0), "Idzs", cfloat }, - -{"fscaleb", two(0xF000, 0x5826), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"fscaled", two(0xF000, 0x5426), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"fscalel", two(0xF000, 0x4026), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"fscalep", two(0xF000, 0x4C26), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"fscales", two(0xF000, 0x4426), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"fscalew", two(0xF000, 0x5026), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"fscalex", two(0xF000, 0x0026), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"fscalex", two(0xF000, 0x4826), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"fmovem", 4, two(0xF000, 0xD000), two(0xFFC0, 0xFF00), "IizsL3", cfloat }, +{"fmovem", 4, two(0xF000, 0xD000), two(0xFFC0, 0xFF00), "Iizs#3", cfloat }, +{"fmovem", 4, two(0xF000, 0xF000), two(0xFFC0, 0xFF00), "Ii#3ys", cfloat }, +{"fmovem", 4, two(0xF000, 0xF000), two(0xFFC0, 0xFF00), "IiL3ys", cfloat }, + +{"fmovem", 4, two(0xF020, 0xE000), two(0xF1F8, 0xFF00), "IdL3-s", mfloat }, +{"fmovem", 4, two(0xF000, 0xF000), two(0xF1C0, 0xFF00), "Idl3&s", mfloat }, +{"fmovem", 4, two(0xF018, 0xD000), two(0xF1F8, 0xFF00), "Id+sl3", mfloat }, +{"fmovem", 4, two(0xF000, 0xD000), two(0xF1C0, 0xFF00), "Id&sl3", mfloat }, +{"fmovem", 4, two(0xF020, 0xE000), two(0xF1F8, 0xFF00), "Id#3-s", mfloat }, +{"fmovem", 4, two(0xF020, 0xE800), two(0xF1F8, 0xFF8F), "IiDk-s", mfloat }, +{"fmovem", 4, two(0xF000, 0xF000), two(0xF1C0, 0xFF00), "Id#3&s", mfloat }, +{"fmovem", 4, two(0xF000, 0xF800), two(0xF1C0, 0xFF8F), "IiDk&s", mfloat }, +{"fmovem", 4, two(0xF018, 0xD000), two(0xF1F8, 0xFF00), "Id+s#3", mfloat }, +{"fmovem", 4, two(0xF018, 0xD800), two(0xF1F8, 0xFF8F), "Ii+sDk", mfloat }, +{"fmovem", 4, two(0xF000, 0xD000), two(0xF1C0, 0xFF00), "Id&s#3", mfloat }, +{"fmovem", 4, two(0xF000, 0xD800), two(0xF1C0, 0xFF8F), "Ii&sDk", mfloat }, +{"fmovem", 4, two(0xF000, 0xA000), two(0xF1C0, 0xE3FF), "Iis8%s", mfloat }, +{"fmovem", 4, two(0xF000, 0x8000), two(0xF1C0, 0xE3FF), "Ii*ss8", mfloat }, +{"fmovem", 4, two(0xF000, 0xA000), two(0xF1C0, 0xE3FF), "IiL8~s", mfloat }, +{"fmovem", 4, two(0xF000, 0x8000), two(0xF2C0, 0xE3FF), "Ii*sL8", mfloat }, + +{"fmulb", 4, two(0xF000, 0x5823), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"fmulb", 4, two(0xF000, 0x5823), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fmuld", 4, two(0xF000, 0x0023), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, +{"fmuld", 4, two(0xF000, 0x5423), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"fmuld", 4, two(0xF000, 0x5423), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, +{"fmull", 4, two(0xF000, 0x4023), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"fmull", 4, two(0xF000, 0x4023), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fmulp", 4, two(0xF000, 0x4C23), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"fmuls", 4, two(0xF000, 0x4423), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"fmuls", 4, two(0xF000, 0x4423), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fmulw", 4, two(0xF000, 0x5023), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"fmulw", 4, two(0xF000, 0x5023), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fmulx", 4, two(0xF000, 0x0023), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"fmulx", 4, two(0xF000, 0x4823), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, + +{"fsmulb", 4, two(0xF000, 0x5863), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, +{"fsmulb", 4, two(0xF000, 0x5863), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsmuld", 4, two(0xF000, 0x0063), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, +{"fsmuld", 4, two(0xF000, 0x5463), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, +{"fsmuld", 4, two(0xF000, 0x5463), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, +{"fsmull", 4, two(0xF000, 0x4063), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, +{"fsmull", 4, two(0xF000, 0x4063), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsmulp", 4, two(0xF000, 0x4C63), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, +{"fsmuls", 4, two(0xF000, 0x4463), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, +{"fsmuls", 4, two(0xF000, 0x4463), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsmulw", 4, two(0xF000, 0x5063), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, +{"fsmulw", 4, two(0xF000, 0x5063), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsmulx", 4, two(0xF000, 0x0063), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, +{"fsmulx", 4, two(0xF000, 0x4863), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, + +{"fdmulb", 4, two(0xF000, 0x5867), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, +{"fdmulb", 4, two(0xF000, 0x5867), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdmuld", 4, two(0xF000, 0x0067), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, +{"fdmuld", 4, two(0xF000, 0x5467), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, +{"fdmuld", 4, two(0xF000, 0x5467), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, +{"fdmull", 4, two(0xF000, 0x4067), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, +{"fdmull", 4, two(0xF000, 0x4067), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdmulp", 4, two(0xF000, 0x4C67), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, +{"fdmuls", 4, two(0xF000, 0x4467), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, +{"fdmuls", 4, two(0xF000, 0x4467), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdmulw", 4, two(0xF000, 0x5067), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, +{"fdmulw", 4, two(0xF000, 0x5067), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdmulx", 4, two(0xF000, 0x0067), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, +{"fdmulx", 4, two(0xF000, 0x4867), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, + +{"fnegb", 4, two(0xF000, 0x581A), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"fnegb", 4, two(0xF000, 0x581A), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fnegd", 4, two(0xF000, 0x001A), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, +{"fnegd", 4, two(0xF000, 0x001A), two(0xF1C0, 0xE07F), "IiFt", cfloat }, +{"fnegd", 4, two(0xF000, 0x541A), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"fnegd", 4, two(0xF000, 0x541A), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, +{"fnegl", 4, two(0xF000, 0x401A), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"fnegl", 4, two(0xF000, 0x401A), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fnegp", 4, two(0xF000, 0x4C1A), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"fnegs", 4, two(0xF000, 0x441A), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"fnegs", 4, two(0xF000, 0x441A), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fnegw", 4, two(0xF000, 0x501A), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"fnegw", 4, two(0xF000, 0x501A), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fnegx", 4, two(0xF000, 0x001A), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"fnegx", 4, two(0xF000, 0x481A), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"fnegx", 4, two(0xF000, 0x001A), two(0xF1C0, 0xE07F), "IiFt", mfloat }, + +{"fsnegb", 4, two(0xF000, 0x585A), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, +{"fsnegb", 4, two(0xF000, 0x585A), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsnegd", 4, two(0xF000, 0x005A), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, +{"fsnegd", 4, two(0xF000, 0x005A), two(0xF1C0, 0xE07F), "IiFt", cfloat }, +{"fsnegd", 4, two(0xF000, 0x545A), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, +{"fsnegd", 4, two(0xF000, 0x545A), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, +{"fsnegl", 4, two(0xF000, 0x405A), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, +{"fsnegl", 4, two(0xF000, 0x405A), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsnegp", 4, two(0xF000, 0x4C5A), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, +{"fsnegs", 4, two(0xF000, 0x445A), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, +{"fsnegs", 4, two(0xF000, 0x445A), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsnegw", 4, two(0xF000, 0x505A), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, +{"fsnegw", 4, two(0xF000, 0x505A), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsnegx", 4, two(0xF000, 0x005A), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, +{"fsnegx", 4, two(0xF000, 0x485A), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, +{"fsnegx", 4, two(0xF000, 0x005A), two(0xF1C0, 0xE07F), "IiFt", m68040up }, + +{"fdnegb", 4, two(0xF000, 0x585E), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, +{"fdnegb", 4, two(0xF000, 0x585E), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdnegd", 4, two(0xF000, 0x005E), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, +{"fdnegd", 4, two(0xF000, 0x005E), two(0xF1C0, 0xE07F), "IiFt", cfloat }, +{"fdnegd", 4, two(0xF000, 0x545E), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, +{"fdnegd", 4, two(0xF000, 0x545E), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, +{"fdnegl", 4, two(0xF000, 0x405E), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, +{"fdnegl", 4, two(0xF000, 0x405E), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdnegp", 4, two(0xF000, 0x4C5E), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, +{"fdnegs", 4, two(0xF000, 0x445E), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, +{"fdnegs", 4, two(0xF000, 0x445E), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdnegw", 4, two(0xF000, 0x505E), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, +{"fdnegw", 4, two(0xF000, 0x505E), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdnegx", 4, two(0xF000, 0x005E), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, +{"fdnegx", 4, two(0xF000, 0x485E), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, +{"fdnegx", 4, two(0xF000, 0x005E), two(0xF1C0, 0xE07F), "IiFt", m68040up }, + +{"fnop", 4, two(0xF280, 0x0000), two(0xFFFF, 0xFFFF), "Ii", mfloat | cfloat }, + +{"fremb", 4, two(0xF000, 0x5825), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"fremd", 4, two(0xF000, 0x5425), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"freml", 4, two(0xF000, 0x4025), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"fremp", 4, two(0xF000, 0x4C25), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"frems", 4, two(0xF000, 0x4425), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"fremw", 4, two(0xF000, 0x5025), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"fremx", 4, two(0xF000, 0x0025), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"fremx", 4, two(0xF000, 0x4825), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, + +{"frestore", 2, one(0xF140), one(0xF1C0), "Ids", mfloat }, +{"fsave", 2, one(0xF100), one(0xF1C0), "Idzs", cfloat }, + +{"fscaleb", 4, two(0xF000, 0x5826), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"fscaled", 4, two(0xF000, 0x5426), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"fscalel", 4, two(0xF000, 0x4026), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"fscalep", 4, two(0xF000, 0x4C26), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"fscales", 4, two(0xF000, 0x4426), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"fscalew", 4, two(0xF000, 0x5026), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"fscalex", 4, two(0xF000, 0x0026), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"fscalex", 4, two(0xF000, 0x4826), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, /* $ is necessary to prevent the assembler from using PC-relative. - If @ were used, "label: fseq label" could produce "ftrapeq", + If @ were used, "label: fseq label" could produce "ftrapeq", 2, because "label" became "pc@label". */ -{"fseq", two(0xF040, 0x0001), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fsf", two(0xF040, 0x0000), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fsge", two(0xF040, 0x0013), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fsgl", two(0xF040, 0x0016), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fsgle", two(0xF040, 0x0017), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fsgt", two(0xF040, 0x0012), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fsle", two(0xF040, 0x0015), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fslt", two(0xF040, 0x0014), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fsne", two(0xF040, 0x000E), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fsnge", two(0xF040, 0x001C), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fsngl", two(0xF040, 0x0019), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fsngle", two(0xF040, 0x0018), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fsngt", two(0xF040, 0x001D), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fsnle", two(0xF040, 0x001A), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fsnlt", two(0xF040, 0x001B), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fsoge", two(0xF040, 0x0003), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fsogl", two(0xF040, 0x0006), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fsogt", two(0xF040, 0x0002), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fsole", two(0xF040, 0x0005), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fsolt", two(0xF040, 0x0004), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fsor", two(0xF040, 0x0007), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fsseq", two(0xF040, 0x0011), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fssf", two(0xF040, 0x0010), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fssne", two(0xF040, 0x001E), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fsst", two(0xF040, 0x001F), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fst", two(0xF040, 0x000F), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fsueq", two(0xF040, 0x0009), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fsuge", two(0xF040, 0x000B), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fsugt", two(0xF040, 0x000A), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fsule", two(0xF040, 0x000D), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fsult", two(0xF040, 0x000C), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, -{"fsun", two(0xF040, 0x0008), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, - -{"fsgldivb", two(0xF000, 0x5824), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"fsgldivd", two(0xF000, 0x5424), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"fsgldivl", two(0xF000, 0x4024), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"fsgldivp", two(0xF000, 0x4C24), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"fsgldivs", two(0xF000, 0x4424), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"fsgldivw", two(0xF000, 0x5024), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"fsgldivx", two(0xF000, 0x0024), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"fsgldivx", two(0xF000, 0x4824), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, -{"fsgldivx", two(0xF000, 0x0024), two(0xF1C0, 0xE07F), "IiFt", mfloat }, - -{"fsglmulb", two(0xF000, 0x5827), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"fsglmuld", two(0xF000, 0x5427), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"fsglmull", two(0xF000, 0x4027), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"fsglmulp", two(0xF000, 0x4C27), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"fsglmuls", two(0xF000, 0x4427), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"fsglmulw", two(0xF000, 0x5027), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"fsglmulx", two(0xF000, 0x0027), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"fsglmulx", two(0xF000, 0x4827), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, -{"fsglmulx", two(0xF000, 0x0027), two(0xF1C0, 0xE07F), "IiFt", mfloat }, - -{"fsinb", two(0xF000, 0x580E), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"fsind", two(0xF000, 0x540E), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"fsinl", two(0xF000, 0x400E), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"fsinp", two(0xF000, 0x4C0E), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"fsins", two(0xF000, 0x440E), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"fsinw", two(0xF000, 0x500E), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"fsinx", two(0xF000, 0x000E), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"fsinx", two(0xF000, 0x480E), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, -{"fsinx", two(0xF000, 0x000E), two(0xF1C0, 0xE07F), "IiFt", mfloat }, - -{"fsincosb", two(0xF000, 0x5830), two(0xF1C0, 0xFC78), "Ii;bF3F7", mfloat }, -{"fsincosd", two(0xF000, 0x5430), two(0xF1C0, 0xFC78), "Ii;FF3F7", mfloat }, -{"fsincosl", two(0xF000, 0x4030), two(0xF1C0, 0xFC78), "Ii;lF3F7", mfloat }, -{"fsincosp", two(0xF000, 0x4C30), two(0xF1C0, 0xFC78), "Ii;pF3F7", mfloat }, -{"fsincoss", two(0xF000, 0x4430), two(0xF1C0, 0xFC78), "Ii;fF3F7", mfloat }, -{"fsincosw", two(0xF000, 0x5030), two(0xF1C0, 0xFC78), "Ii;wF3F7", mfloat }, -{"fsincosx", two(0xF000, 0x0030), two(0xF1C0, 0xE078), "IiF8F3F7", mfloat }, -{"fsincosx", two(0xF000, 0x4830), two(0xF1C0, 0xFC78), "Ii;xF3F7", mfloat }, - -{"fsinhb", two(0xF000, 0x5802), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"fsinhd", two(0xF000, 0x5402), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"fsinhl", two(0xF000, 0x4002), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"fsinhp", two(0xF000, 0x4C02), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"fsinhs", two(0xF000, 0x4402), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"fsinhw", two(0xF000, 0x5002), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"fsinhx", two(0xF000, 0x0002), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"fsinhx", two(0xF000, 0x4802), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, -{"fsinhx", two(0xF000, 0x0002), two(0xF1C0, 0xE07F), "IiFt", mfloat }, - -{"fsqrtb", two(0xF000, 0x5804), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"fsqrtb", two(0xF000, 0x5804), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsqrtd", two(0xF000, 0x0004), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, -{"fsqrtd", two(0xF000, 0x0004), two(0xF1C0, 0xE07F), "IiFt", cfloat }, -{"fsqrtd", two(0xF000, 0x5404), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"fsqrtd", two(0xF000, 0x5404), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, -{"fsqrtl", two(0xF000, 0x4004), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"fsqrtl", two(0xF000, 0x4004), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsqrtp", two(0xF000, 0x4C04), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"fsqrts", two(0xF000, 0x4404), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"fsqrts", two(0xF000, 0x4404), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsqrtw", two(0xF000, 0x5004), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"fsqrtw", two(0xF000, 0x5004), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsqrtx", two(0xF000, 0x0004), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"fsqrtx", two(0xF000, 0x4804), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, -{"fsqrtx", two(0xF000, 0x0004), two(0xF1C0, 0xE07F), "IiFt", mfloat }, - -{"fssqrtb", two(0xF000, 0x5841), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, -{"fssqrtb", two(0xF000, 0x5841), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fssqrtd", two(0xF000, 0x0041), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, -{"fssqrtd", two(0xF000, 0x0041), two(0xF1C0, 0xE07F), "IiFt", cfloat }, -{"fssqrtd", two(0xF000, 0x5441), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, -{"fssqrtd", two(0xF000, 0x5441), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, -{"fssqrtl", two(0xF000, 0x4041), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, -{"fssqrtl", two(0xF000, 0x4041), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fssqrtp", two(0xF000, 0x4C41), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, -{"fssqrts", two(0xF000, 0x4441), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, -{"fssqrts", two(0xF000, 0x4441), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fssqrtw", two(0xF000, 0x5041), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, -{"fssqrtw", two(0xF000, 0x5041), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fssqrtx", two(0xF000, 0x0041), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, -{"fssqrtx", two(0xF000, 0x4841), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, -{"fssqrtx", two(0xF000, 0x0041), two(0xF1C0, 0xE07F), "IiFt", m68040up }, - -{"fdsqrtb", two(0xF000, 0x5845), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, -{"fdsqrtb", two(0xF000, 0x5845), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdsqrtd", two(0xF000, 0x0045), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, -{"fdsqrtd", two(0xF000, 0x0045), two(0xF1C0, 0xE07F), "IiFt", cfloat }, -{"fdsqrtd", two(0xF000, 0x5445), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, -{"fdsqrtl", two(0xF000, 0x4045), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, -{"fdsqrtl", two(0xF000, 0x4045), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdsqrtp", two(0xF000, 0x4C45), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, -{"fdsqrts", two(0xF000, 0x4445), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, -{"fdsqrts", two(0xF000, 0x4445), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdsqrtw", two(0xF000, 0x5045), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, -{"fdsqrtw", two(0xF000, 0x5045), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdsqrtx", two(0xF000, 0x0045), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, -{"fdsqrtx", two(0xF000, 0x4845), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, -{"fdsqrtx", two(0xF000, 0x0045), two(0xF1C0, 0xE07F), "IiFt", m68040up }, - -{"fsubb", two(0xF000, 0x5828), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"fsubb", two(0xF000, 0x5828), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsubd", two(0xF000, 0x0028), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, -{"fsubd", two(0xF000, 0x5428), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"fsubd", two(0xF000, 0x5428), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, -{"fsubl", two(0xF000, 0x4028), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"fsubl", two(0xF000, 0x4028), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsubp", two(0xF000, 0x4C28), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"fsubs", two(0xF000, 0x4428), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"fsubs", two(0xF000, 0x4428), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsubw", two(0xF000, 0x5028), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"fsubw", two(0xF000, 0x5028), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fsubx", two(0xF000, 0x0028), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"fsubx", two(0xF000, 0x4828), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, -{"fsubx", two(0xF000, 0x0028), two(0xF1C0, 0xE07F), "IiFt", mfloat }, - -{"fssubb", two(0xF000, 0x5828), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fssubb", two(0xF000, 0x5868), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, -{"fssubd", two(0xF000, 0x0068), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, -{"fssubd", two(0xF000, 0x5468), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, -{"fssubd", two(0xF000, 0x5468), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, -{"fssubl", two(0xF000, 0x4068), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, -{"fssubl", two(0xF000, 0x4068), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fssubp", two(0xF000, 0x4C68), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, -{"fssubs", two(0xF000, 0x4468), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, -{"fssubs", two(0xF000, 0x4468), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fssubw", two(0xF000, 0x5068), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, -{"fssubw", two(0xF000, 0x5068), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fssubx", two(0xF000, 0x0068), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, -{"fssubx", two(0xF000, 0x4868), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, -{"fssubx", two(0xF000, 0x0068), two(0xF1C0, 0xE07F), "IiFt", m68040up }, - -{"fdsubb", two(0xF000, 0x586A), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdsubb", two(0xF000, 0x586c), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, -{"fdsubd", two(0xF000, 0x006A), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, -{"fdsubd", two(0xF000, 0x546A), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, -{"fdsubd", two(0xF000, 0x546c), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, -{"fdsubl", two(0xF000, 0x406A), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdsubl", two(0xF000, 0x406c), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, -{"fdsubp", two(0xF000, 0x4C6c), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, -{"fdsubs", two(0xF000, 0x446A), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdsubs", two(0xF000, 0x446c), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, -{"fdsubw", two(0xF000, 0x506A), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, -{"fdsubw", two(0xF000, 0x506c), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, -{"fdsubx", two(0xF000, 0x006c), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, -{"fdsubx", two(0xF000, 0x486c), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, -{"fdsubx", two(0xF000, 0x006c), two(0xF1C0, 0xE07F), "IiFt", m68040up }, - -{"ftanb", two(0xF000, 0x580F), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"ftand", two(0xF000, 0x540F), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"ftanl", two(0xF000, 0x400F), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"ftanp", two(0xF000, 0x4C0F), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"ftans", two(0xF000, 0x440F), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"ftanw", two(0xF000, 0x500F), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"ftanx", two(0xF000, 0x000F), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"ftanx", two(0xF000, 0x480F), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, -{"ftanx", two(0xF000, 0x000F), two(0xF1C0, 0xE07F), "IiFt", mfloat }, - -{"ftanhb", two(0xF000, 0x5809), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"ftanhd", two(0xF000, 0x5409), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"ftanhl", two(0xF000, 0x4009), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"ftanhp", two(0xF000, 0x4C09), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"ftanhs", two(0xF000, 0x4409), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"ftanhw", two(0xF000, 0x5009), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"ftanhx", two(0xF000, 0x0009), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"ftanhx", two(0xF000, 0x4809), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, -{"ftanhx", two(0xF000, 0x0009), two(0xF1C0, 0xE07F), "IiFt", mfloat }, - -{"ftentoxb", two(0xF000, 0x5812), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"ftentoxd", two(0xF000, 0x5412), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"ftentoxl", two(0xF000, 0x4012), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"ftentoxp", two(0xF000, 0x4C12), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"ftentoxs", two(0xF000, 0x4412), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"ftentoxw", two(0xF000, 0x5012), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"ftentoxx", two(0xF000, 0x0012), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"ftentoxx", two(0xF000, 0x4812), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, -{"ftentoxx", two(0xF000, 0x0012), two(0xF1C0, 0xE07F), "IiFt", mfloat }, - -{"ftrapeq", two(0xF07C, 0x0001), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftrapf", two(0xF07C, 0x0000), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftrapge", two(0xF07C, 0x0013), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftrapgl", two(0xF07C, 0x0016), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftrapgle", two(0xF07C, 0x0017), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftrapgt", two(0xF07C, 0x0012), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftraple", two(0xF07C, 0x0015), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftraplt", two(0xF07C, 0x0014), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftrapne", two(0xF07C, 0x000E), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftrapnge", two(0xF07C, 0x001C), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftrapngl", two(0xF07C, 0x0019), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftrapngle", two(0xF07C, 0x0018), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftrapngt", two(0xF07C, 0x001D), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftrapnle", two(0xF07C, 0x001A), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftrapnlt", two(0xF07C, 0x001B), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftrapoge", two(0xF07C, 0x0003), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftrapogl", two(0xF07C, 0x0006), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftrapogt", two(0xF07C, 0x0002), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftrapole", two(0xF07C, 0x0005), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftrapolt", two(0xF07C, 0x0004), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftrapor", two(0xF07C, 0x0007), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftrapseq", two(0xF07C, 0x0011), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftrapsf", two(0xF07C, 0x0010), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftrapsne", two(0xF07C, 0x001E), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftrapst", two(0xF07C, 0x001F), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftrapt", two(0xF07C, 0x000F), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftrapueq", two(0xF07C, 0x0009), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftrapuge", two(0xF07C, 0x000B), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftrapugt", two(0xF07C, 0x000A), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftrapule", two(0xF07C, 0x000D), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftrapult", two(0xF07C, 0x000C), two(0xF1FF, 0xFFFF), "Ii", mfloat }, -{"ftrapun", two(0xF07C, 0x0008), two(0xF1FF, 0xFFFF), "Ii", mfloat }, - -{"ftrapeqw", two(0xF07A, 0x0001), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftrapfw", two(0xF07A, 0x0000), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftrapgew", two(0xF07A, 0x0013), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftrapglw", two(0xF07A, 0x0016), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftrapglew", two(0xF07A, 0x0017), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftrapgtw", two(0xF07A, 0x0012), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftraplew", two(0xF07A, 0x0015), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftrapltw", two(0xF07A, 0x0014), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftrapnew", two(0xF07A, 0x000E), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftrapngew", two(0xF07A, 0x001C), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftrapnglw", two(0xF07A, 0x0019), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftrapnglew", two(0xF07A, 0x0018), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftrapngtw", two(0xF07A, 0x001D), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftrapnlew", two(0xF07A, 0x001A), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftrapnltw", two(0xF07A, 0x001B), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftrapogew", two(0xF07A, 0x0003), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftrapoglw", two(0xF07A, 0x0006), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftrapogtw", two(0xF07A, 0x0002), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftrapolew", two(0xF07A, 0x0005), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftrapoltw", two(0xF07A, 0x0004), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftraporw", two(0xF07A, 0x0007), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftrapseqw", two(0xF07A, 0x0011), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftrapsfw", two(0xF07A, 0x0010), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftrapsnew", two(0xF07A, 0x001E), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftrapstw", two(0xF07A, 0x001F), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftraptw", two(0xF07A, 0x000F), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftrapueqw", two(0xF07A, 0x0009), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftrapugew", two(0xF07A, 0x000B), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftrapugtw", two(0xF07A, 0x000A), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftrapulew", two(0xF07A, 0x000D), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftrapultw", two(0xF07A, 0x000C), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, -{"ftrapunw", two(0xF07A, 0x0008), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, - -{"ftrapeql", two(0xF07B, 0x0001), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftrapfl", two(0xF07B, 0x0000), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftrapgel", two(0xF07B, 0x0013), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftrapgll", two(0xF07B, 0x0016), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftrapglel", two(0xF07B, 0x0017), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftrapgtl", two(0xF07B, 0x0012), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftraplel", two(0xF07B, 0x0015), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftrapltl", two(0xF07B, 0x0014), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftrapnel", two(0xF07B, 0x000E), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftrapngel", two(0xF07B, 0x001C), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftrapngll", two(0xF07B, 0x0019), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftrapnglel", two(0xF07B, 0x0018), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftrapngtl", two(0xF07B, 0x001D), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftrapnlel", two(0xF07B, 0x001A), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftrapnltl", two(0xF07B, 0x001B), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftrapogel", two(0xF07B, 0x0003), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftrapogll", two(0xF07B, 0x0006), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftrapogtl", two(0xF07B, 0x0002), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftrapolel", two(0xF07B, 0x0005), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftrapoltl", two(0xF07B, 0x0004), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftraporl", two(0xF07B, 0x0007), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftrapseql", two(0xF07B, 0x0011), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftrapsfl", two(0xF07B, 0x0010), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftrapsnel", two(0xF07B, 0x001E), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftrapstl", two(0xF07B, 0x001F), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftraptl", two(0xF07B, 0x000F), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftrapueql", two(0xF07B, 0x0009), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftrapugel", two(0xF07B, 0x000B), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftrapugtl", two(0xF07B, 0x000A), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftrapulel", two(0xF07B, 0x000D), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftrapultl", two(0xF07B, 0x000C), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, -{"ftrapunl", two(0xF07B, 0x0008), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, - -{"ftstb", two(0xF000, 0x583A), two(0xF1C0, 0xFC7F), "Ii;b", mfloat }, -{"ftstb", two(0xF000, 0x583A), two(0xF1C0, 0xFC7F), "Iibs", cfloat }, -{"ftstd", two(0xF000, 0x003A), two(0xF1C0, 0xE07F), "IiF8", cfloat }, -{"ftstd", two(0xF000, 0x543A), two(0xF1C0, 0xFC7F), "Ii;F", mfloat }, -{"ftstd", two(0xF000, 0x543A), two(0xF1C0, 0xFC7F), "Iibs", cfloat }, -{"ftstl", two(0xF000, 0x403A), two(0xF1C0, 0xFC7F), "Ii;l", mfloat }, -{"ftstl", two(0xF000, 0x403A), two(0xF1C0, 0xFC7F), "Iibs", cfloat }, -{"ftstp", two(0xF000, 0x4C3A), two(0xF1C0, 0xFC7F), "Ii;p", mfloat }, -{"ftsts", two(0xF000, 0x443A), two(0xF1C0, 0xFC7F), "Ii;f", mfloat }, -{"ftsts", two(0xF000, 0x443A), two(0xF1C0, 0xFC7F), "Iibs", cfloat }, -{"ftstw", two(0xF000, 0x503A), two(0xF1C0, 0xFC7F), "Ii;w", mfloat }, -{"ftstw", two(0xF000, 0x503A), two(0xF1C0, 0xFC7F), "Iibs", cfloat }, -{"ftstx", two(0xF000, 0x003A), two(0xF1C0, 0xE07F), "IiF8", mfloat }, -{"ftstx", two(0xF000, 0x483A), two(0xF1C0, 0xFC7F), "Ii;x", mfloat }, - -{"ftwotoxb", two(0xF000, 0x5811), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, -{"ftwotoxd", two(0xF000, 0x5411), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, -{"ftwotoxl", two(0xF000, 0x4011), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, -{"ftwotoxp", two(0xF000, 0x4C11), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, -{"ftwotoxs", two(0xF000, 0x4411), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, -{"ftwotoxw", two(0xF000, 0x5011), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, -{"ftwotoxx", two(0xF000, 0x0011), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, -{"ftwotoxx", two(0xF000, 0x4811), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, -{"ftwotoxx", two(0xF000, 0x0011), two(0xF1C0, 0xE07F), "IiFt", mfloat }, - -{"halt", one(0045310), one(0177777), "", m68060 | mcf }, - -{"illegal", one(0045374), one(0177777), "", m68000up | mcf }, -{"intouch", one(0xf428), one(0xfff8), "As", mcfv4eup }, - -{"jmp", one(0047300), one(0177700), "!s", m68000up | mcf }, - -{"jra", one(0060000), one(0177400), "Bg", m68000up | mcf }, -{"jra", one(0047300), one(0177700), "!s", m68000up | mcf }, - -{"jsr", one(0047200), one(0177700), "!s", m68000up | mcf }, - -{"jbsr", one(0060400), one(0177400), "Bg", m68000up | mcf }, -{"jbsr", one(0047200), one(0177700), "!s", m68000up | mcf }, - -{"lea", one(0040700), one(0170700), "!sAd", m68000up | mcf }, - -{"lpstop", two(0174000,0000700),two(0177777,0177777),"#w", cpu32|m68060 }, - -{"linkw", one(0047120), one(0177770), "As#w", m68000up | mcf }, -{"linkl", one(0044010), one(0177770), "As#l", m68020up | cpu32 }, -{"link", one(0047120), one(0177770), "As#W", m68000up | mcf }, -{"link", one(0044010), one(0177770), "As#l", m68020up | cpu32 }, - -{"lslb", one(0160410), one(0170770), "QdDs", m68000up }, -{"lslb", one(0160450), one(0170770), "DdDs", m68000up }, -{"lslw", one(0160510), one(0170770), "QdDs", m68000up }, -{"lslw", one(0160550), one(0170770), "DdDs", m68000up }, -{"lslw", one(0161700), one(0177700), "~s", m68000up }, -{"lsll", one(0160610), one(0170770), "QdDs", m68000up | mcf }, -{"lsll", one(0160650), one(0170770), "DdDs", m68000up | mcf }, - -{"lsrb", one(0160010), one(0170770), "QdDs", m68000up }, -{"lsrb", one(0160050), one(0170770), "DdDs", m68000up }, -{"lsrw", one(0160110), one(0170770), "QdDs", m68000up }, -{"lsrw", one(0160150), one(0170770), "DdDs", m68000up }, -{"lsrw", one(0161300), one(0177700), "~s", m68000up }, -{"lsrl", one(0160210), one(0170770), "QdDs", m68000up | mcf }, -{"lsrl", one(0160250), one(0170770), "DdDs", m68000up | mcf }, - - /* FIXME: add MAM mode (`&' after operand) / remove MACM */ -{"macw", two(0120000, 0000000), two(0170660, 0005400), "uMum", mcf5206eup }, -{"macw", two(0120000, 0001000), two(0170660, 0005400), "uMumMh",mcf5206eup }, -{"macw", two(0120220, 0000000), two(0170670, 0005460), "uNuoasRn", mcf5206eup }, -{"macw", two(0120230, 0000000), two(0170670, 0005460), "uNuo+sRn", mcf5206eup }, -{"macw", two(0120240, 0000000), two(0170670, 0005460), "uNuo-sRn", mcf5206eup }, -{"macw", two(0120250, 0000000), two(0170670, 0005460), "uNuodsRn", mcf5206eup }, -{"macw", two(0120220, 0001000), two(0170670, 0005460), "uNuoMhasRn", mcf5206eup }, -{"macw", two(0120230, 0001000), two(0170670, 0005460), "uNuoMh+sRn", mcf5206eup }, -{"macw", two(0120240, 0001000), two(0170670, 0005460), "uNuoMh-sRn", mcf5206eup }, -{"macw", two(0120250, 0001000), two(0170670, 0005460), "uNuoMhdsRn", mcf5206eup }, -{"macmw", two(0120220, 0000040), two(0170670, 0005460), "uNuoasRn", mcf5206eup }, -{"macmw", two(0120230, 0000040), two(0170670, 0005460), "uNuo+sRn", mcf5206eup }, -{"macmw", two(0120240, 0000040), two(0170670, 0005460), "uNuo-sRn", mcf5206eup }, -{"macmw", two(0120250, 0000040), two(0170670, 0005460), "uNuodsRn", mcf5206eup }, -{"macmw", two(0120220, 0001040), two(0170670, 0005460), "uNuoMhasRn", mcf5206eup }, -{"macmw", two(0120230, 0001040), two(0170670, 0005460), "uNuoMh+sRn", mcf5206eup }, -{"macmw", two(0120240, 0001040), two(0170670, 0005460), "uNuoMh-sRn", mcf5206eup }, -{"macmw", two(0120250, 0001040), two(0170670, 0005460), "uNuoMhdsRn", mcf5206eup }, - -{"macl", two(0120000, 0004000), two(0170660, 0005400), "RsRm", mcf5206eup }, -{"macl", two(0120000, 0005000), two(0170660, 0005400), "RsRmMh", mcf5206eup }, -{"macl", two(0120220, 0004000), two(0170670, 0005460), "R3R1asRn", mcf5206eup }, -{"macl", two(0120230, 0004000), two(0170670, 0005460), "R3R1+sRn", mcf5206eup }, -{"macl", two(0120240, 0004000), two(0170670, 0005460), "R3R1-sRn", mcf5206eup }, -{"macl", two(0120250, 0004000), two(0170670, 0005460), "R3R1dsRn", mcf5206eup }, -{"macl", two(0120220, 0005000), two(0170670, 0005460), "R3R1MhasRn", mcf5206eup }, -{"macl", two(0120230, 0005000), two(0170670, 0005460), "R3R1Mh+sRn", mcf5206eup }, -{"macl", two(0120240, 0005000), two(0170670, 0005460), "R3R1Mh-sRn", mcf5206eup }, -{"macl", two(0120250, 0005000), two(0170670, 0005460), "R3R1MhdsRn", mcf5206eup }, -{"macml", two(0120220, 0004040), two(0170670, 0005460), "R3R1asRn", mcf5206eup }, -{"macml", two(0120230, 0004040), two(0170670, 0005460), "R3R1+sRn", mcf5206eup }, -{"macml", two(0120240, 0004040), two(0170670, 0005460), "R3R1-sRn", mcf5206eup }, -{"macml", two(0120250, 0004040), two(0170670, 0005460), "R3R1dsRn", mcf5206eup }, -{"macml", two(0120220, 0005040), two(0170670, 0005460), "R3R1MhasRn", mcf5206eup }, -{"macml", two(0120230, 0005040), two(0170670, 0005460), "R3R1Mh+sRn", mcf5206eup }, -{"macml", two(0120240, 0005040), two(0170670, 0005460), "R3R1Mh-sRn", mcf5206eup }, -{"macml", two(0120250, 0005040), two(0170670, 0005460), "R3R1MhdsRn", mcf5206eup }, +{"fseq", 4, two(0xF040, 0x0001), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fsf", 4, two(0xF040, 0x0000), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fsge", 4, two(0xF040, 0x0013), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fsgl", 4, two(0xF040, 0x0016), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fsgle", 4, two(0xF040, 0x0017), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fsgt", 4, two(0xF040, 0x0012), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fsle", 4, two(0xF040, 0x0015), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fslt", 4, two(0xF040, 0x0014), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fsne", 4, two(0xF040, 0x000E), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fsnge", 4, two(0xF040, 0x001C), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fsngl", 4, two(0xF040, 0x0019), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fsngle", 4, two(0xF040, 0x0018), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fsngt", 4, two(0xF040, 0x001D), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fsnle", 4, two(0xF040, 0x001A), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fsnlt", 4, two(0xF040, 0x001B), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fsoge", 4, two(0xF040, 0x0003), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fsogl", 4, two(0xF040, 0x0006), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fsogt", 4, two(0xF040, 0x0002), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fsole", 4, two(0xF040, 0x0005), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fsolt", 4, two(0xF040, 0x0004), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fsor", 4, two(0xF040, 0x0007), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fsseq", 4, two(0xF040, 0x0011), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fssf", 4, two(0xF040, 0x0010), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fssne", 4, two(0xF040, 0x001E), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fsst", 4, two(0xF040, 0x001F), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fst", 4, two(0xF040, 0x000F), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fsueq", 4, two(0xF040, 0x0009), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fsuge", 4, two(0xF040, 0x000B), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fsugt", 4, two(0xF040, 0x000A), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fsule", 4, two(0xF040, 0x000D), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fsult", 4, two(0xF040, 0x000C), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, +{"fsun", 4, two(0xF040, 0x0008), two(0xF1C0, 0xFFFF), "Ii$s", mfloat }, + +{"fsgldivb", 4, two(0xF000, 0x5824), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"fsgldivd", 4, two(0xF000, 0x5424), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"fsgldivl", 4, two(0xF000, 0x4024), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"fsgldivp", 4, two(0xF000, 0x4C24), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"fsgldivs", 4, two(0xF000, 0x4424), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"fsgldivw", 4, two(0xF000, 0x5024), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"fsgldivx", 4, two(0xF000, 0x0024), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"fsgldivx", 4, two(0xF000, 0x4824), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"fsgldivx", 4, two(0xF000, 0x0024), two(0xF1C0, 0xE07F), "IiFt", mfloat }, + +{"fsglmulb", 4, two(0xF000, 0x5827), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"fsglmuld", 4, two(0xF000, 0x5427), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"fsglmull", 4, two(0xF000, 0x4027), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"fsglmulp", 4, two(0xF000, 0x4C27), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"fsglmuls", 4, two(0xF000, 0x4427), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"fsglmulw", 4, two(0xF000, 0x5027), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"fsglmulx", 4, two(0xF000, 0x0027), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"fsglmulx", 4, two(0xF000, 0x4827), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"fsglmulx", 4, two(0xF000, 0x0027), two(0xF1C0, 0xE07F), "IiFt", mfloat }, + +{"fsinb", 4, two(0xF000, 0x580E), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"fsind", 4, two(0xF000, 0x540E), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"fsinl", 4, two(0xF000, 0x400E), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"fsinp", 4, two(0xF000, 0x4C0E), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"fsins", 4, two(0xF000, 0x440E), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"fsinw", 4, two(0xF000, 0x500E), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"fsinx", 4, two(0xF000, 0x000E), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"fsinx", 4, two(0xF000, 0x480E), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"fsinx", 4, two(0xF000, 0x000E), two(0xF1C0, 0xE07F), "IiFt", mfloat }, + +{"fsincosb", 4, two(0xF000, 0x5830), two(0xF1C0, 0xFC78), "Ii;bF3F7", mfloat }, +{"fsincosd", 4, two(0xF000, 0x5430), two(0xF1C0, 0xFC78), "Ii;FF3F7", mfloat }, +{"fsincosl", 4, two(0xF000, 0x4030), two(0xF1C0, 0xFC78), "Ii;lF3F7", mfloat }, +{"fsincosp", 4, two(0xF000, 0x4C30), two(0xF1C0, 0xFC78), "Ii;pF3F7", mfloat }, +{"fsincoss", 4, two(0xF000, 0x4430), two(0xF1C0, 0xFC78), "Ii;fF3F7", mfloat }, +{"fsincosw", 4, two(0xF000, 0x5030), two(0xF1C0, 0xFC78), "Ii;wF3F7", mfloat }, +{"fsincosx", 4, two(0xF000, 0x0030), two(0xF1C0, 0xE078), "IiF8F3F7", mfloat }, +{"fsincosx", 4, two(0xF000, 0x4830), two(0xF1C0, 0xFC78), "Ii;xF3F7", mfloat }, + +{"fsinhb", 4, two(0xF000, 0x5802), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"fsinhd", 4, two(0xF000, 0x5402), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"fsinhl", 4, two(0xF000, 0x4002), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"fsinhp", 4, two(0xF000, 0x4C02), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"fsinhs", 4, two(0xF000, 0x4402), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"fsinhw", 4, two(0xF000, 0x5002), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"fsinhx", 4, two(0xF000, 0x0002), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"fsinhx", 4, two(0xF000, 0x4802), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"fsinhx", 4, two(0xF000, 0x0002), two(0xF1C0, 0xE07F), "IiFt", mfloat }, + +{"fsqrtb", 4, two(0xF000, 0x5804), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"fsqrtb", 4, two(0xF000, 0x5804), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsqrtd", 4, two(0xF000, 0x0004), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, +{"fsqrtd", 4, two(0xF000, 0x0004), two(0xF1C0, 0xE07F), "IiFt", cfloat }, +{"fsqrtd", 4, two(0xF000, 0x5404), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"fsqrtd", 4, two(0xF000, 0x5404), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, +{"fsqrtl", 4, two(0xF000, 0x4004), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"fsqrtl", 4, two(0xF000, 0x4004), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsqrtp", 4, two(0xF000, 0x4C04), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"fsqrts", 4, two(0xF000, 0x4404), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"fsqrts", 4, two(0xF000, 0x4404), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsqrtw", 4, two(0xF000, 0x5004), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"fsqrtw", 4, two(0xF000, 0x5004), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsqrtx", 4, two(0xF000, 0x0004), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"fsqrtx", 4, two(0xF000, 0x4804), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"fsqrtx", 4, two(0xF000, 0x0004), two(0xF1C0, 0xE07F), "IiFt", mfloat }, + +{"fssqrtb", 4, two(0xF000, 0x5841), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, +{"fssqrtb", 4, two(0xF000, 0x5841), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fssqrtd", 4, two(0xF000, 0x0041), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, +{"fssqrtd", 4, two(0xF000, 0x0041), two(0xF1C0, 0xE07F), "IiFt", cfloat }, +{"fssqrtd", 4, two(0xF000, 0x5441), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, +{"fssqrtd", 4, two(0xF000, 0x5441), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, +{"fssqrtl", 4, two(0xF000, 0x4041), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, +{"fssqrtl", 4, two(0xF000, 0x4041), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fssqrtp", 4, two(0xF000, 0x4C41), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, +{"fssqrts", 4, two(0xF000, 0x4441), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, +{"fssqrts", 4, two(0xF000, 0x4441), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fssqrtw", 4, two(0xF000, 0x5041), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, +{"fssqrtw", 4, two(0xF000, 0x5041), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fssqrtx", 4, two(0xF000, 0x0041), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, +{"fssqrtx", 4, two(0xF000, 0x4841), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, +{"fssqrtx", 4, two(0xF000, 0x0041), two(0xF1C0, 0xE07F), "IiFt", m68040up }, + +{"fdsqrtb", 4, two(0xF000, 0x5845), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, +{"fdsqrtb", 4, two(0xF000, 0x5845), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdsqrtd", 4, two(0xF000, 0x0045), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, +{"fdsqrtd", 4, two(0xF000, 0x0045), two(0xF1C0, 0xE07F), "IiFt", cfloat }, +{"fdsqrtd", 4, two(0xF000, 0x5445), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, +{"fdsqrtl", 4, two(0xF000, 0x4045), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, +{"fdsqrtl", 4, two(0xF000, 0x4045), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdsqrtp", 4, two(0xF000, 0x4C45), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, +{"fdsqrts", 4, two(0xF000, 0x4445), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, +{"fdsqrts", 4, two(0xF000, 0x4445), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdsqrtw", 4, two(0xF000, 0x5045), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, +{"fdsqrtw", 4, two(0xF000, 0x5045), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdsqrtx", 4, two(0xF000, 0x0045), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, +{"fdsqrtx", 4, two(0xF000, 0x4845), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, +{"fdsqrtx", 4, two(0xF000, 0x0045), two(0xF1C0, 0xE07F), "IiFt", m68040up }, + +{"fsubb", 4, two(0xF000, 0x5828), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"fsubb", 4, two(0xF000, 0x5828), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsubd", 4, two(0xF000, 0x0028), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, +{"fsubd", 4, two(0xF000, 0x5428), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"fsubd", 4, two(0xF000, 0x5428), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, +{"fsubl", 4, two(0xF000, 0x4028), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"fsubl", 4, two(0xF000, 0x4028), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsubp", 4, two(0xF000, 0x4C28), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"fsubs", 4, two(0xF000, 0x4428), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"fsubs", 4, two(0xF000, 0x4428), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsubw", 4, two(0xF000, 0x5028), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"fsubw", 4, two(0xF000, 0x5028), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fsubx", 4, two(0xF000, 0x0028), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"fsubx", 4, two(0xF000, 0x4828), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"fsubx", 4, two(0xF000, 0x0028), two(0xF1C0, 0xE07F), "IiFt", mfloat }, + +{"fssubb", 4, two(0xF000, 0x5828), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fssubb", 4, two(0xF000, 0x5868), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, +{"fssubd", 4, two(0xF000, 0x0068), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, +{"fssubd", 4, two(0xF000, 0x5468), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, +{"fssubd", 4, two(0xF000, 0x5468), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, +{"fssubl", 4, two(0xF000, 0x4068), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, +{"fssubl", 4, two(0xF000, 0x4068), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fssubp", 4, two(0xF000, 0x4C68), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, +{"fssubs", 4, two(0xF000, 0x4468), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, +{"fssubs", 4, two(0xF000, 0x4468), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fssubw", 4, two(0xF000, 0x5068), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, +{"fssubw", 4, two(0xF000, 0x5068), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fssubx", 4, two(0xF000, 0x0068), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, +{"fssubx", 4, two(0xF000, 0x4868), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, +{"fssubx", 4, two(0xF000, 0x0068), two(0xF1C0, 0xE07F), "IiFt", m68040up }, + +{"fdsubb", 4, two(0xF000, 0x586A), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdsubb", 4, two(0xF000, 0x586c), two(0xF1C0, 0xFC7F), "Ii;bF7", m68040up }, +{"fdsubd", 4, two(0xF000, 0x006A), two(0xF1C0, 0xE07F), "IiF8F7", cfloat }, +{"fdsubd", 4, two(0xF000, 0x546A), two(0xF1C0, 0xFC7F), "IiwsF7", cfloat }, +{"fdsubd", 4, two(0xF000, 0x546c), two(0xF1C0, 0xFC7F), "Ii;FF7", m68040up }, +{"fdsubl", 4, two(0xF000, 0x406A), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdsubl", 4, two(0xF000, 0x406c), two(0xF1C0, 0xFC7F), "Ii;lF7", m68040up }, +{"fdsubp", 4, two(0xF000, 0x4C6c), two(0xF1C0, 0xFC7F), "Ii;pF7", m68040up }, +{"fdsubs", 4, two(0xF000, 0x446A), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdsubs", 4, two(0xF000, 0x446c), two(0xF1C0, 0xFC7F), "Ii;fF7", m68040up }, +{"fdsubw", 4, two(0xF000, 0x506A), two(0xF1C0, 0xFC7F), "IibsF7", cfloat }, +{"fdsubw", 4, two(0xF000, 0x506c), two(0xF1C0, 0xFC7F), "Ii;wF7", m68040up }, +{"fdsubx", 4, two(0xF000, 0x006c), two(0xF1C0, 0xE07F), "IiF8F7", m68040up }, +{"fdsubx", 4, two(0xF000, 0x486c), two(0xF1C0, 0xFC7F), "Ii;xF7", m68040up }, +{"fdsubx", 4, two(0xF000, 0x006c), two(0xF1C0, 0xE07F), "IiFt", m68040up }, + +{"ftanb", 4, two(0xF000, 0x580F), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"ftand", 4, two(0xF000, 0x540F), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"ftanl", 4, two(0xF000, 0x400F), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"ftanp", 4, two(0xF000, 0x4C0F), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"ftans", 4, two(0xF000, 0x440F), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"ftanw", 4, two(0xF000, 0x500F), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"ftanx", 4, two(0xF000, 0x000F), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"ftanx", 4, two(0xF000, 0x480F), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"ftanx", 4, two(0xF000, 0x000F), two(0xF1C0, 0xE07F), "IiFt", mfloat }, + +{"ftanhb", 4, two(0xF000, 0x5809), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"ftanhd", 4, two(0xF000, 0x5409), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"ftanhl", 4, two(0xF000, 0x4009), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"ftanhp", 4, two(0xF000, 0x4C09), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"ftanhs", 4, two(0xF000, 0x4409), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"ftanhw", 4, two(0xF000, 0x5009), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"ftanhx", 4, two(0xF000, 0x0009), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"ftanhx", 4, two(0xF000, 0x4809), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"ftanhx", 4, two(0xF000, 0x0009), two(0xF1C0, 0xE07F), "IiFt", mfloat }, + +{"ftentoxb", 4, two(0xF000, 0x5812), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"ftentoxd", 4, two(0xF000, 0x5412), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"ftentoxl", 4, two(0xF000, 0x4012), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"ftentoxp", 4, two(0xF000, 0x4C12), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"ftentoxs", 4, two(0xF000, 0x4412), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"ftentoxw", 4, two(0xF000, 0x5012), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"ftentoxx", 4, two(0xF000, 0x0012), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"ftentoxx", 4, two(0xF000, 0x4812), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"ftentoxx", 4, two(0xF000, 0x0012), two(0xF1C0, 0xE07F), "IiFt", mfloat }, + +{"ftrapeq", 4, two(0xF07C, 0x0001), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftrapf", 4, two(0xF07C, 0x0000), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftrapge", 4, two(0xF07C, 0x0013), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftrapgl", 4, two(0xF07C, 0x0016), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftrapgle", 4, two(0xF07C, 0x0017), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftrapgt", 4, two(0xF07C, 0x0012), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftraple", 4, two(0xF07C, 0x0015), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftraplt", 4, two(0xF07C, 0x0014), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftrapne", 4, two(0xF07C, 0x000E), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftrapnge", 4, two(0xF07C, 0x001C), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftrapngl", 4, two(0xF07C, 0x0019), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftrapngle", 4,two(0xF07C, 0x0018), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftrapngt", 4, two(0xF07C, 0x001D), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftrapnle", 4, two(0xF07C, 0x001A), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftrapnlt", 4, two(0xF07C, 0x001B), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftrapoge", 4, two(0xF07C, 0x0003), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftrapogl", 4, two(0xF07C, 0x0006), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftrapogt", 4, two(0xF07C, 0x0002), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftrapole", 4, two(0xF07C, 0x0005), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftrapolt", 4, two(0xF07C, 0x0004), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftrapor", 4, two(0xF07C, 0x0007), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftrapseq", 4, two(0xF07C, 0x0011), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftrapsf", 4, two(0xF07C, 0x0010), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftrapsne", 4, two(0xF07C, 0x001E), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftrapst", 4, two(0xF07C, 0x001F), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftrapt", 4, two(0xF07C, 0x000F), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftrapueq", 4, two(0xF07C, 0x0009), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftrapuge", 4, two(0xF07C, 0x000B), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftrapugt", 4, two(0xF07C, 0x000A), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftrapule", 4, two(0xF07C, 0x000D), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftrapult", 4, two(0xF07C, 0x000C), two(0xF1FF, 0xFFFF), "Ii", mfloat }, +{"ftrapun", 4, two(0xF07C, 0x0008), two(0xF1FF, 0xFFFF), "Ii", mfloat }, + +{"ftrapeqw", 4, two(0xF07A, 0x0001), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftrapfw", 4, two(0xF07A, 0x0000), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftrapgew", 4, two(0xF07A, 0x0013), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftrapglw", 4, two(0xF07A, 0x0016), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftrapglew", 4,two(0xF07A, 0x0017), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftrapgtw", 4, two(0xF07A, 0x0012), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftraplew", 4, two(0xF07A, 0x0015), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftrapltw", 4, two(0xF07A, 0x0014), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftrapnew", 4, two(0xF07A, 0x000E), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftrapngew", 4,two(0xF07A, 0x001C), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftrapnglw", 4,two(0xF07A, 0x0019), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftrapnglew", 4,two(0xF07A, 0x0018), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftrapngtw", 4,two(0xF07A, 0x001D), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftrapnlew", 4,two(0xF07A, 0x001A), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftrapnltw", 4,two(0xF07A, 0x001B), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftrapogew", 4,two(0xF07A, 0x0003), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftrapoglw", 4,two(0xF07A, 0x0006), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftrapogtw", 4,two(0xF07A, 0x0002), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftrapolew", 4,two(0xF07A, 0x0005), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftrapoltw", 4,two(0xF07A, 0x0004), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftraporw", 4, two(0xF07A, 0x0007), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftrapseqw", 4,two(0xF07A, 0x0011), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftrapsfw", 4, two(0xF07A, 0x0010), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftrapsnew", 4,two(0xF07A, 0x001E), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftrapstw", 4, two(0xF07A, 0x001F), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftraptw", 4, two(0xF07A, 0x000F), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftrapueqw", 4,two(0xF07A, 0x0009), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftrapugew", 4,two(0xF07A, 0x000B), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftrapugtw", 4,two(0xF07A, 0x000A), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftrapulew", 4,two(0xF07A, 0x000D), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftrapultw", 4,two(0xF07A, 0x000C), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, +{"ftrapunw", 4, two(0xF07A, 0x0008), two(0xF1FF, 0xFFFF), "Ii^w", mfloat }, + +{"ftrapeql", 4, two(0xF07B, 0x0001), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftrapfl", 4, two(0xF07B, 0x0000), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftrapgel", 4, two(0xF07B, 0x0013), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftrapgll", 4, two(0xF07B, 0x0016), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftrapglel", 4,two(0xF07B, 0x0017), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftrapgtl", 4, two(0xF07B, 0x0012), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftraplel", 4, two(0xF07B, 0x0015), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftrapltl", 4, two(0xF07B, 0x0014), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftrapnel", 4, two(0xF07B, 0x000E), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftrapngel", 4,two(0xF07B, 0x001C), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftrapngll", 4,two(0xF07B, 0x0019), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftrapnglel", 4,two(0xF07B, 0x0018), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftrapngtl", 4,two(0xF07B, 0x001D), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftrapnlel", 4,two(0xF07B, 0x001A), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftrapnltl", 4,two(0xF07B, 0x001B), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftrapogel", 4,two(0xF07B, 0x0003), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftrapogll", 4,two(0xF07B, 0x0006), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftrapogtl", 4,two(0xF07B, 0x0002), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftrapolel", 4,two(0xF07B, 0x0005), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftrapoltl", 4,two(0xF07B, 0x0004), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftraporl", 4, two(0xF07B, 0x0007), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftrapseql", 4,two(0xF07B, 0x0011), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftrapsfl", 4, two(0xF07B, 0x0010), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftrapsnel", 4,two(0xF07B, 0x001E), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftrapstl", 4, two(0xF07B, 0x001F), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftraptl", 4, two(0xF07B, 0x000F), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftrapueql", 4,two(0xF07B, 0x0009), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftrapugel", 4,two(0xF07B, 0x000B), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftrapugtl", 4,two(0xF07B, 0x000A), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftrapulel", 4,two(0xF07B, 0x000D), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftrapultl", 4,two(0xF07B, 0x000C), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, +{"ftrapunl", 4, two(0xF07B, 0x0008), two(0xF1FF, 0xFFFF), "Ii^l", mfloat }, + +{"ftstb", 4, two(0xF000, 0x583A), two(0xF1C0, 0xFC7F), "Ii;b", mfloat }, +{"ftstb", 4, two(0xF000, 0x583A), two(0xF1C0, 0xFC7F), "Iibs", cfloat }, +{"ftstd", 4, two(0xF000, 0x003A), two(0xF1C0, 0xE07F), "IiF8", cfloat }, +{"ftstd", 4, two(0xF000, 0x543A), two(0xF1C0, 0xFC7F), "Ii;F", mfloat }, +{"ftstd", 4, two(0xF000, 0x543A), two(0xF1C0, 0xFC7F), "Iibs", cfloat }, +{"ftstl", 4, two(0xF000, 0x403A), two(0xF1C0, 0xFC7F), "Ii;l", mfloat }, +{"ftstl", 4, two(0xF000, 0x403A), two(0xF1C0, 0xFC7F), "Iibs", cfloat }, +{"ftstp", 4, two(0xF000, 0x4C3A), two(0xF1C0, 0xFC7F), "Ii;p", mfloat }, +{"ftsts", 4, two(0xF000, 0x443A), two(0xF1C0, 0xFC7F), "Ii;f", mfloat }, +{"ftsts", 4, two(0xF000, 0x443A), two(0xF1C0, 0xFC7F), "Iibs", cfloat }, +{"ftstw", 4, two(0xF000, 0x503A), two(0xF1C0, 0xFC7F), "Ii;w", mfloat }, +{"ftstw", 4, two(0xF000, 0x503A), two(0xF1C0, 0xFC7F), "Iibs", cfloat }, +{"ftstx", 4, two(0xF000, 0x003A), two(0xF1C0, 0xE07F), "IiF8", mfloat }, +{"ftstx", 4, two(0xF000, 0x483A), two(0xF1C0, 0xFC7F), "Ii;x", mfloat }, + +{"ftwotoxb", 4, two(0xF000, 0x5811), two(0xF1C0, 0xFC7F), "Ii;bF7", mfloat }, +{"ftwotoxd", 4, two(0xF000, 0x5411), two(0xF1C0, 0xFC7F), "Ii;FF7", mfloat }, +{"ftwotoxl", 4, two(0xF000, 0x4011), two(0xF1C0, 0xFC7F), "Ii;lF7", mfloat }, +{"ftwotoxp", 4, two(0xF000, 0x4C11), two(0xF1C0, 0xFC7F), "Ii;pF7", mfloat }, +{"ftwotoxs", 4, two(0xF000, 0x4411), two(0xF1C0, 0xFC7F), "Ii;fF7", mfloat }, +{"ftwotoxw", 4, two(0xF000, 0x5011), two(0xF1C0, 0xFC7F), "Ii;wF7", mfloat }, +{"ftwotoxx", 4, two(0xF000, 0x0011), two(0xF1C0, 0xE07F), "IiF8F7", mfloat }, +{"ftwotoxx", 4, two(0xF000, 0x4811), two(0xF1C0, 0xFC7F), "Ii;xF7", mfloat }, +{"ftwotoxx", 4, two(0xF000, 0x0011), two(0xF1C0, 0xE07F), "IiFt", mfloat }, + +{"halt", 2, one(0045310), one(0177777), "", m68060 | mcfisa_a }, + +{"illegal", 2, one(0045374), one(0177777), "", m68000up | mcfisa_a }, +{"intouch", 2, one(0xf428), one(0xfff8), "As", mcfisa_b }, + +{"jmp", 2, one(0047300), one(0177700), "!s", m68000up | mcfisa_a }, + +{"jra", 2, one(0060000), one(0177400), "Bg", m68000up | mcfisa_a }, +{"jra", 2, one(0047300), one(0177700), "!s", m68000up | mcfisa_a }, + +{"jsr", 2, one(0047200), one(0177700), "!s", m68000up | mcfisa_a }, + +{"jbsr", 2, one(0060400), one(0177400), "Bg", m68000up | mcfisa_a }, +{"jbsr", 2, one(0047200), one(0177700), "!s", m68000up | mcfisa_a }, + +{"lea", 2, one(0040700), one(0170700), "!sAd", m68000up | mcfisa_a }, + +{"lpstop", 6, two(0174000,0000700),two(0177777,0177777),"#w", cpu32|m68060 }, + +{"linkw", 4, one(0047120), one(0177770), "As#w", m68000up | mcfisa_a }, +{"linkl", 6, one(0044010), one(0177770), "As#l", m68020up | cpu32 }, +{"link", 4, one(0047120), one(0177770), "As#W", m68000up | mcfisa_a }, +{"link", 6, one(0044010), one(0177770), "As#l", m68020up | cpu32 }, + +{"lslb", 2, one(0160410), one(0170770), "QdDs", m68000up }, +{"lslb", 2, one(0160450), one(0170770), "DdDs", m68000up }, +{"lslw", 2, one(0160510), one(0170770), "QdDs", m68000up }, +{"lslw", 2, one(0160550), one(0170770), "DdDs", m68000up }, +{"lslw", 2, one(0161700), one(0177700), "~s", m68000up }, +{"lsll", 2, one(0160610), one(0170770), "QdDs", m68000up | mcfisa_a }, +{"lsll", 2, one(0160650), one(0170770), "DdDs", m68000up | mcfisa_a }, + +{"lsrb", 2, one(0160010), one(0170770), "QdDs", m68000up }, +{"lsrb", 2, one(0160050), one(0170770), "DdDs", m68000up }, +{"lsrw", 2, one(0160110), one(0170770), "QdDs", m68000up }, +{"lsrw", 2, one(0160150), one(0170770), "DdDs", m68000up }, +{"lsrw", 2, one(0161300), one(0177700), "~s", m68000up }, +{"lsrl", 2, one(0160210), one(0170770), "QdDs", m68000up | mcfisa_a }, +{"lsrl", 2, one(0160250), one(0170770), "DdDs", m68000up | mcfisa_a }, + +{"macw", 4, two(0xa080, 0x0000), two(0xf180, 0x0910), "uNuoiI4/Rn", mcfmac }, +{"macw", 4, two(0xa080, 0x0200), two(0xf180, 0x0910), "uNuoMh4/Rn", mcfmac }, +{"macw", 4, two(0xa080, 0x0000), two(0xf180, 0x0f10), "uNuo4/Rn", mcfmac }, +{"macw", 4, two(0xa000, 0x0000), two(0xf1b0, 0x0900), "uMumiI", mcfmac }, +{"macw", 4, two(0xa000, 0x0200), two(0xf1b0, 0x0900), "uMumMh", mcfmac }, +{"macw", 4, two(0xa000, 0x0000), two(0xf1b0, 0x0f00), "uMum", mcfmac }, + +{"macw", 4, two(0xa000, 0x0000), two(0xf100, 0x0900), "uNuoiI4/RneG", mcfemac },/* Ry,Rx,SF,,accX. */ +{"macw", 4, two(0xa000, 0x0200), two(0xf100, 0x0900), "uNuoMh4/RneG", mcfemac },/* Ry,Rx,+1/-1,,accX. */ +{"macw", 4, two(0xa000, 0x0000), two(0xf100, 0x0f00), "uNuo4/RneG", mcfemac },/* Ry,Rx,,accX. */ +{"macw", 4, two(0xa000, 0x0000), two(0xf130, 0x0900), "uMumiIeH", mcfemac },/* Ry,Rx,SF,accX. */ +{"macw", 4, two(0xa000, 0x0200), two(0xf130, 0x0900), "uMumMheH", mcfemac },/* Ry,Rx,+1/-1,accX. */ +{"macw", 4, two(0xa000, 0x0000), two(0xf130, 0x0f00), "uMumeH", mcfemac }, /* Ry,Rx,accX. */ + +{"macl", 4, two(0xa080, 0x0800), two(0xf180, 0x0910), "RNRoiI4/Rn", mcfmac }, +{"macl", 4, two(0xa080, 0x0a00), two(0xf180, 0x0910), "RNRoMh4/Rn", mcfmac }, +{"macl", 4, two(0xa080, 0x0800), two(0xf180, 0x0f10), "RNRo4/Rn", mcfmac }, +{"macl", 4, two(0xa000, 0x0800), two(0xf1b0, 0x0b00), "RMRmiI", mcfmac }, +{"macl", 4, two(0xa000, 0x0a00), two(0xf1b0, 0x0b00), "RMRmMh", mcfmac }, +{"macl", 4, two(0xa000, 0x0800), two(0xf1b0, 0x0800), "RMRm", mcfmac }, + +{"macl", 4, two(0xa000, 0x0800), two(0xf100, 0x0900), "R3R1iI4/RneG", mcfemac }, +{"macl", 4, two(0xa000, 0x0a00), two(0xf100, 0x0900), "R3R1Mh4/RneG", mcfemac }, +{"macl", 4, two(0xa000, 0x0800), two(0xf100, 0x0f00), "R3R14/RneG", mcfemac }, +{"macl", 4, two(0xa000, 0x0800), two(0xf130, 0x0900), "RMRmiIeH", mcfemac }, +{"macl", 4, two(0xa000, 0x0a00), two(0xf130, 0x0900), "RMRmMheH", mcfemac }, +{"macl", 4, two(0xa000, 0x0800), two(0xf130, 0x0f00), "RMRmeH", mcfemac }, /* NOTE: The mcf5200 family programmer's reference manual does not indicate the byte form of the movea instruction is invalid (as it @@ -1512,571 +1501,576 @@ const struct m68k_opcode m68k_opcodes[] which replied that other coldfire assemblers reject movea.b. For this reason I've decided to not allow moveab. - jtc@cygnus.com - 97/01/24 - */ + jtc@cygnus.com - 97/01/24. */ -{"moveal", one(0020100), one(0170700), "*lAd", m68000up | mcf }, -{"moveaw", one(0030100), one(0170700), "*wAd", m68000up | mcf }, +{"moveal", 2, one(0020100), one(0170700), "*lAd", m68000up | mcfisa_a }, +{"moveaw", 2, one(0030100), one(0170700), "*wAd", m68000up | mcfisa_a }, -{"movec", one(0047173), one(0177777), "R1Jj", m68010up | mcf }, -{"movec", one(0047173), one(0177777), "R1#j", m68010up | mcf }, -{"movec", one(0047172), one(0177777), "JjR1", m68010up }, -{"movec", one(0047172), one(0177777), "#jR1", m68010up }, - -{"movemw", one(0044200), one(0177700), "Lw&s", m68000up }, -{"movemw", one(0044240), one(0177770), "lw-s", m68000up }, -{"movemw", one(0044200), one(0177700), "#w>s", m68000up }, -{"movemw", one(0046200), one(0177700), "s", m68000up }, -{"moveml", one(0046300), one(0177700), "s", m68000up }, +{"movemw", 4, one(0046200), one(0177700), "s", m68000up }, +{"moveml", 4, one(0046300), one(0177700), " operand) / remove MSACM */ -{"msacw", two(0120000, 0000400), two(0170660, 0005400), "uMum", mcf5206eup }, -{"msacw", two(0120000, 0001400), two(0170660, 0005400), "uMumMh", mcf5206eup }, -{"msacw", two(0120220, 0000400), two(0170670, 0005460), "uNuoasRn", mcf5206eup }, -{"msacw", two(0120230, 0000400), two(0170670, 0005460), "uNuo+sRn", mcf5206eup }, -{"msacw", two(0120240, 0000400), two(0170670, 0005460), "uNuo-sRn", mcf5206eup }, -{"msacw", two(0120250, 0000400), two(0170670, 0005460), "uNuodsRn", mcf5206eup }, -{"msacw", two(0120220, 0001400), two(0170670, 0005460), "uNuoMhasRn", mcf5206eup }, -{"msacw", two(0120230, 0001400), two(0170670, 0005460), "uNuoMh+sRn", mcf5206eup }, -{"msacw", two(0120240, 0001400), two(0170670, 0005460), "uNuoMh-sRn", mcf5206eup }, -{"msacw", two(0120250, 0001400), two(0170670, 0005460), "uNuoMhdsRn", mcf5206eup }, -{"msacmw", two(0120220, 0000440), two(0170670, 0005460), "uNuoasRn", mcf5206eup }, -{"msacmw", two(0120230, 0000440), two(0170670, 0005460), "uNuo+sRn", mcf5206eup }, -{"msacmw", two(0120240, 0000440), two(0170670, 0005460), "uNuo-sRn", mcf5206eup }, -{"msacmw", two(0120250, 0000440), two(0170670, 0005460), "uNuodsRn", mcf5206eup }, -{"msacmw", two(0120220, 0001440), two(0170670, 0005460), "uNuoMhasRn", mcf5206eup }, -{"msacmw", two(0120230, 0001440), two(0170670, 0005460), "uNuoMh+sRn", mcf5206eup }, -{"msacmw", two(0120240, 0001440), two(0170670, 0005460), "uNuoMh-sRn", mcf5206eup }, -{"msacmw", two(0120250, 0001440), two(0170670, 0005460), "uNuoMhdsRn", mcf5206eup }, - -{"msacl", two(0120000, 0004400), two(0170660, 0005400), "RsRm", mcf5206eup }, -{"msacl", two(0120000, 0005400), two(0170660, 0005400), "RsRmMh", mcf5206eup }, -{"msacl", two(0120220, 0004400), two(0170670, 0005460), "R3R1asRn", mcf5206eup }, -{"msacl", two(0120230, 0004400), two(0170670, 0005460), "R3R1+sRn", mcf5206eup }, -{"msacl", two(0120240, 0004400), two(0170670, 0005460), "R3R1-sRn", mcf5206eup }, -{"msacl", two(0120250, 0004400), two(0170670, 0005460), "R3R1dsRn", mcf5206eup }, -{"msacl", two(0120220, 0005400), two(0170670, 0005460), "R3R1MhasRn", mcf5206eup }, -{"msacl", two(0120230, 0005400), two(0170670, 0005460), "R3R1Mh+sRn", mcf5206eup }, -{"msacl", two(0120240, 0005400), two(0170670, 0005460), "R3R1Mh-sRn", mcf5206eup }, -{"msacl", two(0120250, 0005400), two(0170670, 0005460), "R3R1MhdsRn", mcf5206eup }, -{"msacml", two(0120220, 0004440), two(0170670, 0005460), "R3R1asRn", mcf5206eup }, -{"msacml", two(0120230, 0004440), two(0170670, 0005460), "R3R1+sRn", mcf5206eup }, -{"msacml", two(0120240, 0004440), two(0170670, 0005460), "R3R1-sRn", mcf5206eup }, -{"msacml", two(0120250, 0004440), two(0170670, 0005460), "R3R1dsRn", mcf5206eup }, -{"msacml", two(0120220, 0005440), two(0170670, 0005460), "R3R1MhasRn", mcf5206eup }, -{"msacml", two(0120230, 0005440), two(0170670, 0005460), "R3R1Mh+sRn", mcf5206eup }, -{"msacml", two(0120240, 0005440), two(0170670, 0005460), "R3R1Mh-sRn", mcf5206eup }, -{"msacml", two(0120250, 0005440), two(0170670, 0005460), "R3R1MhdsRn", mcf5206eup }, - -{"mulsw", one(0140700), one(0170700), ";wDd", m68000up|mcf }, -{"mulsl", two(0046000,004000), two(0177700,0107770), ";lD1", m68020up|cpu32 }, -{"mulsl", two(0046000,004000), two(0177700,0107770), "qsD1", mcf }, -{"mulsl", two(0046000,006000), two(0177700,0107770), ";lD3D1",m68020up|cpu32 }, - -{"muluw", one(0140300), one(0170700), ";wDd", m68000up|mcf }, -{"mulul", two(0046000,000000), two(0177700,0107770), ";lD1", m68020up|cpu32 }, -{"mulul", two(0046000,000000), two(0177700,0107770), "qsD1", mcf }, -{"mulul", two(0046000,002000), two(0177700,0107770), ";lD3D1",m68020up|cpu32 }, - -{"nbcd", one(0044000), one(0177700), "$s", m68000up }, - -{"negb", one(0042000), one(0177700), "$s", m68000up }, -{"negw", one(0042100), one(0177700), "$s", m68000up }, -{"negl", one(0042200), one(0177700), "$s", m68000up }, -{"negl", one(0042200), one(0177700), "Ds", mcf}, - -{"negxb", one(0040000), one(0177700), "$s", m68000up }, -{"negxw", one(0040100), one(0177700), "$s", m68000up }, -{"negxl", one(0040200), one(0177700), "$s", m68000up }, -{"negxl", one(0040200), one(0177700), "Ds", mcf}, - -{"nop", one(0047161), one(0177777), "", m68000up | mcf}, - -{"notb", one(0043000), one(0177700), "$s", m68000up }, -{"notw", one(0043100), one(0177700), "$s", m68000up }, -{"notl", one(0043200), one(0177700), "$s", m68000up }, -{"notl", one(0043200), one(0177700), "Ds", mcf}, - -{"orib", one(0000000), one(0177700), "#b$s", m68000up }, -{"orib", one(0000074), one(0177777), "#bCs", m68000up }, -{"oriw", one(0000100), one(0177700), "#w$s", m68000up }, -{"oriw", one(0000174), one(0177777), "#wSs", m68000up }, -{"oril", one(0000200), one(0177700), "#l$s", m68000up }, -{"oril", one(0000200), one(0177700), "#lDs", mcf }, -{"ori", one(0000074), one(0177777), "#bCs", m68000up }, -{"ori", one(0000100), one(0177700), "#w$s", m68000up }, -{"ori", one(0000174), one(0177777), "#wSs", m68000up }, +{"moveb", 2, one(0010000), one(0170000), ";b$d", m68000up }, +{"moveb", 2, one(0010000), one(0170070), "Ds$d", mcfisa_a }, +{"moveb", 2, one(0010020), one(0170070), "as$d", mcfisa_a }, +{"moveb", 2, one(0010030), one(0170070), "+s$d", mcfisa_a }, +{"moveb", 2, one(0010040), one(0170070), "-s$d", mcfisa_a }, +{"moveb", 2, one(0010000), one(0170000), "nsqd", mcfisa_a }, +{"moveb", 2, one(0010000), one(0170700), "obDd", mcfisa_a }, +{"moveb", 2, one(0010200), one(0170700), "obad", mcfisa_a }, +{"moveb", 2, one(0010300), one(0170700), "ob+d", mcfisa_a }, +{"moveb", 2, one(0010400), one(0170700), "ob-d", mcfisa_a }, +{"moveb", 2, one(0010000), one(0170000), "obnd", mcfisa_b }, + +{"movew", 2, one(0030000), one(0170000), "*w%d", m68000up }, +{"movew", 2, one(0030000), one(0170000), "ms%d", mcfisa_a }, +{"movew", 2, one(0030000), one(0170000), "nspd", mcfisa_a }, +{"movew", 2, one(0030000), one(0170000), "owmd", mcfisa_a }, +{"movew", 2, one(0030000), one(0170000), "ownd", mcfisa_b }, +{"movew", 2, one(0040300), one(0177700), "Ss$s", m68000up }, +{"movew", 2, one(0040300), one(0177770), "SsDs", mcfisa_a }, +{"movew", 2, one(0041300), one(0177700), "Cs$s", m68010up }, +{"movew", 2, one(0041300), one(0177770), "CsDs", mcfisa_a }, +{"movew", 2, one(0042300), one(0177700), ";wCd", m68000up }, +{"movew", 2, one(0042300), one(0177700), "DsCd", mcfisa_a }, +{"movew", 4, one(0042374), one(0177777), "#wCd", mcfisa_a }, +{"movew", 2, one(0043300), one(0177700), ";wSd", m68000up }, +{"movew", 2, one(0043300), one(0177700), "DsSd", mcfisa_a }, +{"movew", 4, one(0043374), one(0177777), "#wSd", mcfisa_a }, + +{"movel", 2, one(0070000), one(0170400), "MsDd", m68000up | mcfisa_a }, +{"movel", 2, one(0020000), one(0170000), "*l%d", m68000up }, +{"movel", 2, one(0020000), one(0170000), "ms%d", mcfisa_a }, +{"movel", 2, one(0020000), one(0170000), "nspd", mcfisa_a }, +{"movel", 2, one(0020000), one(0170000), "olmd", mcfisa_a }, +{"movel", 2, one(0020000), one(0170000), "olnd", mcfisa_b }, +{"movel", 2, one(0047140), one(0177770), "AsUd", m68000up | mcfusp }, +{"movel", 2, one(0047150), one(0177770), "UdAs", m68000up | mcfusp }, +{"movel", 2, one(0120600), one(0177760), "EsRs", mcfmac }, +{"movel", 2, one(0120400), one(0177760), "RsEs", mcfmac }, +{"movel", 6, one(0120474), one(0177777), "#lEs", mcfmac }, +{"movel", 2, one(0124600), one(0177760), "GsRs", mcfmac }, +{"movel", 2, one(0124400), one(0177760), "RsGs", mcfmac }, +{"movel", 6, one(0124474), one(0177777), "#lGs", mcfmac }, +{"movel", 2, one(0126600), one(0177760), "HsRs", mcfmac }, +{"movel", 2, one(0126400), one(0177760), "RsHs", mcfmac }, +{"movel", 6, one(0126474), one(0177777), "#lHs", mcfmac }, +{"movel", 2, one(0124700), one(0177777), "GsCs", mcfmac }, + +{"movel", 2, one(0xa180), one(0xf9f0), "eFRs", mcfemac }, /* ACCx,Rx. */ +{"movel", 2, one(0xab80), one(0xfbf0), "g]Rs", mcfemac }, /* ACCEXTx,Rx. */ +{"movel", 2, one(0xa980), one(0xfff0), "G-Rs", mcfemac }, /* macsr,Rx. */ +{"movel", 2, one(0xad80), one(0xfff0), "H-Rs", mcfemac }, /* mask,Rx. */ +{"movel", 2, one(0xa110), one(0xf9fc), "efeF", mcfemac }, /* ACCy,ACCx. */ +{"movel", 2, one(0xa9c0), one(0xffff), "G-C-", mcfemac }, /* macsr,ccr. */ +{"movel", 2, one(0xa100), one(0xf9f0), "RseF", mcfemac }, /* Rx,ACCx. */ +{"movel", 6, one(0xa13c), one(0xf9ff), "#leF", mcfemac }, /* #,ACCx. */ +{"movel", 2, one(0xab00), one(0xfbc0), "Rsg]", mcfemac }, /* Rx,ACCEXTx. */ +{"movel", 6, one(0xab3c), one(0xfbff), "#lg]", mcfemac }, /* #,ACCEXTx. */ +{"movel", 2, one(0xa900), one(0xffc0), "RsG-", mcfemac }, /* Rx,macsr. */ +{"movel", 6, one(0xa93c), one(0xffff), "#lG-", mcfemac }, /* #,macsr. */ +{"movel", 2, one(0xad00), one(0xffc0), "RsH-", mcfemac }, /* Rx,mask. */ +{"movel", 6, one(0xad3c), one(0xffff), "#lH-", mcfemac }, /* #,mask. */ + +{"move", 2, one(0030000), one(0170000), "*w%d", m68000up }, +{"move", 2, one(0030000), one(0170000), "ms%d", mcfisa_a }, +{"move", 2, one(0030000), one(0170000), "nspd", mcfisa_a }, +{"move", 2, one(0030000), one(0170000), "owmd", mcfisa_a }, +{"move", 2, one(0030000), one(0170000), "ownd", mcfisa_b }, +{"move", 2, one(0040300), one(0177700), "Ss$s", m68000up }, +{"move", 2, one(0040300), one(0177770), "SsDs", mcfisa_a }, +{"move", 2, one(0041300), one(0177700), "Cs$s", m68010up }, +{"move", 2, one(0041300), one(0177770), "CsDs", mcfisa_a }, +{"move", 2, one(0042300), one(0177700), ";wCd", m68000up }, +{"move", 2, one(0042300), one(0177700), "DsCd", mcfisa_a }, +{"move", 4, one(0042374), one(0177777), "#wCd", mcfisa_a }, +{"move", 2, one(0043300), one(0177700), ";wSd", m68000up }, +{"move", 2, one(0043300), one(0177700), "DsSd", mcfisa_a }, +{"move", 4, one(0043374), one(0177777), "#wSd", mcfisa_a }, + +{"move", 2, one(0047140), one(0177770), "AsUd", m68000up }, +{"move", 2, one(0047150), one(0177770), "UdAs", m68000up }, + +{"mov3ql", 2, one(0120500), one(0170700), "xd%s", mcfisa_b }, +{"mvsb", 2, one(0070400), one(0170700), "*bDd", mcfisa_b }, +{"mvsw", 2, one(0070500), one(0170700), "*wDd", mcfisa_b }, +{"mvzb", 2, one(0070600), one(0170700), "*bDd", mcfisa_b }, +{"mvzw", 2, one(0070700), one(0170700), "*wDd", mcfisa_b }, + +{"movesb", 4, two(0007000, 0), two(0177700, 07777), "~sR1", m68010up }, +{"movesb", 4, two(0007000, 04000), two(0177700, 07777), "R1~s", m68010up }, +{"movesw", 4, two(0007100, 0), two(0177700, 07777), "~sR1", m68010up }, +{"movesw", 4, two(0007100, 04000), two(0177700, 07777), "R1~s", m68010up }, +{"movesl", 4, two(0007200, 0), two(0177700, 07777), "~sR1", m68010up }, +{"movesl", 4, two(0007200, 04000), two(0177700, 07777), "R1~s", m68010up }, + +{"move16", 4, two(0xf620, 0x8000), two(0xfff8, 0x8fff), "+s+1", m68040up }, +{"move16", 2, one(0xf600), one(0xfff8), "+s_L", m68040up }, +{"move16", 2, one(0xf608), one(0xfff8), "_L+s", m68040up }, +{"move16", 2, one(0xf610), one(0xfff8), "as_L", m68040up }, +{"move16", 2, one(0xf618), one(0xfff8), "_Las", m68040up }, + +{"msacw", 4, two(0xa080, 0x0100), two(0xf180, 0x0910), "uNuoiI4/Rn", mcfmac }, +{"msacw", 4, two(0xa080, 0x0300), two(0xf180, 0x0910), "uNuoMh4/Rn", mcfmac }, +{"msacw", 4, two(0xa080, 0x0100), two(0xf180, 0x0f10), "uNuo4/Rn", mcfmac }, +{"msacw", 4, two(0xa000, 0x0100), two(0xf1b0, 0x0900), "uMumiI", mcfmac }, +{"msacw", 4, two(0xa000, 0x0300), two(0xf1b0, 0x0900), "uMumMh", mcfmac }, +{"msacw", 4, two(0xa000, 0x0100), two(0xf1b0, 0x0f00), "uMum", mcfmac }, + +{"msacw", 4, two(0xa000, 0x0100), two(0xf100, 0x0900), "uMumiI4/RneG", mcfemac },/* Ry,Rx,SF,,accX. */ +{"msacw", 4, two(0xa000, 0x0300), two(0xf100, 0x0900), "uMumMh4/RneG", mcfemac },/* Ry,Rx,+1/-1,,accX. */ +{"msacw", 4, two(0xa000, 0x0100), two(0xf100, 0x0f00), "uMum4/RneG", mcfemac },/* Ry,Rx,,accX. */ +{"msacw", 4, two(0xa000, 0x0100), two(0xf130, 0x0900), "uMumiIeH", mcfemac },/* Ry,Rx,SF,accX. */ +{"msacw", 4, two(0xa000, 0x0300), two(0xf130, 0x0900), "uMumMheH", mcfemac },/* Ry,Rx,+1/-1,accX. */ +{"msacw", 4, two(0xa000, 0x0100), two(0xf130, 0x0f00), "uMumeH", mcfemac }, /* Ry,Rx,accX. */ + +{"msacl", 4, two(0xa080, 0x0900), two(0xf180, 0x0910), "RNRoiI4/Rn", mcfmac }, +{"msacl", 4, two(0xa080, 0x0b00), two(0xf180, 0x0910), "RNRoMh4/Rn", mcfmac }, +{"msacl", 4, two(0xa080, 0x0900), two(0xf180, 0x0f10), "RNRo4/Rn", mcfmac }, +{"msacl", 4, two(0xa000, 0x0900), two(0xf1b0, 0x0b00), "RMRmiI", mcfmac }, +{"msacl", 4, two(0xa000, 0x0b00), two(0xf1b0, 0x0b00), "RMRmMh", mcfmac }, +{"msacl", 4, two(0xa000, 0x0900), two(0xf1b0, 0x0800), "RMRm", mcfmac }, + +{"msacl", 4, two(0xa000, 0x0900), two(0xf100, 0x0900), "R3R1iI4/RneG", mcfemac }, +{"msacl", 4, two(0xa000, 0x0b00), two(0xf100, 0x0900), "R3R1Mh4/RneG", mcfemac }, +{"msacl", 4, two(0xa000, 0x0900), two(0xf100, 0x0f00), "R3R14/RneG", mcfemac }, +{"msacl", 4, two(0xa000, 0x0900), two(0xf130, 0x0900), "RMRmiIeH", mcfemac }, +{"msacl", 4, two(0xa000, 0x0b00), two(0xf130, 0x0900), "RMRmMheH", mcfemac }, +{"msacl", 4, two(0xa000, 0x0900), two(0xf130, 0x0f00), "RMRmeH", mcfemac }, + +{"mulsw", 2, one(0140700), one(0170700), ";wDd", m68000up|mcfisa_a }, +{"mulsl", 4, two(0046000,004000), two(0177700,0107770), ";lD1", m68020up|cpu32 }, +{"mulsl", 4, two(0046000,004000), two(0177700,0107770), "qsD1", mcfisa_a }, +{"mulsl", 4, two(0046000,006000), two(0177700,0107770), ";lD3D1",m68020up|cpu32 }, + +{"muluw", 2, one(0140300), one(0170700), ";wDd", m68000up|mcfisa_a }, +{"mulul", 4, two(0046000,000000), two(0177700,0107770), ";lD1", m68020up|cpu32 }, +{"mulul", 4, two(0046000,000000), two(0177700,0107770), "qsD1", mcfisa_a }, +{"mulul", 4, two(0046000,002000), two(0177700,0107770), ";lD3D1",m68020up|cpu32 }, + +{"nbcd", 2, one(0044000), one(0177700), "$s", m68000up }, + +{"negb", 2, one(0042000), one(0177700), "$s", m68000up }, +{"negw", 2, one(0042100), one(0177700), "$s", m68000up }, +{"negl", 2, one(0042200), one(0177700), "$s", m68000up }, +{"negl", 2, one(0042200), one(0177700), "Ds", mcfisa_a}, + +{"negxb", 2, one(0040000), one(0177700), "$s", m68000up }, +{"negxw", 2, one(0040100), one(0177700), "$s", m68000up }, +{"negxl", 2, one(0040200), one(0177700), "$s", m68000up }, +{"negxl", 2, one(0040200), one(0177700), "Ds", mcfisa_a}, + +{"nop", 2, one(0047161), one(0177777), "", m68000up | mcfisa_a}, + +{"notb", 2, one(0043000), one(0177700), "$s", m68000up }, +{"notw", 2, one(0043100), one(0177700), "$s", m68000up }, +{"notl", 2, one(0043200), one(0177700), "$s", m68000up }, +{"notl", 2, one(0043200), one(0177700), "Ds", mcfisa_a}, + +{"orib", 4, one(0000000), one(0177700), "#b$s", m68000up }, +{"orib", 4, one(0000074), one(0177777), "#bCs", m68000up }, +{"oriw", 4, one(0000100), one(0177700), "#w$s", m68000up }, +{"oriw", 4, one(0000174), one(0177777), "#wSs", m68000up }, +{"oril", 6, one(0000200), one(0177700), "#l$s", m68000up }, +{"oril", 6, one(0000200), one(0177700), "#lDs", mcfisa_a }, +{"ori", 4, one(0000074), one(0177777), "#bCs", m68000up }, +{"ori", 4, one(0000100), one(0177700), "#w$s", m68000up }, +{"ori", 4, one(0000174), one(0177777), "#wSs", m68000up }, /* The or opcode can generate the ori instruction. */ -{"orb", one(0000000), one(0177700), "#b$s", m68000up }, -{"orb", one(0000074), one(0177777), "#bCs", m68000up }, -{"orb", one(0100000), one(0170700), ";bDd", m68000up }, -{"orb", one(0100400), one(0170700), "Dd~s", m68000up }, -{"orw", one(0000100), one(0177700), "#w$s", m68000up }, -{"orw", one(0000174), one(0177777), "#wSs", m68000up }, -{"orw", one(0100100), one(0170700), ";wDd", m68000up }, -{"orw", one(0100500), one(0170700), "Dd~s", m68000up }, -{"orl", one(0000200), one(0177700), "#l$s", m68000up }, -{"orl", one(0000200), one(0177700), "#lDs", mcf }, -{"orl", one(0100200), one(0170700), ";lDd", m68000up | mcf }, -{"orl", one(0100600), one(0170700), "Dd~s", m68000up | mcf }, -{"or", one(0000074), one(0177777), "#bCs", m68000up }, -{"or", one(0000100), one(0177700), "#w$s", m68000up }, -{"or", one(0000174), one(0177777), "#wSs", m68000up }, -{"or", one(0100100), one(0170700), ";wDd", m68000up }, -{"or", one(0100500), one(0170700), "Dd~s", m68000up }, - -{"pack", one(0100500), one(0170770), "DsDd#w", m68020up }, -{"pack", one(0100510), one(0170770), "-s-d#w", m68020up }, - -{"pbac", one(0xf087), one(0xffbf), "Bc", m68851 }, -{"pbacw", one(0xf087), one(0xffff), "BW", m68851 }, -{"pbas", one(0xf086), one(0xffbf), "Bc", m68851 }, -{"pbasw", one(0xf086), one(0xffff), "BW", m68851 }, -{"pbbc", one(0xf081), one(0xffbf), "Bc", m68851 }, -{"pbbcw", one(0xf081), one(0xffff), "BW", m68851 }, -{"pbbs", one(0xf080), one(0xffbf), "Bc", m68851 }, -{"pbbsw", one(0xf080), one(0xffff), "BW", m68851 }, -{"pbcc", one(0xf08f), one(0xffbf), "Bc", m68851 }, -{"pbccw", one(0xf08f), one(0xffff), "BW", m68851 }, -{"pbcs", one(0xf08e), one(0xffbf), "Bc", m68851 }, -{"pbcsw", one(0xf08e), one(0xffff), "BW", m68851 }, -{"pbgc", one(0xf08d), one(0xffbf), "Bc", m68851 }, -{"pbgcw", one(0xf08d), one(0xffff), "BW", m68851 }, -{"pbgs", one(0xf08c), one(0xffbf), "Bc", m68851 }, -{"pbgsw", one(0xf08c), one(0xffff), "BW", m68851 }, -{"pbic", one(0xf08b), one(0xffbf), "Bc", m68851 }, -{"pbicw", one(0xf08b), one(0xffff), "BW", m68851 }, -{"pbis", one(0xf08a), one(0xffbf), "Bc", m68851 }, -{"pbisw", one(0xf08a), one(0xffff), "BW", m68851 }, -{"pblc", one(0xf083), one(0xffbf), "Bc", m68851 }, -{"pblcw", one(0xf083), one(0xffff), "BW", m68851 }, -{"pbls", one(0xf082), one(0xffbf), "Bc", m68851 }, -{"pblsw", one(0xf082), one(0xffff), "BW", m68851 }, -{"pbsc", one(0xf085), one(0xffbf), "Bc", m68851 }, -{"pbscw", one(0xf085), one(0xffff), "BW", m68851 }, -{"pbss", one(0xf084), one(0xffbf), "Bc", m68851 }, -{"pbssw", one(0xf084), one(0xffff), "BW", m68851 }, -{"pbwc", one(0xf089), one(0xffbf), "Bc", m68851 }, -{"pbwcw", one(0xf089), one(0xffff), "BW", m68851 }, -{"pbws", one(0xf088), one(0xffbf), "Bc", m68851 }, -{"pbwsw", one(0xf088), one(0xffff), "BW", m68851 }, - -{"pdbac", two(0xf048, 0x0007), two(0xfff8, 0xffff), "DsBw", m68851 }, -{"pdbas", two(0xf048, 0x0006), two(0xfff8, 0xffff), "DsBw", m68851 }, -{"pdbbc", two(0xf048, 0x0001), two(0xfff8, 0xffff), "DsBw", m68851 }, -{"pdbbs", two(0xf048, 0x0000), two(0xfff8, 0xffff), "DsBw", m68851 }, -{"pdbcc", two(0xf048, 0x000f), two(0xfff8, 0xffff), "DsBw", m68851 }, -{"pdbcs", two(0xf048, 0x000e), two(0xfff8, 0xffff), "DsBw", m68851 }, -{"pdbgc", two(0xf048, 0x000d), two(0xfff8, 0xffff), "DsBw", m68851 }, -{"pdbgs", two(0xf048, 0x000c), two(0xfff8, 0xffff), "DsBw", m68851 }, -{"pdbic", two(0xf048, 0x000b), two(0xfff8, 0xffff), "DsBw", m68851 }, -{"pdbis", two(0xf048, 0x000a), two(0xfff8, 0xffff), "DsBw", m68851 }, -{"pdblc", two(0xf048, 0x0003), two(0xfff8, 0xffff), "DsBw", m68851 }, -{"pdbls", two(0xf048, 0x0002), two(0xfff8, 0xffff), "DsBw", m68851 }, -{"pdbsc", two(0xf048, 0x0005), two(0xfff8, 0xffff), "DsBw", m68851 }, -{"pdbss", two(0xf048, 0x0004), two(0xfff8, 0xffff), "DsBw", m68851 }, -{"pdbwc", two(0xf048, 0x0009), two(0xfff8, 0xffff), "DsBw", m68851 }, -{"pdbws", two(0xf048, 0x0008), two(0xfff8, 0xffff), "DsBw", m68851 }, - -{"pea", one(0044100), one(0177700), "!s", m68000up|mcf }, - -{"pflusha", one(0xf518), one(0xfff8), "", m68040up }, -{"pflusha", two(0xf000,0x2400), two(0xffff,0xffff), "", m68030 | m68851 }, - -{"pflush", two(0xf000,0x3010), two(0xffc0,0xfe10), "T3T9", m68030|m68851 }, -{"pflush", two(0xf000,0x3810), two(0xffc0,0xfe10), "T3T9&s", m68030|m68851 }, -{"pflush", two(0xf000,0x3008), two(0xffc0,0xfe18), "D3T9", m68030|m68851 }, -{"pflush", two(0xf000,0x3808), two(0xffc0,0xfe18), "D3T9&s", m68030|m68851 }, -{"pflush", two(0xf000,0x3000), two(0xffc0,0xfe1e), "f3T9", m68030|m68851 }, -{"pflush", two(0xf000,0x3800), two(0xffc0,0xfe1e), "f3T9&s", m68030|m68851 }, -{"pflush", one(0xf508), one(0xfff8), "as", m68040up }, -{"pflush", one(0xf508), one(0xfff8), "As", m68040up }, - -{"pflushan", one(0xf510), one(0xfff8), "", m68040up }, -{"pflushn", one(0xf500), one(0xfff8), "as", m68040up }, -{"pflushn", one(0xf500), one(0xfff8), "As", m68040up }, - -{"pflushr", two(0xf000, 0xa000), two(0xffc0, 0xffff), "|s", m68851 }, - -{"pflushs", two(0xf000, 0x3410), two(0xfff8, 0xfe10), "T3T9", m68851 }, -{"pflushs", two(0xf000, 0x3c10), two(0xfff8, 0xfe10), "T3T9&s", m68851 }, -{"pflushs", two(0xf000, 0x3408), two(0xfff8, 0xfe18), "D3T9", m68851 }, -{"pflushs", two(0xf000, 0x3c08), two(0xfff8, 0xfe18), "D3T9&s", m68851 }, -{"pflushs", two(0xf000, 0x3400), two(0xfff8, 0xfe1e), "f3T9", m68851 }, -{"pflushs", two(0xf000, 0x3c00), two(0xfff8, 0xfe1e), "f3T9&s", m68851 }, - -{"ploadr", two(0xf000,0x2210), two(0xffc0,0xfff0), "T3&s", m68030|m68851 }, -{"ploadr", two(0xf000,0x2208), two(0xffc0,0xfff8), "D3&s", m68030|m68851 }, -{"ploadr", two(0xf000,0x2200), two(0xffc0,0xfffe), "f3&s", m68030|m68851 }, -{"ploadw", two(0xf000,0x2010), two(0xffc0,0xfff0), "T3&s", m68030|m68851 }, -{"ploadw", two(0xf000,0x2008), two(0xffc0,0xfff8), "D3&s", m68030|m68851 }, -{"ploadw", two(0xf000,0x2000), two(0xffc0,0xfffe), "f3&s", m68030|m68851 }, - -{"plpar", one(0xf5c8), one(0xfff8), "as", m68060 }, -{"plpaw", one(0xf588), one(0xfff8), "as", m68060 }, - -{"pmove", two(0xf000,0x4000), two(0xffc0,0xffff), "*l08", m68030|m68851 }, -{"pmove", two(0xf000,0x5c00), two(0xffc0,0xffff), "*w18", m68851 }, -{"pmove", two(0xf000,0x4000), two(0xffc0,0xe3ff), "*b28", m68851 }, -{"pmove", two(0xf000,0x4200), two(0xffc0,0xffff), "08%s", m68030|m68851 }, -{"pmove", two(0xf000,0x5e00), two(0xffc0,0xffff), "18%s", m68851 }, -{"pmove", two(0xf000,0x4200), two(0xffc0,0xe3ff), "28%s", m68851 }, -{"pmove", two(0xf000,0x4000), two(0xffc0,0xe3ff), "|sW8", m68030|m68851 }, -{"pmove", two(0xf000,0x4200), two(0xffc0,0xe3ff), "W8~s", m68030|m68851 }, -{"pmove", two(0xf000,0x6200), two(0xffc0,0xe3e3), "*wX3", m68851 }, -{"pmove", two(0xf000,0x6000), two(0xffc0,0xe3e3), "X3%s", m68851 }, -{"pmove", two(0xf000,0x6000), two(0xffc0,0xffff), "*wY8", m68030|m68851 }, -{"pmove", two(0xf000,0x6200), two(0xffc0,0xffff), "Y8%s", m68030|m68851 }, -{"pmove", two(0xf000,0x6600), two(0xffc0,0xffff), "Z8%s", m68851 }, -{"pmove", two(0xf000,0x0800), two(0xffc0,0xfbff), "*l38", m68030 }, -{"pmove", two(0xf000,0x0a00), two(0xffc0,0xfbff), "38%s", m68030 }, - -{"pmovefd", two(0xf000, 0x4100), two(0xffc0, 0xe3ff), "*l08", m68030 }, -{"pmovefd", two(0xf000, 0x4100), two(0xffc0, 0xe3ff), "|sW8", m68030 }, -{"pmovefd", two(0xf000, 0x0900), two(0xffc0, 0xfbff), "*l38", m68030 }, - -{"prestore", one(0xf140), one(0xffc0), "s", m68851 }, - -{"psac", two(0xf040, 0x0007), two(0xffc0, 0xffff), "$s", m68851 }, -{"psas", two(0xf040, 0x0006), two(0xffc0, 0xffff), "$s", m68851 }, -{"psbc", two(0xf040, 0x0001), two(0xffc0, 0xffff), "$s", m68851 }, -{"psbs", two(0xf040, 0x0000), two(0xffc0, 0xffff), "$s", m68851 }, -{"pscc", two(0xf040, 0x000f), two(0xffc0, 0xffff), "$s", m68851 }, -{"pscs", two(0xf040, 0x000e), two(0xffc0, 0xffff), "$s", m68851 }, -{"psgc", two(0xf040, 0x000d), two(0xffc0, 0xffff), "$s", m68851 }, -{"psgs", two(0xf040, 0x000c), two(0xffc0, 0xffff), "$s", m68851 }, -{"psic", two(0xf040, 0x000b), two(0xffc0, 0xffff), "$s", m68851 }, -{"psis", two(0xf040, 0x000a), two(0xffc0, 0xffff), "$s", m68851 }, -{"pslc", two(0xf040, 0x0003), two(0xffc0, 0xffff), "$s", m68851 }, -{"psls", two(0xf040, 0x0002), two(0xffc0, 0xffff), "$s", m68851 }, -{"pssc", two(0xf040, 0x0005), two(0xffc0, 0xffff), "$s", m68851 }, -{"psss", two(0xf040, 0x0004), two(0xffc0, 0xffff), "$s", m68851 }, -{"pswc", two(0xf040, 0x0009), two(0xffc0, 0xffff), "$s", m68851 }, -{"psws", two(0xf040, 0x0008), two(0xffc0, 0xffff), "$s", m68851 }, - -{"ptestr", two(0xf000,0x8210), two(0xffc0, 0xe3f0), "T3&st8", m68030|m68851 }, -{"ptestr", two(0xf000,0x8310), two(0xffc0,0xe310), "T3&st8A9", m68030|m68851 }, -{"ptestr", two(0xf000,0x8208), two(0xffc0,0xe3f8), "D3&st8", m68030|m68851 }, -{"ptestr", two(0xf000,0x8308), two(0xffc0,0xe318), "D3&st8A9", m68030|m68851 }, -{"ptestr", two(0xf000,0x8200), two(0xffc0,0xe3fe), "f3&st8", m68030|m68851 }, -{"ptestr", two(0xf000,0x8300), two(0xffc0,0xe31e), "f3&st8A9", m68030|m68851 }, -{"ptestr", one(0xf568), one(0xfff8), "as", m68040 }, - -{"ptestw", two(0xf000,0x8010), two(0xffc0,0xe3f0), "T3&st8", m68030|m68851 }, -{"ptestw", two(0xf000,0x8110), two(0xffc0,0xe310), "T3&st8A9", m68030|m68851 }, -{"ptestw", two(0xf000,0x8008), two(0xffc0,0xe3f8), "D3&st8", m68030|m68851 }, -{"ptestw", two(0xf000,0x8108), two(0xffc0,0xe318), "D3&st8A9", m68030|m68851 }, -{"ptestw", two(0xf000,0x8000), two(0xffc0,0xe3fe), "f3&st8", m68030|m68851 }, -{"ptestw", two(0xf000,0x8100), two(0xffc0,0xe31e), "f3&st8A9", m68030|m68851 }, -{"ptestw", one(0xf548), one(0xfff8), "as", m68040 }, - -{"ptrapacw", two(0xf07a, 0x0007), two(0xffff, 0xffff), "#w", m68851 }, -{"ptrapacl", two(0xf07b, 0x0007), two(0xffff, 0xffff), "#l", m68851 }, -{"ptrapac", two(0xf07c, 0x0007), two(0xffff, 0xffff), "", m68851 }, - -{"ptrapasw", two(0xf07a, 0x0006), two(0xffff, 0xffff), "#w", m68851 }, -{"ptrapasl", two(0xf07b, 0x0006), two(0xffff, 0xffff), "#l", m68851 }, -{"ptrapas", two(0xf07c, 0x0006), two(0xffff, 0xffff), "", m68851 }, - -{"ptrapbcw", two(0xf07a, 0x0001), two(0xffff, 0xffff), "#w", m68851 }, -{"ptrapbcl", two(0xf07b, 0x0001), two(0xffff, 0xffff), "#l", m68851 }, -{"ptrapbc", two(0xf07c, 0x0001), two(0xffff, 0xffff), "", m68851 }, - -{"ptrapbsw", two(0xf07a, 0x0000), two(0xffff, 0xffff), "#w", m68851 }, -{"ptrapbsl", two(0xf07b, 0x0000), two(0xffff, 0xffff), "#l", m68851 }, -{"ptrapbs", two(0xf07c, 0x0000), two(0xffff, 0xffff), "", m68851 }, - -{"ptrapccw", two(0xf07a, 0x000f), two(0xffff, 0xffff), "#w", m68851 }, -{"ptrapccl", two(0xf07b, 0x000f), two(0xffff, 0xffff), "#l", m68851 }, -{"ptrapcc", two(0xf07c, 0x000f), two(0xffff, 0xffff), "", m68851 }, - -{"ptrapcsw", two(0xf07a, 0x000e), two(0xffff, 0xffff), "#w", m68851 }, -{"ptrapcsl", two(0xf07b, 0x000e), two(0xffff, 0xffff), "#l", m68851 }, -{"ptrapcs", two(0xf07c, 0x000e), two(0xffff, 0xffff), "", m68851 }, - -{"ptrapgcw", two(0xf07a, 0x000d), two(0xffff, 0xffff), "#w", m68851 }, -{"ptrapgcl", two(0xf07b, 0x000d), two(0xffff, 0xffff), "#l", m68851 }, -{"ptrapgc", two(0xf07c, 0x000d), two(0xffff, 0xffff), "", m68851 }, - -{"ptrapgsw", two(0xf07a, 0x000c), two(0xffff, 0xffff), "#w", m68851 }, -{"ptrapgsl", two(0xf07b, 0x000c), two(0xffff, 0xffff), "#l", m68851 }, -{"ptrapgs", two(0xf07c, 0x000c), two(0xffff, 0xffff), "", m68851 }, - -{"ptrapicw", two(0xf07a, 0x000b), two(0xffff, 0xffff), "#w", m68851 }, -{"ptrapicl", two(0xf07b, 0x000b), two(0xffff, 0xffff), "#l", m68851 }, -{"ptrapic", two(0xf07c, 0x000b), two(0xffff, 0xffff), "", m68851 }, - -{"ptrapisw", two(0xf07a, 0x000a), two(0xffff, 0xffff), "#w", m68851 }, -{"ptrapisl", two(0xf07b, 0x000a), two(0xffff, 0xffff), "#l", m68851 }, -{"ptrapis", two(0xf07c, 0x000a), two(0xffff, 0xffff), "", m68851 }, - -{"ptraplcw", two(0xf07a, 0x0003), two(0xffff, 0xffff), "#w", m68851 }, -{"ptraplcl", two(0xf07b, 0x0003), two(0xffff, 0xffff), "#l", m68851 }, -{"ptraplc", two(0xf07c, 0x0003), two(0xffff, 0xffff), "", m68851 }, - -{"ptraplsw", two(0xf07a, 0x0002), two(0xffff, 0xffff), "#w", m68851 }, -{"ptraplsl", two(0xf07b, 0x0002), two(0xffff, 0xffff), "#l", m68851 }, -{"ptrapls", two(0xf07c, 0x0002), two(0xffff, 0xffff), "", m68851 }, - -{"ptrapscw", two(0xf07a, 0x0005), two(0xffff, 0xffff), "#w", m68851 }, -{"ptrapscl", two(0xf07b, 0x0005), two(0xffff, 0xffff), "#l", m68851 }, -{"ptrapsc", two(0xf07c, 0x0005), two(0xffff, 0xffff), "", m68851 }, - -{"ptrapssw", two(0xf07a, 0x0004), two(0xffff, 0xffff), "#w", m68851 }, -{"ptrapssl", two(0xf07b, 0x0004), two(0xffff, 0xffff), "#l", m68851 }, -{"ptrapss", two(0xf07c, 0x0004), two(0xffff, 0xffff), "", m68851 }, - -{"ptrapwcw", two(0xf07a, 0x0009), two(0xffff, 0xffff), "#w", m68851 }, -{"ptrapwcl", two(0xf07b, 0x0009), two(0xffff, 0xffff), "#l", m68851 }, -{"ptrapwc", two(0xf07c, 0x0009), two(0xffff, 0xffff), "", m68851 }, - -{"ptrapwsw", two(0xf07a, 0x0008), two(0xffff, 0xffff), "#w", m68851 }, -{"ptrapwsl", two(0xf07b, 0x0008), two(0xffff, 0xffff), "#l", m68851 }, -{"ptrapws", two(0xf07c, 0x0008), two(0xffff, 0xffff), "", m68851 }, +{"orb", 4, one(0000000), one(0177700), "#b$s", m68000up }, +{"orb", 4, one(0000074), one(0177777), "#bCs", m68000up }, +{"orb", 2, one(0100000), one(0170700), ";bDd", m68000up }, +{"orb", 2, one(0100400), one(0170700), "Dd~s", m68000up }, +{"orw", 4, one(0000100), one(0177700), "#w$s", m68000up }, +{"orw", 4, one(0000174), one(0177777), "#wSs", m68000up }, +{"orw", 2, one(0100100), one(0170700), ";wDd", m68000up }, +{"orw", 2, one(0100500), one(0170700), "Dd~s", m68000up }, +{"orl", 6, one(0000200), one(0177700), "#l$s", m68000up }, +{"orl", 6, one(0000200), one(0177700), "#lDs", mcfisa_a }, +{"orl", 2, one(0100200), one(0170700), ";lDd", m68000up | mcfisa_a }, +{"orl", 2, one(0100600), one(0170700), "Dd~s", m68000up | mcfisa_a }, +{"or", 4, one(0000074), one(0177777), "#bCs", m68000up }, +{"or", 4, one(0000100), one(0177700), "#w$s", m68000up }, +{"or", 4, one(0000174), one(0177777), "#wSs", m68000up }, +{"or", 2, one(0100100), one(0170700), ";wDd", m68000up }, +{"or", 2, one(0100500), one(0170700), "Dd~s", m68000up }, + +{"pack", 4, one(0100500), one(0170770), "DsDd#w", m68020up }, +{"pack", 4, one(0100510), one(0170770), "-s-d#w", m68020up }, + +{"pbac", 2, one(0xf087), one(0xffbf), "Bc", m68851 }, +{"pbacw", 2, one(0xf087), one(0xffff), "BW", m68851 }, +{"pbas", 2, one(0xf086), one(0xffbf), "Bc", m68851 }, +{"pbasw", 2, one(0xf086), one(0xffff), "BW", m68851 }, +{"pbbc", 2, one(0xf081), one(0xffbf), "Bc", m68851 }, +{"pbbcw", 2, one(0xf081), one(0xffff), "BW", m68851 }, +{"pbbs", 2, one(0xf080), one(0xffbf), "Bc", m68851 }, +{"pbbsw", 2, one(0xf080), one(0xffff), "BW", m68851 }, +{"pbcc", 2, one(0xf08f), one(0xffbf), "Bc", m68851 }, +{"pbccw", 2, one(0xf08f), one(0xffff), "BW", m68851 }, +{"pbcs", 2, one(0xf08e), one(0xffbf), "Bc", m68851 }, +{"pbcsw", 2, one(0xf08e), one(0xffff), "BW", m68851 }, +{"pbgc", 2, one(0xf08d), one(0xffbf), "Bc", m68851 }, +{"pbgcw", 2, one(0xf08d), one(0xffff), "BW", m68851 }, +{"pbgs", 2, one(0xf08c), one(0xffbf), "Bc", m68851 }, +{"pbgsw", 2, one(0xf08c), one(0xffff), "BW", m68851 }, +{"pbic", 2, one(0xf08b), one(0xffbf), "Bc", m68851 }, +{"pbicw", 2, one(0xf08b), one(0xffff), "BW", m68851 }, +{"pbis", 2, one(0xf08a), one(0xffbf), "Bc", m68851 }, +{"pbisw", 2, one(0xf08a), one(0xffff), "BW", m68851 }, +{"pblc", 2, one(0xf083), one(0xffbf), "Bc", m68851 }, +{"pblcw", 2, one(0xf083), one(0xffff), "BW", m68851 }, +{"pbls", 2, one(0xf082), one(0xffbf), "Bc", m68851 }, +{"pblsw", 2, one(0xf082), one(0xffff), "BW", m68851 }, +{"pbsc", 2, one(0xf085), one(0xffbf), "Bc", m68851 }, +{"pbscw", 2, one(0xf085), one(0xffff), "BW", m68851 }, +{"pbss", 2, one(0xf084), one(0xffbf), "Bc", m68851 }, +{"pbssw", 2, one(0xf084), one(0xffff), "BW", m68851 }, +{"pbwc", 2, one(0xf089), one(0xffbf), "Bc", m68851 }, +{"pbwcw", 2, one(0xf089), one(0xffff), "BW", m68851 }, +{"pbws", 2, one(0xf088), one(0xffbf), "Bc", m68851 }, +{"pbwsw", 2, one(0xf088), one(0xffff), "BW", m68851 }, + +{"pdbac", 4, two(0xf048, 0x0007), two(0xfff8, 0xffff), "DsBw", m68851 }, +{"pdbas", 4, two(0xf048, 0x0006), two(0xfff8, 0xffff), "DsBw", m68851 }, +{"pdbbc", 4, two(0xf048, 0x0001), two(0xfff8, 0xffff), "DsBw", m68851 }, +{"pdbbs", 4, two(0xf048, 0x0000), two(0xfff8, 0xffff), "DsBw", m68851 }, +{"pdbcc", 4, two(0xf048, 0x000f), two(0xfff8, 0xffff), "DsBw", m68851 }, +{"pdbcs", 4, two(0xf048, 0x000e), two(0xfff8, 0xffff), "DsBw", m68851 }, +{"pdbgc", 4, two(0xf048, 0x000d), two(0xfff8, 0xffff), "DsBw", m68851 }, +{"pdbgs", 4, two(0xf048, 0x000c), two(0xfff8, 0xffff), "DsBw", m68851 }, +{"pdbic", 4, two(0xf048, 0x000b), two(0xfff8, 0xffff), "DsBw", m68851 }, +{"pdbis", 4, two(0xf048, 0x000a), two(0xfff8, 0xffff), "DsBw", m68851 }, +{"pdblc", 4, two(0xf048, 0x0003), two(0xfff8, 0xffff), "DsBw", m68851 }, +{"pdbls", 4, two(0xf048, 0x0002), two(0xfff8, 0xffff), "DsBw", m68851 }, +{"pdbsc", 4, two(0xf048, 0x0005), two(0xfff8, 0xffff), "DsBw", m68851 }, +{"pdbss", 4, two(0xf048, 0x0004), two(0xfff8, 0xffff), "DsBw", m68851 }, +{"pdbwc", 4, two(0xf048, 0x0009), two(0xfff8, 0xffff), "DsBw", m68851 }, +{"pdbws", 4, two(0xf048, 0x0008), two(0xfff8, 0xffff), "DsBw", m68851 }, + +{"pea", 2, one(0044100), one(0177700), "!s", m68000up|mcfisa_a }, + +{"pflusha", 2, one(0xf518), one(0xfff8), "", m68040up }, +{"pflusha", 4, two(0xf000,0x2400), two(0xffff,0xffff), "", m68030 | m68851 }, + +{"pflush", 4, two(0xf000,0x3010), two(0xffc0,0xfe10), "T3T9", m68030|m68851 }, +{"pflush", 4, two(0xf000,0x3810), two(0xffc0,0xfe10), "T3T9&s", m68030|m68851 }, +{"pflush", 4, two(0xf000,0x3008), two(0xffc0,0xfe18), "D3T9", m68030|m68851 }, +{"pflush", 4, two(0xf000,0x3808), two(0xffc0,0xfe18), "D3T9&s", m68030|m68851 }, +{"pflush", 4, two(0xf000,0x3000), two(0xffc0,0xfe1e), "f3T9", m68030|m68851 }, +{"pflush", 4, two(0xf000,0x3800), two(0xffc0,0xfe1e), "f3T9&s", m68030|m68851 }, +{"pflush", 2, one(0xf508), one(0xfff8), "as", m68040up }, +{"pflush", 2, one(0xf508), one(0xfff8), "As", m68040up }, + +{"pflushan", 2, one(0xf510), one(0xfff8), "", m68040up }, +{"pflushn", 2, one(0xf500), one(0xfff8), "as", m68040up }, +{"pflushn", 2, one(0xf500), one(0xfff8), "As", m68040up }, + +{"pflushr", 4, two(0xf000, 0xa000), two(0xffc0, 0xffff), "|s", m68851 }, + +{"pflushs", 4, two(0xf000, 0x3410), two(0xfff8, 0xfe10), "T3T9", m68851 }, +{"pflushs", 4, two(0xf000, 0x3c10), two(0xfff8, 0xfe10), "T3T9&s", m68851 }, +{"pflushs", 4, two(0xf000, 0x3408), two(0xfff8, 0xfe18), "D3T9", m68851 }, +{"pflushs", 4, two(0xf000, 0x3c08), two(0xfff8, 0xfe18), "D3T9&s", m68851 }, +{"pflushs", 4, two(0xf000, 0x3400), two(0xfff8, 0xfe1e), "f3T9", m68851 }, +{"pflushs", 4, two(0xf000, 0x3c00), two(0xfff8, 0xfe1e), "f3T9&s", m68851 }, + +{"ploadr", 4, two(0xf000,0x2210), two(0xffc0,0xfff0), "T3&s", m68030|m68851 }, +{"ploadr", 4, two(0xf000,0x2208), two(0xffc0,0xfff8), "D3&s", m68030|m68851 }, +{"ploadr", 4, two(0xf000,0x2200), two(0xffc0,0xfffe), "f3&s", m68030|m68851 }, +{"ploadw", 4, two(0xf000,0x2010), two(0xffc0,0xfff0), "T3&s", m68030|m68851 }, +{"ploadw", 4, two(0xf000,0x2008), two(0xffc0,0xfff8), "D3&s", m68030|m68851 }, +{"ploadw", 4, two(0xf000,0x2000), two(0xffc0,0xfffe), "f3&s", m68030|m68851 }, + +{"plpar", 2, one(0xf5c8), one(0xfff8), "as", m68060 }, +{"plpaw", 2, one(0xf588), one(0xfff8), "as", m68060 }, + +{"pmove", 4, two(0xf000,0x4000), two(0xffc0,0xffff), "*l08", m68030|m68851 }, +{"pmove", 4, two(0xf000,0x5c00), two(0xffc0,0xffff), "*w18", m68851 }, +{"pmove", 4, two(0xf000,0x4000), two(0xffc0,0xe3ff), "*b28", m68851 }, +{"pmove", 4, two(0xf000,0x4200), two(0xffc0,0xffff), "08%s", m68030|m68851 }, +{"pmove", 4, two(0xf000,0x5e00), two(0xffc0,0xffff), "18%s", m68851 }, +{"pmove", 4, two(0xf000,0x4200), two(0xffc0,0xe3ff), "28%s", m68851 }, +{"pmove", 4, two(0xf000,0x4000), two(0xffc0,0xe3ff), "|sW8", m68030|m68851 }, +{"pmove", 4, two(0xf000,0x4200), two(0xffc0,0xe3ff), "W8~s", m68030|m68851 }, +{"pmove", 4, two(0xf000,0x6200), two(0xffc0,0xe3e3), "*wX3", m68851 }, +{"pmove", 4, two(0xf000,0x6000), two(0xffc0,0xe3e3), "X3%s", m68851 }, +{"pmove", 4, two(0xf000,0x6000), two(0xffc0,0xffff), "*wY8", m68030|m68851 }, +{"pmove", 4, two(0xf000,0x6200), two(0xffc0,0xffff), "Y8%s", m68030|m68851 }, +{"pmove", 4, two(0xf000,0x6600), two(0xffc0,0xffff), "Z8%s", m68851 }, +{"pmove", 4, two(0xf000,0x0800), two(0xffc0,0xfbff), "*l38", m68030 }, +{"pmove", 4, two(0xf000,0x0a00), two(0xffc0,0xfbff), "38%s", m68030 }, + +{"pmovefd", 4, two(0xf000, 0x4100), two(0xffc0, 0xe3ff), "*l08", m68030 }, +{"pmovefd", 4, two(0xf000, 0x4100), two(0xffc0, 0xe3ff), "|sW8", m68030 }, +{"pmovefd", 4, two(0xf000, 0x0900), two(0xffc0, 0xfbff), "*l38", m68030 }, + +{"prestore", 2, one(0xf140), one(0xffc0), "s", m68851 }, + +{"psac", 4, two(0xf040, 0x0007), two(0xffc0, 0xffff), "$s", m68851 }, +{"psas", 4, two(0xf040, 0x0006), two(0xffc0, 0xffff), "$s", m68851 }, +{"psbc", 4, two(0xf040, 0x0001), two(0xffc0, 0xffff), "$s", m68851 }, +{"psbs", 4, two(0xf040, 0x0000), two(0xffc0, 0xffff), "$s", m68851 }, +{"pscc", 4, two(0xf040, 0x000f), two(0xffc0, 0xffff), "$s", m68851 }, +{"pscs", 4, two(0xf040, 0x000e), two(0xffc0, 0xffff), "$s", m68851 }, +{"psgc", 4, two(0xf040, 0x000d), two(0xffc0, 0xffff), "$s", m68851 }, +{"psgs", 4, two(0xf040, 0x000c), two(0xffc0, 0xffff), "$s", m68851 }, +{"psic", 4, two(0xf040, 0x000b), two(0xffc0, 0xffff), "$s", m68851 }, +{"psis", 4, two(0xf040, 0x000a), two(0xffc0, 0xffff), "$s", m68851 }, +{"pslc", 4, two(0xf040, 0x0003), two(0xffc0, 0xffff), "$s", m68851 }, +{"psls", 4, two(0xf040, 0x0002), two(0xffc0, 0xffff), "$s", m68851 }, +{"pssc", 4, two(0xf040, 0x0005), two(0xffc0, 0xffff), "$s", m68851 }, +{"psss", 4, two(0xf040, 0x0004), two(0xffc0, 0xffff), "$s", m68851 }, +{"pswc", 4, two(0xf040, 0x0009), two(0xffc0, 0xffff), "$s", m68851 }, +{"psws", 4, two(0xf040, 0x0008), two(0xffc0, 0xffff), "$s", m68851 }, + +{"ptestr", 4, two(0xf000,0x8210), two(0xffc0, 0xe3f0), "T3&st8", m68030|m68851 }, +{"ptestr", 4, two(0xf000,0x8310), two(0xffc0,0xe310), "T3&st8A9", m68030|m68851 }, +{"ptestr", 4, two(0xf000,0x8208), two(0xffc0,0xe3f8), "D3&st8", m68030|m68851 }, +{"ptestr", 4, two(0xf000,0x8308), two(0xffc0,0xe318), "D3&st8A9", m68030|m68851 }, +{"ptestr", 4, two(0xf000,0x8200), two(0xffc0,0xe3fe), "f3&st8", m68030|m68851 }, +{"ptestr", 4, two(0xf000,0x8300), two(0xffc0,0xe31e), "f3&st8A9", m68030|m68851 }, +{"ptestr", 2, one(0xf568), one(0xfff8), "as", m68040 }, + +{"ptestw", 4, two(0xf000,0x8010), two(0xffc0,0xe3f0), "T3&st8", m68030|m68851 }, +{"ptestw", 4, two(0xf000,0x8110), two(0xffc0,0xe310), "T3&st8A9", m68030|m68851 }, +{"ptestw", 4, two(0xf000,0x8008), two(0xffc0,0xe3f8), "D3&st8", m68030|m68851 }, +{"ptestw", 4, two(0xf000,0x8108), two(0xffc0,0xe318), "D3&st8A9", m68030|m68851 }, +{"ptestw", 4, two(0xf000,0x8000), two(0xffc0,0xe3fe), "f3&st8", m68030|m68851 }, +{"ptestw", 4, two(0xf000,0x8100), two(0xffc0,0xe31e), "f3&st8A9", m68030|m68851 }, +{"ptestw", 2, one(0xf548), one(0xfff8), "as", m68040 }, + +{"ptrapacw", 6, two(0xf07a, 0x0007), two(0xffff, 0xffff), "#w", m68851 }, +{"ptrapacl", 6, two(0xf07b, 0x0007), two(0xffff, 0xffff), "#l", m68851 }, +{"ptrapac", 4, two(0xf07c, 0x0007), two(0xffff, 0xffff), "", m68851 }, + +{"ptrapasw", 6, two(0xf07a, 0x0006), two(0xffff, 0xffff), "#w", m68851 }, +{"ptrapasl", 6, two(0xf07b, 0x0006), two(0xffff, 0xffff), "#l", m68851 }, +{"ptrapas", 4, two(0xf07c, 0x0006), two(0xffff, 0xffff), "", m68851 }, + +{"ptrapbcw", 6, two(0xf07a, 0x0001), two(0xffff, 0xffff), "#w", m68851 }, +{"ptrapbcl", 6, two(0xf07b, 0x0001), two(0xffff, 0xffff), "#l", m68851 }, +{"ptrapbc", 4, two(0xf07c, 0x0001), two(0xffff, 0xffff), "", m68851 }, + +{"ptrapbsw", 6, two(0xf07a, 0x0000), two(0xffff, 0xffff), "#w", m68851 }, +{"ptrapbsl", 6, two(0xf07b, 0x0000), two(0xffff, 0xffff), "#l", m68851 }, +{"ptrapbs", 4, two(0xf07c, 0x0000), two(0xffff, 0xffff), "", m68851 }, + +{"ptrapccw", 6, two(0xf07a, 0x000f), two(0xffff, 0xffff), "#w", m68851 }, +{"ptrapccl", 6, two(0xf07b, 0x000f), two(0xffff, 0xffff), "#l", m68851 }, +{"ptrapcc", 4, two(0xf07c, 0x000f), two(0xffff, 0xffff), "", m68851 }, + +{"ptrapcsw", 6, two(0xf07a, 0x000e), two(0xffff, 0xffff), "#w", m68851 }, +{"ptrapcsl", 6, two(0xf07b, 0x000e), two(0xffff, 0xffff), "#l", m68851 }, +{"ptrapcs", 4, two(0xf07c, 0x000e), two(0xffff, 0xffff), "", m68851 }, + +{"ptrapgcw", 6, two(0xf07a, 0x000d), two(0xffff, 0xffff), "#w", m68851 }, +{"ptrapgcl", 6, two(0xf07b, 0x000d), two(0xffff, 0xffff), "#l", m68851 }, +{"ptrapgc", 4, two(0xf07c, 0x000d), two(0xffff, 0xffff), "", m68851 }, + +{"ptrapgsw", 6, two(0xf07a, 0x000c), two(0xffff, 0xffff), "#w", m68851 }, +{"ptrapgsl", 6, two(0xf07b, 0x000c), two(0xffff, 0xffff), "#l", m68851 }, +{"ptrapgs", 4, two(0xf07c, 0x000c), two(0xffff, 0xffff), "", m68851 }, + +{"ptrapicw", 6, two(0xf07a, 0x000b), two(0xffff, 0xffff), "#w", m68851 }, +{"ptrapicl", 6, two(0xf07b, 0x000b), two(0xffff, 0xffff), "#l", m68851 }, +{"ptrapic", 4, two(0xf07c, 0x000b), two(0xffff, 0xffff), "", m68851 }, + +{"ptrapisw", 6, two(0xf07a, 0x000a), two(0xffff, 0xffff), "#w", m68851 }, +{"ptrapisl", 6, two(0xf07b, 0x000a), two(0xffff, 0xffff), "#l", m68851 }, +{"ptrapis", 4, two(0xf07c, 0x000a), two(0xffff, 0xffff), "", m68851 }, + +{"ptraplcw", 6, two(0xf07a, 0x0003), two(0xffff, 0xffff), "#w", m68851 }, +{"ptraplcl", 6, two(0xf07b, 0x0003), two(0xffff, 0xffff), "#l", m68851 }, +{"ptraplc", 4, two(0xf07c, 0x0003), two(0xffff, 0xffff), "", m68851 }, + +{"ptraplsw", 6, two(0xf07a, 0x0002), two(0xffff, 0xffff), "#w", m68851 }, +{"ptraplsl", 6, two(0xf07b, 0x0002), two(0xffff, 0xffff), "#l", m68851 }, +{"ptrapls", 4, two(0xf07c, 0x0002), two(0xffff, 0xffff), "", m68851 }, + +{"ptrapscw", 6, two(0xf07a, 0x0005), two(0xffff, 0xffff), "#w", m68851 }, +{"ptrapscl", 6, two(0xf07b, 0x0005), two(0xffff, 0xffff), "#l", m68851 }, +{"ptrapsc", 4, two(0xf07c, 0x0005), two(0xffff, 0xffff), "", m68851 }, + +{"ptrapssw", 6, two(0xf07a, 0x0004), two(0xffff, 0xffff), "#w", m68851 }, +{"ptrapssl", 6, two(0xf07b, 0x0004), two(0xffff, 0xffff), "#l", m68851 }, +{"ptrapss", 4, two(0xf07c, 0x0004), two(0xffff, 0xffff), "", m68851 }, + +{"ptrapwcw", 6, two(0xf07a, 0x0009), two(0xffff, 0xffff), "#w", m68851 }, +{"ptrapwcl", 6, two(0xf07b, 0x0009), two(0xffff, 0xffff), "#l", m68851 }, +{"ptrapwc", 4, two(0xf07c, 0x0009), two(0xffff, 0xffff), "", m68851 }, + +{"ptrapwsw", 6, two(0xf07a, 0x0008), two(0xffff, 0xffff), "#w", m68851 }, +{"ptrapwsl", 6, two(0xf07b, 0x0008), two(0xffff, 0xffff), "#l", m68851 }, +{"ptrapws", 4, two(0xf07c, 0x0008), two(0xffff, 0xffff), "", m68851 }, -{"pulse", one(0045314), one(0177777), "", m68060 | mcf }, +{"pulse", 2, one(0045314), one(0177777), "", m68060 | mcfisa_a }, -{"pvalid", two(0xf000, 0x2800), two(0xffc0, 0xffff), "Vs&s", m68851 }, -{"pvalid", two(0xf000, 0x2c00), two(0xffc0, 0xfff8), "A3&s", m68851 }, +{"pvalid", 4, two(0xf000, 0x2800), two(0xffc0, 0xffff), "Vs&s", m68851 }, +{"pvalid", 4, two(0xf000, 0x2c00), two(0xffc0, 0xfff8), "A3&s", m68851 }, /* FIXME: don't allow Dw==Dx. */ -{"remsl", two(0x4c40, 0x0800), two(0xffc0, 0x8ff8), "qsD3D1", mcf5206eup }, -{"remul", two(0x4c40, 0x0000), two(0xffc0, 0x8ff8), "qsD3D1", mcf5206eup }, +{"remsl", 4, two(0x4c40, 0x0800), two(0xffc0, 0x8ff8), "qsD3D1", mcfhwdiv }, +{"remul", 4, two(0x4c40, 0x0000), two(0xffc0, 0x8ff8), "qsD3D1", mcfhwdiv }, -{"reset", one(0047160), one(0177777), "", m68000up }, +{"reset", 2, one(0047160), one(0177777), "", m68000up }, -{"rolb", one(0160430), one(0170770), "QdDs", m68000up }, -{"rolb", one(0160470), one(0170770), "DdDs", m68000up }, -{"rolw", one(0160530), one(0170770), "QdDs", m68000up }, -{"rolw", one(0160570), one(0170770), "DdDs", m68000up }, -{"rolw", one(0163700), one(0177700), "~s", m68000up }, -{"roll", one(0160630), one(0170770), "QdDs", m68000up }, -{"roll", one(0160670), one(0170770), "DdDs", m68000up }, - -{"rorb", one(0160030), one(0170770), "QdDs", m68000up }, -{"rorb", one(0160070), one(0170770), "DdDs", m68000up }, -{"rorw", one(0160130), one(0170770), "QdDs", m68000up }, -{"rorw", one(0160170), one(0170770), "DdDs", m68000up }, -{"rorw", one(0163300), one(0177700), "~s", m68000up }, -{"rorl", one(0160230), one(0170770), "QdDs", m68000up }, -{"rorl", one(0160270), one(0170770), "DdDs", m68000up }, - -{"roxlb", one(0160420), one(0170770), "QdDs", m68000up }, -{"roxlb", one(0160460), one(0170770), "DdDs", m68000up }, -{"roxlw", one(0160520), one(0170770), "QdDs", m68000up }, -{"roxlw", one(0160560), one(0170770), "DdDs", m68000up }, -{"roxlw", one(0162700), one(0177700), "~s", m68000up }, -{"roxll", one(0160620), one(0170770), "QdDs", m68000up }, -{"roxll", one(0160660), one(0170770), "DdDs", m68000up }, - -{"roxrb", one(0160020), one(0170770), "QdDs", m68000up }, -{"roxrb", one(0160060), one(0170770), "DdDs", m68000up }, -{"roxrw", one(0160120), one(0170770), "QdDs", m68000up }, -{"roxrw", one(0160160), one(0170770), "DdDs", m68000up }, -{"roxrw", one(0162300), one(0177700), "~s", m68000up }, -{"roxrl", one(0160220), one(0170770), "QdDs", m68000up }, -{"roxrl", one(0160260), one(0170770), "DdDs", m68000up }, - -{"rtd", one(0047164), one(0177777), "#w", m68010up }, - -{"rte", one(0047163), one(0177777), "", m68000up | mcf }, - -{"rtm", one(0003300), one(0177760), "Rs", m68020 }, - -{"rtr", one(0047167), one(0177777), "", m68000up }, - -{"rts", one(0047165), one(0177777), "", m68000up | mcf }, - -{"satsl", one(0046200), one(0177770), "Ds", mcfv4up }, - -{"sbcd", one(0100400), one(0170770), "DsDd", m68000up }, -{"sbcd", one(0100410), one(0170770), "-s-d", m68000up }, - -{"scc", one(0052300), one(0177700), "$s", m68000up }, -{"scc", one(0052300), one(0177700), "Ds", mcf }, -{"scs", one(0052700), one(0177700), "$s", m68000up }, -{"scs", one(0052700), one(0177700), "Ds", mcf }, -{"seq", one(0053700), one(0177700), "$s", m68000up }, -{"seq", one(0053700), one(0177700), "Ds", mcf }, -{"sf", one(0050700), one(0177700), "$s", m68000up }, -{"sf", one(0050700), one(0177700), "Ds", mcf }, -{"sge", one(0056300), one(0177700), "$s", m68000up }, -{"sge", one(0056300), one(0177700), "Ds", mcf }, -{"sgt", one(0057300), one(0177700), "$s", m68000up }, -{"sgt", one(0057300), one(0177700), "Ds", mcf }, -{"shi", one(0051300), one(0177700), "$s", m68000up }, -{"shi", one(0051300), one(0177700), "Ds", mcf }, -{"sle", one(0057700), one(0177700), "$s", m68000up }, -{"sle", one(0057700), one(0177700), "Ds", mcf }, -{"sls", one(0051700), one(0177700), "$s", m68000up }, -{"sls", one(0051700), one(0177700), "Ds", mcf }, -{"slt", one(0056700), one(0177700), "$s", m68000up }, -{"slt", one(0056700), one(0177700), "Ds", mcf }, -{"smi", one(0055700), one(0177700), "$s", m68000up }, -{"smi", one(0055700), one(0177700), "Ds", mcf }, -{"sne", one(0053300), one(0177700), "$s", m68000up }, -{"sne", one(0053300), one(0177700), "Ds", mcf }, -{"spl", one(0055300), one(0177700), "$s", m68000up }, -{"spl", one(0055300), one(0177700), "Ds", mcf }, -{"st", one(0050300), one(0177700), "$s", m68000up }, -{"st", one(0050300), one(0177700), "Ds", mcf }, -{"svc", one(0054300), one(0177700), "$s", m68000up }, -{"svc", one(0054300), one(0177700), "Ds", mcf }, -{"svs", one(0054700), one(0177700), "$s", m68000up }, -{"svs", one(0054700), one(0177700), "Ds", mcf }, - -{"stop", one(0047162), one(0177777), "#w", m68000up | mcf }, - -{"strldsr", two(0040347,0043374), two(0177777,0177777), "#w", mcf528x}, - -{"subal", one(0110700), one(0170700), "*lAd", m68000up | mcf }, -{"subaw", one(0110300), one(0170700), "*wAd", m68000up }, - -{"subib", one(0002000), one(0177700), "#b$s", m68000up }, -{"subiw", one(0002100), one(0177700), "#w$s", m68000up }, -{"subil", one(0002200), one(0177700), "#l$s", m68000up }, -{"subil", one(0002200), one(0177700), "#lDs", mcf }, - -{"subqb", one(0050400), one(0170700), "Qd%s", m68000up }, -{"subqw", one(0050500), one(0170700), "Qd%s", m68000up }, -{"subql", one(0050600), one(0170700), "Qd%s", m68000up | mcf }, +{"rolb", 2, one(0160430), one(0170770), "QdDs", m68000up }, +{"rolb", 2, one(0160470), one(0170770), "DdDs", m68000up }, +{"rolw", 2, one(0160530), one(0170770), "QdDs", m68000up }, +{"rolw", 2, one(0160570), one(0170770), "DdDs", m68000up }, +{"rolw", 2, one(0163700), one(0177700), "~s", m68000up }, +{"roll", 2, one(0160630), one(0170770), "QdDs", m68000up }, +{"roll", 2, one(0160670), one(0170770), "DdDs", m68000up }, + +{"rorb", 2, one(0160030), one(0170770), "QdDs", m68000up }, +{"rorb", 2, one(0160070), one(0170770), "DdDs", m68000up }, +{"rorw", 2, one(0160130), one(0170770), "QdDs", m68000up }, +{"rorw", 2, one(0160170), one(0170770), "DdDs", m68000up }, +{"rorw", 2, one(0163300), one(0177700), "~s", m68000up }, +{"rorl", 2, one(0160230), one(0170770), "QdDs", m68000up }, +{"rorl", 2, one(0160270), one(0170770), "DdDs", m68000up }, + +{"roxlb", 2, one(0160420), one(0170770), "QdDs", m68000up }, +{"roxlb", 2, one(0160460), one(0170770), "DdDs", m68000up }, +{"roxlw", 2, one(0160520), one(0170770), "QdDs", m68000up }, +{"roxlw", 2, one(0160560), one(0170770), "DdDs", m68000up }, +{"roxlw", 2, one(0162700), one(0177700), "~s", m68000up }, +{"roxll", 2, one(0160620), one(0170770), "QdDs", m68000up }, +{"roxll", 2, one(0160660), one(0170770), "DdDs", m68000up }, + +{"roxrb", 2, one(0160020), one(0170770), "QdDs", m68000up }, +{"roxrb", 2, one(0160060), one(0170770), "DdDs", m68000up }, +{"roxrw", 2, one(0160120), one(0170770), "QdDs", m68000up }, +{"roxrw", 2, one(0160160), one(0170770), "DdDs", m68000up }, +{"roxrw", 2, one(0162300), one(0177700), "~s", m68000up }, +{"roxrl", 2, one(0160220), one(0170770), "QdDs", m68000up }, +{"roxrl", 2, one(0160260), one(0170770), "DdDs", m68000up }, + +{"rtd", 4, one(0047164), one(0177777), "#w", m68010up }, + +{"rte", 2, one(0047163), one(0177777), "", m68000up | mcfisa_a }, + +{"rtm", 2, one(0003300), one(0177760), "Rs", m68020 }, + +{"rtr", 2, one(0047167), one(0177777), "", m68000up }, + +{"rts", 2, one(0047165), one(0177777), "", m68000up | mcfisa_a }, + +{"satsl", 2, one(0046200), one(0177770), "Ds", mcfisa_b }, + +{"sbcd", 2, one(0100400), one(0170770), "DsDd", m68000up }, +{"sbcd", 2, one(0100410), one(0170770), "-s-d", m68000up }, + +{"scc", 2, one(0052300), one(0177700), "$s", m68000up }, +{"scc", 2, one(0052300), one(0177700), "Ds", mcfisa_a }, +{"scs", 2, one(0052700), one(0177700), "$s", m68000up }, +{"scs", 2, one(0052700), one(0177700), "Ds", mcfisa_a }, +{"seq", 2, one(0053700), one(0177700), "$s", m68000up }, +{"seq", 2, one(0053700), one(0177700), "Ds", mcfisa_a }, +{"sf", 2, one(0050700), one(0177700), "$s", m68000up }, +{"sf", 2, one(0050700), one(0177700), "Ds", mcfisa_a }, +{"sge", 2, one(0056300), one(0177700), "$s", m68000up }, +{"sge", 2, one(0056300), one(0177700), "Ds", mcfisa_a }, +{"sgt", 2, one(0057300), one(0177700), "$s", m68000up }, +{"sgt", 2, one(0057300), one(0177700), "Ds", mcfisa_a }, +{"shi", 2, one(0051300), one(0177700), "$s", m68000up }, +{"shi", 2, one(0051300), one(0177700), "Ds", mcfisa_a }, +{"sle", 2, one(0057700), one(0177700), "$s", m68000up }, +{"sle", 2, one(0057700), one(0177700), "Ds", mcfisa_a }, +{"sls", 2, one(0051700), one(0177700), "$s", m68000up }, +{"sls", 2, one(0051700), one(0177700), "Ds", mcfisa_a }, +{"slt", 2, one(0056700), one(0177700), "$s", m68000up }, +{"slt", 2, one(0056700), one(0177700), "Ds", mcfisa_a }, +{"smi", 2, one(0055700), one(0177700), "$s", m68000up }, +{"smi", 2, one(0055700), one(0177700), "Ds", mcfisa_a }, +{"sne", 2, one(0053300), one(0177700), "$s", m68000up }, +{"sne", 2, one(0053300), one(0177700), "Ds", mcfisa_a }, +{"spl", 2, one(0055300), one(0177700), "$s", m68000up }, +{"spl", 2, one(0055300), one(0177700), "Ds", mcfisa_a }, +{"st", 2, one(0050300), one(0177700), "$s", m68000up }, +{"st", 2, one(0050300), one(0177700), "Ds", mcfisa_a }, +{"svc", 2, one(0054300), one(0177700), "$s", m68000up }, +{"svc", 2, one(0054300), one(0177700), "Ds", mcfisa_a }, +{"svs", 2, one(0054700), one(0177700), "$s", m68000up }, +{"svs", 2, one(0054700), one(0177700), "Ds", mcfisa_a }, + +{"stop", 4, one(0047162), one(0177777), "#w", m68000up | mcfisa_a }, + +{"strldsr", 4, two(0040347,0043374), two(0177777,0177777), "#w", mcfisa_aa}, + +{"subal", 2, one(0110700), one(0170700), "*lAd", m68000up | mcfisa_a }, +{"subaw", 2, one(0110300), one(0170700), "*wAd", m68000up }, + +{"subib", 4, one(0002000), one(0177700), "#b$s", m68000up }, +{"subiw", 4, one(0002100), one(0177700), "#w$s", m68000up }, +{"subil", 6, one(0002200), one(0177700), "#l$s", m68000up }, +{"subil", 6, one(0002200), one(0177700), "#lDs", mcfisa_a }, + +{"subqb", 2, one(0050400), one(0170700), "Qd%s", m68000up }, +{"subqw", 2, one(0050500), one(0170700), "Qd%s", m68000up }, +{"subql", 2, one(0050600), one(0170700), "Qd%s", m68000up | mcfisa_a }, /* The sub opcode can generate the suba, subi, and subq instructions. */ -{"subb", one(0050400), one(0170700), "Qd%s", m68000up }, -{"subb", one(0002000), one(0177700), "#b$s", m68000up }, -{"subb", one(0110000), one(0170700), ";bDd", m68000up }, -{"subb", one(0110400), one(0170700), "Dd~s", m68000up }, -{"subw", one(0050500), one(0170700), "Qd%s", m68000up }, -{"subw", one(0002100), one(0177700), "#w$s", m68000up }, -{"subw", one(0110300), one(0170700), "*wAd", m68000up }, -{"subw", one(0110100), one(0170700), "*wDd", m68000up }, -{"subw", one(0110500), one(0170700), "Dd~s", m68000up }, -{"subl", one(0050600), one(0170700), "Qd%s", m68000up | mcf }, -{"subl", one(0002200), one(0177700), "#l$s", m68000up }, -{"subl", one(0002200), one(0177700), "#lDs", mcf }, -{"subl", one(0110700), one(0170700), "*lAd", m68000up | mcf }, -{"subl", one(0110200), one(0170700), "*lDd", m68000up | mcf }, -{"subl", one(0110600), one(0170700), "Dd~s", m68000up | mcf }, - -{"subxb", one(0110400), one(0170770), "DsDd", m68000up }, -{"subxb", one(0110410), one(0170770), "-s-d", m68000up }, -{"subxw", one(0110500), one(0170770), "DsDd", m68000up }, -{"subxw", one(0110510), one(0170770), "-s-d", m68000up }, -{"subxl", one(0110600), one(0170770), "DsDd", m68000up | mcf }, -{"subxl", one(0110610), one(0170770), "-s-d", m68000up }, +{"subb", 2, one(0050400), one(0170700), "Qd%s", m68000up }, +{"subb", 4, one(0002000), one(0177700), "#b$s", m68000up }, +{"subb", 2, one(0110000), one(0170700), ";bDd", m68000up }, +{"subb", 2, one(0110400), one(0170700), "Dd~s", m68000up }, +{"subw", 2, one(0050500), one(0170700), "Qd%s", m68000up }, +{"subw", 4, one(0002100), one(0177700), "#w$s", m68000up }, +{"subw", 2, one(0110300), one(0170700), "*wAd", m68000up }, +{"subw", 2, one(0110100), one(0170700), "*wDd", m68000up }, +{"subw", 2, one(0110500), one(0170700), "Dd~s", m68000up }, +{"subl", 2, one(0050600), one(0170700), "Qd%s", m68000up | mcfisa_a }, +{"subl", 6, one(0002200), one(0177700), "#l$s", m68000up }, +{"subl", 6, one(0002200), one(0177700), "#lDs", mcfisa_a }, +{"subl", 2, one(0110700), one(0170700), "*lAd", m68000up | mcfisa_a }, +{"subl", 2, one(0110200), one(0170700), "*lDd", m68000up | mcfisa_a }, +{"subl", 2, one(0110600), one(0170700), "Dd~s", m68000up | mcfisa_a }, + +{"subxb", 2, one(0110400), one(0170770), "DsDd", m68000up }, +{"subxb", 2, one(0110410), one(0170770), "-s-d", m68000up }, +{"subxw", 2, one(0110500), one(0170770), "DsDd", m68000up }, +{"subxw", 2, one(0110510), one(0170770), "-s-d", m68000up }, +{"subxl", 2, one(0110600), one(0170770), "DsDd", m68000up | mcfisa_a }, +{"subxl", 2, one(0110610), one(0170770), "-s-d", m68000up }, -{"swap", one(0044100), one(0177770), "Ds", m68000up | mcf }, +{"swap", 2, one(0044100), one(0177770), "Ds", m68000up | mcfisa_a }, /* swbeg and swbegl are magic constants used on sysV68. The compiler generates them before a switch table. They tell the debugger and @@ -2084,96 +2078,96 @@ const struct m68k_opcode m68k_opcodes[] number of elements in the table. swbeg means that the entries in the table are word (2 byte) sized, and swbegl means that the entries in the table are longword (4 byte) sized. */ -{"swbeg", one(0045374), one(0177777), "#w", m68000up | mcf }, -{"swbegl", one(0045375), one(0177777), "#l", m68000up | mcf }, +{"swbeg", 4, one(0045374), one(0177777), "#w", m68000up | mcfisa_a }, +{"swbegl", 6, one(0045375), one(0177777), "#l", m68000up | mcfisa_a }, -{"tas", one(0045300), one(0177700), "$s", m68000up | mcfv4up}, +{"tas", 2, one(0045300), one(0177700), "$s", m68000up | mcfisa_b}, -#define TBL1(name,signed,round,size) \ - {name, two(0174000, (signed<<11)|(!round<<10)|(size<<6)|0000400), \ +#define TBL1(name,insn_size,signed,round,size) \ + {name, insn_size, two(0174000, (signed<<11)|(!round<<10)|(size<<6)|0000400), \ two(0177700,0107777), "!sD1", cpu32 }, \ - {name, two(0174000, (signed<<11)|(!round<<10)|(size<<6)), \ + {name, insn_size, two(0174000, (signed<<11)|(!round<<10)|(size<<6)), \ two(0177770,0107770), "DsD3D1", cpu32 } #define TBL(name1, name2, name3, s, r) \ - TBL1(name1, s, r, 0), TBL1(name2, s, r, 1), TBL1(name3, s, r, 2) -TBL("tblsb", "tblsw", "tblsl", 1, 1), -TBL("tblsnb", "tblsnw", "tblsnl", 1, 0), + TBL1(name1, 4, s, r, 0), TBL1(name2, 4, s, r, 1), TBL1(name3, 4, s, r, 2) +TBL("tblsb", "tblsw", "tblsl", 2, 1), +TBL("tblsnb", "tblsnw", "tblsnl", 2, 0), TBL("tblub", "tbluw", "tblul", 0, 1), TBL("tblunb", "tblunw", "tblunl", 0, 0), -{"trap", one(0047100), one(0177760), "Ts", m68000up | mcf }, +{"trap", 2, one(0047100), one(0177760), "Ts", m68000up | mcfisa_a }, -{"trapcc", one(0052374), one(0177777), "", m68020up | cpu32 }, -{"trapcs", one(0052774), one(0177777), "", m68020up | cpu32 }, -{"trapeq", one(0053774), one(0177777), "", m68020up | cpu32 }, -{"trapf", one(0050774), one(0177777), "", m68020up | cpu32 | mcf }, -{"trapge", one(0056374), one(0177777), "", m68020up | cpu32 }, -{"trapgt", one(0057374), one(0177777), "", m68020up | cpu32 }, -{"traphi", one(0051374), one(0177777), "", m68020up | cpu32 }, -{"traple", one(0057774), one(0177777), "", m68020up | cpu32 }, -{"trapls", one(0051774), one(0177777), "", m68020up | cpu32 }, -{"traplt", one(0056774), one(0177777), "", m68020up | cpu32 }, -{"trapmi", one(0055774), one(0177777), "", m68020up | cpu32 }, -{"trapne", one(0053374), one(0177777), "", m68020up | cpu32 }, -{"trappl", one(0055374), one(0177777), "", m68020up | cpu32 }, -{"trapt", one(0050374), one(0177777), "", m68020up | cpu32 }, -{"trapvc", one(0054374), one(0177777), "", m68020up | cpu32 }, -{"trapvs", one(0054774), one(0177777), "", m68020up | cpu32 }, - -{"trapccw", one(0052372), one(0177777), "#w", m68020up|cpu32 }, -{"trapcsw", one(0052772), one(0177777), "#w", m68020up|cpu32 }, -{"trapeqw", one(0053772), one(0177777), "#w", m68020up|cpu32 }, -{"trapfw", one(0050772), one(0177777), "#w", m68020up|cpu32|mcf}, -{"trapgew", one(0056372), one(0177777), "#w", m68020up|cpu32 }, -{"trapgtw", one(0057372), one(0177777), "#w", m68020up|cpu32 }, -{"traphiw", one(0051372), one(0177777), "#w", m68020up|cpu32 }, -{"traplew", one(0057772), one(0177777), "#w", m68020up|cpu32 }, -{"traplsw", one(0051772), one(0177777), "#w", m68020up|cpu32 }, -{"trapltw", one(0056772), one(0177777), "#w", m68020up|cpu32 }, -{"trapmiw", one(0055772), one(0177777), "#w", m68020up|cpu32 }, -{"trapnew", one(0053372), one(0177777), "#w", m68020up|cpu32 }, -{"trapplw", one(0055372), one(0177777), "#w", m68020up|cpu32 }, -{"traptw", one(0050372), one(0177777), "#w", m68020up|cpu32 }, -{"trapvcw", one(0054372), one(0177777), "#w", m68020up|cpu32 }, -{"trapvsw", one(0054772), one(0177777), "#w", m68020up|cpu32 }, - -{"trapccl", one(0052373), one(0177777), "#l", m68020up|cpu32 }, -{"trapcsl", one(0052773), one(0177777), "#l", m68020up|cpu32 }, -{"trapeql", one(0053773), one(0177777), "#l", m68020up|cpu32 }, -{"trapfl", one(0050773), one(0177777), "#l", m68020up|cpu32|mcf}, -{"trapgel", one(0056373), one(0177777), "#l", m68020up|cpu32 }, -{"trapgtl", one(0057373), one(0177777), "#l", m68020up|cpu32 }, -{"traphil", one(0051373), one(0177777), "#l", m68020up|cpu32 }, -{"traplel", one(0057773), one(0177777), "#l", m68020up|cpu32 }, -{"traplsl", one(0051773), one(0177777), "#l", m68020up|cpu32 }, -{"trapltl", one(0056773), one(0177777), "#l", m68020up|cpu32 }, -{"trapmil", one(0055773), one(0177777), "#l", m68020up|cpu32 }, -{"trapnel", one(0053373), one(0177777), "#l", m68020up|cpu32 }, -{"trappll", one(0055373), one(0177777), "#l", m68020up|cpu32 }, -{"traptl", one(0050373), one(0177777), "#l", m68020up|cpu32 }, -{"trapvcl", one(0054373), one(0177777), "#l", m68020up|cpu32 }, -{"trapvsl", one(0054773), one(0177777), "#l", m68020up|cpu32 }, - -{"trapv", one(0047166), one(0177777), "", m68000up }, - -{"tstb", one(0045000), one(0177700), ";b", m68020up|cpu32|mcf }, -{"tstb", one(0045000), one(0177700), "$b", m68000up }, -{"tstw", one(0045100), one(0177700), "*w", m68020up|cpu32|mcf }, -{"tstw", one(0045100), one(0177700), "$w", m68000up }, -{"tstl", one(0045200), one(0177700), "*l", m68020up|cpu32|mcf }, -{"tstl", one(0045200), one(0177700), "$l", m68000up }, - -{"unlk", one(0047130), one(0177770), "As", m68000up | mcf }, - -{"unpk", one(0100600), one(0170770), "DsDd#w", m68020up }, -{"unpk", one(0100610), one(0170770), "-s-d#w", m68020up }, - -{"wddatab", one(0175400), one(0177700), "~s", mcf }, -{"wddataw", one(0175500), one(0177700), "~s", mcf }, -{"wddatal", one(0175600), one(0177700), "~s", mcf }, +{"trapcc", 2, one(0052374), one(0177777), "", m68020up | cpu32 }, +{"trapcs", 2, one(0052774), one(0177777), "", m68020up | cpu32 }, +{"trapeq", 2, one(0053774), one(0177777), "", m68020up | cpu32 }, +{"trapf", 2, one(0050774), one(0177777), "", m68020up | cpu32 | mcfisa_a }, +{"trapge", 2, one(0056374), one(0177777), "", m68020up | cpu32 }, +{"trapgt", 2, one(0057374), one(0177777), "", m68020up | cpu32 }, +{"traphi", 2, one(0051374), one(0177777), "", m68020up | cpu32 }, +{"traple", 2, one(0057774), one(0177777), "", m68020up | cpu32 }, +{"trapls", 2, one(0051774), one(0177777), "", m68020up | cpu32 }, +{"traplt", 2, one(0056774), one(0177777), "", m68020up | cpu32 }, +{"trapmi", 2, one(0055774), one(0177777), "", m68020up | cpu32 }, +{"trapne", 2, one(0053374), one(0177777), "", m68020up | cpu32 }, +{"trappl", 2, one(0055374), one(0177777), "", m68020up | cpu32 }, +{"trapt", 2, one(0050374), one(0177777), "", m68020up | cpu32 }, +{"trapvc", 2, one(0054374), one(0177777), "", m68020up | cpu32 }, +{"trapvs", 2, one(0054774), one(0177777), "", m68020up | cpu32 }, + +{"trapccw", 4, one(0052372), one(0177777), "#w", m68020up|cpu32 }, +{"trapcsw", 4, one(0052772), one(0177777), "#w", m68020up|cpu32 }, +{"trapeqw", 4, one(0053772), one(0177777), "#w", m68020up|cpu32 }, +{"trapfw", 4, one(0050772), one(0177777), "#w", m68020up|cpu32|mcfisa_a}, +{"trapgew", 4, one(0056372), one(0177777), "#w", m68020up|cpu32 }, +{"trapgtw", 4, one(0057372), one(0177777), "#w", m68020up|cpu32 }, +{"traphiw", 4, one(0051372), one(0177777), "#w", m68020up|cpu32 }, +{"traplew", 4, one(0057772), one(0177777), "#w", m68020up|cpu32 }, +{"traplsw", 4, one(0051772), one(0177777), "#w", m68020up|cpu32 }, +{"trapltw", 4, one(0056772), one(0177777), "#w", m68020up|cpu32 }, +{"trapmiw", 4, one(0055772), one(0177777), "#w", m68020up|cpu32 }, +{"trapnew", 4, one(0053372), one(0177777), "#w", m68020up|cpu32 }, +{"trapplw", 4, one(0055372), one(0177777), "#w", m68020up|cpu32 }, +{"traptw", 4, one(0050372), one(0177777), "#w", m68020up|cpu32 }, +{"trapvcw", 4, one(0054372), one(0177777), "#w", m68020up|cpu32 }, +{"trapvsw", 4, one(0054772), one(0177777), "#w", m68020up|cpu32 }, + +{"trapccl", 6, one(0052373), one(0177777), "#l", m68020up|cpu32 }, +{"trapcsl", 6, one(0052773), one(0177777), "#l", m68020up|cpu32 }, +{"trapeql", 6, one(0053773), one(0177777), "#l", m68020up|cpu32 }, +{"trapfl", 6, one(0050773), one(0177777), "#l", m68020up|cpu32|mcfisa_a}, +{"trapgel", 6, one(0056373), one(0177777), "#l", m68020up|cpu32 }, +{"trapgtl", 6, one(0057373), one(0177777), "#l", m68020up|cpu32 }, +{"traphil", 6, one(0051373), one(0177777), "#l", m68020up|cpu32 }, +{"traplel", 6, one(0057773), one(0177777), "#l", m68020up|cpu32 }, +{"traplsl", 6, one(0051773), one(0177777), "#l", m68020up|cpu32 }, +{"trapltl", 6, one(0056773), one(0177777), "#l", m68020up|cpu32 }, +{"trapmil", 6, one(0055773), one(0177777), "#l", m68020up|cpu32 }, +{"trapnel", 6, one(0053373), one(0177777), "#l", m68020up|cpu32 }, +{"trappll", 6, one(0055373), one(0177777), "#l", m68020up|cpu32 }, +{"traptl", 6, one(0050373), one(0177777), "#l", m68020up|cpu32 }, +{"trapvcl", 6, one(0054373), one(0177777), "#l", m68020up|cpu32 }, +{"trapvsl", 6, one(0054773), one(0177777), "#l", m68020up|cpu32 }, + +{"trapv", 2, one(0047166), one(0177777), "", m68000up }, + +{"tstb", 2, one(0045000), one(0177700), ";b", m68020up|cpu32|mcfisa_a }, +{"tstb", 2, one(0045000), one(0177700), "$b", m68000up }, +{"tstw", 2, one(0045100), one(0177700), "*w", m68020up|cpu32|mcfisa_a }, +{"tstw", 2, one(0045100), one(0177700), "$w", m68000up }, +{"tstl", 2, one(0045200), one(0177700), "*l", m68020up|cpu32|mcfisa_a }, +{"tstl", 2, one(0045200), one(0177700), "$l", m68000up }, + +{"unlk", 2, one(0047130), one(0177770), "As", m68000up | mcfisa_a }, + +{"unpk", 4, one(0100600), one(0170770), "DsDd#w", m68020up }, +{"unpk", 4, one(0100610), one(0170770), "-s-d#w", m68020up }, + +{"wddatab", 2, one(0175400), one(0177700), "~s", mcfisa_a }, +{"wddataw", 2, one(0175500), one(0177700), "~s", mcfisa_a }, +{"wddatal", 2, one(0175600), one(0177700), "~s", mcfisa_a }, -{"wdebug", two(0175720, 03), two(0177770, 0xffff), "as", mcf }, -{"wdebug", two(0175750, 03), two(0177770, 0xffff), "ds", mcf }, +{"wdebug", 4, two(0175720, 03), two(0177770, 0xffff), "as", mcfisa_a }, +{"wdebug", 4, two(0175750, 03), two(0177770, 0xffff), "ds", mcfisa_a }, }; const int m68k_numopcodes = sizeof m68k_opcodes / sizeof m68k_opcodes[0]; @@ -2241,9 +2235,9 @@ const struct m68k_opcode_alias m68k_opco { "brb", "bras", }, { "brw", "braw", }, { "brl", "bral", }, - { "jfnlt", "bcc", }, /* apparently a sun alias */ - { "jfngt", "ble", }, /* apparently a sun alias */ - { "jfeq", "beqs", }, /* apparently a sun alias */ + { "jfnlt", "bcc", }, /* Apparently a sun alias. */ + { "jfngt", "ble", }, /* Apparently a sun alias. */ + { "jfeq", "beqs", }, /* Apparently a sun alias. */ { "bchgb", "bchg", }, { "bchgl", "bchg", }, { "bclrb", "bclr", }, @@ -2392,7 +2386,7 @@ const struct m68k_opcode_alias m68k_opco { "movsw", "movesw", }, { "mov3q", "mov3ql", }, - { "tdivul", "divul", }, /* for m68k-svr4 */ + { "tdivul", "divul", }, /* For m68k-svr4. */ { "fmovb", "fmoveb", }, { "fsmovb", "fsmoveb", }, { "fdmovb", "fdmoveb", }, @@ -2423,7 +2417,7 @@ const struct m68k_opcode_alias m68k_opco { "ftestw", "ftstw", }, { "ftestx", "ftstx", }, - { "bitrevl", "bitrev", }, /* for mcf528x only */ + { "bitrevl", "bitrev", }, { "byterevl", "byterev", }, { "ff1l", "ff1", }, diff -uprN binutils-2.15.90.0.3/opcodes/po/fr.po binutils-2.15.91.0.1/opcodes/po/fr.po --- binutils-2.15.90.0.3/opcodes/po/fr.po 2004-01-14 13:07:55.000000000 -0800 +++ binutils-2.15.91.0.1/opcodes/po/fr.po 2004-05-27 11:26:07.109851417 -0700 @@ -1,17 +1,18 @@ # Messages français pour opcodes. -# Copyright © 1996 Free Software Foundation, Inc. +# Copyright © 2004 Free Software Foundation, Inc. # Michel Robitaille , traducteur depuis/since 1996. # msgid "" msgstr "" "Project-Id-Version: opcodes 2.14rel030712\n" "POT-Creation-Date: 2003-07-11 13:56+0930\n" -"PO-Revision-Date: 2003-08-05 08:00-0500\n" +"PO-Revision-Date: 2004-05-10 08:00-0500\n" "Last-Translator: Michel Robitaille \n" "Language-Team: French \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-1\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" #: alpha-opc.c:335 msgid "branch operand unaligned" diff -uprN binutils-2.15.90.0.3/opcodes/ppc-opc.c binutils-2.15.91.0.1/opcodes/ppc-opc.c --- binutils-2.15.90.0.3/opcodes/ppc-opc.c 2004-04-12 12:56:38.000000000 -0700 +++ binutils-2.15.91.0.1/opcodes/ppc-opc.c 2004-05-27 11:26:07.066856976 -0700 @@ -1004,8 +1004,13 @@ insert_fxm (unsigned long insn, /* If only one bit of the FXM field is set, we can use the new form of the instruction, which is faster. Unlike the Power4 branch hint - encoding, this is not backward compatible. */ - else if ((dialect & PPC_OPCODE_POWER4) != 0 && (value & -value) == value) + encoding, this is not backward compatible. Do not generate the + new form unless -mpower4 has been given, or -many and the two + operand form of mfcr was used. */ + else if ((value & -value) == value + && ((dialect & PPC_OPCODE_POWER4) != 0 + || ((dialect & PPC_OPCODE_ANY) != 0 + && (insn & (0x3ff << 1)) == 19 << 1))) insn |= 1 << 20; /* Any other value on mfcr is an error. */ @@ -1585,8 +1590,8 @@ extract_tbr (unsigned long insn, /* An XRTRA_MASK, but with L bit clear. */ #define XRTLRA_MASK (XRTRA_MASK & ~((unsigned long) 1 << 21)) -/* An X form comparison instruction. */ -#define XCMPL(op, xop, l) (X ((op), (xop)) | ((((unsigned long)(l)) & 1) << 21)) +/* An X form instruction with the L bit specified. */ +#define XOPL(op, xop, l) (X ((op), (xop)) | ((((unsigned long)(l)) & 1) << 21)) /* The mask for an X form comparison instruction. */ #define XCMP_MASK (X_MASK | (((unsigned long)1) << 22)) @@ -1764,7 +1769,7 @@ extract_tbr (unsigned long insn, #define PPC440 PPC_OPCODE_440 #define PPC750 PPC #define PPC860 PPC -#define PPCVEC PPC_OPCODE_ALTIVEC | PPC_OPCODE_PPC +#define PPCVEC PPC_OPCODE_ALTIVEC #define POWER PPC_OPCODE_POWER #define POWER2 PPC_OPCODE_POWER | PPC_OPCODE_POWER2 #define PPCPWR2 PPC_OPCODE_PPC | PPC_OPCODE_POWER | PPC_OPCODE_POWER2 @@ -3146,8 +3151,8 @@ const struct powerpc_opcode powerpc_opco { "rldcr", MDS(30,9,0), MDS_MASK, PPC64, { RA, RS, RB, ME6 } }, { "rldcr.", MDS(30,9,1), MDS_MASK, PPC64, { RA, RS, RB, ME6 } }, -{ "cmpw", XCMPL(31,0,0), XCMPL_MASK, PPCCOM, { OBF, RA, RB } }, -{ "cmpd", XCMPL(31,0,1), XCMPL_MASK, PPC64, { OBF, RA, RB } }, +{ "cmpw", XOPL(31,0,0), XCMPL_MASK, PPCCOM, { OBF, RA, RB } }, +{ "cmpd", XOPL(31,0,1), XCMPL_MASK, PPC64, { OBF, RA, RB } }, { "cmp", X(31,0), XCMP_MASK, PPC, { BF, L, RA, RB } }, { "cmp", X(31,0), XCMPL_MASK, PWRCOM, { BF, RA, RB } }, @@ -3252,8 +3257,8 @@ const struct powerpc_opcode powerpc_opco { "lwzxe", X(31,31), X_MASK, BOOKE64, { RT, RA0, RB } }, -{ "cmplw", XCMPL(31,32,0), XCMPL_MASK, PPCCOM, { OBF, RA, RB } }, -{ "cmpld", XCMPL(31,32,1), XCMPL_MASK, PPC64, { OBF, RA, RB } }, +{ "cmplw", XOPL(31,32,0), XCMPL_MASK, PPCCOM, { OBF, RA, RB } }, +{ "cmpld", XOPL(31,32,1), XCMPL_MASK, PPC64, { OBF, RA, RB } }, { "cmpl", X(31,32), XCMP_MASK, PPC, { BF, L, RA, RB } }, { "cmpl", X(31,32), XCMPL_MASK, PWRCOM, { BF, RA, RB } }, @@ -4303,6 +4308,7 @@ const struct powerpc_opcode powerpc_opco { "tlbli", X(31,1010), XRTRA_MASK, PPC, { RB } }, +{ "dcbzl", XOPL(31,1014,1), XRT_MASK,POWER4, { RA, RB } }, { "dcbz", X(31,1014), XRT_MASK, PPC, { RA, RB } }, { "dclz", X(31,1014), XRT_MASK, PPC, { RA, RB } }, diff -uprN binutils-2.15.90.0.3/opcodes/sh-dis.c binutils-2.15.91.0.1/opcodes/sh-dis.c --- binutils-2.15.90.0.3/opcodes/sh-dis.c 2004-03-03 12:24:34.000000000 -0800 +++ binutils-2.15.91.0.1/opcodes/sh-dis.c 2004-05-27 11:26:07.078855425 -0700 @@ -855,7 +855,13 @@ print_insn_sh (memaddr, info) else val = bfd_getb32 (bytes); } - fprintf_fn (stream, "\t! 0x%x", val); + if ((*info->symbol_at_address_func) (val, info)) + { + fprintf_fn (stream, "\t! 0x"); + (*info->print_address_func) (val, info); + } + else + fprintf_fn (stream, "\t! 0x%x", val); } } diff -uprN binutils-2.15.90.0.3/opcodes/sparc-opc.c binutils-2.15.91.0.1/opcodes/sparc-opc.c --- binutils-2.15.90.0.3/opcodes/sparc-opc.c 2004-03-03 12:24:34.000000000 -0800 +++ binutils-2.15.91.0.1/opcodes/sparc-opc.c 2004-05-27 11:26:07.091853744 -0700 @@ -1273,110 +1273,72 @@ cond ("bz", "tz", CONDZ, F_CONDBR|F_AL #define FM_DF 2 /* v9 */ #define FM_QF 3 /* v9 */ -#define fmovicc(opcode, fpsize, cond, flags) /* v9 */ \ -{ opcode, F3F(2, 0x35, 0x100+fpsize)|MCOND(cond,0), F3F(~2, ~0x35, ~(0x100+fpsize))|MCOND(~cond,~0), "z,f,g", flags, v9 }, \ -{ opcode, F3F(2, 0x35, 0x180+fpsize)|MCOND(cond,0), F3F(~2, ~0x35, ~(0x180+fpsize))|MCOND(~cond,~0), "Z,f,g", flags, v9 } - -#define fmovfcc(opcode, fpsize, fcond, flags) /* v9 */ \ -{ opcode, F3F(2, 0x35, 0x000+fpsize)|MCOND(fcond,0), F3F(~2, ~0x35, ~(0x000+fpsize))|MCOND(~fcond,~0), "6,f,g", flags, v9 }, \ -{ opcode, F3F(2, 0x35, 0x040+fpsize)|MCOND(fcond,0), F3F(~2, ~0x35, ~(0x040+fpsize))|MCOND(~fcond,~0), "7,f,g", flags, v9 }, \ -{ opcode, F3F(2, 0x35, 0x080+fpsize)|MCOND(fcond,0), F3F(~2, ~0x35, ~(0x080+fpsize))|MCOND(~fcond,~0), "8,f,g", flags, v9 }, \ -{ opcode, F3F(2, 0x35, 0x0c0+fpsize)|MCOND(fcond,0), F3F(~2, ~0x35, ~(0x0c0+fpsize))|MCOND(~fcond,~0), "9,f,g", flags, v9 } +#define fmoviccx(opcode, fpsize, args, cond, flags) /* v9 */ \ +{ opcode, F3F(2, 0x35, 0x100+fpsize)|MCOND(cond,0), F3F(~2, ~0x35, ~(0x100+fpsize))|MCOND(~cond,~0), "z," args, flags, v9 }, \ +{ opcode, F3F(2, 0x35, 0x180+fpsize)|MCOND(cond,0), F3F(~2, ~0x35, ~(0x180+fpsize))|MCOND(~cond,~0), "Z," args, flags, v9 } + +#define fmovfccx(opcode, fpsize, args, fcond, flags) /* v9 */ \ +{ opcode, F3F(2, 0x35, 0x000+fpsize)|MCOND(fcond,0), F3F(~2, ~0x35, ~(0x000+fpsize))|MCOND(~fcond,~0), "6," args, flags, v9 }, \ +{ opcode, F3F(2, 0x35, 0x040+fpsize)|MCOND(fcond,0), F3F(~2, ~0x35, ~(0x040+fpsize))|MCOND(~fcond,~0), "7," args, flags, v9 }, \ +{ opcode, F3F(2, 0x35, 0x080+fpsize)|MCOND(fcond,0), F3F(~2, ~0x35, ~(0x080+fpsize))|MCOND(~fcond,~0), "8," args, flags, v9 }, \ +{ opcode, F3F(2, 0x35, 0x0c0+fpsize)|MCOND(fcond,0), F3F(~2, ~0x35, ~(0x0c0+fpsize))|MCOND(~fcond,~0), "9," args, flags, v9 } /* FIXME: use fmovicc/fmovfcc? */ /* v9 */ -#define fmovcc(opcode, fpsize, cond, fcond, flags) /* v9 */ \ -{ opcode, F3F(2, 0x35, 0x100+fpsize)|MCOND(cond,0), F3F(~2, ~0x35, ~(0x100+fpsize))|MCOND(~cond,~0), "z,f,g", flags | F_FLOAT, v9 }, \ -{ opcode, F3F(2, 0x35, 0x000+fpsize)|MCOND(fcond,0), F3F(~2, ~0x35, ~(0x000+fpsize))|MCOND(~fcond,~0), "6,f,g", flags | F_FLOAT, v9 }, \ -{ opcode, F3F(2, 0x35, 0x180+fpsize)|MCOND(cond,0), F3F(~2, ~0x35, ~(0x180+fpsize))|MCOND(~cond,~0), "Z,f,g", flags | F_FLOAT, v9 }, \ -{ opcode, F3F(2, 0x35, 0x040+fpsize)|MCOND(fcond,0), F3F(~2, ~0x35, ~(0x040+fpsize))|MCOND(~fcond,~0), "7,f,g", flags | F_FLOAT, v9 }, \ -{ opcode, F3F(2, 0x35, 0x080+fpsize)|MCOND(fcond,0), F3F(~2, ~0x35, ~(0x080+fpsize))|MCOND(~fcond,~0), "8,f,g", flags | F_FLOAT, v9 }, \ -{ opcode, F3F(2, 0x35, 0x0c0+fpsize)|MCOND(fcond,0), F3F(~2, ~0x35, ~(0x0c0+fpsize))|MCOND(~fcond,~0), "9,f,g", flags | F_FLOAT, v9 } - -/* v9 */ fmovcc ("fmovda", FM_DF, CONDA, FCONDA, 0), -/* v9 */ fmovcc ("fmovqa", FM_QF, CONDA, FCONDA, 0), -/* v9 */ fmovcc ("fmovsa", FM_SF, CONDA, FCONDA, 0), -/* v9 */ fmovicc ("fmovdcc", FM_DF, CONDCC, 0), -/* v9 */ fmovicc ("fmovqcc", FM_QF, CONDCC, 0), -/* v9 */ fmovicc ("fmovscc", FM_SF, CONDCC, 0), -/* v9 */ fmovicc ("fmovdcs", FM_DF, CONDCS, 0), -/* v9 */ fmovicc ("fmovqcs", FM_QF, CONDCS, 0), -/* v9 */ fmovicc ("fmovscs", FM_SF, CONDCS, 0), -/* v9 */ fmovcc ("fmovde", FM_DF, CONDE, FCONDE, 0), -/* v9 */ fmovcc ("fmovqe", FM_QF, CONDE, FCONDE, 0), -/* v9 */ fmovcc ("fmovse", FM_SF, CONDE, FCONDE, 0), -/* v9 */ fmovcc ("fmovdg", FM_DF, CONDG, FCONDG, 0), -/* v9 */ fmovcc ("fmovqg", FM_QF, CONDG, FCONDG, 0), -/* v9 */ fmovcc ("fmovsg", FM_SF, CONDG, FCONDG, 0), -/* v9 */ fmovcc ("fmovdge", FM_DF, CONDGE, FCONDGE, 0), -/* v9 */ fmovcc ("fmovqge", FM_QF, CONDGE, FCONDGE, 0), -/* v9 */ fmovcc ("fmovsge", FM_SF, CONDGE, FCONDGE, 0), -/* v9 */ fmovicc ("fmovdgeu", FM_DF, CONDGEU, F_ALIAS), -/* v9 */ fmovicc ("fmovqgeu", FM_QF, CONDGEU, F_ALIAS), -/* v9 */ fmovicc ("fmovsgeu", FM_SF, CONDGEU, F_ALIAS), -/* v9 */ fmovicc ("fmovdgu", FM_DF, CONDGU, 0), -/* v9 */ fmovicc ("fmovqgu", FM_QF, CONDGU, 0), -/* v9 */ fmovicc ("fmovsgu", FM_SF, CONDGU, 0), -/* v9 */ fmovcc ("fmovdl", FM_DF, CONDL, FCONDL, 0), -/* v9 */ fmovcc ("fmovql", FM_QF, CONDL, FCONDL, 0), -/* v9 */ fmovcc ("fmovsl", FM_SF, CONDL, FCONDL, 0), -/* v9 */ fmovcc ("fmovdle", FM_DF, CONDLE, FCONDLE, 0), -/* v9 */ fmovcc ("fmovqle", FM_QF, CONDLE, FCONDLE, 0), -/* v9 */ fmovcc ("fmovsle", FM_SF, CONDLE, FCONDLE, 0), -/* v9 */ fmovicc ("fmovdleu", FM_DF, CONDLEU, 0), -/* v9 */ fmovicc ("fmovqleu", FM_QF, CONDLEU, 0), -/* v9 */ fmovicc ("fmovsleu", FM_SF, CONDLEU, 0), -/* v9 */ fmovfcc ("fmovdlg", FM_DF, FCONDLG, 0), -/* v9 */ fmovfcc ("fmovqlg", FM_QF, FCONDLG, 0), -/* v9 */ fmovfcc ("fmovslg", FM_SF, FCONDLG, 0), -/* v9 */ fmovicc ("fmovdlu", FM_DF, CONDLU, F_ALIAS), -/* v9 */ fmovicc ("fmovqlu", FM_QF, CONDLU, F_ALIAS), -/* v9 */ fmovicc ("fmovslu", FM_SF, CONDLU, F_ALIAS), -/* v9 */ fmovcc ("fmovdn", FM_DF, CONDN, FCONDN, 0), -/* v9 */ fmovcc ("fmovqn", FM_QF, CONDN, FCONDN, 0), -/* v9 */ fmovcc ("fmovsn", FM_SF, CONDN, FCONDN, 0), -/* v9 */ fmovcc ("fmovdne", FM_DF, CONDNE, FCONDNE, 0), -/* v9 */ fmovcc ("fmovqne", FM_QF, CONDNE, FCONDNE, 0), -/* v9 */ fmovcc ("fmovsne", FM_SF, CONDNE, FCONDNE, 0), -/* v9 */ fmovicc ("fmovdneg", FM_DF, CONDNEG, 0), -/* v9 */ fmovicc ("fmovqneg", FM_QF, CONDNEG, 0), -/* v9 */ fmovicc ("fmovsneg", FM_SF, CONDNEG, 0), -/* v9 */ fmovcc ("fmovdnz", FM_DF, CONDNZ, FCONDNZ, F_ALIAS), -/* v9 */ fmovcc ("fmovqnz", FM_QF, CONDNZ, FCONDNZ, F_ALIAS), -/* v9 */ fmovcc ("fmovsnz", FM_SF, CONDNZ, FCONDNZ, F_ALIAS), -/* v9 */ fmovfcc ("fmovdo", FM_DF, FCONDO, 0), -/* v9 */ fmovfcc ("fmovqo", FM_QF, FCONDO, 0), -/* v9 */ fmovfcc ("fmovso", FM_SF, FCONDO, 0), -/* v9 */ fmovicc ("fmovdpos", FM_DF, CONDPOS, 0), -/* v9 */ fmovicc ("fmovqpos", FM_QF, CONDPOS, 0), -/* v9 */ fmovicc ("fmovspos", FM_SF, CONDPOS, 0), -/* v9 */ fmovfcc ("fmovdu", FM_DF, FCONDU, 0), -/* v9 */ fmovfcc ("fmovqu", FM_QF, FCONDU, 0), -/* v9 */ fmovfcc ("fmovsu", FM_SF, FCONDU, 0), -/* v9 */ fmovfcc ("fmovdue", FM_DF, FCONDUE, 0), -/* v9 */ fmovfcc ("fmovque", FM_QF, FCONDUE, 0), -/* v9 */ fmovfcc ("fmovsue", FM_SF, FCONDUE, 0), -/* v9 */ fmovfcc ("fmovdug", FM_DF, FCONDUG, 0), -/* v9 */ fmovfcc ("fmovqug", FM_QF, FCONDUG, 0), -/* v9 */ fmovfcc ("fmovsug", FM_SF, FCONDUG, 0), -/* v9 */ fmovfcc ("fmovduge", FM_DF, FCONDUGE, 0), -/* v9 */ fmovfcc ("fmovquge", FM_QF, FCONDUGE, 0), -/* v9 */ fmovfcc ("fmovsuge", FM_SF, FCONDUGE, 0), -/* v9 */ fmovfcc ("fmovdul", FM_DF, FCONDUL, 0), -/* v9 */ fmovfcc ("fmovqul", FM_QF, FCONDUL, 0), -/* v9 */ fmovfcc ("fmovsul", FM_SF, FCONDUL, 0), -/* v9 */ fmovfcc ("fmovdule", FM_DF, FCONDULE, 0), -/* v9 */ fmovfcc ("fmovqule", FM_QF, FCONDULE, 0), -/* v9 */ fmovfcc ("fmovsule", FM_SF, FCONDULE, 0), -/* v9 */ fmovicc ("fmovdvc", FM_DF, CONDVC, 0), -/* v9 */ fmovicc ("fmovqvc", FM_QF, CONDVC, 0), -/* v9 */ fmovicc ("fmovsvc", FM_SF, CONDVC, 0), -/* v9 */ fmovicc ("fmovdvs", FM_DF, CONDVS, 0), -/* v9 */ fmovicc ("fmovqvs", FM_QF, CONDVS, 0), -/* v9 */ fmovicc ("fmovsvs", FM_SF, CONDVS, 0), -/* v9 */ fmovcc ("fmovdz", FM_DF, CONDZ, FCONDZ, F_ALIAS), -/* v9 */ fmovcc ("fmovqz", FM_QF, CONDZ, FCONDZ, F_ALIAS), -/* v9 */ fmovcc ("fmovsz", FM_SF, CONDZ, FCONDZ, F_ALIAS), - +#define fmovccx(opcode, fpsize, args, cond, fcond, flags) /* v9 */ \ +{ opcode, F3F(2, 0x35, 0x100+fpsize)|MCOND(cond,0), F3F(~2, ~0x35, ~(0x100+fpsize))|MCOND(~cond,~0), "z," args, flags | F_FLOAT, v9 }, \ +{ opcode, F3F(2, 0x35, 0x000+fpsize)|MCOND(fcond,0), F3F(~2, ~0x35, ~(0x000+fpsize))|MCOND(~fcond,~0), "6," args, flags | F_FLOAT, v9 }, \ +{ opcode, F3F(2, 0x35, 0x180+fpsize)|MCOND(cond,0), F3F(~2, ~0x35, ~(0x180+fpsize))|MCOND(~cond,~0), "Z," args, flags | F_FLOAT, v9 }, \ +{ opcode, F3F(2, 0x35, 0x040+fpsize)|MCOND(fcond,0), F3F(~2, ~0x35, ~(0x040+fpsize))|MCOND(~fcond,~0), "7," args, flags | F_FLOAT, v9 }, \ +{ opcode, F3F(2, 0x35, 0x080+fpsize)|MCOND(fcond,0), F3F(~2, ~0x35, ~(0x080+fpsize))|MCOND(~fcond,~0), "8," args, flags | F_FLOAT, v9 }, \ +{ opcode, F3F(2, 0x35, 0x0c0+fpsize)|MCOND(fcond,0), F3F(~2, ~0x35, ~(0x0c0+fpsize))|MCOND(~fcond,~0), "9," args, flags | F_FLOAT, v9 } + +#define fmovicc(suffix, cond, flags) /* v9 */ \ +fmoviccx("fmovd" suffix, FM_DF, "B,H", cond, flags), \ +fmoviccx("fmovq" suffix, FM_QF, "R,J", cond, flags), \ +fmoviccx("fmovs" suffix, FM_SF, "f,g", cond, flags) + +#define fmovfcc(suffix, fcond, flags) /* v9 */ \ +fmovfccx("fmovd" suffix, FM_DF, "B,H", fcond, flags), \ +fmovfccx("fmovq" suffix, FM_QF, "R,J", fcond, flags), \ +fmovfccx("fmovs" suffix, FM_SF, "f,g", fcond, flags) + +#define fmovcc(suffix, cond, fcond, flags) /* v9 */ \ +fmovccx("fmovd" suffix, FM_DF, "B,H", cond, fcond, flags), \ +fmovccx("fmovq" suffix, FM_QF, "R,J", cond, fcond, flags), \ +fmovccx("fmovs" suffix, FM_SF, "f,g", cond, fcond, flags) + +/* v9 */ fmovcc ("a", CONDA, FCONDA, 0), +/* v9 */ fmovicc ("cc", CONDCC, 0), +/* v9 */ fmovicc ("cs", CONDCS, 0), +/* v9 */ fmovcc ("e", CONDE, FCONDE, 0), +/* v9 */ fmovcc ("g", CONDG, FCONDG, 0), +/* v9 */ fmovcc ("ge", CONDGE, FCONDGE, 0), +/* v9 */ fmovicc ("geu", CONDGEU, F_ALIAS), +/* v9 */ fmovicc ("gu", CONDGU, 0), +/* v9 */ fmovcc ("l", CONDL, FCONDL, 0), +/* v9 */ fmovcc ("le", CONDLE, FCONDLE, 0), +/* v9 */ fmovicc ("leu", CONDLEU, 0), +/* v9 */ fmovfcc ("lg", FCONDLG, 0), +/* v9 */ fmovicc ("lu", CONDLU, F_ALIAS), +/* v9 */ fmovcc ("n", CONDN, FCONDN, 0), +/* v9 */ fmovcc ("ne", CONDNE, FCONDNE, 0), +/* v9 */ fmovicc ("neg", CONDNEG, 0), +/* v9 */ fmovcc ("nz", CONDNZ, FCONDNZ, F_ALIAS), +/* v9 */ fmovfcc ("o", FCONDO, 0), +/* v9 */ fmovicc ("pos", CONDPOS, 0), +/* v9 */ fmovfcc ("u", FCONDU, 0), +/* v9 */ fmovfcc ("ue", FCONDUE, 0), +/* v9 */ fmovfcc ("ug", FCONDUG, 0), +/* v9 */ fmovfcc ("uge", FCONDUGE, 0), +/* v9 */ fmovfcc ("ul", FCONDUL, 0), +/* v9 */ fmovfcc ("ule", FCONDULE, 0), +/* v9 */ fmovicc ("vc", CONDVC, 0), +/* v9 */ fmovicc ("vs", CONDVS, 0), +/* v9 */ fmovcc ("z", CONDZ, FCONDZ, F_ALIAS), + +#undef fmoviccx /* v9 */ +#undef fmovfccx /* v9 */ +#undef fmovccx /* v9 */ #undef fmovicc /* v9 */ #undef fmovfcc /* v9 */ #undef fmovcc /* v9 */ diff -uprN binutils-2.15.90.0.3/patches/ChangeLog binutils-2.15.91.0.1/patches/ChangeLog --- binutils-2.15.90.0.3/patches/ChangeLog 2004-01-14 13:07:55.000000000 -0800 +++ binutils-2.15.91.0.1/patches/ChangeLog 2004-05-27 11:26:07.119850124 -0700 @@ -1,3 +1,46 @@ +2004-05-27 H.J. Lu + + * apply_demangler: Removed. + * demangler.patch: Likewise. + * ld-test-link.patch: Likewise. + + * bfd-ia64-merge.patch: New file. + * gas-ia64-auto.patch: Likewise. + * gas-ia64-ar.patch: Likewise. + + * README: Apply bfd-ia64-merge.patch, gas-ia64-auto.patch and + gas-ia64-ar.patch. + +2004-05-19 H.J. Lu + + * ld-eh-frame-ro.patch: Removed. + + * README: Don't apply ld-eh-frame-ro.patch. + +2004-05-14 H.J. Lu + + * ld-eh-frame-ro.patch: Updated. + +2004-05-14 H.J. Lu + + * ld-eh-frame-ro.patch: New. Handle RO/RW .eh_frame and + .gcc_except_table sections. + + * README: Apply ld-eh-frame-ro.patch. + +2004-04-23 H.J. Lu + + * README: Don't apply bfd-elf-mix.patch. + +2004-04-22 H.J. Lu + + * bfd-abort.patch: New file. Abort on NULL BFD. + + * bfd-elf-mix.patch: New file. Improve ELF linker with non-ELF + inputs. + + * README: Apply bfd-abort.patch and bfd-elf-mix.patch. + 2004-01-07 H.J. Lu * README: Don't apply libtool-dso.patch. diff -uprN binutils-2.15.90.0.3/patches/README binutils-2.15.91.0.1/patches/README --- binutils-2.15.90.0.3/patches/README 2004-01-14 13:07:55.000000000 -0800 +++ binutils-2.15.91.0.1/patches/README 2004-05-27 11:26:07.120849994 -0700 @@ -12,11 +12,12 @@ # # if the build fails. -exit 0 - dir=`dirname $0` -patch -p1 -b --suffix .dso < $dir/libtool-dso.patch && \ +patch -p0 -b --suffix .abort < $dir/bfd-abort.patch && \ +patch -p0 -b --suffix .merge < $dir/bfd-ia64-merge.patch && \ +patch -p0 -b --suffix .ar < $dir/gas-ia64-ar.patch && \ +patch -p0 -b --suffix .auto < $dir/gas-ia64-auto.patch && \ true [ $? = 0 ] || exit 1 find -name "*.rej" | grep rej && exit 1 diff -uprN binutils-2.15.90.0.3/patches/apply_demangler binutils-2.15.91.0.1/patches/apply_demangler --- binutils-2.15.90.0.3/patches/apply_demangler 2004-01-14 13:07:55.000000000 -0800 +++ binutils-2.15.91.0.1/patches/apply_demangler 1969-12-31 16:00:00.000000000 -0800 @@ -1,15 +0,0 @@ -#! /bin/sh - -dir=`dirname $0` - -patch -p1 $BACKUP < $dir/demangler.patch -[ $? = 0 ] || exit 1 -(cd demangler && sh ./bootstrap) -[ $? = 0 ] || exit 1 -(cd libiberty && rm -f configure && autoconf) -[ $? = 0 ] || exit 1 -rm -f configure && autoconf-2.13 && rm -f Makefile.in && autogen Makefile.def -[ $? = 0 ] || exit 1 -find -name "*.rej" | grep rej && exit 1 -find -name "*.orig" | xargs rm -fv -find -name "*.gmo" | xargs rm -fv diff -uprN binutils-2.15.90.0.3/patches/bfd-abort.patch binutils-2.15.91.0.1/patches/bfd-abort.patch --- binutils-2.15.90.0.3/patches/bfd-abort.patch 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/patches/bfd-abort.patch 2004-05-27 11:26:07.121849865 -0700 @@ -0,0 +1,15 @@ +2004-04-22 H.J. Lu + + * bfd.c (bfd_archive_filename): Abort on NULL BFD. + +--- bfd/bfd.c.abort 2004-04-22 20:32:52.000000000 -0700 ++++ bfd/bfd.c 2004-04-22 20:46:21.000000000 -0700 +@@ -509,7 +509,7 @@ const char * + bfd_archive_filename (bfd *abfd) + { + if (abfd == NULL) +- return NULL; ++ abort (); + + if (abfd->my_archive) + { diff -uprN binutils-2.15.90.0.3/patches/bfd-elf-mix.patch binutils-2.15.91.0.1/patches/bfd-elf-mix.patch --- binutils-2.15.90.0.3/patches/bfd-elf-mix.patch 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/patches/bfd-elf-mix.patch 2004-05-27 11:26:07.141847279 -0700 @@ -0,0 +1,124 @@ +2004-04-22 H.J. Lu + + * elf.c (_bfd_elf_link_hash_copy_indirect): Also copy + ELF_LINK_NON_ELF. + + * elf32-i386.c (ELIMINATE_COPY_RELOCS): Add hash as an argument. + FALSE if the ELF_LINK_NON_ELF bit is set. Update usages. + + * elflink.c (_bfd_elf_link_create_dynamic_sections): Clear + the ELF_LINK_NON_ELF bit on _DYNAMIC. + (_bfd_elf_fix_symbol_flags): Increment PLT count for dynamic + function symbols referenced by non-ELF files. Set the + ELF_LINK_NON_GOT_REF bit for dynamic object symbols + referenced by non-ELF files. + +--- bfd/elf.c.mix 2004-04-22 11:08:27.000000000 -0700 ++++ bfd/elf.c 2004-04-22 16:25:06.000000000 -0700 +@@ -1360,6 +1360,7 @@ _bfd_elf_link_hash_copy_indirect (const + | ELF_LINK_HASH_REF_REGULAR + | ELF_LINK_HASH_REF_REGULAR_NONWEAK + | ELF_LINK_NON_GOT_REF ++ | ELF_LINK_NON_ELF + | ELF_LINK_HASH_NEEDS_PLT + | ELF_LINK_POINTER_EQUALITY_NEEDED); + +--- bfd/elf32-i386.c.mix 2004-04-22 08:19:28.000000000 -0700 ++++ bfd/elf32-i386.c 2004-04-22 14:50:20.000000000 -0700 +@@ -464,7 +464,8 @@ elf_i386_grok_psinfo (bfd *abfd, Elf_Int + copying dynamic variables from a shared lib into an app's dynbss + section, and instead use a dynamic relocation to point into the + shared lib. */ +-#define ELIMINATE_COPY_RELOCS 1 ++#define ELIMINATE_COPY_RELOCS(h) \ ++ (!(h) || !((h)->elf_link_hash_flags & ELF_LINK_NON_ELF)) + + /* The size in bytes of an entry in the procedure linkage table. */ + +@@ -782,7 +783,7 @@ elf_i386_copy_indirect_symbol (const str + eind->tls_type = GOT_UNKNOWN; + } + +- if (ELIMINATE_COPY_RELOCS ++ if (ELIMINATE_COPY_RELOCS (dir) + && ind->root.type != bfd_link_hash_indirect + && (dir->elf_link_hash_flags & ELF_LINK_HASH_DYNAMIC_ADJUSTED) != 0) + /* If called to transfer flags for a weakdef during processing +@@ -1056,7 +1057,7 @@ elf_i386_check_relocs (bfd *abfd, + || h->root.type == bfd_link_hash_defweak + || (h->elf_link_hash_flags + & ELF_LINK_HASH_DEF_REGULAR) == 0)))) +- || (ELIMINATE_COPY_RELOCS ++ || (ELIMINATE_COPY_RELOCS (h) + && !info->shared + && (sec->flags & SEC_ALLOC) != 0 + && h != NULL +@@ -1361,7 +1362,7 @@ elf_i386_adjust_dynamic_symbol (struct b + || h->weakdef->root.type == bfd_link_hash_defweak); + h->root.u.def.section = h->weakdef->root.u.def.section; + h->root.u.def.value = h->weakdef->root.u.def.value; +- if (ELIMINATE_COPY_RELOCS || info->nocopyreloc) ++ if (ELIMINATE_COPY_RELOCS (h) || info->nocopyreloc) + h->elf_link_hash_flags + = ((h->elf_link_hash_flags & ~ELF_LINK_NON_GOT_REF) + | (h->weakdef->elf_link_hash_flags & ELF_LINK_NON_GOT_REF)); +@@ -1390,7 +1391,7 @@ elf_i386_adjust_dynamic_symbol (struct b + return TRUE; + } + +- if (ELIMINATE_COPY_RELOCS) ++ if (ELIMINATE_COPY_RELOCS (h)) + { + struct elf_i386_link_hash_entry * eh; + struct elf_i386_dyn_relocs *p; +@@ -1628,7 +1629,7 @@ allocate_dynrelocs (struct elf_link_hash + && h->root.type == bfd_link_hash_undefweak) + eh->dyn_relocs = NULL; + } +- else if (ELIMINATE_COPY_RELOCS) ++ else if (ELIMINATE_COPY_RELOCS (h)) + { + /* For the non-shared case, discard space for relocs against + symbols which turn out to need copy relocs or are not +@@ -2321,7 +2322,7 @@ elf_i386_relocate_section (bfd *output_b + || h->root.type != bfd_link_hash_undefweak) + && (r_type != R_386_PC32 + || !SYMBOL_CALLS_LOCAL (info, h))) +- || (ELIMINATE_COPY_RELOCS ++ || (ELIMINATE_COPY_RELOCS (h) + && !info->shared + && h != NULL + && h->dynindx != -1 +--- bfd/elflink.c.mix 2004-04-22 08:20:09.000000000 -0700 ++++ bfd/elflink.c 2004-04-22 18:05:35.000000000 -0700 +@@ -218,6 +218,7 @@ _bfd_elf_link_create_dynamic_sections (b + return FALSE; + h = (struct elf_link_hash_entry *) bh; + h->elf_link_hash_flags |= ELF_LINK_HASH_DEF_REGULAR; ++ h->elf_link_hash_flags &= ~ELF_LINK_NON_ELF; + h->type = STT_OBJECT; + + if (! info->executable +@@ -2087,6 +2088,22 @@ _bfd_elf_fix_symbol_flags (struct elf_li + eif->failed = TRUE; + return FALSE; + } ++ ++ switch (h->type) ++ { ++ case STT_OBJECT: ++ /* It doesn't use GOT. */ ++ h->elf_link_hash_flags |= ELF_LINK_NON_GOT_REF; ++ break; ++ ++ case STT_FUNC: ++ /* We need it to keep the PLT entry. */ ++ h->plt.refcount++; ++ break; ++ ++ default: ++ break; ++ } + } + } + else diff -uprN binutils-2.15.90.0.3/patches/bfd-ia64-merge.patch binutils-2.15.91.0.1/patches/bfd-ia64-merge.patch --- binutils-2.15.90.0.3/patches/bfd-ia64-merge.patch 1969-12-31 16:00:00.000000000 -0800 +++ binutils-2.15.91.0.1/patches/bfd-ia64-merge.patch 2004-05-27 11:26:07.141847279 -0700 @@ -0,0 +1,45 @@ +2004-05-25 H.J. Lu + + * elfxx-ia64.c (elfNN_ia64_relax_section): Properly call + _bfd_merged_section_offset for local symbols. + +--- bfd/elfxx-ia64.c.merge 2004-05-25 22:48:33.723688700 -0700 ++++ bfd/elfxx-ia64.c 2004-05-25 22:49:50.039794972 -0700 +@@ -874,6 +874,15 @@ elfNN_ia64_relax_section (abfd, sec, lin + + toff = isym->st_value; + dyn_i = get_dyn_sym_info (ia64_info, NULL, abfd, irel, FALSE); ++ ++ if ((tsec->flags & SEC_MERGE) ++ && ELF_ST_TYPE (isym->st_info) == STT_SECTION ++ && tsec->sec_info_type == ELF_INFO_TYPE_MERGE) ++ toff = _bfd_merged_section_offset (abfd, &tsec, ++ elf_section_data (tsec)->sec_info, ++ toff + irel->r_addend); ++ else ++ toff += irel->r_addend; + } + else + { +@@ -918,14 +927,14 @@ elfNN_ia64_relax_section (abfd, sec, lin + tsec = h->root.u.def.section; + toff = h->root.u.def.value; + } +- } + +- if (tsec->sec_info_type == ELF_INFO_TYPE_MERGE) +- toff = _bfd_merged_section_offset (abfd, &tsec, +- elf_section_data (tsec)->sec_info, +- toff + irel->r_addend); +- else +- toff += irel->r_addend; ++ if (tsec->sec_info_type == ELF_INFO_TYPE_MERGE) ++ toff = _bfd_merged_section_offset (abfd, &tsec, ++ elf_section_data (tsec)->sec_info, ++ toff + irel->r_addend); ++ else ++ toff += irel->r_addend; ++ } + + symaddr = tsec->output_section->vma + tsec->output_offset + toff; + diff -uprN binutils-2.15.90.0.3/patches/demangler.patch binutils-2.15.91.0.1/patches/demangler.patch --- binutils-2.15.90.0.3/patches/demangler.patch 2004-01-14 13:07:55.000000000 -0800 +++ binutils-2.15.91.0.1/patches/demangler.patch 1969-12-31 16:00:00.000000000 -0800 @@ -1,4083 +0,0 @@ -2003-07-07 H.J. Lu - - * Makefile.def: Add demangler. - * Makefile.tpl: Likewise. - * configure.in: Likewise. - - * Makefile.in: Regenerated. - * configure: Likewise. - -demangler/ - -2003-10-14 H.J. Lu - - * include/bits/demangle.h: Updated. - * lib/demangle.cc: Likewise. - -2003-10-01 H.J. Lu - - * include/bits/demangle.h: Updated. - -2003-09-30 H.J. Lu - - * Makefile.am: Add multilib support. - - * configure.in: Add --with-target-subdir and --with-cross-host. - - * Makefile.in: Regenerated. - * configure: Likewise. - -2003-08-12 H.J. Lu - - * include/bits/demangle.h: Updated. - -2003-07-07 H.J. Lu - - * Makefile.am: New file. - * acinclude.m4: Likewise. - * configure.in: Likewise. - * bootstrap: Likewise. - * lib/Makefile.am: Likewise. - - * Makefile.in: Generarated. - * aclocal.m4: Likewise. - * configure: Likewise. - * lib/Makefile.in: Likewise. - -2003-04-24 Carlo Wood - H.J. Lu - - * include/bits/myallocator.h: New C++ file. - * include/bits/demangle.h: Likewise. - * include/bits/dynstring.h: Likewise. - * lib/demangle.cc: Likewise. - -libiberty/ - -2003-08-28 H.J. Lu - - * libiberty/configure.in: Updated. - -2003-07-07 H.J. Lu - - * Makefile.in (LN_S): New. - (COMPILE.cc): New. - (DEMANGLER): New. - (.cc.o): New rule. - (REQUIRED_OFILES): Replace cp-demangle.o with $(DEMANGLER). - (new_demangler): New target. - (old_demangler): Likewise. - (demangle.cc): Likewise. - (bits/demangle.h): Likewise. - (bits/dynstring.h): Likewise. - (bits/myallocator.h): Likewise. - (demangle.o): New dependency. - - * configure.in (DEMANGLER): New. Substitute. - * configure: Regenerated. - ---- gcc/Makefile.def.demangler 2003-06-24 15:24:23.000000000 -0700 -+++ gcc/Makefile.def 2003-10-14 18:12:04.000000000 -0700 -@@ -25,6 +25,7 @@ AutoGen definitions Makefile.tpl; - // that recursive target in its Makefile. - - build_modules= { module= libiberty; }; -+build_modules= { module= demangler; no_install=true; }; - - host_modules= { module= ash; }; - host_modules= { module= autoconf; }; -@@ -37,6 +38,7 @@ host_modules= { module= bison; no_check_ - host_modules= { module= byacc; no_check_cross= true; }; - host_modules= { module= bzip2; }; - host_modules= { module= dejagnu; }; -+host_modules= { module= demangler; no_install=true; }; - host_modules= { module= diff; }; - host_modules= { module= dosutils; no_check= true; }; - host_modules= { module= etc; }; -@@ -108,6 +110,7 @@ target_modules = { module= libtermcap; n - target_modules = { module= winsup; }; - target_modules = { module= libgloss; no_check=true; }; - target_modules = { module= libiberty; }; -+target_modules = { module= demangler; no_install=true; }; - target_modules = { module= gperf; }; - target_modules = { module= examples; no_check=true; no_install=true; }; - target_modules = { module= libffi; }; ---- gcc/Makefile.tpl.demangler 2003-10-14 17:28:00.000000000 -0700 -+++ gcc/Makefile.tpl 2003-10-14 18:12:04.000000000 -0700 -@@ -106,7 +106,7 @@ REALLY_SET_LIB_PATH = \ - $(RPATH_ENVVAR)=`echo "$(HOST_LIB_PATH):$(TARGET_LIB_PATH):$$$(RPATH_ENVVAR)" | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; export $(RPATH_ENVVAR); - - # This is the list of directories to be built for the build system. --BUILD_CONFIGDIRS = libiberty -+BUILD_CONFIGDIRS = libiberty demangler - # Build programs are put under this directory. - BUILD_SUBDIR = @build_subdir@ - # This is set by the configure script to the arguments to use when configuring -@@ -632,7 +632,7 @@ local-distclean: - -rm -f texinfo/doc/Makefile texinfo/po/POTFILES - -rmdir texinfo/doc texinfo/info texinfo/intl texinfo/lib 2>/dev/null - -rmdir texinfo/makeinfo texinfo/po texinfo/util 2>/dev/null -- -rmdir fastjar gcc libiberty texinfo zlib 2>/dev/null -+ -rmdir fastjar gcc libiberty demangler texinfo zlib 2>/dev/null - - local-maintainer-clean: - @echo "This command is intended for maintainers to use;" -@@ -1265,39 +1265,59 @@ gcc-no-fixedincludes: - # are specified by depending on a 'maybe-' target. If you're not sure, - # it's safer to use a soft dependency. - -+# Demangler depends on libiberty. -+configure-demangler: maybe-configure-libiberty -+all-demangler: maybe-all-libiberty -+ -+# The new demangler, which is included in libiberty, is written in C++. -+# A working C++ compiler is required. For the target demangler, it may -+# depend on libstdc++ if it is built. But libstdc++ also depends on -+# libiberty. We work around it by adding a new directory, demangler. -+# Demangler will update libiberty with the new demangler if a working -+# C++ compiler is available. Otherwise, the old demangler will be -+# included in libiberty. For host and build systems, the C++ compiler -+# check will be done after libiberty is built. For target system, the -+# check will be done after libstdc++, which is built after libiberty. -+# For parallel make, we have to make sure noone will use libiberty -+# when it is being updated by demangler. We make everyone but libstdc++, -+# which uses libiberty, depends on both libiberty and demangler. -+ALL_LIBIBERTY=maybe-all-libiberty maybe-all-demangler -+ALL_BUILD_LIBIBERTY=maybe-all-build-libiberty maybe-all-build-demangler -+ALL_TARGET_LIBIBERTY=maybe-all-target-libiberty maybe-all-target-demangler -+ - # Host modules specific to gcc. - # GCC needs to identify certain tools. - # GCC also needs the information exported by the intl configure script. - configure-gcc: maybe-configure-intl maybe-configure-binutils maybe-configure-gas maybe-configure-ld maybe-configure-bison maybe-configure-flex --all-gcc: maybe-all-libiberty maybe-all-intl maybe-all-bison maybe-all-byacc maybe-all-binutils maybe-all-gas maybe-all-ld maybe-all-zlib -+all-gcc: $(ALL_LIBIBERTY) maybe-all-intl maybe-all-bison maybe-all-byacc maybe-all-binutils maybe-all-gas maybe-all-ld maybe-all-zlib - # This is a slightly kludgy method of getting dependencies on - # all-build-libiberty correct; it would be better to build it every time. --all-gcc: maybe-all-build-libiberty --all-bootstrap: maybe-all-libiberty maybe-all-intl maybe-all-texinfo maybe-all-bison maybe-all-byacc maybe-all-binutils maybe-all-gas maybe-all-ld maybe-all-zlib -+all-gcc: $(ALL_BUILD_LIBIBERTY) -+all-bootstrap: $(ALL_LIBIBERTY) maybe-all-intl maybe-all-texinfo maybe-all-bison maybe-all-byacc maybe-all-binutils maybe-all-gas maybe-all-ld maybe-all-zlib - - # Host modules specific to gdb. - # GDB needs to know that the simulator is being built. - configure-gdb: maybe-configure-itcl maybe-configure-tcl maybe-configure-tk maybe-configure-sim - GDB_TK = @GDB_TK@ --all-gdb: maybe-all-libiberty maybe-all-opcodes maybe-all-bfd maybe-all-mmalloc maybe-all-readline maybe-all-bison maybe-all-byacc maybe-all-sim $(gdbnlmrequirements) $(GDB_TK) -+all-gdb: $(ALL_LIBIBERTY) maybe-all-opcodes maybe-all-bfd maybe-all-mmalloc maybe-all-readline maybe-all-bison maybe-all-byacc maybe-all-sim $(gdbnlmrequirements) $(GDB_TK) - install-gdb: maybe-install-tcl maybe-install-tk maybe-install-itcl maybe-install-tix maybe-install-libgui - configure-libgui: maybe-configure-tcl maybe-configure-tk - all-libgui: maybe-all-tcl maybe-all-tk maybe-all-itcl - - # Host modules specific to binutils. - configure-bfd: configure-libiberty --all-bfd: maybe-all-libiberty maybe-all-intl --all-binutils: maybe-all-libiberty maybe-all-opcodes maybe-all-bfd maybe-all-flex maybe-all-bison maybe-all-byacc maybe-all-intl -+all-bfd: $(ALL_LIBIBERTY) maybe-all-intl -+all-binutils: $(ALL_LIBIBERTY) maybe-all-opcodes maybe-all-bfd maybe-all-flex maybe-all-bison maybe-all-byacc maybe-all-intl - # We put install-opcodes before install-binutils because the installed - # binutils might be on PATH, and they might need the shared opcodes - # library. - install-binutils: maybe-install-opcodes - # libopcodes depends on libbfd - install-opcodes: maybe-install-bfd --all-gas: maybe-all-libiberty maybe-all-opcodes maybe-all-bfd maybe-all-intl --all-gprof: maybe-all-libiberty maybe-all-bfd maybe-all-opcodes maybe-all-intl --all-ld: maybe-all-libiberty maybe-all-bfd maybe-all-opcodes maybe-all-bison maybe-all-byacc maybe-all-flex maybe-all-intl --all-opcodes: maybe-all-bfd maybe-all-libiberty -+all-gas: $(ALL_LIBIBERTY) maybe-all-opcodes maybe-all-bfd maybe-all-intl -+all-gprof: $(ALL_LIBIBERTY) maybe-all-bfd maybe-all-opcodes maybe-all-intl -+all-ld: $(ALL_LIBIBERTY) maybe-all-bfd maybe-all-opcodes maybe-all-bison maybe-all-byacc maybe-all-flex maybe-all-intl -+all-opcodes: maybe-all-bfd $(ALL_LIBIBERTY) - - # Other host modules in the 'src' repository. - all-dejagnu: maybe-all-tcl maybe-all-expect maybe-all-tk -@@ -1308,34 +1328,34 @@ all-itcl: maybe-all-tcl maybe-all-tk - # We put install-tcl before install-itcl because itcl wants to run a - # program on installation which uses the Tcl libraries. - install-itcl: maybe-install-tcl --all-sid: maybe-all-libiberty maybe-all-bfd maybe-all-opcodes maybe-all-tcl maybe-all-tk -+all-sid: $(ALL_LIBIBERTY) maybe-all-bfd maybe-all-opcodes maybe-all-tcl maybe-all-tk - install-sid: maybe-install-tcl maybe-install-tk --all-sim: maybe-all-libiberty maybe-all-bfd maybe-all-opcodes maybe-all-readline maybe-configure-gdb -+all-sim: $(ALL_LIBIBERTY) maybe-all-bfd maybe-all-opcodes maybe-all-readline maybe-configure-gdb - configure-tk: maybe-configure-tcl - all-tk: maybe-all-tcl - configure-tix: maybe-configure-tcl maybe-configure-tk - all-tix: maybe-all-tcl maybe-all-tk --all-texinfo: maybe-all-libiberty -+all-texinfo: $(ALL_LIBIBERTY) - - # Other host modules. Warning, these are not well tested. - all-autoconf: maybe-all-m4 maybe-all-texinfo - all-automake: maybe-all-m4 maybe-all-texinfo - all-bison: maybe-all-texinfo --all-diff: maybe-all-libiberty --all-fastjar: maybe-all-zlib maybe-all-libiberty --all-fileutils: maybe-all-libiberty --all-flex: maybe-all-libiberty maybe-all-bison maybe-all-byacc --all-gzip: maybe-all-libiberty --all-hello: maybe-all-libiberty --all-m4: maybe-all-libiberty maybe-all-texinfo --all-make: maybe-all-libiberty maybe-all-intl --all-patch: maybe-all-libiberty --all-prms: maybe-all-libiberty --all-recode: maybe-all-libiberty --all-sed: maybe-all-libiberty -+all-diff: $(ALL_LIBIBERTY) -+all-fastjar: maybe-all-zlib $(ALL_LIBIBERTY) -+all-fileutils: $(ALL_LIBIBERTY) -+all-flex: $(ALL_LIBIBERTY) maybe-all-bison maybe-all-byacc -+all-gzip: $(ALL_LIBIBERTY) -+all-hello: $(ALL_LIBIBERTY) -+all-m4: $(ALL_LIBIBERTY) maybe-all-texinfo -+all-make: $(ALL_LIBIBERTY) maybe-all-intl -+all-patch: $(ALL_LIBIBERTY) -+all-prms: $(ALL_LIBIBERTY) -+all-recode: $(ALL_LIBIBERTY) -+all-sed: $(ALL_LIBIBERTY) - all-send-pr: maybe-all-prms --all-tar: maybe-all-libiberty --all-uudecode: maybe-all-libiberty -+all-tar: $(ALL_LIBIBERTY) -+all-uudecode: $(ALL_LIBIBERTY) - - ALL_GCC = maybe-all-gcc - ALL_GCC_C = $(ALL_GCC) maybe-all-target-newlib maybe-all-target-libgloss -@@ -1344,17 +1364,19 @@ ALL_GCC_CXX = $(ALL_GCC_C) maybe-all-tar - # Target modules specific to gcc. - configure-target-boehm-gc: $(ALL_GCC_C) maybe-configure-target-qthreads - configure-target-fastjar: maybe-configure-target-zlib --all-target-fastjar: maybe-all-target-zlib maybe-all-target-libiberty -+all-target-fastjar: maybe-all-target-zlib $(ALL_TARGET_LIBIBERTY) - configure-target-libf2c: $(ALL_GCC_C) --all-target-libf2c: maybe-all-target-libiberty -+all-target-libf2c: $(ALL_TARGET_LIBIBERTY) - configure-target-libffi: $(ALL_GCC_C) - configure-target-libjava: $(ALL_GCC_C) maybe-configure-target-zlib maybe-configure-target-boehm-gc maybe-configure-target-qthreads maybe-configure-target-libffi - all-target-libjava: maybe-all-fastjar maybe-all-target-zlib maybe-all-target-boehm-gc maybe-all-target-qthreads maybe-all-target-libffi - configure-target-libobjc: $(ALL_GCC_C) --all-target-libobjc: maybe-all-target-libiberty -+all-target-libobjc: $(ALL_TARGET_LIBIBERTY) - configure-target-libstdc++-v3: $(ALL_GCC_C) - all-target-libstdc++-v3: maybe-all-target-libiberty - configure-target-zlib: $(ALL_GCC_C) -+configure-target-demangler: maybe-all-target-libstdc++-v3 -+all-target-demangler: configure-target-demangler - - # Target modules in the 'src' repository. - configure-target-examples: $(ALL_GCC_C) -@@ -1365,11 +1387,11 @@ configure-target-libtermcap: $(ALL_GCC_C - configure-target-newlib: $(ALL_GCC) - configure-target-rda: $(ALL_GCC_C) - configure-target-winsup: $(ALL_GCC_C) --all-target-winsup: maybe-all-target-libiberty maybe-all-target-libtermcap -+all-target-winsup: $(ALL_TARGET_LIBIBERTY) maybe-all-target-libtermcap - - # Other target modules. Warning, these are not well tested. - configure-target-gperf: $(ALL_GCC_CXX) --all-target-gperf: maybe-all-target-libiberty maybe-all-target-libstdc++-v3 -+all-target-gperf: $(ALL_TARGET_LIBIBERTY) maybe-all-target-libstdc++-v3 - configure-target-qthreads: $(ALL_GCC_C) - - # Dependencies of maybe-foo on foo. These are used because, for example, ---- gcc/configure.in.demangler 2003-10-13 09:49:47.000000000 -0700 -+++ gcc/configure.in 2003-10-14 18:12:04.000000000 -0700 -@@ -126,7 +126,7 @@ fi - - # these libraries are used by various programs built for the host environment - # --host_libs="intl mmalloc libiberty opcodes bfd readline tcl tk itcl tix libgui zlib" -+host_libs="intl mmalloc libiberty demangler opcodes bfd readline tcl tk itcl tix libgui zlib" - - # these tools are built for the host environment - # Note, the powerpc-eabi build depends on sim occurring before gdb in order to -@@ -149,6 +149,7 @@ target_libraries="target-libiberty \ - target-libgloss \ - target-newlib \ - target-libstdc++-v3 \ -+ target-demangler \ - target-libf2c \ - ${libgcj} \ - target-libobjc" -@@ -177,7 +178,7 @@ target_configdirs=`echo ${target_librari - # This should be done more generally, but at the moment it doesn't matter. - if test ${host_alias} != ${build_alias} ; then - # This is the only build module. -- build_modules=libiberty -+ build_modules="libiberty demangler" - else - build_modules= - fi -@@ -342,11 +343,13 @@ case "${target}" in - skipdirs="target-libiberty ${libgcj} target-libstdc++-v3 target-libf2c target-librx" - skipdirs="$skipdirs target-libobjc target-examples target-groff target-gperf" - skipdirs="$skipdirs zlib fastjar target-libjava target-boehm-gc target-zlib" -+ skipdirs="$skipdirs target-demangler" - noconfigdirs="$noconfigdirs target-libgloss" - ;; - *-*-netbsd*) - # Skip some stuff on all NetBSD configurations. - noconfigdirs="$noconfigdirs target-newlib target-libiberty target-libgloss" -+ noconfigdirs="$noconfigdirs target-demangler" - - # Skip some stuff that's unsupported on some NetBSD configurations. - case "${target}" in -@@ -359,6 +362,7 @@ case "${target}" in - ;; - *-*-netware) - noconfigdirs="$noconfigdirs target-libstdc++-v3 target-newlib target-libiberty target-libgloss ${libgcj}" -+ noconfigdirs="$noconfigdirs target-demangler" - ;; - *-*-rtems*) - noconfigdirs="$noconfigdirs target-libgloss ${libgcj}" -@@ -402,6 +406,7 @@ case "${target}" in - noconfigdirs="$noconfigdirs ${libgcj}" - noconfigdirs="$noconfigdirs target-examples" - noconfigdirs="$noconfigdirs target-libiberty texinfo send-pr" -+ noconfigdirs="$noconfigdirs target-demangler" - noconfigdirs="$noconfigdirs tcl tix tk itcl libgui sim" - noconfigdirs="$noconfigdirs expect dejagnu" - # the C++ libraries don't build on top of CE's C libraries -@@ -445,6 +450,7 @@ case "${target}" in - ;; - avr-*-*) - noconfigdirs="$noconfigdirs target-libiberty target-libstdc++-v3 ${libgcj}" -+ noconfigdirs="$noconfigdirs target-demangler" - ;; - c4x-*-* | tic4x-*-*) - noconfigdirs="$noconfigdirs target-libstdc++-v3 target-libgloss ${libgcj}" -@@ -577,6 +583,7 @@ case "${target}" in - ;; - m68hc11-*-*|m6811-*-*|m68hc12-*-*|m6812-*-*) - noconfigdirs="$noconfigdirs target-libiberty target-libstdc++-v3 ${libgcj}" -+ noconfigdirs="$noconfigdirs target-demangler" - ;; - m68k-*-elf*) - noconfigdirs="$noconfigdirs ${libgcj}" -@@ -713,6 +720,7 @@ case "${target}" in - ;; - ip2k-*-*) - noconfigdirs="$noconfigdirs target-libiberty target-libstdc++-v3 ${libgcj}" -+ noconfigdirs="$noconfigdirs target-demangler" - ;; - *-*-linux*) - noconfigdirs="$noconfigdirs target-newlib target-libgloss" -@@ -858,7 +866,7 @@ done - if test -n "${target_configdirs}" ; then - others= - for i in `echo ${target_configdirs} | sed -e s/target-//g` ; do -- if test "$i" != "libiberty" ; then -+ if test "$i" != "libiberty" && test "$i" != "demangler" ; then - if test -r $srcdir/$i/configure ; then - others=yes; - break; ---- gcc/demangler/Makefile.am.demangler 2003-10-14 18:12:04.000000000 -0700 -+++ gcc/demangler/Makefile.am 2003-10-14 18:12:04.000000000 -0700 -@@ -0,0 +1,90 @@ -+## Process this with automake to create Makefile.in -+ -+AUTOMAKE_OPTIONS = cygnus -+ -+SUBDIRS = @SUBDIRS@ -+ -+# Multilib support. -+MAKEOVERRIDES= -+ -+# Multilib support variables. -+MULTISRCTOP = -+MULTIBUILDTOP = -+MULTIDIRS = -+MULTISUBDIR = -+MULTIDO = true -+MULTICLEAN = true -+ -+# Multilib support. -+.PHONY: all-multi mostlyclean-multi clean-multi distclean-multi \ -+ maintainer-clean-multi -+ -+all-recursive: all-multi -+install-recursive: install-multi -+mostlyclean-recursive: mostlyclean-multi -+clean-recursive: clean-multi -+distclean-recursive: distclean-multi -+maintainer-clean-recursive: maintainer-clean-multi -+ -+all-multi: -+ : $(MAKE) ; exec $(MULTIDO) $(AM_MAKEFLAGS) DO=all multi-do -+install-multi: -+ $(MULTIDO) $(AM_MAKEFLAGS) DO=install multi-do -+mostlyclean-multi: -+ $(MULTICLEAN) $(AM_MAKEFLAGS) DO=mostlyclean multi-clean -+clean-multi: -+ $(MULTICLEAN) $(AM_MAKEFLAGS) DO=clean multi-clean -+distclean-multi: -+ $(MULTICLEAN) $(AM_MAKEFLAGS) DO=distclean multi-clean -+maintainer-clean-multi: -+ $(MULTICLEAN) $(AM_MAKEFLAGS) DO=maintainer-clean multi-clean -+ -+# Work around what appears to be a GNU make bug handling MAKEFLAGS -+# values defined in terms of make variables, as is the case for CC and -+# friends when we are called from the top level Makefile. -+AM_MAKEFLAGS = \ -+ "AR_FLAGS=$(AR_FLAGS)" \ -+ "CC_FOR_BUILD=$(CC_FOR_BUILD)" \ -+ "CFLAGS=$(CFLAGS)" \ -+ "CXXFLAGS=$(CXXFLAGS)" \ -+ "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \ -+ "CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \ -+ "INSTALL=$(INSTALL)" \ -+ "INSTALL_DATA=$(INSTALL_DATA)" \ -+ "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \ -+ "INSTALL_SCRIPT=$(INSTALL_SCRIPT)" \ -+ "JC1FLAGS=$(JC1FLAGS)" \ -+ "LDFLAGS=$(LDFLAGS)" \ -+ "LIBCFLAGS=$(LIBCFLAGS)" \ -+ "LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \ -+ "MAKE=$(MAKE)" \ -+ "PICFLAG=$(PICFLAG)" \ -+ "PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)" \ -+ "SHELL=$(SHELL)" \ -+ "exec_prefix=$(exec_prefix)" \ -+ "infodir=$(infodir)" \ -+ "libdir=$(libdir)" \ -+ "prefix=$(prefix)" \ -+ "AR=$(AR)" \ -+ "AS=$(AS)" \ -+ "CC=$(CC)" \ -+ "CXX=$(CXX)" \ -+ "LD=$(LD)" \ -+ "LIBCFLAGS=$(LIBCFLAGS)" \ -+ "NM=$(NM)" \ -+ "PICFLAG=$(PICFLAG)" \ -+ "RANLIB=$(RANLIB)" \ -+ "DESTDIR=$(DESTDIR)" -+ -+# Subdir rules rely on $(FLAGS_TO_PASS) -+FLAGS_TO_PASS = $(AM_MAKEFLAGS) -+ -+# Used for libiberty. -+LIBIBERTY_TARGET=@libiberty_target@ -+all: $(LIBIBERTY_TARGET) -+ -+new_demangler old_demangler: -+ cd ${libdemangler_basedir}../libiberty && $(MAKE) $@ -+ -+dummy_demangler: -+ @true ---- gcc/demangler/acinclude.m4.demangler 2003-10-14 18:12:04.000000000 -0700 -+++ gcc/demangler/acinclude.m4 2003-10-14 18:12:04.000000000 -0700 -@@ -0,0 +1,108 @@ -+sinclude(../libtool.m4) -+dnl The lines below arrange for aclocal not to bring libtool.m4 -+dnl AC_PROG_LIBTOOL into aclocal.m4, while still arranging for automake -+dnl to add a definition of LIBTOOL to Makefile.in. -+ifelse(yes,no,[ -+AC_DEFUN([AC_PROG_LIBTOOL],) -+AC_DEFUN([AM_PROG_LIBTOOL],) -+AC_SUBST(LIBTOOL) -+]) -+ -+# Newer versions of autoconf add an underscore to these functions. -+# Prevent future problems ... -+ifdef([AC_PROG_CXX_G],[],[define([AC_PROG_CXX_G],defn([_AC_PROG_CXX_G]))]) -+ifdef([AC_PROG_CXX_GNU],[],[define([AC_PROG_CXX_GNU],defn([_AC_PROG_CXX_GNU]))]) -+ -+# We can't just call AC_PROG_CXX directly because g++ will try to -+# link in libstdc++. -+AC_DEFUN(libdemangler_AC_PROG_CXX, -+[AC_BEFORE([$0], [AC_PROG_CXXCPP])dnl -+dnl Fool anybody using AC_PROG_CXX. -+AC_PROVIDE([AC_PROG_CXX]) -+AC_CHECK_PROGS(CXX, $CCC c++ g++ gcc CC cxx cc++, gcc) -+ -+AC_PROG_CXX_GNU -+ -+if test $ac_cv_prog_gxx = yes; then -+ GXX=yes -+ dnl Check whether -g works, even if CXXFLAGS is set, in case the package -+ dnl plays around with CXXFLAGS (such as to build both debugging and -+ dnl normal versions of a library), tasteless as that idea is. -+ ac_test_CXXFLAGS="${CXXFLAGS+set}" -+ ac_save_CXXFLAGS="$CXXFLAGS" -+ CXXFLAGS= -+ AC_PROG_CXX_G -+ if test "$ac_test_CXXFLAGS" = set; then -+ CXXFLAGS="$ac_save_CXXFLAGS" -+ elif test $ac_cv_prog_cxx_g = yes; then -+ CXXFLAGS="-g -O2" -+ else -+ CXXFLAGS="-O2" -+ fi -+else -+ GXX= -+ test "${CXXFLAGS+set}" = set || CXXFLAGS="-g" -+fi -+]) -+ -+dnl See if we can use the new demangler in C++. -+AC_DEFUN(libdemangler_AC_NEW_DEMANGLER, -+[AC_CACHE_CHECK(whether we can use the new demangler in C++, -+ libdemangler_cv_new_demangler, -+[saved_CPPFLAGS="$CPPFLAGS" -+ saved_CXXFLAGS="$CXXFLAGS" -+ CPPFLAGS="-I$srcdir -I$srcdir/../include -D_GLIBCXX_DEMANGLER_NOSTDCXX $CPPFLAGS" -+ CXXFLAGS="-fno-rtti -fno-exceptions $CXXFLAGS" -+ libdemangler_cv_new_demangler=no -+ ac_compile='${CXX-g++} $CXXFLAGS $CPPFLAGS -c -I$srcdir/include $srcdir/lib/demangle.cc 1>&5' -+ if { (eval echo configure:__oline__: \"$ac_compile\") 1>&5; (eval $ac_compile ) 2>&5; }; then -+ ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS $srcdir/../libiberty/dyn-string.c 1>&5' -+ if { (eval echo configure:__oline__: \"$ac_compile\") 1>&5; (eval $ac_compile ) 2>&5; }; then -+ cat > conftest.c < -+#include -+#include "demangle.h" -+ -+void -+xexit (code) -+ int code; -+{ -+ exit (code); -+} -+ -+char * -+xmalloc (size) -+ size_t size; -+{ -+ return (char *) 0; -+} -+ -+char * -+xrealloc (oldmem, size) -+ char *oldmem; -+ size_t size; -+{ -+ return (char *) 0; -+} -+ -+int -+main () -+{ -+ const char* p; -+ p = cplus_demangle_v3 ("_Z1fA37_iPS_", 0); -+ return !p; -+} -+EOF -+ ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.c 1>&5' -+ if { (eval echo configure:__oline__: \"$ac_compile\") 1>&5; (eval $ac_compile ) 2>&5; }; then -+ ac_link='${CC-cc} -o conftest${ac_exeext} conftest.o demangle.o dyn-string.o $CFLAGS $CPPFLAGS $LDFLAGS $LIBS 1>&5' -+ if { (eval echo configure:__oline__: \"$ac_link\") 1>&5; (eval $ac_link ) 2>&5; }; then -+ libdemangler_cv_new_demangler=yes -+ fi -+ fi -+ fi -+ fi -+ rm -f demangle.o dyn-string.o conftest* -+ CPPFLAGS="$saved_CPPFLAGS" -+ CXXFLAGS="$saved_CXXFLAGS"]) -+ ]) ---- gcc/demangler/bootstrap.demangler 2003-10-14 18:12:04.000000000 -0700 -+++ gcc/demangler/bootstrap 2003-10-14 18:12:04.000000000 -0700 -@@ -0,0 +1,39 @@ -+#! /bin/sh -+ -+# helps bootstrapping demangler, when checked out from CVS -+# requires at least GNU autoconf 2.13 and GNU automake1.4-p5 -+# Modified from the one in libtool. -+ -+find . -name autom4te.cache -exec rm -r {} \; -+ -+for sub in . lib; do -+ (cd $sub; rm -f aclocal.m4 Makefile configure) -+ -+ case $sub in -+ .) -+ if test -n "$ACLOCAL"; then -+ $ACLOCAL -+ else -+ aclocal-1.4 || aclocal -+ fi -+ if test -n "$AUTOCONF"; then -+ $AUTOCONF -+ else -+ autoconf-2.13 || autoconf -+ fi -+ -+ AUTOMAKE_FLAGS="--cygnus" -+ ;; -+ *) -+ AUTOMAKE_FLAGS="--cygnus $sub/Makefile" -+ ;; -+ esac -+ -+ if test -n "$AUTOMAKE"; then -+ eval $AUTOMAKE $AUTOMAKE_FLAGS -+ else -+ eval automake-1.4 $AUTOMAKE_FLAGS || automake $AUTOMAKE_FLAGS -+ fi -+done -+ -+exit 0 ---- gcc/demangler/configure.in.demangler 2003-10-14 18:12:04.000000000 -0700 -+++ gcc/demangler/configure.in 2003-10-14 18:12:04.000000000 -0700 -@@ -0,0 +1,113 @@ -+dnl Process this with autoconf to create configure -+AC_INIT(lib/demangle.cc) -+ -+# This works around the fact that libtool configuration may change LD -+# for this particular configuration, but some shells, instead of -+# keeping the changes in LD private, export them just because LD is -+# exported. -+ORIGINAL_LD_FOR_MULTILIBS=$LD -+ -+dnl We use these options to decide which functions to include. -+AC_ARG_WITH(target-subdir, -+[ --with-target-subdir=SUBDIR Configuring in a subdirectory for target]) -+AC_ARG_WITH(cross-host, -+[ --with-cross-host=HOST Configuring with a cross compiler]) -+ -+dnl Default to --enable-multilib -+AC_ARG_ENABLE(multilib, -+[ --enable-multilib build many library versions (default)], -+[case "${enableval}" in -+ yes) multilib=yes ;; -+ no) multilib=no ;; -+ *) AC_MSG_ERROR(bad value ${enableval} for multilib option) ;; -+ esac], [multilib=yes])dnl -+ -+dnl We may get other options which we don't document: -+dnl --with-target-subdir, --with-multisrctop, --with-multisubdir -+ -+if test -n "${with_target_subdir}" && test "${srcdir}" = "."; then -+ if test "${with_target_subdir}" != "."; then -+ libdemangler_basedir="${with_multisrctop}../" -+ else -+ libdemangler_basedir="${with_multisrctop}" -+ fi -+else -+ libdemangler_basedir= -+fi -+AC_SUBST(libdemangler_basedir) -+ -+AC_CANONICAL_HOST -+ -+AC_PROG_CC -+libdemangler_AC_PROG_CXX -+AM_PROG_LIBTOOL -+ -+AM_INIT_AUTOMAKE(demangler,1.0,no-define) -+ -+AC_EXEEXT -+AM_MAINTAINER_MODE -+ -+libdemangler_AC_NEW_DEMANGLER -+if test -d ${srcdir}/${libdemangler_basedir}../libiberty; then -+ SUBDIRS=. -+ if test $libdemangler_cv_new_demangler = yes; then -+ libiberty_target=new_demangler -+ else -+ libiberty_target=old_demangler -+ fi -+else -+ SUBDIRS=lib -+ libiberty_target=dummy_demangler -+ if test $libdemangler_cv_new_demangler != yes; then -+ AC_MSG_ERROR([ -+*** C++ compiler is unable to compile a working demangler!]) -+ fi -+fi -+AC_SUBST(libiberty_target) -+AC_SUBST(SUBDIRS) -+ -+if test -n "$with_cross_host" && -+ test x"$with_cross_host" != x"no"; then -+ toolexecdir='$(exec_prefix)/$(target_alias)' -+ toolexeclibdir='$(toolexecdir)/lib' -+else -+ toolexecdir='$(libdir)/gcc-lib/$(target_alias)' -+ toolexeclibdir='$(libdir)' -+fi -+multi_os_directory=`$CC -print-multi-os-directory 2> /dev/null` -+if test $? = 0; then -+ case $multi_os_directory in -+ .) ;; # Avoid trailing /. -+ *) toolexeclibdir=$toolexeclibdir/$multi_os_directory ;; -+ esac -+fi -+AC_SUBST(toolexecdir) -+AC_SUBST(toolexeclibdir) -+ -+if test "${multilib}" = "yes"; then -+ multilib_arg="--enable-multilib" -+else -+ multilib_arg= -+fi -+ -+AC_OUTPUT(Makefile lib/Makefile, -+[ -+if test -n "$CONFIG_FILES"; then -+ if test -n "${with_target_subdir}"; then -+ LD="${ORIGINAL_LD_FOR_MULTILIBS}" -+ ac_file=Makefile . ${srcdir}/${libdemangler_basedir}../config-ml.in -+ fi -+fi -+], -+srcdir=${srcdir} -+host=${host} -+target=${target} -+with_target_subdir=${with_target_subdir} -+with_multisubdir=${with_multisubdir} -+ac_configure_args="${multilib_arg} ${ac_configure_args}" -+CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} -+libdemangler_basedir=${libdemangler_basedir} -+CC="${CC}" -+DEFS="$DEFS" -+ORIGINAL_LD_FOR_MULTILIBS="${ORIGINAL_LD_FOR_MULTILIBS}" -+) ---- gcc/demangler/include/bits/demangle.h.demangler 2003-10-14 18:12:04.000000000 -0700 -+++ gcc/demangler/include/bits/demangle.h 2003-10-14 22:50:50.000000000 -0700 -@@ -0,0 +1,2525 @@ -+// C++ IA64 / g++ v3 demangler -*- C++ -*- -+ -+// Copyright (C) 2003 Free Software Foundation, Inc. -+// Written by Carlo Wood -+// -+// This file is part of the GNU ISO C++ Library. This library 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. -+ -+// This library 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 this library; see the file COPYING. If not, write to the Free -+// Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+// USA. -+ -+// As a special exception, you may use this file as part of a free software -+// library without restriction. Specifically, if other files instantiate -+// templates or use macros or inline functions from this file, or you compile -+// this file and link it with other files to produce an executable, this -+// file does not by itself cause the resulting executable to be covered by -+// the GNU General Public License. This exception does not however -+// invalidate any other reasons why the executable file might be covered by -+// the GNU General Public License. -+ -+#ifndef _DEMANGLER_H -+#define _DEMANGLER_H 1 -+ -+#include -+ -+#ifdef _GLIBCXX_DEMANGLER_NOSTDCXX -+#include "bits/dynstring.h" -+#define _GLIBCXX_DEMANGLER_BASIC_STRING demangler::dynstring -+#else -+#include -+#define _GLIBCXX_DEMANGLER_BASIC_STRING std::basic_string, Allocator> -+#endif -+ -+#ifndef _GLIBCXX_DEMANGLER_DEBUG -+#define _GLIBCXX_DEMANGLER_CWDEBUG 0 -+#define _GLIBCXX_DEMANGLER_DEBUG(x) -+#define _GLIBCXX_DEMANGLER_DOUT(cntrl, data) -+#define _GLIBCXX_DEMANGLER_DOUT_ENTERING(x) -+#define _GLIBCXX_DEMANGLER_DOUT_ENTERING2(x) -+#define _GLIBCXX_DEMANGLER_RETURN \ -+ return M_result -+#define _GLIBCXX_DEMANGLER_RETURN2 \ -+ return M_result -+#define _GLIBCXX_DEMANGLER_FAILURE \ -+ do { M_result = false; return false; } while(0) -+#else -+#define _GLIBCXX_DEMANGLER_CWDEBUG 1 -+#endif -+ -+// The following defines change the behaviour of the demangler. The -+// default behaviour is that none of these macros is defined. -+ -+// _GLIBCXX_DEMANGLER_STYLE_VOID -+// Default behaviour: int f() -+// Uses (void) instead of (): int f(void) -+ -+// _GLIBCXX_DEMANGLER_STYLE_LITERAL -+// Default behaviour: (long)13, -+// (unsigned long long)19 -+// Use extensions 'u', 'l' and 'll' for integral -+// literals (as in template arguments): 13l, 19ull -+ -+// _GLIBCXX_DEMANGLER_STYLE_LITERAL_INT -+// Default behaviour: 4 -+// Use also an explicit cast for int in literals: (int)4 -+ -+namespace __gnu_cxx -+{ -+ namespace demangler -+ { -+ namespace -+ { -+ -+ enum substitution_nt -+ { -+ type, -+ template_template_param, -+ nested_name_prefix, -+ nested_name_template_prefix, -+ unscoped_template_name -+ }; -+ -+ struct substitution_st -+ { -+ int M_start_pos; -+ substitution_nt M_type; -+ int M_number_of_prefixes; -+ -+ substitution_st(int start_pos, -+ substitution_nt type, -+ int number_of_prefixes) -+ : M_start_pos(start_pos), M_type(type), -+ M_number_of_prefixes(number_of_prefixes) -+ { } -+ }; -+ -+ enum simple_qualifier_nt -+ { -+ complex_or_imaginary = 'G', -+ pointer = 'P', -+ reference = 'R' -+ }; -+ -+ enum cv_qualifier_nt -+ { -+ cv_qualifier = 'K' -+ }; -+ -+ enum param_qualifier_nt -+ { -+ vendor_extension = 'U', -+ array = 'A', -+ pointer_to_member = 'M' -+ }; -+ -+ // ::= v # void -+ // ::= w # wchar_t -+ // ::= b # bool -+ // ::= c # char -+ // ::= a # signed char -+ // ::= h # unsigned char -+ // ::= s # short -+ // ::= t # unsigned short -+ // ::= i # int -+ // ::= j # unsigned int -+ // ::= l # long -+ // ::= m # unsigned long -+ // ::= x # long long, __int64 -+ // ::= y # unsigned long long, __int64 -+ // ::= n # __int128 -+ // ::= o # unsigned __int128 -+ // ::= f # float -+ // ::= d # double -+ // ::= e # long double, __float80 -+ // ::= g # __float128 -+ // ::= z # ellipsis -+ // ::= u # vendor extended type -+ // -+ char const* const builtin_type_c[26] = -+ { -+ "signed char", // a -+ "bool", // b -+ "char", // c -+ "double", // d -+ "long double", // e -+ "float", // f -+ "__float128", // g -+ "unsigned char", // h -+ "int", // i -+ "unsigned int", // j -+ NULL, // k -+ "long", // l -+ "unsigned long", // m -+ "__int128", // n -+ "unsigned __int128", // o -+ NULL, // p -+ NULL, // q -+ NULL, // r -+ "short", // s -+ "unsigned short", // t -+ NULL, // u -+ "void", // v -+ "wchar_t", // w -+ "long long", // x -+ "unsigned long long", // y -+ "..." // z -+ }; -+ -+ // Java source names of builtin types. Types that arn't valid in -+ // Java are also included here - we don't fail if someone attempts -+ // to demangle a C++ symbol in Java style. -+ char const* const builtin_type_java[26] = -+ { -+ "signed char", // a -+ "boolean", // b C++ "bool" -+ "byte", // c C++ "char" -+ "double", // d -+ "long double", // e -+ "float", // f -+ "__float128", // g -+ "unsigned char", // h -+ "int", // i -+ "unsigned int", // j -+ NULL, // k -+ "long", // l -+ "unsigned long", // m -+ "__int128", // n -+ "unsigned __int128", // o -+ NULL, // p -+ NULL, // q -+ NULL, // r -+ "short", // s -+ "unsigned short", // t -+ NULL, // u -+ "void", // v -+ "char", // w C++ "wchar_t" -+ "long", // x C++ "long long" -+ "unsigned long long", // y -+ "..." // z -+ }; -+ -+ template -+ class qualifier; -+ -+ template -+ class qualifier_list; -+ -+ template -+ class session; -+ -+ template -+ class qualifier -+ { -+ typedef _GLIBCXX_DEMANGLER_BASIC_STRING string_type; -+ -+ private: -+ char M_qualifier1; -+ char M_qualifier2; -+ char M_qualifier3; -+ mutable unsigned char M_cnt; -+ string_type M_optional_type; -+ int M_start_pos; -+ bool M_part_of_substitution; -+ -+ public: -+ qualifier(int start_pos, -+ simple_qualifier_nt simple_qualifier, -+ int inside_substitution) -+ : M_qualifier1(simple_qualifier), -+ M_start_pos(start_pos), -+ M_part_of_substitution(inside_substitution) -+ { } -+ -+ qualifier(int start_pos, -+ cv_qualifier_nt, -+ char const* start, -+ int count, -+ int inside_substitution) -+ : M_qualifier1(start[0]), -+ M_qualifier2((count > 1) ? start[1] : '\0'), -+ M_qualifier3((count > 2) ? start[2] : '\0'), -+ M_start_pos(start_pos), -+ M_part_of_substitution(inside_substitution) -+ { } -+ -+ qualifier(int start_pos, -+ param_qualifier_nt param_qualifier, -+ string_type optional_type, -+ int inside_substitution) -+ : M_qualifier1(param_qualifier), -+ M_optional_type(optional_type), -+ M_start_pos(start_pos), -+ M_part_of_substitution(inside_substitution) -+ { } -+ -+ int -+ start_pos(void) const -+ { return M_start_pos; } -+ -+ char -+ first_qualifier(void) const -+ { M_cnt = 1; return M_qualifier1; } -+ -+ char -+ next_qualifier(void) const -+ { -+ return (++M_cnt == 2) ? M_qualifier2 -+ : ((M_cnt == 3) ? M_qualifier3 : 0); -+ } -+ -+ string_type const& -+ optional_type(void) const -+ { return M_optional_type; } -+ -+ bool -+ part_of_substitution(void) const -+ { return M_part_of_substitution; } -+ -+ }; -+ -+ template -+ class qualifier_list -+ { -+ typedef _GLIBCXX_DEMANGLER_BASIC_STRING string_type; -+ -+ private: -+ bool M_printing_suppressed; -+ std::vector, Allocator> M_qualifier_starts; -+ session& M_demangler; -+ -+ public: -+ qualifier_list(session& demangler_obj) -+ : M_printing_suppressed(false), M_demangler(demangler_obj) -+ { } -+ -+ ~qualifier_list() { } -+ -+ void -+ add_qualifier_start(simple_qualifier_nt simple_qualifier, -+ int start_pos, -+ int inside_substitution) -+ { M_qualifier_starts. -+ push_back(qualifier(start_pos, -+ simple_qualifier, inside_substitution)); } -+ -+ void -+ add_qualifier_start(cv_qualifier_nt cv_qualifier, -+ int start_pos, -+ int count, -+ int inside_substitution) -+ { M_qualifier_starts. -+ push_back(qualifier(start_pos, -+ cv_qualifier, &M_demangler.M_str[start_pos], -+ count, inside_substitution)); } -+ -+ void -+ add_qualifier_start(param_qualifier_nt param_qualifier, -+ int start_pos, -+ string_type optional_type, -+ int inside_substitution) -+ { M_qualifier_starts. -+ push_back(qualifier(start_pos, -+ param_qualifier, optional_type, inside_substitution)); } -+ -+ void -+ decode_qualifiers(string_type& prefix, -+ string_type& postfix, -+ bool member_function_pointer_qualifiers); -+ -+ bool -+ suppressed(void) const -+ { return M_printing_suppressed; } -+ -+ void -+ printing_suppressed(void) -+ { M_printing_suppressed = true; } -+ -+ size_t -+ size(void) const -+ { return M_qualifier_starts.size(); } -+ -+ }; -+ -+ template -+ class session -+ { -+ friend class qualifier_list; -+ typedef _GLIBCXX_DEMANGLER_BASIC_STRING string_type; -+ -+ private: -+ char const* M_str; -+ int M_pos; -+ int M_maxpos; -+ bool M_result; -+ bool M_java; -+ char const *M_namespace_separator; -+ char const* const *M_builtin_type; -+ int M_inside_template_args; -+ int M_inside_type; -+ int M_inside_substitution; -+ bool M_saw_destructor; -+ int M_name_ctor; -+ int M_name_dtor; -+ bool M_name_is_cdtor; -+ bool M_name_is_template; -+ bool M_name_is_conversion_operator; -+ bool M_template_args_need_space; -+ string_type M_function_name; -+ std::vector M_template_arg_pos; -+ int M_template_arg_pos_offset; -+ std::vector M_substitutions_pos; -+#if _GLIBCXX_DEMANGLER_CWDEBUG -+ bool M_inside_add_substitution; -+#endif -+ -+ public: -+ explicit session(char const* in, int len, bool java = false) -+ : M_str(in), M_pos(0), M_maxpos(len - 1), M_result(true), -+ M_java (java), M_namespace_separator (java ? "." : "::"), -+ M_builtin_type (java ? builtin_type_java : builtin_type_c), -+ M_inside_template_args(0), M_inside_type(0), -+ M_inside_substitution(0), M_saw_destructor(false), -+ M_name_ctor (-1), M_name_dtor (-1), -+ M_name_is_cdtor(false), M_name_is_template(false), -+ M_name_is_conversion_operator(false), -+ M_template_args_need_space(false), M_template_arg_pos_offset(0) -+#if _GLIBCXX_DEMANGLER_CWDEBUG -+ , M_inside_add_substitution(false) -+#endif -+ { } -+ -+ ~session() { } -+ -+ static int -+ decode_encoding(string_type& output, char const* input, -+ int len, bool java = false); -+ -+ static int -+ decode_cdtor(char const* input, int len, bool ctor); -+ -+ bool -+ decode_type_with_postfix(string_type& prefix, -+ string_type& postfix, -+ qualifier_list* qualifiers = NULL); -+ -+ bool -+ decode_type(string_type& output, -+ qualifier_list* qualifiers = NULL) -+ { -+ string_type postfix; -+ bool res = decode_type_with_postfix(output, postfix, qualifiers); -+ output += postfix; -+ return res; -+ } -+ -+ bool -+ remaining_input_characters(void) const -+ { return current() != 0; } -+ -+ private: -+ char -+ current(void) const -+ { return (M_pos > M_maxpos) ? 0 : M_str[M_pos]; } -+ -+ char -+ next(void) -+ { return (M_pos >= M_maxpos) ? 0 : M_str[++M_pos]; } -+ -+ char -+ eat_current(void) -+ { return (M_pos > M_maxpos) ? 0 : M_str[M_pos++]; } -+ -+ void -+ store(int& saved_pos) -+ { saved_pos = M_pos; } -+ -+ void -+ restore(int saved_pos) -+ { M_pos = saved_pos; M_result = true; } -+ -+ void -+ add_substitution(int start_pos, -+ substitution_nt sub_type, -+ int number_of_prefixes); -+ -+ bool decode_bare_function_type(string_type& output); -+ bool decode_builtin_type(string_type& output); -+ bool decode_call_offset(string_type& output); -+ bool decode_class_enum_type(string_type& output); -+ bool decode_expression(string_type& output); -+ bool decode_literal(string_type& output); -+ bool decode_local_name(string_type& output); -+ bool decode_name(string_type& output, -+ string_type& nested_name_qualifiers); -+ bool decode_nested_name(string_type& output, -+ string_type& qualifiers); -+ bool decode_number(string_type& output); -+ bool decode_operator_name(string_type& output); -+ bool decode_source_name(string_type& output); -+ bool decode_unicode(string_type& output, int &length); -+ bool decode_substitution(string_type& output, -+ qualifier_list* qualifiers = NULL); -+ bool decode_template_args(string_type& output); -+ bool decode_template_param(string_type& output, -+ qualifier_list* qualifiers = NULL); -+ bool decode_unqualified_name(string_type& output); -+ bool decode_unscoped_name(string_type& output); -+ bool decode_decimal_integer(string_type& output); -+ bool decode_special_name(string_type& output); -+ }; -+ -+ template -+#if !_GLIBCXX_DEMANGLER_CWDEBUG -+ inline -+#endif -+ void -+ session::add_substitution(int start_pos, -+ substitution_nt sub_type, -+ int number_of_prefixes = 0) -+ { -+ if (!M_inside_substitution) -+ { -+#if _GLIBCXX_DEMANGLER_CWDEBUG -+ if (M_inside_add_substitution) -+ return; -+#endif -+ M_substitutions_pos. -+ push_back(substitution_st(start_pos, -+ sub_type, number_of_prefixes)); -+#if _GLIBCXX_DEMANGLER_CWDEBUG -+ if (!DEBUGCHANNELS::dc::demangler.is_on()) -+ return; -+ string_type substitution_name("S"); -+ int n = M_substitutions_pos.size() - 1; -+ if (n > 0) -+ substitution_name += (n <= 10) ? (char)(n + '0' - 1) -+ : (char)(n + 'A' - 11); -+ substitution_name += '_'; -+ string_type subst; -+ int saved_pos = M_pos; -+ M_pos = start_pos; -+ M_inside_add_substitution = true; -+ _GLIBCXX_DEMANGLER_DEBUG( dc::demangler.off() ); -+ switch(sub_type) -+ { -+ case type: -+ decode_type(subst); -+ break; -+ case template_template_param: -+ decode_template_param(subst); -+ break; -+ case nested_name_prefix: -+ case nested_name_template_prefix: -+ for (int cnt = number_of_prefixes; cnt > 0; --cnt) -+ { -+ if (current() == 'I') -+ { -+ subst += ' '; -+ decode_template_args(subst); -+ } -+ else -+ { -+ if (cnt < number_of_prefixes) -+ subst += M_namespace_separator; -+ if (current() == 'S') -+ decode_substitution(subst); -+ else -+ decode_unqualified_name(subst); -+ } -+ } -+ break; -+ case unscoped_template_name: -+ decode_unscoped_name(subst); -+ break; -+ } -+ M_pos = saved_pos; -+ _GLIBCXX_DEMANGLER_DEBUG( dc::demangler.on() ); -+ _GLIBCXX_DEMANGLER_DOUT(dc::demangler, -+ "Adding substitution " << substitution_name -+ << " : " << subst -+ << " (from " << location_ct((char*)__builtin_return_address(0) -+ + builtin_return_address_offset) -+ << " <- " << location_ct((char*)__builtin_return_address(1) -+ + builtin_return_address_offset) -+ << " <- " << location_ct((char*)__builtin_return_address(2) -+ + builtin_return_address_offset) -+ << ")."); -+ M_inside_add_substitution = false; -+#endif -+ } -+ } -+ -+ // We don't want to depend on locale (or include for that matter). -+ // We also don't want to use "safe-ctype.h" because that headerfile is not -+ // available to the users. -+ inline bool isdigit(char c) { return c >= '0' && c <= '9'; } -+ inline bool isxdigit(char c) -+ { return (isdigit (c) -+ || (c >= 'a' && c <= 'f') -+ || (c >= 'A' && c <= 'F')); } -+ inline bool islower(char c) { return c >= 'a' && c <= 'z'; } -+ inline bool isupper(char c) { return c >= 'A' && c <= 'Z'; } -+ inline char tolower(char c) { return isupper(c) ? c - 'A' + 'a' : c; } -+ -+ // -+ // ::= 0 -+ // ::= 1|2|3|4|5|6|7|8|9 [+] -+ // ::= 0|1|2|3|4|5|6|7|8|9 -+ // -+ template -+ bool -+ session::decode_decimal_integer(string_type& output) -+ { -+ char c = current(); -+ if (c == '0') -+ { -+ output += '0'; -+ eat_current(); -+ } -+ else if (!isdigit(c)) -+ M_result = false; -+ else -+ { -+ do -+ { -+ output += c; -+ } -+ while (isdigit((c = next()))); -+ } -+ return M_result; -+ } -+ -+ // ::= [n] -+ // -+ template -+ bool -+ session::decode_number(string_type& output) -+ { -+ _GLIBCXX_DEMANGLER_DOUT_ENTERING("decode_number"); -+ if (current() != 'n') -+ decode_decimal_integer(output); -+ else -+ { -+ output += '-'; -+ eat_current(); -+ decode_decimal_integer(output); -+ } -+ _GLIBCXX_DEMANGLER_RETURN; -+ } -+ -+ // -+ template -+ bool -+ session::decode_builtin_type(string_type& output) -+ { -+ _GLIBCXX_DEMANGLER_DOUT_ENTERING("decode_builtin_type"); -+ char const* bt; -+ if (!islower(current()) || !(bt = M_builtin_type[current() - 'a'])) -+ _GLIBCXX_DEMANGLER_FAILURE; -+ output += bt; -+ eat_current(); -+ _GLIBCXX_DEMANGLER_RETURN; -+ } -+ -+ // ::= -+ // -+ template -+ bool -+ session::decode_class_enum_type(string_type& output) -+ { -+ _GLIBCXX_DEMANGLER_DOUT_ENTERING("decode_class_enum_type"); -+ string_type nested_name_qualifiers; -+ if (!decode_name(output, nested_name_qualifiers)) -+ _GLIBCXX_DEMANGLER_FAILURE; -+ output += nested_name_qualifiers; -+ _GLIBCXX_DEMANGLER_RETURN; -+ } -+ -+ // ::= -+ // S _ -+ // S_ -+ // St # ::std:: -+ // Sa # ::std::allocator -+ // Sb # ::std::basic_string -+ // Ss # ::std::basic_string, -+ // std::allocator > -+ // Si # ::std::basic_istream > -+ // So # ::std::basic_ostream > -+ // Sd # ::std::basic_iostream > -+ // -+ // ::= -+ // 0|1|2|3|4|5|6|7|8|9|A|B|C|D|E|F|G|H|I|J|K|L|M|N|O|P|Q|R|S|T|U|V|W|X|Y|Z -+ // [] # Base 36 number -+ // -+ template -+ bool -+ session::decode_substitution(string_type& output, -+ qualifier_list* qualifiers) -+ { -+ _GLIBCXX_DEMANGLER_DOUT_ENTERING("decode_substitution"); -+ unsigned int value = 0; -+ char c = next(); -+ if (c != '_') -+ { -+ switch(c) -+ { -+ case 'a': -+ { -+ output += "std::allocator"; -+ if (!M_inside_template_args) -+ { -+ M_function_name = "allocator"; -+ M_name_is_template = true; -+ M_name_is_cdtor = false; -+ M_name_is_conversion_operator = false; -+ } -+ eat_current(); -+ if (qualifiers) -+ qualifiers->printing_suppressed(); -+ _GLIBCXX_DEMANGLER_RETURN; -+ } -+ case 'b': -+ { -+ output += "std::basic_string"; -+ if (!M_inside_template_args) -+ { -+ M_function_name = "basic_string"; -+ M_name_is_template = true; -+ M_name_is_cdtor = false; -+ M_name_is_conversion_operator = false; -+ } -+ eat_current(); -+ if (qualifiers) -+ qualifiers->printing_suppressed(); -+ _GLIBCXX_DEMANGLER_RETURN; -+ } -+ case 'd': -+ output += "std::iostream"; -+ if (!M_inside_template_args) -+ { -+ M_function_name = "iostream"; -+ M_name_is_template = true; -+ M_name_is_cdtor = false; -+ M_name_is_conversion_operator = false; -+ } -+ eat_current(); -+ if (qualifiers) -+ qualifiers->printing_suppressed(); -+ _GLIBCXX_DEMANGLER_RETURN; -+ case 'i': -+ output += "std::istream"; -+ if (!M_inside_template_args) -+ { -+ M_function_name = "istream"; -+ M_name_is_template = true; -+ M_name_is_cdtor = false; -+ M_name_is_conversion_operator = false; -+ } -+ eat_current(); -+ if (qualifiers) -+ qualifiers->printing_suppressed(); -+ _GLIBCXX_DEMANGLER_RETURN; -+ case 'o': -+ output += "std::ostream"; -+ if (!M_inside_template_args) -+ { -+ M_function_name = "ostream"; -+ M_name_is_template = true; -+ M_name_is_cdtor = false; -+ M_name_is_conversion_operator = false; -+ } -+ eat_current(); -+ if (qualifiers) -+ qualifiers->printing_suppressed(); -+ _GLIBCXX_DEMANGLER_RETURN; -+ case 's': -+ output += "std::string"; -+ if (!M_inside_template_args) -+ { -+ M_function_name = "string"; -+ M_name_is_template = true; -+ M_name_is_cdtor = false; -+ M_name_is_conversion_operator = false; -+ } -+ eat_current(); -+ if (qualifiers) -+ qualifiers->printing_suppressed(); -+ _GLIBCXX_DEMANGLER_RETURN; -+ case 't': -+ output += "std"; -+ eat_current(); -+ if (qualifiers) -+ qualifiers->printing_suppressed(); -+ _GLIBCXX_DEMANGLER_RETURN; -+ default: -+ for(;; c = next()) -+ { -+ if (isdigit(c)) -+ value = value * 36 + c - '0'; -+ else if (isupper(c)) -+ value = value * 36 + c - 'A' + 10; -+ else if (c == '_') -+ break; -+ else -+ _GLIBCXX_DEMANGLER_FAILURE; -+ } -+ ++value; -+ break; -+ } -+ } -+ eat_current(); -+ if (value >= M_substitutions_pos.size() || -+ M_inside_type > 20) // Rather than core dump. -+ _GLIBCXX_DEMANGLER_FAILURE; -+ ++M_inside_substitution; -+ int saved_pos = M_pos; -+ substitution_st& substitution(M_substitutions_pos[value]); -+ M_pos = substitution.M_start_pos; -+ switch(substitution.M_type) -+ { -+ case type: -+ decode_type(output, qualifiers); -+ break; -+ case template_template_param: -+ decode_template_param(output, qualifiers); -+ break; -+ case nested_name_prefix: -+ case nested_name_template_prefix: -+ for (int cnt = substitution.M_number_of_prefixes; cnt > 0; --cnt) -+ { -+ if (current() == 'I') -+ { -+ if (M_template_args_need_space) -+ output += ' '; -+ M_template_args_need_space = false; -+ if (!decode_template_args(output)) -+ _GLIBCXX_DEMANGLER_FAILURE; -+ } -+ else -+ { -+ if (cnt < substitution.M_number_of_prefixes) -+ output += M_namespace_separator; -+ if (current() == 'S') -+ { -+ if (!decode_substitution(output)) -+ _GLIBCXX_DEMANGLER_FAILURE; -+ } -+ else if (!decode_unqualified_name(output)) -+ _GLIBCXX_DEMANGLER_FAILURE; -+ } -+ } -+ if (qualifiers) -+ qualifiers->printing_suppressed(); -+ break; -+ case unscoped_template_name: -+ decode_unscoped_name(output); -+ if (qualifiers) -+ qualifiers->printing_suppressed(); -+ break; -+ } -+ M_pos = saved_pos; -+ --M_inside_substitution; -+ _GLIBCXX_DEMANGLER_RETURN; -+ } -+ -+ // ::= T_ # first template parameter -+ // ::= T _ -+ // -+ template -+ bool -+ session::decode_template_param(string_type& output, -+ qualifier_list* qualifiers) -+ { -+ _GLIBCXX_DEMANGLER_DOUT_ENTERING("decode_template_parameter"); -+ if (current() != 'T') -+ _GLIBCXX_DEMANGLER_FAILURE; -+ unsigned int value = 0; -+ char c; -+ if ((c = next()) != '_') -+ { -+ while(isdigit(c)) -+ { -+ value = value * 10 + c - '0'; -+ c = next(); -+ } -+ ++value; -+ } -+ if (eat_current() != '_') -+ _GLIBCXX_DEMANGLER_FAILURE; -+ value += M_template_arg_pos_offset; -+ if (value >= M_template_arg_pos.size()) -+ _GLIBCXX_DEMANGLER_FAILURE; -+ int saved_pos = M_pos; -+ M_pos = M_template_arg_pos[value]; -+ if (M_inside_type > 20) // Rather than core dump. -+ _GLIBCXX_DEMANGLER_FAILURE; -+ ++M_inside_substitution; -+ if (current() == 'X') -+ { -+ eat_current(); -+ decode_expression(output); -+ } -+ else if (current() == 'L') -+ decode_literal(output); -+ else -+ decode_type(output, qualifiers); -+ --M_inside_substitution; -+ M_pos = saved_pos; -+ _GLIBCXX_DEMANGLER_RETURN; -+ } -+ -+ template -+ bool -+ session::decode_literal(string_type& output) -+ { -+ _GLIBCXX_DEMANGLER_DOUT_ENTERING("decode_literal"); -+ eat_current(); // Eat the 'L'. -+ if (current() == '_') -+ { -+ if (next() != 'Z') -+ _GLIBCXX_DEMANGLER_FAILURE; -+ eat_current(); -+ if ((M_pos += decode_encoding(output, M_str + M_pos, -+ M_maxpos - M_pos + 1, M_java)) < 0) -+ _GLIBCXX_DEMANGLER_FAILURE; -+ } -+ else -+ { -+ // Special cases -+ if (current() == 'b') -+ { -+ if (next() == '0') -+ output += "false"; -+ else -+ output += "true"; -+ eat_current(); -+ _GLIBCXX_DEMANGLER_RETURN; -+ } -+ char c = current(); -+#ifdef _GLIBCXX_DEMANGLER_STYLE_LITERAL -+ if (c == 'i' || c == 'j' || c == 'l' || -+ c == 'm' || c == 'x' || c == 'y') -+ eat_current(); -+ else -+#else -+#ifndef _GLIBCXX_DEMANGLER_STYLE_LITERAL_INT -+ if (c == 'i') -+ eat_current(); -+ else -+#endif -+#endif -+ { -+ output += '('; -+ if (!decode_type(output)) -+ _GLIBCXX_DEMANGLER_FAILURE; -+ output += ')'; -+ } -+ if (!decode_number(output)) -+ _GLIBCXX_DEMANGLER_FAILURE; -+#ifdef _GLIBCXX_DEMANGLER_STYLE_LITERAL -+ if (c == 'j' || c == 'm' || c == 'y') -+ output += 'u'; -+ if (c == 'l' || c == 'm') -+ output += 'l'; -+ if (c == 'x' || c == 'y') -+ output += "ll"; -+#endif -+ } -+ _GLIBCXX_DEMANGLER_RETURN; -+ } -+ -+ // ::= -+ // nw # new -+ // na # new[] -+ // dl # delete -+ // da # delete[] -+ // ng # - (unary) -+ // ad # & (unary) -+ // de # * (unary) -+ // co # ~ -+ // pl # + -+ // mi # - -+ // ml # * -+ // dv # / -+ // rm # % -+ // an # & -+ // or # | -+ // eo # ^ -+ // aS # = -+ // pL # += -+ // mI # -= -+ // mL # *= -+ // dV # /= -+ // rM # %= -+ // aN # &= -+ // oR # |= -+ // eO # ^= -+ // ls # << -+ // rs # >> -+ // lS # <<= -+ // rS # >>= -+ // eq # == -+ // ne # != -+ // lt # < -+ // gt # > -+ // le # <= -+ // ge # >= -+ // nt # ! -+ // aa # && -+ // oo # || -+ // pp # ++ -+ // mm # -- -+ // cm # , -+ // pm # ->* -+ // pt # -> -+ // cl # () -+ // ix # [] -+ // qu # ? -+ // sz # sizeof -+ // sr # scope resolution (::), see below -+ // cv # (cast) -+ // v # vendor extended operator -+ // -+ // -+ // Symbol operator codes exist of two characters, we need to find a -+ // quick hash so that their names can be looked up in a table. -+ // -+ // The puzzle :) -+ // Shift the rows so that there is at most one character per column. -+ // -+ // A perfect solution: -+ // horizontal -+ // ..................................... offset + 'a' -+ // a, ||a||d|||||||||n||||s|||||||||||||||||| 2 -+ // c, || || ||lm|o||| |||| |||||||||||||||||| -3 -+ // d, || a| |e | ||l |||| |||v|||||||||||||| 3 -+ // e, || | | o q| |||| ||| |||||||||||||| -4 -+ // g, |e | | | t||| ||| |||||||||||||| -3 -+ // i, | | | | ||| ||| ||||||||||x||| 12 -+ // l, | | | e ||| ||| ||st|||||| ||| 9 -+ // m, | | | ||| ||| |i lm|||| ||| 18 -+ // n, a e g ||t |w| | |||| ||| 0 -+ // o, || | | | ||o| r|| 19 -+ // p, lm p | t || | || 6 -+ // q, | || u || 14 -+ // r, | |m |s 20 -+ // s, r z | 6 -+ // ..................................... -+ // ^ ^__ second character -+ // |___ first character -+ // -+ -+ // Putting that solution in tables: -+ -+ char const offset_table_c [1 + CHAR_MAX - CHAR_MIN ] = -+ { -+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -+#if (CHAR_MIN < 0) -+ // Add -CHAR_MIN extra zeroes (128): -+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -+ // a b c d e f g h i j k -+ 0, -95, 0,-100, -94,-101, 0,-100, 0, -85, 0, 0, -+ // l m n o p q r s t u v -+ -88, -79, -97, -78, -91, -83, -77, -91, 0, 0, 0, -+#else -+ // a b c d e f g h i j k -+ 0, 161, 0, 156, 162, 155, 0, 156, 0, 171, 0, 0, -+ // l m n o p q r s t u v -+ 168, 177, 159, 178, 165, 173, 179, 165, 0, 0, 0, -+#endif -+ // ... more zeros -+ }; -+ -+ struct entry_st -+ { -+ char const* opcode; -+ char const* symbol_name; -+ bool unary; -+ }; -+ -+ entry_st const symbol_name_table_c[39] = { -+ { "na", "operator new[]", true }, -+ { "ge", "operator>=", false }, -+ { "aa", "operator&&", false }, -+ { "da", "operator delete[]", true }, -+ { "ne", "operator!=", false }, -+ { "ad", "operator&", true }, // unary -+ { "ng", "operator-", true }, // unary -+ { "de", "operator*", true }, // unary -+ { "cl", "operator()", true }, -+ { "cm", "operator,", false }, -+ { "eo=", "operator^", false }, -+ { "co", "operator~", false }, -+ { "eq", "operator==", false }, -+ { "le", "operator<=", false }, -+ { "dl", "operator delete", true }, -+ { "an=", "operator&", false }, -+ { "gt", "operator>", false }, -+ { "pl=", "operator+", false }, -+ { "pm", "operator->*", false }, -+ { "nt", "operator!", true }, -+ { "as=", "operator", false }, -+ { "pp", "operator++", true }, -+ { "nw", "operator new", true }, -+ { "sr", "::", true }, -+ { "dv=", "operator/", false }, -+ { "pt", "operator->", false }, -+ { "mi=", "operator-", false }, -+ { "ls=", "operator<<", false }, -+ { "lt", "operator<", false }, -+ { "ml=", "operator*", false }, -+ { "mm", "operator--", true }, -+ { "sz", "sizeof", true }, -+ { "rm=", "operator%", false }, -+ { "oo", "operator||", false }, -+ { "qu", "operator?", false }, -+ { "ix", "operator[]", true }, -+ { "or=", "operator|", false }, -+ { "", NULL, false }, -+ { "rs=", "operator>>", false } -+ }; -+ -+ template -+ bool -+ session::decode_operator_name(string_type& output) -+ { -+ _GLIBCXX_DEMANGLER_DOUT_ENTERING("decode_operator_name"); -+ -+ char opcode0 = current(); -+ char opcode1 = tolower(next()); -+ -+ register char hash; -+ if ((hash = offset_table_c[opcode0 - CHAR_MIN])) -+ { -+ hash += opcode1; -+ if ( -+#if (CHAR_MIN < 0) -+ hash >= 0 && -+#endif -+ hash < 39) -+ { -+ int index = static_cast(static_cast(hash)); -+ entry_st entry = symbol_name_table_c[index]; -+ if (entry.opcode[0] == opcode0 && entry.opcode[1] == opcode1 -+ && (opcode1 == current() || entry.opcode[2] == '=')) -+ { -+ output += entry.symbol_name; -+ if (opcode1 != current()) -+ output += '='; -+ eat_current(); -+ if (hash == 27 || hash == 28) -+ M_template_args_need_space = true; -+ _GLIBCXX_DEMANGLER_RETURN; -+ } -+ else if (opcode0 == 'c' && opcode1 == 'v') -+ { -+ eat_current(); -+ output += "operator "; -+ if (current() == 'T') -+ { -+ // This is a templated cast operator. -+ // It must be of the form "cvT_I...E". -+ // Let M_template_arg_pos already point -+ // to the template argument. -+ M_template_arg_pos_offset = M_template_arg_pos.size(); -+ M_template_arg_pos.push_back(M_pos + 3); -+ } -+ if (!decode_type(output)) -+ _GLIBCXX_DEMANGLER_FAILURE; -+ if (!M_inside_template_args) -+ M_name_is_conversion_operator = true; -+ _GLIBCXX_DEMANGLER_RETURN; -+ } -+ } -+ } -+ _GLIBCXX_DEMANGLER_FAILURE; -+ } -+ -+ // -+ // ::= -+ // ::= -+ // ::= -+ // -+ // ::= # Starts with a T -+ // ::= L E # literal -+ // ::= L E # external name -+ // -+ template -+ bool -+ session::decode_expression(string_type& output) -+ { -+ _GLIBCXX_DEMANGLER_DOUT_ENTERING("decode_expression"); -+ if (current() == 'T') -+ { -+ if (!decode_template_param(output)) -+ _GLIBCXX_DEMANGLER_FAILURE; -+ _GLIBCXX_DEMANGLER_RETURN; -+ } -+ else if (current() == 'L') -+ { -+ if (!decode_literal(output)) -+ _GLIBCXX_DEMANGLER_FAILURE; -+ if (current() != 'E') -+ _GLIBCXX_DEMANGLER_FAILURE; -+ eat_current(); -+ _GLIBCXX_DEMANGLER_RETURN; -+ } -+ else -+ { -+ char opcode0 = current(); -+ char opcode1 = tolower(next()); -+ -+ register char hash; -+ if ((hash = offset_table_c[opcode0 - CHAR_MIN])) -+ { -+ hash += opcode1; -+ if ( -+#if (CHAR_MIN < 0) -+ hash >= 0 && -+#endif -+ hash < 39) -+ { -+ int index = static_cast(static_cast(hash)); -+ entry_st entry = symbol_name_table_c[index]; -+ if (entry.opcode[0] == opcode0 && entry.opcode[1] == opcode1 -+ && (opcode1 == current() || entry.opcode[2] == '=')) -+ { -+ char const* p = entry.symbol_name; -+ if (!strncmp("operator", p, 8)) -+ p += 8; -+ if (*p == ' ') -+ ++p; -+ if (entry.unary) -+ output += p; -+ bool is_eq = (opcode1 != current()); -+ eat_current(); -+ output += '('; -+ if (!decode_expression(output)) -+ _GLIBCXX_DEMANGLER_FAILURE; -+ output += ')'; -+ if (!entry.unary) -+ { -+ output += ' '; -+ output += p; -+ if (is_eq) -+ output += '='; -+ output += ' '; -+ output += '('; -+ if (!decode_expression(output)) -+ _GLIBCXX_DEMANGLER_FAILURE; -+ output += ')'; -+ } -+ _GLIBCXX_DEMANGLER_RETURN; -+ } -+ } -+ } -+ } -+ _GLIBCXX_DEMANGLER_FAILURE; -+ } -+ -+ // -+ // ::= I + E -+ // ::= # type or template -+ // ::= L E # literal -+ // ::= L_Z E # external name -+ // ::= X E # expression -+ template -+ bool -+ session::decode_template_args(string_type& output) -+ { -+ _GLIBCXX_DEMANGLER_DOUT_ENTERING("decode_template_args"); -+ if (eat_current() != 'I') -+ _GLIBCXX_DEMANGLER_FAILURE; -+ int prev_size = M_template_arg_pos.size(); -+ ++M_inside_template_args; -+ if (M_template_args_need_space) -+ { -+ output += ' '; -+ M_template_args_need_space = false; -+ } -+ output += '<'; -+ for(;;) -+ { -+ if (M_inside_template_args == 1 && !M_inside_type) -+ M_template_arg_pos.push_back(M_pos); -+ if (current() == 'X') -+ { -+ eat_current(); -+ if (!decode_expression(output)) -+ _GLIBCXX_DEMANGLER_FAILURE; -+ if (current() != 'E') -+ _GLIBCXX_DEMANGLER_FAILURE; -+ eat_current(); -+ } -+ else if (current() == 'L') -+ { -+ if (!decode_literal(output)) -+ _GLIBCXX_DEMANGLER_FAILURE; -+ if (current() != 'E') -+ _GLIBCXX_DEMANGLER_FAILURE; -+ eat_current(); -+ } -+ else if (!decode_type(output)) -+ _GLIBCXX_DEMANGLER_FAILURE; -+ if (current() == 'E') -+ break; -+ output += ", "; -+ } -+ eat_current(); -+ if (*(output.rbegin()) == '>') -+ output += ' '; -+ output += '>'; -+ --M_inside_template_args; -+ if (!M_inside_template_args && !M_inside_type) -+ { -+ M_name_is_template = true; -+ M_template_arg_pos_offset = prev_size; -+ } -+ _GLIBCXX_DEMANGLER_RETURN; -+ } -+ -+ // ::= -+ // + # types are parameter types -+ // -+ template -+ bool -+ session::decode_bare_function_type(string_type& output) -+ { -+ _GLIBCXX_DEMANGLER_DOUT_ENTERING("decode_bare_function_type"); -+ if (M_saw_destructor) -+ { -+ if (eat_current() != 'v' || (current() != 'E' && current() != 0)) -+ _GLIBCXX_DEMANGLER_FAILURE; -+ output += "()"; -+ M_saw_destructor = false; -+ _GLIBCXX_DEMANGLER_RETURN; -+ } -+#ifndef _GLIBCXX_DEMANGLER_STYLE_VOID -+ if (current() == 'v') -+ { -+ eat_current(); -+ if (current() != 'E' && current() != 0) -+ _GLIBCXX_DEMANGLER_FAILURE; -+ output += "()"; -+ M_saw_destructor = false; -+ _GLIBCXX_DEMANGLER_RETURN; -+ } -+#endif -+ output += '('; -+ M_template_args_need_space = false; -+ if (!decode_type(output)) // Must have at least one parameter. -+ _GLIBCXX_DEMANGLER_FAILURE; -+ while (current() != 'E' && current() != 0) -+ { -+ output += ", "; -+ if (!decode_type(output)) -+ _GLIBCXX_DEMANGLER_FAILURE; -+ } -+ output += ')'; -+ _GLIBCXX_DEMANGLER_RETURN; -+ } -+ -+ // ::= -+ // # Starts with a lower case character != r. -+ // # Starts with F -+ // # Starts with N, S, C, D, Z, a digit or a lower -+ // # case character. Since a lower case character -+ // # would be an operator name, that would be an -+ // # error. The S is a substitution or St -+ // # (::std::). A 'C' would be a constructor and -+ // # thus also an error. -+ // # Starts with T -+ // # Starts with S -+ // # Starts with T or S, -+ // # equivalent with the above. -+ // -+ // # Starts with A -+ // # Starts with M -+ // # Starts with r, V or K -+ // P # pointer-to # Starts with P -+ // R # reference-to # Starts with R -+ // C # complex (C 2000) # Starts with C -+ // G # imaginary (C 2000)# Starts with G -+ // U # vendor extended type qualifier, -+ // # starts with U -+ // -+ // ::= -+ // ::= -+ -+ // My own analysis of how to decode qualifiers: -+ // -+ // F is a , is a , , -+ // or . -+ // represents a series of qualifiers (not G or C). -+ // is an unqualified type. -+ // is a qualified type. -+ // is the bare-function-type without return type. -+ // is the array index. -+ // Substitutions: -+ // MFE ==> R (C::*Q)B Q2 "", "FE" -+ // ( and recursive), -+ // "MFE". -+ // FE ==> R (Q)B "", "" ( recursive) -+ // and "FE". -+ // -+ // Note that if has postfix qualifiers (an array), then those -+ // are added AFTER the (member) function type. For example: -+ // FPAE ==> R (*(Q)B) [], where the PA added the prefix -+ // "(*" and the postfix ") []". -+ // -+ // G ==> imaginary T Q "", "G" ( recursive). -+ // C ==> complex T Q "", "C" ( recursive). -+ // ==> T Q "" ( recursive). -+ // -+ // where is any of: -+ // -+ // P ==> *Q "P..." -+ // R ==> &Q "R..." -+ // [K|V|r]+ ==> [ const| volatile| restrict]+Q "KVr..." -+ // U ==> SQ "U..." -+ // M ==> C::*Q "M..." ( recurs.) -+ // A ==> [I] "A..." ( recurs.) -+ // A ==> (Q) [I] "A..." ( recurs.) -+ // Note that when ends on an A then the brackets are omitted: -+ // AA ==> [I2][I] -+ // -+ // A is handled with an input position switch during which -+ // new substitutions are turned off. Because recursive handling of types -+ // (and therefore the order in which substitutions must be generated) must -+ // be done left to right, but the generation of Q needs processing right to -+ // left, substitutions per are generated by reading the input left -+ // to right and marking the starts of all substitutions only - implicitly -+ // finishing them at the end of the type. Then the output and real -+ // substitutions are generated. -+ // -+ // The following comment was for the demangling of g++ version 3.0.x. The -+ // mangling (and I believe even the ABI description) have been fixed now -+ // (as of g++ version 3.1). -+ // -+ // g++ 3.0.x only: -+ // The ABI specifies for pointer-to-member function types the format -+ // MFE. In other words, the qualifier (see above) is -+ // implicitely contained in instead of explicitly part of the M format. -+ // I am convinced that this is a bug in the ABI. Unfortunately, this is -+ // how we have to demangle things as it has a direct impact on the order -+ // in which substitutions are stored. This ill-formed design results in -+ // rather ill-formed demangler code too however :/ -+ // -+ // is now explicitely part of the M format. -+ // For some weird reason, g++ (3.2.1) does not add substitutions for -+ // qualified member function pointers. I think that is another bug. -+ // -+ template -+ void -+ qualifier_list::decode_qualifiers(string_type& prefix, -+ string_type& postfix, -+ bool member_function_pointer_qualifiers = false) -+ { -+ for(typename std::vector, Allocator>:: -+ reverse_iterator iter = M_qualifier_starts.rbegin(); -+ iter != M_qualifier_starts.rend();) -+ { -+ if (!member_function_pointer_qualifiers -+ && !(*iter).part_of_substitution()) -+ { -+ int saved_inside_substitution = M_demangler.M_inside_substitution; -+ M_demangler.M_inside_substitution = 0; -+ M_demangler.add_substitution((*iter).start_pos(), type); -+ M_demangler.M_inside_substitution = saved_inside_substitution; -+ } -+ char qualifier_char = (*iter).first_qualifier(); -+ for(; qualifier_char; qualifier_char = (*iter).next_qualifier()) -+ { -+ switch(qualifier_char) -+ { -+ case 'P': -+ if (! M_demangler.M_java) -+ prefix += "*"; -+ break; -+ case 'R': -+ prefix += "&"; -+ break; -+ case 'K': -+ prefix += " const"; -+ continue; -+ case 'V': -+ prefix += " volatile"; -+ continue; -+ case 'r': -+ prefix += " restrict"; -+ continue; -+ case 'A': -+ { -+ string_type index = (*iter).optional_type(); -+ if (++iter != M_qualifier_starts.rend() -+ && (*iter).first_qualifier() != 'A') -+ { -+ prefix += " ("; -+ string_type prev_postfix = postfix; -+ postfix = ") ["; -+ postfix += index; -+ postfix += ']'; -+ postfix += prev_postfix; -+ } -+ else -+ { -+ string_type prev_postfix = postfix; -+ postfix = "["; -+ postfix += index; -+ postfix += "]"; -+ postfix += prev_postfix; -+ } -+ break; -+ } -+ case 'M': -+ prefix += " "; -+ prefix += (*iter).optional_type(); -+ prefix += "::*"; -+ break; -+ case 'U': -+ prefix += " "; -+ prefix += (*iter).optional_type(); -+ break; -+ case 'G': // Only here so we added a substitution. -+ break; -+ } -+ break; -+ } -+ if (qualifier_char != 'A') -+ ++iter; -+ } -+ M_printing_suppressed = false; -+ } -+ -+ // -+ template -+ bool -+ session::decode_type_with_postfix(string_type& prefix, -+ string_type& postfix, -+ qualifier_list* qualifiers) -+ { -+ _GLIBCXX_DEMANGLER_DOUT_ENTERING2 -+ (qualifiers ? "decode_type" : "decode_type[with qualifiers]"); -+ ++M_inside_type; -+ bool recursive_template_param_or_substitution_call; -+ qualifier_list new_qualifier_list(*this); -+ if (!(recursive_template_param_or_substitution_call = qualifiers)) -+ qualifiers = &new_qualifier_list; -+ // First eat all qualifiers. -+ bool failure = false; -+ for(;;) // So we can use 'continue' to eat the next qualifier. -+ { -+ int start_pos = M_pos; -+ switch(current()) -+ { -+ case 'P': -+ qualifiers->add_qualifier_start(pointer, start_pos, -+ M_inside_substitution); -+ eat_current(); -+ continue; -+ case 'R': -+ qualifiers->add_qualifier_start(reference, start_pos, -+ M_inside_substitution); -+ eat_current(); -+ continue; -+ case 'K': -+ case 'V': -+ case 'r': -+ { -+ char c; -+ int count = 0; -+ do -+ { -+ ++count; -+ c = next(); -+ } -+ while(c == 'K' || c == 'V' || c == 'r'); -+ qualifiers->add_qualifier_start(cv_qualifier, start_pos, count, -+ M_inside_substitution); -+ continue; -+ } -+ case 'U': -+ { -+ eat_current(); -+ string_type source_name; -+ if (!decode_source_name(source_name)) -+ { -+ failure = true; -+ break; -+ } -+ qualifiers->add_qualifier_start(vendor_extension, start_pos, -+ source_name, M_inside_substitution); -+ continue; -+ } -+ case 'A': -+ { -+ // ::= A _ -+ // ::= A [] _ -+ // -+ string_type index; -+ int saved_pos; -+ store(saved_pos); -+ if (next() == 'n' || !decode_number(index)) -+ { -+ restore(saved_pos); -+ if (next() != '_' && !decode_expression(index)) -+ { -+ failure = true; -+ break; -+ } -+ } -+ if (eat_current() != '_') -+ { -+ failure = true; -+ break; -+ } -+ qualifiers->add_qualifier_start(array, start_pos, index, -+ M_inside_substitution); -+ continue; -+ } -+ case 'M': -+ { -+ // M or MFE -+ eat_current(); -+ string_type class_type; -+ if (!decode_type(class_type)) // Substitution: "". -+ { -+ failure = true; -+ break; -+ } -+ char c = current(); -+ if (c == 'F' || c == 'K' || c == 'V' || c == 'r') -+ // Must be CV-qualifiers and a member function pointer. -+ { -+ // MFE ==> R (C::*Q)B Q2 -+ // substitutions: "", "FE" ( and -+ // recursive), "MFE". -+ int count = 0; -+ int Q2_start_pos = M_pos; -+ while(c == 'K' || c == 'V' || c == 'r') // Decode . -+ { -+ ++count; -+ c = next(); -+ } -+ qualifier_list class_type_qualifiers(*this); -+ if (count) -+ class_type_qualifiers. -+ add_qualifier_start(cv_qualifier, Q2_start_pos, -+ count, M_inside_substitution); -+ string_type member_function_qualifiers; -+ // It is unclear why g++ doesn't add a substitution for -+ // "FE" as it should I think. -+ string_type member_function_qualifiers_postfix; -+ class_type_qualifiers. -+ decode_qualifiers(member_function_qualifiers, -+ member_function_qualifiers_postfix, true); -+ member_function_qualifiers += -+ member_function_qualifiers_postfix; -+ // I don't think this substitution is actually ever used. -+ int function_pos = M_pos; -+ if (eat_current() != 'F') -+ { -+ failure = true; -+ break; -+ } -+ // Return type. -+ // Constructors, destructors and conversion operators don't -+ // have a return type, but seem to never get here. -+ if (!decode_type_with_postfix(prefix, postfix)) -+ // substitution: recursive -+ { -+ failure = true; -+ break; -+ } -+ prefix += " ("; -+ prefix += class_type; -+ prefix += "::*"; -+ string_type bare_function_type; -+ if (!decode_bare_function_type(bare_function_type) -+ || eat_current() != 'E') // Substitution: recursive. -+ { -+ failure = true; -+ break; -+ } -+ // substitution: "FE". -+ add_substitution(function_pos, type); -+ // substitution: "MFE". -+ add_substitution(start_pos, type); -+ // substitution: all qualified types if any. -+ qualifiers->decode_qualifiers(prefix, postfix); -+ prefix += ")"; -+ prefix += bare_function_type; -+ prefix += member_function_qualifiers; -+ goto decode_type_exit; -+ } -+ qualifiers->add_qualifier_start(pointer_to_member, start_pos, -+ class_type, M_inside_substitution); -+ continue; -+ } -+ default: -+ break; -+ } -+ break; -+ } -+ if (!failure) -+ { -+ // G ==> imaginary T Q -+ // substitutions: "", "G" ( recursive). -+ // C ==> complex T Q -+ // substitutions: "", "C" ( recursive). -+ if (current() == 'C' || current() == 'G') -+ { -+ prefix += current() == 'C' ? "complex " : "imaginary "; -+ qualifiers->add_qualifier_start(complex_or_imaginary, M_pos, -+ M_inside_substitution); -+ eat_current(); -+ } -+ int start_pos = M_pos; -+ switch(current()) -+ { -+ case 'F': -+ { -+ // FE ==> R (Q)B -+ // substitution: "", "" ( recursive) and "FE". -+ eat_current(); -+ // Return type. -+ if (!decode_type_with_postfix(prefix, postfix)) -+ // Substitution: "". -+ { -+ failure = true; -+ break; -+ } -+ // Only array (pointer) types have a postfix. -+ // In that case we don't want the space but -+ // expect something like prefix is "int (*" -+ // and postfix is ") [1]". -+ if (postfix.size() == 0) -+ prefix += ' '; -+ prefix += '('; -+ string_type bare_function_type; -+ if (!decode_bare_function_type(bare_function_type) -+ // substitution: "" ( recursive). -+ || eat_current() != 'E') -+ { -+ failure = true; -+ break; -+ } -+ add_substitution(start_pos, type); // Substitution: "FE". -+ qualifiers->decode_qualifiers(prefix, postfix); -+ // substitution: all qualified types, if any. -+ prefix += ")"; -+ prefix += bare_function_type; -+ break; -+ } -+ case 'T': -+ if (!decode_template_param(prefix, qualifiers)) -+ { -+ failure = true; -+ break; -+ } -+ if (current() == 'I') -+ { -+ add_substitution(start_pos, template_template_param); -+ // substitution: "". -+ if (!decode_template_args(prefix)) -+ { -+ failure = true; -+ break; -+ } -+ } -+ if (!recursive_template_param_or_substitution_call -+ && qualifiers->suppressed()) -+ { -+ add_substitution(start_pos, type); -+ // substitution: "" or -+ // " ". -+ qualifiers->decode_qualifiers(prefix, postfix); -+ // substitution: all qualified types, if any. -+ } -+ break; -+ case 'S': -+ if (M_pos >= M_maxpos) -+ { -+ failure = true; -+ break; -+ } -+ if (M_str[M_pos + 1] != 't') -+ { -+ if (!decode_substitution(prefix, qualifiers)) -+ { -+ failure = true; -+ break; -+ } -+ if (current() == 'I') -+ { -+ if (!decode_template_args(prefix)) -+ { -+ failure = true; -+ break; -+ } -+ if (!recursive_template_param_or_substitution_call -+ && qualifiers->suppressed()) -+ add_substitution(start_pos, type); -+ // Substitution: -+ // " ". -+ } -+ if (!recursive_template_param_or_substitution_call -+ && qualifiers->suppressed()) -+ qualifiers->decode_qualifiers(prefix, postfix); -+ // Substitution: all qualified types, if any. -+ break; -+ } -+ /* Fall-through for St */ -+ case 'N': -+ case 'Z': -+ case '0': -+ case '1': -+ case '2': -+ case '3': -+ case '4': -+ case '5': -+ case '6': -+ case '7': -+ case '8': -+ case '9': -+ // ==> T Q -+ // substitutions: "" ( recursive). -+ if (!decode_class_enum_type(prefix)) -+ { -+ failure = true; -+ break; -+ } -+ if (!recursive_template_param_or_substitution_call) -+ { -+ add_substitution(start_pos, type); -+ // substitution: "". -+ qualifiers->decode_qualifiers(prefix, postfix); -+ // substitution: all qualified types, if any. -+ } -+ else -+ qualifiers->printing_suppressed(); -+ break; -+ default: -+ // ==> T Q -+ // substitutions: "" ( recursive). -+ if (!decode_builtin_type(prefix)) -+ { -+ failure = true; -+ break; -+ } -+ // If decode_type was called from decode_template_param then we -+ // need to suppress calling qualifiers here in order to get a -+ // substitution added anyway (for the ). -+ if (!recursive_template_param_or_substitution_call) -+ qualifiers->decode_qualifiers(prefix, postfix); -+ else -+ qualifiers->printing_suppressed(); -+ break; -+ } -+ } -+ decode_type_exit: -+ --M_inside_type; -+ if (failure) -+ _GLIBCXX_DEMANGLER_FAILURE; -+ _GLIBCXX_DEMANGLER_RETURN2; -+ } -+ -+ // ::= N [] E -+ // ::= N [] E -+ // -+ // ::= -+ // ::= -+ // ::= # empty -+ // ::= -+ // -+ // ::=